summaryrefslogtreecommitdiff
path: root/eclass
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2018-10-07 11:03:14 +0100
committerV3n3RiX <venerix@redcorelinux.org>2018-10-07 11:03:14 +0100
commit957235cf19a691360c720f7913672adda4258ed0 (patch)
tree812bba7928f4293ead05a7ee9c1ac39c5ef9f12e /eclass
parent62f67115b5c46134c34f88f4b1cbdacc19384c0a (diff)
gentoo resync : 07.10.2018
Diffstat (limited to 'eclass')
-rw-r--r--eclass/Manifest.gzbin37640 -> 37617 bytes
-rw-r--r--eclass/chromium-2.eclass4
-rw-r--r--eclass/linux-info.eclass26
-rw-r--r--eclass/mozconfig-v6.60.eclass12
-rw-r--r--eclass/mozcoreconf-v6.eclass18
-rw-r--r--eclass/toolchain.eclass9
-rw-r--r--eclass/xdg-utils.eclass12
7 files changed, 50 insertions, 31 deletions
diff --git a/eclass/Manifest.gz b/eclass/Manifest.gz
index 707fa5c59dac..78505268f5e9 100644
--- a/eclass/Manifest.gz
+++ b/eclass/Manifest.gz
Binary files differ
diff --git a/eclass/chromium-2.eclass b/eclass/chromium-2.eclass
index 712e44afc31d..c9cfe5acebee 100644
--- a/eclass/chromium-2.eclass
+++ b/eclass/chromium-2.eclass
@@ -106,8 +106,7 @@ chromium_pkg_die() {
fi
# Prevent user problems like bug #348235.
- eshopts_push -s extglob
- if is-flagq '-g?(gdb)?([1-9])'; then
+ if ( shopt -s extglob; is-flagq '-g?(gdb)?([1-9])' ); then
ewarn
ewarn "You have enabled debug info (i.e. -g or -ggdb in your CFLAGS/CXXFLAGS)."
ewarn "This produces very large build files causes the linker to consume large"
@@ -116,7 +115,6 @@ chromium_pkg_die() {
ewarn "Please try removing -g{,gdb} before reporting a bug."
ewarn
fi
- eshopts_pop
# ccache often causes bogus compile failures, especially when the cache gets
# corrupted.
diff --git a/eclass/linux-info.eclass b/eclass/linux-info.eclass
index b158e345d166..98ec0ac8dabe 100644
--- a/eclass/linux-info.eclass
+++ b/eclass/linux-info.eclass
@@ -548,13 +548,22 @@ get_version() {
return 1
fi
+ [ -d "${OUTPUT_DIR}" ] && KV_OUT_DIR="${OUTPUT_DIR}"
+ if [ -n "${KV_OUT_DIR}" ];
+ then
+ qeinfo "Found kernel object directory:"
+ qeinfo " ${KV_OUT_DIR}"
+ fi
+ # and if we STILL have not got it, then we better just set it to KV_DIR
+ KV_OUT_DIR="${KV_OUT_DIR:-${KV_DIR}}"
+
# Grab the kernel release from the output directory.
# TODO: we MUST detect kernel.release being out of date, and 'return 1' from
# this function.
- if [ -s "${KV_DIR}"/include/config/kernel.release ]; then
- KV_LOCAL=$(<"${KV_DIR}"/include/config/kernel.release)
- elif [ -s "${KV_DIR}"/.kernelrelease ]; then
- KV_LOCAL=$(<"${KV_DIR}"/.kernelrelease)
+ if [ -s "${KV_OUT_DIR}"/include/config/kernel.release ]; then
+ KV_LOCAL=$(<"${KV_OUT_DIR}"/include/config/kernel.release)
+ elif [ -s "${KV_OUT_DIR}"/.kernelrelease ]; then
+ KV_LOCAL=$(<"${KV_OUT_DIR}"/.kernelrelease)
else
KV_LOCAL=
fi
@@ -586,15 +595,6 @@ get_version() {
done
fi
- [ -d "${OUTPUT_DIR}" ] && KV_OUT_DIR="${OUTPUT_DIR}"
- if [ -n "${KV_OUT_DIR}" ];
- then
- qeinfo "Found kernel object directory:"
- qeinfo " ${KV_OUT_DIR}"
- fi
- # and if we STILL have not got it, then we better just set it to KV_DIR
- KV_OUT_DIR="${KV_OUT_DIR:-${KV_DIR}}"
-
# And we should set KV_FULL to the full expanded version
KV_FULL="${KV_MAJOR}.${KV_MINOR}.${KV_PATCH}${KV_EXTRA}${KV_LOCAL}"
diff --git a/eclass/mozconfig-v6.60.eclass b/eclass/mozconfig-v6.60.eclass
index b86fa2a0dc62..de09ebcd6408 100644
--- a/eclass/mozconfig-v6.60.eclass
+++ b/eclass/mozconfig-v6.60.eclass
@@ -101,7 +101,7 @@ RDEPEND=">=app-text/hunspell-1.5.4:=
>=x11-libs/pixman-0.19.2
>=dev-libs/glib-2.26:2
>=sys-libs/zlib-1.2.3
- >=virtual/libffi-3.0.10
+ >=virtual/libffi-3.0.10:=
virtual/ffmpeg
x11-libs/libX11
x11-libs/libXcomposite
@@ -203,7 +203,7 @@ mozconfig_config() {
# Force gcc
einfo "Enforcing the use of gcc due to USE=-clang ..."
CC=${CHOST}-gcc
- CXX=${CHOST}-gcc++
+ CXX=${CHOST}-g++
strip-unsupported-flags
fi
@@ -212,9 +212,6 @@ mozconfig_config() {
--with-system-zlib \
--with-system-bz2
- # Stylo is only broken on x86 builds
- use x86 && mozconfig_annotate 'Upstream bug 1341234' --disable-stylo
-
# Stylo is horribly broken on arm, renders GUI unusable
use arm && mozconfig_annotate 'breaks UI on arm' --disable-stylo
@@ -331,7 +328,10 @@ mozconfig_config() {
mozconfig_use_with system-harfbuzz
mozconfig_use_with system-harfbuzz system-graphite2
- if use arm ; then
+ if use clang ; then
+ # https://bugzilla.mozilla.org/show_bug.cgi?id=1423822
+ mozconfig_annotate 'elf-hack is broken when using Clang' --disable-elf-hack
+ elif use arm ; then
mozconfig_annotate 'elf-hack is broken on arm' --disable-elf-hack
fi
diff --git a/eclass/mozcoreconf-v6.eclass b/eclass/mozcoreconf-v6.eclass
index 571f195b8e46..862d632cd99d 100644
--- a/eclass/mozcoreconf-v6.eclass
+++ b/eclass/mozcoreconf-v6.eclass
@@ -204,7 +204,14 @@ mozconfig_init() {
case "${ARCH}" in
arm)
# Reduce the memory requirements for linking
- append-ldflags -Wl,--no-keep-memory -Wl,--reduce-memory-overheads
+ 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)
# Historically we have needed to add -fPIC manually for 64-bit.
@@ -219,7 +226,14 @@ mozconfig_init() {
ppc64)
append-flags -fPIC -mminimal-toc
# Reduce the memory requirements for linking
- append-ldflags -Wl,--no-keep-memory -Wl,--reduce-memory-overheads
+ 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
;;
esac
diff --git a/eclass/toolchain.eclass b/eclass/toolchain.eclass
index ef0d7ab1f999..0e44d922ebe6 100644
--- a/eclass/toolchain.eclass
+++ b/eclass/toolchain.eclass
@@ -1350,7 +1350,7 @@ toolchain_src_configure() {
addwrite /dev/zero
echo "${S}"/configure "${confgcc[@]}"
# Older gcc versions did not detect bash and re-exec itself, so force the
- # use of bash. Newer ones will auto-detect, but this is not harmeful.
+ # use of bash. Newer ones will auto-detect, but this is not harmful.
CONFIG_SHELL="${EPREFIX}/bin/bash" \
bash "${S}"/configure "${confgcc[@]}" || die "failed to run configure"
@@ -1507,6 +1507,8 @@ gcc_do_filter_flags() {
filter-flags -f{no-,}unit-at-a-time -f{no-,}web -mno-tls-direct-seg-refs
filter-flags -f{no-,}stack-protector{,-all}
filter-flags -fvisibility-inlines-hidden -fvisibility=hidden
+ # and warning options
+ filter-flags -Wextra -Wstack-protector
fi
if ! tc_version_is_at_least 4.1 ; then
filter-flags -fdiagnostics-show-option
@@ -1625,6 +1627,11 @@ toolchain_src_compile() {
[[ ! -x /usr/bin/perl ]] \
&& find "${WORKDIR}"/build -name '*.[17]' -exec touch {} +
+ # Older gcc versions did not detect bash and re-exec itself, so force the
+ # use of bash. Newer ones will auto-detect, but this is not harmful.
+ # This needs to be set for compile as well, as it's used in libtool
+ # generation, which will break install otherwise (at least in 3.3.6): #664486
+ CONFIG_SHELL="${EPREFIX}/bin/bash" \
gcc_do_make ${GCC_MAKE_TARGET}
}
diff --git a/eclass/xdg-utils.eclass b/eclass/xdg-utils.eclass
index 2c2d2324c2b7..fe1eef213ea4 100644
--- a/eclass/xdg-utils.eclass
+++ b/eclass/xdg-utils.eclass
@@ -6,7 +6,7 @@
# gnome@gentoo.org
# @AUTHOR:
# Original author: Gilles Dartiguelongue <eva@gentoo.org>
-# @SUPPORTED_EAPIS: 0 1 2 3 4 5 6
+# @SUPPORTED_EAPIS: 0 1 2 3 4 5 6 7
# @BLURB: Auxiliary functions commonly used by XDG compliant packages.
# @DESCRIPTION:
# This eclass provides a set of auxiliary functions needed by most XDG
@@ -16,7 +16,7 @@
# * XDG mime information database management
case "${EAPI:-0}" in
- 0|1|2|3|4|5|6) ;;
+ 0|1|2|3|4|5|6|7) ;;
*) die "EAPI=${EAPI} is not supported" ;;
esac
@@ -67,7 +67,7 @@ xdg_environment_reset() {
# Updates the .desktop files database.
# Generates a list of mimetypes linked to applications that can handle them
xdg_desktop_database_update() {
- local updater="${EROOT}${DESKTOP_DATABASE_UPDATE_BIN}"
+ local updater="${EROOT%/}${DESKTOP_DATABASE_UPDATE_BIN}"
if [[ ${EBUILD_PHASE} != post* ]] ; then
die "xdg_desktop_database_update must be used in pkg_post* phases."
@@ -79,7 +79,7 @@ xdg_desktop_database_update() {
fi
ebegin "Updating .desktop files database"
- "${updater}" -q "${EROOT}${DESKTOP_DATABASE_DIR}"
+ "${updater}" -q "${EROOT%/}${DESKTOP_DATABASE_DIR}"
eend $?
}
@@ -88,7 +88,7 @@ xdg_desktop_database_update() {
# Update the mime database.
# Creates a general list of mime types from several sources
xdg_mimeinfo_database_update() {
- local updater="${EROOT}${MIMEINFO_DATABASE_UPDATE_BIN}"
+ local updater="${EROOT%/}${MIMEINFO_DATABASE_UPDATE_BIN}"
if [[ ${EBUILD_PHASE} != post* ]] ; then
die "xdg_mimeinfo_database_update must be used in pkg_post* phases."
@@ -100,6 +100,6 @@ xdg_mimeinfo_database_update() {
fi
ebegin "Updating shared mime info database"
- "${updater}" "${EROOT}${MIMEINFO_DATABASE_DIR}"
+ "${updater}" "${EROOT%/}${MIMEINFO_DATABASE_DIR}"
eend $?
}