summaryrefslogtreecommitdiff
path: root/gnustep-base/gnustep-make
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2024-08-07 12:37:21 +0100
committerV3n3RiX <venerix@koprulu.sector>2024-08-07 12:37:21 +0100
commitb8c7370a682e4e29cda623222d17a790c01c3642 (patch)
treef6caa14689bd00a5760eadaa381ff41e50ef3c1b /gnustep-base/gnustep-make
parent8a4997a7e2d1e36c089d4d76935b5a902d98d3d0 (diff)
gentoo auto-resync : 07:08:2024 - 12:37:20
Diffstat (limited to 'gnustep-base/gnustep-make')
-rw-r--r--gnustep-base/gnustep-make/Manifest2
-rw-r--r--gnustep-base/gnustep-make/gnustep-make-2.9.2.ebuild134
2 files changed, 136 insertions, 0 deletions
diff --git a/gnustep-base/gnustep-make/Manifest b/gnustep-base/gnustep-make/Manifest
index d412c2d75e57..08418ca0d74a 100644
--- a/gnustep-base/gnustep-make/Manifest
+++ b/gnustep-base/gnustep-make/Manifest
@@ -3,6 +3,8 @@ AUX gnustep-5.sh 359 BLAKE2B 2df675c570e6343b3303cb3c82e0eb6c6fe60f842fe61297b14
AUX gnustep-make-2.9.0-no_compress_man_pages.patch 2216 BLAKE2B 7cf3ccc8e0587c5f06df6410252023b7913b32a1977f87c71dc649d830d3564bb0a617090c8e6db71de2ecedb03eae9b034b0a82ac6a703255fcb83cd228a58a SHA512 e986d0bba2f89cc6152ec399b08ca5c23721329e43222dcfd5e1283ae8bf45048a5033d1a3ecdf1eb48293418fec7e21ccea459e19340ce4e09f7e6127448e77
DIST gnustep-make-2.9.0.tar.gz 611406 BLAKE2B 73bae19b5d3d3c1e069d22ce7087308166f632277d870fa5ab125d5bc004a1518a1edb6822c61e00b98fc13a1b3354440024bd13d98662002c15298745c4e935 SHA512 ff185affe32d4efc2009d72a3862bc3bffebce05ea5a7fdfbf4372774e57b6654863e317ce648c248716dd3e97a4320d697a313e7eefd04f5723186be6cbf1e3
DIST gnustep-make-2.9.1.tar.gz 621081 BLAKE2B 1523cdb2b38ebd32c9a6b52edd07302e425aaf5f9820d152c4a4c18b7a34dbcfd1615208f8a8588ea32db354c5955a7e76af50948c88e685bce48077fdc6d646 SHA512 ab36cea1e79ba1248ee7510f2a4d5f5fe5aa0ee7044d51a3b4f65ebaeed08134b3b3ea8a9e34cdb4fa90ac43143d96cf868ae766d2fdc4341419575eb1637f28
+DIST gnustep-make-2.9.2.tar.gz 611483 BLAKE2B 6fe7a133832b8ceabca9b0a5aaf45323ebbc9139b843b0c307f44f56e794a98c3293ac31513f4c9236ddae27aec5e6935126f9804f52e37b24a3e1ce1e118d32 SHA512 f807a9cdf29f0fc7bbe92e1c9895f8675cc564fb0e6eecba2431ccde315a8a78491e6ef84d86a279c8af02843b2e2a4f436624824733a53de02e2656b092394a
EBUILD gnustep-make-2.9.0.ebuild 3704 BLAKE2B 46a1525a84db0c3b349a2e99c70d3f787905da333f1b2d030b9a4540abd2e5c34df5532d809fc0c0906679f17d3db9b9fddfef4f34fd3ac9497a42e5c2c2fd06 SHA512 3d2ff7b5cdbe23084039d1ca7f8dc0a61f39fa99bd717334e8841716702c79af84305f7054f1bb2b2975a7f69e5f23502baff08b4b43ac0f8454b9e7896415c5
EBUILD gnustep-make-2.9.1.ebuild 3711 BLAKE2B fc104b13781e351ca518526dbefd90f72e42979373843ffc45c7892a5c3ec6650034bd1bd71f93ee7445d90629cf479a5575a5d10a1550f34c5c743e16e05620 SHA512 62deb1f96ac0d2a4f3dc915ba34dc9b7671bcf5cbe97d8c1cb21401e42cd6768bc1b6f6b28685e3b1c32239e4e557719b915f40fe4b12e95e54a724bd9f17108
+EBUILD gnustep-make-2.9.2.ebuild 3721 BLAKE2B 1ab4af278579a6bd858e61ddac357a9f9188bec96ae01c6c37de24fb1171720b51d2f43a41a2e0333f7ee937fc092fc7d9d8fd772944d8a45ea6a5f81914422f SHA512 bf9ba4988dc21fdcffa9fbee4f4687e732475dd010a2febccc9543dc381dbd33d25622dc746505e213ddfec750baf0dee02234fe51eb0e09025ea6d6db1ed012
MISC metadata.xml 992 BLAKE2B 9080bcf4934cee4e7f6efe7a7875a830e5a693a2174a1eb8d1134fd5fb8f17e8962e47f151cfa7b080af1734dcc9f2e1b8ce4fd7532d91ede58409449e803274 SHA512 746eaa9497ea688ac9549dc0f14693f34bde4906c8df9a5e6e3a863b98c18e965bd1943effaa637eace6cf05adfae11ad376c2fd7b738a8e2563dd51b60b6641
diff --git a/gnustep-base/gnustep-make/gnustep-make-2.9.2.ebuild b/gnustep-base/gnustep-make/gnustep-make-2.9.2.ebuild
new file mode 100644
index 000000000000..812bfef965c8
--- /dev/null
+++ b/gnustep-base/gnustep-make/gnustep-make-2.9.2.ebuild
@@ -0,0 +1,134 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit gnustep-base prefix toolchain-funcs
+
+DESCRIPTION="GNUstep Makefile Package"
+HOMEPAGE="https://gnustep.github.io"
+SRC_URI="ftp://ftp.gnustep.org/pub/gnustep/core/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux"
+IUSE="libobjc2 native-exceptions"
+
+DEPEND="${GNUSTEP_CORE_DEPEND}
+ >=dev-build/make-3.75
+ libobjc2? ( gnustep-base/libobjc2
+ sys-devel/clang:* )
+ !libobjc2? ( !!gnustep-base/libobjc2
+ || (
+ sys-devel/gcc:*[objc]
+ sys-devel/clang:*
+ ) )"
+RDEPEND="${DEPEND}"
+
+PATCHES=( "${FILESDIR}"/${PN}-2.9.0-no_compress_man_pages.patch )
+
+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} -x objective-c \
+ - <<<$'int main() {}' -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#/@libdir@#/$(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() {
+ 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 native-exceptions native-objc-exceptions)
+}
+
+src_compile() {
+ emake
+ if use doc ; then
+ emake -C Documentation
+ 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
+ emake -C Documentation ${make_eval} DESTDIR="${D}" install
+ 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
+}