aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGregory M. Tuner <gmt@be-evil.net>2013-11-26 16:23:01 -0800
committerGregory M. Tuner <gmt@be-evil.net>2013-11-26 16:23:08 -0800
commita84e2cf5c805a5485c806a25eb08caaef0110168 (patch)
treeac21e07b3e280750be10896043ef8458acc6ac00 /eclass/waf-utils-multilib.eclass
parentmultilib-build.eclass: Add multilib_tc_export feature (diff)
downloadgmt-a84e2cf5c805a5485c806a25eb08caaef0110168.tar.gz
gmt-a84e2cf5c805a5485c806a25eb08caaef0110168.tar.bz2
gmt-a84e2cf5c805a5485c806a25eb08caaef0110168.zip
waf-utils-multilib.eclass: use multilib_tc_export
Running tc_export on vars like "CC" was clobbering the settings put in there by multilib-build.eclass. Use the shiny new multilib_tc_export wrapper to prevent this. Signed-off-by: Gregory M. Tuner <gmt@be-evil.net>
Diffstat (limited to 'eclass/waf-utils-multilib.eclass')
-rw-r--r--eclass/waf-utils-multilib.eclass37
1 files changed, 11 insertions, 26 deletions
diff --git a/eclass/waf-utils-multilib.eclass b/eclass/waf-utils-multilib.eclass
index 9c5d2aa..5c8302f 100644
--- a/eclass/waf-utils-multilib.eclass
+++ b/eclass/waf-utils-multilib.eclass
@@ -41,10 +41,11 @@ waf-utils-multilib_src_configure() {
debug-print-function ${FUNCNAME} "$@"
multilib_copy_sources
- multilib_parallel_foreach_abi run_in_build_dir _waf-utils-multilib-perabi_src_configure "$@"
+ multilib_parallel_foreach_abi run_in_build_dir _in_waf_utils_multilib_env \
+ _waf-utils-multilib-perabi_src_configure "$@"
}
-_waf-utils-multilib-perabi_src_configure() {
+_in_waf_utils_multilib_env() {
debug-print-function ${FUNCNAME} "$@"
local S="${BUILD_DIR}"
@@ -78,9 +79,12 @@ _waf-utils-multilib-perabi_src_configure() {
# python libraries being used... whisper the truth as a countermeasure....
multilib_is_native_abi || local LDFLAGS="-L${EPREFIX}/usr/$(get_libdir)${LDFLAGS+ }${LDFLAGS}"
- local AR CC CPP CXX RANLIB
+ MULTILIB_TC_EXPORT_VARS="AR CC CPP CXX RANLIB" multilib_tc_export "$@"
+}
+
+_waf-utils-multilib-perabi_src_configure() {
+ debug-print-function ${FUNCNAME} "$@"
- tc-export AR CC CPP CXX RANLIB
echo "CCFLAGS=\"${CFLAGS}\" LINKFLAGS=\"${LDFLAGS}\" \"${WAF_BINARY}\" --prefix=${EPREFIX}/usr ${libdir} $@ configure"
# This condition is required because waf takes even whitespace as function
@@ -104,22 +108,13 @@ _waf-utils-multilib-perabi_src_configure() {
# General function for compiling with waf.
waf-utils-multilib_src_compile() {
debug-print-function ${FUNCNAME} "$@"
- multilib_parallel_foreach_abi run_in_build_dir _waf-utils-multilib-perabi_src_compile "$@"
+ multilib_parallel_foreach_abi run_in_build_dir _in_waf_utils_multilib_env \
+ _waf-utils-multilib-perabi_src_compile "$@"
}
_waf-utils-multilib-perabi_src_compile() {
debug-print-function ${FUNCNAME} "$@"
- local S="${BUILD_DIR}"
- if [[ ${WAF_BINARY_REL} ]] ; then
- local WAF_BINARY="${S}/${WAF_BINARY_REL}"
- else
- local WAF_BINARY="${S}/waf"
- fi
- multilib_is_native_abi || local LDFLAGS="-L${EPREFIX}/usr/$(get_libdir)${LDFLAGS+ }${LDFLAGS}"
- local AR CC CPP CXX RANLIB
- tc-export AR CC CPP CXX RANLIB
-
local _mywafconfig
[[ "${WAF_VERBOSE}" ]] && _mywafconfig="--verbose"
@@ -135,7 +130,7 @@ waf-utils-multilib_src_install() {
debug-print-function ${FUNCNAME} "$@"
_waf-utils-multilib_secure_install() {
debug-print-function ${FUNCNAME} "$@"
- _waf-utils-multilib-perabi_src_install "$@"
+ _in_waf_utils_multilib_env _waf-utils-multilib-perabi_src_install "$@"
# Do multilib magic only when >1 ABI is used.
if [[ ${#MULTIBUILD_VARIANTS[@]} -gt 1 ]]; then
multilib_prepare_wrappers
@@ -151,16 +146,6 @@ waf-utils-multilib_src_install() {
_waf-utils-multilib-perabi_src_install() {
debug-print-function ${FUNCNAME} "$@"
- local S="${BUILD_DIR}"
- if [[ ${WAF_BINARY_REL} ]] ; then
- local WAF_BINARY="${S}/${WAF_BINARY_REL}"
- else
- local WAF_BINARY="${S}/waf"
- fi
- multilib_is_native_abi || local LDFLAGS="-L${EPREFIX}/usr/$(get_libdir)${LDFLAGS+ }${LDFLAGS}"
- local AR CC CPP CXX RANLIB
- tc-export AR CC CPP CXX RANLIB
-
echo "\"${WAF_BINARY}\" --destdir=\"${D}\" install"
"${WAF_BINARY}" --destdir="${D}" install || die "Make install failed"