From: Jarkko Hietaniemi Date: Sun, 25 Jul 1999 10:12:07 +0000 (+0000) Subject: Circumcode a strange shell(?) bug in AIX found X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=commitdiff_plain;h=dd4e71fdc0d3da1d09384ab498212866e7d17b94;p=p5sagit%2Fp5-mst-13.2.git Circumcode a strange shell(?) bug in AIX found while trying to do -Duse64bits (which I couldn't do in the end because the CPU isn't 64-bit in that box, but at least now the probing doesn't crash.) p4raw-id: //depot/cfgperl@3731 --- diff --git a/Configure b/Configure index 04f7db3..a7e7d62 100755 --- a/Configure +++ b/Configure @@ -20,7 +20,7 @@ # $Id: Head.U,v 3.0.1.9 1997/02/28 15:02:09 ram Exp $ # -# Generated on Fri Jul 23 13:08:17 EET DST 1999 [metaconfig 3.0 PL70] +# Generated on Sun Jul 25 13:04:13 EET DST 1999 [metaconfig 3.0 PL70] # (with additional metaconfig patches by perlbug@perl.com) cat >/tmp/c1$$ <&4 -else - echo "AFS does not seem to be running..." >&4 -fi - : decide how portable to be. Allow command line overrides. case "$d_portable" in "$undef") ;; @@ -3001,14 +2988,13 @@ case "$prefix" in esac $cat <&4 +else + echo "AFS does not seem to be running..." >&4 +fi + +: determine installation prefix for where package is to be installed. +if $afs; then +$cat <&4 + +WARNING: Previous versions of perl installed man3 pages into +$privlib/man/man3. This version will suggest a +new default of $dflt. +EOM + tdflt=$dflt + dflt='n' + rp='Do you wish to preserve the old behavior?(y/n)' + . ./myread + case "$ans" in + y*) dflt="$privlib/man/man3" ;; + *) dflt=$tdflt ;; + esac + fi ;; ' ') dflt=none;; *) dflt="$man3dir" ;; esac echo " " - fn=dn+~ rp="Where do the $package library man pages (source) go?" . ./getfile -if test "X$man3direxp" != "X$ansexp"; then - installman3dir='' -fi - man3dir="$ans" man3direxp="$ansexp" -case "$man3dir" in -'') man3dir=' ' +case "$man1dir" in +'') man3dir=' ' installman3dir='';; esac -if $afs; then - $cat <config.h -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un- */ #define LOC_SED "$full_sed" /**/ -/* BIN: - * This symbol holds the path of the bin directory where the package will - * be installed. Program must be prepared to deal with ~name substitution. - */ -/* BIN_EXP: - * This symbol is the filename expanded version of the BIN symbol, for - * programs that do not want to deal with that at run-time. - */ -#define BIN "$bin" /**/ -#define BIN_EXP "$binexp" /**/ - /* HAS_ALARM: * This symbol, if defined, indicates that the alarm routine is * available. @@ -1435,6 +1424,84 @@ sed <config.h -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un- */ #$ebcdic EBCDIC /**/ +/* ARCHLIB: + * This variable, if defined, holds the name of the directory in + * which the user wants to put architecture-dependent public + * library files for $package. It is most often a local directory + * such as /usr/local/lib. Programs using this variable must be + * prepared to deal with filename expansion. If ARCHLIB is the + * same as PRIVLIB, it is not defined, since presumably the + * program already searches PRIVLIB. + */ +/* ARCHLIB_EXP: + * This symbol contains the ~name expanded version of ARCHLIB, to be used + * in programs that are not prepared to deal with ~ expansion at run-time. + */ +#$d_archlib ARCHLIB "$archlib" /**/ +#$d_archlib ARCHLIB_EXP "$archlibexp" /**/ + +/* BIN: + * This symbol holds the path of the bin directory where the package will + * be installed. Program must be prepared to deal with ~name substitution. + */ +/* BIN_EXP: + * This symbol is the filename expanded version of the BIN symbol, for + * programs that do not want to deal with that at run-time. + */ +#define BIN "$bin" /**/ +#define BIN_EXP "$binexp" /**/ + +/* INSTALL_USR_BIN_PERL: + * This symbol, if defined, indicates that Perl is to be installed + * also as /usr/bin/perl. + */ +#$installusrbinperl INSTALL_USR_BIN_PERL /**/ + +/* PRIVLIB: + * This symbol contains the name of the private library for this package. + * The library is private in the sense that it needn't be in anyone's + * execution path, but it should be accessible by the world. The program + * should be prepared to do ~ expansion. + */ +/* PRIVLIB_EXP: + * This symbol contains the ~name expanded version of PRIVLIB, to be used + * in programs that are not prepared to deal with ~ expansion at run-time. + */ +#define PRIVLIB "$privlib" /**/ +#define PRIVLIB_EXP "$privlibexp" /**/ + +/* SITEARCH: + * This symbol contains the name of the private library for this package. + * The library is private in the sense that it needn't be in anyone's + * execution path, but it should be accessible by the world. The program + * should be prepared to do ~ expansion. + * The standard distribution will put nothing in this directory. + * Individual sites may place their own extensions and modules in + * this directory. + */ +/* SITEARCH_EXP: + * This symbol contains the ~name expanded version of SITEARCH, to be used + * in programs that are not prepared to deal with ~ expansion at run-time. + */ +#define SITEARCH "$sitearch" /**/ +#define SITEARCH_EXP "$sitearchexp" /**/ + +/* SITELIB: + * This symbol contains the name of the private library for this package. + * The library is private in the sense that it needn't be in anyone's + * execution path, but it should be accessible by the world. The program + * should be prepared to do ~ expansion. + * The standard distribution will put nothing in this directory. + * Individual sites may place their own extensions and modules in + * this directory. + */ +/* SITELIB_EXP: + * This symbol contains the ~name expanded version of SITELIB, to be used + * in programs that are not prepared to deal with ~ expansion at run-time. + */ +#define SITELIB "$sitelib" /**/ +#define SITELIB_EXP "$sitelibexp" /**/ + /* OSNAME: * This symbol contains the name of the operating system, as determined * by Configure. You shouldn't rely on it too much; the specific @@ -2070,22 +2137,6 @@ sed <config.h -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un- #define M_VOID /* Xenix strikes again */ #endif -/* ARCHLIB: - * This variable, if defined, holds the name of the directory in - * which the user wants to put architecture-dependent public - * library files for $package. It is most often a local directory - * such as /usr/local/lib. Programs using this variable must be - * prepared to deal with filename expansion. If ARCHLIB is the - * same as PRIVLIB, it is not defined, since presumably the - * program already searches PRIVLIB. - */ -/* ARCHLIB_EXP: - * This symbol contains the ~name expanded version of ARCHLIB, to be used - * in programs that are not prepared to deal with ~ expansion at run-time. - */ -#$d_archlib ARCHLIB "$archlib" /**/ -#$d_archlib ARCHLIB_EXP "$archlibexp" /**/ - /* DLSYM_NEEDS_UNDERSCORE: * This symbol, if defined, indicates that we need to prepend an * underscore to the symbol name before calling dlsym(). This only @@ -2330,12 +2381,6 @@ sed <config.h -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un- */ #$i_sysstatvfs I_SYS_STATVFS /**/ -/* INSTALL_USR_BIN_PERL: - * This symbol, if defined, indicates that Perl is to be installed - * also as /usr/bin/perl. - */ -#$installusrbinperl INSTALL_USR_BIN_PERL /**/ - /* HAS_FSTAT64: * This symbol, if defined, indicates that the fstat64 routine is * available to stat files (fds) larger than 2 gigabytes. @@ -2400,19 +2445,6 @@ sed <config.h -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un- #$d_off64_t HAS_OFF64_T /**/ #$d_dirent64_s HAS_STRUCT_DIRENT64 /**/ -/* PRIVLIB: - * This symbol contains the name of the private library for this package. - * The library is private in the sense that it needn't be in anyone's - * execution path, but it should be accessible by the world. The program - * should be prepared to do ~ expansion. - */ -/* PRIVLIB_EXP: - * This symbol contains the ~name expanded version of PRIVLIB, to be used - * in programs that are not prepared to deal with ~ expansion at run-time. - */ -#define PRIVLIB "$privlib" /**/ -#define PRIVLIB_EXP "$privlibexp" /**/ - /* SELECT_MIN_BITS: * This symbol holds the minimum number of bits operated by select. * That is, if you do select(n, ...), how many bits at least will be @@ -2422,38 +2454,6 @@ sed <config.h -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un- */ #define SELECT_MIN_BITS $selectminbits /**/ -/* SITEARCH: - * This symbol contains the name of the private library for this package. - * The library is private in the sense that it needn't be in anyone's - * execution path, but it should be accessible by the world. The program - * should be prepared to do ~ expansion. - * The standard distribution will put nothing in this directory. - * Individual sites may place their own extensions and modules in - * this directory. - */ -/* SITEARCH_EXP: - * This symbol contains the ~name expanded version of SITEARCH, to be used - * in programs that are not prepared to deal with ~ expansion at run-time. - */ -#define SITEARCH "$sitearch" /**/ -#define SITEARCH_EXP "$sitearchexp" /**/ - -/* SITELIB: - * This symbol contains the name of the private library for this package. - * The library is private in the sense that it needn't be in anyone's - * execution path, but it should be accessible by the world. The program - * should be prepared to do ~ expansion. - * The standard distribution will put nothing in this directory. - * Individual sites may place their own extensions and modules in - * this directory. - */ -/* SITELIB_EXP: - * This symbol contains the ~name expanded version of SITELIB, to be used - * in programs that are not prepared to deal with ~ expansion at run-time. - */ -#define SITELIB "$sitelib" /**/ -#define SITELIB_EXP "$sitelibexp" /**/ - /* STARTPERL: * This variable contains the string to put in front of a perl * script to make sure (one hopes) that it runs with perl and not diff --git a/hints/aix.sh b/hints/aix.sh index 2bd092d..9b155e7 100644 --- a/hints/aix.sh +++ b/hints/aix.sh @@ -185,8 +185,19 @@ EOM esac ccflags="$ccflags `getconf XBS5_LPBIG_OFFBIG_CFLAGS`" ccflags="$ccflags -DUSE_LONG_LONG" + ldflags="$ldflags `getconf XBS5_LPBIG_OFFBIG_LDFLAGS`" - libswanted="$libswanted `getconf XBS5_LPBIG_OFFBIG_LIBS`" + # _Somehow_ in AIX 4.3.1.0 the above getconf call manages to + # insert(?) *something* to $ldflags so that later (in Configure) evaluating + # $ldflags causes a newline after the '-b64' (the result of the getconf). + # Try it out: just uncomment the below line and rerun Configure: +# echo >& "AIX $ldflags mystery" ; exit 1 + # Just don't ask me how AIX does it. + # Therefore the line re-evaluating ldflags: it seems to drop the whatever + # AIX managed to break. --jhi + ldflags="`echo $ldflags`" + + libswanted="$libswanted `getconf XBS5_LPBIG_OFFBIG_LIBS|sed -e 's@^-l@@' -e 's@ -l@ @g'`" # When a 64-bit cc becomes available $archname64 # may need setting so that $archname gets it attached. ;;