Salome HOME
Improve INSTALL wizard: move all patch files to the separate directory
[tools/install.git] / config_files / netgen-4.5.sh
index 54ca7a394482931ac6406abb9650e29e66cc397f..f65771119a8c406246966f3fb8f0539a883477a3 100755 (executable)
@@ -50,30 +50,45 @@ makedir ${PRODUCT_DIR}
 
 check_jb tar xfz ${SOURCE_DIR}/netgen-4.5.tar.gz -C ${INSTALL_WORK}
 
-if test `uname -m` = "x86_64" ; then
-cp netgen-4.5.patch ${INSTALL_WORK}
-cd ${INSTALL_WORK}
-patch -p 0 -i netgen-4.5.patch
+# apply general patch for SALOME
+if [ -f patches/netgen-4.5-for-SALOME.patch ] ; then
+    cp patches/netgen-4.5-for-SALOME.patch ${PRODUCT_WORK}
+    ( cd ${PRODUCT_WORK}; patch -p1 < netgen-4.5-for-SALOME.patch )
 fi
 
-export MACHINE=LINUX
+# apply patch for 64-bit platforms
+if test `uname -m` = "x86_64" ; then
+    if [ -f patches/netgen-4.5-lib64.patch ] ; then
+       cp patches/netgen-4.5-lib64.patch ${PRODUCT_WORK}
+       ( cd ${PRODUCT_WORK}; patch -p1 < netgen-4.5-lib64.patch )
+    fi
+fi
 
-# apply general patch for SALOME
+# additional patching for SALOME
 (cd ${PRODUCT_WORK}; cp ngtcltk/ngnewdelete.* libsrc/interface)
 
 # apply patch: to make compilable on latest versions of gcc
 (cd ${PRODUCT_WORK}/libsrc/meshing; echo -e '16s/^$/class Mesh;\nwq' | ed - meshtype.hpp > /dev/null)
 
 # apply patch: to make compilable with CASCADE-6.1.1
-(cd ${PRODUCT_WORK}/libsrc; sed -e 's%\(.*\)-DHAVE_LIMITS%\1-DHAVE_LIMITS_H%g' makefile.inc > makefile.inc.new; mv makefile.inc.new makefile.inc)
+(cd ${PRODUCT_WORK}/libsrc; sed -e "s%\(.*\)-DHAVE_LIMITS\'%\1-DHAVE_LIMITS_H%g" makefile.inc > makefile.inc.new; mv makefile.inc.new makefile.inc)
+
+# set platform type variable
+if test `uname -m` = "x86_64" ; then
+    export MACHINE=LINUX64
+else
+    export MACHINE=LINUX
+fi
 
+# compile
 for directory in csg general geom2d gprim interface linalg occ meshing opti stlgeom ; do
     cd ${PRODUCT_WORK}/libsrc/${directory}
     check_job ${PRODUCT_DIR}/MAKE.LOG make
 done
 
-mkdir -p ${PRODUCT_DIR}/lib/LINUX
-cp -f ${PRODUCT_WORK}/lib/LINUX/* ${PRODUCT_DIR}/lib/LINUX
+# install
+mkdir -p ${PRODUCT_DIR}/lib
+cp -f ${PRODUCT_WORK}/lib/${MACHINE}/* ${PRODUCT_DIR}/lib
 mkdir -p ${PRODUCT_DIR}/include
 cp -f ${PRODUCT_WORK}/libsrc/interface/nglib.h ${PRODUCT_DIR}/include
 for directory in csg general geom2d gprim linalg occ meshing opti stlgeom ; do