summaryrefslogtreecommitdiff
path: root/gnustep-base/libobjc2
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2017-10-09 18:53:29 +0100
committerV3n3RiX <venerix@redcorelinux.org>2017-10-09 18:53:29 +0100
commit4f2d7949f03e1c198bc888f2d05f421d35c57e21 (patch)
treeba5f07bf3f9d22d82e54a462313f5d244036c768 /gnustep-base/libobjc2
reinit the tree, so we can have metadata
Diffstat (limited to 'gnustep-base/libobjc2')
-rw-r--r--gnustep-base/libobjc2/Manifest8
-rw-r--r--gnustep-base/libobjc2/files/libobjc2-1.7-fix_soname.patch58
-rw-r--r--gnustep-base/libobjc2/libobjc2-1.8.1.ebuild42
-rw-r--r--gnustep-base/libobjc2/libobjc2-1.8.ebuild42
-rw-r--r--gnustep-base/libobjc2/metadata.xml41
5 files changed, 191 insertions, 0 deletions
diff --git a/gnustep-base/libobjc2/Manifest b/gnustep-base/libobjc2/Manifest
new file mode 100644
index 000000000000..9d1ee06da27b
--- /dev/null
+++ b/gnustep-base/libobjc2/Manifest
@@ -0,0 +1,8 @@
+AUX libobjc2-1.7-fix_soname.patch 1827 SHA256 57d4a0c848925b65c111384b2b5278e91411e7f8bc22f6936e424eaf5d785c27 SHA512 d6ce4a6840e7f3ea22db3f63574a08fe9fad2fd3ebeaac764097935b322f038baa4ec9d0f19124dd84cb6ffe010e267bdb60f76f5d24dd508f520bdb38124ead WHIRLPOOL 1b2e99f245b9c31909b30d71c7208da2b1b525b3423482d45df5c625165e2117c0079f3fb6d42cc0f402fd889009173c0d2e5abe893b568d3265c0c24798a022
+DIST libobjc2-1.8.1.tar.gz 173635 SHA256 472bd684070c4dc6e78293836f426c1c6981c3818b546f74ec400bb8f13df925 SHA512 518f36e96a82a076fc67fe384226bd97310cd10a53c7b0951db9f3658aa534582b245d5cb97956fe91c38338c3fc8f1e569dd8af36f6d12e32bf1460251d02eb WHIRLPOOL 88ec154f12ae95dcd1e570d5b6b0f23608153c558090654798abf60d0f78a911ed4583e67c0df2de5c872222ee43d68f2ec47f558002d91f9589989a1093c3c3
+DIST libobjc2-1.8.tar.gz 173512 SHA256 b11957c58a08b97f314b410bcafaa4eacabdc417e8e865e5b802a621c3147bbe SHA512 1562e42dc43a24c1655d02db7aa101a48a7b026bec23252c8eec3893fbac0d67368685291df0954ee79f07b92ecc13c68ee7c7b0f351428a31e99ed05ed2230d WHIRLPOOL 7bbbfee09b1c4e24cc08a6d2b70449343d1245677e68023a374490e6bd2548fe39600a5c61c3e0534aacd338e775a200f37160f177f2fee197f5fd36ba0eaaa4
+EBUILD libobjc2-1.8.1.ebuild 937 SHA256 19ae4b7bc9baec724269871da8497a0b052f3590618e80ee65cc3d391d757d57 SHA512 ceaac4784f1343f32064195b3eb804db8cde57c6cd7c2df64d790f63a0d5c3782c581c1573a964dce878ad0c195a56ea237f1d78a48ab0bf3ec638dd25c2ab8b WHIRLPOOL 7f84d6b8728c640d541dce95b64a76442dd0b8f806efa5f1e94b62180f5677b48657fd8a892d8eb44a349717a6afd3496f10c2a5e9e9dd5681a1f34ccfb91673
+EBUILD libobjc2-1.8.ebuild 937 SHA256 19ae4b7bc9baec724269871da8497a0b052f3590618e80ee65cc3d391d757d57 SHA512 ceaac4784f1343f32064195b3eb804db8cde57c6cd7c2df64d790f63a0d5c3782c581c1573a964dce878ad0c195a56ea237f1d78a48ab0bf3ec638dd25c2ab8b WHIRLPOOL 7f84d6b8728c640d541dce95b64a76442dd0b8f806efa5f1e94b62180f5677b48657fd8a892d8eb44a349717a6afd3496f10c2a5e9e9dd5681a1f34ccfb91673
+MISC ChangeLog 2982 SHA256 7079c14213a28ab0a1dcb873137441429904e32710c8822661987c3906b95dd9 SHA512 5ef77a8de19d39f671a1806f7f32e5d7a2e09ceca96039eccd2dddb1276edca983ab7ba5ab3a5cb8d7d74241cfedb48243fdc96b34d2c9c1ab699c3de4e9647f WHIRLPOOL 7368bf0a6cc0d8af8ccfd6152e86d2ce1084b4cf8e4199e221970f3a8238d169bf1147eb1f2c29d73322b11ba15034fd416c96a0d9e65726b235ce78d48ede0a
+MISC ChangeLog-2015 2768 SHA256 5383e79ff2504ee924c7f4692ef685c766883a05a89d904736f03da903e57aae SHA512 665901ee5ea6c018c6c618c14fd4969e35dc6ba2ec69425148e694453f2d6b9be46000f21fe10700f67eb5fd548dc621d99deefa688565b03c69709a4754ab77 WHIRLPOOL 0b0bfe1aef92182bca78dee1b3f9d9e38a130ba2cbbdf0645e3f9b14320c28f068053b8a7835985ddfd22fee6991a75c35129945e8c44b8e08cb639de0365e69
+MISC metadata.xml 1440 SHA256 4f8bb1e6897010fdbe2301c700bc1f27fd469fac4ddc6e7d233ba013fb52ed7c SHA512 4bb1a5b4f33aacd4afa41fa88b5a8760d0136bf7ee5968d1437d4f7bf07e7007e96acade2afd45a283a3ae80f60a900f00058cbbe115a9ac1d3b233e76633545 WHIRLPOOL 1827b3cf0d88923b84234ff6d25878f01d18e81ca192d73bd5c8eef3a483ccaf7e2fdbdd8ba20d4e53a40203987436f135537bee7bf7b04efed171e8748dde4b
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.8.1.ebuild b/gnustep-base/libobjc2/libobjc2-1.8.1.ebuild
new file mode 100644
index 000000000000..a82b0cf0f772
--- /dev/null
+++ b/gnustep-base/libobjc2/libobjc2-1.8.1.ebuild
@@ -0,0 +1,42 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+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++
+
+ 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..a82b0cf0f772
--- /dev/null
+++ b/gnustep-base/libobjc2/libobjc2-1.8.ebuild
@@ -0,0 +1,42 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+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++
+
+ 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..60bb055a4c41
--- /dev/null
+++ b/gnustep-base/libobjc2/metadata.xml
@@ -0,0 +1,41 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>gnustep@gentoo.org</email>
+ <name>Gentoo GNUstep Project</name>
+ </maintainer>
+ <maintainer type="project">
+ <email>proxy-maint@gentoo.org</email>
+ <name>Proxy Maintainers</name>
+ </maintainer>
+ <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>