Gentoo Archives: gentoo-commits

From: Andrey Grozin <grozin@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: dev-lisp/ecls/files/, dev-lisp/ecls/
Date: Mon, 29 Feb 2016 12:36:17
Message-Id: 1456748752.fad3644c1ca99c0cdeeef6ea674304b0e4a80f00.grozin@gentoo
1 commit: fad3644c1ca99c0cdeeef6ea674304b0e4a80f00
2 Author: Andrey Grozin <grozin <AT> gentoo <DOT> org>
3 AuthorDate: Mon Feb 29 12:25:52 2016 +0000
4 Commit: Andrey Grozin <grozin <AT> gentoo <DOT> org>
5 CommitDate: Mon Feb 29 12:25:52 2016 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=fad3644c
7
8 dev-lisp/ecls: bump to 16.1.2
9
10 Package-Manager: portage-2.2.27
11
12 dev-lisp/ecls/Manifest | 1 +
13 dev-lisp/ecls/ecls-16.1.2.ebuild | 91 +++++++++++++++++++++++++
14 dev-lisp/ecls/files/16.1.2-headers-gentoo.patch | 13 ++++
15 3 files changed, 105 insertions(+)
16
17 diff --git a/dev-lisp/ecls/Manifest b/dev-lisp/ecls/Manifest
18 index 5e7ce27..4231f5b 100644
19 --- a/dev-lisp/ecls/Manifest
20 +++ b/dev-lisp/ecls/Manifest
21 @@ -2,3 +2,4 @@ DIST ecl-12.12.1.tgz 9006697 SHA256 54e77ce8157752eab49f8640f7d0077522d493a4d4de
22 DIST ecl-13.5.1.tgz 9401163 SHA256 f91c57ce065fe9748bc8104e191e4b2dcfe854d634315fe7800dd0a613472ca2 SHA512 a09f8b824aa78e461d700eefb1a8b68b876e15d49124a397e0b5b58ad73b80f818133a7b8e48ddb83505eea2f9c5fb024de8701b527524004e336e456eb07c84 WHIRLPOOL def6de6444430e45bfff29c0716a23869e3455ba9b1cd9bfc1f02ef5c79c83df5b2280b8bada28acb1e742cdbe5c819970273386333d7c7c7c4fb48464dc6a2b
23 DIST ecl-15.3.7.tgz 8755180 SHA256 2dc6ffbbf1e0a7b1323d49a991ba1f005127ca3e153651d91ba9e65bdaec948f SHA512 50a28ed551e507bee526ae44a12da2524c1feedf07cf8ca99650e37ecd7b99c4e2f2758c077979b174d303ffdcd9325637b708a29d14d8c3851c7e65d4ea026c WHIRLPOOL 57b0382b0e3dc7cd601b835a371c9ec6658911b1471cb5bfeee6144d22500e8ca55268f2a001c49d446e9be1a3771ca12348f2565f68ec83f1660c4295545a06
24 DIST ecl-16.0.0.tgz 8009304 SHA256 343ed4c3e4906562757a6039b85ce16d33dd5e8001d74004936795983e3af033 SHA512 15e4c604901dae1037e54ab1739d45a0f5f05decf6e72ba60d8b6b53e549021e93b811b809c4a72f423a20e9f9770969910d35edd5f184757293f98f89024c3a WHIRLPOOL 1af13ce81017bdad0ad6ee235beea9cc3e79d4b09b3863911a8092fd69a8d15f9c6eb75603c62d291450001d900cc1074c8882beb4c6da011b368b2a7f8fe7b5
25 +DIST ecl-16.1.2.tgz 7449461 SHA256 2d482b1a0a4fbd5d881434517032279d808cb6405e22dd91ef6d733534464b99 SHA512 f204494907226a12b4ecabc39d555f27c1ce5cba515fccd187d9b7ee584d86278558d6a26b2bbec98bce582239f21ac00c2d854f594c6b1f21e1636793845926 WHIRLPOOL 1590695d82c274d06806bffdadb872fba9b870efd19e234fd265b07911cd0bdfe456ddc16e63f9fd707559750a0373739627d440f91567084ee9e0c72b640f40
26
27 diff --git a/dev-lisp/ecls/ecls-16.1.2.ebuild b/dev-lisp/ecls/ecls-16.1.2.ebuild
28 new file mode 100644
29 index 0000000..1958787
30 --- /dev/null
31 +++ b/dev-lisp/ecls/ecls-16.1.2.ebuild
32 @@ -0,0 +1,91 @@
33 +# Copyright 1999-2016 Gentoo Foundation
34 +# Distributed under the terms of the GNU General Public License v2
35 +# $Id$
36 +
37 +EAPI=5
38 +inherit eutils multilib
39 +
40 +# test phase only works if ecls already installed #516876
41 +RESTRICT="test"
42 +
43 +MY_P=ecl-${PV}
44 +
45 +DESCRIPTION="ECL is an embeddable Common Lisp implementation"
46 +HOMEPAGE="https://common-lisp.net/project/ecl/"
47 +SRC_URI="https://common-lisp.net/project/ecl/files/release/${PV}/${MY_P}.tgz"
48 +
49 +LICENSE="BSD LGPL-2"
50 +SLOT="0/${PV}"
51 +KEYWORDS="~amd64 ~ppc ~sparc ~x86"
52 +IUSE="debug emacs gengc precisegc cpu_flags_x86_sse +threads +unicode +libatomic X"
53 +
54 +CDEPEND="dev-libs/gmp:0
55 + virtual/libffi
56 + libatomic? ( dev-libs/libatomic_ops )
57 + >=dev-libs/boehm-gc-7.1[threads?]
58 + >=dev-lisp/asdf-2.33-r3:="
59 +DEPEND="${CDEPEND}
60 + app-text/texi2html
61 + emacs? ( virtual/emacs >=app-eselect/eselect-emacs-1.12 )"
62 +RDEPEND="${CDEPEND}"
63 +
64 +S="${WORKDIR}"/${MY_P}
65 +
66 +pkg_setup () {
67 + if use gengc || use precisegc ; then
68 + ewarn "You have enabled the generational garbage collector or"
69 + ewarn "the precise collection routines. These features are not very stable"
70 + ewarn "at the moment and may cause crashes."
71 + ewarn "Don't enable them unless you know what you're doing."
72 + fi
73 +}
74 +
75 +src_prepare() {
76 + epatch "${FILESDIR}"/${PV}-headers-gentoo.patch
77 + cp "${EPREFIX}"/usr/share/common-lisp/source/asdf/build/asdf.lisp contrib/asdf/ || die
78 +}
79 +
80 +src_configure() {
81 + econf \
82 + --with-system-gmp \
83 + --enable-boehm=system \
84 + --enable-longdouble=yes \
85 + --with-dffi \
86 + $(use_enable gengc) \
87 + $(use_enable precisegc) \
88 + $(use_with debug debug-cflags) \
89 + $(use_enable libatomic libatomic system) \
90 + $(use_with cpu_flags_x86_sse sse) \
91 + $(use_enable threads) \
92 + $(use_with threads __thread) \
93 + $(use_enable unicode) \
94 + $(use_with unicode unicode-names) \
95 + $(use_with X x) \
96 + $(use_with X clx)
97 +}
98 +
99 +src_compile() {
100 + if use emacs; then
101 + local ETAGS=$(eselect --brief etags list | sed -ne '/emacs/{p;q}')
102 + [[ -n ${ETAGS} ]] || die "No etags implementation found"
103 + pushd build > /dev/null || die
104 + emake ETAGS=${ETAGS} TAGS
105 + popd > /dev/null
106 + else
107 + touch build/TAGS
108 + fi
109 +
110 + #parallel make fails
111 + emake -j1 || die "Compilation failed"
112 +}
113 +
114 +src_install () {
115 + emake DESTDIR="${D}" install || die "Installation failed"
116 +
117 + dodoc README.md CHANGELOG
118 + dodoc "${FILESDIR}"/README.Gentoo
119 + pushd build/doc
120 + newman ecl.man ecl.1
121 + newman ecl-config.man ecl-config.1
122 + popd
123 +}
124
125 diff --git a/dev-lisp/ecls/files/16.1.2-headers-gentoo.patch b/dev-lisp/ecls/files/16.1.2-headers-gentoo.patch
126 new file mode 100644
127 index 0000000..193822a
128 --- /dev/null
129 +++ b/dev-lisp/ecls/files/16.1.2-headers-gentoo.patch
130 @@ -0,0 +1,13 @@
131 +diff -r -U1 ecl-16.1.2.orig/src/h/object.h ecl-16.1.2/src/h/object.h
132 +--- ecl-16.1.2.orig/src/h/object.h 2016-02-25 08:06:19.000000000 +0100
133 ++++ ecl-16.1.2/src/h/object.h 2016-02-29 12:46:56.846308964 +0100
134 +@@ -27,4 +27,9 @@
135 +
136 ++#ifndef TRUE
137 + #define TRUE 1 /* boolean true value */
138 ++#endif
139 ++
140 ++#ifndef FALSE
141 + #define FALSE 0 /* boolean false value */
142 ++#endif
143 +