mirror of
https://github.com/gentoo-mirror/gentoo.git
synced 2026-09-24 04:59:14 -07:00
gnustep-base/gnustep-make: drop old
Package-Manager: Portage-2.3.5, Repoman-2.3.2
This commit is contained in:
@@ -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
|
||||
|
||||
@@ -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
|
||||
@@ -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
|
||||
@@ -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 ""; \
|
||||
@@ -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
|
||||
}
|
||||
@@ -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
|
||||
}
|
||||
@@ -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
|
||||
}
|
||||
@@ -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
|
||||
}
|
||||
Reference in New Issue
Block a user