summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBernard Cafarelli <voyageur@gentoo.org>2022-11-24 21:37:51 +0100
committerBernard Cafarelli <voyageur@gentoo.org>2022-11-24 21:38:06 +0100
commit75ac5e2c17405dc3b2c7326f17b539cc9b69ef2d (patch)
treefb15ee5d87324ace16707d91628400e9a4adec1c /gnustep-base
parentdev-ada/gprbuild: separate gprconfig_kb (diff)
downloadgentoo-75ac5e2c17405dc3b2c7326f17b539cc9b69ef2d.tar.gz
gentoo-75ac5e2c17405dc3b2c7326f17b539cc9b69ef2d.tar.bz2
gentoo-75ac5e2c17405dc3b2c7326f17b539cc9b69ef2d.zip
gnustep-base/gnustep-base: update EAPI 7 -> 8
Closes: https://bugs.gentoo.org/882641 Signed-off-by: Bernard Cafarelli <voyageur@gentoo.org>
Diffstat (limited to 'gnustep-base')
-rw-r--r--gnustep-base/gnustep-base/files/gnustep-base-1.28.0-c99.patch67
-rw-r--r--gnustep-base/gnustep-base/gnustep-base-1.28.0-r2.ebuild72
2 files changed, 139 insertions, 0 deletions
diff --git a/gnustep-base/gnustep-base/files/gnustep-base-1.28.0-c99.patch b/gnustep-base/gnustep-base/files/gnustep-base-1.28.0-c99.patch
new file mode 100644
index 000000000000..8b3fa94ebfa9
--- /dev/null
+++ b/gnustep-base/gnustep-base/files/gnustep-base-1.28.0-c99.patch
@@ -0,0 +1,67 @@
+Add missing include files and implicit ints to support building
+with a compiler in strict(er) C99 mode.
+
+diff --git a/config/config.poll-dev.c b/config/config.poll-dev.c
+index 413a6a7ad307b8ed..ec323874064c8643 100644
+--- a/config/config.poll-dev.c
++++ b/config/config.poll-dev.c
+@@ -6,6 +6,7 @@
+ #include <stdio.h>
+ #include <fcntl.h>
+ #include <poll.h>
++#include <unistd.h>
+
+ int
+ main()
+diff --git a/config/config.proccmd.c b/config/config.proccmd.c
+index b27d25a56d07b287..3e5a5a38792ee414 100644
+--- a/config/config.proccmd.c
++++ b/config/config.proccmd.c
+@@ -10,6 +10,8 @@
+ notice and this notice are preserved.
+ */
+ #include <stdio.h>
++#include <unistd.h>
++
+ int main()
+ {
+ char buf[32];
+diff --git a/config/config.reuseaddr.c b/config/config.reuseaddr.c
+index 45276c8cdf793ba4..6061b7814ef5a457 100644
+--- a/config/config.reuseaddr.c
++++ b/config/config.reuseaddr.c
+@@ -31,7 +31,7 @@
+ // Maximum data in single I/O operation
+ #define NETBUF_SIZE 4096
+
+-main()
++int main()
+ {
+ struct sockaddr_in sin;
+ int size = sizeof(sin);
+diff --git a/config/config.vasprintf.c b/config/config.vasprintf.c
+index a3c755ec95c34155..f532502e1d3fba95 100644
+--- a/config/config.vasprintf.c
++++ b/config/config.vasprintf.c
+@@ -25,6 +25,6 @@ static int func(const char *fmt, ...)
+ int main()
+ {
+ if (func("1234", 0) == 4)
+- exit (0);
+- exit (-1);
++ return 0;
++ return -1;
+ }
+diff --git a/config/config.vsprintf.c b/config/config.vsprintf.c
+index 01a383d6170ed9ff..a4a971e8029425bc 100644
+--- a/config/config.vsprintf.c
++++ b/config/config.vsprintf.c
+@@ -25,6 +25,6 @@ static int func(const char *fmt, ...)
+ int main()
+ {
+ if (func("1234", 0) == 4)
+- exit (0);
+- exit (-1);
++ return 0;
++ return -1;
+ }
diff --git a/gnustep-base/gnustep-base/gnustep-base-1.28.0-r2.ebuild b/gnustep-base/gnustep-base/gnustep-base-1.28.0-r2.ebuild
new file mode 100644
index 000000000000..18a52fddef64
--- /dev/null
+++ b/gnustep-base/gnustep-base/gnustep-base-1.28.0-r2.ebuild
@@ -0,0 +1,72 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit gnustep-base toolchain-funcs
+
+DESCRIPTION="A library of general-purpose, non-graphical Objective C objects"
+HOMEPAGE="http://www.gnustep.org"
+SRC_URI="ftp://ftp.gnustep.org/pub/gnustep/core/${P}.tar.gz"
+
+LICENSE="GPL-2 LGPL-2.1"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~alpha ~amd64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~sparc-solaris ~x86-solaris"
+IUSE="+gnutls +iconv +icu +libffi zeroconf"
+
+RDEPEND="${GNUSTEP_CORE_DEPEND}
+ >=gnustep-base/gnustep-make-2.6.0
+ gnutls? ( net-libs/gnutls:= )
+ iconv? ( virtual/libiconv )
+ icu? ( >=dev-libs/icu-49.0:= )
+ !libffi? ( dev-libs/ffcall
+ gnustep-base/gnustep-make[-native-exceptions] )
+ libffi? ( dev-libs/libffi:= )
+ >=dev-libs/libxml2-2.6
+ >=dev-libs/libxslt-1.1
+ >=dev-libs/gmp-4.1:=
+ >=sys-libs/zlib-1.2
+ zeroconf? ( net-dns/avahi )"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.26.0-no_compress_man.patch
+ "${FILESDIR}"/${P}-c99.patch
+)
+
+src_configure() {
+ egnustep_env
+
+ local myconf
+ if use libffi ; then
+ myconf="--enable-libffi --disable-ffcall --with-ffi-include=$($(tc-getPKG_CONFIG) --variable=includedir libffi)"
+ else
+ myconf="--disable-libffi --enable-ffcall"
+ fi
+
+ myconf="$myconf $(use_enable gnutls tls)"
+ myconf="$myconf $(use_enable iconv)"
+ myconf="$myconf $(use_enable icu)"
+ myconf="$myconf $(use_enable zeroconf)"
+ myconf="$myconf --with-xml-prefix=${EPREFIX}/usr"
+ myconf="$myconf --with-gmp-include=${EPREFIX}/usr/include --with-gmp-library=${EPREFIX}/usr/lib"
+ myconf="$myconf --with-default-config=${EPREFIX}/etc/GNUstep/GNUstep.conf"
+
+ econf $myconf
+}
+
+src_install() {
+ # We need to set LD_LIBRARY_PATH because the doc generation program
+ # uses the gnustep-base libraries. Since egnustep_env "cleans the
+ # environment" including our LD_LIBRARY_PATH, we're left no choice
+ # but doing it like this.
+
+ egnustep_env
+ egnustep_install
+
+ if use doc ; then
+ export LD_LIBRARY_PATH="${S}/Source/obj:${LD_LIBRARY_PATH}"
+ egnustep_doc
+ fi
+ egnustep_install_config
+}