diff options
author | Bernard Cafarelli <voyageur@gentoo.org> | 2017-03-20 12:09:13 +0100 |
---|---|---|
committer | Bernard Cafarelli <voyageur@gentoo.org> | 2017-03-20 14:40:26 +0100 |
commit | 7afb248095aafea7b4dc1020cd31804df982fe45 (patch) | |
tree | ba586e2463cbf79483c0211b39f27b0b41920c2f /gnustep-base/gnustep-make | |
parent | gnustep-base/gnustep-base: drop old (diff) | |
download | gentoo-7afb248095aafea7b4dc1020cd31804df982fe45.tar.gz gentoo-7afb248095aafea7b4dc1020cd31804df982fe45.tar.bz2 gentoo-7afb248095aafea7b4dc1020cd31804df982fe45.zip |
gnustep-base/gnustep-make: drop old
Package-Manager: Portage-2.3.5, Repoman-2.3.2
Diffstat (limited to 'gnustep-base/gnustep-make')
-rw-r--r-- | gnustep-base/gnustep-make/Manifest | 3 | ||||
-rw-r--r-- | gnustep-base/gnustep-make/files/gnustep-4.csh | 18 | ||||
-rw-r--r-- | gnustep-base/gnustep-make/files/gnustep-4.sh | 22 | ||||
-rw-r--r-- | gnustep-base/gnustep-make/files/gnustep-make-2.0.1-destdir.patch | 21 | ||||
-rw-r--r-- | gnustep-base/gnustep-make/gnustep-make-2.6.2.ebuild | 128 | ||||
-rw-r--r-- | gnustep-base/gnustep-make/gnustep-make-2.6.6.ebuild | 130 | ||||
-rw-r--r-- | gnustep-base/gnustep-make/gnustep-make-2.6.7-r1.ebuild | 141 | ||||
-rw-r--r-- | gnustep-base/gnustep-make/gnustep-make-2.6.7.ebuild | 130 |
8 files changed, 0 insertions, 593 deletions
diff --git a/gnustep-base/gnustep-make/Manifest b/gnustep-base/gnustep-make/Manifest index d44cd855d73c..a0bb8cba552e 100644 --- a/gnustep-base/gnustep-make/Manifest +++ b/gnustep-base/gnustep-make/Manifest @@ -1,4 +1 @@ -DIST gnustep-make-2.6.2.tar.gz 562770 SHA256 7a95b3fc5bf14f6b06c4f1f716b48e9de13a11c1fa972aa3cc87736cd98f3e3a SHA512 5ef7889418e7e5acc40cd045772b08d178333dd7cb396b46bfcc117b8953c868cffff5ad41153f6cf2029f1d78d7213516cf1c2cfc88f028ffb883d0e83ea6a4 WHIRLPOOL 73f0953ba044323349a60393ca644031bac13ea48dab6ccbbf533ee5e52daa8411f6b7bdc4fc8928536c37c5edcaf3a6ef40c3c2ee335c0608b5c8d3a6d890d5 -DIST gnustep-make-2.6.6.tar.gz 576589 SHA256 bcef14d875ff70b26dfc9e892f33bd3665e3d5d9b12eca0c4f2aae133aca981d SHA512 bfabcca446e37a167a5ee2da5230023387ed6edec3ca9f7067131f0f1296eb32754f35db13e7fb4670ac9bb9fa2ccfeb728adb63b692ed7f3f8f30ba39276224 WHIRLPOOL 0872046506300e23c40d23a01f29641d299bdc87d4c35d9c189064ed9110fbb7c6aaaf67626282eaa0a1a4a7bc3920617654a412222c19b98571a115020fa033 -DIST gnustep-make-2.6.7.tar.gz 583730 SHA256 112b57737c3dcc66c78a5c88925ae1d672673d256d9935598e98bcd687d051e4 SHA512 4470844ec50d51ce4609b0ec8031e5dcb8422e46fbcfb6b3d6d2fee11f3b8140f6b07edcc3b8462177acb65d81cd4bc29a4fd86793ae52d6106e698170b0dad0 WHIRLPOOL da525cc4502e082ab1cce5f75c05472a1029041cf327104e714a2641f79961c4ecb9deb2afb707ae83af2fea1e50b0c064b27dd20e84d17d137a75226936d64f DIST gnustep-make-2.6.8.tar.gz 592266 SHA256 603ed2d1339b44d154ea25229330acdedb6784b9c802b3797b2fefe3d2200064 SHA512 1df6757cd1e0dbca3eb6e4ad4346406799ebb2782f5853014cc3b1e8ae47056026e6c5cd43e5671c8802232444602fde164dde352c15b4e0d64bdfdea06bd8a0 WHIRLPOOL d54b06a9082e0b19bdb779c2e3914c57a9ecbad2cbb18de8d6f5cbe07c68208c0e169ee6e8ff41e70d619b028d208ed4089afaa86250bcd7452ae8d90e40cfa8 diff --git a/gnustep-base/gnustep-make/files/gnustep-4.csh b/gnustep-base/gnustep-make/files/gnustep-4.csh deleted file mode 100644 index cb5d3c030b2e..000000000000 --- a/gnustep-base/gnustep-make/files/gnustep-4.csh +++ /dev/null @@ -1,18 +0,0 @@ -#!/usr/bin/env csh -# Copyright 1999-2011 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -# Test for an interactive shell -if ( $?prompt ) then - - setenv GNUSTEP_SYSTEM_TOOLS "@GENTOO_PORTAGE_EPREFIX@"/usr/bin - - if ( -x $GNUSTEP_SYSTEM_TOOLS/make_services ) then - $GNUSTEP_SYSTEM_TOOLS/make_services - endif - - if ( -x $GNUSTEP_SYSTEM_TOOLS/gdnc ) then - $GNUSTEP_SYSTEM_TOOLS/gdnc - endif - -endif diff --git a/gnustep-base/gnustep-make/files/gnustep-4.sh b/gnustep-base/gnustep-make/files/gnustep-4.sh deleted file mode 100644 index 04ae66157a3c..000000000000 --- a/gnustep-base/gnustep-make/files/gnustep-4.sh +++ /dev/null @@ -1,22 +0,0 @@ -#!/usr/bin/env sh -# Copyright 1999-2011 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -# Test for an interactive shell -case $- in - *i*) - ;; - *) - return - ;; -esac - -GNUSTEP_SYSTEM_TOOLS="@GENTOO_PORTAGE_EPREFIX@"/usr/bin - -if [ -x ${GNUSTEP_SYSTEM_TOOLS}/make_services ]; then - ${GNUSTEP_SYSTEM_TOOLS}/make_services -fi - -if [ -x ${GNUSTEP_SYSTEM_TOOLS}/gdnc ]; then - ${GNUSTEP_SYSTEM_TOOLS}/gdnc -fi diff --git a/gnustep-base/gnustep-make/files/gnustep-make-2.0.1-destdir.patch b/gnustep-base/gnustep-make/files/gnustep-make-2.0.1-destdir.patch deleted file mode 100644 index 407a5145724e..000000000000 --- a/gnustep-base/gnustep-make/files/gnustep-make-2.0.1-destdir.patch +++ /dev/null @@ -1,21 +0,0 @@ -* grobian@gentoo.org: because we use sandbox this check fails (cannot - write outside the DESTDIR. Allowing to write in the - GNUSTEP_INSTALLATION_DIR means our sandbox is useless, since then - everything can be written, so prefer to just check the DESTDIR - location instead. - ---- Master/rules.make -+++ Master/rules.make -@@ -107,9 +107,9 @@ - - ifneq ($(GNUSTEP_INSTALLATION_DIR),) - internal-check-install-permissions: -- @if [ -d "$(GNUSTEP_INSTALLATION_DIR)" \ -- -a ! -w "$(GNUSTEP_INSTALLATION_DIR)" ]; then \ -- echo "*ERROR*: the software is configured to install itself into $(GNUSTEP_INSTALLATION_DIR)"; \ -+ @if [ -d "$(DESTDIR)$(GNUSTEP_INSTALLATION_DIR)" \ -+ -a ! -w "$(DESTDIR)$(GNUSTEP_INSTALLATION_DIR)" ]; then \ -+ echo "*ERROR*: the software is configured to install itself into $(DESTDIR)$(GNUSTEP_INSTALLATION_DIR)"; \ - echo "but you do not have permissions to write in that directory:";\ - echo "Aborting installation."; \ - echo ""; \ diff --git a/gnustep-base/gnustep-make/gnustep-make-2.6.2.ebuild b/gnustep-base/gnustep-make/gnustep-make-2.6.2.ebuild deleted file mode 100644 index 6efd6be4fd06..000000000000 --- a/gnustep-base/gnustep-make/gnustep-make-2.6.2.ebuild +++ /dev/null @@ -1,128 +0,0 @@ -# Copyright 1999-2012 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI=4 -inherit gnustep-base eutils prefix toolchain-funcs - -DESCRIPTION="GNUstep Makefile Package" -HOMEPAGE="http://www.gnustep.org" -SRC_URI="ftp://ftp.gnustep.org/pub/gnustep/core/${P}.tar.gz" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="~alpha amd64 ppc ppc64 sparc x86 ~x86-fbsd ~amd64-linux ~x86-linux ~sparc-solaris ~x86-solaris" -IUSE="native-exceptions" - -DEPEND="${GNUSTEP_CORE_DEPEND} - >=sys-devel/make-3.75 - >=sys-devel/gcc-3.3[objc] - !!gnustep-base/libobjc2" -RDEPEND="${DEPEND}" - -pkg_setup() { - # Determine libobjc.so to use - if use libobjc2; then - libobjc_version=libobjc.so.4 - else - # Find version in active gcc - for ver in {2..5}; - do - if $(tc-getCC) -Werror -Wl,-l:libobjc.so.${ver} \ - "${FILESDIR}"/testlibobjc.m -o /dev/null 2> /dev/null; - then - libobjc_version=libobjc.so.${ver} - fi - done - fi - - # Stop if we could not get libobjc.so - if [[ -z ${libobjc_version} ]]; then - die "Could not find Objective-C runtime" - fi - - # For existing installations, determine if we will use another libobjc.so - if has_version gnustep-base/gnustep-make; then - local current_libobjc="$(awk -F: '/^OBJC_LIB_FLAG/ {print $2}' ${EPREFIX}/usr/share/GNUstep/Makefiles/config.make)" - # Old installations did not set this explicitely - : ${current_libobjc:=libobjc.so.2} - - if [[ ${current_libobjc} != ${libobjc_version} ]]; then - ewarn "Warning: changed libobjc.so version!!" - ewarn "The libobjc.so version used for gnustep-make has changed" - ewarn "(either by the libojbc2 use-flag or a GCC upgrade)" - ewarn "You must rebuild all gnustep packages installed." - ewarn "" - ewarn "To do so, please emerge gnustep-base/gnustep-updater and run:" - ewarn "# gnustep-updater -l" - fi - fi - - if use libobjc2; then - export CC=clang - fi -} - -src_prepare() { - # Multilib-strict - sed -e "s#/lib#/$(get_libdir)#" -i FilesystemLayouts/fhs-system || die "sed failed" - epatch "${FILESDIR}"/${PN}-2.0.1-destdir.patch - cp "${FILESDIR}"/gnustep-4.{csh,sh} "${T}"/ - eprefixify "${T}"/gnustep-4.{csh,sh} -} - -src_configure() { - #--enable-objc-nonfragile-abi: only working in clang for now - econf \ - --with-layout=fhs-system \ - --with-config-file="${EPREFIX}"/etc/GNUstep/GNUstep.conf \ - --with-objc-lib-flag=-l:${libobjc_version} \ - $(use_enable libobjc2 objc-nonfragile-abi) \ - $(use_enable native-exceptions native-objc-exceptions) -} - -src_compile() { - emake - # Prepare doc here (needed when no gnustep-make is already installed) - if use doc ; then - # If a gnustep-1 environment is set - unset GNUSTEP_MAKEFILES - pushd Documentation &> /dev/null - emake all install - popd &> /dev/null - fi -} - -src_install() { - # Get GNUSTEP_* variables - . ./GNUstep.conf - - local make_eval - use debug || make_eval="${make_eval} debug=no" - make_eval="${make_eval} verbose=yes" - - emake ${make_eval} DESTDIR="${D}" install - - # Copy the documentation - if use doc ; then - dodir ${GNUSTEP_SYSTEM_DOC} - cp -r Documentation/tmp-installation/System/Library/Documentation/* \ - "${ED}"${GNUSTEP_SYSTEM_DOC=} - fi - - dodoc FAQ README RELEASENOTES - - exeinto /etc/profile.d - doexe "${T}"/gnustep-4.sh - doexe "${T}"/gnustep-4.csh -} - -pkg_postinst() { - # Warn about new layout if old GNUstep directory is still here - if [ -e /usr/GNUstep/System ]; then - ewarn "Old layout directory detected (/usr/GNUstep/System)" - ewarn "Gentoo has switched to FHS layout for GNUstep packages" - ewarn "You must first update the configuration files from this package," - ewarn "then remerge all packages still installed with the old layout" - ewarn "You can use gnustep-base/gnustep-updater for this task" - fi -} diff --git a/gnustep-base/gnustep-make/gnustep-make-2.6.6.ebuild b/gnustep-base/gnustep-make/gnustep-make-2.6.6.ebuild deleted file mode 100644 index d06eff5a7afc..000000000000 --- a/gnustep-base/gnustep-make/gnustep-make-2.6.6.ebuild +++ /dev/null @@ -1,130 +0,0 @@ -# Copyright 1999-2015 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI=5 -inherit gnustep-base eutils prefix toolchain-funcs - -DESCRIPTION="GNUstep Makefile Package" -HOMEPAGE="http://www.gnustep.org" -SRC_URI="ftp://ftp.gnustep.org/pub/gnustep/core/${P}.tar.gz" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="~alpha ~amd64 ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd ~amd64-linux ~x86-linux ~sparc-solaris ~x86-solaris" -IUSE="libobjc2 native-exceptions" - -DEPEND="${GNUSTEP_CORE_DEPEND} - >=sys-devel/make-3.75 - libobjc2? ( gnustep-base/libobjc2 - >=sys-devel/clang-2.9 ) - !libobjc2? ( >=sys-devel/gcc-3.3:=[objc] - !!gnustep-base/libobjc2 )" -RDEPEND="${DEPEND}" - -pkg_setup() { - # Determine libobjc.so to use - if use libobjc2; then - libobjc_version=libobjc.so.4 - else - # Find version in active gcc - for ver in {2..5}; - do - if $(tc-getCC) -Werror -Wl,-l:libobjc.so.${ver} \ - "${FILESDIR}"/testlibobjc.m -o /dev/null 2> /dev/null; - then - libobjc_version=libobjc.so.${ver} - fi - done - fi - - # Stop if we could not get libobjc.so - if [[ -z ${libobjc_version} ]]; then - die "Could not find Objective-C runtime" - fi - - # For existing installations, determine if we will use another libobjc.so - if has_version gnustep-base/gnustep-make; then - local current_libobjc="$(awk -F: '/^OBJC_LIB_FLAG/ {print $2}' ${EPREFIX}/usr/share/GNUstep/Makefiles/config.make)" - # Old installations did not set this explicitely - : ${current_libobjc:=libobjc.so.2} - - if [[ ${current_libobjc} != ${libobjc_version} ]]; then - ewarn "Warning: changed libobjc.so version!!" - ewarn "The libobjc.so version used for gnustep-make has changed" - ewarn "(either by the libojbc2 use-flag or a GCC upgrade)" - ewarn "You must rebuild all gnustep packages installed." - ewarn "" - ewarn "To do so, please emerge gnustep-base/gnustep-updater and run:" - ewarn "# gnustep-updater -l" - fi - fi - - if use libobjc2; then - export CC=clang - fi -} - -src_prepare() { - # Multilib-strict - sed -e "s#/lib#/$(get_libdir)#" -i FilesystemLayouts/fhs-system || die "sed failed" - cp "${FILESDIR}"/gnustep-5.{csh,sh} "${T}"/ - eprefixify "${T}"/gnustep-5.{csh,sh} -} - -src_configure() { - #--enable-objc-nonfragile-abi: only working in clang for now - econf \ - INSTALL="${EPREFIX}"/usr/bin/install \ - --with-layout=fhs-system \ - --with-config-file="${EPREFIX}"/etc/GNUstep/GNUstep.conf \ - --with-objc-lib-flag=-l:${libobjc_version} \ - $(use_enable libobjc2 objc-nonfragile-abi) \ - $(use_enable native-exceptions native-objc-exceptions) -} - -src_compile() { - emake - # Prepare doc here (needed when no gnustep-make is already installed) - if use doc ; then - # If a gnustep-1 environment is set - unset GNUSTEP_MAKEFILES - pushd Documentation &> /dev/null - emake -j1 all install - popd &> /dev/null - fi -} - -src_install() { - # Get GNUSTEP_* variables - . ./GNUstep.conf - - local make_eval - use debug || make_eval="${make_eval} debug=no" - make_eval="${make_eval} verbose=yes" - - emake ${make_eval} DESTDIR="${D}" install - - # Copy the documentation - if use doc ; then - dodir ${GNUSTEP_SYSTEM_DOC} - cp -r Documentation/tmp-installation/System/Library/Documentation/* \ - "${ED}"${GNUSTEP_SYSTEM_DOC=} - fi - - dodoc FAQ README RELEASENOTES - - exeinto /etc/profile.d - doexe "${T}"/gnustep-?.sh - doexe "${T}"/gnustep-?.csh -} - -pkg_postinst() { - # Warn about new layout if old GNUstep directory is still here - if [ -e /usr/GNUstep/System ]; then - ewarn "Old layout directory detected (/usr/GNUstep/System)" - ewarn "Gentoo has switched to FHS layout for GNUstep packages" - ewarn "You must first update the configuration files from this package," - ewarn "then remerge all packages still installed with the old layout" - ewarn "You can use gnustep-base/gnustep-updater for this task" - fi -} diff --git a/gnustep-base/gnustep-make/gnustep-make-2.6.7-r1.ebuild b/gnustep-base/gnustep-make/gnustep-make-2.6.7-r1.ebuild deleted file mode 100644 index a56b04ab66c8..000000000000 --- a/gnustep-base/gnustep-make/gnustep-make-2.6.7-r1.ebuild +++ /dev/null @@ -1,141 +0,0 @@ -# Copyright 1999-2016 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 -inherit gnustep-base eutils prefix toolchain-funcs - -DESCRIPTION="GNUstep Makefile Package" -HOMEPAGE="http://www.gnustep.org" -SRC_URI="ftp://ftp.gnustep.org/pub/gnustep/core/${P}.tar.gz" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="~alpha ~amd64 ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd ~amd64-linux ~x86-linux ~sparc-solaris ~x86-solaris" -IUSE="libobjc2 native-exceptions" - -DEPEND="${GNUSTEP_CORE_DEPEND} - >=sys-devel/make-3.75 - libobjc2? ( gnustep-base/libobjc2 - sys-devel/clang ) - !libobjc2? ( !!gnustep-base/libobjc2 - || ( - >=sys-devel/gcc-3.3[objc] - sys-devel/clang - ) )" -RDEPEND="${DEPEND}" - -pkg_setup() { - # Determine libobjc.so to use - if use libobjc2; then - libobjc_version=libobjc.so.4 - else - # Find version in active gcc - for ver in {2..5}; - do - if $(tc-getCC) -Werror -Wl,-l:libobjc.so.${ver} \ - "${FILESDIR}"/testlibobjc.m -o /dev/null 2> /dev/null; - then - libobjc_version=libobjc.so.${ver} - fi - done - fi - - # Stop if we could not get libobjc.so - if [[ -z ${libobjc_version} ]]; then - eerror "${P} requires a working Objective-C runtime and a compiler with" - eerror "Objective-C support. Your current settings lack these requirements" - if ! use libobjc2; - then - eerror "Please switch your active compiler to gcc with USE=objc, or clang" - fi - die "Could not find Objective-C runtime" - fi - - # For existing installations, determine if we will use another libobjc.so - if has_version gnustep-base/gnustep-make; then - local current_libobjc="$(awk -F: '/^OBJC_LIB_FLAG/ {print $2}' ${EPREFIX}/usr/share/GNUstep/Makefiles/config.make)" - # Old installations did not set this explicitely - : ${current_libobjc:=libobjc.so.2} - - if [[ ${current_libobjc} != ${libobjc_version} ]]; then - ewarn "Warning: changed libobjc.so version!!" - ewarn "The libobjc.so version used for gnustep-make has changed" - ewarn "(either by the libojbc2 use-flag or a GCC upgrade)" - ewarn "You must rebuild all gnustep packages installed." - ewarn "" - ewarn "To do so, please emerge gnustep-base/gnustep-updater and run:" - ewarn "# gnustep-updater -l" - fi - fi - - if use libobjc2; then - export CC=clang - fi -} - -src_prepare() { - # Multilib-strict - sed -e "s#/lib#/$(get_libdir)#" -i FilesystemLayouts/fhs-system || die "sed failed" - cp "${FILESDIR}"/gnustep-5.{csh,sh} "${T}"/ - eprefixify "${T}"/gnustep-5.{csh,sh} - - default -} - -src_configure() { - #--enable-objc-nonfragile-abi: only working in clang for now - econf \ - INSTALL="${EPREFIX}"/usr/bin/install \ - --with-layout=fhs-system \ - --with-config-file="${EPREFIX}"/etc/GNUstep/GNUstep.conf \ - --with-objc-lib-flag=-l:${libobjc_version} \ - $(use_enable libobjc2 objc-nonfragile-abi) \ - $(use_enable native-exceptions native-objc-exceptions) -} - -src_compile() { - emake - # Prepare doc here (needed when no gnustep-make is already installed) - if use doc ; then - # If a gnustep-1 environment is set - unset GNUSTEP_MAKEFILES - pushd Documentation &> /dev/null - emake -j1 all install - popd &> /dev/null - fi -} - -src_install() { - # Get GNUSTEP_* variables - . ./GNUstep.conf - - local make_eval - use debug || make_eval="${make_eval} debug=no" - make_eval="${make_eval} verbose=yes" - - emake ${make_eval} DESTDIR="${D}" install - - # Copy the documentation - if use doc ; then - dodir ${GNUSTEP_SYSTEM_DOC} - cp -r Documentation/tmp-installation/System/Library/Documentation/* \ - "${ED}"${GNUSTEP_SYSTEM_DOC=} - fi - - dodoc FAQ README RELEASENOTES - - exeinto /etc/profile.d - doexe "${T}"/gnustep-?.sh - doexe "${T}"/gnustep-?.csh -} - -pkg_postinst() { - # Warn about new layout if old GNUstep directory is still here - if [ -e /usr/GNUstep/System ]; then - ewarn "Old layout directory detected (/usr/GNUstep/System)" - ewarn "Gentoo has switched to FHS layout for GNUstep packages" - ewarn "You must first update the configuration files from this package," - ewarn "then remerge all packages still installed with the old layout" - ewarn "You can use gnustep-base/gnustep-updater for this task" - fi -} diff --git a/gnustep-base/gnustep-make/gnustep-make-2.6.7.ebuild b/gnustep-base/gnustep-make/gnustep-make-2.6.7.ebuild deleted file mode 100644 index d06eff5a7afc..000000000000 --- a/gnustep-base/gnustep-make/gnustep-make-2.6.7.ebuild +++ /dev/null @@ -1,130 +0,0 @@ -# Copyright 1999-2015 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI=5 -inherit gnustep-base eutils prefix toolchain-funcs - -DESCRIPTION="GNUstep Makefile Package" -HOMEPAGE="http://www.gnustep.org" -SRC_URI="ftp://ftp.gnustep.org/pub/gnustep/core/${P}.tar.gz" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="~alpha ~amd64 ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd ~amd64-linux ~x86-linux ~sparc-solaris ~x86-solaris" -IUSE="libobjc2 native-exceptions" - -DEPEND="${GNUSTEP_CORE_DEPEND} - >=sys-devel/make-3.75 - libobjc2? ( gnustep-base/libobjc2 - >=sys-devel/clang-2.9 ) - !libobjc2? ( >=sys-devel/gcc-3.3:=[objc] - !!gnustep-base/libobjc2 )" -RDEPEND="${DEPEND}" - -pkg_setup() { - # Determine libobjc.so to use - if use libobjc2; then - libobjc_version=libobjc.so.4 - else - # Find version in active gcc - for ver in {2..5}; - do - if $(tc-getCC) -Werror -Wl,-l:libobjc.so.${ver} \ - "${FILESDIR}"/testlibobjc.m -o /dev/null 2> /dev/null; - then - libobjc_version=libobjc.so.${ver} - fi - done - fi - - # Stop if we could not get libobjc.so - if [[ -z ${libobjc_version} ]]; then - die "Could not find Objective-C runtime" - fi - - # For existing installations, determine if we will use another libobjc.so - if has_version gnustep-base/gnustep-make; then - local current_libobjc="$(awk -F: '/^OBJC_LIB_FLAG/ {print $2}' ${EPREFIX}/usr/share/GNUstep/Makefiles/config.make)" - # Old installations did not set this explicitely - : ${current_libobjc:=libobjc.so.2} - - if [[ ${current_libobjc} != ${libobjc_version} ]]; then - ewarn "Warning: changed libobjc.so version!!" - ewarn "The libobjc.so version used for gnustep-make has changed" - ewarn "(either by the libojbc2 use-flag or a GCC upgrade)" - ewarn "You must rebuild all gnustep packages installed." - ewarn "" - ewarn "To do so, please emerge gnustep-base/gnustep-updater and run:" - ewarn "# gnustep-updater -l" - fi - fi - - if use libobjc2; then - export CC=clang - fi -} - -src_prepare() { - # Multilib-strict - sed -e "s#/lib#/$(get_libdir)#" -i FilesystemLayouts/fhs-system || die "sed failed" - cp "${FILESDIR}"/gnustep-5.{csh,sh} "${T}"/ - eprefixify "${T}"/gnustep-5.{csh,sh} -} - -src_configure() { - #--enable-objc-nonfragile-abi: only working in clang for now - econf \ - INSTALL="${EPREFIX}"/usr/bin/install \ - --with-layout=fhs-system \ - --with-config-file="${EPREFIX}"/etc/GNUstep/GNUstep.conf \ - --with-objc-lib-flag=-l:${libobjc_version} \ - $(use_enable libobjc2 objc-nonfragile-abi) \ - $(use_enable native-exceptions native-objc-exceptions) -} - -src_compile() { - emake - # Prepare doc here (needed when no gnustep-make is already installed) - if use doc ; then - # If a gnustep-1 environment is set - unset GNUSTEP_MAKEFILES - pushd Documentation &> /dev/null - emake -j1 all install - popd &> /dev/null - fi -} - -src_install() { - # Get GNUSTEP_* variables - . ./GNUstep.conf - - local make_eval - use debug || make_eval="${make_eval} debug=no" - make_eval="${make_eval} verbose=yes" - - emake ${make_eval} DESTDIR="${D}" install - - # Copy the documentation - if use doc ; then - dodir ${GNUSTEP_SYSTEM_DOC} - cp -r Documentation/tmp-installation/System/Library/Documentation/* \ - "${ED}"${GNUSTEP_SYSTEM_DOC=} - fi - - dodoc FAQ README RELEASENOTES - - exeinto /etc/profile.d - doexe "${T}"/gnustep-?.sh - doexe "${T}"/gnustep-?.csh -} - -pkg_postinst() { - # Warn about new layout if old GNUstep directory is still here - if [ -e /usr/GNUstep/System ]; then - ewarn "Old layout directory detected (/usr/GNUstep/System)" - ewarn "Gentoo has switched to FHS layout for GNUstep packages" - ewarn "You must first update the configuration files from this package," - ewarn "then remerge all packages still installed with the old layout" - ewarn "You can use gnustep-base/gnustep-updater for this task" - fi -} |