diff options
author | Yuta Satoh <nigoro.dev@gmail.com> | 2016-10-11 21:14:26 +0900 |
---|---|---|
committer | Alexis Ballier <aballier@gentoo.org> | 2016-10-11 16:47:47 +0200 |
commit | 9c7ba33a32ba891c811fa450b53419702d5697c4 (patch) | |
tree | 42943f51282d06f69dc27d4fa11fc5f18d7c74b9 /eclass/freebsd.eclass | |
parent | eclass/bsdmk.eclass: Pass all of arguments to mkinstall. (diff) | |
download | gentoo-9c7ba33a32ba891c811fa450b53419702d5697c4.tar.gz gentoo-9c7ba33a32ba891c811fa450b53419702d5697c4.tar.bz2 gentoo-9c7ba33a32ba891c811fa450b53419702d5697c4.zip |
eclass/freebsd.eclass: added FreeBSD 11.0 support.
Diffstat (limited to 'eclass/freebsd.eclass')
-rw-r--r-- | eclass/freebsd.eclass | 57 |
1 files changed, 50 insertions, 7 deletions
diff --git a/eclass/freebsd.eclass b/eclass/freebsd.eclass index cb03cf63a31a..8f6b204f1f30 100644 --- a/eclass/freebsd.eclass +++ b/eclass/freebsd.eclass @@ -102,7 +102,15 @@ doperiodic() { freebsd_get_bmake() { local bmake bmake=$(get_bmake) - [[ ${CBUILD} == *-freebsd* ]] || bmake="${bmake} -m /usr/share/mk/freebsd" + if version_is_at_least 11.0 ${RV} ; then + if [[ ${CBUILD} == *-freebsd* ]] ; then + bmake="${bmake} -m /usr/share/mk/system" + else + bmake="${bmake} -m /usr/share/mk/freebsd/system" + fi + else + [[ ${CBUILD} == *-freebsd* ]] || bmake="${bmake} -m /usr/share/mk/freebsd" + fi echo "${bmake}" } @@ -187,7 +195,9 @@ freebsd_src_unpack() { dummy_mk ${REMOVE_SUBDIRS} freebsd_do_patches - freebsd_rename_libraries + if ! version_is_at_least 11.0 ${RV} ; then + freebsd_rename_libraries + fi # Starting from FreeBSD 9.2, its install command supports the -l option and # they now use it. Emulate it if we are on a system that does not have it. @@ -195,6 +205,9 @@ freebsd_src_unpack() { export INSTALL_LINK="ln -f" export INSTALL_SYMLINK="ln -fs" fi + if version_is_at_least 11.0 ${RV} ; then + export RSYMLINK=" -l s" + fi # When CC=clang, force use clang-cpp #478810, #595878 if [[ $(tc-getCC) == *clang* ]] ; then @@ -213,9 +226,24 @@ freebsd_src_unpack() { freebsd_src_compile() { use profile && filter-flags "-fomit-frame-pointer" - use profile || mymakeopts="${mymakeopts} NO_PROFILE= " + if version_is_at_least 11.0 ${RV} ; then + if ! use profile ; then + mymakeopts="${mymakeopts} WITHOUT_PROFILE= " + fi + # Disable debugging info, use FEATURES=splitdebug instead. + mymakeopts="${mymakeopts} WITHOUT_DEBUG_FILES= " + # Test does not support yet. + mymakeopts="${mymakeopts} WITHOUT_TESTS= " + # Force set SRCTOP. + mymakeopts="${mymakeopts} SRCTOP=${WORKDIR} " + # Set common option. + mymakeopts="${mymakeopts} WITHOUT_MANCOMPRESS= WITHOUT_INFOCOMPRESS= " + else + use profile || mymakeopts="${mymakeopts} NO_PROFILE= " + mymakeopts="${mymakeopts} NO_MANCOMPRESS= NO_INFOCOMPRESS= " + fi - mymakeopts="${mymakeopts} NO_MANCOMPRESS= NO_INFOCOMPRESS= NO_FSCHG=" + mymakeopts="${mymakeopts} NO_FSCHG=" # Make sure to use FreeBSD definitions while crosscompiling [[ -z "${BMAKE}" ]] && BMAKE="$(freebsd_get_bmake)" @@ -274,11 +302,26 @@ freebsd_multilib_multibuild_wrapper() { } freebsd_src_install() { - use profile || mymakeopts="${mymakeopts} NO_PROFILE= " + if version_is_at_least 11.0 ${RV} ; then + if ! use profile ; then + mymakeopts="${mymakeopts} WITHOUT_PROFILE= " + fi + # Disable debugging info, use FEATURES=splitdebug instead. + mymakeopts="${mymakeopts} WITHOUT_DEBUG_FILES= " + # Test does not support yet. + mymakeopts="${mymakeopts} WITHOUT_TESTS= " + # Force set SRCTOP. + mymakeopts="${mymakeopts} SRCTOP=${WORKDIR} " + # Set common option. + mymakeopts="${mymakeopts} WITHOUT_MANCOMPRESS= WITHOUT_INFOCOMPRESS= " + else + use profile || mymakeopts="${mymakeopts} NO_PROFILE= " + mymakeopts="${mymakeopts} NO_MANCOMPRESS= NO_INFOCOMPRESS= " + fi - mymakeopts="${mymakeopts} NO_MANCOMPRESS= NO_INFOCOMPRESS= NO_FSCHG=" + mymakeopts="${mymakeopts} NO_FSCHG=" [[ -z "${BMAKE}" ]] && BMAKE="$(freebsd_get_bmake)" - bsdmk_src_install + bsdmk_src_install "$@" } |