How to use BFARCH
The environment variable $BFARCH is used by SRT to define one architecture (and optionally a compiler combination) that has unique set of binaries.
4 Sep 1996
Related pages: [BaBar Home Page] [Computing]
Table of Contents:
* Standard BFARCH: the standard form of BFARCH is OSname+MajorVersion,
a "-native" extension means using the vendor compiler.
Current standard BFARCH are AIX4, HP-UX10, OSF1V3, AIX4-native,
HP-UX10-native, and OSF1V3-native. In addition, IRIX5, IRIX6, are also used.
* Non-standard BFARCH: this is either an arch-compiler combination or
special platforms. e.g. AIX3-2.7.2, VxWorks, NEXTSTEP.
* User should copy SRTstartup.csh over to their home directory. And add
"source SRTstartup.csh" to their .cshrc so that it will be executed
upon login. This script sets BFARCH to the standard form such as AIX3,
and add $BFDIST/releases/current/bin/$BFARCH to PATH so that the
binaries is in the execution path.
* The environment variable BFARCH is itself used upon different stages
of SRT. One major usage is creating $BFARCH subdirectory under bin/
lib/ and include/ during a production or test release. Another major
usage is to specify which architecture dependent code to run. See
discussion below to see how this is done.
* The bin/$BFARCH in PATH enable user to locate SRT commands and binaries
in the execution path. Command such as newrel, addpkg and binaries
such as bbsim are located this way.
If your BFARCH is not a supported platform in the latest release, you can manually set BFARCH to a previous version.
By comparing the value of BFARCH, a program can specify architecture
dependent code.
In GNUmakefile:
ifneq (,$(findstring AIX,$(BFARCH)))
ifneq (,$(findstring OSF,$(BFARCH)))
ifneq (,$(findstring IRIX5,$(BFARCH)))
ifneq (,$(findstring IRIX6,$(BFARCH)))
ifneq (,$(findstring HP-UX,$(BFARCH)))
ifneq (,$(findstring SunOS4,$(BFARCH)))
ifneq (,$(findstring SunOS5,$(BFARCH)))
ifneq (,$(findstring VxWorks,$(BFARCH)))
ifneq (,$(findstring NEXTSTEP,$(BFARCH)))
In Bourne Shell:
if [ `expr "$BFARCH" : '.*SunOS5.*' ` -gt 0 ]; then
terryh@slac.stanford.edu,
|