/[escript]/trunk/mk
ViewVC logotype

Diff of /trunk/mk

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

trunk/esys2/mk revision 121 by jgs, Fri May 6 04:26:16 2005 UTC trunk/mk revision 338 by jgs, Mon Dec 12 02:05:32 2005 UTC
# Line 3  Line 3 
3  # $Id$  # $Id$
4  # An explicit building script for esys  # An explicit building script for esys
5    
6  MODULES="tools/CppUnitTest tools/mmio esysUtils escript finley"  #**********************************************************************
7    # NB: this script is setup to perform default developmental builds
8    # change any settings you require, but PLEASE do not check any changes
9    # to this script back into the repository - talk to Jon first
10    #**********************************************************************
11    
12    # the modules to make
13    MODULES="tools/CppUnitTest tools/mmio esysUtils escript paso finley bruce modellib"
14    
15    # the modules to test
16    TESTS="escript bruce finley"
17    
18    # the python tests to run
19    FINLEY_PYTESTS="ImportTest.py SimpleSolve.py GradTest.py test_linearPDEsOnFinley.py test_generators.py test_visualization_interface.py test_utilOnFinley.py test_symbolsOnFinley.py"
20    ESCRIPT_PYTESTS="ImportTest.py BinaryOps.py UnaryOps.py SliceGetting.py SliceSetting.py MiscTests.py newEscriptTests.py DataVariableTests.py test_xml.py"
21    BRUCE_PYTESTS="ImportTest.py BruceTest.py test_utilOnBruce.py test_symbolsOnBruce.py"
22    
23  # use for local developmental builds  # use this setting for local developmental builds
24  ENVVARS="DODEBUG=YES"  ENVVARS="DODEBUG=YES"
25    
26  # use for production installs  - NB: overwrites installed esys llibraries  if [ "$2" == "DEBUG" ]
27  #ENVVARS="L_INSTLIB_DIR=/raid2/tools/esys/lib L_PYTH_DIR=/raid2/tools/esys/esys"  then
28        ENVVARS="DODEBUG=YES"
29    fi
30    
31  if [ "$1" == "clean" ];  if [ "$2" == "NODEBUG" ]
32  then  then
33      for module in $MODULES ; do \      ENVVARS="DODEBUG=NO"
34          (echo Cleaning: $module; cd $module; gmake clean) \  fi
35    
36    # use this setting for production installs on altix
37    # ** NB: overwrites centrally installed esys libraries on altix ***
38    #ENVVARS="$ENVVARS L_INSTLIB_DIR=/raid2/tools/esys/lib L_PYTH_DIR=/raid2/tools/esys/esys"
39    
40    # ensure required symlinks are setup first
41    #(cd esysUtils/inc; if [ ! -h esysUtils ]; then ln -s ../src esysUtils; fi)
42    #(cd escript/inc; if [ ! -h escript ]; then ln -s ../src escript; fi)
43    #(cd finley/inc; if [ ! -h finley ]; then ln -s ../src finley; fi)
44    #(cd paso/inc; if [ ! -h paso ]; then ln -s ../src paso; fi)
45    #(cd bruce/inc; if [ ! -h bruce ]; then ln -s ../src bruce; fi)
46    
47    (cd tools/mmio; if [ ! -h Makefile ]; then ln -s ./mmio.mk Makefile; fi)
48    (cd tools/CppUnitTest; if [ ! -h Makefile ]; then ln -s ./CppUnitTest.mk Makefile; fi)
49    (cd esysUtils; if [ ! -h Makefile ]; then ln -s ./esysUtils.mk Makefile; fi)
50    (cd escript; if [ ! -h Makefile ]; then ln -s ./escript.mk Makefile; fi)
51    (cd finley; if [ ! -h Makefile ]; then ln -s ./finley.mk Makefile; fi)
52    (cd paso; if [ ! -h Makefile ]; then ln -s ./paso.mk Makefile; fi)
53    (cd bruce; if [ ! -h Makefile ]; then ln -s ./bruce.mk Makefile; fi)
54    (cd modellib; if [ ! -h Makefile ]; then ln -s ./modellib.mk Makefile; fi)
55    
56    # clean all modules
57    if [ "$1" == "clean" ]
58    then
59        for module in $MODULES ; do
60            (echo Cleaning: $module; cd $module; make clean)
61      done      done
62          exit          exit 0
63  fi  fi
64    
65  (cd escript/lib; if [ ! -e py_src ]; then mkdir py_src; fi)  # uninstall all modules
66    if [ "$1" == "uninstall" ]
67    then
68        for module in $MODULES ; do
69            (echo Cleaning: $module; cd $module; make clean)
70        done
71        for module in $MODULES ; do
72            (echo Uninstalling: $module; cd $module; make uninstall)
73        done
74            exit 0
75    fi
76    
77  (cd escript/inc; if [ ! -e escript ]; then ln -s ../src escript; fi)  # run the unit tests
78  (cd esysUtils/inc; if [ ! -e esysUtils ]; then ln -s ../src esysUtils; fi)  if [ "$1" == "unit_test" ]
79  (cd finley/inc; if [ ! -e finley ]; then ln -s ../src finley; fi)  then
80        for module in $TESTS
81        do
82        echo "Running unit tests for: $module"
83        cd $ESYS_ROOT/$module/test
84        ./unit_test
85            if [ $? != 0 ]
86            then
87              echo Unit Testing FAILED for module: $module
88              exit 1
89            fi
90        done
91        exit 0
92    fi
93    
94  (cd escript; if [ ! -e Makefile ]; then ln -s ./escript.mk Makefile; fi)  # run the python tests
95  (cd esysUtils; if [ ! -e Makefile ]; then ln -s ./esysUtils.mk Makefile; fi)  if [ "$1" == "py_test" ]
96  (cd finley; if [ ! -e Makefile ]; then ln -s ./finley.mk Makefile; fi)  then
97  (cd tools/mmio; if [ ! -e Makefile ]; then ln -s ./mmio.mk Makefile; fi)      for module in $TESTS
98  (cd tools/CppUnitTest; if [ ! -e Makefile ]; then ln -s ./CppUnitTest.mk Makefile; fi)      do
99        echo "Running python tests for: $module"
100        cd $ESYS_ROOT/$module/test/python
101        if [ "$module" == "finley" ]
102        then
103                for pytest in $FINLEY_PYTESTS
104                do
105                echo "Running python test: $pytest"
106                    python $pytest
107                    if [ $? != 0 ]
108                    then
109                      echo Python Testing FAILED for $pytest in module $module
110                      exit 1
111                    fi
112                done
113        elif [ "$module" == "escript" ]
114        then
115                for pytest in $ESCRIPT_PYTESTS
116                do
117                echo "Running python test: $pytest"
118                    python $pytest
119                    if [ $? != 0 ]
120                    then
121                      echo Python Testing FAILED for $pytest in module $module
122                      exit 1
123                    fi
124                done
125        elif [ "$module" == "bruce" ]
126        then
127                for pytest in $BRUCE_PYTESTS
128                do
129                echo "Running python test: $pytest"
130                    python $pytest
131                    if [ $? != 0 ]
132                    then
133                      echo Python Testing FAILED for $pytest in module $module
134                      exit 1
135                    fi
136                done
137        fi
138        done
139        exit 0
140    fi
141    
142  for module in $MODULES ; do \  # default case - just build all modules
143      (echo Building: $module; cd $module; env $ENVVARS gmake -j 8) \  echo "*************** build ************************************"
144    for module in $MODULES ; do
145        (echo Building: $module; cd $module; env $ENVVARS make -j 10)
146            if [ $? != 0 ]
147            then
148                echo Build FAILED for module: $module
149                exit 1
150            fi
151  done  done
152    
153  if [ "$1" == "install" ];  # install all modules
154    if [ "$1" == "install" ]
155  then  then
156            echo "***************installation ************************************"
157      for module in $MODULES ; do \      for module in $MODULES ; do \
158          (echo Installing: $module; cd $module; env $ENVVARS gmake install ) \                  echo ENVVARS = $ENVVARS
159            (echo Installing: $module; cd $module; env $ENVVARS make install)
160                    if [ $? != 0 ]
161                    then
162                      echo Installation FAILED for module: $module
163                      exit 1
164                    fi
165      done      done
166            #(cd esys; touch __init__.py)
167            #(cd esys/escript; if [ ! -h escriptcpp.so ]; then ln -s ../../lib/libescriptcpp.so escriptcpp.so; fi)
168            #(cd esys/finley; if [ ! -h finleycpp.so ]; then ln -s ../../lib/libfinleycpp.so finleycpp.so; fi)
169            #(cd esys/bruce; if [ ! -h brucecpp.so ]; then ln -s ../../lib/libbrucecpp.so brucecpp.so; fi)
170            exit 0
171  fi  fi
   
 (cd esys; if [ ! -e escriptcpp.so ]; then ln -s ../lib/libescriptcpp.so escriptcpp.so; fi)  
 (cd esys; if [ ! -e finleycpp.so ]; then ln -s ../lib/libfinleycpp.so finleycpp.so; fi)  

Legend:
Removed from v.121  
changed lines
  Added in v.338

  ViewVC Help
Powered by ViewVC 1.1.26