summaryrefslogtreecommitdiff
path: root/sys-devel/gcc-config/files/gcc-config-kogaion-base-gcc-support.patch
diff options
context:
space:
mode:
Diffstat (limited to 'sys-devel/gcc-config/files/gcc-config-kogaion-base-gcc-support.patch')
-rw-r--r--sys-devel/gcc-config/files/gcc-config-kogaion-base-gcc-support.patch30
1 files changed, 30 insertions, 0 deletions
diff --git a/sys-devel/gcc-config/files/gcc-config-kogaion-base-gcc-support.patch b/sys-devel/gcc-config/files/gcc-config-kogaion-base-gcc-support.patch
new file mode 100644
index 00000000..4b61c6cd
--- /dev/null
+++ b/sys-devel/gcc-config/files/gcc-config-kogaion-base-gcc-support.patch
@@ -0,0 +1,30 @@
+--- a/gcc-config
++++ b/gcc-config
+@@ -209,6 +209,14 @@ update_wrappers() {
+ )
+ ) )
+
++ # Kogaion: base-gcc does not bring any gcc executables. Return 1
++ # if ${ROOT}${GCC_PATH} does not exist without even trying to
++ # `cd` it.
++ if [[ ! -d "${ROOT}${GCC_PATH}" ]]; then
++ ewarn "The GCC compiler for ${CTARGET} is not installed."
++ return 1
++ fi
++
+ # See what new stuff we need to wrap up.
+ local new_wrappers=( $(
+ uniq_wrapper_list "${CC_COMP_VERSION}" $(
+@@ -331,6 +339,12 @@ handle_split_usr() {
+
+ gcc="${ROOT}${LATEST_GCC_PATH}/gcc"
+
++ # Kogaion: base-gcc does not carry the GCC executable, so
++ # skip this part
++ if [[ ! -x "${gcc}" ]]; then
++ return 0
++ fi
++
+ local multilib
+ for multilib in $("${gcc}" -print-multi-lib); do
+ local multiarg=${multilib#*;}