VOS patches for perl 5.8
Paul Green [Fri, 15 Feb 2002 17:41:00 +0000 (12:41 -0500)]
   Message-Id: <200202152243.RAA01195@mailhub1.stratus.com>

p4raw-id: //depot/perl@14713

README.vos
vos/Changes
vos/build.cm
vos/config.alpha.def
vos/config.alpha.h
vos/config.ga.def
vos/config.ga.h
vos/install_perl.cm

index 61b2fa2..016d6c9 100644 (file)
@@ -8,9 +8,10 @@ README.vos - Perl for Stratus VOS
 
 =head1 SYNOPSIS
 
-This is a port of Perl version 5 to VOS.  Perl is a scripting or
-macro language that is popular on many systems.  See L<perlbook>
-for a number of good books on Perl.
+This file contains notes for building perl on the Stratus VOS
+operating system.  Perl is a scripting or macro language that is
+popular on many systems.  See L<perlbook> for a number of good
+books on Perl.
 
 These are instructions for building Perl from source.  Most people can
 simply download a pre-compiled distribution from the VOS anonymous FTP
@@ -21,16 +22,103 @@ ftp://ftp.stratus.com/pub/vos/posix/ga/ga.html.  Instructions for
 unbundling the Perl distribution file are at
 ftp://ftp.stratus.com/pub/vos/utility/utility.html.
 
+If you are running VOS Release 14.4.1 or later, you can obtain a
+pre-compiled, supported copy of perl by purchasing Release 2.0.1
+of the VOS GNU C++ and GNU Tools product from Stratus
+Technologies.
+
+=head2 Multiple methods to build perl for VOS
+
+If you elect to build perl from its source code, you have several
+different ways that you can build perl.  The method that you use
+depends on the version of VOS that you are using and on the
+architecture of you Stratus hardware platform.
+
+=over 5
+
+=item 1
+
+If you have a Stratus XA2000 (Motorola 68k-based) platform, you
+must build perl using the alpha version of VOS POSIX support and
+using the VOS Standard C Cross-compiler.  You must build perl on
+VOS Release 14.1.0 (or later) on an XA/R or Continuum platform.
+
+This version of perl is properly called "miniperl" because it
+does not contain the full perl functionality.
+
+You must build perl with the compile_perl.cm command macro found
+in the vos subdirectory.
+
+=item 2
+
+If you have a Stratus XA/R (Intel i860-based) platform, you must
+build perl using the alpha version of VOS POSIX support and using
+the VOS Standard C compiler or cross-compiler.  You must build
+perl on VOS Release 14.1.0 (or later) on an XA/R or Continuum
+platform.
+
+This version of perl is properly called "miniperl" because it
+does not contain the full perl functionality.
+
+You must build perl with the compile_perl.cm command macro found
+in the vos subdirectory.
+
+=item 3
+
+If you have a Stratus Continuum (PARISC-based) platform that is
+running a version of VOS earlier than VOS 14.3.0, you must build
+perl using the alpha version of VOS POSIX support and using the
+VOS Standard C compiler or cross-compiler.  You must build perl
+on VOS Release 14.1.0 (or later) on an XA/R or Continuum
+platform.
+
+This version of perl is properly called "miniperl" because it
+does not contain the full perl functionality.
+
+You must build perl with the compile_perl.cm command macro found
+in the vos subdirectory.
+
+=item 4
+
+If you have a Stratus Continuum (PARISC-based) platform that is
+running VOS Release 14.3.0 through VOS Release 14.4.0, you must
+build perl using the generally-available version of VOS POSIX
+support, and using either the VOS Standard C compiler or the VOS
+GNU C compiler.  You must build perl on VOS Release 14.3.0 (or
+later) on a Continuum platform.
+
+This version of perl is properly called "miniperl" because it
+does not contain the full perl functionality.
+
+You must build perl with the compile_perl.cm command macro found
+in the vos subdirectory.
+
+=item 5
+
+If you have a Stratus Continuum (PA-RISC-based) platform that is
+running VOS Release 14.4.1 or later, you must build perl using
+the generally-available version of VOS POSIX support.  You must
+use the VOS GNU C compiler and the VOS GNU Tools product.  You
+must build perl on VOS Release 14.4.1 (or later) on a Continuum
+platform.
+
+This version of perl is properly called "full perl" because it
+contains the full perl functionality.
+
+You must use the supplied Configure script and makefiles to build
+perl.
+
+=back
+
 =head2 Stratus POSIX Support
 
 Note that there are two different implementations of POSIX.1
 support on VOS.  There is an alpha version of POSIX that is
 available from the Stratus anonymous ftp site
-(ftp://ftp.stratus.com/pub/vos/posix/).  There is
-a generally-available version of POSIX that comes with the VOS
-Standard C Compiler or VOS C runtime in VOS Release 14.3.0 or
-higher.  This port of perl will compile and bind with either
-version of POSIX.
+(ftp://ftp.stratus.com/pub/vos/posix/alpha/alpha.html).  There
+is a generally-available version of POSIX that comes with VOS
+Release 14.3.0 or higher.  This port of POSIX will compile and
+bind with either version of POSIX.
 
 Most of the Perl features should work on VOS regardless of which
 version of POSIX that you are using.  However, the alpha version
@@ -102,19 +190,19 @@ execute on VOS Release 12 or earlier.
 
 If you are using the generally-available version of VOS POSIX
 support, then you should also acquire the VOS GNU C/C++ Compiler
-and GNU Tools product because it provides many common Unix or
-POSIX commands.  When perl is built with this version of POSIX
-support, it assumes that it can find "bash", "sed" and other
-POSIX-compatible commands in the directory
+and GNU Tools product.  When perl is built with this version of
+POSIX support, it assumes that it can find "bash", "sed" and
+other POSIX-compatible commands in the directory
 /system/gnu_library/bin.
 
 =back
 
-To build perl 5, change to the "vos" subdirectory and type the
-command "compile_perl -processor X", where X is the processor
-type (mc68020, i80860, pa7100, pa8000) that you wish to use.
-Note that the generally-available version of POSIX.1 support is
-not available for the mc68020 or i80860 processors.
+To build perl using the supplied VOS command macros, change to
+the "vos" subdirectory and type the command "compile_perl
+-processor X", where X is the processor type (mc68020, i80860,
+pa7100, pa8000) that you wish to use.  Note that the
+generally-available version of POSIX.1 support is not available
+for the mc68020 or i80860 processors.
 
 Use the "-version alpha" control argument to build perl with
 the alpha version of POSIX support, and use the "-version
@@ -135,68 +223,72 @@ execute on the PA7100, PA8000, PA8500 and PA8600 processors, and
 that code compiled for the pa8000 processor type can execute on
 the PA8000, PA8500 and PA8600 processors.
 
-=head2 Installing Perl 5 on VOS
+To build perl using the supplied Configure script and makefiles,
+execute the following commands.
 
-=over 4
+     !add_library_path command >system>gnu_library>bin -after '(current_dir)'
+     !bash
+          gzip -d perl-5.8.0.tar.gz
+          tar -xvf perl-5.8.0.tar
+          cd perl-5.8.0
+          Configure -d
+          gmake
 
-=item 1
+If you wish to run the test cases, type:
 
-Create the directory >system>ported>command_library.
+          gmake test
 
-=item 2
+=head2 Installing Perl 5 on VOS
 
-Copy the appropriate version of the perl program module to
-this directory.  For example, with your current directory
-set to the top-level directory of Perl 5, to install the
-executable program module for the Motorola 68K
-architecture, enter:
+=over 4
 
-          !copy_file vos>obj>perl.pm >system>ported>command_library>*
+=item 1
 
-(If you wish to use both Perl version 4 and Perl version 5,
-you must give them different names; for example, perl.pm
-and perl5.pm).
+If you have built perl using the Configure script, ensure that
+you have modify permission to >system>ported and type
 
-=item 3
+     gmake install
 
-Create the directory >system>ported>perl>lib.
+=item 2
 
-=item 4
+If you have built perl using any of the other methods, type
 
-Copy all of the files and subdirectories from the lib
-subdirectory into this new directory.  For example, with
-the current directory set to the top-level directory of the
-perl distribution, enter:
+     install_perl -processor PROCESSOR -name NAME
 
-          !copy_dir lib >system>ported>perl>lib>5.7
+where PROCESSOR is mc68020, i80860, pa7100, or pa8000, as
+appropriate, and NAME is perl or perl5, according to which name
+you wish to use.
 
-=item 5
+This command macro will install perl and all of its related
+files in the proper directories.
+
+=item 3
 
 While there are currently no architecture-specific
 extensions or modules distributed with perl, the following
 directories can be used to hold such files:
 
-          >system>ported>perl>lib>5.7.68k
-          >system>ported>perl>lib>5.7.860
-          >system>ported>perl>lib>5.7.7100
-          >system>ported>perl>lib>5.7.8000
+     >system>ported>lib>perl5>5.8.0>68k
+     >system>ported>lib>perl5>5.8.0>860
+     >system>ported>lib>perl5>5.8.0>7100
+     >system>ported>lib>perl5>5.8.0>8000
 
-=item 6
+=item 4
 
 Site-specific perl extensions and modules can be installed in one of
 two places.  Put architecture-independent files into:
 
-          >system>ported>perl>lib>site>5.7
+     >system>ported>lib>perl5>site_perl>5.8.0
 
-Put architecture-dependent files into one of the following
-directories:
+Put site-specific architecture-dependent files into one of the
+following directories:
 
-          >system>ported>perl>lib>site>5.7.68k
-          >system>ported>perl>lib>site>5.7.860
-          >system>ported>perl>lib>site>5.7.7100
-          >system>ported>perl>lib>site>5.7.8000
+     >system>ported>lib>perl5>site_perl>5.8.0>68k
+     >system>ported>lib>perl5>site_perl>5.8.0>860
+     >system>ported>lib>perl5>site_perl>5.8.0>7100
+     >system>ported>lib>perl5>site_perl>5.8.0>8000
 
-=item 7
+=item 5
 
 You can examine the @INC variable from within a perl program
 to see the order in which Perl searches these directories.
@@ -240,12 +332,17 @@ can't guarantee I'll be able to answer them.  There are some
 excellent books available on the Perl language; consult a book
 seller.
 
+If you want a supported version of perl for VOS, purchase the VOS
+GNU C++ and GNU Tools Release 2.0.1 product from Stratus
+Technologies, along with a support contract (or from anyone else
+who will sell you support).
+
 =head1 AUTHOR
 
 Paul Green (Paul.Green@stratus.com)
 
 =head1 LAST UPDATE
 
-November 29, 2001
+February 15, 2001
 
 =cut
index 640db49..407b258 100644 (file)
@@ -1,6 +1,15 @@
 This file documents the changes made to port Perl to the Stratus
 VOS operating system.
 
+For 5.8.0:
+     Updated "config.alpha.def", "config.ga.def", "build.cm", and
+     "install_perl.cm" to use directory naming conventions that
+     are closer to the perl standard directory names.
+
+     For the first time, full perl can now be built on VOS using
+     its native Configure script and makefiles.  See README.vos
+     for details.
+
 For 5.7.1:
      Updated "build.cm" and "compile_perl.cm" to build perl using
           either cc or gcc.
index 20592ad..5eb56a2 100644 (file)
@@ -50,8 +50,8 @@
 &then &set_string obj .8000
 &
 &if &cpu& = mc68020
-&then &set_string obj2 .68k
-&else &set_string obj2 &obj&
+&then &set_string obj2 68k
+&else &set_string obj2 (substr &obj& 2)
 &
 &if &cpu& = mc68020
 &then &set_string bindsize -size large
 & &if (command_status) ^= 0 &then &return
 &
 !&compiler& <<perl.c &diag& &cpu& &cflags& -o perl&s& &+
-     -DARCHLIB="/system/ported/perl/lib/5.7&obj2&" &+
-     -DARCHLIB_EXP="/system/ported/perl/lib/5.7&obj2&" &+
-     -DSITEARCH="/system/ported/perl/lib/site/5.7&obj2&" &+
-     -DSITEARCH_EXP="/system/ported/perl/lib/site/5.7&obj2&"
+     -DARCHLIB="/system/ported/lib/perl5/5.8.0/&obj2&" &+
+     -DARCHLIB_EXP="/system/ported/lib/perl5/5.8.0/&obj2&" &+
+     -DSITEARCH="/system/ported/lib/perl5/site_perl/5.8.0/&obj2&" &+
+     -DSITEARCH_EXP="/system/ported/lib/perl5/site_perl/5.8.0/&obj2&" &+
+     -DARCHNAME="&obj2&"
 &if (command_status) ^= 0 &then &return
 !&compiler& <<perlapi.c &diag& &cpu& &cflags& -o perlapi&s&
 &if (command_status) ^= 0 &then &return
 &if &rebind& = 0
 &then &return
 &
-&if (exists -directory (master_disk)>system>tcp_os>object_library&obj2&)
-&then &set_string tcp_objlib (master_disk)>system>tcp_os>object_library&obj2&
+&if (exists -directory (master_disk)>system>tcp_os>object_library.&obj2&)
+&then &set_string tcp_objlib (master_disk)>system>tcp_os>object_library.&obj2&
 &else &set_string tcp_objlib (master_disk)>system>tcp_os>object_library
 &
-&if (exists -directory (master_disk)>system>stcp>object_library&obj2&)
-&then &set_string stcp_objlib (master_disk)>system>stcp>object_library&obj2&
+&if (exists -directory (master_disk)>system>stcp>object_library.&obj2&)
+&then &set_string stcp_objlib (master_disk)>system>stcp>object_library.&obj2&
 &else &set_string stcp_objlib (master_disk)>system>stcp>object_library
 &
-&if (exists -directory (master_disk)>system>object_library&obj2&)
-&then &set_string objlib (master_disk)>system>object_library&obj2&
+&if (exists -directory (master_disk)>system>object_library.&obj2&)
+&then &set_string objlib (master_disk)>system>object_library.&obj2&
 &else &set_string objlib (master_disk)>system>object_library
 &
-&if (exists -directory (master_disk)>system>c_object_library&obj2&)
-&then &set_string c_objlib (master_disk)>system>c_object_library&obj2&
+&if (exists -directory (master_disk)>system>c_object_library.&obj2&)
+&then &set_string c_objlib (master_disk)>system>c_object_library.&obj2&
 &else &set_string c_objlib (master_disk)>system>c_object_library
 &
-&if (exists -directory (master_disk)>system>posix_object_library&obj2&)
-&then &set_string posix_objlib (master_disk)>system>posix_object_library&obj2&
+&if (exists -directory (master_disk)>system>posix_object_library.&obj2&)
+&then &set_string posix_objlib (master_disk)>system>posix_object_library.&obj2&
 &else &set_string posix_objlib (master_disk)>system>posix_object_library
 &
 &if &version& = alpha
index 996a0c7..250c5e1 100644 (file)
@@ -2,13 +2,13 @@ $alignbytes='8'
 $aphostname=''
 $archlib=''
 $archlibexp=''
-$archname='vos'
+$archname=''
 $bin='/system/ported/command_library'
 $binexp='/system/ported/command_library'
 $byteorder='4321'
 $castflags='0'
-$cf_by='Paul_Green@stratus.com'
-$cf_time='2001-06-11 02:41 UCT'
+$cf_by='Paul.Green@stratus.com'
+$cf_time='2002-02-15 20:16 UCT'
 $CONFIG_SH='config.sh'
 $cpp_stuff='42'
 $cpplast='-'
@@ -458,8 +458,8 @@ $otherlibdirs=''
 $package='perl5'
 $pidtype='pid_t'
 $pm_apiversion='5.005'
-$privlib='/system/ported/perl/lib/5.7'
-$privlibexp='/system/ported/perl/lib/5.7'
+$privlib='/system/ported/lib/perl5/5.8.0'
+$privlibexp='/system/ported/lib/perl5/5.8.0'
 $procselfexe=''
 $prototype='define'
 $ptrsize='4'
@@ -479,11 +479,11 @@ $sig_name_init='"ZERO","ABRT","FPE","ILL","INT","SEGV","TERM","USR1","USR2","IO"
 $sig_num_init='0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,0'
 $sig_size='31'
 $signal_t='void'
-$sitearch=''
-$sitearchexp=''
-$sitelib='/system/ported/perl/lib/site/5.7'
-$sitelibexp='/system/ported/perl/lib/site/5.7'
-$sitelib_stem='/system/ported/perl/lib/site'
+$sitearch='/system/ported/lib/perl5/site_perl/5.8.0/hppa1.1'
+$sitearchexp='/system/ported/lib/perl5/site_perl/5.8.0/hppa1.1'
+$sitelib='/system/ported/lib/perl5/site_perl/5.8.0'
+$sitelibexp='/system/ported/lib/perl5/site_perl/5.8.0'
+$sitelib_stem='/system/ported/lib/perl5/site_perl'
 $sizesize='4'
 $sizetype='size_t'
 $socksizetype='int'
index bce8eb5..7d5145e 100644 (file)
@@ -13,8 +13,8 @@
 /*
  * Package name      : perl5
  * Source directory  : /vos_ftp_site/pub/vos/posix/(alpha|ga)/perl
- * Configuration time: 2001-06-11 02:41 UCT
- * Configured by     : Paul_Green@stratus.com
+ * Configuration time: 2002-02-15 20:16 UCT
+ * Configured by     : Paul.Green@stratus.com
  * Target system     : VOS
  */
 
  *     where library files may be held under a private library, for
  *     instance.
  */
-#define ARCHNAME "vos"         /**/
+#define ARCHNAME ""            /**/
 
 /* HAS_ATOLF:
  *     This symbol, if defined, indicates that the atolf routine is
  *     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 "/system/ported/perl/lib/5.7"          /**/
-#define PRIVLIB_EXP "/system/ported/perl/lib/5.7"              /**/
+#define PRIVLIB "/system/ported/lib/perl5/5.8.0"               /**/
+#define PRIVLIB_EXP "/system/ported/lib/perl5/5.8.0"           /**/
 
 /* PTRSIZE:
  *     This symbol contains the size of a pointer, so that the C preprocessor
  *     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 ""          /**/
-/*#define SITEARCH_EXP ""              /**/
+/*#define SITEARCH "/system/ported/lib/perl5/site_perl/5.8.0/hppa1.1"          /**/
+/*#define SITEARCH_EXP "/system/ported/lib/perl5/site_perl/5.8.0/hppa1.1"              /**/
 
 /* SITELIB:
  *     This symbol contains the name of the private library for this package.
  *     removed.  The elements in inc_version_list (inc_version_list.U) can
  *     be tacked onto this variable to generate a list of directories to search.
  */
-#define SITELIB "/system/ported/perl/lib/site/5.7"             /**/
-#define SITELIB_EXP "/system/ported/perl/lib/site/5.7"         /**/
-#define SITELIB_STEM "/system/ported/perl/lib/site"            /**/
+#define SITELIB "/system/ported/lib/perl5/site_perl/5.8.0"             /**/
+#define SITELIB_EXP "/system/ported/lib/perl5/site_perl/5.8.0"         /**/
+#define SITELIB_STEM "/system/ported/lib/perl5/site_perl"              /**/
 
 /* Size_t_size:
  *     This symbol holds the size of a Size_t in bytes.
 /* PERL_XS_APIVERSION:
  *     This variable contains the version of the oldest perl binary
  *     compatible with the present perl.  perl.c:incpush() and
- *     lib/lib.pm will automatically search in  for older
+ *     lib/lib.pm will automatically search in /system/ported/lib/perl5/site_perl/5.8.0/hppa1.1 for older
  *     directories across major versions back to xs_apiversion.
  *     This is only useful if you have a perl library directory tree
  *     structured like the default one.
  *     compatible with the present perl.  (That is, pure perl modules
  *     written for pm_apiversion will still work for the current
  *     version).  perl.c:incpush() and lib/lib.pm will automatically
- *     search in /system/ported/perl/lib/site/5.7 for older directories across major versions
+ *     search in /system/ported/lib/perl5/site_perl/5.8.0 for older directories across major versions
  *     back to pm_apiversion.  This is only useful if you have a perl
  *     library directory tree structured like the default one.  The
  *     versioned site_perl library was introduced in 5.005, so that's
  *     If defined, this macro indicates that the C compiler can handle
  *     function prototypes.
  */
-/* PERL_PROTO_:
+/* _:
  *     This macro is used to declare function parameters for folks who want
  *     to make declarations with prototypes using a different style than
  *     the above macros.  Use double parentheses.  For example:
  *
- *             int main PERL_PROTO_((int argc, char *argv[]));
+ *             int main _((int argc, char *argv[]));
  */
 #define        CAN_PROTOTYPE   /**/
 #ifdef CAN_PROTOTYPE
+#define        _(args) args
 #else
+#define        _(args) ()
 #endif
 
 /* SH_PATH:
index ec18320..7bef8fb 100644 (file)
@@ -2,13 +2,13 @@ $alignbytes='8'
 $aphostname=''
 $archlib=''
 $archlibexp=''
-$archname='vos'
+$archname=''
 $bin='/system/gnu_library/bin'
 $binexp='/system/gnu_library/bin'
 $byteorder='4321'
 $castflags='0'
-$cf_by='Paul_Green@stratus.com'
-$cf_time='2001-06-11 02:46 UCT'
+$cf_by='Paul.Green@stratus.com'
+$cf_time='2002-02-15 20:16 UCT'
 $CONFIG_SH='config.sh'
 $cpp_stuff='42'
 $cpplast='-'
@@ -192,7 +192,6 @@ $d_perl_otherlibdirs='undef'
 $d_phostname='undef'
 $d_pipe='define'
 $d_poll='define'
-$d_poll='define'
 $d_procselfexe='undef'
 $d_pthread_atfork='undef'
 $d_pthread_yield='undef'
@@ -459,8 +458,8 @@ $otherlibdirs=''
 $package='perl5'
 $pidtype='pid_t'
 $pm_apiversion='5.005'
-$privlib='/system/ported/perl/lib/5.7'
-$privlibexp='/system/ported/perl/lib/5.7'
+$privlib='/system/ported/lib/perl5/5.8.0'
+$privlibexp='/system/ported/lib/perl5/5.8.0'
 $procselfexe=''
 $prototype='define'
 $ptrsize='4'
@@ -480,11 +479,11 @@ $sig_name_init='"ZERO","ABRT","FPE","ILL","INT","SEGV","TERM","USR1","USR2","IO"
 $sig_num_init='0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,0'
 $sig_size='32'
 $signal_t='void'
-$sitearch=''
-$sitearchexp=''
-$sitelib='/system/ported/perl/lib/site/5.7'
-$sitelibexp='/system/ported/perl/lib/site/5.7'
-$sitelib_stem='/system/ported/perl/lib/site'
+$sitearch='/system/ported/lib/perl5/site_perl/5.8.0/hppa1.1'
+$sitearchexp='/system/ported/lib/perl5/site_perl/5.8.0/hppa1.1'
+$sitelib='/system/ported/lib/perl5/site_perl/5.8.0'
+$sitelibexp='/system/ported/lib/perl5/site_perl/5.8.0'
+$sitelib_stem='/system/ported/lib/perl5/site_perl'
 $sizesize='4'
 $sizetype='size_t'
 $socksizetype='int'
index ef9cc07..876d5eb 100644 (file)
@@ -13,8 +13,8 @@
 /*
  * Package name      : perl5
  * Source directory  : /vos_ftp_site/pub/vos/posix/(alpha|ga)/perl
- * Configuration time: 2001-06-11 02:46 UCT
- * Configured by     : Paul_Green@stratus.com
+ * Configuration time: 2002-02-15 20:16 UCT
+ * Configured by     : Paul.Green@stratus.com
  * Target system     : VOS
  */
 
  *     where library files may be held under a private library, for
  *     instance.
  */
-#define ARCHNAME "vos"         /**/
+#define ARCHNAME ""            /**/
 
 /* HAS_ATOLF:
  *     This symbol, if defined, indicates that the atolf routine is
  *     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 "/system/ported/perl/lib/5.7"          /**/
-#define PRIVLIB_EXP "/system/ported/perl/lib/5.7"              /**/
+#define PRIVLIB "/system/ported/lib/perl5/5.8.0"               /**/
+#define PRIVLIB_EXP "/system/ported/lib/perl5/5.8.0"           /**/
 
 /* PTRSIZE:
  *     This symbol contains the size of a pointer, so that the C preprocessor
  *     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 ""          /**/
-/*#define SITEARCH_EXP ""              /**/
+/*#define SITEARCH "/system/ported/lib/perl5/site_perl/5.8.0/hppa1.1"          /**/
+/*#define SITEARCH_EXP "/system/ported/lib/perl5/site_perl/5.8.0/hppa1.1"              /**/
 
 /* SITELIB:
  *     This symbol contains the name of the private library for this package.
  *     removed.  The elements in inc_version_list (inc_version_list.U) can
  *     be tacked onto this variable to generate a list of directories to search.
  */
-#define SITELIB "/system/ported/perl/lib/site/5.7"             /**/
-#define SITELIB_EXP "/system/ported/perl/lib/site/5.7"         /**/
-#define SITELIB_STEM "/system/ported/perl/lib/site"            /**/
+#define SITELIB "/system/ported/lib/perl5/site_perl/5.8.0"             /**/
+#define SITELIB_EXP "/system/ported/lib/perl5/site_perl/5.8.0"         /**/
+#define SITELIB_STEM "/system/ported/lib/perl5/site_perl"              /**/
 
 /* Size_t_size:
  *     This symbol holds the size of a Size_t in bytes.
 /* PERL_XS_APIVERSION:
  *     This variable contains the version of the oldest perl binary
  *     compatible with the present perl.  perl.c:incpush() and
- *     lib/lib.pm will automatically search in  for older
+ *     lib/lib.pm will automatically search in /system/ported/lib/perl5/site_perl/5.8.0/hppa1.1 for older
  *     directories across major versions back to xs_apiversion.
  *     This is only useful if you have a perl library directory tree
  *     structured like the default one.
  *     compatible with the present perl.  (That is, pure perl modules
  *     written for pm_apiversion will still work for the current
  *     version).  perl.c:incpush() and lib/lib.pm will automatically
- *     search in /system/ported/perl/lib/site/5.7 for older directories across major versions
+ *     search in /system/ported/lib/perl5/site_perl/5.8.0 for older directories across major versions
  *     back to pm_apiversion.  This is only useful if you have a perl
  *     library directory tree structured like the default one.  The
  *     versioned site_perl library was introduced in 5.005, so that's
  *     If defined, this macro indicates that the C compiler can handle
  *     function prototypes.
  */
-/* PERL_PROTO_:
+/* _:
  *     This macro is used to declare function parameters for folks who want
  *     to make declarations with prototypes using a different style than
  *     the above macros.  Use double parentheses.  For example:
  *
- *             int main PERL_PROTO_((int argc, char *argv[]));
+ *             int main _((int argc, char *argv[]));
  */
 #define        CAN_PROTOTYPE   /**/
 #ifdef CAN_PROTOTYPE
+#define        _(args) args
 #else
+#define        _(args) ()
 #endif
 
 /* SH_PATH:
index 95fe064..a54f68b 100644 (file)
@@ -1,8 +1,10 @@
 & Macro to install the perl components into the right directories
-& Written 00-10-24 by Paul Green (Paul_Green@stratus.com)
+& Written 00-10-24 by Paul Green (Paul.Green@stratus.com)
+& Updated 02-02-15 by Paul Green
 &
 &begin_parameters
      cpu       option(-processor)name,allow(mc68020,i80860,pa7100,pa8000),=mc68020
+     name      option(-name)name,allow(perl,perl5),=perl5
 &end_parameters priv
 &echo command_lines
 &
 &if ^ (exists -directory &MDS&>ported>command_library)
 &then !create_dir &MDS&>ported>command_library
 &
-&if ^ (exists -directory &MDS&>ported>perl)
-&then !create_dir &MDS&>ported>perl
+&if ^ (exists -directory &MDS&>ported>lib)
+&then !create_dir &MDS&>ported>lib
 &
-&if ^ (exists -directory &MDS&>ported>perl>lib)
-&then !create_dir &MDS&>ported>perl>lib
+&if ^ (exists -directory &MDS&>ported>lib>perl5)
+&then !create_dir &MDS&>ported>lib>perl5
 &
-&if ^ (exists -directory &MDS&>ported>perl>lib>5.7)
-&then !create_dir &MDS&>ported>perl>lib>5.7
+&if ^ (exists -directory &MDS&>ported>lib>perl5>5.8.0)
+&then !create_dir &MDS&>ported>lib>perl5>5.8.0
 &
-&if ^ (exists -directory &MDS&>ported>perl>lib>5.7.68k)
-&then !create_dir &MDS&>ported>perl>lib>5.7.68k
+!copy_file <lib>*.pm &MDS&>ported>lib>perl5>5.8.0>*.pm -delete
+!copy_file <lib>*.pl &MDS&>ported>lib>perl5>5.8.0>*.pl -delete
+!copy_file <lib>*.pod &MDS&>ported>lib>perl5>5.8.0>*.pod -delete
 &
-&if ^ (exists -directory &MDS&>ported>perl>lib>5.7.860)
-&then !create_dir &MDS&>ported>perl>lib>5.7.860
+&if ^ (exists -directory &MDS&>ported>lib>perl5>5.8.0>68k)
+&then !create_dir &MDS&>ported>lib>perl5>5.8.0>68k
 &
-&if ^ (exists -directory &MDS&>ported>perl>lib>5.7.7100)
-&then !create_dir &MDS&>ported>perl>lib>5.7.7100
+&if ^ (exists -directory &MDS&>ported>lib>perl5>5.8.0>860)
+&then !create_dir &MDS&>ported>lib>perl5>5.8.0>860
 &
-&if ^ (exists -directory &MDS&>ported>perl>lib>5.7.8000)
-&then !create_dir &MDS&>ported>perl>lib>5.7.8000
+&if ^ (exists -directory &MDS&>ported>lib>perl5>5.8.0>7100)
+&then !create_dir &MDS&>ported>lib>perl5>5.8.0>7100
 &
-&if ^ (exists -directory &MDS&>ported>perl>lib>site)
-&then !create_dir &MDS&>ported>perl>lib>site
+&if ^ (exists -directory &MDS&>ported>lib>perl5>5.8.0>8000)
+&then !create_dir &MDS&>ported>lib>perl5>5.8.0>8000
 &
-&if ^ (exists -directory &MDS&>ported>perl>lib>site>5.7)
-&then !create_dir &MDS&>ported>perl>lib>site>5.7
+&if ^ (exists -directory &MDS&>ported>lib>perl5>site_perl)
+&then !create_dir &MDS&>ported>lib>perl5>site_perl
 &
-&if ^ (exists -directory &MDS&>ported>perl>lib>site>5.7.68k)
-&then !create_dir &MDS&>ported>perl>lib>site>5.7.68k
+&if ^ (exists -directory &MDS&>ported>lib>perl5>site_perl>5.8.0)
+&then !create_dir &MDS&>ported>lib>perl5>site_perl>5.8.0
 &
-&if ^ (exists -directory &MDS&>ported>perl>lib>site>5.7.860)
-&then !create_dir &MDS&>ported>perl>lib>site>5.7.860
+&if ^ (exists -directory &MDS&>ported>lib>perl5>site_perl>5.8.0>68k)
+&then !create_dir &MDS&>ported>lib>perl5>site_perl>5.8.0>68k
 &
-&if ^ (exists -directory &MDS&>ported>perl>lib>site>5.7.7100)
-&then !create_dir &MDS&>ported>perl>lib>site>5.7.7100
+&if ^ (exists -directory &MDS&>ported>lib>perl5>site_perl>5.8.0>860)
+&then !create_dir &MDS&>ported>lib>perl5>site_perl>5.8.0>860
 &
-&if ^ (exists -directory &MDS&>ported>perl>lib>site>5.7.8000)
-&then !create_dir &MDS&>ported>perl>lib>site>5.7.8000
+&if ^ (exists -directory &MDS&>ported>lib>perl5>site_perl>5.8.0>7100)
+&then !create_dir &MDS&>ported>lib>perl5>site_perl>5.8.0>7100
 &
-!copy_dir <lib &MDS&>ported>perl>lib>5.7 -delete
+&if ^ (exists -directory &MDS&>ported>lib>perl5>site_perl>5.8.0>8000)
+&then !create_dir &MDS&>ported>lib>perl5>site_perl>5.8.0>8000
 &
-!copy_file obj&obj&>perl.pm &MDS&>ported>command_library>perl.pm.new -delete
-!rename &MDS&>ported>command_library>perl.pm *.(date).(time) -delete
-!rename &MDS&>ported>command_library>perl.pm.new perl.pm -delete
+!copy_file obj&obj&>perl.pm &MDS&>ported>command_library>&name&.pm.new -delete
+!rename &MDS&>ported>command_library>&name&.pm *.(date).(time) -delete
+!rename &MDS&>ported>command_library>&name&.pm.new &name&.pm -delete