mirror of
https://github.com/crosstool-ng/crosstool-ng.git
synced 2024-12-18 20:37:56 +00:00
Require GNU sed
After much struggling with macos (BSD) sed and even getting everything work in crosstool-ng itself, I had to abandon that because some components rely on GNU syntax. Specifically, GNU libc uses '/.../{H;g}' (note absense of the separator after 'g'). So, revert the -r/-E detection and check for sed's being of GNU origin. MacOS people, sorry, but you'd have to install GNU sed. Signed-off-by: Alexey Neyman <stilor@att.net>
This commit is contained in:
parent
59bab98b2d
commit
2dae1cf816
35
Makefile.in
35
Makefile.in
@ -204,41 +204,18 @@ $(PROG_NAME): ct-ng.in Makefile
|
|||||||
%: %.in Makefile
|
%: %.in Makefile
|
||||||
$(call sed_it)
|
$(call sed_it)
|
||||||
|
|
||||||
|
__paths_vars = install bash awk grep make sed libtool \
|
||||||
|
libtoolize objcopy objdump readelf patch gperf
|
||||||
|
|
||||||
# We create a script fragment that is parseable from inside a Makefile,
|
# We create a script fragment that is parseable from inside a Makefile,
|
||||||
# and one from inside a shell script
|
# and one from inside a shell script.
|
||||||
paths.mk: FORCE
|
paths.mk: FORCE
|
||||||
@echo " GEN '$@'"
|
@echo " GEN '$@'"
|
||||||
@(echo 'export install=$(install)'; \
|
@{ $(foreach w,$(__paths_vars),$(if $($w),echo 'export $w=$(subst ','\'',$($w))';)) :; } >$@
|
||||||
echo 'export bash=$(bash)'; \
|
|
||||||
echo 'export awk=$(awk)'; \
|
|
||||||
echo 'export grep=$(grep)'; \
|
|
||||||
echo 'export make=$(make)'; \
|
|
||||||
echo 'export sed=$(sed)'; \
|
|
||||||
echo 'export libtool=$(libtool)'; \
|
|
||||||
echo 'export libtoolize=$(libtoolize)'; \
|
|
||||||
echo 'export objcopy=$(objcopy)'; \
|
|
||||||
echo 'export objdump=$(objdump)'; \
|
|
||||||
echo 'export readelf=$(readelf)'; \
|
|
||||||
echo 'export patch=$(patch)'; \
|
|
||||||
echo 'export gperf=$(gperf)'; \
|
|
||||||
) >$@
|
|
||||||
|
|
||||||
paths.sh: FORCE
|
paths.sh: FORCE
|
||||||
@echo " GEN '$@'"
|
@echo " GEN '$@'"
|
||||||
@(echo 'export install="$(install)"'; \
|
@{ $(foreach w,$(__paths_vars),$(if $($w),echo 'export $w="$(subst ','\'',$($w))"';)) :; } >$@
|
||||||
echo 'export bash="$(bash)"'; \
|
|
||||||
echo 'export awk="$(awk)"'; \
|
|
||||||
echo 'export grep="$(grep)"'; \
|
|
||||||
echo 'export make="$(make)"'; \
|
|
||||||
echo 'export sed="$(sed)"'; \
|
|
||||||
echo 'export libtool="$(libtool)"'; \
|
|
||||||
echo 'export libtoolize="$(libtoolize)"'; \
|
|
||||||
echo 'export objcopy="$(objcopy)"'; \
|
|
||||||
echo 'export objdump="$(objdump)"'; \
|
|
||||||
echo 'export readelf="$(readelf)"'; \
|
|
||||||
echo 'export patch="$(patch)"'; \
|
|
||||||
echo 'export gperf="$(gperf)"'; \
|
|
||||||
) >$@
|
|
||||||
|
|
||||||
config/configure.in: FORCE
|
config/configure.in: FORCE
|
||||||
@echo " GEN '$@'"
|
@echo " GEN '$@'"
|
||||||
|
32
configure.ac
32
configure.ac
@ -162,24 +162,18 @@ AC_ARG_VAR([INSTALL], [Specify the full path to a BSD-compatible install])
|
|||||||
AC_PROG_INSTALL
|
AC_PROG_INSTALL
|
||||||
|
|
||||||
ACX_WITH_DEPRECATED([grep], [GREP])
|
ACX_WITH_DEPRECATED([grep], [GREP])
|
||||||
AC_ARG_VAR([INSTALL], [Specify the full path to GNU grep])
|
AC_ARG_VAR([GREP], [Specify the full path to GNU grep])
|
||||||
AC_PROG_GREP
|
AC_PROG_GREP
|
||||||
AC_PROG_EGREP
|
AC_PROG_EGREP
|
||||||
AS_IF([test "$EGREP" != "$GREP -E"],
|
AS_IF([test "$EGREP" != "$GREP -E"],
|
||||||
[AC_MSG_ERROR([egrep is not $GREP -E])])
|
[AC_MSG_ERROR([egrep is not $GREP -E])])
|
||||||
|
|
||||||
ACX_WITH_DEPRECATED([sed], [SED])
|
ACX_PROG_VERSION_REQ_STRICT([SED],
|
||||||
AC_ARG_VAR([INSTALL], [Specify the full path to GNU sed])
|
[GNU sed >= 4.0],
|
||||||
AC_PROG_SED
|
[sed],
|
||||||
AC_MSG_CHECKING([whether sed understands -r -i -e])
|
[gsed sed],
|
||||||
echo foo > .ct-ng.sed.test
|
['\(GNU sed\) [4-9]\.'])
|
||||||
${SED} -r -i -e 's/f(o)o/b\1ar/' .ct-ng.sed.test >/dev/null 2>&1
|
AC_ARG_VAR([SED], [Specify the full path to GNU sed])
|
||||||
rc=$?
|
|
||||||
content=`cat .ct-ng.sed.test`
|
|
||||||
rm -f .ct-ng.sed.test
|
|
||||||
AS_IF([test "$rc:$content" = "0:boar"],
|
|
||||||
[AC_MSG_RESULT([yes])],
|
|
||||||
[AC_MSG_ERROR([sed does not accept -r -i -e])])
|
|
||||||
|
|
||||||
AC_PROG_LN_S
|
AC_PROG_LN_S
|
||||||
|
|
||||||
@ -294,42 +288,42 @@ ACX_PROG_VERSION([LIBTOOL],
|
|||||||
[GNU libtool >= 2.4],
|
[GNU libtool >= 2.4],
|
||||||
[libtool],
|
[libtool],
|
||||||
[glibtool libtool],
|
[glibtool libtool],
|
||||||
['^libtool \(GNU libtool\) ([3-9]\.|2.[4-9]|2.[1-3][0-9])'],
|
['\(GNU libtool\) ([3-9]\.|2.[4-9]|2.[1-3][0-9])'],
|
||||||
[libtool_2_4_or_newer])
|
[libtool_2_4_or_newer])
|
||||||
|
|
||||||
ACX_PROG_VERSION([LIBTOOLIZE],
|
ACX_PROG_VERSION([LIBTOOLIZE],
|
||||||
[GNU libtoolize >= 2.4],
|
[GNU libtoolize >= 2.4],
|
||||||
[libtoolize],
|
[libtoolize],
|
||||||
[glibtoolize libtoolize],
|
[glibtoolize libtoolize],
|
||||||
['^libtoolize \(GNU libtool\) ([3-9]\.|2.[4-9]|2.[1-3][0-9])'],
|
['\(GNU libtool\) ([3-9]\.|2.[4-9]|2.[1-3][0-9])'],
|
||||||
[libtoolize_2_4_or_newer])
|
[libtoolize_2_4_or_newer])
|
||||||
|
|
||||||
ACX_PROG_VERSION([AUTOCONF],
|
ACX_PROG_VERSION([AUTOCONF],
|
||||||
[GNU autoconf >= 2.65],
|
[GNU autoconf >= 2.65],
|
||||||
[AUTOCONF],
|
[AUTOCONF],
|
||||||
[autoconf],
|
[autoconf],
|
||||||
['^autoconf \(GNU Autoconf\) ([3-9]\.|2\.[7-9][0-9]|2\.6[5-9])'],
|
['\(GNU Autoconf\) ([3-9]\.|2\.[7-9][0-9]|2\.6[5-9])'],
|
||||||
[autoconf_2_63_or_newer])
|
[autoconf_2_63_or_newer])
|
||||||
|
|
||||||
ACX_PROG_VERSION([AUTORECONF],
|
ACX_PROG_VERSION([AUTORECONF],
|
||||||
[GNU autoreconf >= 2.63],
|
[GNU autoreconf >= 2.63],
|
||||||
[autoreconf],
|
[autoreconf],
|
||||||
[autoreconf],
|
[autoreconf],
|
||||||
['^autoreconf \(GNU Autoconf\) ([3-9]\.|2\.[7-9][0-9]|2\.6[3-9])'],
|
['\(GNU Autoconf\) ([3-9]\.|2\.[7-9][0-9]|2\.6[3-9])'],
|
||||||
[autoreconf_2_63_or_newer])
|
[autoreconf_2_63_or_newer])
|
||||||
|
|
||||||
ACX_PROG_VERSION([AUTOMAKE],
|
ACX_PROG_VERSION([AUTOMAKE],
|
||||||
[GNU automake >= 1.15],
|
[GNU automake >= 1.15],
|
||||||
[automake],
|
[automake],
|
||||||
[automake],
|
[automake],
|
||||||
['automake \(GNU automake\) ([2-9]\.|1\.[2-9][0-9]|1\.1[5-9])'],
|
['\(GNU automake\) ([2-9]\.|1\.[2-9][0-9]|1\.1[5-9])'],
|
||||||
[automake_1_15_or_newer])
|
[automake_1_15_or_newer])
|
||||||
|
|
||||||
ACX_PROG_VERSION([M4],
|
ACX_PROG_VERSION([M4],
|
||||||
[GNU m4 >= 1.4.12],
|
[GNU m4 >= 1.4.12],
|
||||||
[m4],
|
[m4],
|
||||||
[gm4 m4],
|
[gm4 m4],
|
||||||
['^m4 \(GNU M4\) ([2-9]\.|1\.[5-9]|1\.[1-4][0-9]|1\.4\.[2-9][0-9]|1\.4\.1[2-9])'],
|
['\(GNU M4\) ([2-9]\.|1\.[5-9]|1\.[1-4][0-9]|1\.4\.[2-9][0-9]|1\.4\.1[2-9])'],
|
||||||
[gnu_m4_1_4_12_or_newer])
|
[gnu_m4_1_4_12_or_newer])
|
||||||
|
|
||||||
#----------------------------------------
|
#----------------------------------------
|
||||||
|
@ -41,28 +41,6 @@ do_mpfr_extract() {
|
|||||||
fi
|
fi
|
||||||
CT_Popd
|
CT_Popd
|
||||||
;;
|
;;
|
||||||
1.*|2.0.*|2.1.*|2.2.*|2.3.*)
|
|
||||||
CT_Pushd "${CT_SRC_DIR}/mpfr-${CT_MPFR_VERSION}"
|
|
||||||
if [ ! -f .autotools.ct-ng ]; then
|
|
||||||
CT_DoLog DEBUG "Re-building autotools files"
|
|
||||||
CT_DoExecLog ALL autoreconf -fi
|
|
||||||
# Starting with libtool-1.9f, config.{guess,sub} are no longer
|
|
||||||
# installed without -i, but starting with libtool-2.2.6, they
|
|
||||||
# are no longer removed without -i. Sight... Just use -i with
|
|
||||||
# libtool >=2
|
|
||||||
# See: http://sourceware.org/ml/crossgcc/2008-11/msg00046.html
|
|
||||||
# and: http://sourceware.org/ml/crossgcc/2008-11/msg00048.html
|
|
||||||
libtoolize_opt=
|
|
||||||
case "$(libtoolize --version |head -n 1 |awk '{ print $(NF); }')" in
|
|
||||||
0.*) ;;
|
|
||||||
1.*) ;;
|
|
||||||
*) libtoolize_opt=-i;;
|
|
||||||
esac
|
|
||||||
CT_DoExecLog ALL libtoolize -f ${libtoolize_opt}
|
|
||||||
touch .autotools.ct-ng
|
|
||||||
fi
|
|
||||||
CT_Popd
|
|
||||||
;;
|
|
||||||
esac
|
esac
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -148,7 +148,7 @@ CT_DoLog INFO "Building environment variables"
|
|||||||
CT_TestAndAbort "'CT_PREFIX_DIR' is not set: where should I install?" -z "${CT_PREFIX_DIR}"
|
CT_TestAndAbort "'CT_PREFIX_DIR' is not set: where should I install?" -z "${CT_PREFIX_DIR}"
|
||||||
|
|
||||||
# Avoid multiple '/' in the prefix dir, it breaks relocatability
|
# Avoid multiple '/' in the prefix dir, it breaks relocatability
|
||||||
CT_PREFIX_DIR="$( "${sed}" -r -e 's:/+:/:g; s:/*$::;' <<<"${CT_PREFIX_DIR}" )"
|
CT_PREFIX_DIR="$( ${sed} -r -e 's:/+:/:g; s:/*$::;' <<<"${CT_PREFIX_DIR}" )"
|
||||||
|
|
||||||
# Second kludge: merge user-supplied target CFLAGS with architecture-provided
|
# Second kludge: merge user-supplied target CFLAGS with architecture-provided
|
||||||
# target CFLAGS. Do the same for LDFLAGS in case it happens in the future.
|
# target CFLAGS. Do the same for LDFLAGS in case it happens in the future.
|
||||||
|
@ -49,7 +49,7 @@ CT_LoadConfig() {
|
|||||||
fi
|
fi
|
||||||
# Double eval: first eval substitutes option name, second eval unescapes quotes
|
# Double eval: first eval substitutes option name, second eval unescapes quotes
|
||||||
# and whitespace.
|
# and whitespace.
|
||||||
for o in `set | sed -rn 's/^(CT_[A-Za-z0-9_]*_ARRAY)=.*/\1/p'`; do
|
for o in `set | ${sed} -rn 's/^(CT_[A-Za-z0-9_]*_ARRAY)=.*/\1/p'`; do
|
||||||
eval "eval $o=(\"\$$o\")"
|
eval "eval $o=(\"\$$o\")"
|
||||||
done
|
done
|
||||||
}
|
}
|
||||||
@ -394,7 +394,7 @@ CT_SanitizeVarDir() {
|
|||||||
|
|
||||||
for var in "$@"; do
|
for var in "$@"; do
|
||||||
eval "old_dir=\"\${${var}}\""
|
eval "old_dir=\"\${${var}}\""
|
||||||
new_dir=$( echo "${old_dir}" | awk '
|
new_dir=$( echo "${old_dir}" | ${awk} '
|
||||||
{
|
{
|
||||||
isabs = $1 == "" # Started with a slash
|
isabs = $1 == "" # Started with a slash
|
||||||
trail = $NF == "" # Ending with a slash
|
trail = $NF == "" # Ending with a slash
|
||||||
@ -491,7 +491,7 @@ CT_Which() {
|
|||||||
# to the highest entire second
|
# to the highest entire second
|
||||||
# Usage: CT_DoDate <fmt>
|
# Usage: CT_DoDate <fmt>
|
||||||
CT_DoDate() {
|
CT_DoDate() {
|
||||||
date "$1" |sed -r -e 's/%?N$/000000000/;'
|
date "$1" |${sed} -r -e 's/%?N$/000000000/;'
|
||||||
}
|
}
|
||||||
|
|
||||||
CT_STEP_COUNT=1
|
CT_STEP_COUNT=1
|
||||||
@ -514,7 +514,7 @@ CT_DoStep() {
|
|||||||
CT_EndStep() {
|
CT_EndStep() {
|
||||||
local stop=$(CT_DoDate +%s%N)
|
local stop=$(CT_DoDate +%s%N)
|
||||||
local duration=$(printf "%032d" $((stop-${CT_STEP_START[${CT_STEP_COUNT}]})) \
|
local duration=$(printf "%032d" $((stop-${CT_STEP_START[${CT_STEP_COUNT}]})) \
|
||||||
|sed -r -e 's/([[:digit:]]{2})[[:digit:]]{7}$/\.\1/; s/^0+//; s/^\./0\./;'
|
|${sed} -r -e 's/([[:digit:]]{2})[[:digit:]]{7}$/\.\1/; s/^0+//; s/^\./0\./;'
|
||||||
)
|
)
|
||||||
local elapsed=$(printf "%02d:%02d" $((SECONDS/60)) $((SECONDS%60)))
|
local elapsed=$(printf "%02d:%02d" $((SECONDS/60)) $((SECONDS%60)))
|
||||||
local level="${CT_STEP_LEVEL[${CT_STEP_COUNT}]}"
|
local level="${CT_STEP_LEVEL[${CT_STEP_COUNT}]}"
|
||||||
@ -1002,7 +1002,7 @@ CT_GetGit() {
|
|||||||
local url="${3}"
|
local url="${3}"
|
||||||
local _out_cset="${4}"
|
local _out_cset="${4}"
|
||||||
|
|
||||||
local ref=$(echo "${cset_or_ref}" | sed -n 's/^ref=\(.*\)/\1/p')
|
local ref=$(echo "${cset_or_ref}" | ${sed} -n 's/^ref=\(.*\)/\1/p')
|
||||||
if [ -n "$ref" ]; then
|
if [ -n "$ref" ]; then
|
||||||
local matches=$(git ls-remote --exit-code "$url" --refs "${ref}")
|
local matches=$(git ls-remote --exit-code "$url" --refs "${ref}")
|
||||||
local result=$?
|
local result=$?
|
||||||
@ -1182,9 +1182,9 @@ CT_ExtractGit() {
|
|||||||
if [ -z "${ref}" ]; then
|
if [ -z "${ref}" ]; then
|
||||||
ref_type=head
|
ref_type=head
|
||||||
ref=$(git rev-list -n1 HEAD)
|
ref=$(git rev-list -n1 HEAD)
|
||||||
elif git tag |grep -E "^${ref}$" >/dev/null 2>&1; then
|
elif git tag |{grep} -E "^${ref}$" >/dev/null 2>&1; then
|
||||||
ref_type=tag
|
ref_type=tag
|
||||||
elif git branch -a --no-color |grep -E "^. ${ref}$" >/dev/null 2>&1; then
|
elif git branch -a --no-color |${grep} -E "^. ${ref}$" >/dev/null 2>&1; then
|
||||||
ref_type=branch
|
ref_type=branch
|
||||||
elif date -d "${ref}" >/dev/null 2>&1; then
|
elif date -d "${ref}" >/dev/null 2>&1; then
|
||||||
ref_type=date
|
ref_type=date
|
||||||
@ -1425,7 +1425,7 @@ CT_DoBuildTargetTuple() {
|
|||||||
# Sanity checks
|
# Sanity checks
|
||||||
__sed_alias=""
|
__sed_alias=""
|
||||||
if [ -n "${CT_TARGET_ALIAS_SED_EXPR}" ]; then
|
if [ -n "${CT_TARGET_ALIAS_SED_EXPR}" ]; then
|
||||||
__sed_alias=$(echo "${CT_TARGET}" |sed -r -e "${CT_TARGET_ALIAS_SED_EXPR}")
|
__sed_alias=$(echo "${CT_TARGET}" |${sed} -r -e "${CT_TARGET_ALIAS_SED_EXPR}")
|
||||||
fi
|
fi
|
||||||
case ":${CT_TARGET_VENDOR}:${CT_TARGET_ALIAS}:${__sed_alias}:" in
|
case ":${CT_TARGET_VENDOR}:${CT_TARGET_ALIAS}:${__sed_alias}:" in
|
||||||
:*" "*:*:*:) CT_Abort "Don't use spaces in the vendor string, it breaks things.";;
|
:*" "*:*:*:) CT_Abort "Don't use spaces in the vendor string, it breaks things.";;
|
||||||
@ -1498,7 +1498,7 @@ CT_DoTarballIfExists() {
|
|||||||
CT_DoLog DEBUG " Saving '${dir}'"
|
CT_DoLog DEBUG " Saving '${dir}'"
|
||||||
{ tar c -C "${dir}" -v -f - "${extra_tar_opts[@]}" . \
|
{ tar c -C "${dir}" -v -f - "${extra_tar_opts[@]}" . \
|
||||||
|"${compress[@]}" >"${tarball}.tar${tar_ext}" ;
|
|"${compress[@]}" >"${tarball}.tar${tar_ext}" ;
|
||||||
} 2>&1 |sed -r -e 's/^/ /;' |CT_DoLog STATE
|
} 2>&1 |${sed} -r -e 's/^/ /;' |CT_DoLog STATE
|
||||||
else
|
else
|
||||||
CT_DoLog STATE " Not saving '${dir}': does not exist"
|
CT_DoLog STATE " Not saving '${dir}': does not exist"
|
||||||
fi
|
fi
|
||||||
@ -1525,7 +1525,7 @@ CT_DoExtractTarballIfExists() {
|
|||||||
CT_DoExecLog DEBUG mkdir -p "${dir}"
|
CT_DoExecLog DEBUG mkdir -p "${dir}"
|
||||||
{ "${uncompress[@]}" "${tarball}.tar${tar_ext}" \
|
{ "${uncompress[@]}" "${tarball}.tar${tar_ext}" \
|
||||||
|tar x -C "${dir}" -v -f - "${extra_tar_opts[@]}" ;
|
|tar x -C "${dir}" -v -f - "${extra_tar_opts[@]}" ;
|
||||||
} 2>&1 |sed -r -e 's/^/ /;' |CT_DoLog STATE
|
} 2>&1 |${sed} -r -e 's/^/ /;' |CT_DoLog STATE
|
||||||
else
|
else
|
||||||
CT_DoLog STATE " Not restoring '${dir}': does not exist"
|
CT_DoLog STATE " Not restoring '${dir}': does not exist"
|
||||||
fi
|
fi
|
||||||
@ -1548,12 +1548,12 @@ CT_DoSaveState() {
|
|||||||
# We must omit shell functions, and some specific bash variables
|
# We must omit shell functions, and some specific bash variables
|
||||||
# that break when restoring the environment, later. We could do
|
# that break when restoring the environment, later. We could do
|
||||||
# all the processing in the awk script, but a sed is easier...
|
# all the processing in the awk script, but a sed is easier...
|
||||||
set |awk '
|
set |${awk} '
|
||||||
BEGIN { _p = 1; }
|
BEGIN { _p = 1; }
|
||||||
$0~/^[^ ]+ \(\)/ { _p = 0; }
|
$0~/^[^ ]+ \(\)/ { _p = 0; }
|
||||||
_p == 1
|
_p == 1
|
||||||
$0 == "}" { _p = 1; }
|
$0 == "}" { _p = 1; }
|
||||||
' |sed -r -e '/^BASH_(ARGC|ARGV|LINENO|SOURCE|VERSINFO)=/d;
|
' |${sed} -r -e '/^BASH_(ARGC|ARGV|LINENO|SOURCE|VERSINFO)=/d;
|
||||||
/^(UID|EUID)=/d;
|
/^(UID|EUID)=/d;
|
||||||
/^(FUNCNAME|GROUPS|PPID|SHELLOPTS)=/d;' >"${state_dir}/env.sh"
|
/^(FUNCNAME|GROUPS|PPID|SHELLOPTS)=/d;' >"${state_dir}/env.sh"
|
||||||
|
|
||||||
@ -1613,10 +1613,10 @@ CT_KconfigSetOption() {
|
|||||||
local value="$2"
|
local value="$2"
|
||||||
local file="$3"
|
local file="$3"
|
||||||
|
|
||||||
grep -E -q "^${option}=.*" "${file}" && \
|
${grep} -E -q "^${option}=.*" "${file}" && \
|
||||||
sed -i -r -e "s;^${option}=.*$;${option}=${value};" "${file}" || \
|
${sed} -i -r -e "s;^${option}=.*$;${option}=${value};" "${file}" || \
|
||||||
grep -E -q "^# ${option} is not set$" "${file}" && \
|
${grep} -E -q "^# ${option} is not set$" "${file}" && \
|
||||||
sed -i -r -e "s;^# ${option} is not set$;${option}=${value};" "${file}" || \
|
${sed} -i -r -e "s;^# ${option} is not set$;${option}=${value};" "${file}" || \
|
||||||
echo "${option}=${value}" >> "${file}"
|
echo "${option}=${value}" >> "${file}"
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1635,9 +1635,9 @@ CT_KconfigDisableOption() {
|
|||||||
local option="${1}"
|
local option="${1}"
|
||||||
local file="${2}"
|
local file="${2}"
|
||||||
|
|
||||||
grep -E -q "^# ${option} is not set$" "${file}" || \
|
${grep} -E -q "^# ${option} is not set$" "${file}" || \
|
||||||
grep -E -q "^${option}=.*$" "${file}" && \
|
${grep} -E -q "^${option}=.*$" "${file}" && \
|
||||||
sed -i -r -e "s;^${option}=.*$;# ${option} is not set;" "${file}" || \
|
${sed} -i -r -e "s;^${option}=.*$;# ${option} is not set;" "${file}" || \
|
||||||
echo "# ${option} is not set" >> "${file}"
|
echo "# ${option} is not set" >> "${file}"
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1648,10 +1648,10 @@ CT_KconfigDeleteOption() {
|
|||||||
local option="${1}"
|
local option="${1}"
|
||||||
local file="${2}"
|
local file="${2}"
|
||||||
|
|
||||||
grep -E -q "^# ${option} is not set$" "${file}" && \
|
${grep} -E -q "^# ${option} is not set$" "${file}" && \
|
||||||
sed -i -r -e "/^# ${option} is not set$/d" "${file}" || \
|
${sed} -i -r -e "/^# ${option} is not set$/d" "${file}" || \
|
||||||
grep -E -q "^${option}=.*$" "${file}" && \
|
${grep} -E -q "^${option}=.*$" "${file}" && \
|
||||||
sed -i -r -e "/^${option}=.*$/d" "${file}" || true
|
${sed} -i -r -e "/^${option}=.*$/d" "${file}" || true
|
||||||
}
|
}
|
||||||
|
|
||||||
# Multilib iterator. The caller should be in a directory where the directories
|
# Multilib iterator. The caller should be in a directory where the directories
|
||||||
@ -1720,7 +1720,7 @@ CT_IterateMultilibs() {
|
|||||||
# We do supply original multi_os_dir for consumers that need to look inside
|
# We do supply original multi_os_dir for consumers that need to look inside
|
||||||
# GCC's directories (e.g. to locate the libraries), under the name of
|
# GCC's directories (e.g. to locate the libraries), under the name of
|
||||||
# multi_os_dir_gcc.
|
# multi_os_dir_gcc.
|
||||||
multi_flags=$( echo "${multilib#*;}" | sed -r -e 's/@/ -/g;' )
|
multi_flags=$( echo "${multilib#*;}" | ${sed} -r -e 's/@/ -/g;' )
|
||||||
multi_dir="${multilib%%;*}"
|
multi_dir="${multilib%%;*}"
|
||||||
multi_os_dir=$( "${CT_TARGET}-${CT_CC}" -print-multi-os-directory ${multi_flags} )
|
multi_os_dir=$( "${CT_TARGET}-${CT_CC}" -print-multi-os-directory ${multi_flags} )
|
||||||
multi_root=$( "${CT_TARGET}-${CT_CC}" -print-sysroot ${multi_flags} )
|
multi_root=$( "${CT_TARGET}-${CT_CC}" -print-sysroot ${multi_flags} )
|
||||||
@ -1740,7 +1740,7 @@ CT_IterateMultilibs() {
|
|||||||
# the architecture-specific functions.
|
# the architecture-specific functions.
|
||||||
multi_index=1
|
multi_index=1
|
||||||
for multilib in "${multilibs[@]}"; do
|
for multilib in "${multilibs[@]}"; do
|
||||||
multi_flags=$( echo "${multilib#*;}" | sed -r -e 's/@/ -/g;' )
|
multi_flags=$( echo "${multilib#*;}" | ${sed} -r -e 's/@/ -/g;' )
|
||||||
multi_dir="${multilib%%;*}"
|
multi_dir="${multilib%%;*}"
|
||||||
multi_os_dir=$( "${CT_TARGET}-${CT_CC}" -print-multi-os-directory ${multi_flags} )
|
multi_os_dir=$( "${CT_TARGET}-${CT_CC}" -print-multi-os-directory ${multi_flags} )
|
||||||
multi_os_dir_gcc="${multi_os_dir}"
|
multi_os_dir_gcc="${multi_os_dir}"
|
||||||
|
@ -59,7 +59,7 @@ for p in "${src}/"*.patch*; do
|
|||||||
newname="$(printf "%03d-%s" \
|
newname="$(printf "%03d-%s" \
|
||||||
"${cpt}" \
|
"${cpt}" \
|
||||||
"$( basename "${p}" \
|
"$( basename "${p}" \
|
||||||
|"${sed}" -r -e 's/^[[:digit:]]+[-_]//' \
|
|${sed} -r -e 's/^[[:digit:]]+[-_]//' \
|
||||||
-e "${sed_re}" \
|
-e "${sed_re}" \
|
||||||
)" \
|
)" \
|
||||||
)"
|
)"
|
||||||
|
@ -50,7 +50,7 @@ force_default_opts=( \
|
|||||||
)
|
)
|
||||||
regexp=${force_default_opts[*]}
|
regexp=${force_default_opts[*]}
|
||||||
regexp=${regexp// /|}
|
regexp=${regexp// /|}
|
||||||
grep -v -E '^(# )?CT_('"${regexp}"')' .config > .defconfig
|
${grep} -v -E '^(# )?CT_('"${regexp}"')' .config > .defconfig
|
||||||
|
|
||||||
# Function to copy a file to the sample directory
|
# Function to copy a file to the sample directory
|
||||||
# Needed in case the file is already there (think of a previously available sample)
|
# Needed in case the file is already there (think of a previously available sample)
|
||||||
|
Loading…
Reference in New Issue
Block a user