diff options
Diffstat (limited to 'sys-libs/libcxx/libcxx-10.0.1_rc1.ebuild')
-rw-r--r-- | sys-libs/libcxx/libcxx-10.0.1_rc1.ebuild | 26 |
1 files changed, 16 insertions, 10 deletions
diff --git a/sys-libs/libcxx/libcxx-10.0.1_rc1.ebuild b/sys-libs/libcxx/libcxx-10.0.1_rc1.ebuild index 6e1bba971a9b..055385df1c68 100644 --- a/sys-libs/libcxx/libcxx-10.0.1_rc1.ebuild +++ b/sys-libs/libcxx/libcxx-10.0.1_rc1.ebuild @@ -3,7 +3,8 @@ EAPI=7 -PYTHON_COMPAT=( python3_{6,7} ) +CMAKE_ECLASS=cmake +PYTHON_COMPAT=( python3_{6..9} ) inherit cmake-multilib llvm llvm.org multiprocessing python-any-r1 \ toolchain-funcs @@ -33,12 +34,6 @@ BDEPEND=" DOCS=( CREDITS.TXT ) -PATCHES=( - # Add link flag "-Wl,-z,defs" to avoid underlinking; this is needed in a - # out-of-tree build. - "${FILESDIR}/${PN}-3.9-cmake-link-flags.patch" -) - # least intrusive of all CMAKE_BUILD_TYPE=RelWithDebInfo @@ -58,6 +53,17 @@ 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" + + # cmake eclasses suck by forcing ${S} here + CMAKE_USE_DIR=${S} \ + S=${WORKDIR} \ + cmake_src_prepare +} + test_compiler() { $(tc-getCXX) ${CXXFLAGS} ${LDFLAGS} "${@}" -o /dev/null -x c++ - \ <<<'int main() { return 0; }' &>/dev/null @@ -135,12 +141,12 @@ multilib_src_configure() { -DLLVM_LIT_ARGS="-vv;-j;${jobs};--param=cxx_under_test=${clang_path}" ) fi - cmake-utils_src_configure + cmake_src_configure } multilib_src_test() { local -x LIT_PRESERVES_TMP=1 - cmake-utils_src_make check-libcxx + cmake_build check-libcxx } # Usage: deps @@ -186,7 +192,7 @@ gen_shared_ldscript() { } multilib_src_install() { - cmake-utils_src_install + cmake_src_install gen_shared_ldscript use static-libs && gen_static_ldscript } |