From e8f81810baa21f490d6910e8e2d424546b72a333 Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Sun, 15 Sep 2019 09:01:56 +0100 Subject: gentoo resync : 15.09.2019 --- eclass/Manifest.gz | Bin 37479 -> 37485 bytes eclass/ada.eclass | 36 +++++++++++++++++++++++++++--------- eclass/kde5.eclass | 17 ++++++++++++++--- eclass/mozcoreconf-v6.eclass | 40 +++++++++------------------------------- eclass/toolchain-funcs.eclass | 30 ++++++++++++++++++++++++++++++ 5 files changed, 80 insertions(+), 43 deletions(-) (limited to 'eclass') diff --git a/eclass/Manifest.gz b/eclass/Manifest.gz index dee498cf1821..b54388dc8f83 100644 Binary files a/eclass/Manifest.gz and b/eclass/Manifest.gz differ diff --git a/eclass/ada.eclass b/eclass/ada.eclass index 338b73bab86b..86a67fc24fd0 100644 --- a/eclass/ada.eclass +++ b/eclass/ada.eclass @@ -23,10 +23,10 @@ # Mostly copied from python-single-r1.eclass case "${EAPI:-0}" in - 0|1|2|3|4) + 0|1|2|3|4|5) die "Unsupported EAPI=${EAPI:-0} (too old) for ${ECLASS}" ;; - 5|6|7) + 6|7) # EAPI=5 is required for sane USE_EXPAND dependencies ;; *) @@ -233,6 +233,14 @@ ada_export() { export GNATLS=${EPREFIX}/usr/bin/gnatls-${gcc_pv} debug-print "${FUNCNAME}: GNATLS = ${GNATLS}" ;; + GNATPREP) + export GNATPREP=${EPREFIX}/usr/bin/gnatprep-${gcc_pv} + debug-print "${FUNCNAME}: GNATPREP = ${GNATPREP}" + ;; + GNATCHOP) + export GNATCHOP=${EPREFIX}/usr/bin/gnatchop-${gcc_pv} + debug-print "${FUNCNAME}: GNATCHOP = ${GNATCHOP}" + ;; ADA_PKG_DEP) ADA_PKG_DEP="dev-lang/gnat-gpl:${gcc_pv}" @@ -341,30 +349,40 @@ ada_wrapper_setup() { if [[ ! -x ${workdir}/bin/gnatmake ]]; then mkdir -p "${workdir}"/bin || die - local GCC GNATMAKE GNATLS GNATBIND - ada_export "${impl}" GCC GNATMAKE GNATLS GNATBIND + local GCC GNATMAKE GNATLS GNATBIND GNATCHOP GNATPREP + ada_export "${impl}" GCC GNATMAKE GNATLS GNATCHOP GNATBIND GNATPREP # Ada compiler cat > "${workdir}/bin/gcc" <<-_EOF_ || die #!/bin/sh exec "${GCC}" "\${@}" _EOF_ - chmod a+x "${workdir}/bin/gcc" + chmod a+x "${workdir}/bin/gcc" || die cat > "${workdir}/bin/gnatmake" <<-_EOF_ || die #!/bin/sh exec "${GNATMAKE}" "\${@}" _EOF_ - chmod a+x "${workdir}/bin/gnatmake" + chmod a+x "${workdir}/bin/gnatmake" || die cat > "${workdir}/bin/gnatls" <<-_EOF_ || die #!/bin/sh exec "${GNATLS}" "\${@}" _EOF_ - chmod a+x "${workdir}/bin/gnatls" + chmod a+x "${workdir}/bin/gnatls" || die cat > "${workdir}/bin/gnatbind" <<-_EOF_ || die #!/bin/sh exec "${GNATBIND}" "\${@}" _EOF_ - chmod a+x "${workdir}/bin/gnatbind" + chmod a+x "${workdir}/bin/gnatbind" || die + cat > "${workdir}/bin/gnatchop" <<-_EOF_ || die + #!/bin/sh + exec "${GNATCHOP}" "\${@}" + _EOF_ + chmod a+x "${workdir}/bin/gnatchop" || die + cat > "${workdir}/bin/gnatprep" <<-_EOF_ || die + #!/bin/sh + exec "${GNATPREP}" "\${@}" + _EOF_ + chmod a+x "${workdir}/bin/gnatprep" || die fi # Now, set the environment. @@ -388,7 +406,7 @@ ada_setup() { if [[ ${#_ADA_SUPPORTED_IMPLS[@]} -eq 1 ]]; then if use "ada_targets_${_ADA_SUPPORTED_IMPLS[0]}"; then # Only one supported implementation, enable it explicitly - ada_export "${_ADA_SUPPORTED_IMPLS[0]}" EADA GCC GCC_PV GNATMAKE + ada_export "${_ADA_SUPPORTED_IMPLS[0]}" EADA GCC_PV ada_wrapper_setup fi else diff --git a/eclass/kde5.eclass b/eclass/kde5.eclass index 347182b23316..9f71e428c54f 100644 --- a/eclass/kde5.eclass +++ b/eclass/kde5.eclass @@ -206,7 +206,11 @@ case ${KDE_DESIGNERPLUGIN} in false) ;; *) IUSE+=" designer" - BDEPEND+=" designer? ( $(add_frameworks_dep kdesignerplugin) )" + if [[ ${CATEGORY} = kde-frameworks ]]; then + BDEPEND+=" designer? ( $(add_qt_dep designer) )" + else + BDEPEND+=" designer? ( $(add_frameworks_dep kdesignerplugin) )" + fi esac case ${KDE_EXAMPLES} in @@ -297,6 +301,9 @@ _calculate_src_uri() { kross) _kmname="portingAids/${_kmname}" ;; + kdesignerplugin) + [[ ${PV} = 5.6[01].* ]] || _kmname="portingAids/${_kmname}" + ;; esac case ${CATEGORY} in @@ -595,8 +602,12 @@ kde5_src_configure() { cmakeargs+=( -DCMAKE_DISABLE_FIND_PACKAGE_KF5DocTools=ON ) fi - if in_iuse designer && ! use designer && [[ ${KDE_DESIGNERPLUGIN} != false ]] ; then - cmakeargs+=( -DCMAKE_DISABLE_FIND_PACKAGE_KF5DesignerPlugin=ON ) + if in_iuse designer && [[ ${KDE_DESIGNERPLUGIN} != false ]] ; then + if [[ ${CATEGORY} = kde-frameworks ]]; then + cmakeargs+=( -DBUILD_DESIGNERPLUGIN=$(usex designer) ) + else + cmakeargs+=( $(cmake-utils_use_find_package designer KF5DesignerPlugin) ) + fi fi if [[ ${KDE_QTHELP} != false ]]; then diff --git a/eclass/mozcoreconf-v6.eclass b/eclass/mozcoreconf-v6.eclass index 78104b55fb6e..03ffac7914dc 100644 --- a/eclass/mozcoreconf-v6.eclass +++ b/eclass/mozcoreconf-v6.eclass @@ -103,12 +103,6 @@ moz_pkgsetup() { # false positives when toplevel configure passes downwards. export QA_CONFIGURE_OPTIONS=".*" - if [[ $(gcc-major-version) -eq 3 ]]; then - ewarn "Unsupported compiler detected, DO NOT file bugs for" - ewarn "outdated compilers. Bugs opened with gcc-3 will be closed" - ewarn "invalid." - fi - python-any-r1_pkg_setup # workaround to set python3 into PYTHON3 until mozilla doesn't need py2 if [[ "${PYTHON_COMPAT[@]}" != "${PYTHON_COMPAT[@]#python3*}" ]]; then @@ -207,17 +201,15 @@ mozconfig_init() { # Additional ARCH support case "${ARCH}" in - arm) - if [[ ${PN} != seamonkey ]] ; then - # Reduce the memory requirements for linking - if use clang ; then - # Nothing to do - :; - elif tc-ld-is-gold || use lto; then - append-ldflags -Wl,--no-keep-memory - else - append-ldflags -Wl,--no-keep-memory -Wl,--reduce-memory-overheads - fi + arm | ppc64) + # Reduce the memory requirements for linking + if use clang ; then + # Nothing to do + :; + elif tc-ld-is-gold; then + append-ldflags -Wl,--no-keep-memory + else + append-ldflags -Wl,--no-keep-memory -Wl,--reduce-memory-overheads fi ;; alpha) @@ -230,20 +222,6 @@ mozconfig_init() { # Historically we have needed to add this manually for 64-bit append-flags -fPIC ;; - ppc64) - append-flags -fPIC - if [[ ${PN} != seamonkey ]] ; then - # Reduce the memory requirements for linking - if use clang ; then - # Nothing to do - :; - elif tc-ld-is-gold || use lto; then - append-ldflags -Wl,--no-keep-memory - else - append-ldflags -Wl,--no-keep-memory -Wl,--reduce-memory-overheads - fi - fi - ;; esac # We need to append flags for gcc-6 support diff --git a/eclass/toolchain-funcs.eclass b/eclass/toolchain-funcs.eclass index 7bd90bb4e4a0..e358d484417a 100644 --- a/eclass/toolchain-funcs.eclass +++ b/eclass/toolchain-funcs.eclass @@ -453,6 +453,36 @@ tc-ld-is-gold() { return 1 } +# @FUNCTION: tc-ld-is-lld +# @USAGE: [toolchain prefix] +# @DESCRIPTION: +# Return true if the current linker is set to lld. +tc-ld-is-lld() { + local out + + # First check the linker directly. + out=$($(tc-getLD "$@") --version 2>&1) + if [[ ${out} == *"LLD"* ]] ; then + return 0 + fi + + # Then see if they're selecting lld via compiler flags. + # Note: We're assuming they're using LDFLAGS to hold the + # options and not CFLAGS/CXXFLAGS. + local base="${T}/test-tc-lld" + cat <<-EOF > "${base}.c" + int main() { return 0; } + EOF + out=$($(tc-getCC "$@") ${CFLAGS} ${CPPFLAGS} ${LDFLAGS} -Wl,--version "${base}.c" -o "${base}" 2>&1) + rm -f "${base}"* + if [[ ${out} == *"LLD"* ]] ; then + return 0 + fi + + # No lld here! + return 1 +} + # @FUNCTION: tc-ld-disable-gold # @USAGE: [toolchain prefix] # @DESCRIPTION: -- cgit v1.2.3