summaryrefslogtreecommitdiff
path: root/dev-lang/ccc/files/update-config.patch
diff options
context:
space:
mode:
Diffstat (limited to 'dev-lang/ccc/files/update-config.patch')
-rw-r--r--dev-lang/ccc/files/update-config.patch83
1 files changed, 83 insertions, 0 deletions
diff --git a/dev-lang/ccc/files/update-config.patch b/dev-lang/ccc/files/update-config.patch
new file mode 100644
index 0000000..6733307
--- /dev/null
+++ b/dev-lang/ccc/files/update-config.patch
@@ -0,0 +1,83 @@
+diff -u old/create-comp-config.sh new/create-comp-config.sh
+--- old/create-comp-config.sh 2008-04-13 16:27:32.000000000 -0400
++++ new/create-comp-config.sh 2008-04-13 16:24:57.000000000 -0400
+@@ -342,10 +342,10 @@
+ fi
+ fi
+
+-if [ ! -r "$GCC_PATH/specs" ]; then
+- echo "Error: Unable to find GCC at $GCC_PATH. GCC must be installed." 1>&2
+- aborting
+-fi
++#if [ ! -r "$GCC_PATH/specs" ]; then
++# echo "Error: Unable to find GCC at $GCC_PATH. GCC must be installed." 1>&2
++# aborting
++#fi
+
+ #
+ # What header and lib dirs should we be using? The ones that the specified
+@@ -354,7 +354,7 @@
+ PGM="int main(int argc, char **argv) {return 0;}"
+ echo "$PGM" > /tmp/${PREFIX}_install$$.c
+ GCC_VER=`basename $GCC_PATH`
+-env -i PATH=$PATH gcc -v -V $GCC_VER /tmp/${PREFIX}_install$$.c \
++env -i PATH=$PATH gcc -V $GCC_VER -v /tmp/${PREFIX}_install$$.c \
+ -o /tmp/${PREFIX}_install$$ > /tmp/${PREFIX}_install$$.log 2>&1 || {
+ cat - /tmp/${PREFIX}_install$$.log <<- EOF 1>&2
+ Error: gcc -V $GCC_VER failed to compile and link "$PGM".
+@@ -364,8 +364,17 @@
+ }
+ #
+ # Get the list of include directories from the list displayed by gcc -v
++# Sort gcc-lib paths last.
+ #
+-USR_DIST_INC=`sed -n -e '1,/^\#include <...>/d' -e '/^End of search list/q' -e '/^/p' /tmp/${PREFIX}_install$$.log`
++USR_DIST_INC=`
++ sed -n \
++ -e '1,/^\#include <...>/d' \
++ -e '/^End of search list/q' \
++ -e '/gcc-lib/!p' /tmp/${PREFIX}_install$$.log;
++ sed -n \
++ -e '1,/^\#include <...>/d' \
++ -e '/^End of search list/q' \
++ -e '/gcc-lib/p' /tmp/${PREFIX}_install$$.log`
+
+ # Get the name of the linker command (ld or collect2), and library directories
+ # by examining the way gcc invoked the linker
+diff -u old/probe_linux.sh new/probe_linux.sh
+--- old/probe_linux.sh 2008-04-13 16:27:32.000000000 -0400
++++ new/probe_linux.sh 2008-04-13 16:24:18.000000000 -0400
+@@ -203,6 +203,8 @@
+ DIST_OS="Linux"
+ if [ -r /etc/kondara-release ]; then
+ DIST_VENDOR="kondara"
++ elif [ -r /etc/gentoo-release ]; then
++ DIST_VENDOR="gentoo"
+ elif [ -r /etc/redhat-release ]; then
+ DIST_VENDOR="rh"
+ elif [ -r /etc/SuSE-release ]; then
+@@ -249,13 +251,7 @@
+
+ probe_gcc()
+ {
+- specs=`gcc -v 2>&1 | sed -n -e 's|^[^/]*\(/[^ ]*/specs\).*$|\1|p'`
+-
+- if [ ! -r $specs ]; then
+- GCC_PATH="Unknown GCC"
+- else
+- GCC_PATH=`dirname $specs`
+- fi
++ GCC_PATH=`gcc-config --get-lib-path`
+ }
+
+ probe_libc()
+@@ -326,7 +322,8 @@
+ # TASO will return "YES", "NO", or "an error string"
+ #
+ TASO="YES"
+-
++TASO="NO"
++return
+ if [ "$DIST_OS" = "Linux" ]; then
+ # Does ld claim to support taso?
+ if [ "`ld --help | grep taso`" = "" ]; then