SLAC PEP-II
BABAR
SLAC<->RAL
Babar logo
HEPIC E,S & H Databases PDG HEP preprints
Organization Detector Computing Physics Documentation
Personnel Glossary Sitemap Search Hypernews
Unwrap page!
Comp. Search
Who's who?
Meetings
FAQ Homepage
Archive
Environment
Administration
New User Info.
Web Info/Tools
Monitoring
Training
Tools & Utils
Programming
C++ Standard
SRT, AFS, CVS
QA and QC
Remedy
Histogramming
Operations
PromptReco
Simulation Production
Online SW
Dataflow
Detector Control
Evt Processing
Run Control
Calibration
Databases
Offline
Workbook
Coding Standards
Simulation
Reconstruction
Prompt Reco.
BaBar Grid
Data Distribution
Beta & BetaTools
Kanga & Root
Analysis Tools
RooFit Toolkit
Data Management
Data Quality
Event display
Event Browser
Code releases
Databases
Check this page for HTML 4.01 Transitional compliance with the
W3C Validator
(More checks...)

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:


Definition of $BFARCH

* 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. 

How BFARCH works

* 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.


New BFARCH

If your BFARCH is not a supported platform in the latest release, you can manually set BFARCH to a previous version.


How to compare BFARCH

  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,