1N/A#
1N/A# Copyright 2004 Sun Microsystems, Inc. All rights reserved.
1N/A# Use is subject to license terms.
1N/A#
1N/A#ident "%Z%%M% %I% %E% SMI"
1N/A#
1N/A#
1N/A
1N/AThis directory contains utilities that help port and patch a standard perl
1N/A5.8.4 build directory into the ON tree. It is hoped that future ports and
1N/Apatches will be able to use the same framework, so details of the process used
1N/Afor 5.8.4 are documented here.
1N/A
1N/APorting
1N/A=======
1N/A
1N/AStep 1.
1N/A-------
1N/ABuild and install perl 5.8.4 for both the sparc and i386 architectures. To do
1N/Athis, unpack perl 5.8.4 and then run the InstallPerl script from inside the
1N/Adirectory. This script needs to be setuid root, and will install perl under
1N/A/usr/perl5, and will generate the correct config.sh file. A series of status
1N/Afiles will be generated in the perl build directory. These files are then
1N/Aused in step 2 to automatically figure out which files need to be integrated
1N/Ainto ON. The files are build.touched, test.log and install.packlist.
1N/A
1N/AStep 2.
1N/A-------
1N/AFrom the perl build directory, run the MapFiles script. This will produce
1N/Aa CSV file describing all the files that need to be integrated into ON, using
1N/Athe information captured by step 1. The spreadsheet can be viewed in
1N/AStarOffice. The file flist_5.8.4_s10.csv in this directory is the output of
1N/Athe MapFiles script.
1N/A
1N/AStep 3.
1N/A-------
1N/ARun the CheckIn script, giving as parameters the CSV file, the perl build
1N/Adirectory and the workspace that perl is to be checked in to. The script
1N/Aoutputs a shell script to stdout, the script contains the commands necessary
1N/Ato check the perl source into ON.
1N/A
1N/AStep 4.
1N/A-------
1N/AVerify that the resulting script looks sane, then run it to perform the
1N/Aintegration. Examine the output to make sure that the integration succeeded.
1N/A
1N/AStep 5.
1N/A------
1N/AMake sure you have a config.sh for both the sparc and x86 architectures, and
1N/Athat they are checked in.
1N/A
1N/AStep 6.
1N/A-------
1N/AGenerate the makefiles and associated infrastructure to build the resulting
1N/Aperl 5.8.4 workspace. These were based on the 5.8.3 versions. Things that
1N/Aneed to be done manually, in no particular order:
1N/A a) Merge in the ON-specific changes into installperl fromm the previous
1N/A perl version.
1N/A b) Merge in the ON-specific changes into MakeMaker (under utils/lib)
1N/A using the standard perl files as a starting point.
1N/A c) Generate Config.pm files for contrib/Sun/Solaris/PerlGcc and
1N/A make any other necessary changes for the new OS and/or perl version.
1N/A
1N/AFiles
1N/A=====
1N/A
1N/AA full list of the files in this directory is given below.
1N/A
1N/AInstallPerl Builds and installs perl. setuid root.
1N/AMapFiles Figures out which files need to be integrated into ON.
1N/ACheckIn Generates a ksh script to do the integration.
1N/Aflist_5.8.4_s10.csv Output of MapFiles.
1N/AEditedFiles Utility to find any differences between the perl build
1N/A directory and an ON workspace.
1N/AConfigPerlGcc Generate a config.sh file suitable for use with gcc,
1N/A to be used with Sun::Solaris::PerlGcc.
1N/AREADME This file.