#_____________________________________________________________________________ # The file .HPF defines various shortcuts as environmental variables for the # hpf account on gauss. # Last revised by Aleksandar Donev on 3/8/2000 #_____________________________________________________________________________ echo "..." echo "Setting up environment for HPF users" echo "Using Aleksandar Donev's settings" echo "..." #_____________________________________________________________________________ # Just some system-administration related variables set autologout = 0 umask 002 alias rsh ssh alias ls "ls -F --color=tty" # The initial values for the variables used in this script: setenv PRINTER hplj346g setenv MANPATH /usr/man:/usr/local/man setenv LD_LIBRARY_PATH /usr/local/ROOT/v2_22_09/lib set path = (/usr/bin /usr/bin /bin /usr/local/bin /usr/X11R6/bin /usr/local/ROOT/v2_22_09/bin /home/hpf /home/hpf/bin) # Note that the editor jcc, part of Code Crusader, can be used and is very nice: # Also, the rsync update-clients program is here: set path = (. ~/Crusader /usr/local/346g-rsync $path ) setenv HPF_LOCAL /usr/local/hpf setenv HPF_SO /usr/local/hpf/lib #_____________________________________________________________________________ # HPF compiler-related variables # For lf95--automatically updated on login on gauss: setenv LF95 /home/hpf/LF95 set path = ( $LF95/bin $path ) setenv MANPATH "$MANPATH":$LF95/man # Shared libraries are on each-node in /usr/local/hpf # but we place them as symbolic links in /home/hpf # lf95 uses some shared libraries itself: setenv LD_LIBRARY_PATH "$LD_LIBRARY_PATH":"$LF95"/lib # The Adaptor compiler switches and environmental variables: setenv PHOME /home/hpf/Adaptor set path = ( $PHOME/bin $path ) setenv MANPATH "$MANPATH":$PHOME/man # Aliases for several compilers alias hpf gmdhpf alias f90 lf95 alias f77 lf95 #_____________________________________________________________________________ # Various directories under ~/Fortran setenv HPF ~/Fortran setenv HPF_SRC $HPF/src setenv HPF_src $HPF/src/temp setenv HPF_EXE $HPF/exe setenv HPF_exe $HPF/exe/temp set path = ( $HPF_exe $HPF_EXE $path ) setenv HPF_LINK $HPF/link setenv HPF_link $HPF/link/temp setenv HPF_LIBS $HPF/libs # Note that some of the shared libraries are rsync'ed # but we still reference them through symbolic links in $HPF_LIBS setenv LD_LIBRARY_PATH "$LD_LIBRARY_PATH":"$HPF_LIBS" setenv HPF_INLINE $HPF/inline setenv HPF_inline $HPF/inline/temp setenv HPF_MODULES $HPF/modules setenv HPF_modules $HPF/modules/temp setenv HPF_IPA $HPF/IPA setenv HPF_ipa $HPF/IPA/temp setenv HPF_PROF $HPF/profiles setenv HPF_TMP $HPF/tmp #_____________________________________________________________________________ # LF95 compiler options shortcuts: setenv rm346 "--f95 --dal --nchk -O --tpp -I$HPF_src -M$HPF_modules -L$HPF_LIBS" setenv RM346 "--f95 --dal --nchk -O --tpp -I$HPF_SRC -M$HPF_MODULES -L$HPF_LIBS" setenv HPF_debug "--f95 --chk --wo --in --info -g --trace -I$HPF_src -M$HPF_modules -L$HPF_LIBS" setenv HPF_DEBUG "--f95 --chk --wo --in --info -g --trace -I$HPF_SRC -M$HPF_MODULES -L$HPF_LIBS" #_____________________________________________________________________________ # Adaptor translator options shortcuts # These are the main shortcuts for the Adaptor compilation. # NOTE: I chose to do the compilation in two steps. # Step 1: Fadapt translation: setenv RM346A "-HPF_ADP -O -f -F90 -strip 255 -safety 0 -I"$HPF_MODULES":-I$HPF_SRC" setenv rm346a "-HPF_ADP -O -f -F90 -strip 255 -safety 0 -I"$HPF_modules":-I$HPF_src" # Step 2: Compiling with lf95 and linking all the libraries: setenv HPF_ADP "--nf95 --dal --nchk -O --tpp -I$HPF_src --wide -M$HPF_MODULES -L$HPF_LIBS -lDALIB -lMPICH" setenv HPF_ADP1 "--nf95 --dal --nchk -O --tpp -I$HPF_src --wide -M$HPF_MODULES -L$HPF_LIBS -lUNIDALIB -lMPICH" setenv HPF_adp "--nf95 --dal --nchk -O --tpp -I$HPF_src --wide -M$HPF_MODULES -L$HPF_LIBS -ldalib -lmpich" setenv HPF_adp1 "--nf95 --dal --nchk -O --tpp -I$HPF_src --wide -M$HPF_MODULES -L$HPF_LIBS -lunilib -lmpich" #_____________________________________________________________________________ # MPI related shortcuts: setenv MPI_DIR ~/Libraries/mpich set path = ( $MPI_DIR/bin $MPI_DIR/util $MPI_DIR/mpid/mpd $path ) setenv MANPATH "$MANPATH":$MPI_DIR/man setenv MPI_HTML $MPI_DIR/www # These will use the secure server for mpirun-ch_p4: setenv MPI_USEP4SSPORT yes setenv MPI_P4SSPORT 1234 setenv GAUSS $MPI_DIR/mpid/mpd/gauss setenv HOSTS $MPI_DIR/mpid/mpd/mpd.hosts # This is the shared library pass-on for the mpd device: alias mpirun_mpd mpirun alias mpiend_mpd mpdallexit setenv SLIB "-MPDENV- LD_LIBRARY_PATH=/home/hpf/Fortran/libs:/home/hpf/LF95/lib" setenv MPI_F77 "--staticlink -I$HPF_MODULES/MPI -L/usr/i386-redhat-linux/lib -L/usr/lib/gcc-lib/i386-redhat-linux/egcs-2.91.66 -lc -lgcc -lmpich -lmpichf" setenv MPI_F90 "--staticlink -I$HPF_MODULES/MPI -L/usr/i386-redhat-linux/lib -L/usr/lib/gcc-lib/i386-redhat-linux/egcs-2.91.66 -lc -lgcc -lmpich -lmpichf -lmpichf90" # These are the main options # First for the ch_p4 device: setenv HPF_MPI_ch_p4 "-I$HPF_MODULES/MPI -L/usr/i386-redhat-linux/lib -L/usr/lib/gcc-lib/i386-redhat-linux/egcs-2.91.66 -lc -lgcc -lMPICH_ch_p4 -lmpichf -lMPICHF90" setenv HPF_mpi_ch_p4 "--staticlink -I$HPF_MODULES/MPI -L/usr/i386-redhat-linux/lib -L/usr/lib/gcc-lib/i386-redhat-linux/egcs-2.91.66 -lc -lgcc -lmpichf90 -lmpich_ch_p4 -lmpichf" setenv HPF_MPI_mpd "-I$HPF_MODULES/MPI -L/usr/i386-redhat-linux/lib -L/usr/lib/gcc-lib/i386-redhat-linux/egcs-2.91.66 -lc -lgcc -lMPICH_mpd -lmpichf -lMPICHF90" setenv HPF_mpi_mpd "--staticlink -I$HPF_MODULES/MPI -L/usr/i386-redhat-linux/lib -L/usr/lib/gcc-lib/i386-redhat-linux/egcs-2.91.66 -lc -lgcc -lmpichf90 -lmpich_mpd -lmpichf" # The default is the mpd device: setenv HPF_MPI "-I$HPF_MODULES/MPI -L/usr/i386-redhat-linux/lib -L/usr/lib/gcc-lib/i386-redhat-linux/egcs-2.91.66 -lc -lgcc -lMPICH -lmpichf -lMPICHF90" setenv HPF_mpi "--staticlink -I$HPF_MODULES/MPI -L/usr/i386-redhat-linux/lib -L/usr/lib/gcc-lib/i386-redhat-linux/egcs-2.91.66 -lc -lgcc -lmpichf90 -lmpich -lmpichf" #_____________________________________________________________________________ # BLACS communication library: setenv BLACS ~/Libraries/BLACS # NOTE: There is a discrepancy in the library for one of the f77 routines, # so I made a second Fortran lib as a patch!--may cause problems setenv HPF_BLACS "-lBLACS -lblacsf $HPF_MPI -lfblacs" setenv HPF_blacs "-lblacs -lblacsf $HPF_mpi -lfblacs" #_____________________________________________________________________________ # CGI related shortcuts: setenv HPF_CGI "--staticlink -I$HPF_MODULES $HPF_LINK/iso_vst.o $HPF_LINK/cgi.o" setenv HPF_cgi "-I$HPF_MODULES $HPF_LINK/iso_vst.so $HPF_LINK/cgi.so" #_____________________________________________________________________________ # DISLIN graphics library: setenv DISLIN ~/Libraries/DISLIN set path = ( $DISLIN/bin $path ) # Please place all of your graphics in this directory: setenv HPF_GRAPHS /home/hpf/Graphics setenv HPF_DISLIN "-I$HPF_MODULES -L$HPF_LIBS $HPF_LINK/graphics.so $HPF_LINK/dislin.so -lDISLIN" setenv HPF_dislin "--staticlink -I$HPF_MODULES -L$HPF_LIBS $HPF_LINK/graphics.o $HPF_LINK/dislin.o -ldislin -L/usr/X11R6/lib -lX11" #_____________________________________________________________________________ # BLAS Pentium II Fortran 90 library setenv BLAS ~/Libraries/BLAS setenv HPF_BLAS "-I$HPF_MODULES/BLAS -L$HPF_LIBS $HPF_LINK/blas.so -lBLAS" setenv HPF_blas "--staticlink -I$HPF_MODULES/BLAS -L$HPF_LIBS $HPF_LINK/blas.o -lblas" #_____________________________________________________________________________ # LAPACK Fortran 90 library setenv LAPACK ~/Libraries/LAPACK setenv LAPACK90 ~/Libraries/LAPACK90 setenv HPF_LAPACK "-I$HPF_MODULES -L$HPF_LIBS -lBLAS -lLAPACK -llapack90" setenv HPF_lapack "--staticlink -L$HPF_LIBS -I$HPF_MODULES -lblas -llapack -llapack90"