summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJoel Sherrill <joel.sherrill@OARcorp.com>2000-06-06 13:44:18 +0000
committerJoel Sherrill <joel.sherrill@OARcorp.com>2000-06-06 13:44:18 +0000
commitbdf9a994152a7a4bcfba31e70a1ba1ebc17d5053 (patch)
tree7a5554bc82160822f27a372725f29644b88f6044
parentUpdated patch versions. (diff)
downloadrtems-bdf9a994152a7a4bcfba31e70a1ba1ebc17d5053.tar.bz2
Patch from Ralf Corsepius <corsepiu@faw.uni-ulm.de>:
gccnewlib.add applies find -path=... which might cause files.gcc getting corrupted. This seems to be gnu-find specific and doesn't seem to be supported by Solaris find (/usr/bin/find). I didn't see this because I use gnu-find even under Solaris (/amd/bin/find under our Solaris installation). This causes the first call to find in gccnewlib.add to deliver incorrect results and may result into incorrectly setting up the files.* files, esp. files.gcc.
-rw-r--r--scripts/gccnewlib/gccnewlib.add16
1 files changed, 11 insertions, 5 deletions
diff --git a/scripts/gccnewlib/gccnewlib.add b/scripts/gccnewlib/gccnewlib.add
index feb1338daa..c547660055 100644
--- a/scripts/gccnewlib/gccnewlib.add
+++ b/scripts/gccnewlib/gccnewlib.add
@@ -99,10 +99,16 @@ This is gcc's and newlib C Library's sources with patches for RTEMS.
echo "%dir /opt/rtems/lib/gcc-lib/@target_alias@" >> dirs ;
# Collect multilib subdirectories
- TGTDIR="$RPM_BUILD_ROOT/opt/rtems/lib/gcc-lib/@target_alias@/@gcc_version@"
- find $TGTDIR \
- \( -type d -a ! -path "$TGTDIR/include*" \) -print | \
- sed -e "s,^$RPM_BUILD_ROOT,%dir ,g" >> dirs
+ TGTDIR="/opt/rtems/lib/gcc-lib/@target_alias@/@gcc_version@"
+ f=`gcc/xgcc --print-multi-lib | sed -e 's,;.*$,,'`
+ for i in $f; do
+ case $i in
+ \.) echo "%dir ${TGTDIR}" >> dirs
+ ;;
+ *) echo "%dir ${TGTDIR}/$i" >> dirs
+ ;;
+ esac
+ done
# Collect files to go into different packages
cp dirs files.chill
@@ -111,7 +117,7 @@ This is gcc's and newlib C Library's sources with patches for RTEMS.
cp dirs files.objc
cp dirs files.gcj
- f=`find $TGTDIR ! -type d -print | sed -e "s,^$RPM_BUILD_ROOT,,g"`;
+ f=`find ${RPM_BUILD_ROOT}${TGTDIR} ! -type d -print | sed -e "s,^$RPM_BUILD_ROOT,,g"`;
for i in $f; do
case $i in
*chill*) echo "$i" >> files.chill ;;