X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=hints%2Fdynixptx.sh;h=b08dbc29d7443224d40bac2713ea1b48881d7863;hb=bc961b003e8925ea1668627dcdfb26c75212b4c6;hp=d44f6b82cdea72a18cfd5366b719d573410d3541;hpb=a2c75dc2571a8447475cb62d22a998ab5aa3d54b;p=p5sagit%2Fp5-mst-13.2.git diff --git a/hints/dynixptx.sh b/hints/dynixptx.sh index d44f6b8..b08dbc2 100644 --- a/hints/dynixptx.sh +++ b/hints/dynixptx.sh @@ -1,5 +1,9 @@ # Sequent Dynix/Ptx v. 4 hints # Created 1996/03/15 by Brad Howerter, bhower@wgc.woodward.com + +# Modified 1998/11/10 by Martin J. Bligh, mbligh@sequent.com +# to incorporate work done by Kurtis D. Rader & myself. + # Use Configure -Dcc=gcc to use gcc. # cc wants -G for dynamic loading @@ -8,32 +12,49 @@ lddlflags='-G' # Remove inet to avoid this error in Configure, which causes Configure # to be unable to figure out return types: # dynamic linker: ./ssize: can't find libinet.so, -# link with -lsocket instead of -l inet +# link with -lsocket instead of -linet libswanted=`echo $libswanted | sed -e 's/ inet / /'` # Configure defaults to usenm='y', which doesn't work very well usenm='n' -# The Perl library has to be built as a shared library so that dynamic -# loading will work (otherwise code loaded with dlopen() won't be able -# to reference symbols in the main part of perl). Note that since -# Configure doesn't normally prompt about $d_shrplib this will cause a -# `Whoa there!'. This is normal, just keep the recommended value. A -# consequence of all this is that you've got to include the source -# directory in your LD_LIBRARY_PATH when you're building and testing -# perl. -d_shrplib=define - -cat <<'EOM' >&4 - -If you get a 'Whoa there!' with regard to d_shrplib, you can ignore -it, and just keep the recommended value. - -If you wish to use dynamic linking, you must use - LD_LIBRARY_PATH=`pwd`; export LD_LIBRARY_PATH -or - setenv LD_LIBRARY_PATH `pwd` -before running make. - -EOM +# removed d_vfork='define'; we can't use it any more ... + +case "$optimize" in +'') optimize='-Wc,-O3 -W0,-xstring' ;; +esac + +# We override d_socket because it's very hard for Configure to get it right +# in Dynix/Ptx, for several reasons. +# (1) the socket interface is in libsocket.so -- this wouldn't be so hard +# for Configure to fathom...but it gets more tangled. +# (2) if the system has been patched there can be libsocket.so.1.FOO.BAR, +# the FOO.BAR being the old version of the system before the patching. +# Configure picks up the old broken version. +# (3) libsocket.so points to either libsocket.so.1 (v4.2) +# or libsocket.so.1.1 (v4.4) The socket call in libsocket.so.1.1 +# (BSD socket library) is called bsd_socket(), and has a macro wrapper +# to hide this. +# This information kindly provided by Martin J. Bligh of Sequent. +# As he puts it: +# "Sequent has unusual capabilities, taking it above and beyond +# the complexity of any other vendor" :-) +# +# Jarkko Hietaniemi November 1998 + +case "$osvers" in +4.[45]*) # configure doesn't find sockets, as they're in libsocket, not libc + d_socket='define' + d_oldsock='undef' + d_sockpair='define' + ;; +4.2*) # on ptx/TCP 4.2, we can use BSD sockets, but they're not the default. + cppflags="$cppflags -Wc,+bsd-socket" + ccflags="$ccflags -Wc,+bsd-socket" + ldflags="$ldflags -Wc,+bsd-socket" + d_socket='define' + d_oldsock='undef' + d_sockpair='define' + ;; +esac