2 |
2 |
# Distributed under the terms of the GNU General Public License v2
|
3 |
3 |
|
4 |
4 |
EAPI=8
|
|
5 |
|
5 |
6 |
inherit gnustep-base toolchain-funcs
|
6 |
7 |
|
7 |
8 |
DESCRIPTION="A library of general-purpose, non-graphical Objective C objects"
|
8 |
9 |
HOMEPAGE="https://gnustep.github.io"
|
9 |
|
SRC_URI="ftp://ftp.gnustep.org/pub/gnustep/core/${P}.tar.gz"
|
|
10 |
SRC_URI="https://github.com/gnustep/libs-base/releases/download/base-${PV//./_}/${P}.tar.gz"
|
10 |
11 |
|
11 |
12 |
LICENSE="GPL-2 LGPL-2.1"
|
12 |
13 |
SLOT="0/$(ver_cut 1-2)"
|
13 |
|
KEYWORDS="~alpha ~amd64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux"
|
|
14 |
KEYWORDS="~alpha amd64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux"
|
14 |
15 |
IUSE="+gnutls +iconv +icu +libffi zeroconf"
|
15 |
16 |
|
16 |
17 |
RDEPEND="${GNUSTEP_CORE_DEPEND}
|
... | ... | |
18 |
19 |
gnutls? ( net-libs/gnutls:= )
|
19 |
20 |
iconv? ( virtual/libiconv )
|
20 |
21 |
icu? ( >=dev-libs/icu-49.0:= )
|
21 |
|
!libffi? ( dev-libs/ffcall
|
22 |
|
gnustep-base/gnustep-make[-native-exceptions] )
|
23 |
22 |
libffi? ( dev-libs/libffi:= )
|
|
23 |
!libffi? (
|
|
24 |
dev-libs/ffcall
|
|
25 |
gnustep-base/gnustep-make[-native-exceptions]
|
|
26 |
)
|
24 |
27 |
>=dev-libs/libxml2-2.6
|
25 |
28 |
>=dev-libs/libxslt-1.1
|
26 |
29 |
>=dev-libs/gmp-4.1:=
|
27 |
30 |
>=sys-libs/zlib-1.2
|
28 |
31 |
zeroconf? ( net-dns/avahi )"
|
29 |
|
DEPEND="${RDEPEND}
|
30 |
|
virtual/pkgconfig"
|
|
32 |
DEPEND="${RDEPEND}"
|
|
33 |
BDEPEND="virtual/pkgconfig"
|
31 |
34 |
|
32 |
35 |
PATCHES=(
|
33 |
36 |
"${FILESDIR}"/${PN}-1.26.0-no_compress_man.patch
|
34 |
|
"${FILESDIR}"/${P}-c99.patch
|
|
37 |
"${FILESDIR}"/${PN}-1.29.0-libxml2-2.11.patch
|
35 |
38 |
)
|
36 |
39 |
|
37 |
40 |
src_configure() {
|
38 |
41 |
egnustep_env
|
39 |
42 |
|
40 |
|
local myconf
|
41 |
|
if use libffi ; then
|
42 |
|
myconf="--enable-libffi --disable-ffcall --with-ffi-include=$($(tc-getPKG_CONFIG) --variable=includedir libffi)"
|
43 |
|
else
|
44 |
|
myconf="--disable-libffi --enable-ffcall"
|
45 |
|
fi
|
46 |
|
|
47 |
|
myconf="$myconf $(use_enable gnutls tls)"
|
48 |
|
myconf="$myconf $(use_enable iconv)"
|
49 |
|
myconf="$myconf $(use_enable icu)"
|
50 |
|
myconf="$myconf $(use_enable zeroconf)"
|
51 |
|
myconf="$myconf --with-xml-prefix=${EPREFIX}/usr"
|
52 |
|
myconf="$myconf --with-gmp-include=${EPREFIX}/usr/include --with-gmp-library=${EPREFIX}/usr/lib"
|
53 |
|
myconf="$myconf --with-default-config=${EPREFIX}/etc/GNUstep/GNUstep.conf"
|
|
43 |
local myconf=(
|
|
44 |
$(use_enable libffi)
|
|
45 |
$(use_enable !libffi ffcall)
|
|
46 |
)
|
|
47 |
use libffi &&
|
|
48 |
myconf+=( --with-ffi-include=$($(tc-getPKG_CONFIG) --variable=includedir libffi) )
|
|
49 |
|
|
50 |
myconf+=(
|
|
51 |
$(use_enable gnutls tls)
|
|
52 |
$(use_enable iconv)
|
|
53 |
$(use_enable icu)
|
|
54 |
$(use_enable zeroconf)
|
|
55 |
--with-xml-prefix="${ESYSROOT}"/usr
|
|
56 |
--with-gmp-include="${ESYSROOT}"/usr/include
|
|
57 |
--with-gmp-library="${ESYSROOT}"/usr/$(get_libdir)
|
|
58 |
--with-default-config="${ESYSROOT}"/etc/GNUstep/GNUstep.conf
|
|
59 |
)
|
54 |
60 |
|
55 |
|
econf $myconf
|
|
61 |
econf "${myconf[@]}"
|
56 |
62 |
}
|
57 |
63 |
|
58 |
64 |
src_install() {
|
59 |
65 |
# We need to set LD_LIBRARY_PATH because the doc generation program
|
60 |
|
# uses the gnustep-base libraries. Since egnustep_env "cleans the
|
|
66 |
# uses the gnustep-base libraries. Since egnustep_env "cleans the
|
61 |
67 |
# environment" including our LD_LIBRARY_PATH, we're left no choice
|
62 |
68 |
# but doing it like this.
|
63 |
69 |
|