1 |
commit: 53d5c948e3fb1b6dd5545835eb60b18a7c9b0824 |
2 |
Author: Aaron Bauman <bman <AT> gentoo <DOT> org> |
3 |
AuthorDate: Tue Jul 5 11:12:42 2016 +0000 |
4 |
Commit: Aaron Bauman <bman <AT> gentoo <DOT> org> |
5 |
CommitDate: Tue Jul 5 11:13:13 2016 +0000 |
6 |
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=53d5c948 |
7 |
|
8 |
dev-scheme/scheme48: revbump and add patch for CVE-2014-4150 per security bug #513088 |
9 |
|
10 |
dev-scheme/scheme48/files/CVE-2014-4150.patch | 11 ++++ |
11 |
dev-scheme/scheme48/scheme48-1.9.2-r1.ebuild | 72 +++++++++++++++++++++++++++ |
12 |
2 files changed, 83 insertions(+) |
13 |
|
14 |
diff --git a/dev-scheme/scheme48/files/CVE-2014-4150.patch b/dev-scheme/scheme48/files/CVE-2014-4150.patch |
15 |
new file mode 100644 |
16 |
index 0000000..9457fbe |
17 |
--- /dev/null |
18 |
+++ b/dev-scheme/scheme48/files/CVE-2014-4150.patch |
19 |
@@ -0,0 +1,11 @@ |
20 |
+--- a/emacs/cmuscheme48.el 2012-12-28 01:43:30.000000000 +0900 |
21 |
++++ b/emacs/cmuscheme48.el 2016-07-05 20:06:19.200173816 +0900 |
22 |
+@@ -58,7 +58,7 @@ |
23 |
+ (let ((end (point))) |
24 |
+ (beginning-of-defun) |
25 |
+ (if losep |
26 |
+- (let ((loser "/tmp/s48lose.tmp")) |
27 |
++ (let ((loser (make-temp-file "s48lose"))) |
28 |
+ (write-region (point) end loser) |
29 |
+ (scheme48-load-file loser)) |
30 |
+ (scheme48-send-region (point) end))))) |
31 |
|
32 |
diff --git a/dev-scheme/scheme48/scheme48-1.9.2-r1.ebuild b/dev-scheme/scheme48/scheme48-1.9.2-r1.ebuild |
33 |
new file mode 100644 |
34 |
index 0000000..2b66894 |
35 |
--- /dev/null |
36 |
+++ b/dev-scheme/scheme48/scheme48-1.9.2-r1.ebuild |
37 |
@@ -0,0 +1,72 @@ |
38 |
+# Copyright 1999-2014 Gentoo Foundation |
39 |
+# Distributed under the terms of the GNU General Public License v2 |
40 |
+# $Id$ |
41 |
+ |
42 |
+EAPI=5 |
43 |
+inherit elisp-common multilib eutils flag-o-matic |
44 |
+ |
45 |
+DESCRIPTION="Scheme48 is an implementation of the Scheme Programming Language" |
46 |
+HOMEPAGE="http://www.s48.org/" |
47 |
+SRC_URI="http://www.s48.org/${PV}/${P}.tgz" |
48 |
+ |
49 |
+LICENSE="BSD" |
50 |
+SLOT="0" |
51 |
+KEYWORDS="~x86 ~amd64 ~amd64-linux ~x86-linux ~x86-macos" |
52 |
+IUSE="doc emacs" |
53 |
+ |
54 |
+DEPEND="emacs? ( virtual/emacs )" |
55 |
+RDEPEND="${DEPEND}" |
56 |
+SITEFILE=50scheme48-gentoo.el |
57 |
+ |
58 |
+src_prepare() { |
59 |
+ epatch "${FILESDIR}"/CVE-2014-4150.patch |
60 |
+} |
61 |
+ |
62 |
+src_configure() { |
63 |
+ append-cflags -fno-strict-aliasing |
64 |
+ econf --docdir=/usr/share/doc/${P} |
65 |
+} |
66 |
+ |
67 |
+src_compile() { |
68 |
+ emake |
69 |
+ if use emacs; then |
70 |
+ elisp-compile "${S}"/emacs/cmuscheme48.el |
71 |
+ fi |
72 |
+} |
73 |
+ |
74 |
+src_install() { |
75 |
+ # weird parallel failures! |
76 |
+ emake -j1 DESTDIR="${D}" install |
77 |
+ |
78 |
+ if use emacs; then |
79 |
+ elisp-install ${PN} emacs/cmuscheme48.el emacs/*.elc |
80 |
+ elisp-site-file-install "${FILESDIR}"/${SITEFILE} |
81 |
+ fi |
82 |
+ |
83 |
+ dodoc README |
84 |
+ if use doc; then |
85 |
+ dodoc doc/*.txt |
86 |
+ docinto src |
87 |
+ dodoc doc/src/* |
88 |
+ pushd "${ED}/usr/share/doc/${P}" > /dev/null |
89 |
+ install -dm755 html |
90 |
+ mv *.html *.css *.gif html/ |
91 |
+ popd > /dev/null |
92 |
+ else |
93 |
+ pushd "${ED}/usr/share/doc/${P}" > /dev/null |
94 |
+ rm -f *.html *.css *.gif |
95 |
+ rm -f manu* |
96 |
+ popd > /dev/null |
97 |
+ fi |
98 |
+ |
99 |
+ #this symlink clashes with gambit |
100 |
+ rm "${ED}"/usr/bin/scheme-r5rs || die |
101 |
+} |
102 |
+ |
103 |
+pkg_postinst() { |
104 |
+ use emacs && elisp-site-regen |
105 |
+} |
106 |
+ |
107 |
+pkg_postrm() { |
108 |
+ use emacs && elisp-site-regen |
109 |
+} |