csh
shell.
Variables specified in red are provided by the user. The other variables should be derived from them.
CVSROOT
cvs
repository for the Scale compiler.
SCALE
~/scale
.
SCALEHOME
SCALEHOME
can have the same value as SCALE
.
SCALEHOSTTYPE
sparc
alpha
i686
SCALEHOSTNAME
SCALEHOSTTYPE
if you do not wish to keep separate executable and libraries for differnt systems of the same type.
SCALETARGETTYPE
sparc
alpha
mips
SCALETARGETNAME
SCALEHOSTOS
SCALETARGETOS
SCALELIB
$SCALE/$SCALERELEASE/$SCALEHOSTNAME/lib
.
SCALEHOMELIB
$SCALEHOME/$SCALERELEASE/$SCALEHOSTNAME/lib
.
SCALEBIN
$SCALE/$SCALERELEASE/$SCALEHOSTNAME/bin
.
SCALEHOMEBIN
$SCALEHOME/$SCALERELEASE/$SCALEHOSTNAME/bin
.
LD_LIBRARY_PATH
$SCALELIB
and $SCALEHOMELIB
.
CC
CFLAGS
-g
to use when compiling the parts of Scale that are written in C.
AR
ar
is used.
MAKE
make
.
JAVAHOME
JNI_INCLUDES
"-I$JAVAHOME/include -I$JAVAHOME/include/xxx"
where xxx
is solaris
, alpha
, or linux
.
CLASSDEST
$SCALE/$SCALERELEASE/classes
.
CLASSPATH
jar
file for this.
This is usually set to "${CLASSPATH}:${SCALE}/${SCALERELEASE}:${SCALE}/${SCALERELEASE}/classes:${SCALEHOME}/${SCALERELEASE}:${SCALEHOME}/${SCALERELEASE}/classes"
.
EDGCPSRC
"$SCALE/$SCALERELEASE/tools/edgcpfe_2.43/src"
.
EDGCPSRCHOME
"$SCALEHOME/$SCALERELEASE/tools/edgcpfe_2.43/src"
.
EDGCP_INCLUDES
.h
files for the frontend.
This is usually set to "-I$EDGCPSRC -I$EDGCPSRCHOME"
.
EDGFSRC
"$SCALE/$SCALERELEASE/tools/edgffe_1.03/src"
.
EDGFSRCHOME
"$SCALEHOME/$SCALERELEASE/tools/edgffe_1.03/src"
.
EDGF_INCLUDES
.h
files for the frontend.
This is usually set to "-I$EDGFSRC -I$EDGFSRCHOME"
.
JAVA
"$JAVAHOME/bin/java"
.
JAVAC
"$JAVAHOME/bin/javac"
.
JAVACFLAGS
"-J-Xmx32m -d $CLASSDEST -g"
.
JAVAD
javadoc
tool. This is usually set to "${JAVAHOME/bin/javadoc"
.
JAVADFLAGS
"-J-Xmx128m -J-Xms32m"
.
JAVADDEST
javadoc
generated documentation.
This is usually set to $SCALE/$SCALERELEASE/doc/html
.
When we make a change to the Scale compiler, we run the regression tests to see if the change caused a problem that did not occur before the change. If a test fails, we can use it to track down the bug that was introduced by the change.
There are many separate tests that comprise the regression test suite. Each test is compiled by Scale and compiled by a native compiler. The regression tests compare the output generated from running both versions. If there is any difference, the test failed.
These environmental variables are in addition to the ones described above. They are used when running the regression tests on the compiler. You may or may not be able to run these tests. They are not provided with the normal release of the Scale compiler.
F77
DAVINCIHOME
F77FLGS
-g
to use when using the native F77 compiler.
CFP95
CINT95
CFP2000
CINT2000
DISBMK
csh
Setup Script#!/bin/csh -f # This file must be sourced - not executed. if ($?SCALE == 0) then echo SCALE must be set in your environment. Exiting. exit endif if ($?SCALERELEASE == 0) then echo SCALERELEASE must be set in your environment. Exiting. exit endif echo Setting up Scale for developer environment. setenv SCALEHOME ~scale if (${?LD_LIBRARY_PATH} == 0) then setenv LD_LIBRARY_PATH endif setenv SCALEHOSTTYPE "unknown" if ($MACHINETYPE == "SOLsun") then setenv MANPATH /exp/rcf/comm/forte/SUNWspro/man:/usr/man:$MANPATH setenv LD_LIBRARY_PATH ".:/exp/rcf/comm/forte/SUNWspro/lib:$LD_LIBRARY_PATH" setenv LM_LICENSE_FILE /exp/rcf/comm/forte/SUNWste/license_tools/sunpro.lic,node setenv SCALEHOSTTYPE "sparc" setenv CC "/exp/rcf/comm/forte/SUNWspro/bin/cc -Xc" setenv CFLAGS "-g -v" setenv F77 "/exp/rcf/comm/forte/SUNWspro/bin/f77 -silent" setenv AR /usr/ccs/bin/ar setenv MAKE /exp/rcf/share/bin/make setenv JAVAHOME /exp/rcf/share/X11R5/j2sdk1_3_0 setenv JNI_INCLUDES "-I$JAVAHOME/include -I$JAVAHOME/include/solaris" else if ($MACHINETYPE == "ALPHA") then setenv MANPATH /usr/man:$MANPATH setenv LD_LIBRARY_PATH .:$LD_LIBRARY_PATH setenv SCALEHOSTTYPE "alpha" setenv CC "cc -std" setenv CFLAGS "-g -warnprotos" # don't add -msg_disable tags because they aren't portable across cxx versions. -msg_quiet seems to be better setenv F77 f77 setenv AR /usr/ccs/bin/ar setenv MAKE /exp/rcf/share/bin/make setenv JAVAHOME /usr/opt/java131 setenv JNI_INCLUDES "-I$JAVAHOME/include -I$JAVAHOME/include/alpha" else if ($MACHINETYPE == "i686") then setenv SCALEHOSTTYPE "i686" setenv CC gcc setenv AR /usr/bin/ar setenv MAKE /usr/bin/gmake setenv CFLAGS -g setenv JAVAHOME /exp/rcf/share/X11R5/jdk1.3 setenv JNI_INCLUDES "-I$JAVAHOME/include -I$JAVAHOME/include/linux" endif setenv SCALEHOSTNAME `echo $HOST | awk -F. '{print $1}'` setenv SCALETARGETTYPE $SCALEHOSTTYPE setenv SCALELIB ${SCALE}/${SCALERELEASE}/${SCALEHOSTNAME}/lib setenv SCALEHOMELIB ${SCALEHOME}/${SCALERELEASE}/${SCALEHOSTNAME}/lib setenv SCALEBIN ${SCALE}/${SCALERELEASE}/${SCALEHOSTNAME}/bin setenv SCALEHOMEBIN ${SCALEHOME}/${SCALERELEASE}/${SCALEHOSTNAME}/bin setenv LD_LIBRARY_PATH "${LD_LIBRARY_PATH}:${SCALELIB}:${SCALEHOMELIB}" set path = ($path $SCALEBIN $SCALEHOMEBIN) setenv CVSROOT ${SCALEHOME}/cvs setenv CLASSDEST $SCALE/$SCALERELEASE/classes if ($?CLASSPATH == 0) then setenv CLASSPATH endif # the CLASSPATH goes as follows: # - the development destination directory # - the root of the development hierarchy (needed for looking up .java files) # - the main development directory # - the root of the main development hierarchy (also for .java files) setenv CLASSPATH ${CLASSPATH}:${SCALE}/${SCALERELEASE}:${SCALE}/${SCALERELEASE}/classes:${SCALEHOME}/${SCALERELEASE}:${SCALEHOME}/${SCALERELEASE}/classes setenv EDGCPSRC ${SCALE}/${SCALERELEASE}/tools/edgcpfe_2.43/src setenv EDGCPSRCHOME ${SCALEHOME}/${SCALERELEASE}/tools/edgcpfe_2.43/src setenv EDGCP_INCLUDES "-I$EDGCPSRC -I$EDGCPSRCHOME" setenv EDGFSRC ${SCALE}/${SCALERELEASE}/tools/edgffe_1.03/src setenv EDGFSRCHOME ${SCALEHOME/${SCALERELEASE}/tools/edgffe_1.03/src setenv EDGF_INCLUDES "-I$EDGFSRC -I$EDGFSRCHOME" setenv JAVA "$JAVAHOME/bin/java" setenv JAVAC "$JAVAHOME/bin/javac" setenv JAVACFLAGS "-J-Xmx32m -d $CLASSDEST -g" setenv JAVAD "${JAVAHOME/bin/javadoc -J-Xmx128m -J-Xms32m" setenv JAVADFLAGS "-J-Xmx128m -J-Xms32m" setenv JAVADDEST $SCALE/$SCALERELEASE/doc/html setenv JAVAH $JAVAHOME/bin/javah setenv DAVINCIHOME $SCALEHOME/$SCALERELEASE/tools/daVinci/daVinci_V2.1_$MACHINETYPE setenv CFP95 /exp/rcf/common/pub/spec/benchspec/CFP95 setenv CINT95 /exp/rcf/common/pub/spec/benchspec/CINT95 setenv CFP2000 /exp/rcf/common/pub/spec/benchspec/CFP2000 setenv CINT2000 /exp/rcf/common/pub/spec/benchspec/CINT2000 setenv DISBMK /exp/rcf/common/pub/DIS/dis echo SCALE = $SCALE echo "Compiling on $SCALEHOSTTYPE : $SCALEHOSTNAME for $SCALETARGETTYPE" echo "Looking for libraries at: $SCALELIB $SCALEHOMELIB" echo "Looking for binaries at: $SCALEBIN $SCALEHOMEBIN" echo "Using development directory: $SCALE/$SCALERELEASE" echo "Using support development directory: $SCALEHOME/$SCALERELEASE" echo "Generated classes stored at: $CLASSDEST" echo "Looking for classes at: $CLASSPATH" echo "Using C compiler: $CC" echo "Using F77 compiler: $F77" echo "Scale setup complete."