summaryrefslogtreecommitdiff
path: root/scripts
diff options
context:
space:
mode:
authorAlexey Neyman <stilor@att.net>2018-12-07 05:01:45 (GMT)
committerAlexey Neyman <stilor@att.net>2018-12-07 08:03:04 (GMT)
commit9d2a5f8413d397d189e67c80b7ebab2bd30d42ac (patch)
tree29282111f551bb31c0a112c8391b5b44f9859337 /scripts
parentf8874f447e40852d33d65c1f443a90b0760901df (diff)
Set ALL_TARGET_CFLAGS initially for !MULTILIB
Fixes #1107. Signed-off-by: Alexey Neyman <stilor@att.net>
Diffstat (limited to 'scripts')
-rw-r--r--scripts/build/cc/gcc.sh44
-rw-r--r--scripts/functions9
2 files changed, 29 insertions, 24 deletions
diff --git a/scripts/build/cc/gcc.sh b/scripts/build/cc/gcc.sh
index 7aceee3..5132444 100644
--- a/scripts/build/cc/gcc.sh
+++ b/scripts/build/cc/gcc.sh
@@ -158,29 +158,31 @@ cc_gcc_multilib_housekeeping() {
CT_IterateMultilibs evaluate_multilib_cflags evaluate_cflags
- # Filtering out some of the options provided in CT-NG config. Then *prepend*
- # them to CT_TARGET_CFLAGS, like scripts/crosstool-NG.sh does. Zero out
- # the stashed MULTILIB flags so that we don't process them again in the passes
- # that follow.
- CT_DoLog DEBUG "Configured target CFLAGS: '${CT_ARCH_TARGET_CFLAGS_MULTILIB}'"
- ml_unknown= # Pass through anything we don't know about
- for f in ${CT_ARCH_TARGET_CFLAGS_MULTILIB}; do
- eval ml=\$ml_`cc_gcc_classify_opt ${f}`
- if [ "${ml}" != "seen" ]; then
- new_cflags="${new_cflags} ${f}"
+ if [ -n "${CT_MULTILIB}" ]; then
+ # Filtering out some of the options provided in CT-NG config. Then *prepend*
+ # them to CT_TARGET_CFLAGS, like scripts/crosstool-NG.sh does. Zero out
+ # the stashed MULTILIB flags so that we don't process them again in the passes
+ # that follow.
+ CT_DoLog DEBUG "Configured target CFLAGS: '${CT_ARCH_TARGET_CFLAGS_MULTILIB}'"
+ ml_unknown= # Pass through anything we don't know about
+ for f in ${CT_ARCH_TARGET_CFLAGS_MULTILIB}; do
+ eval ml=\$ml_`cc_gcc_classify_opt ${f}`
+ if [ "${ml}" != "seen" ]; then
+ new_cflags="${new_cflags} ${f}"
+ fi
+ done
+ CT_DoLog DEBUG "Filtered target CFLAGS: '${new_cflags}'"
+ CT_EnvModify CT_ALL_TARGET_CFLAGS "${new_cflags} ${CT_TARGET_CFLAGS}"
+ CT_EnvModify CT_ARCH_TARGET_CFLAGS_MULTILIB ""
+
+ # Currently, the only LDFLAGS are endianness-related
+ CT_DoLog DEBUG "Configured target LDFLAGS: '${CT_ARCH_TARGET_LDFLAGS_MULTILIB}'"
+ if [ "${ml_endian}" != "seen" ]; then
+ CT_EnvModify CT_ALL_TARGET_LDFLAGS "${CT_ARCH_TARGET_LDFLAGS_MULTILIB} ${CT_TARGET_LDFLAGS}"
+ CT_EnvModify CT_ARCH_TARGET_LDFLAGS_MULTILIB ""
fi
- done
- CT_DoLog DEBUG "Filtered target CFLAGS: '${new_cflags}'"
- CT_EnvModify CT_ALL_TARGET_CFLAGS "${new_cflags} ${CT_TARGET_CFLAGS}"
- CT_EnvModify CT_ARCH_TARGET_CFLAGS_MULTILIB ""
-
- # Currently, the only LDFLAGS are endianness-related
- CT_DoLog DEBUG "Configured target LDFLAGS: '${CT_ARCH_TARGET_LDFLAGS_MULTILIB}'"
- if [ "${ml_endian}" != "seen" ]; then
- CT_EnvModify CT_ALL_TARGET_LDFLAGS "${CT_ARCH_TARGET_LDFLAGS_MULTILIB} ${CT_TARGET_LDFLAGS}"
- CT_EnvModify CT_ARCH_TARGET_LDFLAGS_MULTILIB ""
+ CT_DoLog DEBUG "Filtered target LDFLAGS: '${CT_ARCH_TARGET_LDFLAGS_MULTILIB}'"
fi
- CT_DoLog DEBUG "Filtered target LDFLAGS: '${CT_ARCH_TARGET_LDFLAGS_MULTILIB}'"
}
#------------------------------------------------------------------------------
diff --git a/scripts/functions b/scripts/functions
index e93618c..affb10a 100644
--- a/scripts/functions
+++ b/scripts/functions
@@ -1189,11 +1189,14 @@ CT_DoBuildTargetTuple() {
# Instead, save them into a different variable here. Then, after the first
# core pass, we'll know which of them vary with multilibs (i.e. must be
# filtered out).
- if [ "${CT_MULTILIB}" = "y" ]; then
+ if [ -n "${CT_MULTILIB}" ]; then
CT_ARCH_TARGET_CFLAGS_MULTILIB="${CT_ARCH_TARGET_CFLAGS}"
CT_ARCH_TARGET_CFLAGS=
CT_ARCH_TARGET_LDFLAGS_MULTILIB="${CT_ARCH_TARGET_LDFLAGS}"
CT_ARCH_TARGET_LDFLAGS=
+ else
+ CT_ALL_TARGET_CFLAGS="${CT_ARCH_TARGET_CFLAGS} ${CT_TARGET_CFLAGS}"
+ CT_ALL_TARGET_LDFLAGS="${CT_ARCH_TARGET_LDFLAGS} ${CT_TARGET_LDFLAGS}"
fi
}
@@ -1990,7 +1993,7 @@ CT_PackageRun()
src_release mirrors archive_filename archive_dirname archive_formats signature_format \
src_devel devel_vcs devel_url devel_branch devel_revision devel_subdir devel_bootstrap \
src_custom custom_location patch_order; do
- CT_DoLog DEBUG "Package iterator: set ${v}=\${CT_${use}_${v^^}}"
+ eval "CT_DoLog DEBUG \"Package iterator: set ${v}='\${CT_${use}_${v^^}}'\""
eval "local ${v}=\${CT_${use}_${v^^}}"
done
@@ -2015,7 +2018,7 @@ CT_PackageRun()
for v in devel_branch devel_revision basename src_dir pkg_dir; do
eval "[ \"\${${v}}\" != \"\${CT_${use}_${v^^}}\" ] || continue"
eval "CT_${use}_${v^^}=\${${v}}"
- eval "CT_DoLog DEBUG \"Override CT_${use}_${v^^}=\${CT_${use}_${v^^}}\""
+ eval "CT_DoLog DEBUG \"Package iterator: override CT_${use}_${v^^}=\${CT_${use}_${v^^}}\""
done
}