summaryrefslogtreecommitdiff
path: root/sys-libs/libcxx
diff options
context:
space:
mode:
Diffstat (limited to 'sys-libs/libcxx')
-rw-r--r--sys-libs/libcxx/Manifest24
-rw-r--r--sys-libs/libcxx/files/libcxx-3.9-cmake-link-flags.patch23
-rw-r--r--sys-libs/libcxx/libcxx-10.0.1.ebuild9
-rw-r--r--sys-libs/libcxx/libcxx-11.0.0.ebuild9
-rw-r--r--sys-libs/libcxx/libcxx-11.0.1.ebuild9
-rw-r--r--sys-libs/libcxx/libcxx-11.1.0.ebuild11
-rw-r--r--sys-libs/libcxx/libcxx-12.0.0.9999.ebuild9
-rw-r--r--sys-libs/libcxx/libcxx-12.0.0.ebuild (renamed from sys-libs/libcxx/libcxx-12.0.0_rc3.ebuild)7
-rw-r--r--sys-libs/libcxx/libcxx-12.0.0_rc2.ebuild218
-rw-r--r--sys-libs/libcxx/libcxx-13.0.0.9999.ebuild9
10 files changed, 22 insertions, 306 deletions
diff --git a/sys-libs/libcxx/Manifest b/sys-libs/libcxx/Manifest
index 3214d734ed8a..f5c095fdabb2 100644
--- a/sys-libs/libcxx/Manifest
+++ b/sys-libs/libcxx/Manifest
@@ -1,16 +1,18 @@
-AUX libcxx-3.9-cmake-link-flags.patch 1014 BLAKE2B 8e86059e00a5ebcd7a1528882876607c80ab14bcd0ebf2c8dbec87f71a48761e6433ff94db92b41192edb6e3cc74972cd9fb518f18a657229bd30afa3a65bdf8 SHA512 5df85c66bf865900197effe3905976bf165b4c4d79b8d14352753f6baca93ab5dc26bf735fd9478a0c13df489b860d8b629240134b7e26be6233138ea95dbab3
+DIST llvm-gentoo-patchset-10.0.1-1.tar.xz 8320 BLAKE2B 1b7ea7669586e08fece0efcf02b392feed4b7f3e6e9cdd10ab7dcc30082cae5bb1daa6d3314a7b0329c4d70f3c736d0c57ed408c838601dc737d558d2a0a0f26 SHA512 75898a8d719657177bbf587d848be8e53135c09e50603660c19edab00f80b6c2f29e7b6fda2bef381b38df6e24a690d694029a38c525763408322573275fc9f0
+DIST llvm-gentoo-patchset-11.0.0-1.tar.xz 6100 BLAKE2B 6f8fc9b7daa703f04b1283caaeb3665d4bec56ff80b1c5db35917c578fdd92617222bd2d2b83020144b8abdeaa261142b68aa3dee24350133f6721e41a167b78 SHA512 debdd92e6aa3133f474dfbd79f267e76d9d979e4e5d464c8d4343c6e6816b46376ca8080a9ee916152861907af9d0645ce71cf3582ef3dc31ec4ca3410fde9f6
+DIST llvm-gentoo-patchset-11.1.0-1.tar.xz 4032 BLAKE2B e69138a422e315b31a3d9c11faa4ae1ddf1bf9092cee2db0de4d2adef81fd802973488293aab48b764402b51996893b17ca03249ef4620848a576d1f6cdb9698 SHA512 e1c5504dab6c5db9fdf4addfeb12316f22d0258717ba551a9b7b3ba37919491fb6011ac5cca1e793b7509d5c1c186bc6bc4213f7d6155d190612492b216f979b
+DIST llvm-gentoo-patchset-12.0.0-1.tar.xz 6364 BLAKE2B bcf96dad8300cdc3e1f416cb90935ae3b1359efc5687118b5a9bbee25de7087a266250f50c6f2abd18f4efeeec19354f59513c8fdd1d61c2cfc8cc2f0115e514 SHA512 76201e169f71a8d568365ffeafcfd37138e74b0536826f47eb6ce89c2280586f10426917e851f99bfb20477cd828cc40daa8cb7a62959981620fbd81e1b22ee1
+DIST llvm-gentoo-patchset-9999-1.tar.xz 4032 BLAKE2B b9413484dafed8ae0c68c2c164b45fd07bb8d5d0898f03abe118fd2120ffcb1fb6c949de9649a97c2e8105f24b9d131a725c67c0a502ca4d4d192c1a0d65f49d SHA512 e64449eeaf756c5bd945109937b84ba4bd8a015222bd792d39cf3947871e87571a4ca57814790e51544cb05ad4c2d1f044e818e4caaac7c2e2a02cb1aa290fcc
DIST llvmorg-10.0.1.tar.gz 120880730 BLAKE2B 30f19f56c4d1f6abcda5fec76256219d1e3c8a6ff1a1f152f94bfe362c07884339fe571ff7fe903ed3b3deb150b2fa868c387887a0dea2930dc08b81db71a5b1 SHA512 48078fff9293a87f1a973f3348f79506f04c3da774295f5eb67d74dd2d1aa94f0973f8ced3f4ab9e8339902071f82c603b43d5608ad7227046c4da769c5d2151
DIST llvmorg-11.0.0.tar.gz 122743665 BLAKE2B 3f95570240789fd68ddb747df817f5c6cdc9da40911bbe9ee3531c15ada9165e5002b1c2f778cf8735858485ea05a8754e3d3a5f4b15bdd6cb33d64a14692984 SHA512 b6d38871ccce0e086e27d35e42887618d68e57d8274735c59e3eabc42dee352412489296293f8d5169fe0044936345915ee7da61ebdc64ec10f7737f6ecd90f2
DIST llvmorg-11.0.1.tar.gz 122790338 BLAKE2B 0130996b4a8c4d9f757136fd7fb318068c9bfdc565060dec0d4336480c4ab66c4ae3185a7fdb05f13cf9ee8fd4123b09df938881b75d6e5d3689595114b7e32a SHA512 f5e6ef0b3111aae08a89cd01adb2ff4abfa9ef779c68b9190421d0447efd25c2cc00e5aae9f4764805f5fa31434866043d1510ae7389817e28ae53a5442e2fdf
DIST llvmorg-11.1.0.tar.gz 122776532 BLAKE2B ca842ff4afff8f44c82b5e7383962a9c45ca1c93b64fa4c6ebcd70a1d3849dbad2b8e4e24fba02d144c6266d7fab3607ebc6999b28c229cb35256cf40f26a985 SHA512 9a8ce022a935eed42fa71a224f2a207122aadcbef58ee855fdb4825f879e7d028e4dcff22c19b9d336db1c8bf63fb84372d44981acf84615f757e54306c92b81
-DIST llvmorg-12.0.0-rc2.tar.gz 134242619 BLAKE2B bb741a311db608fc2ba7eeaab71c5c9f2a430f7fee3f0c5c4334e5c14caa19738d18c87b568de963d57d9b53e808ac412cf8554eca7fcae9ecca65aa4442e197 SHA512 d8f9b3dfeb0fe9b91eb7f49da393784333044db2653373fbb168afd3c8d50f3e3ec7a7b8f44df522d0facafbfe4cfc4d9e2906d19f1e6feb0bdc569b6c10a17d
-DIST llvmorg-12.0.0-rc3.tar.gz 134244008 BLAKE2B ed09aa361b264387711ba1ee2e4b01c0c78ad97391df95e2542d4edc31f657cc33c8a2a45de63eb421908d5dadd9392a736610fbb04b3ecbd336d6514a649da8 SHA512 1fae53c6f255160cf4be53848b8b92c8b162ddcfbddf1bf0017faf249859040c15c862c4b52bc3ba894149139afb814e0674da88793ddebfc0756ba3aa7626ce
-EBUILD libcxx-10.0.1.ebuild 5966 BLAKE2B 230f37223e113c8f17020986b4fe65478d2bc65c5b4236f9709e556159e9118d0659172a59544b1767d9d55884549b51592d45fded05a91bf0e8762388c1baaf SHA512 4cf81cf1a0922d50c4357811169d4c2eda890ed6636fd2a0cee47c7181434bee76b36411ab487ef42d8179650d3c379336ad6c2ec1d18f109338e76d38e82f9d
-EBUILD libcxx-11.0.0.ebuild 6830 BLAKE2B a57ee66a8096c4456483bbb2a1d67a7e153dce97bdb7eb6a2d8e5ec5ac839d28c7c43f315f8399a5dc5bc157bd8b08cde156e1b3e962cfd05fe95dc6ca811929 SHA512 abaa0922a39380b3dffb65ea8a2c4774ae8c2fa561e9ceec30e70851779a13aedb2853bdf34c7586656dd389fb7b1e0c7dda9ac9de23ae52986b5392dd8ff12a
-EBUILD libcxx-11.0.1.ebuild 6831 BLAKE2B e1b3768dce61c69f4a4f4e7be022966b229e7cea11b1c24351a0c25a1ffe57ed8d4d04c20ce8811f39694849a52c20b980f664070482ffcbaa4e6b431fc8b414 SHA512 afb1ac8b1e5206c0b7988f9fc2644531b486840791beb8e997dfbd5c82a95cc3effab27fc28269d362d8c40873c1d0caf560c1e6a36880f6da72c28909f66802
-EBUILD libcxx-11.1.0.ebuild 6834 BLAKE2B 159ae462f29a3a5c9776d9176de1bbba916171e47875053b3f472407ec20b6176bca9dcee6fbcbba493b91b78b5cb415f2805c79b3513c70885bdb75854fed81 SHA512 a051209facb4b7aad7ff115704bd7216d0d500c00d4072ddd598f91fc6eab5a85e28cfa3517628c48f4c58a409a4cb5a3db723997b7b6cdf7bf6116bfa80ac87
-EBUILD libcxx-12.0.0.9999.ebuild 6794 BLAKE2B cdde8697e6c974e68fc5ef47027ae108386b72c1e4506550f94984cd8dcc836dee6823c9660d252a73c8acfff5c1084f32bfe44247bfc2c3f6998f3d6dbb5f0b SHA512 cbc5f18d8be0ab2ab0294e33dc528e6a306b5abcf5411015cfa48427e4dbe10b614ebd38da03dc1b3127ca892de5ab9484493e3cd10d1a52f6d8abaa74ab2ab4
-EBUILD libcxx-12.0.0_rc2.ebuild 6794 BLAKE2B cdde8697e6c974e68fc5ef47027ae108386b72c1e4506550f94984cd8dcc836dee6823c9660d252a73c8acfff5c1084f32bfe44247bfc2c3f6998f3d6dbb5f0b SHA512 cbc5f18d8be0ab2ab0294e33dc528e6a306b5abcf5411015cfa48427e4dbe10b614ebd38da03dc1b3127ca892de5ab9484493e3cd10d1a52f6d8abaa74ab2ab4
-EBUILD libcxx-12.0.0_rc3.ebuild 7002 BLAKE2B c3277780ae78ff0e1ed5affae0b76b89b6bb5d9782edc535a2092541b9ab2a745b33c2535a8c75317320c61cf6ee57216f575195cbd21bba2c3c5967f541bc30 SHA512 169a0c2ccc298989f0b2495675c93a4d908de03c94c10b1bcc0a825a032c98f8d3ed5b4e854ad4c9d70d6c4384ba084134ba0dbb76a09e5a51dcc4b795501d70
-EBUILD libcxx-13.0.0.9999.ebuild 6794 BLAKE2B cdde8697e6c974e68fc5ef47027ae108386b72c1e4506550f94984cd8dcc836dee6823c9660d252a73c8acfff5c1084f32bfe44247bfc2c3f6998f3d6dbb5f0b SHA512 cbc5f18d8be0ab2ab0294e33dc528e6a306b5abcf5411015cfa48427e4dbe10b614ebd38da03dc1b3127ca892de5ab9484493e3cd10d1a52f6d8abaa74ab2ab4
+DIST llvmorg-12.0.0.tar.gz 134226215 BLAKE2B f9c3ba8c58571855caa4f206fd285c9b5be66672fb0814cb8bc0964a051f57f5d35013aa1e27cbda502652b37df1ec23474129109e76a42066847860db441dbe SHA512 0cff02155c5ac0d6db2b72d60d9819d5b5dd859663b45f721b1c7540239c2fceb1f57d9173f6870c49de851c242ed8e85c5c6d6577a1f8092a7c5dcd12513b26
+EBUILD libcxx-10.0.1.ebuild 5796 BLAKE2B c3c1e4d49ad96de1338998d35b0495ba2aa448db3558988bbbc9e5d4603d3d2ded354b1c04b186b0134be930edd72c931240ac3a068744e72e18087fc1550160 SHA512 7fbae29d2658305ddac7854a96e353ccf1901fcc6b1c15370d7a69a602f41b7d9f1afdd91018ea5be949955b3f8f1424903b5bac13d840e8f8c72ffcf7d7d34d
+EBUILD libcxx-11.0.0.ebuild 6660 BLAKE2B c6ddfeb1a40f994beb13635ea5044dd22dfdcb3947b9436b4fcb6241063835203adc8550006b4e20e415d5ba8b11c98c482f640f18a49e9426ddbc7dbd9026d9 SHA512 40961350fce1664140e1ca1df071fc4f1334dcdf0f3bcfd1074de3ee6ca9ea7f154e83e23b52c4b6da6d8e76a78c73f454cc17121e1edb0be96181c350f40172
+EBUILD libcxx-11.0.1.ebuild 6661 BLAKE2B 93445de819484ea32a708d2ff616501d715e7fd3a3f4204f143e64c40bc89ebceb8e50c80215c6b54d7c8a3cce00fcecaac099298b41e010bf77655563d30a20 SHA512 ce56f24e7b4aed1405e682af6b3cb48bad6617d5b7e2ecf5b990fae4f7d6badc479a583ef24801e34b0155c12354a7b76a414402f89c31f228315eb92f279a62
+EBUILD libcxx-11.1.0.ebuild 6661 BLAKE2B 93445de819484ea32a708d2ff616501d715e7fd3a3f4204f143e64c40bc89ebceb8e50c80215c6b54d7c8a3cce00fcecaac099298b41e010bf77655563d30a20 SHA512 ce56f24e7b4aed1405e682af6b3cb48bad6617d5b7e2ecf5b990fae4f7d6badc479a583ef24801e34b0155c12354a7b76a414402f89c31f228315eb92f279a62
+EBUILD libcxx-12.0.0.9999.ebuild 6622 BLAKE2B b525c9be28a7ac16ec07275c59e68fb003a7423512c94c297014f884d40323b6776313ced81e09f5e15cc1489e95e42b561f8e3e961bc461b37e58ab928edf62 SHA512 335d114c131ed3a6653f59f3a66bdb4115f277b2d8aacd3c2fbc78519b9fdaedaade3a2f53a66f36c18feb3cde8a6fb95fe8e34889626c17dd896bd6a8f8cfad
+EBUILD libcxx-12.0.0.ebuild 6914 BLAKE2B e06a7f82b838785de55c9c936cedd9d4bd3ca819812cf43a98ce533c5f7551d60dec4040f11820068850a23af1111d0a156d398ad8dafefbcc301ed41254855f SHA512 76afcac7759e44a70bc10adc1217446c7c1665f9f1264c2c49363732023e684683df2490d0bc4abd565a04ca1dbf355c8e1bc4d7b88bb2932e0fe35527e0e746
+EBUILD libcxx-13.0.0.9999.ebuild 6622 BLAKE2B b525c9be28a7ac16ec07275c59e68fb003a7423512c94c297014f884d40323b6776313ced81e09f5e15cc1489e95e42b561f8e3e961bc461b37e58ab928edf62 SHA512 335d114c131ed3a6653f59f3a66bdb4115f277b2d8aacd3c2fbc78519b9fdaedaade3a2f53a66f36c18feb3cde8a6fb95fe8e34889626c17dd896bd6a8f8cfad
MISC metadata.xml 621 BLAKE2B d8b68920ece0e3a700f1e425cf72a4ca7e75cf4b0b35e1ac6db9374d32020fc9f62b434da2108ad5b3538a46a2a7f4f5de7aa1640cd4b10046f2480ebb89450d SHA512 e1b0c874a6d229e098ffe7c0c2827502f2cdbf74fb7a0254687a0ca75dde74db06ef2bc79bfe8b526c413b13beac27b8261eab8d0b8df36011790dada3eae421
diff --git a/sys-libs/libcxx/files/libcxx-3.9-cmake-link-flags.patch b/sys-libs/libcxx/files/libcxx-3.9-cmake-link-flags.patch
deleted file mode 100644
index bef5bc187547..000000000000
--- a/sys-libs/libcxx/files/libcxx-3.9-cmake-link-flags.patch
+++ /dev/null
@@ -1,23 +0,0 @@
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index d618e83..0e76525 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -293,6 +293,18 @@ remove_flags(-DNDEBUG -UNDEBUG -D_DEBUG
- # so they don't get transformed into -Wno and -errors respectivly.
- remove_flags(-Wno-pedantic -pedantic-errors -pedantic)
-
-+# FIXME: this is cribbed from HandleLLVMOptions.cmake.
-+if(LIBCXX_STANDALONE_BUILD)
-+ # Pass -Wl,-z,defs. This makes sure all symbols are defined. Otherwise a DSO
-+ # build might work on ELF but fail on MachO/COFF.
-+ if(NOT (${CMAKE_SYSTEM_NAME} MATCHES "Darwin" OR WIN32 OR CYGWIN OR
-+ ${CMAKE_SYSTEM_NAME} MATCHES "FreeBSD" OR
-+ ${CMAKE_SYSTEM_NAME} MATCHES "OpenBSD") AND
-+ NOT LLVM_USE_SANITIZER)
-+ set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -Wl,-z,defs")
-+ endif()
-+endif()
-+
- # Required flags ==============================================================
- add_compile_flags_if_supported(-std=c++11)
- if (NOT MSVC AND NOT LIBCXX_SUPPORTS_STD_EQ_CXX11_FLAG)
diff --git a/sys-libs/libcxx/libcxx-10.0.1.ebuild b/sys-libs/libcxx/libcxx-10.0.1.ebuild
index 4f386c128379..5c7c50377c3b 100644
--- a/sys-libs/libcxx/libcxx-10.0.1.ebuild
+++ b/sys-libs/libcxx/libcxx-10.0.1.ebuild
@@ -10,6 +10,7 @@ inherit cmake-multilib llvm llvm.org python-any-r1 toolchain-funcs
DESCRIPTION="New implementation of the C++ standard library, targeting C++11"
HOMEPAGE="https://libcxx.llvm.org/"
LLVM_COMPONENTS=( libcxx )
+LLVM_PATCHSET=10.0.1-1
llvm.org_set_globals
LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )"
@@ -49,14 +50,6 @@ pkg_setup() {
fi
}
-src_prepare() {
- # Add link flag "-Wl,-z,defs" to avoid underlinking; this is needed in a
- # out-of-tree build.
- eapply "${FILESDIR}/${PN}-3.9-cmake-link-flags.patch"
-
- llvm.org_src_prepare
-}
-
test_compiler() {
$(tc-getCXX) ${CXXFLAGS} ${LDFLAGS} "${@}" -o /dev/null -x c++ - \
<<<'int main() { return 0; }' &>/dev/null
diff --git a/sys-libs/libcxx/libcxx-11.0.0.ebuild b/sys-libs/libcxx/libcxx-11.0.0.ebuild
index f63adc4cf51c..8f948316ac8d 100644
--- a/sys-libs/libcxx/libcxx-11.0.0.ebuild
+++ b/sys-libs/libcxx/libcxx-11.0.0.ebuild
@@ -10,6 +10,7 @@ inherit cmake-multilib llvm llvm.org python-any-r1 toolchain-funcs
DESCRIPTION="New implementation of the C++ standard library, targeting C++11"
HOMEPAGE="https://libcxx.llvm.org/"
LLVM_COMPONENTS=( libcxx{,abi} llvm/{cmake/modules,utils/llvm-lit} )
+LLVM_PATCHSET=11.0.0-1
llvm.org_set_globals
LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )"
@@ -57,14 +58,6 @@ pkg_setup() {
fi
}
-src_prepare() {
- # Add link flag "-Wl,-z,defs" to avoid underlinking; this is needed in a
- # out-of-tree build.
- eapply "${FILESDIR}/${PN}-3.9-cmake-link-flags.patch"
-
- llvm.org_src_prepare
-}
-
test_compiler() {
$(tc-getCXX) ${CXXFLAGS} ${LDFLAGS} "${@}" -o /dev/null -x c++ - \
<<<'int main() { return 0; }' &>/dev/null
diff --git a/sys-libs/libcxx/libcxx-11.0.1.ebuild b/sys-libs/libcxx/libcxx-11.0.1.ebuild
index 58ec9289d186..16172647c295 100644
--- a/sys-libs/libcxx/libcxx-11.0.1.ebuild
+++ b/sys-libs/libcxx/libcxx-11.0.1.ebuild
@@ -35,6 +35,7 @@ BDEPEND="
DOCS=( CREDITS.TXT )
LLVM_COMPONENTS=( libcxx{,abi} llvm/{cmake/modules,utils/llvm-lit} )
+LLVM_PATCHSET=11.1.0-1
llvm.org_set_globals
python_check_deps() {
@@ -58,14 +59,6 @@ pkg_setup() {
fi
}
-src_prepare() {
- # Add link flag "-Wl,-z,defs" to avoid underlinking; this is needed in a
- # out-of-tree build.
- eapply "${FILESDIR}/${PN}-3.9-cmake-link-flags.patch"
-
- llvm.org_src_prepare
-}
-
test_compiler() {
$(tc-getCXX) ${CXXFLAGS} ${LDFLAGS} "${@}" -o /dev/null -x c++ - \
<<<'int main() { return 0; }' &>/dev/null
diff --git a/sys-libs/libcxx/libcxx-11.1.0.ebuild b/sys-libs/libcxx/libcxx-11.1.0.ebuild
index 26e9ff250d52..16172647c295 100644
--- a/sys-libs/libcxx/libcxx-11.1.0.ebuild
+++ b/sys-libs/libcxx/libcxx-11.1.0.ebuild
@@ -12,7 +12,7 @@ HOMEPAGE="https://libcxx.llvm.org/"
LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )"
SLOT="0"
-KEYWORDS="amd64 ~arm ~arm64 ~riscv ~x86 ~x64-macos"
+KEYWORDS="amd64 arm arm64 ~riscv x86 ~x64-macos"
IUSE="elibc_glibc elibc_musl +libcxxabi +libunwind static-libs test"
REQUIRED_USE="libunwind? ( libcxxabi )"
RESTRICT="!test? ( test )"
@@ -35,6 +35,7 @@ BDEPEND="
DOCS=( CREDITS.TXT )
LLVM_COMPONENTS=( libcxx{,abi} llvm/{cmake/modules,utils/llvm-lit} )
+LLVM_PATCHSET=11.1.0-1
llvm.org_set_globals
python_check_deps() {
@@ -58,14 +59,6 @@ pkg_setup() {
fi
}
-src_prepare() {
- # Add link flag "-Wl,-z,defs" to avoid underlinking; this is needed in a
- # out-of-tree build.
- eapply "${FILESDIR}/${PN}-3.9-cmake-link-flags.patch"
-
- llvm.org_src_prepare
-}
-
test_compiler() {
$(tc-getCXX) ${CXXFLAGS} ${LDFLAGS} "${@}" -o /dev/null -x c++ - \
<<<'int main() { return 0; }' &>/dev/null
diff --git a/sys-libs/libcxx/libcxx-12.0.0.9999.ebuild b/sys-libs/libcxx/libcxx-12.0.0.9999.ebuild
index 8ed99383fe0b..1f529867fb7b 100644
--- a/sys-libs/libcxx/libcxx-12.0.0.9999.ebuild
+++ b/sys-libs/libcxx/libcxx-12.0.0.9999.ebuild
@@ -35,6 +35,7 @@ BDEPEND="
DOCS=( CREDITS.TXT )
LLVM_COMPONENTS=( libcxx{,abi} llvm/{cmake/modules,utils/llvm-lit} )
+LLVM_PATCHSET=9999-1
llvm.org_set_globals
python_check_deps() {
@@ -58,14 +59,6 @@ pkg_setup() {
fi
}
-src_prepare() {
- # Add link flag "-Wl,-z,defs" to avoid underlinking; this is needed in a
- # out-of-tree build.
- eapply "${FILESDIR}/${PN}-3.9-cmake-link-flags.patch"
-
- llvm.org_src_prepare
-}
-
test_compiler() {
$(tc-getCXX) ${CXXFLAGS} ${LDFLAGS} "${@}" -o /dev/null -x c++ - \
<<<'int main() { return 0; }' &>/dev/null
diff --git a/sys-libs/libcxx/libcxx-12.0.0_rc3.ebuild b/sys-libs/libcxx/libcxx-12.0.0.ebuild
index 9887227800de..21363361ae29 100644
--- a/sys-libs/libcxx/libcxx-12.0.0_rc3.ebuild
+++ b/sys-libs/libcxx/libcxx-12.0.0.ebuild
@@ -12,7 +12,7 @@ HOMEPAGE="https://libcxx.llvm.org/"
LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )"
SLOT="0"
-KEYWORDS=""
+KEYWORDS="~amd64 ~arm ~arm64 ~riscv ~x86 ~x64-macos"
IUSE="elibc_glibc elibc_musl +libcxxabi +libunwind static-libs test"
REQUIRED_USE="libunwind? ( libcxxabi )"
RESTRICT="!test? ( test )"
@@ -35,6 +35,7 @@ BDEPEND="
DOCS=( CREDITS.TXT )
LLVM_COMPONENTS=( libcxx{,abi} llvm/{cmake/modules,utils/llvm-lit} )
+LLVM_PATCHSET=12.0.0-1
llvm.org_set_globals
python_check_deps() {
@@ -59,10 +60,6 @@ pkg_setup() {
}
src_prepare() {
- # Add link flag "-Wl,-z,defs" to avoid underlinking; this is needed in a
- # out-of-tree build.
- eapply "${FILESDIR}/${PN}-3.9-cmake-link-flags.patch"
-
# Known failures.
rm test/libcxx/gdb/gdb_pretty_printer_test.sh.cpp || die
rm test/libcxx/memory/trivial_abi/unique_ptr_ret.pass.cpp || die
diff --git a/sys-libs/libcxx/libcxx-12.0.0_rc2.ebuild b/sys-libs/libcxx/libcxx-12.0.0_rc2.ebuild
deleted file mode 100644
index 8ed99383fe0b..000000000000
--- a/sys-libs/libcxx/libcxx-12.0.0_rc2.ebuild
+++ /dev/null
@@ -1,218 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-CMAKE_ECLASS=cmake
-PYTHON_COMPAT=( python3_{7..9} )
-inherit cmake-multilib llvm llvm.org python-any-r1 toolchain-funcs
-
-DESCRIPTION="New implementation of the C++ standard library, targeting C++11"
-HOMEPAGE="https://libcxx.llvm.org/"
-
-LICENSE="Apache-2.0-with-LLVM-exceptions || ( UoI-NCSA MIT )"
-SLOT="0"
-KEYWORDS=""
-IUSE="elibc_glibc elibc_musl +libcxxabi +libunwind static-libs test"
-REQUIRED_USE="libunwind? ( libcxxabi )"
-RESTRICT="!test? ( test )"
-
-RDEPEND="
- libcxxabi? ( ~sys-libs/libcxxabi-${PV}[libunwind=,static-libs?,${MULTILIB_USEDEP}] )
- !libcxxabi? ( >=sys-devel/gcc-4.7:=[cxx] )"
-# llvm-6 for new lit options
-# clang-3.9.0 installs necessary target symlinks unconditionally
-# which removes the need for MULTILIB_USEDEP
-DEPEND="${RDEPEND}
- >=sys-devel/llvm-6"
-BDEPEND="
- test? (
- >=dev-util/cmake-3.16
- >=sys-devel/clang-3.9.0
- $(python_gen_any_dep 'dev-python/lit[${PYTHON_USEDEP}]')
- )"
-
-DOCS=( CREDITS.TXT )
-
-LLVM_COMPONENTS=( libcxx{,abi} llvm/{cmake/modules,utils/llvm-lit} )
-llvm.org_set_globals
-
-python_check_deps() {
- has_version "dev-python/lit[${PYTHON_USEDEP}]"
-}
-
-pkg_setup() {
- # Darwin Prefix builds do not have llvm installed yet, so rely on
- # bootstrap-prefix to set the appropriate path vars to LLVM instead
- # of using llvm_pkg_setup.
- if [[ ${CHOST} != *-darwin* ]] || has_version dev-lang/llvm; then
- llvm_pkg_setup
- fi
- use test && python-any-r1_pkg_setup
-
- if ! use libcxxabi && ! tc-is-gcc ; then
- eerror "To build ${PN} against libsupc++, you have to use gcc. Other"
- eerror "compilers are not supported. Please set CC=gcc and CXX=g++"
- eerror "and try again."
- die
- fi
-}
-
-src_prepare() {
- # Add link flag "-Wl,-z,defs" to avoid underlinking; this is needed in a
- # out-of-tree build.
- eapply "${FILESDIR}/${PN}-3.9-cmake-link-flags.patch"
-
- llvm.org_src_prepare
-}
-
-test_compiler() {
- $(tc-getCXX) ${CXXFLAGS} ${LDFLAGS} "${@}" -o /dev/null -x c++ - \
- <<<'int main() { return 0; }' &>/dev/null
-}
-
-src_configure() {
- # note: we need to do this before multilib kicks in since it will
- # alter the CHOST
- local cxxabi cxxabi_incs
- if use libcxxabi; then
- cxxabi=libcxxabi
- cxxabi_incs="${EPREFIX}/usr/include/libcxxabi"
- else
- local gcc_inc="${EPREFIX}/usr/lib/gcc/${CHOST}/$(gcc-fullversion)/include/g++-v$(gcc-major-version)"
- cxxabi=libsupc++
- cxxabi_incs="${gcc_inc};${gcc_inc}/${CHOST}"
- fi
-
- multilib-minimal_src_configure
-}
-
-multilib_src_configure() {
- # we want -lgcc_s for unwinder, and for compiler runtime when using
- # gcc, clang with gcc runtime (or any unknown compiler)
- local extra_libs=() want_gcc_s=ON want_compiler_rt=OFF
- if use libunwind; then
- # work-around missing -lunwind upstream
- extra_libs+=( -lunwind )
- # if we're using libunwind and clang with compiler-rt, we want
- # to link to compiler-rt instead of -lgcc_s
- if tc-is-clang; then
- local compiler_rt=$($(tc-getCC) ${CFLAGS} ${CPPFLAGS} \
- ${LDFLAGS} -print-libgcc-file-name)
- if [[ ${compiler_rt} == *libclang_rt* ]]; then
- want_gcc_s=OFF
- want_compiler_rt=ON
- extra_libs+=( "${compiler_rt}" )
- fi
- fi
- elif [[ ${CHOST} == *-darwin* ]] && tc-is-clang; then
- # clang-based darwin prefix disables libunwind useflag during
- # bootstrap, because libunwind is not in the prefix yet.
- # override the default, though, because clang based libcxx
- # should never use gcc_s on Darwin.
- want_gcc_s=OFF
- # compiler_rt is not available in EPREFIX during bootstrap,
- # so we cannot link to it yet anyway, so keep the defaults
- # of want_compiler_rt=OFF and extra_libs=()
- fi
-
- # bootstrap: cmake is unhappy if compiler can't link to stdlib
- local nolib_flags=( -nodefaultlibs -lc )
- if ! test_compiler; then
- if test_compiler "${nolib_flags[@]}"; then
- local -x LDFLAGS="${LDFLAGS} ${nolib_flags[*]}"
- ewarn "${CXX} seems to lack runtime, trying with ${nolib_flags[*]}"
- fi
- fi
-
- local libdir=$(get_libdir)
- local mycmakeargs=(
- -DLIBCXX_LIBDIR_SUFFIX=${libdir#lib}
- -DLIBCXX_ENABLE_SHARED=ON
- -DLIBCXX_ENABLE_STATIC=$(usex static-libs)
- -DLIBCXX_CXX_ABI=${cxxabi}
- -DLIBCXX_CXX_ABI_INCLUDE_PATHS=${cxxabi_incs}
- # we're using our own mechanism for generating linker scripts
- -DLIBCXX_ENABLE_ABI_LINKER_SCRIPT=OFF
- -DLIBCXX_HAS_MUSL_LIBC=$(usex elibc_musl)
- -DLIBCXX_HAS_GCC_S_LIB=${want_gcc_s}
- -DLIBCXX_INCLUDE_TESTS=$(usex test)
- -DLIBCXX_USE_COMPILER_RT=${want_compiler_rt}
- -DCMAKE_SHARED_LINKER_FLAGS="${extra_libs[*]} ${LDFLAGS}"
- )
-
- if use test; then
- local clang_path=$(type -P "${CHOST:+${CHOST}-}clang" 2>/dev/null)
- [[ -n ${clang_path} ]] || die "Unable to find ${CHOST}-clang for tests"
-
- mycmakeargs+=(
- -DLLVM_EXTERNAL_LIT="${EPREFIX}/usr/bin/lit"
- -DLLVM_LIT_ARGS="$(get_lit_flags);--param=cxx_under_test=${clang_path}"
- -DPython3_EXECUTABLE="${PYTHON}"
- )
- fi
- cmake_src_configure
-}
-
-multilib_src_test() {
- local -x LIT_PRESERVES_TMP=1
- cmake_build check-cxx
-}
-
-# Usage: deps
-gen_ldscript() {
- local output_format
- output_format=$($(tc-getCC) ${CFLAGS} ${LDFLAGS} -Wl,--verbose 2>&1 | sed -n 's/^OUTPUT_FORMAT("\([^"]*\)",.*/\1/p')
- [[ -n ${output_format} ]] && output_format="OUTPUT_FORMAT ( ${output_format} )"
-
- cat <<-END_LDSCRIPT
-/* GNU ld script
- Include missing dependencies
-*/
-${output_format}
-GROUP ( $@ )
-END_LDSCRIPT
-}
-
-gen_static_ldscript() {
- local libdir=$(get_libdir)
- local cxxabi_lib=$(usex libcxxabi "libc++abi.a" "libsupc++.a")
-
- # Move it first.
- mv "${ED}/usr/${libdir}/libc++.a" "${ED}/usr/${libdir}/libc++_static.a" || die
- # Generate libc++.a ldscript for inclusion of its dependencies so that
- # clang++ -stdlib=libc++ -static works out of the box.
- local deps="libc++_static.a ${cxxabi_lib} $(usex libunwind libunwind.a libgcc_eh.a)"
- # On Linux/glibc it does not link without libpthread or libdl. It is
- # fine on FreeBSD.
- use elibc_glibc && deps+=" libpthread.a libdl.a"
-
- gen_ldscript "${deps}" > "${ED}/usr/${libdir}/libc++.a" || die
-}
-
-gen_shared_ldscript() {
- local libdir=$(get_libdir)
- # libsupc++ doesn't have a shared version
- local cxxabi_lib=$(usex libcxxabi "libc++abi.so" "libsupc++.a")
-
- mv "${ED}/usr/${libdir}/libc++.so" "${ED}/usr/${libdir}/libc++_shared.so" || die
- local deps="libc++_shared.so ${cxxabi_lib} $(usex libunwind libunwind.so libgcc_s.so)"
-
- gen_ldscript "${deps}" > "${ED}/usr/${libdir}/libc++.so" || die
-}
-
-multilib_src_install() {
- cmake_src_install
- if [[ ${CHOST} != *-darwin* ]] ; then
- gen_shared_ldscript
- use static-libs && gen_static_ldscript
- fi
-}
-
-pkg_postinst() {
- elog "This package (${PN}) is mainly intended as a replacement for the C++"
- elog "standard library when using clang."
- elog "To use it, instead of libstdc++, use:"
- elog " clang++ -stdlib=libc++"
- elog "to compile your C++ programs."
-}
diff --git a/sys-libs/libcxx/libcxx-13.0.0.9999.ebuild b/sys-libs/libcxx/libcxx-13.0.0.9999.ebuild
index 8ed99383fe0b..1f529867fb7b 100644
--- a/sys-libs/libcxx/libcxx-13.0.0.9999.ebuild
+++ b/sys-libs/libcxx/libcxx-13.0.0.9999.ebuild
@@ -35,6 +35,7 @@ BDEPEND="
DOCS=( CREDITS.TXT )
LLVM_COMPONENTS=( libcxx{,abi} llvm/{cmake/modules,utils/llvm-lit} )
+LLVM_PATCHSET=9999-1
llvm.org_set_globals
python_check_deps() {
@@ -58,14 +59,6 @@ pkg_setup() {
fi
}
-src_prepare() {
- # Add link flag "-Wl,-z,defs" to avoid underlinking; this is needed in a
- # out-of-tree build.
- eapply "${FILESDIR}/${PN}-3.9-cmake-link-flags.patch"
-
- llvm.org_src_prepare
-}
-
test_compiler() {
$(tc-getCXX) ${CXXFLAGS} ${LDFLAGS} "${@}" -o /dev/null -x c++ - \
<<<'int main() { return 0; }' &>/dev/null