diff options
author | Christian Marangi <ansuelsmth@gmail.com> | 2022-07-03 02:20:11 +0200 |
---|---|---|
committer | Christian Marangi <ansuelsmth@gmail.com> | 2022-07-24 19:53:43 +0200 |
commit | 53c293262fce844c8291ab82e6726a8489d3c57b (patch) | |
tree | fd43b88a01fe9031438a078d205328796a4c6087 /scripts | |
parent | a90eabf60255773231ed0259e5da5eb6a36fe9ce (diff) | |
download | upstream-53c293262fce844c8291ab82e6726a8489d3c57b.tar.gz upstream-53c293262fce844c8291ab82e6726a8489d3c57b.tar.bz2 upstream-53c293262fce844c8291ab82e6726a8489d3c57b.zip |
scripts: ext-toolchain: fix wrong prefix in print_config generation
The parsed prefix in print_config is wrong and this produce broken
generated .config that won't work with any external toolchain.
Currently the prefix from a CC of
'arm-openwrt-linux-muslgnueabi-gcc-12.1.0'
produce a prefix
'arm-openwrt-linux-muslgnueabi-gcc-'
This is wrong as the real prefix should be
'arm-openwrt-linux-muslgnueabi-'
This is probably caused by a change in how the toolchain is now handled
that now append also the gcc version. Probably in ancient days the
version wasn't part of the name and the prefix generation stripped the
'-gcc' instead of the gcc version.
Fix this and correctly strip the gcc version and the gcc suffix to
correctly call toolchain bins.
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
Diffstat (limited to 'scripts')
-rwxr-xr-x | scripts/ext-toolchain.sh | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/scripts/ext-toolchain.sh b/scripts/ext-toolchain.sh index 4da287591a..b52f170b32 100755 --- a/scripts/ext-toolchain.sh +++ b/scripts/ext-toolchain.sh @@ -281,8 +281,11 @@ print_config() { local mksubtarget local target="$("$CC" $CFLAGS -dumpmachine)" + local version="$("$CC" $CFLAGS -dumpversion)" local cpuarch="${target%%-*}" - local prefix="${CC##*/}"; prefix="${prefix%-*}-" + + # get CC; strip version; strip gcc and add - suffix + local prefix="${CC##*/}"; prefix="${prefix%-$version}"; prefix="${prefix%-*}-" local config="${0%/scripts/*}/.config" # if no target specified, print choice list and exit |