# Len Johnson <lenjay@ibm.net>
# Bud Huff <BAHUFF@us.oracle.com>
# Peter Prymmer <pvhp@forte.com>
-# Andy Dougherty <doughera@lafcol.lafayette.edu>
+# Andy Dougherty <doughera@lafayette.edu>
# Tim Bunce <Tim.Bunce@ig.co.uk>
#
# as well as the authors of the aix.sh file
'') ld='c89' ;;
esac
-# -DMAXSIG=38 maximum signal number
+# -DMAXSIG=39 maximum signal number
# -DOEMVS is used in place of #ifdef __MVS__ in certain places.
# -D_OE_SOCKETS alters system headers.
# -D_XOPEN_SOURCE_EXTENDEDA alters system headers.
# -DEBCDIC should come from Configure and need not be mentioned here.
# Prepend your favorites with Configure -Dccflags=your_favorites
case "$ccflags" in
-'') ccflags='-DMAXSIG=38 -DOEMVS -D_OE_SOCKETS -D_XOPEN_SOURCE_EXTENDED -D_ALL_SOURCE -DYYDYNAMIC' ;;
-*) ccflags="$ccflags -DMAXSIG=38 -DOEMVS -D_OE_SOCKETS -D_XOPEN_SOURCE_EXTENDED -D_ALL_SOURCE -DYYDYNAMIC" ;;
+'') ccflags='-2 -Wc,XPLINK -DMAXSIG=39 -DOEMVS -D_OE_SOCKETS -D_XOPEN_SOURCE_EXTENDED -D_ALL_SOURCE -DYYDYNAMIC' ;;
+*) ccflags="$ccflags -2 -Wc,XPLINK -DMAXSIG=39 -DOEMVS -D_OE_SOCKETS -D_XOPEN_SOURCE_EXTENDED -D_ALL_SOURCE -DYYDYNAMIC" ;;
esac
# Turning on optimization breaks perl.
# information at the end of the executable (=> smaller binaries).
# Override this option with -Dldflags='whatever else you wanted'.
case "$ldflags" in
-'') ldflags='-Wl,EDIT=NO' ;;
+'') ldflags='-Wl,EDIT=NO -Wl,XPLINK,dll' ;;
esac
# In order to build with dynamic be sure to specify:
esac
libperl="libperl.$so"
ccflags="$ccflags -D_SHR_ENVIRON -DPERL_EXTERNAL_GLOB -Wc,dll"
- cccdlflags='-c -Wc,dll,EXPORTALL'
+ cccdlflags='-c -Wc,XPLINK,dll,EXPORTALL'
# The following will need to be modified for the installed libperl.x.
# The modification to Config.pm is done by the installperl script after the build and test.
- ccdlflags="-W l,dll `pwd`/libperl.x"
- lddlflags="-W l,dll `pwd`/libperl.x"
+ ccdlflags="-W l,XPLINK,dll `pwd`/libperl.x"
+ lddlflags="-W l,XPLINK,dll `pwd`/libperl.x"
;;
esac
# even on static builds using LIBPATH should be OK.
'') ldlibpthname=LIBPATH ;;
esac
+# The folowing should always be used
+d_oldpthreads='define'
+
# Header files to include.
-# You can override these with Configure -Ui_time -Ui_systime.
+# You can override these with Configure -Ui_time -Ui_systime -Dd_pthread_atfork.
case "$i_time" in
'') i_time='define' ;;
esac
case "$i_systime" in
'') i_systime='define' ;;
esac
+case "$d_pthread_atfork" in
+'') d_pthread_atfork='undef' ;;
+esac
+case "$d_pthread_atfork" in
+'') d_pthread_atfork='undef' ;;
+esac
# (from aix.sh)
# uname -m output is too specific and not appropriate here
# under a compiler other than c89.
case "$usedl" in
define)
-echo 'cat >.$$.c; '"$cc"' -D_OE_SOCKETS -D_XOPEN_SOURCE_EXTENDED -D_ALL_SOURCE -D_SHR_ENVIRON -E -Wc,NOLOC ${1+"$@"} .$$.c; rm .$$.c' > cppstdin
+echo 'cat >.$$.c; '"$cc"' -D_OE_SOCKETS -D_XOPEN_SOURCE_EXTENDED -D_ALL_SOURCE -D_SHR_ENVIRON -E -Wc,"LANGLVL(DOLLARINNAMES)",NOLOC ${1+"$@"} .$$.c | grep -v "??="; rm .$$.c' > cppstdin
;;
*)
-echo 'cat >.$$.c; '"$cc"' -D_OE_SOCKETS -D_XOPEN_SOURCE_EXTENDED -D_ALL_SOURCE -E -Wc,NOLOC ${1+"$@"} .$$.c; rm .$$.c' > cppstdin
+echo 'cat >.$$.c; '"$cc"' -D_OE_SOCKETS -D_XOPEN_SOURCE_EXTENDED -D_ALL_SOURCE -E -Wc,"LANGLVL(DOLLARINNAMES)",NOLOC ${1+"$@"} .$$.c | grep -v "??="; rm .$$.c' > cppstdin
;;
esac
fi
fi
+# Most of the time gcvt() seems to work fine but
+# sometimes values like 0.1, 0.2, come out as "10", "20",
+# a trivial Perl demonstration snippet is 'print 0.1'.
+# The -W 0,float(ieee) seems to be the switch breaking gcvt().
+# sprintf() seems to get things right(er).
+gconvert_preference=sprintf
+
cat >config.arch<<'__CONFIG_ARCH__'
# The '-W 0,float(ieee)' cannot be used during Configure as ldflags.
-ccflags="$ccflags -W 0,float\(ieee\)"
+ccflags="$ccflags -W 0,float(ieee)"
__CONFIG_ARCH__
+
+# Configure gets these wrong for some reason.
+d_gethostbyaddr_r='undef'
+d_gethostbyname_r='undef'
+d_gethostent_r='undef'
+