summaryrefslogtreecommitdiff
path: root/eclass
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2019-09-15 09:01:56 +0100
committerV3n3RiX <venerix@redcorelinux.org>2019-09-15 09:01:56 +0100
commite8f81810baa21f490d6910e8e2d424546b72a333 (patch)
treedb79151c528a566490ffcac0d7b64484e12b4762 /eclass
parentd00821e77f72d4af4ea30158c1c6e18ffff0875b (diff)
gentoo resync : 15.09.2019
Diffstat (limited to 'eclass')
-rw-r--r--eclass/Manifest.gzbin37479 -> 37485 bytes
-rw-r--r--eclass/ada.eclass36
-rw-r--r--eclass/kde5.eclass17
-rw-r--r--eclass/mozcoreconf-v6.eclass40
-rw-r--r--eclass/toolchain-funcs.eclass30
5 files changed, 80 insertions, 43 deletions
diff --git a/eclass/Manifest.gz b/eclass/Manifest.gz
index dee498cf1821..b54388dc8f83 100644
--- a/eclass/Manifest.gz
+++ b/eclass/Manifest.gz
Binary files 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: