1- From b3c3b6bd0950d7524e02afefad2323ae8404fcda Mon Sep 17 00:00:00 2001
2- From: Peter Martini <PeterCMartini@GMail.com>
3- Date: Wed, 15 Apr 2015 22:36:08 -0400
4- Subject: [PATCH] tmp
5-
6- ---
7- hints/linux.sh | 153 ++++++++++++++++++++++++++++++++++++++++-----------------
8- make_ext.pl | 4 ++
9- patchlevel.h | 1 +
10- 3 files changed, 112 insertions(+), 46 deletions(-)
11-
121diff --git a/hints/linux.sh b/hints/linux.sh
13- index d0ac9fa..fb5a46e 100644
2+ index d0ac9fa..956adfc 100644
143--- a/hints/linux.sh
154+++ b/hints/linux.sh
165@@ -39,7 +39,7 @@ i_libutil='undef'
@@ -81,27 +70,10 @@ index d0ac9fa..fb5a46e 100644
8170 cut -f2- -d= | tr ':' $trnl | grep -v 'gcc' | sed -e 's:/$::'`
8271 set X $plibpth # Collapse all entries on one line
8372 shift
84- @@ -182,6 +178,49 @@ case "$plibpth" in
73+ @@ -182,6 +178,32 @@ case "$plibpth" in
8574 ;;
8675 esac
8776
88- + # libquadmath is sometimes installed as gcc internal library,
89- + # so contrary to our usual policy of *not* looking at gcc internal
90- + # directories we now *do* look at them, in case they contain
91- + # the quadmath library.
92- + # XXX This may apply to other gcc internal libraries, if such exist.
93- + # XXX This could be at Configure level, but then the $gcc is messy.
94- + case "$usequadmath" in
95- + "$define")
96- + for d in `LANG=C LC_ALL=C $gcc $ccflags $ldflags -print-search-dirs | grep libraries | cut -f2- -d= | tr ':' $trnl | grep 'gcc' | sed -e 's:/$::'`
97- + do
98- + case `ls $d/*libquadmath*$so* 2>/dev/null` in
99- + $d/*libquadmath*$so*) xlibpth="$xlibpth $d" ;;
100- + esac
101- + done
102- + ;;
103- + esac
104- +
10577+ case "$libc" in
10678+ '')
10779+ # If you have glibc, then report the version for ./myconfig bug reporting.
@@ -131,7 +103,7 @@ index d0ac9fa..fb5a46e 100644
131103 # Are we using ELF? Thanks to Kenneth Albanowski <kjahds@kjahds.com>
132104 # for this test.
133105 cat >try.c <<'EOM'
134- @@ -202,7 +241 ,7 @@ main() {
106+ @@ -202,7 +224 ,7 @@ main() {
135107 exit(0); /* succeed (yes, it's ELF) */
136108 }
137109 EOM
@@ -140,7 +112,7 @@ index d0ac9fa..fb5a46e 100644
140112 cat <<'EOM' >&4
141113
142114 You appear to have ELF support. I'll try to use it for dynamic loading.
143- @@ -268,7 +307 ,7 @@ fi
115+ @@ -268,7 +290 ,7 @@ fi
144116
145117 rm -f try.c a.out
146118
@@ -149,7 +121,7 @@ index d0ac9fa..fb5a46e 100644
149121 echo ''
150122 echo 'You appear to have a working bash. Good.'
151123 else
152- @@ -335,7 +374 ,7 @@ fi
124+ @@ -335,7 +357 ,7 @@ fi
153125 #'osfmach3ppc') ccdlflags='-Wl,-E' ;;
154126 #esac
155127
@@ -158,7 +130,7 @@ index d0ac9fa..fb5a46e 100644
158130 sparc*)
159131 case "$cccdlflags" in
160132 *-fpic*) cccdlflags="`echo $cccdlflags|sed 's/-fpic/-fPIC/'`" ;;
161- @@ -350,30 +389 ,62 @@ esac
133+ @@ -350,30 +372 ,62 @@ esac
162134 # version of -lgdbm which is a bad idea. So if we have 'nm'
163135 # make sure it can read the file
164136 # NI-S 2003/08/07
@@ -238,7 +210,7 @@ index d0ac9fa..fb5a46e 100644
238210 if echo $libswanted | grep -v pthread >/dev/null
239211 then
240212 set `echo X "$libswanted "| sed -e 's/ c / pthread c /'`
241- @@ -420,16 +491 ,6 @@ $define|true|[yY]*)
213+ @@ -420,16 +474 ,6 @@ $define|true|[yY]*)
242214 ;;
243215 esac
244216
@@ -255,12 +227,12 @@ index d0ac9fa..fb5a46e 100644
255227 # If using g++, the Configure scan for dlopen() and (especially)
256228 # dlerror() might fail, easier just to forcibly hint them in.
257229 case "$cc" in
258- @@ -453,7 +514 ,7 @@ then
230+ @@ -453,7 +497 ,7 @@ then
259231 DBLIB="$DBDIR/libdb.so"
260232 if [ -f $DBLIB ]
261233 then
262234- if nm -u $DBLIB | grep pthread >/dev/null
263- + if ${nm:-nm} -u $DBLIB 2>/dev/null | grep pthread >/dev/null
235+ + if ${nm:-nm} -u $DBLIB | grep pthread >/dev/null
264236 then
265237 if ldd $DBLIB | grep pthread >/dev/null
266238 then
@@ -279,18 +251,27 @@ index 13a15b4..a564bb3 100644
279251 print "\nRunning Makefile.PL in $ext_dir\n";
280252
281253 # Presumably this can be simplified
282- diff --git a/patchlevel.h b/patchlevel.h
283- index 4d9cd6d..c5ac24a 100644
284- --- a/patchlevel.h
285- +++ b/patchlevel.h
286- @@ -137,6 +137,7 @@ static const char * const local_patches[] = {
287- ,"uncommitted-changes"
288- #endif
289- PERL_GIT_UNPUSHED_COMMITS /* do not remove this line */
290- + ,"Devel::PatchPerl 1.32"
291- ,NULL
292- };
293-
294- - -
295- 1.9.1
254+ diff --git a/Configure b/Configure
255+ index a780b81..3ae16ca 100755
256+ --- a/Configure
257+ +++ b/Configure
258+ @@ -21633,15 +21633,16 @@ $cc -o try -Dcpp_stuff=$cpp_stuff $optimize \$ccflags $ldflags try.c $libs && $r
259+ EOSH
260+ chmod +x Cppsym.try
261+ $eunicefix Cppsym.try
262+ - ./Cppsym < Cppsym.know > Cppsym.true
263+ + ./Cppsym < Cppsym.know | $sort | $uniq > Cppsym.true
264+ : Add in any linux cpp "predefined macros":
265+ case "$osname::$gccversion" in
266+ *linux*::*.*|*gnukfreebsd*::*.*|gnu::*.*)
267+ tHdrH=_tmpHdr
268+ rm -f $tHdrH'.h' $tHdrH
269+ touch $tHdrH'.h'
270+ + # Filter out macro arguments, such as Linux's __INT8_C(c)
271+ if $cpp -dM $tHdrH'.h' > $tHdrH'_cppsym.h' && [ -s $tHdrH'_cppsym.h' ]; then
272+ - sed 's/#define[\ \ ]*//;s/[\ \ ].*$//' <$tHdrH'_cppsym.h' >$tHdrH'_cppsym.real'
273+ + sed -e 's/#define[\ \ ]*//;s/[\ \ ].*$//' -e 's/(.*//' <$tHdrH'_cppsym.h' >$tHdrH'_cppsym.real'
274+ if [ -s $tHdrH'_cppsym.real' ]; then
275+ cat $tHdrH'_cppsym.real' Cppsym.know | sort | uniq | ./Cppsym | sort | uniq > Cppsym.true
276+ fi
296277
0 commit comments