Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Migration of unmigrated content due to installation of a new plugin

Attendees:  Joanne Bogart, Richard Dubois, Navid GopayeganiGolpayegani, Heather Kelly, Tracy Usher

...

Build of G4 (possibly a later version) for VC90.  Tracy agreed to take a peek.

ASP and RSP

Joanne is plugging away on ASP, no roadblocks yet, but plenty to do.  As for RSP, it depends on both ASP and Scitools and Joanne proposes that before worrying about SCons, that the design of RSP be looked at and simplified.

SCons bootstrap

Joanne explained the thinking behind Tom's work to automate the determination of the path to set up the environment based on the type of OS desired for a run.  It is desired to automate this setup, to prepare the a path to the setup script suitable for the desired combination of variant, debug/opt,etc.  Joanne feels providing a central utility is the way to go.  Navid is willing to help out.  Tom has created a python script as a starting point:

[begin TG update, 9/22/2009]

  • Script is currently stored here: /u/ec/dragon/bin/svs.py
  • Various SCons-related strings can be constructed
  • Lots of parameter overrides so that one may 'force' a particular SCons config independent of the machine being used.
  • Acts as a stand-alone python app, or a python function - both return a single string
  • Currently limited to ScienceTools builds
  • built-in help:
Code Block

$ /u/ec/dragon/bin/svs.py -h
usage: svs.py [options]

SCons architecture variant string generator

options:
  --version             show program's version number and exit
  -h, --help            show this help message and exit
  -s, --SConsArch       Return SCons architecture variant string
  -c, --SConsComp       Return SCons compiler string
  -i, --SConsInstDir    Return SCons installation directory path
  -b, --SConsBinDir     Return SCons binaries directory path
  -o, --cmtArch         Return cmt architecture string
  -V SCITOOLSVER, --SciToolsVer=SCITOOLSVER
                        Version of ScienceTools to use, default=09-15-03
  -B BUILDTYPE, --BuildType=BUILDTYPE
                        Type of ScienceTools build to use, default=Optimized
  -C COMPILERVERSION, --CompilerVersion=COMPILERVERSION
                        Compiler version desired (e.g., gcc32, gcc34, gcc41)
  -W WORDSIZE, --WordSize=WORDSIZE
                        Machine address length override (e.g., 32 or 64)
  -O OSVERSION, --OSversion=OSVERSION
                        Machine OS version override (e.g., RHEL3, RHEL4 or
                        RHEL5)


  • Example: to construct the path to ScienceTools bin directory:
    Code Block
    
    (Tue 11:22) dragon@comet $ svs.py -b
    /nfs/farm/g/glast/u35/ReleaseManagerBuild/redhat5-i686-32bit-gcc41/Optimized/ScienceTools/09-15-03/bin/redhat5-i686-32bit-gcc41-Optimized/
    
    
    (Note this command was executed from a RHEL5-32 machine)
  • Example: construct a path to ScienceTools bin directory with various overrides:
    Code Block
    
    (Tue 11:24) dragon@comet $ svs.py -b -V 09-15-04 -O RHEL3
    /nfs/farm/g/glast/u35/ReleaseManagerBuild/redhat3-i686-32bit-gcc32/Optimized/ScienceTools/09-15-04/bin/redhat3-i686-32bit-gcc32-Optimized/
    
    
  • Example: return only the SCons architecture variant string
    Code Block
    
    (Tue 11:25) dragon@comet $ svs.py -s
    redhat5-i686-32bit-gcc41
    
    
  • Example: how to use svs.py to set up one's environment to run ScienceTools.
    • Add this to your .bashrc (SCons does not provide a C-shell setup script for ScienceTools 09-15-03 so one is obligated to use bash)
      Code Block
      
      export SCONS_ARCH=`/u/ec/dragon/bin/svs.py -s`
      export SCONS_BIN=`/u/ec/dragon/bin/svs.py -b`
      export INST_DIR=`/u/ec/dragon/bin/svs.py -i`
      export GLAST_EXT=/afs/slac/g/glast/ground/GLAST_EXT/${SCONS_ARCH}
      
    • When ready to run ScienceTools, run the official setup script (either manually or put this into .bashrc after the above lines)
      Code Block
      
      source $SCONS_BIN/_setup.sh
      

[end of TG update]

Tom also noted that the different directory structures in the old-style GLAST_EXT for CMT externals and the SCons version causes some trouble when attempting to set up for both ST and GR.  We could provide symlinks across the board for the GR externals to standardize the setup.  This will probably also be taken care of as we move to support GR SCons builds.