summaryrefslogtreecommitdiff
path: root/eclass/meson.eclass
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2018-05-29 03:22:09 +0100
committerV3n3RiX <venerix@redcorelinux.org>2018-05-29 03:22:09 +0100
commitd4bd6695641f6d2ec7ff8681913d304e995902f5 (patch)
tree6ec8d4c38152bb4f2bb4b93277236ebd9fbbd21d /eclass/meson.eclass
parent22910f5d14da606bd7f06e19a2f61c5d1a8fc94b (diff)
gentoo resync : 29.05.2018
Diffstat (limited to 'eclass/meson.eclass')
-rw-r--r--eclass/meson.eclass42
1 files changed, 7 insertions, 35 deletions
diff --git a/eclass/meson.eclass b/eclass/meson.eclass
index d15e3ff58795..576e9b428643 100644
--- a/eclass/meson.eclass
+++ b/eclass/meson.eclass
@@ -159,11 +159,14 @@ _meson_create_cross_file() {
cat > "${T}/meson.${CHOST}" <<-EOF
[binaries]
- ar = '$(tc-getAR)'
- c = '$(tc-getCC)'
- cpp = '$(tc-getCXX)'
+ ar = $(_meson_env_array "$(tc-getAR)")
+ c = $(_meson_env_array "$(tc-getCC)")
+ cpp = $(_meson_env_array "$(tc-getCXX)")
+ fortran = $(_meson_env_array "$(tc-getFC)")
+ objc = $(_meson_env_array "$(tc-getPROG OBJC cc)")
+ objcpp = $(_meson_env_array "$(tc-getPROG OBJCXX c++)")
pkgconfig = '$(tc-getPKG_CONFIG)'
- strip = '$(tc-getSTRIP)'
+ strip = $(_meson_env_array "$(tc-getSTRIP)")
[properties]
c_args = $(_meson_env_array "${CFLAGS} ${CPPFLAGS}")
@@ -198,25 +201,6 @@ meson_use() {
usex "$1" "-D${2-$1}=true" "-D${2-$1}=false"
}
-# @FUNCTION: _meson_move_flags
-# @INTERNAL
-# @USAGE: PROG FLAGS
-# @DESCRIPTION:
-# Moves extra arguments from PROG to FLAGS.
-# For example:
-# CC="gcc -m32" -> CC="gcc" CFLAGS="-m32"
-_meson_move_flags() {
- local prog=${1}
- local flags=${2}
- local x=( ${!prog} )
- if [[ -n ${x[0]} ]]; then
- export ${prog}=${x[0]}
- fi
- if [[ -n ${x[1]} ]]; then
- export ${flags}="${x[@]:1}${!flags:+ }${!flags}"
- fi
-}
-
# @FUNCTION: meson_src_configure
# @DESCRIPTION:
# This is the meson_src_configure function.
@@ -233,18 +217,6 @@ meson_src_configure() {
--wrap-mode nodownload
)
- # Prevent multilib flags from leaking across ABIs
- local -x BUILD_CFLAGS=${BUILD_CFLAGS}
- local -x BUILD_CXXFLAGS=${BUILD_CXXFLAGS}
-
- # Move multilib flags from CC to CFLAGS
- local -x CC=$(tc-getCC) CFLAGS=${CFLAGS}
- _meson_move_flags CC CFLAGS
-
- # Move multilib flags from CXX to CXXFLAGS
- local -x CXX=$(tc-getCXX) CXXFLAGS=${CXXFLAGS}
- _meson_move_flags CXX CXXFLAGS
-
if tc-is-cross-compiler; then
_meson_create_cross_file || die "unable to write meson cross file"
mesonargs+=( --cross-file "${T}/meson.${CHOST}" )