summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobin H. Johnson <robbat2@gentoo.org>2015-08-08 13:49:04 -0700
committerRobin H. Johnson <robbat2@gentoo.org>2015-08-08 17:38:18 -0700
commit56bd759df1d0c750a065b8c845e93d5dfa6b549d (patch)
tree3f91093cdb475e565ae857f1c5a7fd339e2d781e /gnustep-base/libobjc2
downloadgentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.gz
gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.bz2
gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.zip
proj/gentoo: Initial commit
This commit represents a new era for Gentoo: Storing the gentoo-x86 tree in Git, as converted from CVS. This commit is the start of the NEW history. Any historical data is intended to be grafted onto this point. Creation process: 1. Take final CVS checkout snapshot 2. Remove ALL ChangeLog* files 3. Transform all Manifests to thin 4. Remove empty Manifests 5. Convert all stale $Header$/$Id$ CVS keywords to non-expanded Git $Id$ 5.1. Do not touch files with -kb/-ko keyword flags. Signed-off-by: Robin H. Johnson <robbat2@gentoo.org> X-Thanks: Alec Warner <antarus@gentoo.org> - did the GSoC 2006 migration tests X-Thanks: Robin H. Johnson <robbat2@gentoo.org> - infra guy, herding this project X-Thanks: Nguyen Thai Ngoc Duy <pclouds@gentoo.org> - Former Gentoo developer, wrote Git features for the migration X-Thanks: Brian Harring <ferringb@gentoo.org> - wrote much python to improve cvs2svn X-Thanks: Rich Freeman <rich0@gentoo.org> - validation scripts X-Thanks: Patrick Lauer <patrick@gentoo.org> - Gentoo dev, running new 2014 work in migration X-Thanks: Michał Górny <mgorny@gentoo.org> - scripts, QA, nagging X-Thanks: All of other Gentoo developers - many ideas and lots of paint on the bikeshed
Diffstat (limited to 'gnustep-base/libobjc2')
-rw-r--r--gnustep-base/libobjc2/Manifest4
-rw-r--r--gnustep-base/libobjc2/files/libobjc2-1.7-fix_soname.patch58
-rw-r--r--gnustep-base/libobjc2/libobjc2-1.6.1.ebuild57
-rw-r--r--gnustep-base/libobjc2/libobjc2-1.7-r1.ebuild44
-rw-r--r--gnustep-base/libobjc2/libobjc2-1.7.ebuild42
-rw-r--r--gnustep-base/libobjc2/libobjc2-1.8.ebuild44
-rw-r--r--gnustep-base/libobjc2/metadata.xml35
7 files changed, 284 insertions, 0 deletions
diff --git a/gnustep-base/libobjc2/Manifest b/gnustep-base/libobjc2/Manifest
new file mode 100644
index 000000000000..bd1867ff5dca
--- /dev/null
+++ b/gnustep-base/libobjc2/Manifest
@@ -0,0 +1,4 @@
+DIST gnustep-make-2.6.2.tar.gz 562770 SHA256 7a95b3fc5bf14f6b06c4f1f716b48e9de13a11c1fa972aa3cc87736cd98f3e3a SHA512 5ef7889418e7e5acc40cd045772b08d178333dd7cb396b46bfcc117b8953c868cffff5ad41153f6cf2029f1d78d7213516cf1c2cfc88f028ffb883d0e83ea6a4 WHIRLPOOL 73f0953ba044323349a60393ca644031bac13ea48dab6ccbbf533ee5e52daa8411f6b7bdc4fc8928536c37c5edcaf3a6ef40c3c2ee335c0608b5c8d3a6d890d5
+DIST libobjc2-1.6.1.tar.bz2 116263 SHA256 941764684e764f25864d3f318d5cac80b5b899df40d485c521742431fc13e2f9 SHA512 e43bf867ca734e76274826a222a10e9b603e085a9dd245912ee16603bb61e276fcd9388918f61aba7d0bded0c045bc9799f7e24b309d670d144175707662f9c8 WHIRLPOOL e3c259ffdbc6978d531f0e91ccc522fcc9832f95f173dfe0be67650654b1e048ea14b49c2ac0b81df916aafd712b084a004fd13e970bbbc0c03e8a6d7a206d3e
+DIST libobjc2-1.7.tar.bz2 132662 SHA256 3a1b4af6ff6f3d8e57bfb27401d1b249670ac2e92ba54ad5683ff3d4439d3cc1 SHA512 d44631ec39533128d4d4a1138cfb3c00c9383cd1b722c3dcb8ed679832c00b559516072af6fdd5e464aa1de493358127a37c295994244a1573f4ff86056c24a9 WHIRLPOOL 1dabe89e48cc446c56a509b07c5b3fba84686116bf57d456ed29fd583b8ab6cd035712c24f9c584a8433b72347fa3f4e412bc22ea2ce6985793f7d93cf6758eb
+DIST libobjc2-1.8.tar.gz 173512 SHA256 b11957c58a08b97f314b410bcafaa4eacabdc417e8e865e5b802a621c3147bbe SHA512 1562e42dc43a24c1655d02db7aa101a48a7b026bec23252c8eec3893fbac0d67368685291df0954ee79f07b92ecc13c68ee7c7b0f351428a31e99ed05ed2230d WHIRLPOOL 7bbbfee09b1c4e24cc08a6d2b70449343d1245677e68023a374490e6bd2548fe39600a5c61c3e0534aacd338e775a200f37160f177f2fee197f5fd36ba0eaaa4
diff --git a/gnustep-base/libobjc2/files/libobjc2-1.7-fix_soname.patch b/gnustep-base/libobjc2/files/libobjc2-1.7-fix_soname.patch
new file mode 100644
index 000000000000..ba1aa8ecea91
--- /dev/null
+++ b/gnustep-base/libobjc2/files/libobjc2-1.7-fix_soname.patch
@@ -0,0 +1,58 @@
+diff -Naur libobjc2-1.7.orig/CMakeLists.txt libobjc2-1.7/CMakeLists.txt
+--- libobjc2-1.7.orig/CMakeLists.txt 2013-06-27 13:30:41.000000000 +0200
++++ libobjc2-1.7/CMakeLists.txt 2015-05-20 13:20:55.214244088 +0200
+@@ -8,7 +8,8 @@
+ set(CMAKE_C_FLAGS_RELEASE "-O3 ${CMAKE_C_FLAGS_RELEASE}")
+ set(CMAKE_C_FLAGS "-std=gnu99 ${CMAKE_C_FLAGS}")
+
+-set(libobjc_VERSION 4.6)
++set(libobjc_SOVERSION 4)
++set(libobjc_VERSION 4.6.0)
+
+ set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fexceptions")
+ # Build configuration
+@@ -204,7 +205,8 @@
+ add_library(objcxx SHARED ${libobjcxx_CXX_SRCS})
+ set_target_properties(objcxx PROPERTIES
+ LINKER_LANGUAGE C
+- SOVERSION ${libobjc_VERSION}
++ SOVERSION ${libobjc_SOVERSION}
++ VERSION ${libobjc_VERSION}
+ )
+ target_link_libraries(objcxx ${CXX_RUNTIME})
+ set(CXX_RUNTIME "")
+@@ -220,7 +222,8 @@
+ add_library(objcxx SHARED ${libobjcxx_CXX_SRCS})
+ set_target_properties(objcxx PROPERTIES
+ LINKER_LANGUAGE C
+- SOVERSION ${libobjc_VERSION}
++ SOVERSION ${libobjc_SOVERSION}
++ VERSION ${libobjc_VERSION}
+ )
+ set(CXX_RUNTIME "")
+ list(APPEND INSTALL_TARGETS objcxx)
+@@ -241,7 +244,8 @@
+
+ set_target_properties(objc PROPERTIES
+ LINKER_LANGUAGE C
+- SOVERSION ${libobjc_VERSION}
++ SOVERSION ${libobjc_SOVERSION}
++ VERSION ${libobjc_VERSION}
+ OUTPUT_NAME ${LIBOBJC_NAME}
+ LINK_FLAGS "${objc_LINK_FLAGS}"
+ )
+@@ -349,3 +353,14 @@
+ add_subdirectory(Test)
+ endif (TESTS)
+
++
++MESSAGE(STATUS "<<< Gentoo configuration >>>
++Build type ${CMAKE_BUILD_TYPE}
++Install path ${CMAKE_INSTALL_PREFIX}
++Compiler flags:
++C ${CMAKE_C_FLAGS}
++C++ ${CMAKE_CXX_FLAGS}
++Linker flags:
++Executable ${CMAKE_EXE_LINKER_FLAGS}
++Module ${CMAKE_MODULE_LINKER_FLAGS}
++Shared ${CMAKE_SHARED_LINKER_FLAGS}\n")
diff --git a/gnustep-base/libobjc2/libobjc2-1.6.1.ebuild b/gnustep-base/libobjc2/libobjc2-1.6.1.ebuild
new file mode 100644
index 000000000000..b090c2bac13c
--- /dev/null
+++ b/gnustep-base/libobjc2/libobjc2-1.6.1.ebuild
@@ -0,0 +1,57 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+inherit multilib
+
+# We need gnustep-make, but gnustep-make can depend on libobjc
+# Use a temporary setup to install in /usr/
+GSMAKE=gnustep-make-2.6.2
+DESCRIPTION="GNUstep Objective-C runtime"
+HOMEPAGE="http://www.gnustep.org"
+SRC_URI="http://download.gna.org/gnustep/${P}.tar.bz2
+ ftp://ftp.gnustep.org/pub/gnustep/core/${GSMAKE}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="+boehm-gc"
+
+RDEPEND="boehm-gc? ( dev-libs/boehm-gc )"
+DEPEND="${DEPEND}
+ >=sys-devel/clang-2.9"
+
+GSMAKE_S=${WORKDIR}/${GSMAKE}
+
+src_prepare() {
+ # Remove CFLAGS from assembly calls
+ sed -e "s/\$(ALL_CFLAGS)//" -i GNUmakefile || die "Assembly sed failed"
+ # Multilib-strict
+ cd "${GSMAKE_S}"
+ sed -e "s/lib/$(get_libdir)/g" \
+ -i FilesystemLayouts/fhs-system || die "multilib path sed failed"
+}
+
+src_configure() {
+ export CC=clang
+
+ cd "${GSMAKE_S}"
+ econf --with-layout=fhs-system
+}
+
+src_compile() {
+ local gb
+ use boehm-gc \
+ && gb="boehm_gc=yes" \
+ || gb="boehm_gc=no"
+ emake GNUSTEP_MAKEFILES="${GSMAKE_S}" messages=yes ${gb}
+}
+
+src_install() {
+ emake GNUSTEP_MAKEFILES="${GSMAKE_S}" \
+ GNUSTEP_CONFIG_FILE="${GSMAKE_S}"/GNUstep.conf \
+ GNUSTEP_INSTALLATION_DOMAIN=SYSTEM \
+ messages=yes \
+ DESTDIR="${D}" install
+}
diff --git a/gnustep-base/libobjc2/libobjc2-1.7-r1.ebuild b/gnustep-base/libobjc2/libobjc2-1.7-r1.ebuild
new file mode 100644
index 000000000000..258d25c01a1b
--- /dev/null
+++ b/gnustep-base/libobjc2/libobjc2-1.7-r1.ebuild
@@ -0,0 +1,44 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit cmake-utils eutils
+
+DESCRIPTION="GNUstep Objective-C runtime"
+HOMEPAGE="http://www.gnustep.org"
+SRC_URI="http://download.gna.org/gnustep/${P}.tar.bz2"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="boehm-gc cxx test"
+
+RDEPEND="boehm-gc? ( dev-libs/boehm-gc )
+ cxx? ( sys-libs/libcxx )"
+DEPEND="${DEPEND}
+ >=sys-devel/clang-2.9"
+
+src_prepare() {
+ epatch "${FILESDIR}"/${P}-fix_soname.patch
+
+ if ! use cxx;
+ then
+ sed -e 's/addtest_flags(CXXExceptions.*//' \
+ -i Test/CMakeLists.txt || die "test sed failed"
+ fi
+}
+
+src_configure() {
+ export CC=clang
+ export CXX=clang++
+
+ export PREFIX=/usr
+ local mycmakeargs=(
+ -DGNUSTEP_CONFIG=GNUSTEP_CONFIG-NOTFOUND
+ $(cmake-utils_use boehm-gc BOEHM_GC)
+ $(cmake-utils_use_enable cxx OBJCXX)
+ $(cmake-utils_use test TESTS)
+ )
+ cmake-utils_src_configure
+}
diff --git a/gnustep-base/libobjc2/libobjc2-1.7.ebuild b/gnustep-base/libobjc2/libobjc2-1.7.ebuild
new file mode 100644
index 000000000000..79c34fa2b438
--- /dev/null
+++ b/gnustep-base/libobjc2/libobjc2-1.7.ebuild
@@ -0,0 +1,42 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit cmake-utils
+
+DESCRIPTION="GNUstep Objective-C runtime"
+HOMEPAGE="http://www.gnustep.org"
+SRC_URI="http://download.gna.org/gnustep/${P}.tar.bz2"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="boehm-gc cxx test"
+
+RDEPEND="boehm-gc? ( dev-libs/boehm-gc )
+ cxx? ( sys-libs/libcxx )"
+DEPEND="${DEPEND}
+ >=sys-devel/clang-2.9"
+
+src_prepare() {
+ if ! use cxx;
+ then
+ sed -e 's/addtest_flags(CXXExceptions.*//' \
+ -i Test/CMakeLists.txt || die "test sed failed"
+ fi
+}
+
+src_configure() {
+ export CC=clang
+ export CXX=clang++
+
+ export PREFIX=/usr
+ local mycmakeargs=(
+ -DGNUSTEP_CONFIG=GNUSTEP_CONFIG-NOTFOUND
+ $(cmake-utils_use boehm-gc BOEHM_GC)
+ $(cmake-utils_use_enable cxx OBJCXX)
+ $(cmake-utils_use test TESTS)
+ )
+ cmake-utils_src_configure
+}
diff --git a/gnustep-base/libobjc2/libobjc2-1.8.ebuild b/gnustep-base/libobjc2/libobjc2-1.8.ebuild
new file mode 100644
index 000000000000..a04f02b04a8d
--- /dev/null
+++ b/gnustep-base/libobjc2/libobjc2-1.8.ebuild
@@ -0,0 +1,44 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit cmake-utils eutils
+
+DESCRIPTION="GNUstep Objective-C runtime"
+HOMEPAGE="http://www.gnustep.org"
+SRC_URI="https://github.com/gnustep/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="boehm-gc cxx test"
+
+RDEPEND="boehm-gc? ( dev-libs/boehm-gc )
+ cxx? ( sys-libs/libcxx )"
+DEPEND="${DEPEND}
+ >=sys-devel/clang-2.9"
+
+src_prepare() {
+ epatch "${FILESDIR}"/${PN}-1.7-fix_soname.patch
+
+ if ! use cxx;
+ then
+ sed -e 's/addtest_flags(CXXExceptions.*//' \
+ -i Test/CMakeLists.txt || die "test sed failed"
+ fi
+}
+
+src_configure() {
+ export CC=clang
+ export CXX=clang++
+
+ export PREFIX=/usr
+ local mycmakeargs=(
+ -DGNUSTEP_CONFIG=GNUSTEP_CONFIG-NOTFOUND
+ $(cmake-utils_use boehm-gc BOEHM_GC)
+ $(cmake-utils_use_enable cxx OBJCXX)
+ $(cmake-utils_use test TESTS)
+ )
+ cmake-utils_src_configure
+}
diff --git a/gnustep-base/libobjc2/metadata.xml b/gnustep-base/libobjc2/metadata.xml
new file mode 100644
index 000000000000..d04df648ed16
--- /dev/null
+++ b/gnustep-base/libobjc2/metadata.xml
@@ -0,0 +1,35 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>gnustep</herd>
+ <herd>proxy-maintainers</herd>
+ <longdescription>
+The GNUstep Objective-C runtime is designed as a drop-in replacement for the
+GCC runtime. It supports both a legacy and a modern ABI, allowing code
+compiled with old versions of GCC to be supported without requiring
+recompilation. The modern ABI adds the following features:
+
+- Non-fragile instance variables.
+- Protocol uniquing.
+- Object planes support.
+- Declared property introspection.
+
+Both ABIs support the following feature above and beyond the GCC runtime:
+
+- The modern Objective-C runtime APIs, introduced with OS X 10.5.
+- Blocks (closures).
+- Low memory profile for platforms where memory usage is more important than
+ speed.
+- Synthesised property accessors.
+- Efficient support for @synchronized()
+- Type-dependent dispatch, eliminating stack corruption from mismatched
+ selectors.
+</longdescription>
+ <use>
+ <flag name="boehm-gc">Enable Hans Boehm's garbage collector
+ (<pkg>dev-libs/boehm-gc</pkg>). Not recommended by upstream</flag>
+ </use>
+ <upstream>
+ <remote-id type="github">gnustep/libobjc2</remote-id>
+ </upstream>
+</pkgmetadata>