From 56b575b98e1abc4a3d9d34366e39c83d61bdb308 Mon Sep 17 00:00:00 2001 From: "H.Merijn Brand" Date: Wed, 22 Jan 2014 12:28:57 +0100 Subject: [PATCH] Regenerate from meta after backporting crosscompile changes I am sure there are items that could have been processed even cleaner, but with the current state, the content is functional equal. --- Configure | 995 ++++++++++++++++++++++++++++--------------------------- Porting/Glossary | 35 ++ config_h.SH | 42 +-- pod/perlport.pod | 1 + uconfig.h | 44 +-- 5 files changed, 579 insertions(+), 538 deletions(-) diff --git a/Configure b/Configure index de13658..ba8e7f4 100755 --- a/Configure +++ b/Configure @@ -28,7 +28,7 @@ # See Porting/pumpkin.pod for more information on metaconfig. # -# Generated on Wed Jan 1 18:06:40 CET 2014 [metaconfig 3.5 PL0] +# Generated on Wed Jan 22 12:03:46 CET 2014 [metaconfig 3.5 PL0] # (with additional metaconfig patches by perlbug@perl.org) cat >c1$$ <&4 @@ -2826,39 +2829,42 @@ $define|true|[yY]*) esac : Check for Cross-Compilation +if $test "X$targethost" = "X"; then + targethost="" +fi case "$usecrosscompile" in $define|true|[yY]*) $echo "Cross-compiling..." - croak='' - case "$cc" in - *-gcc*|*-g++*) # A cross-compiling gcc, probably. - # arm-linux-androideabi-gcc -> arm-linux-androideabi - # x86_64-w64-mingw32-gcc.exe -> x86_64-w64-mingw32 - targetarch=`$echo $cc|$sed 's/-g[c\+][c\+].*$//'` - ar=`$echo $cc|$sed 's/-g[c\+][c\+]/-ar/'` - # leave out ld, choosing it is more complex - nm=`$echo $cc|$sed 's/-g[c\+][c\+]/-nm/'` - ranlib=`$echo $cc|$sed 's/-g[c\+][c\+]/-ranlib/'` - # We are in a weird spot. Just before us, some values - # were 'saved', to be restored after the hints are - # run. This means that the changes we made to ar, - # nm and ranlib will get reverted. - # To avoid that, we hijack the saving mechanism and - # have it save our new values. - for file in ar nm ranlib; do - eval xxx=\$$file - eval $file=$xxx$_exe - eval _$file=$xxx - done - ;; + croak='' + case "$cc" in + *-gcc*|*-g++*) # A cross-compiling gcc, probably. + # arm-linux-androideabi-gcc -> arm-linux-androideabi + # x86_64-w64-mingw32-gcc.exe -> x86_64-w64-mingw32 + targetarch=`$echo $cc|$sed 's/-g[c\+][c\+].*$//'` + ar=`$echo $cc|$sed 's/-g[c\+][c\+]/-ar/'` + # leave out ld, choosing it is more complex + nm=`$echo $cc|$sed 's/-g[c\+][c\+]/-nm/'` + ranlib=`$echo $cc|$sed 's/-g[c\+][c\+]/-ranlib/'` + # We are in a weird spot. Just before us, some values + # were 'saved', to be restored after the hints are + # run. This means that the changes we made to ar, + # nm and ranlib will get reverted. + # To avoid that, we hijack the saving mechanism and + # have it save our new values. + for file in ar nm ranlib; do + eval xxx=\$$file + eval $file=$xxx$_exe + eval _$file=$xxx + done + ;; esac case "$targetarch" in '') echo "Targetarch not defined." >&4; croak=y ;; - *) echo "Using targetarch $targetarch." >&4 ;; + *) echo "Using targetarch $targetarch." >&4 ;; esac case "$targethost" in '') echo "Targethost not defined." >&4; croak=y ;; - *) echo "Using targethost $targethost." >&4 + *) echo "Using targethost $targethost." >&4 esac locincpth=' ' loclibpth=' ' @@ -2887,23 +2893,23 @@ $define|true|[yY]*) case "$targetfrom" in '') targetfrom=scp ;; esac - run=$run-$targetrun - to=$to-$targetto - from=$from-$targetfrom + run=$run-$targetrun + to=$to-$targetto + from=$from-$targetfrom case "$targetdir" in '') targetdir=/tmp - echo "Guessing targetdir $targetdir." >&4 - ;; + echo "Guessing targetdir $targetdir." >&4 + ;; esac case "$targetuser" in '') targetuser=root - echo "Guessing targetuser $targetuser." >&4 - ;; + echo "Guessing targetuser $targetuser." >&4 + ;; esac case "$targetport" in '') targetport=22 - echo "Guessing targetport $targetport." >&4 - ;; + echo "Guessing targetport $targetport." >&4 + ;; esac case "$targetfrom" in scp) q=-q ;; @@ -4529,6 +4535,53 @@ case "$gccversion" in $rm -f try try.* esac +: What should the include directory be ? +: Use sysroot if set, so findhdr looks in the right place. +echo " " +$echo $n "Hmm... $c" +dflt="$sysroot/usr/include" +incpath='' +mips_type='' +if $test -f /bin/mips && /bin/mips; then + echo "Looks like a MIPS system..." + $cat >usr.c <<'EOCP' +#ifdef SYSTYPE_BSD43 +/bsd43 +#endif +EOCP + if $cc $cppflags -E usr.c > usr.out && $contains / usr.out >/dev/null 2>&1; then + dflt='/bsd43/usr/include' + incpath='/bsd43' + mips_type='BSD 4.3' + else + mips_type='System V' + fi + $rm -f usr.c usr.out + echo "and you're compiling with the $mips_type compiler and libraries." + xxx_prompt=y + echo "exit 0" >mips +else + echo "Doesn't look like a MIPS system." + xxx_prompt=n + echo "exit 1" >mips +fi +chmod +x mips +$eunicefix mips +case "$usrinc" in +'') ;; +*) dflt="$usrinc";; +esac +case "$xxx_prompt" in +y) fn=d/ + echo " " + rp='Where are the include files you want to use?' + . ./getfile + usrinc="$ans" + ;; +*) usrinc="$dflt" + ;; +esac + : see how we invoke the C preprocessor echo " " echo "Now, how can we feed standard input to your C preprocessor..." >&4 @@ -4677,123 +4730,78 @@ case "$cppstdin" in esac $rm -f testcpp.c testcpp.out +: Adjust cppfilter for path component separator case "$osname" in vos) cppfilter="tr '\\\\>' '/' |" ;; # path component separator is > os2) cppfilter="sed -e 's|\\\\\\\\|/|g' |" ;; # path component separator is \ *) cppfilter='' ;; esac +: Use gcc to determine libpth and incpth # If using gcc or clang, we can get better values for libpth, incpth # and usrinc directly from the compiler. # Note that ccname for clang is also gcc. case "$ccname" in gcc) - $echo 'extern int foo;' > try.c - set X `$cppstdin -v try.c 2>&1 | $awk '/^#include &4; croak=y ;; - *) echo "Using incpth '$incpth'." >&4 ;; - esac - case "$libpth" in - '') echo "Libpth not defined." >&4; croak=y ;; - *) echo "Using libpth '$libpth'." >&4 ;; - esac - case "$usrinc" in - '') echo "Usrinc not defined." >&4; croak=y ;; - *) echo "Using usrinc $usrinc." >&4 ;; - esac - case "$croak" in - y) - if test "X$sysroot" = X; then - echo "Cannot continue, aborting." >&4; exit 1 - else - echo "Cross-compiling using sysroot $sysroot, failing to guess inc/lib paths is not fatal" >&4 - fi - ;; - esac - ;; - esac - ;; -esac - -: What should the include directory be ? -: Use sysroot if set, so findhdr looks in the right place. -echo " " -$echo $n "Hmm... $c" -dflt="$sysroot/usr/include" -incpath='' -mips_type='' -if $test -f /bin/mips && /bin/mips; then - echo "Looks like a MIPS system..." - $cat >usr.c <<'EOCP' -#ifdef SYSTYPE_BSD43 -/bsd43 -#endif -EOCP - if $cc $cppflags -E usr.c > usr.out && $contains / usr.out >/dev/null 2>&1; then - dflt='/bsd43/usr/include' - incpath='/bsd43' - mips_type='BSD 4.3' - else - mips_type='System V' + $echo 'extern int foo;' > try.c + set X `$cppstdin -v try.c 2>&1 | $awk '/^#include mips -else - echo "Doesn't look like a MIPS system." - xxx_prompt=n - echo "exit 1" >mips -fi -chmod +x mips -$eunicefix mips -case "$usrinc" in -'') ;; -*) dflt="$usrinc";; -esac -case "$xxx_prompt" in -y) fn=d/ - echo " " - rp='Where are the include files you want to use?' - . ./getfile - usrinc="$ans" - ;; -*) usrinc="$dflt" - ;; + $rm -f try.c + case "$usrinc" in + '') for i in $incpth; do + if $test -f $i/errno.h -a -f $i/stdio.h -a -f $i/time.h; then + usrinc="$i" + break + fi + done + ;; + esac + + case "$usecrosscompile" in + $define|true|[yY]*) + case "$incpth" in + '') echo "Incpth not defined." >&4; croak=y ;; + *) echo "Using incpth '$incpth'." >&4 ;; + esac + case "$libpth" in + '') echo "Libpth not defined." >&4; croak=y ;; + *) echo "Using libpth '$libpth'." >&4 ;; + esac + case "$usrinc" in + '') echo "Usrinc not defined." >&4; croak=y ;; + *) echo "Using usrinc $usrinc." >&4 ;; + esac + case "$croak" in + y) + if test "X$sysroot" = X; then + echo "Cannot continue, aborting." >&4; exit 1 + else + echo "Cross-compiling using sysroot $sysroot, failing to guess inc/lib paths is not fatal" >&4 + fi + ;; + esac + ;; + esac + ;; esac : Default value for incpth is just usrinc @@ -4804,8 +4812,8 @@ esac : Set private lib path case "$plibpth" in '') if ./mips; then - plibpth="$incpath/usr/lib $sysroot/usr/local/lib $sysroot/usr/ccs/lib" - fi;; + plibpth="$incpath/usr/lib $sysroot/usr/local/lib $sysroot/usr/ccs/lib" + fi;; esac case "$libpth" in ' ') dlist='';; @@ -4833,7 +4841,7 @@ Say "none" for none. EOM if test "X$sysroot" != X; then - $cat < #endif int main() { - char b[4]; - int i = open("a.out",O_RDONLY); - if(i == -1) - exit(1); /* fail */ - if(read(i,b,4)==4 && b[0]==127 && b[1]=='E' && b[2]=='L' && b[3]=='F') - exit(0); /* succeed (yes, it is ELF) */ - else - exit(1); /* fail */ + char b[4]; + int i = open("a.out",O_RDONLY); + if(i == -1) + exit(1); /* fail */ + if(read(i,b,4)==4 && b[0]==127 && b[1]=='E' && b[2]=='L' && b[3]=='F') + exit(0); /* succeed (yes, it is ELF) */ + exit(1); /* fail */ } EOM if $cc $ccflags $ldflags try.c >/dev/null 2>&1 && $run ./a.out; then - bin_ELF="$define" + bin_ELF="$define" fi $rm_try case "$ld" in - '') if $test $bin_ELF = "$define"; then - cat <try.c <try.c <try.h <try.h </dev/null 2>&1 \ - && $test -s a.out ; then - echo "ld supports scripting" >&4 - ld_can_script="$define" - else - echo "ld does not support scripting" >&4 - fi - $rm_try - ;; + if $cc $cccdlflags $ccdlflags $ccflags \ + $ldflags $lddlflags -o a.out try.c \ + -Wl,--version-script=try.h >/dev/null 2>&1 \ + && $test -s a.out ; then + echo "ld supports scripting" >&4 + ld_can_script="$define" + else + echo "ld does not support scripting" >&4 + fi + $rm_try + ;; esac : Do we want a shared libperl? @@ -11397,57 +11401,57 @@ sockethdr='' echo " " $echo $n "Hmm... $c" >&4 if set socket val -f d_socket; eval $csym; $val; then + echo "Looks like you have Berkeley networking support." >&4 + d_socket="$define" + if set setsockopt val -f; eval $csym; $val; then + d_oldsock="$undef" + else + echo "...but it uses the old BSD 4.1c interface, rather than 4.2." >&4 + d_oldsock="$define" + fi +else + if $contains socklib libc.list >/dev/null 2>&1; then echo "Looks like you have Berkeley networking support." >&4 d_socket="$define" - if set setsockopt val -f; eval $csym; $val; then - d_oldsock="$undef" - else - echo "...but it uses the old BSD 4.1c interface, rather than 4.2." >&4 - d_oldsock="$define" - fi -else - if $contains socklib libc.list >/dev/null 2>&1; then - echo "Looks like you have Berkeley networking support." >&4 - d_socket="$define" - : we will have to assume that it supports the 4.2 BSD interface - d_oldsock="$undef" + : 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 "X$d_socket" = "X$define"; then + echo "...but you seem to believe that you have sockets." >&4 else - echo "You don't have Berkeley networking in libc$_a..." >&4 - if test "X$d_socket" = "X$define"; then - echo "...but you seem to believe that you have sockets." >&4 - else - for net in net socket - do - if test -f $sysroot/usr/lib/lib$net$_a; then - ( ($nm $nm_opt $sysroot/usr/lib/lib$net$_a | eval $nm_extract) || \ - $ar t $sysroot/usr/lib/lib$net$_a) 2>/dev/null >> libc.list - if $contains socket libc.list >/dev/null 2>&1; then - d_socket="$define" - socketlib="-l$net" - case "$net" in - net) - echo "...but the Wollongong group seems to have hacked it in." >&4 - sockethdr="-I$sysroot/usr/netinclude" - ;; - esac - echo "Found Berkeley sockets interface in lib$net." >&4 - if $contains setsockopt libc.list >/dev/null 2>&1; then - d_oldsock="$undef" - else - echo "...using the old BSD 4.1c interface, rather than 4.2." >&4 - d_oldsock="$define" - fi - break - fi - fi - done - if test "X$d_socket" != "X$define"; then - echo "or anywhere else I see." >&4 - d_socket="$undef" - d_oldsock="$undef" + for net in net socket + do + if test -f $sysroot/usr/lib/lib$net$_a; then + ( ($nm $nm_opt $sysroot/usr/lib/lib$net$_a | eval $nm_extract) || \ + $ar t $sysroot/usr/lib/lib$net$_a) 2>/dev/null >> libc.list + if $contains socket libc.list >/dev/null 2>&1; then + d_socket="$define" + socketlib="-l$net" + case "$net" in + net) + echo "...but the Wollongong group seems to have hacked it in." >&4 + sockethdr="-I$sysroot/usr/netinclude" + ;; + esac + echo "Found Berkeley sockets interface in lib$net." >&4 + if $contains setsockopt libc.list >/dev/null 2>&1; then + d_oldsock="$undef" + else + echo "...using the old BSD 4.1c interface, rather than 4.2." >&4 + d_oldsock="$define" fi + break + fi fi + done + if test "X$d_socket" != "X$define"; then + echo "or anywhere else I see." >&4 + d_socket="$undef" + d_oldsock="$undef" + fi fi + fi fi : see if socketpair exists @@ -11467,7 +11471,7 @@ return (sa.sa_len); EOF val="$undef" set try; if eval $compile; then - val="$define" + val="$define" fi set d_sockaddr_sa_len; eval $setvar $rm_try @@ -11485,7 +11489,7 @@ return (sin6.sin6_family); EOF val="$undef" set try; if eval $compile; then - val="$define" + val="$define" fi set d_sockaddr_in6; eval $setvar $rm_try @@ -11503,7 +11507,7 @@ return (sin6.sin6_scope_id); EOF val="$undef" set try; if eval $compile; then - val="$define" + val="$define" fi set d_sin6_scope_id; eval $setvar $rm_try @@ -11557,7 +11561,7 @@ return (mreq.ipv6mr_interface); EOF val="$undef" set try; if eval $compile; then - val="$define" + val="$define" fi set d_ipv6_mreq; eval $setvar $rm_try @@ -11583,20 +11587,20 @@ $rm_try echo " " echo "Checking the availability of certain socket constants..." >&4 for ENUM in MSG_CTRUNC MSG_DONTROUTE MSG_OOB MSG_PEEK MSG_PROXY SCM_RIGHTS; do - enum=`$echo $ENUM|./tr '[A-Z]' '[a-z]'` - $cat >try.c <try.c < #include int main() { int i = $ENUM; } EOF - val="$undef" - set try; if eval $compile; then - val="$define" - fi - set d_${enum}; eval $setvar - $rm_try + val="$undef" + set try; if eval $compile; then + val="$define" + fi + set d_${enum}; eval $setvar + $rm_try done : see if this is a sys/uio.h system @@ -19093,21 +19097,21 @@ Revision='$Revision' : check for alignment requirements echo " " case "$alignbytes" in -'') echo "Checking alignment constraints..." >&4 + '') echo "Checking alignment constraints..." >&4 if $test "X$uselongdouble" = Xdefine -a "X$d_longdbl" = Xdefine; then - $cat >try.c <<'EOCP' + $cat >try.c <<'EOCP' typedef long double NV; EOCP else - $cat >try.c <<'EOCP' + $cat >try.c <<'EOCP' typedef double NV; EOCP fi $cat >>try.c <<'EOCP' #include struct foobar { - char foo; - NV bar; + char foo; + NV bar; } try_algn; int main() { @@ -19117,24 +19121,24 @@ int main() EOCP set try if eval $compile_ok; then - dflt=`$run ./try` + dflt=`$run ./try` else - dflt='8' - echo "(I can't seem to compile the test program...)" + dflt='8' + echo "(I can't seem to compile the test program...)" fi case "$multiarch" in - *$define*) + *$define*) : The usual safe value is 8, but Darwin with -Duselongdouble : needs 16. Hence, we will take 8 as a minimum, but allow : Configure to pick a larger value if needed. if $test "$dflt" -lt 8; then dflt='8' - echo "Setting alignment to 8 for multiarch support.">&4 + echo "Setting alignment to 8 for multiarch support.">&4 fi ;; esac ;; -*) dflt="$alignbytes" + *) dflt="$alignbytes" ;; esac rp="Doubles must be aligned on a how-many-byte boundary?" @@ -19142,7 +19146,6 @@ rp="Doubles must be aligned on a how-many-byte boundary?" alignbytes="$ans" $rm_try - : set the base revision baserev=5.0 @@ -19547,7 +19550,7 @@ if $test "X$fflushNULL" = X -o "X$fflushall" = X; then output='' set try -DTRY_FPUTC if eval $compile; then - $run ./try 2>/dev/null + $run ./try 2>/dev/null code="$?" $from try.out if $test ! -s try.out -a "X$code" = X42; then @@ -19558,7 +19561,7 @@ if $test "X$fflushNULL" = X -o "X$fflushall" = X; then '') set try -DTRY_FPRINTF if eval $compile; then - $run ./try 2>/dev/null + $run ./try 2>/dev/null code="$?" $from try.out if $test ! -s try.out -a "X$code" = X42; then @@ -19572,7 +19575,7 @@ fi case "$fflushNULL" in '') set try -DTRY_FFLUSH_NULL $output if eval $compile; then - $run ./try 2>/dev/null + $run ./try 2>/dev/null code="$?" $from try.out if $test -s try.out -a "X$code" = X42; then @@ -19603,43 +19606,43 @@ main(int argc, char **argv) int i; char *bp = buf; while (1) { - while ((i = getc(stdin)) != -1 - && (*bp++ = i) != '\n' - && bp < &buf[1024]) - /* DO NOTHING */ ; - *bp = '\0'; - fprintf(stdout, "%s", buf); - fflush(NULL); - if (i == -1) + while ((i = getc(stdin)) != -1 + && (*bp++ = i) != '\n' + && bp < &buf[1024]) + /* DO NOTHING */ ; + *bp = '\0'; + fprintf(stdout, "%s", buf); + fflush(NULL); + if (i == -1) return 0; - bp = buf; + bp = buf; } } EOCP - fflushNULL="$define" - set tryp - if eval $compile; then - $rm -f tryp.out - # Copy the .c file to the remote host ($to is an ssh-alike if targethost is set) - if $test "X$targethost" != X; then - $to tryp.c - $run ./tryp \< tryp.c 2>/dev/null > tryp.out - else - $cat tryp.c | $run ./tryp 2>/dev/null > tryp.out - fi - if cmp tryp.c tryp.out >/dev/null 2>&1; then - $cat >&4 </dev/null > tryp.out + else + $cat tryp.c | $run ./tryp 2>/dev/null > tryp.out + fi + if cmp tryp.c tryp.out >/dev/null 2>&1; then + $cat >&4 <&4 <&4 </dev/null > tryp.out - else - $cat tryp.c | $run ./tryp 2>/dev/null > tryp.out - fi + if $test "X$targethost" != X; then + $to tryp.c + $run ./tryp \< tryp.c 2>/dev/null > tryp.out + else + $cat tryp.c | $run ./tryp 2>/dev/null > tryp.out + fi if cmp tryp.c tryp.out >/dev/null 2>&1; then $cat >&4 <&4;; -*) if ./Cppsym pyr; then - case "`$run /bin/universe`" in + "$define") echo "You have POSIX termios.h... good!" >&4;; + *) if ./Cppsym pyr; then + case "`$run /bin/universe`" in ucb) if $test `./findhdr sgtty.h`; then - val2="$define" - echo " found." >&4 - else - echo "System is pyramid with BSD universe." - ./warn " not found--you could have problems." - fi;; - *) if $test `./findhdr termio.h`; then - val="$define" - echo " found." >&4 - else - echo "System is pyramid with USG universe." - ./warn " not found--you could have problems." - fi;; - esac - elif ./usg; then - if $test `./findhdr termio.h`; then - echo " found." >&4 - val="$define" - elif $test `./findhdr sgtty.h`; then - echo " found." >&4 val2="$define" - else - ./warn "Neither nor found--cross fingers!" - fi - else - if $test `./findhdr sgtty.h`; then echo " found." >&4 - val2="$define" - elif $test `./findhdr termio.h`; then - echo " found." >&4 + else + echo "System is pyramid with BSD universe." + ./warn " not found--you could have problems." + fi;; + *) if $test `./findhdr termio.h`; then val="$define" - else - ./warn "Neither nor found--cross fingers!" - fi + echo " found." >&4 + else + echo "System is pyramid with USG universe." + ./warn " not found--you could have problems." + fi;; + esac + elif ./usg; then + if $test `./findhdr termio.h`; then + echo " found." >&4 + val="$define" + elif $test `./findhdr sgtty.h`; then + echo " found." >&4 + val2="$define" + else + ./warn "Neither nor found--cross fingers!" + fi + else + if $test `./findhdr sgtty.h`; then + echo " found." >&4 + val2="$define" + elif $test `./findhdr termio.h`; then + echo " found." >&4 + val="$define" + else + ./warn "Neither nor found--cross fingers!" + fi fi;; esac set i_termio; eval $setvar @@ -23475,6 +23478,7 @@ ignore_versioned_solibs='$ignore_versioned_solibs' inc_version_list='$inc_version_list' inc_version_list_init='$inc_version_list_init' incpath='$incpath' +incpth='$incpth' inews='$inews' initialinstalllocation='$initialinstalllocation' installarchlib='$installarchlib' @@ -23748,6 +23752,7 @@ tar='$tar' targetarch='$targetarch' targetdir='$targetdir' targethost='$targethost' +targetmkdir='$targetmkdir' targetport='$targetport' tbl='$tbl' tee='$tee' diff --git a/Porting/Glossary b/Porting/Glossary index c0d98ea..7f649a8 100644 --- a/Porting/Glossary +++ b/Porting/Glossary @@ -1335,6 +1335,12 @@ d_libm_lib_version (d_libm_lib_version.U): which indicates to the C program that math.h defines _LIB_VERSION being available in libm +d_libname_unique (so.U): + This variable is defined if the target system insists on unique + basenames for shared library files. This is currently true on Android, + false everywhere else we know of. + Defaults to 'undef'. + d_link (d_link.U): This variable conditionally defines HAS_LINK if link() is available to create hard links. @@ -3395,6 +3401,11 @@ incpath (usrinc.U): right one, as in "$incpath/usr/include" or "$incpath/usr/lib". Value can be "" or "/bsd43" on mips. +incpth (libpth.U): + This variable must precede the normal include path to get the + right one, as in "$incpath/usr/include" or "$incpath/usr/lib". + Value can be "" or "/bsd43" on mips. + inews (Loc.U): This variable is defined but not used by Configure. The value is the empty string and is not useful. @@ -4865,6 +4876,12 @@ sysman (sysman.U): pages. Rather it is the place where Configure may look to find manual for unix commands (section 1 of the manual usually). See mansrc. +sysroot (Sysroot.U): + This variable is empty unless supplied by the Configure user. + It can contain a path to an alternative root directory, under which + headers and libraries for the compilation target can be found. This + is generally used when cross-compiling using a gcc-like compiler. + tail (Loc.U): This variable is defined but not used by Configure. The value is the empty string and is not useful. @@ -4877,6 +4894,24 @@ targetarch (Cross.U): If cross-compiling, this variable contains the target architecture. If not, this will be empty. +targetdir (Cross.U): + This variable contains a path that will be created on the target + host using targetmkdir, and then used to copy the cross-compiled + executables to. Defaults to '/tmp' if not set. + +targethost (Cross.U): + This variable contains the name of a separate host machine that + can be used to run compiled test programs and perl tests on. + Set to empty string if not in use. + +targetmkdir (Cross.U): + This variable contains the command used by Configure to create a + new directory on the target host. + +targetport (Cross.U): + This variable contains the number of a network port to be used to + connect to the host in targethost, if unset defaults to 22 for ssh. + tbl (Loc.U): This variable is defined but not used by Configure. The value is the empty string and is not useful. diff --git a/config_h.SH b/config_h.SH index 8f7a058..2a3ca30 100755 --- a/config_h.SH +++ b/config_h.SH @@ -840,26 +840,6 @@ sed <$CONFIG_H -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un */ #$i_syswait I_SYS_WAIT /**/ -/* I_TERMIO: - * This symbol, if defined, indicates that the program should include - * rather than . There are also differences in - * the ioctl() calls that depend on the value of this symbol. - */ -/* I_TERMIOS: - * This symbol, if defined, indicates that the program should include - * the POSIX termios.h rather than sgtty.h or termio.h. - * There are also differences in the ioctl() calls that depend on the - * value of this symbol. - */ -/* I_SGTTY: - * This symbol, if defined, indicates that the program should include - * rather than . There are also differences in - * the ioctl() calls that depend on the value of this symbol. - */ -#$i_termio I_TERMIO /**/ -#$i_termios I_TERMIOS /**/ -#$i_sgtty I_SGTTY /**/ - /* I_UNISTD: * This symbol, if defined, indicates to the C program that it should * include . @@ -1022,7 +1002,7 @@ sed <$CONFIG_H -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un * so the default case (for NeXT) is big endian to catch them. * This might matter for NeXT 3.0. */ -#if defined(MULTIARCH) +#if defined(USE_CROSS_COMPILE) || defined(MULTIARCH) # ifdef __LITTLE_ENDIAN__ # if LONGSIZE == 4 # define BYTEORDER 0x1234 @@ -3359,6 +3339,26 @@ sed <$CONFIG_H -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un #$d_vendorlib PERL_VENDORLIB_EXP "$vendorlibexp" /**/ #$d_vendorlib PERL_VENDORLIB_STEM "$vendorlib_stem" /**/ +/* I_TERMIO: + * This symbol, if defined, indicates that the program should include + * rather than . There are also differences in + * the ioctl() calls that depend on the value of this symbol. + */ +/* I_TERMIOS: + * This symbol, if defined, indicates that the program should include + * the POSIX termios.h rather than sgtty.h or termio.h. + * There are also differences in the ioctl() calls that depend on the + * value of this symbol. + */ +/* I_SGTTY: + * This symbol, if defined, indicates that the program should include + * rather than . There are also differences in + * the ioctl() calls that depend on the value of this symbol. + */ +#$i_termio I_TERMIO /**/ +#$i_termios I_TERMIOS /**/ +#$i_sgtty I_SGTTY /**/ + /* PERL_USE_DEVEL: * This symbol, if defined, indicates that Perl was configured with * -Dusedevel, to enable development features. This should not be diff --git a/pod/perlport.pod b/pod/perlport.pod index 7fef42f..3072d24 100644 --- a/pod/perlport.pod +++ b/pod/perlport.pod @@ -808,6 +808,7 @@ are a few of the more popular Unix flavors: FreeBSD freebsd freebsd-i386 Haiku haiku BePC-haiku Linux linux arm-linux + Linux linux armv5tel-linux Linux linux i386-linux Linux linux i586-linux Linux linux ppc-linux diff --git a/uconfig.h b/uconfig.h index 79b5aaf..30ecc5a 100644 --- a/uconfig.h +++ b/uconfig.h @@ -805,26 +805,6 @@ */ /*#define I_SYS_WAIT / **/ -/* I_TERMIO: - * This symbol, if defined, indicates that the program should include - * rather than . There are also differences in - * the ioctl() calls that depend on the value of this symbol. - */ -/* I_TERMIOS: - * This symbol, if defined, indicates that the program should include - * the POSIX termios.h rather than sgtty.h or termio.h. - * There are also differences in the ioctl() calls that depend on the - * value of this symbol. - */ -/* I_SGTTY: - * This symbol, if defined, indicates that the program should include - * rather than . There are also differences in - * the ioctl() calls that depend on the value of this symbol. - */ -/*#define I_TERMIO / **/ -/*#define I_TERMIOS / **/ -/*#define I_SGTTY / **/ - /* I_UNISTD: * This symbol, if defined, indicates to the C program that it should * include . @@ -987,7 +967,7 @@ * so the default case (for NeXT) is big endian to catch them. * This might matter for NeXT 3.0. */ -#if defined(MULTIARCH) +#if defined(USE_CROSS_COMPILE) || defined(MULTIARCH) # ifdef __LITTLE_ENDIAN__ # if LONGSIZE == 4 # define BYTEORDER 0x1234 @@ -3324,6 +3304,26 @@ /*#define PERL_VENDORLIB_EXP "" / **/ /*#define PERL_VENDORLIB_STEM "" / **/ +/* I_TERMIO: + * This symbol, if defined, indicates that the program should include + * rather than . There are also differences in + * the ioctl() calls that depend on the value of this symbol. + */ +/* I_TERMIOS: + * This symbol, if defined, indicates that the program should include + * the POSIX termios.h rather than sgtty.h or termio.h. + * There are also differences in the ioctl() calls that depend on the + * value of this symbol. + */ +/* I_SGTTY: + * This symbol, if defined, indicates that the program should include + * rather than . There are also differences in + * the ioctl() calls that depend on the value of this symbol. + */ +/*#define I_TERMIO / **/ +/*#define I_TERMIOS / **/ +/*#define I_SGTTY / **/ + /* PERL_USE_DEVEL: * This symbol, if defined, indicates that Perl was configured with * -Dusedevel, to enable development features. This should not be @@ -4718,6 +4718,6 @@ #endif /* Generated from: - * 4ce7b989417303946dd7101ed52557e157c57900e9dbff6b5799a7b6af48dbd3 config_h.SH + * 22d1d13b2edddb32d717d415a6df2a92c7c772d8af897d5d2bf2cc14b890ea35 config_h.SH * 71b0dcf437b30c409fc23b5c4c6ec2c988fc419295a650fe80f93a6d5fb0ff94 uconfig.sh * ex: set ro: */ -- 2.7.4