1 |
commit: f64b9d04818823ed73c8a865112ba10c84fbef6e |
2 |
Author: Andrey Grozin <grozin <AT> gentoo <DOT> org> |
3 |
AuthorDate: Mon Mar 1 04:22:12 2021 +0000 |
4 |
Commit: Andrey Grozin <grozin <AT> gentoo <DOT> org> |
5 |
CommitDate: Mon Mar 1 04:22:12 2021 +0000 |
6 |
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f64b9d04 |
7 |
|
8 |
dev-lisp/ecls: configure with --enable-libatomic=system |
9 |
|
10 |
Closes: https://bugs.gentoo.org/710900 |
11 |
Package-Manager: Portage-3.0.16, Repoman-3.0.2 |
12 |
Signed-off-by: Andrey Grozin <grozin <AT> gentoo.org> |
13 |
|
14 |
dev-lisp/ecls/ecls-21.2.1-r1.ebuild | 87 +++++++++++++++++++++++++++++++++++++ |
15 |
1 file changed, 87 insertions(+) |
16 |
|
17 |
diff --git a/dev-lisp/ecls/ecls-21.2.1-r1.ebuild b/dev-lisp/ecls/ecls-21.2.1-r1.ebuild |
18 |
new file mode 100644 |
19 |
index 00000000000..6ed6c25641d |
20 |
--- /dev/null |
21 |
+++ b/dev-lisp/ecls/ecls-21.2.1-r1.ebuild |
22 |
@@ -0,0 +1,87 @@ |
23 |
+# Copyright 1999-2021 Gentoo Authors |
24 |
+# Distributed under the terms of the GNU General Public License v2 |
25 |
+ |
26 |
+EAPI=6 |
27 |
+ |
28 |
+inherit eutils multilib |
29 |
+ |
30 |
+# test phase only works if ecls already installed #516876 |
31 |
+RESTRICT="test" |
32 |
+ |
33 |
+MY_P=ecl-${PV} |
34 |
+ |
35 |
+DESCRIPTION="ECL is an embeddable Common Lisp implementation" |
36 |
+HOMEPAGE="https://common-lisp.net/project/ecl/" |
37 |
+SRC_URI="https://common-lisp.net/project/ecl/static/files/release/${MY_P}.tgz" |
38 |
+ |
39 |
+LICENSE="BSD-2 LGPL-2.1+" |
40 |
+SLOT="0/${PV}" |
41 |
+KEYWORDS="~amd64 ~ppc ~sparc ~x86 ~amd64-linux" |
42 |
+IUSE="cxx debug emacs gengc precisegc cpu_flags_x86_sse +threads +unicode X" |
43 |
+ |
44 |
+CDEPEND="dev-libs/gmp:0 |
45 |
+ dev-libs/libffi |
46 |
+ dev-libs/libatomic_ops |
47 |
+ >=dev-libs/boehm-gc-7.1[threads?] |
48 |
+ >=dev-lisp/asdf-2.33-r3:=" |
49 |
+DEPEND="${CDEPEND} |
50 |
+ app-text/texi2html |
51 |
+ emacs? ( >=app-editors/emacs-23.1:* >=app-eselect/eselect-emacs-1.12 )" |
52 |
+RDEPEND="${CDEPEND}" |
53 |
+ |
54 |
+S="${WORKDIR}"/${MY_P} |
55 |
+ |
56 |
+PATCHES=( |
57 |
+ "${FILESDIR}/${PN}-16.1.3-headers-gentoo.patch" |
58 |
+ "${FILESDIR}/${PN}-16.1.3-build.patch" |
59 |
+) |
60 |
+ |
61 |
+src_prepare() { |
62 |
+ default |
63 |
+ cp "${EPREFIX}"/usr/share/common-lisp/source/asdf/build/asdf.lisp contrib/asdf/ || die |
64 |
+} |
65 |
+ |
66 |
+src_configure() { |
67 |
+ econf \ |
68 |
+ --with-system-gmp \ |
69 |
+ --enable-boehm=system \ |
70 |
+ --enable-longdouble=yes \ |
71 |
+ --with-dffi \ |
72 |
+ --enable-libatomic=system \ |
73 |
+ $(use_with cxx) \ |
74 |
+ $(use_enable gengc) \ |
75 |
+ $(use_enable precisegc) \ |
76 |
+ $(use_with debug debug-cflags) \ |
77 |
+ $(use_with cpu_flags_x86_sse sse) \ |
78 |
+ $(use_enable threads) \ |
79 |
+ $(use_with threads __thread) \ |
80 |
+ $(use_enable unicode) \ |
81 |
+ $(use_with unicode unicode-names) \ |
82 |
+ $(use_with X x) |
83 |
+} |
84 |
+ |
85 |
+src_compile() { |
86 |
+ if use emacs; then |
87 |
+ local ETAGS=$(eselect --brief etags list | sed -ne '/emacs/{p;q}') |
88 |
+ [[ -n ${ETAGS} ]] || die "No etags implementation found" |
89 |
+ pushd build > /dev/null || die |
90 |
+ emake ETAGS=${ETAGS} TAGS |
91 |
+ popd > /dev/null |
92 |
+ else |
93 |
+ touch build/TAGS |
94 |
+ fi |
95 |
+ |
96 |
+ #parallel make fails |
97 |
+ emake -j1 |
98 |
+} |
99 |
+ |
100 |
+src_install() { |
101 |
+ emake DESTDIR="${D}" install |
102 |
+ |
103 |
+ dodoc README.md CHANGELOG |
104 |
+ dodoc "${FILESDIR}"/README.Gentoo |
105 |
+ pushd build/doc |
106 |
+ newman ecl.man ecl.1 |
107 |
+ newman ecl-config.man ecl-config.1 |
108 |
+ popd |
109 |
+} |