IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Changeset 15222


Ignore:
Timestamp:
Oct 4, 2007, 2:54:45 PM (19 years ago)
Author:
eugene
Message:

add -env option to list env variables set by psbuild

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/psconfig/psbuild

    r14643 r15222  
    22
    33$tagsets = "tagsets";
     4if (!-d $tagsets || !-r $tagsets || !-x $tagsets) { die "missing the directory of distribution tables: $tagsets\n"; }
    45
    56$version = "";
     
    4950        &list_distributions ();
    5051    }
     52    if ($ARGV[0] eq "-env") {
     53        &show_environment ();
     54    }
    5155    if ($ARGV[0] eq "-h")     { &usage (); }
    5256    if ($ARGV[0] eq "-help")  { &usage (); }
     
    6973exit 0;
    7074
     75sub show_environment {
     76   
     77    # use psconfig.csh to set needed build aliases
     78
     79    # set the psconfig version:
     80    if ("$version" eq "") {
     81        $version = $ENV{'PSVERSION'};
     82    }
     83    if ("$version" eq "") {
     84        $version = "default";
     85    }
     86
     87    $psconfigure = `csh psconfig.csh --psconfigure $version`; chomp $psconfigure;
     88    $psautogen   = `csh psconfig.csh --psautogen $version`;   chomp $psautogen;
     89    $psperlbuild = `csh psconfig.csh --psperlbuild $version`; chomp $psperlbuild;
     90
     91    # print "psconfigure: $psconfigure\n";
     92    # print "psautogen:   $psautogen\n";
     93    # print "psperlbuild: $psperlbuild\n";
     94
     95    # set build environment variables
     96    ps_setenv (1, "PATH",                 "--path");
     97    ps_setenv (1, "CPATH",                "--cpath");
     98    ps_setenv (1, "ARCH",                 "--arch");
     99    ps_setenv (1, "LIBRARY_PATH",    "--library_path");
     100    ps_setenv (1, "LD_LIBRARY_PATH", "--ld_library_path");
     101    ps_setenv (1, "PKG_CONFIG_PATH", "--pkg_config_path");
     102    ps_setenv (1, "ACLOCAL_FLAGS",   "--aclocal_flags");
     103    ps_setenv (1, "PERL5LIB",        "--perl5lib");
     104
     105    exit 0;
     106}
     107
    71108sub build_distribution {
    72109   
     
    85122    $psperlbuild = `csh psconfig.csh --psperlbuild $version`; chomp $psperlbuild;
    86123
    87     print "psconfigure: $psconfigure\n";
    88     print "psautogen:   $psautogen\n";
    89     print "psperlbuild: $psperlbuild\n";
     124    # print "psconfigure: $psconfigure\n";
     125    # print "psautogen:   $psautogen\n";
     126    # print "psperlbuild: $psperlbuild\n";
    90127
    91128    # set build environment variables
    92     ps_setenv ("PATH",            "--path");
    93     ps_setenv ("CPATH",           "--cpath");
    94     ps_setenv ("ARCH",            "--arch");
    95     ps_setenv ("LIBRARY_PATH",    "--library_path");
    96     ps_setenv ("LD_LIBRARY_PATH", "--ld_library_path");
    97     ps_setenv ("PKG_CONFIG_PATH", "--pkg_config_path");
    98     ps_setenv ("ACLOCAL_FLAGS",   "--aclocal_flags");
    99     ps_setenv ("PERL5LIB",        "--perl5lib");
     129    ps_setenv (0, "PATH",                 "--path");
     130    ps_setenv (0, "CPATH",                "--cpath");
     131    ps_setenv (0, "ARCH",                 "--arch");
     132    ps_setenv (0, "LIBRARY_PATH",    "--library_path");
     133    ps_setenv (0, "LD_LIBRARY_PATH", "--ld_library_path");
     134    ps_setenv (0, "PKG_CONFIG_PATH", "--pkg_config_path");
     135    ps_setenv (0, "ACLOCAL_FLAGS",   "--aclocal_flags");
     136    ps_setenv (0, "PERL5LIB",        "--perl5lib");
    100137
    101138    # some versions of libtool use this value:
     
    122159
    123160        $workdir = "../$cvsname[$i]";
    124         print "workdir: $workdir\n";
    125         chdir $workdir;
    126        
     161
    127162        # XXX need to grab current value for cleanup
    128163        print "\n ** psbuild: $cvsname[$i] ** \n";
    129164        print "\033]0; ** psbuild: $cvsname[$i] ** \007";
     165
     166        if (!-d $workdir || !-r $workdir || !-x $workdir) {
     167            print STDERR "WARNING: no directory for component $cvsname[$i], skipping\n";
     168            next;
     169        }
     170       
     171        chdir $workdir;
    130172
    131173        # how do we build this component?
     
    268310sub ps_setenv {
    269311
    270     my $var = $_[0];
    271     my $flag = $_[1];
     312    my $verbose = $_[0];
     313    my $var = $_[1];
     314    my $flag = $_[2];
    272315
    273316    my $answer = `csh psconfig.csh $flag $version`;
     
    275318
    276319    $ENV{$var} = $answer;
    277 }
    278 
     320    if ($verbose) {
     321        print STDERR "$var = $answer\n";
     322    }
     323}
     324
Note: See TracChangeset for help on using the changeset viewer.