X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=hints%2Fqnx.sh;h=06d9010144ef28ddfa0f97c7880435c82bc0a0b8;hb=619ffc2be66f166b301c5b0d14a8bbba728675bc;hp=9334c943398e0674b0e3c82d2a46dbb4fa0af544;hpb=68dc074516a6859e3424b48d1647bcb08b1a1a7d;p=p5sagit%2Fp5-mst-13.2.git diff --git a/hints/qnx.sh b/hints/qnx.sh index 9334c94..06d9010 100644 --- a/hints/qnx.sh +++ b/hints/qnx.sh @@ -1,10 +1,10 @@ #---------------------------------------------------------------- # QNX hints # -# As of perl5.003_09, perl5 will compile without errors -# and pass almost all the tests in the test suite. The remaining -# failures have been identified as bugs in the Watcom libraries -# which I hope will be fixed in the near future. +# As of perl5.004_04, all tests pass under: +# QNX 4.23A +# Watcom 10.6 with Beta/970211.wcc.update.tar.F +# socket3r.lib Nov21 1996. # # As with many unix ports, this one depends on a few "standard" # unix utilities which are not necessarily standard for QNX. @@ -33,19 +33,12 @@ #---------------------------------------------------------------- # Outstanding Issues: # lib/posix.t test fails on test 17 because acos(1) != 0. -# Watcom promises to fix this in next release. +# Resolved in 970211 Beta # lib/io_udp.t test hangs because of a bug in getsockname(). # Fixed in latest BETA socket3r.lib -# If there is a softlink in your path, Findbin will fail. -# This is a documented feature of getpwd(). # There is currently no support for dynamically linked # libraries. #---------------------------------------------------------------- -# At present, all QNX systems are equivalent architectures, -# so it might be reasonable to call archname=qnx rather than -# making an unnecessary distinction between AT-qnx and PCI-qnx, -# for example. -#---------------------------------------------------------------- # These hints were submitted by: # Norton T. Allen # Harvard University Atmospheric Research Project @@ -54,6 +47,18 @@ # If you have suggestions or changes, please let me know. #---------------------------------------------------------------- +echo "" +echo "Some tests may fail. Please read the hints/qnx.sh file." +echo "" + +#---------------------------------------------------------------- +# At present, all QNX systems are equivalent architectures, +# so it is reasonable to call archname=x86-qnx rather than +# making an unnecessary distinction between AT-qnx and PCI-qnx, +# for example. +#---------------------------------------------------------------- +archname='x86-qnx' + #---------------------------------------------------------------- # QNX doesn't come with a csh and the ports of tcsh I've used # don't work reliably: @@ -63,6 +68,16 @@ d_csh='undef' full_csh='' #---------------------------------------------------------------- +# setuid scripts are secure under QNX. +# (Basically, the same race conditions apply, but assuming +# the scripts are located in a secure directory, the methods +# for exploiting the race condition are defeated because +# the loader expands the script name fully before executing +# the interpreter.) +#---------------------------------------------------------------- +d_suidsafe='define' + +#---------------------------------------------------------------- # difftime is implemented as a preprocessor macro, so it doesn't show # up in the libraries: #---------------------------------------------------------------- @@ -74,16 +89,6 @@ d_difftime='define' #---------------------------------------------------------------- d_strtod='define' -#---------------------------------------------------------------- -# The following exist in the libraries, but there are no -# prototypes available: -#---------------------------------------------------------------- -d_setregid='undef' -d_setreuid='undef' -d_setlinebuf='undef' -d_truncate='undef' -d_getpgid='undef' - lib_ext='3r.lib' libc='/usr/lib/clib3r.lib' @@ -93,13 +98,9 @@ libc='/usr/lib/clib3r.lib' # constructs make a lot of noise, so I turn those warnings off. # A few still remain... # -# HIDEMYMALLOC is necessary if using mymalloc since it is very -# tricky (though not impossible) to totally replace the watcom -# malloc/free set. -# # unix.h is required as a general rule for unixy applications. #---------------------------------------------------------------- -ccflags='-DHIDEMYMALLOC -mf -w4 -Wc,-wcd=202 -Wc,-wcd=203 -Wc,-wcd=302 -Wc,-fi=unix.h' +ccflags='-mf -w4 -Wc,-wcd=202 -Wc,-wcd=203 -Wc,-wcd=302 -Wc,-fi=unix.h' #---------------------------------------------------------------- # ldflags: @@ -107,7 +108,7 @@ ccflags='-DHIDEMYMALLOC -mf -w4 -Wc,-wcd=202 -Wc,-wcd=203 -Wc,-wcd=302 -Wc,-fi=u # link as well as the compile. If optimize != -g, you should # remove this. #---------------------------------------------------------------- -ldflags="-g" +ldflags="-g -N1M" so='none' selecttype='fd_set *' @@ -138,12 +139,13 @@ if [ -z "`which nm 2>/dev/null`" ]; then Creating a quick-and-dirty nm cover for Configure to use: EOF - cat >../UU/nm <<-'EOF' + cat >./UU/nm <<-'EOF' #! /bin/sh #__USAGE #%C [ ...] # Designed to mimic Unix's nm utility to list # defined symbols in a library + unset WLIB for i in $*; do wlib $i; done | awk ' /^ / { @@ -153,7 +155,7 @@ if [ -z "`which nm 2>/dev/null`" ]; then } }' EOF - chmod +x ../UU/nm + chmod +x ./UU/nm fi cppstdin=`which cpp 2>/dev/null`