Compiling perl5.004 on NEWS-OS 4.x
Makoto MATSUSHITA (=?ISO-2022-JP?B?GyRCJF4kRCQ3JD8kXiQzJEgbKEI=?=) [Wed, 21 May 1997 01:16:58 +0000 (13:16 +1200)]
Here (attached below) is a patch for compiling perl5 on NEWS-OS 4.x. It
contains a new hints file for NEWS-OS 4.x and some modification to
Configure.  I've tested on perl5.003, perl5.003_99 and perl5.004.

Background: Current release of NEWS-OS is version 6.1.x and it is
SystemV variant. However, NEWS-OS 4.x is 4.3BSD-variant and commonly
used in Japan. So, I named 'newsos' for newer release, and 'newsos4'
for older release. Unfortunately, NEWS-OS 4.x has no uname(1).

p5p-msgid: 19970521132814F.matusita@ics.es.osaka-u.ac.jp

Configure
hints/newsos4.sh [new file with mode: 0644]

index 0071a7c..9546d5b 100755 (executable)
--- a/Configure
+++ b/Configure
@@ -1704,7 +1704,6 @@ EOM
                        esac;;
                [23]100) osname=mips ;;
                next*) osname=next ;;
-               news*) osname=news ;;
                i386*)
                        if $test -f /etc/kconfig; then
                                osname=isc
@@ -1772,6 +1771,12 @@ EOM
                netbsd*) osname=netbsd 
                        osvers="$3"
                        ;;
+               news-os) osvers="$3"
+                       case "$3" in
+                       4*) osname=newsos4 ;;
+                       *) osname=newsos ;;
+                       esac
+                       ;;
                bsd386) osname=bsd386
                        osvers=`$uname -r`
                        ;;
@@ -1872,10 +1877,10 @@ EOM
                        ;;
                esac
        else
-               if test -f /vmunix -a -f news_os.sh; then
+               if test -f /vmunix -a -f newsos4.sh; then
                        (what /vmunix | ../UU/tr '[A-Z]' '[a-z]') > ../UU/kernel.what 2>&1
                        if $contains news-os ../UU/kernel.what >/dev/null 2>&1; then
-                               osname=news_os
+                               osname=newsos4
                        fi
                        $rm -f ../UU/kernel.what
                elif test -d c:/.; then
diff --git a/hints/newsos4.sh b/hints/newsos4.sh
new file mode 100644 (file)
index 0000000..a33cb31
--- /dev/null
@@ -0,0 +1,34 @@
+#
+# hints file for NEWS-OS 4.x
+#
+
+echo
+echo 'Compiling Tips:'
+echo 'When you have found that ld complains "multiple defined" error'
+echo 'on linking /lib/libdbm.a, do following instructions.'
+echo '    cd /tmp                                (working on /tmp)'
+echo '    cp /lib/libdbm.a dbm.o                 (copy current libdbm.a)'
+echo '    ar cr libdbm.a dbm.o                   (make archive)'
+echo '    mv /lib/libdbm.a /lib/libdbm.a.backup  (backup original library)'
+echo '    cp /tmp/libdbm.a /lib                  (copy newer one)'
+echo '    ranlib /lib/libdbm.a                   (ranlib for later use)'
+echo
+
+# No shared library.
+so='none'
+# Umm.. I like gcc.
+cc='gcc'
+# Configure does not find out where is libm.
+plibpth='/usr/lib/cmplrs/cc'
+# times() returns 'struct tms'
+clocktype='struct tms'
+# getgroups(2) returns integer (not gid_t)
+groupstype='int'
+# time(3) returns long (not time_t)
+timetype='long'
+# filemode type is int (not mode_t)
+modetype='int'
+# using sprintf(3) instead of gcvt(3)
+d_Gconvert='sprintf((b),"%.*g",(n),(x))'
+# No POSIX.
+useposix='false'