--- perl5.003_06/Configure Fri Oct 4 11:08:50 1996 +++ Configure Wed Oct 9 17:53:14 1996 @@ -1451,7 +1451,7 @@ *) echo "I don't know where '$file' is, and my life depends on it." >&4 echo "Go find a public domain implementation or fix your PATH setting!" >&4 - exit 1 + #exit 1 ;; esac done @@ -1460,7 +1460,9 @@ say=offhand for file in $trylist; do xxx=`./loc $file $file $pth` - eval $file=$xxx + if test "X$file" != "X$xxx" ; then + eval $file=$xxx + fi eval _$file=$xxx case "$xxx" in /*) @@ -3091,7 +3093,7 @@ exit(0); } EOM -if $cc -o gccvers gccvers.c >/dev/null 2>&1; then +if $cc -o gccvers gccvers.c $ldflags >/dev/null 2>&1; then gccversion=`./gccvers` case "$gccversion" in '') echo "You are not using GNU cc." ;; @@ -3275,6 +3277,12 @@ *"-l$thislib "*);; *) dflt="$dflt -l$thislib";; esac + elif xxx=`./loc $thislib.lib X $libpth`; $test -f "$xxx"; then + echo "Found -l$thislib." + case " $dflt " in + *"-l$thislib "*);; + *) dflt="$dflt -l$thislib";; + esac else echo "No -l$thislib." fi @@ -3387,7 +3395,7 @@ esac ;; esac -libnames=''; +#libnames=''; case "$libs" in '') ;; *) for thislib in $libs; do @@ -3401,12 +3409,14 @@ : elif try=`./loc lib$thislib.$so X $libpth`; $test -f "$try"; then : - elif try=`./loc lib$thislib.a X $libpth`; $test -f "$try"; then + elif try=`./loc lib$thislib$lib_ext X $libpth`; $test -f "$try"; then : elif try=`./loc lib$thislib X $libpth`; $test -f "$try"; then : elif try=`./loc $thislib X $libpth`; $test -f "$try"; then : + elif try=`./loc $thislib$lib_ext X $libpth`; $test -f "$try"; then + : elif try=`./loc Slib$thislib.a X $xlibpth`; $test -f "$try"; then : else @@ -3457,11 +3467,11 @@ fi elif $test -r "$libc" || (test -h "$libc") >/dev/null 2>&1; then echo "Your C library seems to be in $libc, as you said before." -elif $test -r $incpath/usr/lib/libc.a; then - libc=$incpath/usr/lib/libc.a; +elif $test -r $incpath/usr/lib/libc$lib_ext; then + libc=$incpath/usr/lib/libc$lib_ext; echo "Your C library seems to be in $libc. That's fine." -elif $test -r /lib/libc.a; then - libc=/lib/libc.a; +elif $test -r /lib/libc$lib_ext; then + libc=/lib/libc$lib_ext; echo "Your C library seems to be in $libc. You're normal." else if tans=`./loc libc.a blurfl/dyick $libpth`; $test -r "$tans"; then @@ -3583,6 +3593,10 @@ eval $xscan;\ $contains '^fprintf$' libc.list >/dev/null 2>&1; then eval $xrun +elif com="$sed -n -e 's/^[-0-9a-f ]*_\(.*\)=.*/\1/p'";\ + eval $xscan;\ + $contains '^fprintf$' libc.list >/dev/null 2>&1; then + eval $xrun else nm -p $* 2>/dev/null >libc.tmp $grep fprintf libc.tmp > libc.ptf @@ -3593,23 +3607,33 @@ eval $xrun else echo " " - echo "nm didn't seem to work right. Trying ar instead..." >&4 + echo "nm didn't seem to work right. Trying $ar instead..." >&4 com='' - if ar t $libc > libc.tmp; then - for thisname in $libnames; do - ar t $thisname >>libc.tmp + if test "X$osname" = "Xos2"; then ar_opt=tv ; else ar_opt=t ;fi + if $ar $ar_opt $libc > libc.tmp; then + echo \; > libc.tmp + for thisname in $libnames $libc; do + $ar $ar_opt $thisname >>libc.tmp + if test "X$osname" = "Xos2"; then + # Revision 50 of EMX has bug in $ar: + emximp -o tmp.imp $thisname \ + 2>/dev/null && \ + $sed -e 's/^\([_a-zA-Z0-9]*\) .*$/\1/p' \ + < tmp.imp >>libc.tmp + $rm tmp.imp + fi done - $sed -e 's/\.o$//' < libc.tmp > libc.list + $sed -e 's/\.o$//' -e 's/^ \+//' < libc.tmp | grep -v "^IMPORT#" > libc.list echo "Ok." >&4 else - echo "ar didn't seem to work right." >&4 + echo "$ar didn't seem to work right." >&4 echo "Maybe this is a Cray...trying bld instead..." >&4 if bld t $libc | $sed -e 's/.*\///' -e 's/\.o:.*$//' > libc.list then for thisname in $libnames; do bld t $libnames | \ $sed -e 's/.*\///' -e 's/\.o:.*$//' >>libc.list - ar t $thisname >>libc.tmp + $ar t $thisname >>libc.tmp done echo "Ok." >&4 else @@ -5606,7 +5630,7 @@ exit(0); } EOCP - if $cc $ccflags try.c -o try >/dev/null 2>&1 && ./try > /dev/null; then + if $cc $ccflags $ldflags try.c -o try >/dev/null 2>&1 && ./try > /dev/null; then intsize=`./try` echo "Your integers are $intsize bytes long." else @@ -5686,7 +5710,7 @@ exit(result); } EOCP -if $cc -o try $ccflags try.c >/dev/null 2>&1; then +if $cc -o try $ccflags try.c $ldflags >/dev/null 2>&1; then ./try yyy=$? else @@ -5767,7 +5791,7 @@ } EOCP -if $cc -o try $ccflags try.c >/dev/null 2>&1; then +if $cc -o try $ccflags try.c $ldflags >/dev/null 2>&1; then ./try castflags=$? else @@ -5806,7 +5830,7 @@ exit((unsigned long)vsprintf(buf,"%s",args) > 10L); } EOF - if $cc $ccflags vprintf.c -o vprintf >/dev/null 2>&1 && ./vprintf; then + if $cc $ccflags vprintf.c $ldflags -o vprintf >/dev/null 2>&1 && ./vprintf; then echo "Your vsprintf() returns (int)." >&4 val2="$undef" else @@ -5876,7 +5900,7 @@ cryptlib=-lcrypt fi if $test -z "$cryptlib"; then - cryptlib=`./loc libcrypt.a "" $libpth` + cryptlib=`./loc libcrypt$lib_ext "" $libpth` else cryptlib=-lcrypt fi @@ -6148,7 +6172,7 @@ EOCP : check sys/file.h first to get FREAD on Sun if $test `./findhdr sys/file.h` && \ - $cc $cppflags "-DI_SYS_FILE" open3.c -o open3 >/dev/null 2>&1 ; then + $cc $cppflags $ldflags "-DI_SYS_FILE" open3.c -o open3 >/dev/null 2>&1 ; then h_sysfile=true; echo " defines the O_* constants..." >&4 if ./open3; then @@ -6159,7 +6183,7 @@ val="$undef" fi elif $test `./findhdr fcntl.h` && \ - $cc "-DI_FCNTL" open3.c -o open3 >/dev/null 2>&1 ; then + $cc "-DI_FCNTL" $ldflags open3.c -o open3 >/dev/null 2>&1 ; then h_fcntl=true; echo " defines the O_* constants..." >&4 if ./open3; then @@ -6642,7 +6666,7 @@ y*|true) usemymalloc='y' mallocsrc='malloc.c' - mallocobj='malloc.o' + mallocobj="malloc$obj_ext" d_mymalloc="$define" case "$libs" in *-lmalloc*) @@ -7286,10 +7310,10 @@ : we will have to assume that it supports the 4.2 BSD interface d_oldsock="$undef" else - echo "You don't have Berkeley networking in libc.a..." >&4 - if test -f /usr/lib/libnet.a; then - ( (nm $nm_opt /usr/lib/libnet.a | eval $nm_extract) || \ - ar t /usr/lib/libnet.a) 2>/dev/null >> libc.list + echo "You don't have Berkeley networking in libc$lib_ext..." >&4 + if test -f /usr/lib/libnet$lib_ext; then + ( (nm $nm_opt /usr/lib/libnet$lib_ext | eval $nm_extract) || \ + $ar t /usr/lib/libnet$lib_ext) 2>/dev/null >> libc.list if $contains socket libc.list >/dev/null 2>&1; then echo "...but the Wollongong group seems to have hacked it in." >&4 socketlib="-lnet" @@ -7302,7 +7326,7 @@ d_oldsock="$define" fi else - echo "or even in libnet.a, which is peculiar." >&4 + echo "or even in libnet$lib_ext, which is peculiar." >&4 d_socket="$undef" d_oldsock="$undef" fi @@ -7867,7 +7891,7 @@ printf("%d\n", (char *)&try.bar - (char *)&try.foo); } EOCP - if $cc $ccflags try.c -o try >/dev/null 2>&1; then + if $cc $ccflags $ldflags try.c -o try >/dev/null 2>&1; then dflt=`./try` else dflt='8' @@ -7915,7 +7939,7 @@ } EOCP xxx_prompt=y - if $cc $ccflags try.c -o try >/dev/null 2>&1 && ./try > /dev/null; then + if $cc $ccflags $ldflags try.c -o try >/dev/null 2>&1 && ./try > /dev/null; then dflt=`./try` case "$dflt" in [1-4][1-4][1-4][1-4]|12345678|87654321) @@ -8337,7 +8361,7 @@ printf("%d\n",i); } EOCP - if $cc try.c -o try >/dev/null 2>&1 ; then + if $cc $ldflags try.c -o try >/dev/null 2>&1 ; then dflt=`try` else dflt='?' @@ -8364,18 +8388,18 @@ $cc $ccflags -c bar1.c >/dev/null 2>&1 $cc $ccflags -c bar2.c >/dev/null 2>&1 $cc $ccflags -c foo.c >/dev/null 2>&1 -ar rc bar.a bar2.o bar1.o >/dev/null 2>&1 -if $cc $ccflags $ldflags -o foobar foo.o bar.a $libs > /dev/null 2>&1 && +$ar rc bar$lib_ext bar2$obj_ext bar1$obj_ext >/dev/null 2>&1 +if $cc $ccflags $ldflags -o foobar foo$obj_ext bar$lib_ext $libs > /dev/null 2>&1 && ./foobar >/dev/null 2>&1; then - echo "ar appears to generate random libraries itself." + echo "$ar appears to generate random libraries itself." orderlib=false ranlib=":" -elif ar ts bar.a >/dev/null 2>&1 && - $cc $ccflags $ldflags -o foobar foo.o bar.a $libs > /dev/null 2>&1 && +elif $ar ts bar$lib_ext >/dev/null 2>&1 && + $cc $ccflags $ldflags -o foobar foo$obj_ext bar$lib_ext $libs > /dev/null 2>&1 && ./foobar >/dev/null 2>&1; then echo "a table of contents needs to be added with 'ar ts'." orderlib=false - ranlib="ar ts" + ranlib="$ar ts" else case "$ranlib" in :) ranlib='';; @@ -8447,7 +8471,7 @@ '') $echo $n ".$c" if $cc $ccflags \ $i_time $i_systime $i_systimek $sysselect $s_timeval $s_timezone \ - try.c -o try >/dev/null 2>&1 ; then + try.c -o try $ldflags >/dev/null 2>&1 ; then set X $i_time $i_systime $i_systimek $sysselect $s_timeval shift flags="$*" @@ -8517,7 +8541,7 @@ #endif } EOCP -if $cc $ccflags -DTRYBITS fd_set.c -o fd_set >fd_set.out 2>&1 ; then +if $cc $ccflags $ldflags -DTRYBITS fd_set.c -o fd_set >fd_set.out 2>&1 ; then d_fds_bits="$define" d_fd_set="$define" echo "Well, your system knows about the normal fd_set typedef..." >&4 @@ -8534,7 +8558,7 @@ $cat <<'EOM' Hmm, your compiler has some difficulty with fd_set. Checking further... EOM - if $cc $ccflags fd_set.c -o fd_set >fd_set.out 2>&1 ; then + if $cc $ccflags $ldflags fd_set.c -o fd_set >fd_set.out 2>&1 ; then d_fds_bits="$undef" d_fd_set="$define" echo "Well, your system has some sort of fd_set available..." >&4 @@ -9272,7 +9296,7 @@ else echo "false" fi -$rm -f varargs.o +$rm -f varargs$obj_ext EOP chmod +x varargs @@ -9596,7 +9620,7 @@ echo " " echo "Stripping down executable paths..." >&4 for file in $loclist $trylist; do - eval $file="\$file" + if test X$file != Xln -o X$osname != Xos2; then eval $file="\$file"; fi done ;; esac