1
- From b3c3b6bd0950d7524e02afefad2323ae8404fcda Mon Sep 17 00:00:00 2001
2
- From: Peter Martini <
[email protected] >
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
-
12
1
diff --git a/hints/linux.sh b/hints/linux.sh
13
- index d0ac9fa..fb5a46e 100644
2
+ index d0ac9fa..956adfc 100644
14
3
--- a/hints/linux.sh
15
4
+++ b/hints/linux.sh
16
5
@@ -39,7 +39,7 @@ i_libutil='undef'
@@ -81,27 +70,10 @@ index d0ac9fa..fb5a46e 100644
81
70
cut -f2- -d= | tr ':' $trnl | grep -v 'gcc' | sed -e 's:/$::'`
82
71
set X $plibpth # Collapse all entries on one line
83
72
shift
84
- @@ -182,6 +178,49 @@ case "$plibpth" in
73
+ @@ -182,6 +178,32 @@ case "$plibpth" in
85
74
;;
86
75
esac
87
76
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
- +
105
77
+ case "$libc" in
106
78
+ '')
107
79
+ # If you have glibc, then report the version for ./myconfig bug reporting.
@@ -131,7 +103,7 @@ index d0ac9fa..fb5a46e 100644
131
103
# Are we using ELF? Thanks to Kenneth Albanowski <
[email protected] >
132
104
# for this test.
133
105
cat >try.c <<'EOM'
134
- @@ -202,7 +241 ,7 @@ main() {
106
+ @@ -202,7 +224 ,7 @@ main() {
135
107
exit(0); /* succeed (yes, it's ELF) */
136
108
}
137
109
EOM
@@ -140,7 +112,7 @@ index d0ac9fa..fb5a46e 100644
140
112
cat <<'EOM' >&4
141
113
142
114
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
144
116
145
117
rm -f try.c a.out
146
118
@@ -149,7 +121,7 @@ index d0ac9fa..fb5a46e 100644
149
121
echo ''
150
122
echo 'You appear to have a working bash. Good.'
151
123
else
152
- @@ -335,7 +374 ,7 @@ fi
124
+ @@ -335,7 +357 ,7 @@ fi
153
125
#'osfmach3ppc') ccdlflags='-Wl,-E' ;;
154
126
#esac
155
127
@@ -158,7 +130,7 @@ index d0ac9fa..fb5a46e 100644
158
130
sparc*)
159
131
case "$cccdlflags" in
160
132
*-fpic*) cccdlflags="`echo $cccdlflags|sed 's/-fpic/-fPIC/'`" ;;
161
- @@ -350,30 +389 ,62 @@ esac
133
+ @@ -350,30 +372 ,62 @@ esac
162
134
# version of -lgdbm which is a bad idea. So if we have 'nm'
163
135
# make sure it can read the file
164
136
# NI-S 2003/08/07
@@ -238,7 +210,7 @@ index d0ac9fa..fb5a46e 100644
238
210
if echo $libswanted | grep -v pthread >/dev/null
239
211
then
240
212
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]*)
242
214
;;
243
215
esac
244
216
@@ -255,12 +227,12 @@ index d0ac9fa..fb5a46e 100644
255
227
# If using g++, the Configure scan for dlopen() and (especially)
256
228
# dlerror() might fail, easier just to forcibly hint them in.
257
229
case "$cc" in
258
- @@ -453,7 +514 ,7 @@ then
230
+ @@ -453,7 +497 ,7 @@ then
259
231
DBLIB="$DBDIR/libdb.so"
260
232
if [ -f $DBLIB ]
261
233
then
262
234
- 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
264
236
then
265
237
if ldd $DBLIB | grep pthread >/dev/null
266
238
then
@@ -279,18 +251,27 @@ index 13a15b4..a564bb3 100644
279
251
print "\nRunning Makefile.PL in $ext_dir\n";
280
252
281
253
# 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
296
277
0 commit comments