summaryrefslogtreecommitdiff
path: root/scripts
diff options
context:
space:
mode:
Diffstat (limited to 'scripts')
-rw-r--r--scripts/build/binutils/binutils.sh2
-rw-r--r--scripts/build/debug/300-gdb.sh2
-rw-r--r--scripts/crosstool-NG.sh23
3 files changed, 18 insertions, 9 deletions
diff --git a/scripts/build/binutils/binutils.sh b/scripts/build/binutils/binutils.sh
index 703a6fa..e8060ec 100644
--- a/scripts/build/binutils/binutils.sh
+++ b/scripts/build/binutils/binutils.sh
@@ -223,7 +223,7 @@ do_binutils_backend() {
sed -r -e "s/@@DEFAULT_LD@@/${CT_BINUTILS_LINKER_DEFAULT}/" \
"${CT_LIB_DIR}/scripts/build/binutils/binutils-ld.in" \
>"${prefix}/bin/${CT_TARGET}-ld"
- chmod +x "${prefix}/bin/${CT_TARGET}-ld"
+ chmod a+x "${prefix}/bin/${CT_TARGET}-ld"
cp -a "${prefix}/bin/${CT_TARGET}-ld" \
"${prefix}/${CT_TARGET}/bin/ld"
diff --git a/scripts/build/debug/300-gdb.sh b/scripts/build/debug/300-gdb.sh
index fe6ce79..c73e430 100644
--- a/scripts/build/debug/300-gdb.sh
+++ b/scripts/build/debug/300-gdb.sh
@@ -315,7 +315,7 @@ do_debug_gdb_build() {
# Workaround for bad versions, where the configure
# script for gdbserver is not executable...
# Bah, GNU folks strike again... :-(
- chmod +x "${gdb_src_dir}/gdb/gdbserver/configure"
+ chmod a+x "${gdb_src_dir}/gdb/gdbserver/configure"
gdbserver_extra_config=("${extra_config[@]}")
diff --git a/scripts/crosstool-NG.sh b/scripts/crosstool-NG.sh
index 486f733..fb6856e 100644
--- a/scripts/crosstool-NG.sh
+++ b/scripts/crosstool-NG.sh
@@ -74,6 +74,7 @@ for d in \
LOCAL_TARBALLS \
WORK \
PREFIX \
+ BUILD_TOP \
INSTALL \
; do
eval dir="\${CT_${d}_DIR}"
@@ -88,6 +89,17 @@ for d in \
CT_Abort "'CT_${d}_DIR'='${dir}' contains a comma in it.\nDon't use commas in paths, it breaks things."
;;
esac
+ case "${dir}" in
+ /*)
+ # Absolute path, okay
+ ;;
+ *)
+ # Relative path from CT_TOP_DIR, make absolute
+ eval CT_${d}_DIR="${CT_TOP_DIR}/${dir}"
+ # Having .. inside CT_PREFIX breaks relocatability.
+ CT_SanitizeVarDir CT_${d}_DIR
+ ;;
+ esac
done
# Where will we work?
@@ -304,20 +316,17 @@ CT_DoExecLog ALL mkdir -p "${CT_HOST_COMPLIBS_DIR}"
# Only create the state dir if asked for a restartable build
[ -n "${CT_DEBUG_CT_SAVE_STEPS}" ] && CT_DoExecLog ALL mkdir -p "${CT_STATE_DIR}"
+# Kludge: CT_PREFIX_DIR might have grown read-only if
+# the previous build was successful.
+CT_DoExecLog ALL chmod -R u+w "${CT_PREFIX_DIR}"
+
# Check install file system case-sensitiveness
CT_DoExecLog DEBUG touch "${CT_PREFIX_DIR}/foo"
CT_TestAndAbort "Your file system in '${CT_PREFIX_DIR}' is *not* case-sensitive!" -f "${CT_PREFIX_DIR}/FOO"
CT_DoExecLog DEBUG rm -f "${CT_PREFIX_DIR}/foo"
-# Kludge: CT_PREFIX_DIR might have grown read-only if
-# the previous build was successful.
-CT_DoExecLog ALL chmod -R u+w "${CT_PREFIX_DIR}"
-
# Setting up the rest of the environment only if not restarting
if [ -z "${CT_RESTART}" ]; then
- # Having .. inside CT_PREFIX breaks relocatability.
- CT_SanitizeVarDir CT_PREFIX_DIR
-
case "${CT_SYSROOT_NAME}" in
"") CT_SYSROOT_NAME="sysroot";;
.) CT_Abort "Sysroot name is set to '.' which is forbidden";;