diff options
Diffstat (limited to 'sys-libs/libcxx')
-rw-r--r-- | sys-libs/libcxx/ChangeLog | 6 | ||||
-rw-r--r-- | sys-libs/libcxx/files/cxxrt.patch | 26 | ||||
-rw-r--r-- | sys-libs/libcxx/libcxx-9999.ebuild | 10 |
3 files changed, 37 insertions, 5 deletions
diff --git a/sys-libs/libcxx/ChangeLog b/sys-libs/libcxx/ChangeLog index d6d185a39a16..4b1f7a0a6c3a 100644 --- a/sys-libs/libcxx/ChangeLog +++ b/sys-libs/libcxx/ChangeLog @@ -1,6 +1,10 @@ # ChangeLog for sys-libs/libcxx # Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/sys-libs/libcxx/ChangeLog,v 1.1 2012/05/24 03:01:42 aballier Exp $ +# $Header: /var/cvsroot/gentoo-x86/sys-libs/libcxx/ChangeLog,v 1.2 2012/05/28 13:59:52 aballier Exp $ + + 28 May 2012; Alexis Ballier <aballier@gentoo.org> libcxx-9999.ebuild, + +files/cxxrt.patch: + build it on top of libcxxrt as done in FreeBSD *libcxx-9999 (24 May 2012) *libcxx-0.0_p20120523 (24 May 2012) diff --git a/sys-libs/libcxx/files/cxxrt.patch b/sys-libs/libcxx/files/cxxrt.patch new file mode 100644 index 000000000000..c64d8b3b35d7 --- /dev/null +++ b/sys-libs/libcxx/files/cxxrt.patch @@ -0,0 +1,26 @@ +Index: lib/CMakeLists.txt +=================================================================== +--- lib/CMakeLists.txt (revision 157576) ++++ lib/CMakeLists.txt (working copy) +@@ -36,7 +36,7 @@ + append_if(libraries LIBCXX_HAS_C_LIB c) + append_if(libraries LIBCXX_HAS_M_LIB m) + append_if(libraries LIBCXX_HAS_RT_LIB rt) +-append_if(libraries LIBCXX_HAS_GCC_S_LIB gcc_s) ++append_if(libraries LIBCXX_HAS_LIBCXXRT cxxrt) + + target_link_libraries(cxx ${libraries}) + +Index: cmake/config-ix.cmake +=================================================================== +--- cmake/config-ix.cmake (revision 157576) ++++ cmake/config-ix.cmake (working copy) +@@ -26,7 +26,7 @@ + check_library_exists(c printf "" LIBCXX_HAS_C_LIB) + check_library_exists(m ccos "" LIBCXX_HAS_M_LIB) + check_library_exists(rt clock_gettime "" LIBCXX_HAS_RT_LIB) +-check_library_exists(gcc_s __gcc_personality_v0 "" LIBCXX_HAS_GCC_S_LIB) ++check_library_exists(cxxrt __cxa_get_globals "" LIBCXX_HAS_LIBCXXRT) + + # Check C++0x features + if (LIBCXX_ENABLE_CXX0X) diff --git a/sys-libs/libcxx/libcxx-9999.ebuild b/sys-libs/libcxx/libcxx-9999.ebuild index f2e52dae7c11..d4fa34224b51 100644 --- a/sys-libs/libcxx/libcxx-9999.ebuild +++ b/sys-libs/libcxx/libcxx-9999.ebuild @@ -1,6 +1,6 @@ # Copyright 1999-2012 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/sys-libs/libcxx/libcxx-9999.ebuild,v 1.1 2012/05/24 03:01:42 aballier Exp $ +# $Header: /var/cvsroot/gentoo-x86/sys-libs/libcxx/libcxx-9999.ebuild,v 1.2 2012/05/28 13:59:52 aballier Exp $ EAPI=4 @@ -8,7 +8,7 @@ ESVN_REPO_URI="http://llvm.org/svn/llvm-project/libcxx/trunk" [ "${PV%9999}" != "${PV}" ] && SCM="subversion" || SCM="" -inherit cmake-utils ${SCM} base +inherit cmake-utils ${SCM} base flag-o-matic DESCRIPTION="New implementation of the C++ standard library, targeting C++0X" HOMEPAGE="http://libcxx.llvm.org/" @@ -27,12 +27,13 @@ else fi IUSE="" -RDEPEND="" +RDEPEND="sys-libs/libcxxrt" DEPEND="${RDEPEND} sys-devel/clang app-arch/xz-utils" -PATCHES=( "${FILESDIR}/multilib.patch" ) +PATCHES=( "${FILESDIR}/multilib.patch" + "${FILESDIR}/cxxrt.patch" ) DOCS=( "CREDITS.TXT" ) src_prepare() { @@ -40,6 +41,7 @@ src_prepare() { } src_configure() { + append-cppflags "-I/usr/include/libcxxrt -DLIBCXXRT" # Needs to be built with clang. gcc-4.6.3 fails at least. # TODO: cross-compile ? export CC=clang |