IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Changeset 11940


Ignore:
Timestamp:
Feb 20, 2007, 11:50:12 AM (19 years ago)
Author:
eugene
Message:

adding perl install script

Location:
trunk/psconfig
Files:
2 added
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/psconfig/ckperlmods

    r11938 r11940  
    11#!/usr/bin/env perl
    22
     3$version = "";
     4$check = 0;
     5@tARGV = ();
     6for (; @ARGV > 0; ) {
     7    if ($ARGV[0] eq "-version") {
     8        $version = $ARGV[1];
     9        shift; shift; next;
     10    }
     11    if ($ARGV[0] eq "-check") {
     12        $check = 1;
     13        shift; next;
     14    }
     15    if ($ARGV[0] eq "-h")     { &usage (); }
     16    if ($ARGV[0] eq "-help")  { &usage (); }
     17    if ($ARGV[0] eq "--help") { &usage (); }
     18    @tARGV = (@tARGV, $ARGV[0]);
     19    shift;
     20}
     21@ARGV = @tARGV;
     22if ( @ARGV != 0) { &usage (); }
     23
     24# load the perl module list
    325$file = "tagsets/ipp-extperl.dst";
    4 
    526open (FILE, $file) || die "ERROR: can't open perl module list: $file\n";
    627@list = <FILE>;
     
    1536}
    1637
    17 $prefix = `csh psconfig.sh --prefix $version`;
    18 $perl5lib = `csh psconfig.sh --perl5lib $version`;
    19 $homedir = `pwd`;
     38print "version: $version\n";
     39
     40$prefix = `csh -f psconfig.sh --prefix $version`; chomp $prefix;
     41$perl5lib = `csh -f psconfig.sh --perl5lib $version`; chomp $perl5lib;
     42$homedir = `pwd`; chomp $homedir;
     43
     44print "prefix: $prefix\n";
    2045
    2146foreach $line (@list) {
     
    2449    if ($line =~ m|^\s*\#|) { next; }
    2550
    26     ($N, $module, $tarball) = split (" ", $line);
     51    ($N, $module, $tarball, $prompts) = split (" ", $line);
    2752   
    2853    if (eval "use $module; 1") {
     
    3156    }
    3257
    33     # print "$module: missing\n";
     58    print "$module: missing\n";
     59    if ($check) { next; }
     60
    3461    # try to build the module from ../../extperl/Module.*.tar.gz
    3562    chdir "../../extperl";
    3663
    3764    print "extract $module from $tarball\n";
    38     system ("tar xvzf $tarball");
     65    vsystem ("tar xvzf $tarball");
    3966   
    4067    ($tardir) = $tarball =~ m|(\S*).tar.gz|;
     
    4269
    4370    chdir $tardir;
    44     # system ("perl Makefile.PL LIB=$perl5lib");
    45     system ("perl Makefile.PL PREFIX=$prefix");
    46     system ("make");
    47     system ("make install");
    4871
    49     # system ("ls $tarball");
     72    # vsystem ("perl Makefile.PL LIB=$perl5lib");
     73    if ($prompts) {
     74        @answers = split (",", $prompts);
     75        open (PIPE, "|perl Makefile.PL PREFIX=$prefix LIB=$perl5lib");
     76        foreach $answer (@answers) {
     77            print PIPE "$answer\n";
     78        }
     79        close (PIPE);
     80    } else {
     81        vsystem ("perl Makefile.PL PREFIX=$prefix LIB=$perl5lib");
     82    }
     83   
     84    vsystem ("make < /dev/null");
     85    vsystem ("make install");
    5086
    5187    chdir $homedir;
    5288}
     89
     90sub usage {
     91    print STDERR "USAGE: ckperlmods [-version] [-check]\n";
     92    exit 2;
     93}
     94
     95sub vsystem {
     96    print STDERR "@_\n";
     97    $status = system ("@_");
     98    $status;
     99}
  • trunk/psconfig/psconfig.sh

    r11938 r11940  
    77set show_perlbuild = 0
    88set show_perl5lib = 0
     9set show_prefix = 0
     10set show_libs = 0
     11set show_bin = 0
    912set args = ""
    1013while ($#argv)
     
    1215    case --help:
    1316      goto help;
    14 
    1517    case --list:
    1618      /bin/ls $PSCONFDIR | grep -v "\<man\>" | grep -v "\<share\>" | awk -v dir=$PSCONFDIR -F. '{printf "%s : %-10s : %s\n", dir, $1, $2}'
    1719      exit 0
     20    case --prefix:
     21      set show_prefix = 1
    1822      breaksw
    19 
    20     case --prefix:
    21       echo $PSCONFDIR/$PSVERSION.$ARCH
    22       exit 0
     23    case --libs:
     24      set show_libs = 1
    2325      breaksw
    24 
    25     case --libs:
    26       echo $PSCONFDIR/$PSVERSION.$ARCH/lib
    27       exit 0
     26    case --bin
     27      set show_bin = 1
    2828      breaksw
    29 
    30     case --bin
    31       echo $PSCONFDIR/$PSVERSION.$ARCH/bin
    32       exit 0
    33       breaksw
    34 
    3529    case --psconfigure:
    3630      set show_configure = 1
    37       shift
    3831      breaksw;   
    3932    case --psautogen:
    4033      set show_autogen = 1
    41       shift
    4234      breaksw;
    4335    case --psperlbuild:
    4436      set show_perlbuild = 1
    45       shift
    4637      breaksw;
    4738    case --perl5lib:
    4839      set show_perl5lib = 1
    49       shift
    5040      breaksw;
    5141    case -*:
     
    5444    default:
    5545      set args=($args $1);
    56       shift
    5746      breaksw;
    5847  endsw
     48  shift
    5949end
    6050if ($#args != 1) goto usage
     
    204194endif
    205195
     196# Build wants to put things in prefix/*, MakeMaker wants to put them in prefix/perl5/*
    206197set plibdir  = {$PSCONFDIR}/{$PSCONFIG}/lib
     198# set plib5dir = {$PSCONFDIR}/{$PSCONFIG}/lib/perl5
    207199set newpath = ""
    208200set pathlist = `echo $PERL5LIB | tr ':' '\n'`
     201# build newpath with contents of PERL5LIB excluding PSCONFDIR entries
    209202foreach name ($pathlist)
    210203  echo $name | grep $PSCONFDIR > /dev/null
     
    225218  if ("$newpath" == "") then
    226219    setenv PERL5LIB {$plibdir}:
     220    # setenv PERL5LIB {$plibdir}:{$plib5dir}:
    227221  else
    228222    setenv PERL5LIB {$plibdir}:{$newpath}
     223    # setenv PERL5LIB {$plibdir}:{$plib5dir}:{$newpath}
    229224  endif
    230225endif
     
    263258  alias  psautogen autogen.sh --bindir=$bindir --libdir=$libdir --mandir=$mandir --includedir={$PSCONFDIR}/{$PSCONFIG}/include --sysconfdir={$PSCONFDIR}/{$PSCONFIG}/etc --datadir={$PSCONFDIR}/share
    264259  alias  psperlbuild perl Build.PL --prefix {$PSCONFDIR}/{$PSCONFIG} --install_path script=$bindir --install_path arch=$bindir --install_path bin=$bindir --install_path lib=$libdir --install_path bindoc={$PSCONFDIR}/man/man1 --install_path libdoc={$PSCONFDIR}/man/man3
     260endif
     261
     262# list selected environment variables
     263if ($show_prefix) then
     264  echo $PSCONFDIR/$PSVERSION.$ARCH
     265  exit 0
     266endif
     267if ($show_libs) then
     268  echo $PSCONFDIR/$PSVERSION.$ARCH/lib
     269  exit 0
     270endif
     271if ($show_bin) then
     272  echo $PSCONFDIR/$PSVERSION.$ARCH/bin
     273  exit 0
    265274endif
    266275
  • trunk/psconfig/tagsets/ipp-extperl.dst

    r11938 r11940  
    55  03    DateTime::TimeZone             DateTime-TimeZone-0.59.tar.gz             
    66  04    DateTime::Locale               DateTime-Locale-0.33.tar.gz               
    7 #   05    DateTime::Local                Time-Local-1.17.tar.gz                   
     7  05    Time::Local                    Time-Local-1.17.tar.gz                   
    88  06    DateTime                       DateTime-0.36.tar.gz                     
    99  07    MIME::Base64                   MIME-Base64-3.07.tar.gz                   
     
    1616  14    HTML::Tagset                   HTML-Tagset-3.10.tar.gz                   
    1717  15    Digest                         Digest-1.15.tar.gz                       
    18   16    IO::Compress::Zlib             IO-Compress-Zlib-2.003.tar.gz             
     18  16    IO::Compress::Zlib::Extra      IO-Compress-Zlib-2.003.tar.gz             
    1919  17    version                                                                 
    2020  18    Text::Balanced                 Text-Balanced-v2.0.0.tar.gz               
     
    3737  35    Test::Cmd                      Test-Cmd-1.05.tar.gz                     
    3838  36    Net::HTTPServer                Net-HTTPServer-1.1.1.tar.gz               
     39  42    LWP                            libwww-perl-5.805.tar.gz             
    3940  37    Digest::MD5::File              Digest-MD5-File-0.05.tar.gz               
    4041  38    File::Temp                     File-Temp-0.18.tar.gz                     
    4142  39    Data::Validate::URI            Data-Validate-URI-0.01.tar.gz             
    4243  40    Test::Warn                     Test-Warn-0.08.tar.gz                     
    43   41    YAML                           YAML-0.62.tar.gz                         
    44   42    LWP                            libwww-perl-5.805.tar.gz             
     44  41    YAML                           YAML-0.62.tar.gz                          y
    4545  43    Module::Load                   Module-Load-0.10.tar.gz                   
    4646  44    Params::Check                  Params-Check-0.25.tar.gz                 
    47   45    Template                       Template-Toolkit-2.16.tar.gz             
     47  45    Template                       Template-Toolkit-2.16.tar.gz              n,n
    4848  46    Statistics::Descriptive        Statistics-Descriptive-2.6.tar.gz         
    4949  47    Storable                       Storable-2.15.tar.gz                     
Note: See TracChangeset for help on using the changeset viewer.