Salome HOME
bos #41564 [CEA] openturns 1.22
authorNabil Ghodbane <nabil.ghodbane@cea.fr>
Tue, 2 Apr 2024 08:36:21 +0000 (10:36 +0200)
committerNabil Ghodbane <nabil.ghodbane@cea.fr>
Tue, 23 Apr 2024 11:01:26 +0000 (13:01 +0200)
22 files changed:
applications/SALOME-master-MPI.pyconf
applications/SALOME-master-int32.pyconf
applications/SALOME-master-native.pyconf
applications/SALOME-master-windows.pyconf
applications/SALOME-master.pyconf
products/PERSALYS.pyconf
products/compil_scripts/PERSALYS-f386013d.bat [new file with mode: 0644]
products/compil_scripts/PERSALYS-f386013d.sh [new file with mode: 0755]
products/compil_scripts/TTK.sh
products/compil_scripts/openturns-1.22.bat [new file with mode: 0644]
products/compil_scripts/openturns-1.22.sh [new file with mode: 0755]
products/dill.pyconf
products/env_scripts/nlopt.py
products/gdal.pyconf
products/nlopt.pyconf
products/openturns.pyconf
products/patches/PERSALYS-f386013d-001.patch [new file with mode: 0644]
products/patches/PERSALYS-f386013d-002.patch [new file with mode: 0644]
products/patches/PERSALYS-f386013d-003.patch [new file with mode: 0644]
products/patches/PERSALYS-f386013d-004.patch [new file with mode: 0644]
products/patches/openturns-1.22.0001.patch [new file with mode: 0644]
products/salome_system.pyconf

index dd7a1bedfe084c8dc054220ac7a19b84f999cc4b..689109a6846a9c154abeff099d301183b5a009ae 100644 (file)
@@ -93,7 +93,7 @@ APPLICATION :
         omniORBpy : '4.2.5'
         opencv : '3.2.0'
         openmpi : '3.1.6' # current version of hdf5 is not compatible with openmpi 4, if compiled with MPI support
-        openturns:  {tag : '1.21', section: 'version_1_21_CO7', hpc : 'yes'}
+        openturns:  {tag : '1.22', section: 'version_1_22', hpc : 'yes'}
         openVKL: '0.11.0'
         ospray : '2.4.0'
         packaging : '17.1'
@@ -101,7 +101,7 @@ APPLICATION :
         pandas : '0.25.2'
         patsy : '0.5.2'
         ParaView : {tag:'5.11.0', base: 'no',  section: 'version_5_11_0_MPI', hpc: 'yes'}
-        PERSALYS: 'v14.1'
+        PERSALYS: 'f386013d'
         petsc : {tag : '3.16.0', base: 'no', section: 'version_3_16_0', hpc: 'yes'}
         Pillow : '8.4.0'
         planegcs : '0.18-3cb6890'
index 4854f80fef4220c963df1a6e6cb374b9176cf28a..e1d19f9127e08973a70453b193b26566405d5af0 100644 (file)
@@ -92,7 +92,7 @@ APPLICATION :
         omniORBpy : '4.2.5'
         opencv : '3.2.0'
         openmpi : '4.0.3'
-        openturns: '1.21'
+        openturns: '1.22'
         openVKL: '0.11.0'
         ospray : '2.4.0'
         packaging : '17.1'
@@ -100,7 +100,7 @@ APPLICATION :
         pandas : '0.25.2'
         patsy : '0.5.2'
         ParaView : {tag:'5.11.0', base: 'no',  section: 'version_5_11_0_MPI', hpc: 'yes'}
-        PERSALYS: 'v14.1'
+        PERSALYS: 'f386013d'
         petsc : {tag : '3.16.0', base: 'no', section: 'version_3_16_0', hpc: 'yes'}
         Pillow : '8.4.0'
         planegcs : '0.18-3cb6890'
@@ -222,18 +222,12 @@ __overwrite__ :
     {
         __condition__ : "VARS.dist in ['CO7']"
         'APPLICATION.rm_products'         : ['gcc', 'gmp', 'mpc', 'mpfr']
-        'APPLICATION.products.openturns'  : {tag: '1.21',  base: 'no', section: 'version_1_21_CO7' }
     }
     {
         __condition__ : "VARS.dist in ['CO8']"
         'APPLICATION.rm_products'  : ['gcc', 'gmp', 'mpc', 'mpfr', 'zeromq']
         'APPLICATION.products.gdal'     : {tag:'2.4.0',   base: 'no', section: 'version_2_4_0_CO8'                 } # spns #29324
         'APPLICATION.products.ParaView' : {tag: '5.11.0', base: 'no', section: 'version_5_11_0_MPI_CO8', hpc: 'yes'}
-        'APPLICATION.products.openturns': {tag: '1.21',   base: 'no', section: 'version_1_21_CO8'                  }
-    }
-    {
-        __condition__ : "VARS.dist in ['DB09']"
-        'APPLICATION.products.openturns'        : {tag: '1.21',  base: 'no', section: 'version_1_21_DB09' }
     }
     {
         __condition__ : "VARS.dist in ['DB10']"
index e22957385b18a57fbd1e4b3bb17c778743668290..ef5deb0db7ee2f32952680a493c676a1dcb8f4f9 100644 (file)
@@ -83,7 +83,7 @@ APPLICATION :
         # comment out line above and uncomment the line below to use Netgen 6.
         #netgen : '6.2.2101'
         netcdf : 'native'
-        nlopt : '2.4.2'
+        nlopt : 'native'
         nose: 'native'
         numpy : 'native'
         numpydoc : 'native'
@@ -92,13 +92,13 @@ APPLICATION :
         opencv : 'native'
         openmpi: 'native'
         openVKL : '0.11.0'
-        openturns: '1.21'
+        openturns: '1.22'
         ospray : '2.4.0'
         packaging : 'native'
         packagespy : '74152cd'
         pandas : 'native'
         ParaView : {tag:'5.11.0', base: 'no',  section: 'version_5_11_0_MPI', hpc: 'yes'}
-        PERSALYS: 'v14.1'
+        PERSALYS : 'f386013d'
         petsc : {tag : '3.16.0', section: 'version_3_16_0'}
         Pillow : 'native'
         planegcs : '0.18-3cb6890'
@@ -221,7 +221,6 @@ __overwrite__ :
         'APPLICATION.rm_products' : ['TTK'] # causes crashes
         'APPLICATION.products.cmake'       : 'native' # TTK requires cmake > 3.21
         'APPLICATION.products.opencv'      : '3.2.0'
-        'APPLICATION.products.nlopt'       : '2.5.0'
         'APPLICATION.products.cminpack'    : 'native'
         'APPLICATION.products.netcdf'      : '4.6.2'
         'APPLICATION.products.omniORB'     : '4.2.5'
@@ -267,8 +266,6 @@ __overwrite__ :
         'APPLICATION.products.swig'             : '4.0.2'
         'APPLICATION.products.tbb'              : '2021.9.0'
         'APPLICATION.products.PyFMI'            : {tag: '2.6',       base: 'no', section: 'version_2_6_DB12'          }
-        'APPLICATION.products.nlopt'            : '2.5.0'
-        'APPLICATION.products.openturns'        : {tag: '1.21',  base: 'no', section: 'version_1_21_DB12'        }
         'APPLICATION.products.ParaView'         : {tag: '5.11.0',    base: 'no', section: 'version_5_11_0_MPI_DB12', hpc: 'yes' }
     }
     {
@@ -277,14 +274,16 @@ __overwrite__ :
         __condition__ : "VARS.dist in ['CO8']"
         'APPLICATION.products.sphinxintl'       : {tag: '0.9.10', base: 'no', section: 'version_0_9_10_no_pip'  }
         'APPLICATION.products.cminpack'         : '1.3.6'
+        'APPLICATION.products.nlopt'            : '2.4.2'
+        'APPLICATION.products.openturns'        : {tag: '1.22',   base: 'no', section: 'version_1_22_CO8'       }
         'APPLICATION.products.PyFMI'            : {tag: '2.6',    base: 'no', section: 'version_2_6_no_pip'     }
         'APPLICATION.products.statsmodels'      : {tag: '0.6.1',  base: 'no', section: 'version_0_6_1_no_pip'   }
-        'APPLICATION.products.gdal'             : {tag:'2.4.0',   base: 'no', section: 'version_2_4_0_CO8'      } # spns #29324
+        'APPLICATION.products.gdal'             : {tag:'2.4.0',   base: 'no', section: 'version_2_4_0_CO8_native'} # spns #29324
         'APPLICATION.products.swig'             : '4.0.2'
-        'APPLICATION.products.openturns'        : {tag: '1.21',  base: 'no', section: 'version_1_21_RO8'        }
     }
     {
          __condition__ : "VARS.dist in ['CO9']"
+        'APPLICATION.products.nlopt'             : '2.4.2'
          'APPLICATION.products.cminpack'         : '1.3.6'
          'APPLICATION.products.qwt'              : '6.1.2'
          'APPLICATION.products.PyQt'             : '5.15.3'
@@ -328,7 +327,6 @@ __overwrite__ :
         'APPLICATION.products.omniORB'          : '4.2.5'
         'APPLICATION.products.omniORBpy'        : '4.2.5'
         'APPLICATION.products.qwt'              : '6.1.6'
-        'APPLICATION.products.nlopt'            : '2.6.0'
         'APPLICATION.products.netcdf'           : '4.6.2'
         'APPLICATION.products.numpy'            : {tag: '1.22.2',    base: 'no', section: 'version_1_22_2'                      }
         'APPLICATION.products.PyFMI'            : {tag: '2.6',       base: 'no', section: 'version_2_6_no_pip'                  }
@@ -344,7 +342,6 @@ __overwrite__ :
         'APPLICATION.products.omniORB'          : '4.2.5'
         'APPLICATION.products.omniORBpy'        : '4.2.5'
         'APPLICATION.products.qwt'              : '6.1.6'
-        'APPLICATION.products.nlopt'            : '2.6.0'
         'APPLICATION.products.netcdf'           : '4.6.2'
         'APPLICATION.products.numpy'            : {tag: '1.22.2',    base: 'no', section: 'version_1_22_2'                      }
         'APPLICATION.products.PyFMI'            : {tag: '2.6',       base: 'no', section: 'version_2_6_FD37'                    }
@@ -360,7 +357,6 @@ __overwrite__ :
         'APPLICATION.products.omniORB'          : '4.2.5'
         'APPLICATION.products.omniORBpy'        : '4.2.5'
         'APPLICATION.products.qwt'              : '6.1.6'
-        'APPLICATION.products.nlopt'            : '2.6.0'
         'APPLICATION.products.netcdf'           : '4.6.2'
         'APPLICATION.products.swig'             : '4.0.2'
         'APPLICATION.products.petsc'            : {tag: '3.16.0',    base: 'no', section: 'version_3_16_0_FD38'                 }
index 03510770ea92a03965593415916ae439824b488b..7edc71f80eb144f4e58283f27526105dd1025c07 100644 (file)
@@ -95,13 +95,13 @@ APPLICATION :
         openblas : '0.3.23'
         opencv : '3.2.0'
         openVKL: '0.11.0'
-        openturns: '1.21'
+        openturns: '1.22'
         ospray : '2.4.0'
         packaging : '19.0'
         pandas : '1.5.3'
         patsy : '0.5.2'
         ParaView : {tag:'5.11.0', base: 'no',  section: 'version_5_11_0'}
-        PERSALYS: 'v14.1'
+        PERSALYS: 'f386013d'
         perl : '5.28.1.1'
         Pillow : '10.2.0'
         planegcs : '0.18-3cb6890'
index ae57723fc33e0387b5ad2dfcf8b6e5d608889cfc..c84c7c9c568d4c1e8c3f8fc4121b8362fe8e8d95 100644 (file)
@@ -99,7 +99,7 @@ APPLICATION :
         omniORBpy : '4.2.5'
         opencv : '3.2.0'
         openmpi : '4.0.3'
-        openturns: '1.21'
+        openturns: '1.22'
         openVKL: '0.11.0'
         ospray : '2.4.0'
         packaging : '23.2'
@@ -107,7 +107,7 @@ APPLICATION :
         pandas : '1.1.5'
         patsy : '0.5.4'
         ParaView : {tag:'5.11.0', base: 'no',  section: 'version_5_11_0_MPI', hpc: 'yes'}
-        PERSALYS: 'v14.1'
+        PERSALYS: 'f386013d'
         petsc : {tag : '3.16.0', base: 'no', section: 'version_3_16_0', hpc: 'yes'}
         Pillow : '8.4.0'
         planegcs : '0.18-3cb6890'
@@ -274,7 +274,7 @@ __overwrite__ :
         'APPLICATION.products.statsmodels' : '0.8.0'
         'APPLICATION.products.sphinxcontrib_websupport' : '1.1.0'
         'APPLICATION.products.Sphinx' : '1.7.6'
-        'APPLICATION.products.openturns' : {tag: '1.21',  base: 'no', section: 'version_1_21_CO7' }
+        'APPLICATION.products.openturns' : {tag: '1.22',  base: 'no', section: 'version_1_22_CO7' }
     }
 
     {
@@ -292,7 +292,10 @@ __overwrite__ :
             'sphinxcontrib_jquery',
             'sphinxcontrib_qthelp',
             'sphinxcontrib_htmlhelp',
-            'sphinxcontrib_serializinghtml'
+            'sphinxcontrib_serializinghtml',
+            'tabulate',
+            'tomli',
+            'zipp'
         ]
         'APPLICATION.products.Babel' : '2.7.0'
         'APPLICATION.products.Cython': '0.29.12'
@@ -325,7 +328,7 @@ __overwrite__ :
         'APPLICATION.products.statsmodels' : '0.8.0'
         'APPLICATION.products.gdal'     : {tag:'2.4.0',   base: 'no', section: 'version_2_4_0_CO8'                 } # spns #29324
         'APPLICATION.products.ParaView' : {tag: '5.11.0', base: 'no', section: 'version_5_11_0_MPI_CO8', hpc: 'yes'}
-        'APPLICATION.products.openturns'  : {tag: '1.21',  base: 'no', section: 'version_1_21_CO8' }
+        'APPLICATION.products.openturns'  : {tag: '1.22',  base: 'no', section: 'version_1_22_CO8' }
     }
 
     {
@@ -342,7 +345,10 @@ __overwrite__ :
             'sphinxcontrib_jquery',
             'sphinxcontrib_qthelp',
             'sphinxcontrib_htmlhelp',
-            'sphinxcontrib_serializinghtml'
+            'sphinxcontrib_serializinghtml',
+            'tabulate',
+            'tomli',
+            'zipp'
         ]
         'APPLICATION.products.Babel' : '2.7.0'
         'APPLICATION.products.Cython': '0.29.12'
@@ -373,8 +379,7 @@ __overwrite__ :
         'APPLICATION.products.sphinx_rtd_theme' : '0.4.3'
         'APPLICATION.products.sphinxintl' : '0.9.10'
         'APPLICATION.products.statsmodels' : '0.8.0'
-        'APPLICATION.products.openturns'        : {tag: '1.21',  base: 'no', section: 'version_1_21_DB09' }
-        'APPLICATION.products.MEDCOUPLING'      : {tag:'master', base: 'no', section: 'default_MPI', hpc: 'yes'}
+        'APPLICATION.products.openturns'        : {tag: '1.22',  base: 'no', section: 'version_1_22_DB09' }
     }
     {
         __condition__ : "VARS.dist in ['FD30']"
@@ -388,16 +393,16 @@ __overwrite__ :
         'APPLICATION.products.gdal': {tag:'2.4.0',   base: 'no', section: 'version_2_4_0_FD32'} # spns #29324
     }
     {
-        __condition__ : "VARS.dist in ['CO7'] and APPLICATION.pyver != '3.6'"
+        __condition__ : "VARS.dist in ['CO7'] and APPLICATION.pyver == '3.9'"
         'APPLICATION.rm_products'         : ['gcc', 'gmp', 'mpc', 'mpfr']
-        'APPLICATION.products.openturns'  : {tag: '1.21',  base: 'no', section: 'version_1_21_CO7' }
+        'APPLICATION.products.openturns'           : {tag:'1.22', base:'no', section:'version_1_22_CO7'}
     }
     {
-        __condition__ : "VARS.dist in ['CO8'] and APPLICATION.pyver != '3.6'"
+        __condition__ : "VARS.dist in ['CO8'] and APPLICATION.pyver == '3.9'"
         'APPLICATION.rm_products'  : ['gcc', 'gmp', 'mpc', 'mpfr', 'zeromq']
         'APPLICATION.products.gdal'     : {tag:'2.4.0',   base: 'no', section: 'version_2_4_0_CO8'                 } # spns #29324
+        'APPLICATION.products.openturns'           : {tag:'1.22', base:'no', section:'version_1_22_CO8'}
         'APPLICATION.products.ParaView' : {tag: '5.11.0', base: 'no', section: 'version_5_11_0_MPI_CO8', hpc: 'yes'}
-        'APPLICATION.products.openturns'  : {tag: '1.21',  base: 'no', section: 'version_1_21_CO8' }
     }
     {
         __condition__ : "VARS.dist in ['DB10']"
@@ -405,9 +410,8 @@ __overwrite__ :
         'APPLICATION.products.gdal': {tag:'2.4.0',   base: 'no', section: 'version_2_4_0_DB10'} # spns #29324
     }
     {
-        __condition__ : "VARS.dist in ['DB09'] and APPLICATION.pyver != '3.6'"
-        'APPLICATION.products.openturns'        : {tag: '1.21',  base: 'no', section: 'version_1_21_DB09' }
-        'APPLICATION.products.MEDCOUPLING'      : {tag:'master', base: 'no', section: 'default_MPI', hpc: 'yes'}
+        __condition__ : "VARS.dist in ['DB09']"
+        'APPLICATION.products.openturns'        : {tag:'1.22', base:'no', section:'version_1_22_DB09'}
     }
     {
         __condition__ : "VARS.dist in ['UB18.04']"
index 6710d35ff453a0ed12c321b5923c1504c6fea58a..24f82e9e336407e56c573cdaa592fc398baa252f 100644 (file)
@@ -58,6 +58,45 @@ default_win :
       incremental : "yes"
     }
 }
+version_f386013d :
+{
+}
+
+version_f386013d_win :
+{
+   compil_script : 'PERSALYS-f386013d.bat'
+   depend : ['Python',
+              'hdf5',
+              'cgns',
+              'tbb',
+              'nlopt',
+              'libxml2',
+              'eigen',
+              'boost',
+              'ADAO',
+              'KERNEL',
+              'GUI',
+              'Sphinx',
+              'qwt',
+              'qt',
+              'ParaView',
+              'openturns',
+              'FMILibrary',
+              'PyFMI',
+              'YACS',
+              'YDEFX',
+              'PY2CPP',
+              'CAS',
+              'CONFIGURATION',
+              'openblas',
+              'pthreads'
+           ]
+    patches : ['PERSALYS-f386013d-001.patch',
+               'PERSALYS-f386013d-002.patch',
+               'PERSALYS-f386013d-003.patch',
+               'PERSALYS-f386013d-004.patch'
+              ]
+}
 
 version_v14_1 :
 {
diff --git a/products/compil_scripts/PERSALYS-f386013d.bat b/products/compil_scripts/PERSALYS-f386013d.bat
new file mode 100644 (file)
index 0000000..cd4f0aa
--- /dev/null
@@ -0,0 +1,158 @@
+@echo off
+
+echo ##########################################################################
+echo openturns %VERSION%
+echo ##########################################################################
+
+IF NOT DEFINED SAT_DEBUG (
+  SET SAT_DEBUG=0
+)
+
+SET PRODUCT_BUILD_TYPE=Release
+if %SAT_DEBUG% == 1 (
+  set PRODUCT_BUILD_TYPE=Debug
+)
+
+IF NOT DEFINED CMAKE_GENERATOR (
+  SET CMAKE_GENERATOR="Visual Studio 15 2017 Win64"
+)
+
+if NOT exist "%PRODUCT_INSTALL%" mkdir %PRODUCT_INSTALL%
+
+REM clean BUILD directory
+if exist "%BUILD_DIR%" rmdir /Q /S %BUILD_DIR%
+mkdir %BUILD_DIR%
+
+SET CMAKE_OPTIONS=
+SET CMAKE_OPTIONS=%CMAKE_OPTIONS% -DCMAKE_INSTALL_PREFIX:STRING=%PRODUCT_INSTALL:\=/%
+SET CMAKE_OPTIONS=%CMAKE_OPTIONS% -DCMAKE_BUILD_TYPE:STRING=%PRODUCT_BUILD_TYPE%
+SET CMAKE_OPTIONS=%CMAKE_OPTIONS% -DCMAKE_INSTALL_LIBDIR:STRING=lib
+SET CMAKE_OPTIONS=%CMAKE_OPTIONS% -DPYTHON_EXECUTABLE=%PYTHONBIN%
+SET CMAKE_OPTIONS=%CMAKE_OPTIONS% -DSWIG_EXECUTABLE=%SWIG_ROOT_DIR:\=/%/bin/swig.exe
+SET CMAKE_OPTIONS=%CMAKE_OPTIONS% -DTBB_ROOT_DIR=%TBB_ROOT_DIR%
+SET CMAKE_OPTIONS=%CMAKE_OPTIONS% -Dtbb_DIR:PATH=%TBB_ROOT_DIR:\=/%
+SET CMAKE_OPTIONS=%CMAKE_OPTIONS% -DUSE_TBB=OFF
+REM libxml2 settings
+set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DVTK_MODULE_USE_EXTERNAL_VTK_libxml2:BOOL=ON
+set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DLIBXML2_INCLUDE_DIR:STRING=%LIBXML2_ROOT_DIR:\=/%/include
+set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DLIBXML2_LIBRARIES:STRING=%LIBXML2_ROOT_DIR:\=/%/lib/libxml2.lib
+set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DLIBXML2_LIBRARY:STRING=%LIBXML2_ROOT_DIR:\=/%/lib/libxml2.lib
+set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DLIBXML2_XMLLINT_EXECUTABLE=%LIBXML2_ROOT_DIR:\=/%/bin/xmllint.exe
+
+
+set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DPTHREAD_ROOT_DIR=%PTHREAD_ROOT_DIR:\=/%
+set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DPTHREAD_INCLUDE_DIR=%PTHREAD_ROOT_DIR:\=/%/include
+set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DPTHREAD_DLL_LIBRARY=%PTHREAD_ROOT_DIR:\=/%/lib/pthreadVC2.dll
+set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DPTHREAD_LIBRARY=%PTHREAD_ROOT_DIR:\=/%/lib/pthreadVCE2.lib
+
+REM HDF5 settings
+set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DVTK_MODULE_USE_EXTERNAL_VTK_hdf5:BOOL=ON
+set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DHDF5_DIR:PATH=%HDF5_ROOT_DIR:\=/%/cmake/hdf5
+set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DHDF5_INCLUDE_DIRS:PATH=%HDF5_ROOT_DIR:\=/%/include
+set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DHDF5_USE_STATIC_LIBRARIES:BOOL=OFF
+
+set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DNLOPT_INCLUDE_DIRS:STRING=%NLOPT_ROOT_DIR:\=/%/include
+set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DNLOPT_LIBRARIES:STRING=%NLOPT_ROOT_DIR:\=/%/bin
+set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DNLOPT_DIR:STRING=%NLOPT_ROOT_DIR:\=/%
+
+set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DCBLAS_DIR=%OPENBLAS_ROOT_DIR:\=/%/share/cmake/OpenBLAS
+
+set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DPython3_EXECUTABLE:FILEPATH=%PYTHON_ROOT_DIR:\=/%/python3.exe
+set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DPython3_INCLUDE_DIR:PATH=%PYTHON_ROOT_DIR:\=/%/include
+
+set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DLAPACK_LIBRARIES:FILEPATH=%OPENBLAS_ROOT_DIR:\=/%/lib/openblas.lib  
+set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DCMAKE_SHARED_LINKER_FLAGS_RELEASE="/OPT:NOREF /INCREMENTAL:NO" 
+set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DCMAKE_UNITY_BUILD=ON
+set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DCMAKE_UNITY_BUILD_BATCH_SIZE=16 
+set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DSWIG_COMPILE_FLAGS="/bigobj"
+set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DUSE_SPHINX=OFF
+SET CMAKE_OPTIONS=%CMAKE_OPTIONS% -DQWT_INCLUDE_DIR=%QWT_ROOT_DIR:\=/%/include
+SET CMAKE_OPTIONS=%CMAKE_OPTIONS% -DBUILD_SHARED_LIBS:BOOL=ON
+SET CMAKE_OPTIONS=%CMAKE_OPTIONS% -DADAO_ROOT_DIR=%ADAO_ROOT_DIR:\=/%
+
+REM Boost settings
+set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DBOOST_ROOT:PATH=%BOOST_ROOT_DIR:\=/%
+set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DBoost_ADDITIONAL_VERSIONS="1.67.0 1.67"
+set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DBOOST_INCLUDEDIR=%BOOST_ROOT_DIR:\=/%/include/boost-1_67
+set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DBoost_INCLUDE_DIR=%BOOST_ROOT_DIR:\=/%/include/boost-1_67
+set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DBoost_NO_BOOST_CMAKE:BOOL=ON
+set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DBoost_NO_SYSTEM_PATHS:BOOL=ON
+
+SET CMAKE_OPTIONS=%CMAKE_OPTIONS% -DGUI_ROOT_DIR=%GUI_ROOT_DIR:\=/%
+SET CMAKE_OPTIONS=%CMAKE_OPTIONS% -DSalomeGUI_DIR=%GUI_ROOT_DIR:\=/%/adm_local/cmake_files
+SET CMAKE_OPTIONS=%CMAKE_OPTIONS% -DKERNEL_ROOT_DIR=%KERNEL_ROOT_DIR:\=/%
+SET CMAKE_OPTIONS=%CMAKE_OPTIONS% -DSalomeKERNEL_DIR=%KERNEL_ROOT_DIR:\=/%/salome_adm/cmake_files
+SET CMAKE_OPTIONS=%CMAKE_OPTIONS% -DOpenTURNS_DIR=%OT_ROOT_DIR:\=/%/lib/cmake/openturns
+SET CMAKE_OPTIONS=%CMAKE_OPTIONS% -Dotmorris_DIR==%OT_ROOT_DIR:\=/%/lib/cmake/otmorris
+SET CMAKE_OPTIONS=%CMAKE_OPTIONS% -DPy2cpp_DIR=%PY2CPP_ROOT_DIR:\=/%/lib/cmake/py2cpp
+
+SET CMAKE_OPTIONS=%CMAKE_OPTIONS% -DQWT_INCLUDE_DIR=%QWT_ROOT_DIR:\=/%/include
+SET CMAKE_OPTIONS=%CMAKE_OPTIONS% -DQWT_LIBRARY=%QWT_ROOT_DIR:\=/%/lib/qwt.lib
+
+SET CMAKE_OPTIONS=%CMAKE_OPTIONS% -DUSE_SPHINX=OFF
+SET CMAKE_OPTIONS=%CMAKE_OPTIONS% -DSPHINX_ROOT_DIR=%SPHINX_ROOT_DIR:\=/%
+SET CMAKE_OPTIONS=%CMAKE_OPTIONS% -DYACS_ROOT_DIR=%YACS_ROOT_DIR:\=/%
+SET CMAKE_OPTIONS=%CMAKE_OPTIONS% -DSalomeYACS_DIR=%YACS_ROOT_DIR:\=/%/adm/cmake
+SET CMAKE_OPTIONS=%CMAKE_OPTIONS% -Dydefx_DIR=%YDEFX_ROOT_DIR:\=/%/salome_adm/cmake_files
+SET CMAKE_OPTIONS=%CMAKE_OPTIONS% -DAdaoCppLayer_INCLUDE_DIR=%ADAO_INTERFACE_ROOT_DIR:\=/%/include
+SET CMAKE_OPTIONS=%CMAKE_OPTIONS% -DAdaoCppLayer_ROOT_DIR=%ADAO_INTERFACE_ROOT_DIR:\=/%
+SET CMAKE_OPTIONS=%CMAKE_OPTIONS% -DUSE_SALOME=ON
+SET CMAKE_OPTIONS=%CMAKE_OPTIONS% -DTBB_ROOT=%TBB_ROOT_DIR:\=/%
+SET CMAKE_OPTIONS=%CMAKE_OPTIONS% -DTBB_INCLUDE_DIR=%TBB_ROOT_DIR:\=/%/include
+SET CMAKE_OPTIONS=%CMAKE_OPTIONS% -DPYTHON_EXECUTABLE=%PYTHONBIN:\=/%
+SET CMAKE_OPTIONS=%CMAKE_OPTIONS% -DPYTHON_INCLUDE_DIR=%PYTHON_INCLUDE:\=/%
+SET CMAKE_OPTIONS=%CMAKE_OPTIONS% -DCMAKE_FIND_ROOT_PATH=ON
+
+set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DCGNS_INCLUDE_DIR:PATH=%CGNS_ROOT_DIR:\=/%/include
+set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DCGNS_LIBRARY:STRING=%CGNS_ROOT_DIR:\=/%/lib/cgnsdll.lib
+SET CMAKE_OPTIONS=%CMAKE_OPTIONS% -DCGNS_INCLUDE_DIR:PATH=%CGNS_ROOT_DIR:\=/%/include
+
+
+if NOT exist "%PRODUCT_INSTALL%" mkdir %PRODUCT_INSTALL%
+REM clean BUILD directory
+if exist "%BUILD_DIR%" rmdir /Q /S %BUILD_DIR%
+mkdir %BUILD_DIR%
+
+cd %BUILD_DIR%
+
+set MSBUILDDISABLENODEREUSE=1
+
+echo.
+echo *********************************************************************
+echo *** %CMAKE_ROOT%\bin\cmake %CMAKE_OPTIONS% %SOURCE_DIR%
+echo *********************************************************************
+echo.
+
+%CMAKE_ROOT%\bin\cmake -G %CMAKE_GENERATOR% %CMAKE_OPTIONS% %SOURCE_DIR%
+if NOT %ERRORLEVEL% == 0 (
+    echo "ERROR on cmake"
+    exit 1
+)
+
+echo.
+echo *********************************************************************
+echo *** msbuild %MAKE_OPTIONS% /p:Configuration=%PRODUCT_BUILD_TYPE% /p:Platform=x64 /p:CharacterSet=Unicode ALL_BUILD.vcxproj
+
+echo *********************************************************************
+echo.
+
+msbuild %MAKE_OPTIONS% /p:Configuration=%PRODUCT_BUILD_TYPE% /p:Platform=x64 /p:CharacterSet=Unicode ALL_BUILD.vcxproj
+if NOT %ERRORLEVEL% == 0 (
+    echo ERROR on msbuild ALL_BUILD.vcxproj, please check!
+    REM exit 2
+)
+
+echo.
+echo *********************************************************************
+echo *** installation...
+echo *********************************************************************
+echo.
+
+msbuild %MAKE_OPTIONS% /p:Configuration=%PRODUCT_BUILD_TYPE% /p:Platform=x64 /p:CharacterSet=Unicode INSTALL.vcxproj
+if NOT %ERRORLEVEL% == 0 (
+    echo ERROR on msbuild INSTALL.vcxproj
+    exit 3
+)
+
+echo
+echo "########## END"
diff --git a/products/compil_scripts/PERSALYS-f386013d.sh b/products/compil_scripts/PERSALYS-f386013d.sh
new file mode 100755 (executable)
index 0000000..a64aa95
--- /dev/null
@@ -0,0 +1,139 @@
+#!/bin/bash
+
+echo "##########################################################################"
+echo "PERSALYS" $VERSION
+echo "##########################################################################"
+
+if [ -n "$SAT_HPC" ]  && [ -n "$MPI_ROOT_DIR" ]; then
+    echo "WARNING: setting CC and CXX environment variables and target MPI wrapper"
+    CMAKE_OPTIONS+=" -DCMAKE_CXX_COMPILER:STRING=${MPI_CXX_COMPILER}"
+    CMAKE_OPTIONS+=" -DCMAKE_C_COMPILER:STRING=${MPI_C_COMPILER}"
+    CMAKE_OPTIONS+=" -DMPI_C_FOUND=$MPI_C_FOUND"
+fi
+
+CMAKE_OPTIONS=""
+CMAKE_OPTIONS+=" -DCMAKE_INSTALL_PREFIX:STRING=$PRODUCT_INSTALL"
+CMAKE_OPTIONS+=" -DCMAKE_INSTALL_LIBDIR:STRING=lib"
+CMAKE_OPTIONS+=" -DADAO_ROOT_DIR=$ADAO_ROOT_DIR"
+CMAKE_OPTIONS+=" -DBOOST_ROOT:PATH=$BOOST_ROOT_DIR"
+CMAKE_OPTIONS+=" -DGUI_ROOT_DIR=$GUI_ROOT_DIR"
+CMAKE_OPTIONS+=" -DSalomeGUI_DIR=$GUI_ROOT_DIR/adm_local/cmake_files"
+CMAKE_OPTIONS+=" -DKERNEL_ROOT_DIR=$KERNEL_ROOT_DIR"
+CMAKE_OPTIONS+=" -DSalomeKERNEL_DIR=$KERNEL_ROOT_DIR/salome_adm/cmake_files"
+CMAKE_OPTIONS+=" -DOpenTURNS_DIR=$OT_ROOT_DIR/lib/cmake/openturns"
+CMAKE_OPTIONS+=" -DPy2cpp_DIR=$PY2CPP_ROOT_DIR//lib/cmake/py2cpp"
+
+# strangely some distributions fail to guess qwt installation location
+#  - CentOS 8
+#  - Ubuntu 20.04
+if [[ $DIST_NAME == "CO" && $DIST_VERSION == "8" && "$SAT_qwt_IS_NATIVE" == "1" ]]; then
+    CMAKE_OPTIONS+=" -DQWT_LIBRARY=/usr/lib64/libqwt-qt5.so"
+    CMAKE_OPTIONS+=" -DQWT_INCLUDE_DIR=/usr/include/qt5/qwt"
+elif [[ $DIST_NAME == "UB" && $DIST_VERSION == "20.04" && "$SAT_qwt_IS_NATIVE" == "1" ]]; then
+    CMAKE_OPTIONS+=" -DQWT_LIBRARY=/usr/lib/libqwt-qt5.so"
+    CMAKE_OPTIONS+=" -DQWT_INCLUDE_DIR=/usr/include/qwt"
+elif [ "$SAT_qwt_IS_NATIVE" != "1" ]; then
+    CMAKE_OPTIONS+=" -DQWT_LIBRARY=$QWT_ROOT_DIR/lib/libqwt.so"
+    CMAKE_OPTIONS+=" -DQWT_INCLUDE_DIR=$QWT_ROOT_DIR/include"
+fi
+
+if [[ "$DIST_NAME$DIST_VERSION" == "CO8" ]]; then
+    CMAKE_OPTIONS+=" -DUSE_SPHINX=OFF" # missing tex-preview LateX package for CentOS 8
+elif [[ "$DIST_NAME$DIST_VERSION" == "CO7" ]]; then
+    CMAKE_OPTIONS+=" -DUSE_SPHINX=OFF" # missing tex-preview LateX package for CentOS 7 - Ã  installer
+elif [ "$DIST_NAME$DIST_VERSION" == "FD36" ]; then
+    CMAKE_OPTIONS+=" -DUSE_SPHINX=OFF" #
+elif [ "$DIST_NAME$DIST_VERSION" == "FD37" ]; then
+    CMAKE_OPTIONS+=" -DUSE_SPHINX=OFF" #
+elif [ "$DIST_NAME$DIST_VERSION" == "FD38" ]; then
+    CMAKE_OPTIONS+=" -DUSE_SPHINX=OFF" #
+else
+    CMAKE_OPTIONS+=" -DUSE_SPHINX=ON"
+fi
+CMAKE_OPTIONS+=" -DSPHINX_ROOT_DIR=$SPHINX_ROOT_DIR"
+CMAKE_OPTIONS+=" -DYACS_ROOT_DIR=$YACS_ROOT_DIR"
+CMAKE_OPTIONS+=" -DSalomeYACS_DIR=$YACS_ROOT_DIR/adm/cmake"
+CMAKE_OPTIONS+=" -Dydefx_DIR=$YDEFX_ROOT_DIR/salome_adm/cmake_files"
+CMAKE_OPTIONS+=" -DAdaoCppLayer_INCLUDE_DIR=$ADAO_INTERFACE_ROOT_DIR/include"
+CMAKE_OPTIONS+=" -DAdaoCppLayer_ROOT_DIR=$ADAO_INTERFACE_ROOT_DIR"
+CMAKE_OPTIONS+=" -DUSE_SALOME=ON"
+if [ ! -z "$TBB_ROOT" ]; then
+    CMAKE_OPTIONS+=" -DTBB_ROOT=$TBB_ROOT_DIR"
+    CMAKE_OPTIONS+=" -DTBB_INCLUDE_DIR=$TBB_ROOT_DIR/include"
+fi
+CMAKE_OPTIONS+=" -DPYTHON_EXECUTABLE=$PYTHONBIN"
+
+CMAKE_OPTIONS+=" -DPYTHON_INCLUDE_DIR=$PYTHON_INCLUDE"
+if [ "$SAT_Python_IS_NATIVE" != "1" ]; then
+    CMAKE_OPTIONS+=" -DPYTHON_LIBRARY=$PYTHON_ROOT_DIR/lib/libpython$PYTHON_VERSION.so"
+fi
+
+if [ "$SAT_Sphinx_IS_NATIVE" != "1" ]; then
+    CMAKE_OPTIONS+=" -DSPHINX_ROOT_DIR:FILEPATH=$SPHINX_ROOT_DIR"
+    CMAKE_OPTIONS+=" -DSPHINX_EXECUTABLE:FILEPATH=$SPHINX_ROOT_DIR/bin/sphinx-build"
+fi
+
+CMAKE_OPTIONS+=" -DCMAKE_FIND_ROOT_PATH=ON"
+CMAKE_OPTIONS+=" -DSWIG_EXECUTABLE:PATH=$(which swig)"
+if [ "${SAT_cgns_IS_NATIVE}" != "1" ]
+then
+    CMAKE_OPTIONS+=" -DCGNS_INCLUDE_DIR:PATH=${CGNS_ROOT_DIR}/include"
+    CMAKE_OPTIONS+=" -DCGNS_LIBRARY:PATH=${CGNS_ROOT_DIR}/lib/libcgns.so"
+fi
+if [ -n "$SAT_DEBUG" ]; then
+    CMAKE_OPTIONS+=" -DCMAKE_BUILD_TYPE:STRING=Debug"
+else
+    CMAKE_OPTIONS+=" -DCMAKE_BUILD_TYPE:STRING=Release"
+fi
+
+echo
+echo "*** cmake" $CMAKE_OPTIONS
+cmake $CMAKE_OPTIONS $SOURCE_DIR
+if [ $? -ne 0 ]
+then
+    echo "ERROR on cmake"
+    exit 1
+fi
+
+echo
+echo "*** make" $MAKE_OPTIONS
+make $MAKE_OPTIONS
+if [ $? -ne 0 ]
+then
+    echo "ERROR on make"
+    exit 2
+fi
+
+echo
+echo "*** make install"
+make install
+if [ $? -ne 0 ]
+then
+    echo "ERROR on make install"
+    exit 3
+fi
+
+# spns #32377
+#  setting -DCMAKE_INSTALL_LIBDIR to lib is not enough on Fedora nodes
+echo
+echo "*** check installation"
+if [ ! -d "${PRODUCT_INSTALL}/lib" ]; then
+    mkdir -p ${PRODUCT_INSTALL}/lib
+fi
+
+if [ -d "${PRODUCT_INSTALL}/lib64" ]; then
+    echo "WARNING: moving lib64 to lib"
+    mv ${PRODUCT_INSTALL}/lib64/* ${PRODUCT_INSTALL}/lib/
+    rmdir ${PRODUCT_INSTALL}/lib64
+fi
+
+
+if [ -d "${PRODUCT_INSTALL}/lib/python${PYTHON_VERSION}/dist-packages" ]; then
+    echo "WARNING: linking against dist-packages"
+    cd ${PRODUCT_INSTALL}/lib/python${PYTHON_VERSION}
+    ln -sf dist-packages site-packages
+fi
+
+echo
+echo "########## END"
+
index 092f5f67153432f14894fcb6a9ccc004d3855f89..bc109d918dee4ca2c8279d394d27357bc43a68b3 100755 (executable)
@@ -48,6 +48,11 @@ then
     exit 1
 fi
 
+if [ $LINUX_DISTRIBUTION == DB09 ]; then
+    echo "WARNING: reset MAKE_OPTIONS"
+    MAKE_OPTIONS=
+fi
+
 echo
 echo "*** make" $MAKE_OPTIONS
 make $MAKE_OPTIONS
diff --git a/products/compil_scripts/openturns-1.22.bat b/products/compil_scripts/openturns-1.22.bat
new file mode 100644 (file)
index 0000000..a84f383
--- /dev/null
@@ -0,0 +1,362 @@
+@echo off
+
+echo ##########################################################################
+echo openturns %VERSION%
+echo ##########################################################################
+
+IF NOT DEFINED SAT_DEBUG (
+  SET SAT_DEBUG=0
+)
+
+IF NOT DEFINED CMAKE_GENERATOR (
+  SET CMAKE_GENERATOR="Visual Studio 15 2017 Win64"
+)
+SET PRODUCT_BUILD_TYPE=Release
+
+REM TODO: NGH: not Tested yet
+if %SAT_DEBUG% == 1 (
+  set PRODUCT_BUILD_TYPE=Debug
+)
+
+if NOT exist "%PRODUCT_INSTALL%" mkdir %PRODUCT_INSTALL%
+
+REM clean BUILD directory
+if exist "%BUILD_DIR%" rmdir /Q /S %BUILD_DIR%
+mkdir %BUILD_DIR%
+
+REM we don't install in python directory -> modify environment as described in INSTALL file
+set PATH=%WINFLEX_ROOT_DIR%;%PATH%
+SET PATH=%CWD%\bin;%PATH%
+SET PYTHONPATH=%CWD%;%PYTHONPATH%
+SET PYTHONPATH=%PRODUCT_INSTALL%\lib\python%PYTHON_VERSION%\site-packages;%PYTHONPATH%
+
+GOTO:MAIN
+
+:MODULE_BUILDER
+    SETLOCAL ENABLEDELAYEDEXPANSION
+    SET MODULE_NAME=%~1
+    SET MODULE_SOURCE_DIR=%~2
+    SET MODULE_BUILD_DIR=%~3
+    SET MODULE_INSTALL_DIR=%~4
+    SET X=%~5
+    SET MODULE_CMAKE_OPTIONS=%X:'="%
+    REM NGH: We replace ' with " -  we could of course parse the input.
+    ECHO call MODULE_BUILDER for %MODULE_NAME%
+    ECHO command line option: %MODULE_CMAKE_OPTIONS%
+    REM TODO: NGH: not Tested yet
+    if exist "%MODULE_BUILD_DIR%" rmdir /Q /S %MODULE_BUILD_DIR%
+    mkdir %MODULE_BUILD_DIR%
+    cd %MODULE_BUILD_DIR%
+
+    echo.
+    echo --------------------------------------------------------------------------
+    echo *** %CMAKE_ROOT%\bin\cmake -G %CMAKE_GENERATOR%  %MODULE_CMAKE_OPTIONS% %MODULE_SOURCE_DIR%
+    echo --------------------------------------------------------------------------
+    %CMAKE_ROOT%\bin\cmake -G %CMAKE_GENERATOR% %MODULE_CMAKE_OPTIONS% %MODULE_SOURCE_DIR%
+    if NOT %ERRORLEVEL% == 0 (
+      echo ERROR on cmake
+      exit 1
+    )
+
+    echo.
+    echo --------------------------------------------------------------------------
+    echo *** msbuild %MAKE_OPTIONS% /p:Configuration=%PRODUCT_BUILD_TYPE% /p:Platform=x64 ALL_BUILD.vcxproj
+    echo --------------------------------------------------------------------------
+    msbuild %MAKE_OPTIONS% /p:Configuration=%PRODUCT_BUILD_TYPE% /p:Platform=x64 ALL_BUILD.vcxproj
+    if NOT %ERRORLEVEL% == 0 (
+      echo ERROR on msbuild ALL_BUILD.vcxproj
+      exit 2
+    )
+
+    echo.
+    echo --------------------------------------------------------------------------
+    echo *** msbuild %MAKE_OPTIONS% /p:Configuration=%PRODUCT_BUILD_TYPE% /p:Platform=x64 INSTALL.vcxproj
+    echo --------------------------------------------------------------------------
+
+    msbuild %MAKE_OPTIONS% /p:Configuration=%PRODUCT_BUILD_TYPE% /p:Platform=x64 INSTALL.vcxproj
+    if NOT %ERRORLEVEL% == 0 (
+      echo ERROR on msbuild INSTALL.vcxproj
+      exit 3
+    )
+    ENDLOCAL
+EXIT /B 0
+
+
+:MAIN
+
+SET CMAKE_OPTIONS=
+SET CMAKE_OPTIONS=%CMAKE_OPTIONS% -DCMAKE_INSTALL_PREFIX:STRING=%PRODUCT_INSTALL:\=/%
+SET CMAKE_OPTIONS=%CMAKE_OPTIONS% -DCMAKE_BUILD_TYPE:STRING=%PRODUCT_BUILD_TYPE%
+SET CMAKE_OPTIONS=%CMAKE_OPTIONS% -DCMAKE_INSTALL_LIBDIR:STRING=lib
+SET CMAKE_OPTIONS=%CMAKE_OPTIONS% -DPYTHON_EXECUTABLE=%PYTHONBIN%
+SET CMAKE_OPTIONS=%CMAKE_OPTIONS% -DSWIG_EXECUTABLE=%SWIG_ROOT_DIR:\=/%/bin/swig
+SET CMAKE_OPTIONS=%CMAKE_OPTIONS% -DTBB_ROOT_DIR=%TBB_ROOT_DIR%
+SET CMAKE_OPTIONS=%CMAKE_OPTIONS% -Dtbb_DIR:PATH=%TBB_ROOT_DIR:\=/%
+SET CMAKE_OPTIONS=%CMAKE_OPTIONS% -DUSE_TBB=OFF
+REM libxml2 settings
+set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DVTK_MODULE_USE_EXTERNAL_VTK_libxml2:BOOL=ON
+set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DLIBXML2_INCLUDE_DIR:STRING=%LIBXML2_ROOT_DIR:\=/%/include
+set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DLIBXML2_LIBRARIES:STRING=%LIBXML2_ROOT_DIR:\=/%/lib/libxml2.lib
+set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DLIBXML2_XMLLINT_EXECUTABLE=%LIBXML2_ROOT_DIR:\=/%/bin/xmllint.exe
+
+REM HDF5 settings
+set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DVTK_MODULE_USE_EXTERNAL_VTK_hdf5:BOOL=ON
+set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DHDF5_DIR:PATH=%HDF5_ROOT_DIR:\=/%/cmake/hdf5
+set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DHDF5_INCLUDE_DIRS:PATH=%HDF5_ROOT_DIR:\=/%/include
+set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DHDF5_USE_STATIC_LIBRARIES:BOOL=OFF
+set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DNLOPT_INCLUDE_DIRS:STRING=%NLOPT_ROOT_DIR:\=/%/include
+set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DNLOPT_LIBRARIES:STRING=%NLOPT_ROOT_DIR:\=/%/bin
+set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DNLOPT_DIR:STRING=%NLOPT_ROOT_DIR:\=/%
+set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DCBLAS_DIR=%OPENBLAS_ROOT_DIR:\=/%/share/cmake/OpenBLAS
+set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DPython3_EXECUTABLE:FILEPATH=%PYTHON_ROOT_DIR:\=/%/python3.exe
+set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DPython3_INCLUDE_DIR:PATH=%PYTHON_ROOT_DIR:\=/%/include
+set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DLAPACK_LIBRARIES:FILEPATH=%OPENBLAS_ROOT_DIR:\=/%/lib/openblas.lib  
+set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DCMAKE_SHARED_LINKER_FLAGS_RELEASE='/OPT:NOREF /INCREMENTAL:NO'
+set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DCMAKE_UNITY_BUILD=ON
+set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DCMAKE_UNITY_BUILD_BATCH_SIZE=16 
+set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DSWIG_COMPILE_FLAGS='/bigobj'
+set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DUSE_SPHINX=OFF
+
+if NOT exist "%PRODUCT_INSTALL%" mkdir %PRODUCT_INSTALL%
+REM clean BUILD directory
+if exist "%BUILD_DIR%" rmdir /Q /S %BUILD_DIR%
+mkdir %BUILD_DIR%
+
+cd %BUILD_DIR%
+mkdir cache
+mkdir cache\pip
+
+echo ##########################################################################
+echo openturns 1.22
+echo ##########################################################################
+SET CMAKE_MODULE_OPTIONS=%CMAKE_OPTIONS%
+CALL:MODULE_BUILDER openturns "%SOURCE_DIR%\openturns-1.22" "%BUILD_DIR%\openturns" "%PRODUCT_INSTALL%" "%CMAKE_MODULE_OPTIONS%"
+
+set PATH=%PRODUCT_INSTALL%\bin;%PRODUCT_INSTALL%\lib;%PATH%
+set PYTHONPATH=%PRODUCT_INSTALL%\lib\site-packages;%PYTHONPATH%
+
+echo ##########################################################################
+echo otagrum 0.9 [SKIPPED]
+echo ##########################################################################
+REM SET CMAKE_MODULE_OPTIONS=%CMAKE_OPTIONS% -DBUILD_DOC=OFF
+REM CALL:MODULE_BUILDER otagrum "%SOURCE_DIR%\otagrum-0.9" "%BUILD_DIR%\otagrum" "%PRODUCT_INSTALL%" "%CMAKE_MODULE_OPTIONS%"
+
+echo ##########################################################################
+echo otmorris 0.15
+echo ##########################################################################
+SET CMAKE_MODULE_OPTIONS=%CMAKE_OPTIONS%
+CALL:MODULE_BUILDER otmorris "%SOURCE_DIR%\otmorris-0.15" "%BUILD_DIR%\otmorris" "%PRODUCT_INSTALL%" "%CMAKE_MODULE_OPTIONS%"
+
+echo ##########################################################################
+echo otfftw 0.14
+echo ##########################################################################
+SET CMAKE_MODULE_OPTIONS=%CMAKE_OPTIONS%
+CALL:MODULE_BUILDER otfftw "%SOURCE_DIR%\otfftw-0.14" "%BUILD_DIR%\otfftw" "%PRODUCT_INSTALL%" "%CMAKE_MODULE_OPTIONS%"
+
+echo ##########################################################################
+echo otmixmod 0.16 [SKIPPED]
+echo ##########################################################################
+SET CMAKE_MODULE_OPTIONS=%CMAKE_OPTIONS%
+REM CALL:MODULE_BUILDER otmixmod "%SOURCE_DIR%\otmixmod-0.16" "%BUILD_DIR%\otmixmod" "%PRODUCT_INSTALL%" "%CMAKE_MODULE_OPTIONS%"
+
+echo ##########################################################################
+echo otrobopt 0.13
+echo ##########################################################################
+SET CMAKE_MODULE_OPTIONS=%CMAKE_OPTIONS% -DBUILD_DOC=OFF
+CALL:MODULE_BUILDER otrobopt "%SOURCE_DIR%\otrobopt-0.13" "%BUILD_DIR%\otrobopt" "%PRODUCT_INSTALL%" "%CMAKE_MODULE_OPTIONS%"
+
+echo ##########################################################################
+echo otsubsetinverse 1.10
+echo ##########################################################################
+SET CMAKE_MODULE_OPTIONS=%CMAKE_OPTIONS% -DBUILD_DOC=OFF
+CALL:MODULE_BUILDER otsubsetinverse "%SOURCE_DIR%\otsubsetinverse-1.10" "%BUILD_DIR%\otsubsetinverse" "%PRODUCT_INSTALL%" "%CMAKE_MODULE_OPTIONS%"
+
+echo ##########################################################################
+echo otsvm 0.13
+echo ##########################################################################
+SET CMAKE_MODULE_OPTIONS=%CMAKE_OPTIONS% -DBUILD_DOC=OFF
+CALL:MODULE_BUILDER otsvm "%SOURCE_DIR%\otsvm-0.13" "%BUILD_DIR%\otsvm" "%PRODUCT_INSTALL%" "%CMAKE_MODULE_OPTIONS%"
+
+echo
+echo ##########################################################################
+echo dill 0.3.4
+echo ##########################################################################
+cd %BUILD_DIR%
+mkdir dill
+cd  %BUILD_DIR%\dill
+xcopy %SOURCE_DIR%\dill-0.3.4\*   %BUILD_DIR%\dill /E /I /Q
+if NOT %ERRORLEVEL% == 0 (
+    echo ERROR on xcopy
+    exit 3
+)
+
+%PYTHON_ROOT_DIR%\python.exe -m pip install --cache-dir=%BUILD_DIR%\cache\pip --prefix=%PRODUCT_INSTALL% dill-0.3.4-py2.py3-none-any.whl --no-deps
+if NOT %ERRORLEVEL% == 0 (
+    echo ERROR on python setup.py
+    exit 3
+)
+
+echo
+echo ##########################################################################
+echo decorator 5.1.0
+echo ##########################################################################
+cd %BUILD_DIR%
+mkdir decorator
+cd  %BUILD_DIR%\decorator
+xcopy %SOURCE_DIR%\decorator-5.1.0\*   %BUILD_DIR%\decorator /E /I /Q
+if NOT %ERRORLEVEL% == 0 (
+    echo ERROR on xcopy
+    exit 3
+)
+
+%PYTHON_ROOT_DIR%\python.exe -m pip install --cache-dir=%BUILD_DIR%\cache\pip --prefix=%PRODUCT_INSTALL% decorator-5.1.0-py3-none-any.whl --no-deps
+if NOT %ERRORLEVEL% == 0 (
+    echo ERROR on python setup.py
+    exit 3
+)
+
+echo
+echo ##########################################################################
+echo threadpoolctl 3.0.0
+echo ##########################################################################
+cd %BUILD_DIR%
+mkdir threadpoolctl
+cd  %BUILD_DIR%\threadpoolctl
+xcopy %SOURCE_DIR%\threadpoolctl-3.0.0\*   %BUILD_DIR%\threadpoolctl /E /I /Q
+if NOT %ERRORLEVEL% == 0 (
+    echo ERROR on xcopy
+    exit 3
+)
+
+%PYTHON_ROOT_DIR%\python.exe -m pip install --cache-dir=%BUILD_DIR%\cache\pip --prefix=%PRODUCT_INSTALL% threadpoolctl-3.0.0-py3-none-any.whl --no-deps
+if NOT %ERRORLEVEL% == 0 (
+    echo ERROR on python setup.py
+    exit 3
+)
+
+echo
+echo ##########################################################################
+echo joblib 1.1.0
+echo ##########################################################################
+cd %BUILD_DIR%
+mkdir joblib
+cd  %BUILD_DIR%\joblib
+xcopy %SOURCE_DIR%\joblib-1.1.0\*   %BUILD_DIR%\joblib /E /I /Q
+if NOT %ERRORLEVEL% == 0 (
+    echo ERROR on xcopy
+    exit 3
+)
+
+%PYTHON_ROOT_DIR%\python.exe -m pip install --cache-dir=%BUILD_DIR%\cache\pip --prefix=%PRODUCT_INSTALL% joblib-1.1.0-py2.py3-none-any.whl --no-deps
+if NOT %ERRORLEVEL% == 0 (
+    echo ERROR on python setup.py
+    exit 3
+)
+
+echo
+echo ##########################################################################
+echo scikit-learn 0.24.2
+echo ##########################################################################
+cd %BUILD_DIR%
+mkdir scikit-learn
+cd  %BUILD_DIR%\scikit-learn
+xcopy %SOURCE_DIR%\scikit-learn-0.24.2\*   %BUILD_DIR%\scikit-learn /E /I /Q
+if NOT %ERRORLEVEL% == 0 (
+    echo ERROR on xcopy
+    exit 3
+)
+
+if %PYTHON_VERSION% == 3.6 (
+  %PYTHON_ROOT_DIR%\python.exe -m pip install --cache-dir=%BUILD_DIR%\cache\pip --prefix=%PRODUCT_INSTALL% scikit-learn-0.24.2.tar.gz --no-deps  --no-use-pep517
+) else (
+  tar zxf scikit-learn-0.24.2.tar.gz
+  cd  scikit-learn-0.24.2
+  %PYTHON_ROOT_DIR%\python.exe setup.py install --prefix=%PRODUCT_INSTALL%
+)
+
+if NOT %ERRORLEVEL% == 0 (
+    echo ERROR on python setup.py
+    exit 3
+)
+
+echo
+echo ##########################################################################
+echo pythonfmu 0.6.3
+echo ##########################################################################
+cd %BUILD_DIR%
+mkdir pythonfmu
+cd  %BUILD_DIR%\pythonfmu
+xcopy %SOURCE_DIR%\pythonfmu-0.6.3\*   %BUILD_DIR%\pythonfmu /E /I /Q
+if NOT %ERRORLEVEL% == 0 (
+    echo ERROR on xcopy of pythonfmu-0.6.3
+    exit 3
+)
+
+%PYTHON_ROOT_DIR%\python.exe -m pip install --cache-dir=%BUILD_DIR%\cache\pip --prefix=%PRODUCT_INSTALL% pythonfmu-0.6.3-py3-none-any.whl --no-deps
+if NOT %ERRORLEVEL% == 0 (
+    echo ERROR on python setup.py
+    exit 3
+)
+
+echo ##########################################################################
+echo otfmi 0.16.2
+echo ##########################################################################
+cd %BUILD_DIR%
+mkdir otfmi
+
+set CMAKE_OPTIONS_EXT=%CMAKE_OPTIONS%
+cd  %BUILD_DIR%\otfmi
+xcopy %SOURCE_DIR%\otfmi-0.16.2\*   %BUILD_DIR%\otfmi /E /I /Q
+if NOT %ERRORLEVEL% == 0 (
+    echo ERROR on xcopy
+    exit 3
+)
+
+%PYTHON_ROOT_DIR%\python.exe setup.py install --prefix=%PRODUCT_INSTALL%
+if NOT %ERRORLEVEL% == 0 (
+    echo ERROR on python setup.py
+    exit 3
+)
+
+echo ##########################################################################
+echo otpod 0.6.10
+echo ##########################################################################
+cd %BUILD_DIR%
+mkdir otpod
+
+set CMAKE_OPTIONS_EXT=%CMAKE_OPTIONS%
+cd  %BUILD_DIR%\otpod
+xcopy %SOURCE_DIR%\otpod-0.6.10\*   %BUILD_DIR%\otpod /E /I /Q
+if NOT %ERRORLEVEL% == 0 (
+    echo ERROR on xcopy
+    exit 3
+)
+
+%PYTHON_ROOT_DIR%\python.exe setup.py install --prefix=%PRODUCT_INSTALL%
+if NOT %ERRORLEVEL% == 0 (
+    echo ERROR on python setup.py
+    exit 3
+)
+
+echo ##########################################################################
+echo otwrapy 0.11
+echo ##########################################################################
+cd %BUILD_DIR%
+mkdir otwrapy
+
+set CMAKE_OPTIONS_EXT=%CMAKE_OPTIONS%
+cd  %BUILD_DIR%\otwrapy
+xcopy %SOURCE_DIR%\otwrapy-0.11\*   %BUILD_DIR%\otwrapy /E /I /Q
+if NOT %ERRORLEVEL% == 0 (
+    echo ERROR on xcopy
+    exit 3
+)
+
+%PYTHON_ROOT_DIR%\python.exe setup.py install --prefix=%PRODUCT_INSTALL%
+if NOT %ERRORLEVEL% == 0 (
+    echo ERROR on python setup.py
+    exit 3
+)
+
+echo
+echo "########## END"
diff --git a/products/compil_scripts/openturns-1.22.sh b/products/compil_scripts/openturns-1.22.sh
new file mode 100755 (executable)
index 0000000..ced175d
--- /dev/null
@@ -0,0 +1,563 @@
+#!/bin/bash                                                                                                                                                                              
+
+echo "##########################################################################"
+echo "openturns" $VERSION
+echo "##########################################################################"
+
+LINUX_DISTRIBUTION="$DIST_NAME$DIST_VERSION"
+
+export PATH=$(pwd)/bin:$PATH
+export PYTHONPATH=$(pwd):$PYTHONPATH
+export PYTHONPATH=${PRODUCT_INSTALL}/lib/python${PYTHON_VERSION}/site-packages:$PYTHONPATH
+
+CMAKE_OPTIONS=""
+if [ -n "$SAT_HPC" ] && [ -n "$MPI_ROOT_DIR" ]; then
+    echo "WARNING: setting CC and CXX environment variables and target MPI wrapper"
+    CMAKE_OPTIONS+=" -DCMAKE_CXX_COMPILER:STRING=${MPI_CXX_COMPILER}"
+    CMAKE_OPTIONS+=" -DCMAKE_C_COMPILER:STRING=${MPI_C_COMPILER}"
+fi
+
+CMAKE_OPTIONS+=" -DCMAKE_INSTALL_PREFIX:STRING=${PRODUCT_INSTALL}"
+CMAKE_OPTIONS+=" -DCMAKE_INSTALL_LIBDIR:STRING=lib"
+CMAKE_OPTIONS+=" -DCMAKE_BUILD_TYPE:STRING=Release"
+CMAKE_OPTIONS+=" -DPYTHON_EXECUTABLE=${PYTHONBIN}"
+
+if [ "$SAT_Python_IS_NATIVE" == "1" ] && [ "$LINUX_DISTRIBUTION" == "CO8" ] ; then
+    CMAKE_OPTIONS+=" -DPython_EXECUTABLE=${PYTHONBIN}"
+fi
+
+if [ -n "$SWIG_ROOT_DIR" ] && [ "$SAT_swig_IS_NATIVE" != "1" ]; then
+    CMAKE_OPTIONS+=" -DSWIG_EXECUTABLE=${SWIG_ROOT_DIR}/bin/swig"
+fi
+
+if [ -n "$TBB_ROOT_DIR" ] && [ "$SAT_tbb_IS_NATIVE" != "1" ]; then
+    CMAKE_OPTIONS+=" -DTBB_ROOT_DIR=${TBB_ROOT_DIR}"
+    CMAKE_OPTIONS+=" -Dtbb_DIR=${TBB_ROOT_DIR}/lib/cmake"
+fi
+
+# https://github.com/persalys/persalys/issues/745
+case $LINUX_DISTRIBUTION in
+    UB22*|CO8*|CO9*|FD36|FD37|FD38)
+        echo "WARNING: switching OFF TBB support"
+        CMAKE_OPTIONS+=" -DUSE_TBB=OFF"
+        ;;
+    *)
+        ;;
+esac
+
+# Blas/Lapack
+if [ -n "$LAPACK_ROOT_DIR" ] && [ "$SAT_lapack_IS_NATIVE" != "1" ]; then
+    CMAKE_OPTIONS+=" -DLAPACK_DIR=${LAPACK_ROOT_DIR}/lib/cmake/lapack-3.8.0"
+    CMAKE_OPTIONS+=" -DCBLAS_DIR=${LAPACK_ROOT_DIR}/lib/cmake/cblas-3.8.0"
+    CMAKE_OPTIONS+=" -DCBLAS_LIBRARIES=$LAPACK_ROOT_DIR/lib/libcblas.so"
+    CMAKE_OPTIONS+=" -DBLAS_LIBRARIES=$LAPACK_ROOT_DIR/lib/libblas.so"
+fi
+
+### libxml2 settings
+if [ -n "$LIBXML2_ROOT_DIR" ] && [ "$SAT_libxml2_IS_NATIVE" != "1" ]; then
+    CMAKE_OPTIONS+=" -DLIBXML2_INCLUDE_DIR:STRING=${LIBXML2_ROOT_DIR}/include/libxml2"
+    CMAKE_OPTIONS+=" -DLIBXML2_LIBRARIES:STRING=${LIBXML2_ROOT_DIR}/lib/libxml2.so"
+    CMAKE_OPTIONS+=" -DLIBXML2_XMLLINT_EXECUTABLE=${LIBXML2_ROOT_DIR}/bin/xmllint"
+fi
+
+# HDF5
+if [ -n "$HDF5_ROOT_DIR" ] && [ "$SAT_hdf5_IS_NATIVE" != "1" ]; then
+    CMAKE_OPTIONS+=" -DHDF5_DIR:PATH=${HDF5_ROOT_DIR}/share/cmake/hdf5"
+    CMAKE_OPTIONS+=" -DHDF5_USE_STATIC_LIBRARIES:BOOL=OFF"
+    CMAKE_OPTIONS+=" -DHDF5_ROOT:PATH=${HDF5_ROOT_DIR}"
+    CMAKE_OPTIONS+=" -DHDF5_hdf5_LIBRARY_RELEASE=${HDF5_ROOT_DIR}/lib"
+    CMAKE_OPTIONS+=" -DHDF5_hdf5_hl_LIBRARY_RELEASE=${HDF5_ROOT_DIR}/lib/libhdf5_hl.so"
+    CMAKE_OPTIONS+=" -DHDF5_HL_LIBRARY=${HDF5_ROOT_DIR}/lib/libhdf5_hl.so"
+    CMAKE_OPTIONS+=" -DHDF5_C_INCLUDE_DIR=${HDF5_ROOT_DIR}/include"
+fi
+
+# CMINPACK
+if [ -n "$CMINPACK_ROOT_DIR" ] && [ "$SAT_cminpack_IS_NATIVE" != "1" ]; then
+    CMAKE_OPTIONS+=" -DCMINPACK_ROOT_DIR=${CMINPACK_ROOT_DIR}"
+    CMAKE_OPTIONS+=" -DCMINPACK_INCLUDE_DIR=${CMINPACK_ROOT_DIR}/include/cminpack-1"
+    CMAKE_OPTIONS+=" -DCMINPACK_LIBRARY=$CMINPACK_ROOT_DIR/lib/libcminpack_s.a"
+else
+    CMAKE_OPTIONS+=" -DCMINPACK_ROOT_DIR=${CMINPACK_ROOT_DIR}"
+    CMAKE_OPTIONS+=" -DCMINPACK_INCLUDE_DIR=${CMINPACK_ROOT_DIR}/include/cminpack-1"
+fi
+
+# Blas/Lapack
+if [ -n "$LAPACK_ROOT_DIR" ] && [ "$SAT_lapack_IS_NATIVE" != "1" ]; then
+    CMAKE_OPTIONS+=" -DLAPACK_DIR=${LAPACK_ROOT_DIR}/lib/cmake/lapack-3.8.0"
+    CMAKE_OPTIONS+=" -DCBLAS_DIR=${LAPACK_ROOT_DIR}/lib/cmake/cblas-3.8.0"
+    CMAKE_OPTIONS+=" -DCBLAS_LIBRARIES=$LAPACK_ROOT_DIR/lib/libcblas.so"
+    CMAKE_OPTIONS+=" -DBLAS_LIBRARIES=$LAPACK_ROOT_DIR/lib/libblas.so"
+fi
+
+if [[ $DIST_NAME == "CO" && $DIST_VERSION == "8" &&  -f /usr/lib64/libcblas.so && -f /usr/lib64/libblas.so ]]; then
+    CMAKE_OPTIONS+=" -DCBLAS_LIBRARIES=/usr/lib64/libcblas.so"
+    CMAKE_OPTIONS+=" -DBLAS_LIBRARIES=/usr/lib64/libblas.so"
+fi
+
+### libxml2 settings
+if [ -n "$LIBXML2_ROOT_DIR" ] && [ "$SAT_libxml2_IS_NATIVE" != "1" ]; then
+    CMAKE_OPTIONS+=" -DLIBXML2_INCLUDE_DIR:STRING=${LIBXML2_ROOT_DIR}/include/libxml2"
+    CMAKE_OPTIONS+=" -DLIBXML2_LIBRARIES:STRING=${LIBXML2_ROOT_DIR}/lib/libxml2.so"
+    CMAKE_OPTIONS+=" -DLIBXML2_XMLLINT_EXECUTABLE=${LIBXML2_ROOT_DIR}/bin/xmllint"
+fi
+
+## nlopt
+if [ -n "$NLOPT_ROOT_DIR" ] && [ "$SAT_nlopt_IS_NATIVE" != "1" ]; then
+    CMAKE_OPTIONS+=" -DNLOPT_INCLUDE_DIR:STRING=${NLOPT_ROOT_DIR}/include"
+    CMAKE_OPTIONS+=" -DNLOPT_LIBRARY:STRING=${NLOPT_ROOT_DIR}/lib/libnlopt.so"
+    CMAKE_OPTIONS+=" -DNLOPT_DIR:STRING=${NLOPT_ROOT_DIR}"
+fi
+
+# Boost
+if [ -n "$BOOST_ROOT_DIR" ] && [ "$SAT_boost_IS_NATIVE" != "1" ]; then
+    CMAKE_OPTIONS+=" -DBOOST_DIR=${BOOST_ROOT_DIR}"
+fi
+
+echo
+echo "*** cmake" $CMAKE_OPTIONS
+
+rm -rf $BUILD_DIR
+mkdir -p $BUILD_DIR/openturns
+mkdir -p  $BUILD_DIR/cache/pip
+
+# since we are using several nodes and share the same $HOME
+# compilation can get screwed up.
+# following this discussion: https://tex.stackexchange.com/questions/467824/is-it-possible-to-relocate-my-texmf-directory
+# we define the following environment variables
+export TEXMFHOME=$BUILD_DIR/texmf
+export TEXMFVAR=$BUILD_DIR/texlive
+export TEXMFCONFIG=$BUILD_DIR/texlive
+mkdir -p $TEXMFHOME
+mkdir -p $TEXMFVAR
+mkdir -p $TEXMFCONFIG
+
+cd  $BUILD_DIR/openturns
+cmake $CMAKE_OPTIONS $SOURCE_DIR/openturns-1.22
+if [ $? -ne 0 ]
+then
+    echo "ERROR on cmake"
+    exit 1
+fi
+
+echo
+echo "*** make" $MAKE_OPTIONS
+make $MAKE_OPTIONS
+if [ $? -ne 0 ]
+then
+    echo "ERROR on make"
+    exit 2
+fi
+
+echo
+echo "*** make install"
+make install
+if [ $? -ne 0 ]
+then
+    echo "ERROR on make install"
+    exit 3
+fi
+
+echo
+echo "*** check installation"
+if [ ! -d "${PRODUCT_INSTALL}/lib" ]; then
+    mkdir -p ${PRODUCT_INSTALL}/lib
+fi
+
+if [ -d "${PRODUCT_INSTALL}/lib64" ]; then
+    echo "WARNING: moving lib64 to lib"
+    mv ${PRODUCT_INSTALL}/lib64/* ${PRODUCT_INSTALL}/lib/
+    rm -rf ${PRODUCT_INSTALL}/lib64
+elif [ -d "${PRODUCT_INSTALL}/local/lib64" ]; then
+    echo "WARNING: moving local/lib64 to lib"
+    mv ${PRODUCT_INSTALL}/local/lib64/* ${PRODUCT_INSTALL}/lib/
+    rm -rf ${PRODUCT_INSTALL}/local/lib64
+fi
+
+if [ -d ${PRODUCT_INSTALL}/lib/python${PYTHON_VERSION}/dist-packages ]; then
+    mv ${PRODUCT_INSTALL}/lib/python${PYTHON_VERSION}/dist-packages ${PRODUCT_INSTALL}/lib/python${PYTHON_VERSION}/site-packages
+fi
+
+export PYTHONPATH=${PRODUCT_INSTALL}/lib/python${PYTHON_VERSION}/site-packages:${PYTHONPATH}
+export LD_LIBRARY_PATH=${PRODUCT_INSTALL}/lib:${LD_LIBRARY_PATH}
+chmod +x ${SOURCE_DIR}/openturns-1.22/python/test/t_features.py
+${PYTHONBIN} ${SOURCE_DIR}/openturns-1.22/python/test/t_features.py
+if [ $? -ne 0 ]
+then
+    echo "ERROR  testing Openturns features...."
+    exit 4
+fi
+
+cd  $BUILD_DIR
+mkdir ${BUILD_DIR}/mixmod
+cd ${BUILD_DIR}/mixmod
+
+CMAKE_EXTRA_OPTIONS=
+CMAKE_EXTRA_OPTIONS+=" -DMIXMOD_BUILD_EXAMPLES=ON"
+CMAKE_EXTRA_OPTIONS+=" -DMIXMOD_BUILD_IOSTREAM=ON"
+CMAKE_EXTRA_OPTIONS+=" -DMIXMOD_BUILD_CLI=ON"
+
+case $LINUX_DISTRIBUTION in
+    DB9)
+        echo "WARNING: Skipping MIXMOD - since libxml++ compilation is quite tedious on that platform"
+        echo "WARNING: You can either target the stretch archives and install libxml++-dev and compile or leave it as it is"
+        
+        ;;
+    *)
+        echo
+        echo "*** cmake " $CMAKE_OPTIONS ${CMAKE_EXTRA_OPTIONS} $SOURCE_DIR/mixmod-2.1.10
+        cmake $CMAKE_OPTIONS ${CMAKE_EXTRA_OPTIONS} $SOURCE_DIR/mixmod-2.1.10
+        if [ $? -ne 0 ]; then
+            echo "ERROR on cmake"
+            exit 1
+        fi
+        
+        echo
+        echo "*** make" $MAKE_OPTIONS
+        make $MAKE_OPTIONS
+        if [ $? -ne 0 ]; then
+            echo "ERROR on make"
+            exit 2
+        fi
+        
+        echo
+        echo "*** make install"
+        make install
+        if [ $? -ne 0 ]; then
+            echo "ERROR on make install"
+            exit 3
+        fi
+        ;;
+esac
+
+LD_LIBRARY_PATH_REF=${LD_LIBRARY_PATH}
+if [[ -d "$SOURCE_DIR/otfftw-0.14" ]]; then
+    declare -A OTC
+    OTC["otagrum"]="0.9"
+    OTC["otfftw"]="0.14"
+    OTC["otmixmod"]="0.16"
+    OTC["otmorris"]="0.15"
+    OTC["otrobopt"]="0.13"
+    OTC["otsubsetinverse"]="1.10"
+    OTC["otsvm"]="0.13"
+
+    for k in ${!OTC[@]};
+    do         
+        echo
+        echo "*** C O M P O N E N T : $k-${OTC[$k]} "
+        if [[ $k == "otagrum" ]]; then
+            echo "WARNING: skipping $k.."
+            continue
+        fi
+        cd  $BUILD_DIR
+        mkdir ${BUILD_DIR}/$k
+        cd ${BUILD_DIR}/$k 
+        CMAKE_EXTRA_OPTIONS=
+        if [[ $DIST_NAME == "CO" ]]; then
+            CMAKE_EXTRA_OPTIONS+=" -DBUILD_DOC=OFF"  # needs extra latex modules on CentOS 7, 8
+            CMAKE_EXTRA_OPTIONS+=" -DUSE_SPHINX=OFF"
+        fi
+        if [[ $k == "otmixmod" ]]; then
+            CMAKE_EXTRA_OPTIONS+=" -DBUILD_DOC=OFF"
+            CMAKE_EXTRA_OPTIONS+=" -DSOURCEFILES=$SOURCE_DIR/$k-${OTC[$k]}"
+            CMAKE_EXTRA_OPTIONS+=" -DMIXMOD_INCLUDE_DIR=$PRODUCT_INSTALL/include"
+            CMAKE_EXTRA_OPTIONS+=" -DMIXMOD_LIBRARIES=$PRODUCT_INSTALL/lib/libmixmod.so"
+            if [ ! -f $PRODUCT_INSTALL/lib/libmixmod.so ]; then
+                echo "WARNING: libmixmod.so is not installed where it is expected to be. Skipping..."
+                continue
+            fi
+        elif [[ $k == "otsubsetinverse" ]]; then
+            CMAKE_EXTRA_OPTIONS+=" -DOPENTURNS_HOME=$PRODUCT_INSTALL"
+            CMAKE_EXTRA_OPTIONS+=" -DCMAKE_SKIP_INSTALL_RPATH:BOOL=ON"
+            CMAKE_EXTRA_OPTIONS+=" -DUSE_SPHINX=OFF"
+        elif  [[ $k == "otfftw" ]]; then
+            CMAKE_EXTRA_OPTIONS+=" -DBUILD_DOC=OFF"
+        elif [[ $k == "otmorris" ]]; then
+            case $LINUX_DISTRIBUTION in
+                DB*|FD*|UB*)
+                    echo "WARNING: switching OFF documentation build"
+                    CMAKE_EXTRA_OPTIONS+=" -DBUILD_DOC=OFF"
+                    CMAKE_EXTRA_OPTIONS+=" -DUSE_SPHINX=OFF" # missing package to be installed.
+                    ;;
+            esac
+        elif [[ $k == "otrobopt" ]]; then
+            case $LINUX_DISTRIBUTION in
+                DB*|FD*|UB*)
+                    echo "WARNING: switching OFF documentation build"
+                    CMAKE_EXTRA_OPTIONS+=" -DBUILD_DOC=OFF"
+                    CMAKE_EXTRA_OPTIONS+=" -DUSE_SPHINX=OFF" # missing package to be installed.
+                    ;;
+            esac
+        elif [[ $k == "otsvm" ]]; then
+            case $LINUX_DISTRIBUTION in
+                DB*|FD*|UB*)
+                    echo "WARNING: switching OFF documentation build"
+                    CMAKE_EXTRA_OPTIONS+=" -DBUILD_DOC=OFF"
+                    CMAKE_EXTRA_OPTIONS+=" -DUSE_SPHINX=OFF" # missing package to be installed.
+                    ;;
+            esac
+        elif  [[ $k == "otpmml" ]]; then
+            CMAKE_EXTRA_OPTIONS+=" -DBUILD_DOC=OFF"
+        fi
+
+        echo
+        echo "*** cmake " $CMAKE_OPTIONS ${CMAKE_EXTRA_OPTIONS}  $SOURCE_DIR/$k-${OTC[$k]}
+        cmake $CMAKE_OPTIONS ${CMAKE_EXTRA_OPTIONS} $SOURCE_DIR/$k-${OTC[$k]}
+        if [ $? -ne 0 ]
+        then
+            echo "ERROR on cmake"
+            exit 1
+        fi
+        
+        echo
+        echo "*** make" $MAKE_OPTIONS
+        make $MAKE_OPTIONS
+        if [ $? -ne 0 ]
+        then
+            echo "ERROR on make"
+            exit 2
+        fi
+        
+        echo
+        echo "*** make install"
+        make install
+        if [ $? -ne 0 ]
+        then
+            echo "ERROR on make install"
+            exit 3
+        fi
+        echo "INFO: check presence of $PRODUCT_INSTALL/local"
+        if [ -d "$PRODUCT_INSTALL/local" ]; then
+            echo "INFO: $PRODUCT_INSTALL/local is present -  reearrange ..."
+            if [ -d ${PRODUCT_INSTALL}/local/lib/python${PYTHON_VERSION}/dist-packages ]; then
+                mv ${PRODUCT_INSTALL}/local/lib/python${PYTHON_VERSION}/dist-packages ${PRODUCT_INSTALL}/local/lib/python${PYTHON_VERSION}/site-packages
+            fi
+            for D in $(ls $PRODUCT_INSTALL/local); do
+                echo "INFO: next subdirectory: $PRODUCT_INSTALL/local/$D"
+                if [ -d $PRODUCT_INSTALL/$D ]; then
+                    cp -r $PRODUCT_INSTALL/local/$D/* $PRODUCT_INSTALL/$D/
+                else
+                    mv $PRODUCT_INSTALL/local/$D $PRODUCT_INSTALL/$D
+                fi
+            done
+            rm -rf $PRODUCT_INSTALL/local
+        fi
+    done
+
+    declare -A OTP
+    OTP["otfmi"]="0.16.2"
+    OTP["otpod"]="0.6.10"
+    OTP["otwrapy"]="0.11"
+    for k in ${!OTP[@]};
+    do 
+        echo
+        echo "*** C O M P O N E N T : $k-${OTP[$k]} "
+
+        if [ "$SAT_Python_IS_NATIVE" == "1" ]; then
+            if [ $k == "otfmi" ]; then
+                echo "INFO: install dill-0.3.4"
+                ${PYTHONBIN} -m pip install  --cache-dir=$BUILD_DIR/cache/pip $SOURCE_DIR/dill-0.3.4/dill-0.3.4-py2.py3-none-any.whl --no-deps  --prefix=$PRODUCT_INSTALL
+                if [ $? -ne 0 ]
+                then
+                    echo "FATAL: could not install dill-0.3.4"
+                    exit 6
+                fi
+                echo "INFO: install pythonfmu-0.6.3"
+                ${PYTHONBIN} -m pip install  --cache-dir=$BUILD_DIR/cache/pip $SOURCE_DIR/pythonfmu-0.6.3/pythonfmu-0.6.3-py3-none-any.whl --no-deps  --prefix=$PRODUCT_INSTALL
+                if [ $? -ne 0 ]
+                then
+                    echo "FATAL: could not install pythonfmu-0.6.3"
+                    exit 6
+                fi
+            elif [ $k == "otpod" ]; then
+                if [[ $DIST_NAME == "CO" && $DIST_VERSION == "8" ]]; then
+                    echo "*** skipping: since system Cython too old"
+                    continue
+                fi
+                echo "INFO: install scikit-learn-0.24.2"
+                # use --no-build-isolation and --no-use-pep517 flags
+                ${PYTHONBIN} -m pip install  --cache-dir=$BUILD_DIR/cache/pip $SOURCE_DIR/scikit-learn-0.24.2/scikit-learn-0.24.2.tar.gz --no-deps  --prefix=$PRODUCT_INSTALL --no-build-isolation --no-use-pep517
+                if [ $? -ne 0 ]
+                then
+                    echo "FATAL: could not install scikit-0.24.2"
+                    exit 6
+                fi
+                echo "INFO: install threadpoolctl-3.0.0"
+                ${PYTHONBIN} -m pip install --cache-dir=$BUILD_DIR/cache/pip  $SOURCE_DIR/threadpoolctl-3.0.0/threadpoolctl-3.0.0-py3-none-any.whl --no-deps --prefix=$PRODUCT_INSTALL
+                if [ $? -ne 0 ]
+                then
+                    echo "FATAL: could not install threadpoolctl 3.0.0"
+                    exit 6
+                fi
+            fi
+            echo "INFO: check presence of $PRODUCT_INSTALL/local"
+            if [ -d "$PRODUCT_INSTALL/local" ]; then
+                echo "INFO: $PRODUCT_INSTALL/local is present -  reearrange ..."
+                if [ -d ${PRODUCT_INSTALL}/local/lib/python${PYTHON_VERSION}/dist-packages ]; then
+                    mv ${PRODUCT_INSTALL}/local/lib/python${PYTHON_VERSION}/dist-packages ${PRODUCT_INSTALL}/local/lib/python${PYTHON_VERSION}/site-packages
+                fi
+                for D in $(ls $PRODUCT_INSTALL/local); do
+                    echo "INFO: next subdirectory: $PRODUCT_INSTALL/local/$D"
+                    if [ -d $PRODUCT_INSTALL/$D ]; then
+                        cp -r $PRODUCT_INSTALL/local/$D/* $PRODUCT_INSTALL/$D/
+                    else
+                        mv $PRODUCT_INSTALL/local/$D $PRODUCT_INSTALL/$D
+                    fi
+                done
+                rm -rf $PRODUCT_INSTALL/local
+            fi
+            #
+        else # non native Python
+            if [[ $k == "otfmi" ]]; then
+                echo "INFO: install dill-0.3.4"
+                ${PYTHONBIN} -m pip install --cache-dir=$BUILD_DIR/cache/pip $SOURCE_DIR/dill-0.3.4/dill-0.3.4-py2.py3-none-any.whl --no-deps
+                if [ $? -ne 0 ]
+                then
+                    echo "FATAL: could not install dill-0.3.4"
+                    exit 5
+                fi
+            elif [[ $k == "otpod" ]]; then
+                echo "INFO: install threadpoolctl-3.0.0"
+                ${PYTHONBIN} -m pip install --cache-dir=$BUILD_DIR/cache/pip $SOURCE_DIR/threadpoolctl-3.0.0/threadpoolctl-3.0.0-py3-none-any.whl --no-deps
+                if [ $? -ne 0 ]
+                then
+                    echo "FATAL: could not install readpoolctl 3.0.0"
+                    exit 6
+                fi
+                echo "INFO: install joblib-1.1.0"
+                ${PYTHONBIN} -m pip install  --cache-dir=$BUILD_DIR/cache/pip $SOURCE_DIR/joblib-1.1.0/joblib-1.1.0-py2.py3-none-any.whl --no-deps
+                if [ $? -ne 0 ]
+                then
+                    echo "FATAL: could not install joblib-1.1.0"
+                    exit 6
+                fi
+                echo "INFO: install decorator-5.1.0"
+                ${PYTHONBIN} -m pip install  --cache-dir=$BUILD_DIR/cache/pip $SOURCE_DIR/decorator-5.1.0/decorator-5.1.0-py3-none-any.whl --no-deps
+                if [ $? -ne 0 ]
+                then
+                    echo "FATAL: could not install decorator-5.1.0"
+                    exit 6
+                fi
+                echo "INFO: install scikit-learn-0.24.2"
+                ${PYTHONBIN} -m pip install --cache-dir=$BUILD_DIR/cache/pip $SOURCE_DIR/scikit-learn-0.24.2/scikit-learn-0.24.2.tar.gz --no-deps
+                if [ $? -ne 0 ]
+                then
+                    echo "FATAL: could not install scikit-0.24.2"
+                    exit 6
+                fi
+            fi
+        fi
+
+        cd  $BUILD_DIR
+        mkdir ${BUILD_DIR}/$k
+        cd ${BUILD_DIR}/$k
+        cp -R $SOURCE_DIR/$k-${OTP[$k]}/* .
+        #
+        if [ $k == "otpod" ]; then
+            ${PYTHONBIN} -m pip install --cache-dir=$BUILD_DIR/cache/pip . --no-deps  --prefix=$PRODUCT_INSTALL
+            if [ $? -ne 0 ]; then
+                echo "ERROR on ${PYTHONBIN} -m pip install --cache-dir=$BUILD_DIR/cache/pip . --no-deps  --prefix=$PRODUCT_INSTALL"
+                exit 4
+            fi
+        else
+            $PYTHONBIN setup.py build
+            if [ $? -ne 0 ]
+            then
+                echo "ERROR on ${PYTHONBIN} setup.py  build"
+                exit 4
+            fi
+            #
+            $PYTHONBIN setup.py install --prefix=$PRODUCT_INSTALL
+            if [ $? -ne 0 ]
+            then
+                echo "ERROR on ${PYTHONBIN} setup.py  install --prefix=$PRODUCT_INSTALL"
+                exit 5
+            fi
+        fi
+        echo "INFO: check presence of $PRODUCT_INSTALL/local"
+        if [ -d "$PRODUCT_INSTALL/local" ]; then
+            echo "INFO: $PRODUCT_INSTALL/local is present -  reearrange ..."
+            if [ -d ${PRODUCT_INSTALL}/local/lib/python${PYTHON_VERSION}/dist-packages ]; then
+                mv ${PRODUCT_INSTALL}/local/lib/python${PYTHON_VERSION}/dist-packages ${PRODUCT_INSTALL}/local/lib/python${PYTHON_VERSION}/site-packages
+            fi
+            for D in $(ls $PRODUCT_INSTALL/local); do
+                echo "INFO: next subdirectory: $PRODUCT_INSTALL/local/$D"
+                if [ -d $PRODUCT_INSTALL/$D ]; then
+                    cp -r $PRODUCT_INSTALL/local/$D/* $PRODUCT_INSTALL/$D/
+                else
+                    mv $PRODUCT_INSTALL/local/$D $PRODUCT_INSTALL/$D
+                fi
+            done
+            rm -rf $PRODUCT_INSTALL/local
+        fi
+    done
+
+    #
+    # O P E N T U R N S
+    #
+    if [ -f ${PRODUCT_INSTALL}/lib/python${PYTHON_VERSION}/site-packages/site.py ]; then
+        echo "INFO: site.py already installed"
+    elif [ "$SAT_Python_IS_NATIVE" == "1" ]; then
+        # check first whether the init.py file is installed
+        echo "WARNING: missing init.py file. Installing it from system Python installation"
+        SITE_PATCH=
+        LINUX_DISTRIBUTION="$DIST_NAME$DIST_VERSION"
+        case $LINUX_DISTRIBUTION in
+            DB11)
+                SITE_PATCH=/usr/lib/pypy/dist-packages/setuptools/site-patch.py
+                ;;
+            DB10)
+                SITE_PATCH=/usr/lib/python3/dist-packages/setuptools/site-patch.py
+                ;;
+            UB22*)
+                SITE_PATCH=/usr/lib/pypy/dist-packages/setuptools/site-patch.py
+                ;;
+            UB20*)
+                SITE_PATCH=/usr/lib/python3/dist-packages/setuptools/site-patch.py
+                ;;
+            FD32)
+                SITE_PATCH=/usr/lib/python3.8/site-packages/setuptools/site-patch.py
+                ;;
+            FD34)
+                SITE_PATCH=$SOURCE_DIR/addons/site-patch.py
+                ;;
+            FD36)
+                SITE_PATCH=$SOURCE_DIR/addons/site-patch.py
+                ;;
+            FD37)
+                SITE_PATCH=$SOURCE_DIR/addons/site-patch.py
+                ;;
+            FD38)
+                SITE_PATCH=$SOURCE_DIR/addons/site-patch.py
+                ;;
+            CO8*)
+                SITE_PATCH=/usr/lib/pypy/dist-packages/setuptools/site-patch.py
+                ;;
+            *)
+                SITE_PATCH=$SOURCE_DIR/addons/site-patch.py
+                ;;
+        esac
+        # check whether this file exists
+        if [ "${SITE_PATCH}" == "" ]; then
+            cp $SOURCE_DIR/addons/site-patch.py ${PRODUCT_INSTALL}/lib/python${PYTHON_VERSION}/site-packages/site.py
+        else
+            cp $SITE_PATCH ${PRODUCT_INSTALL}/lib/python${PYTHON_VERSION}/site-packages/site.py
+        fi
+    elif [ -f ${PYTHON_ROOT_DIR}/lib/python${PYTHON_VERSION}/site-packages/setuptools/site-patch.py ]; then
+        cp ${PYTHON_ROOT_DIR}/lib/python${PYTHON_VERSION}/site-packages/setuptools/site-patch.py ${PRODUCT_INSTALL}/lib/python${PYTHON_VERSION}/site-packages/site.py
+    else
+        echo "ERROR: could not find site-patch.py"
+        exit 7
+    fi
+fi
+
+cd ${PRODUCT_INSTALL}/lib
+# On some nodes, the link to OT is not done properly.
+if [[ ! -f libOT.so.0 ]]; then
+    echo "INFO: Fixing libOT.so"
+    ln -sf libOT.so.0.23.0 libOT.so.0.23
+    ln -sf libOT.so.0.23 libOT.so.0
+    ln -sf libOT.so.0 libOT.so
+fi
+
+echo
+echo "########## END"
index 5845d2ede510315428d8897fd6a48fc0b59177cf..9604b34c4fb9231bc7eab7acbf9939f80ac6b96f 100644 (file)
@@ -3,13 +3,20 @@ default :
     name : "dill"
     build_source : "script"
     compil_script :  $name + $VARS.scriptExtension
+    system_info :
+    {
+        rpm : ["python3-dill"]
+        rpm_dev : []
+        apt : ["python3-dill"]
+        apt_dev : []
+    }
     get_source : "archive"
     environ :
     {
        env_script : $name + ".py"
     }
     depend : ['Python', 'lapack', 'hdf5', 'tbb', 'nlopt', 'libxml2', 'eigen']
-       opt_depend: []
+    opt_depend: []
     patches : []
     source_dir : $APPLICATION.workdir + $VARS.sep + 'SOURCES' + $VARS.sep + $name
     build_dir : $APPLICATION.workdir + $VARS.sep + 'BUILD' + $VARS.sep + $name
index fc95c336a4d0ca05c78894b7192eb48317439bdc..4e98f173e7c1622ba1737814ff3eca10382a3ae3 100644 (file)
@@ -13,4 +13,27 @@ def set_env(env, prereq_dir, version):
     env.prepend('PYTHONPATH', os.path.join(prereq_dir, 'lib', pyver, 'site-packages'))
 
 def set_nativ_env(env):
-  pass
+    prereq_dir='/usr'
+    prereq_bin='/usr/bin'
+    prereq_inc='/usr/include'
+    try:
+        import distro
+        if any(distribution in distro.name().lower() for distribution in ["rocky", "centos", "fedora"]) :
+            prereq_dir='/usr/'
+            prereq_bin='/usr/bin'
+            prereq_inc='/usr/include'
+        elif any(distribution in distro.name().lower() for distribution in ["debian", "ubuntu"]) :
+            prereq_dir='/usr'
+            prereq_inc='/usr/include'
+    except:
+        import platform
+        if any(distribution in platform.linux_distribution()[0].lower() for distribution in ["rocky", "centos", "fedora"]) :
+            prereq_dir='/usr'
+            prereq_bin='/usr/bin'
+            prereq_inc='/usr/include'
+
+    env.set('NLOPT_ROOT_DIR', prereq_dir)
+    env.set('NLOPT_INCLUDE_DIR', prereq_inc)
+    if prereq_bin != "/usr/bin":
+        env.prepend('PATH', prereq_bin)
+    env.prepend('LD_LIBRARY_PATH', os.path.join(prereq_dir,'lib'))
index 0a47291cbd9a117ed5c912313352a3d552c6b18e..53049d2f3a55121086e4aaa04dad876167d0e0d4 100644 (file)
@@ -56,6 +56,15 @@ version_2_4_0_FD32:
 }
 
 version_2_4_0_CO8:
+{
+    compil_script :  'gdal-2.4.0.sh'
+    patches : ["gdal.0001-r2000.patch",
+               "gdal.0002-GNUmakefile-tooLongLine.patch",
+               "gdal.0003-ignore_use2to3.patch"
+              ]
+}
+
+version_2_4_0_CO8_native:
 {
     compil_script :  'gdal-2.4.0.sh'
     patches : ["gdal.0001-r2000.patch",
index eb3ac1b8f6db26fa0bf589e02f70d6bbea754fef..35677849ae5fe56ea7cd6a516b87f9cf88668485 100644 (file)
@@ -4,6 +4,13 @@ default :
     build_source : "script"
     compil_script :  $name + $VARS.scriptExtension
     get_source : "archive"
+    system_info :
+    {
+       rpm     : ["NLopt"]
+       rpm_dev : ["NLopt-devel"]
+       apt     : ["libnlopt0","libnlopt-cxx0"]
+       apt_dev : ["libnlopt-dev","libnlopt-cxx-dev" ]
+    }
     environ :
     {
        env_script : $name + ".py"
index 5bd80e95804c42fc6adf41f7b5589ae99a070bef..2e27bc82f3c2362440646f4bc149c463804214cf 100644 (file)
@@ -36,6 +36,54 @@ default_win :
     opt_depend : []
 }
 
+version_1_22 :
+{
+    compil_script :  "openturns-1.22.sh"
+    patches : []
+    depend : ['Python', 'lapack', 'hdf5', 'tbb', 'nlopt', 'libxml2', 'eigen', 'matplotlib', 'cminpack', 'FMILibrary', 'PyFMI', 'boost']
+    opt_depend : ['pandas', 'statsmodels', 'patsy']
+}
+
+version_1_22_CO7 :
+{
+    compil_script :  "openturns-1.22.sh"
+    patches : ['openturns-1.22.0001.patch']
+    depend : ['Python', 'lapack', 'hdf5', 'tbb', 'nlopt', 'libxml2', 'eigen', 'matplotlib', 'cminpack', 'FMILibrary', 'PyFMI', 'boost']
+    opt_depend : ['pandas', 'statsmodels', 'patsy']
+}
+
+version_1_22_CO8 :
+{
+    compil_script :  "openturns-1.22.sh"
+    patches : ['openturns-1.22.0001.patch']
+    depend : ['Python', 'lapack', 'hdf5', 'tbb', 'nlopt', 'libxml2', 'eigen', 'matplotlib', 'cminpack', 'FMILibrary', 'PyFMI', 'boost']
+    opt_depend : ['pandas', 'statsmodels', 'patsy']
+}
+
+version_1_22_DB09 :
+{
+    compil_script :  "openturns-1.22.sh"
+    patches : ['openturns-1.22.0001.patch']
+    depend : ['Python', 'lapack', 'hdf5', 'tbb', 'nlopt', 'libxml2', 'eigen', 'matplotlib', 'cminpack', 'FMILibrary', 'PyFMI', 'boost']
+    opt_depend : ['pandas', 'statsmodels', 'patsy']
+}
+
+version_1_22_win :
+{
+    name : "OT"
+    compil_script :  "openturns-1.22.bat"
+    source_dir : $APPLICATION.workdir + $VARS.sep + 'SOURCES' + $VARS.sep + 'openturns'
+    build_dir : $APPLICATION.workdir + $VARS.sep + 'BUILD' + $VARS.sep + $name
+    depend : ['Python', 'openblas', 'hdf5', 'tbb', 'nlopt', 'libxml2', 'eigen', 'matplotlib', 'fftw']
+    opt_depend : ['pandas', 'statsmodels', 'patsy']
+    patches : []
+    properties :
+    {
+      single_install_dir : "no"
+      incremental : "yes"
+    }
+}
+
 version_1_21 :
 {
     compil_script :  "openturns-1.21.sh"
diff --git a/products/patches/PERSALYS-f386013d-001.patch b/products/patches/PERSALYS-f386013d-001.patch
new file mode 100644 (file)
index 0000000..86b3d72
--- /dev/null
@@ -0,0 +1,11 @@
+--- PERSALYS-f386013d_ref/CMakeLists.txt       2024-04-03 13:36:52.000000000 +0200
++++ PERSALYS-f386013d_new/CMakeLists.txt       2024-04-10 13:10:40.000000000 +0200
+@@ -64,7 +64,7 @@
+   set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /bigobj")
+ endif ()
+-find_package (Boost COMPONENTS locale program_options REQUIRED)
++find_package (Boost COMPONENTS locale filesystem  program_options REQUIRED)
+ list (APPEND PERSALYS_PRIVATE_LIBRARIES ${Boost_LIBRARIES})
+ find_package (Python 3.5 COMPONENTS Interpreter Development REQUIRED)
diff --git a/products/patches/PERSALYS-f386013d-002.patch b/products/patches/PERSALYS-f386013d-002.patch
new file mode 100644 (file)
index 0000000..d3f90fa
--- /dev/null
@@ -0,0 +1,22 @@
+--- PERSALYS-f386013d_ref/lib/src/base/CMakeLists.txt  2024-04-03 13:36:53.000000000 +0200
++++ PERSALYS-f386013d_new/lib/src/base/CMakeLists.txt  2024-04-10 01:05:14.000000000 +0200
+@@ -204,6 +204,7 @@
+   target_compile_definitions (persalysbase PUBLIC PERSALYS_BASE_STATIC)
+ endif ()
++target_compile_options(persalysbase PUBLIC  -DBOOST_ALL_DYN_LINK)
+ target_include_directories (persalysbase PRIVATE ${Boost_INCLUDE_DIRS})
+ target_include_directories (persalysbase PRIVATE ${Python_INCLUDE_DIRS})
+@@ -225,9 +226,8 @@
+   target_link_libraries (persalysbase PRIVATE stdc++fs)
+ endif ()
+-target_link_libraries (persalysbase PUBLIC ${PERSALYS_PUBLIC_LIBRARIES})
+-target_link_libraries (persalysbase PRIVATE ${PERSALYS_PRIVATE_LIBRARIES})
+-
++target_link_libraries (persalysbase PUBLIC "${PERSALYS_PUBLIC_LIBRARIES};${Boost_LIBRARIES};${Boost_FILESYSTEM_LIBRARY_RELEASE}")
++target_link_libraries (persalysbase PRIVATE "${PERSALYS_PRIVATE_LIBRARIES};${Boost_LIBRARIES};${Boost_FILESYSTEM_LIBRARY_RELEASE}")
+ install (TARGETS persalysbase
+   RUNTIME DESTINATION ${PERSALYS_BIN_PATH}
+   LIBRARY DESTINATION ${PERSALYS_LIBRARY_PATH}
diff --git a/products/patches/PERSALYS-f386013d-003.patch b/products/patches/PERSALYS-f386013d-003.patch
new file mode 100644 (file)
index 0000000..35d270d
--- /dev/null
@@ -0,0 +1,14 @@
+--- PERSALYS-f386013d_ref/main/CMakeLists.txt  2024-04-03 13:36:53.000000000 +0200
++++ PERSALYS-f386013d_new/main/CMakeLists.txt  2024-04-10 14:54:37.739055374 +0200
+@@ -39,7 +39,10 @@
+ if (WIN32)
+   add_executable (persalys_launcher launcher.cxx)
+-  target_link_libraries (persalys_launcher PRIVATE Boost::program_options ws2_32)
++  target_compile_options(persalys_launcher PUBLIC  -DBOOST_ALL_DYN_LINK)
++  target_link_libraries (persalys_launcher PUBLIC Boost::program_options ws2_32 "${PERSALYS_PRIVATE_LIBRARIES};${Boost_LIBRARIES};${Boost_FILESYSTEM_LIBRARY_RELEASE}")
++  target_link_libraries (persalys_launcher PRIVATE Boost::program_options ws2_32 "${PERSALYS_PRIVATE_LIBRARIES};${Boost_LIBRARIES};${Boost_FILESYSTEM_LIBRARY_RELEASE}")
++
+   set_target_properties (persalys_launcher PROPERTIES UNITY_BUILD OFF)
+   install (TARGETS persalys_launcher DESTINATION bin)
+ endif ()
diff --git a/products/patches/PERSALYS-f386013d-004.patch b/products/patches/PERSALYS-f386013d-004.patch
new file mode 100644 (file)
index 0000000..826310a
--- /dev/null
@@ -0,0 +1,18 @@
+--- PERSALYS-f386013d_ref/main/launcher.cxx    2024-04-03 13:36:53.000000000 +0200
++++ PERSALYS-f386013d_new/main/launcher.cxx    2024-04-10 14:58:17.794900118 +0200
+@@ -22,13 +22,12 @@
+ #define BOOST_PROCESS_USE_STD_FS
+ #include <boost/process.hpp>
+ #include <boost/program_options.hpp>
+-
+-#include <filesystem>
++#include <experimental/filesystem>
+ #include <cstdlib>
+ #include <iostream>
+ namespace po = boost::program_options;
+-namespace fs = std::filesystem;
++namespace fs = std::experimental::filesystem;
+ namespace bp = boost::process;
+ int main(int argc, char *argv[])
diff --git a/products/patches/openturns-1.22.0001.patch b/products/patches/openturns-1.22.0001.patch
new file mode 100644 (file)
index 0000000..087c47a
--- /dev/null
@@ -0,0 +1,14 @@
+diff -Naur -Naur openturns/openturns-1.22/CMakeLists.txt openturns_dev/openturns-1.22/CMakeLists.txt
+--- openturns/openturns-1.22/CMakeLists.txt    2024-04-03 11:52:49.000000000 +0000
++++ openturns_dev/openturns-1.22/CMakeLists.txt        2024-04-05 08:17:28.143471039 +0000
+@@ -129,6 +129,10 @@
+   find_package (LAPACK REQUIRED)
+ endif ()
+ list (APPEND OPENTURNS_PRIVATE_LIBRARIES ${LAPACK_LIBRARIES})
++IF (DEFINED CBLAS_LIBRARIES)
++  MESSAGE(STATUS "CBLAS_LIBRARIES is defined... adding to the list of libraries ${CBLAS_LIBRARIES}")
++  LIST (APPEND OPENTURNS_PRIVATE_LIBRARIES ${CBLAS_LIBRARIES})
++ENDIF()
+ if (USE_SPECTRA)
+   find_package (Spectra 1.0 CONFIG)
index 1a33d89ccf828e41a8b54137c2def0e98262067e..5becdb93ef5a5ecf558f1c6d6f9b60fa02693c8d 100644 (file)
@@ -36,33 +36,34 @@ default :
         # specific to some platform(s)
         "CO7" :
         {
-            rpm : ["lz4", "gsl", "libgeotiff", "giflib", "geos", "fftw", "postgresql-libs", "pcllib"]
-            rpm_dev : ["perl", "gsl-devel", "libpng-devel", "libtiff-devel", "libgeotiff-devel", "giflib-devel", "geos-devel", "fftw-devel", "devtoolset-8-gcc", "texlive-dvipng"]
+            rpm : ["lz4", "gsl", "libgeotiff", "giflib", "geos", "fftw", "postgresql-libs", "pcllib", "libxml++"]
+            rpm_dev : ["perl", "gsl-devel", "libpng-devel", "libtiff-devel", "libgeotiff-devel", "giflib-devel", "geos-devel", "fftw-devel", "devtoolset-8-gcc", "texlive-dvipng", "libxml++-devel"]
         }
         "CO8" :
         {
-            rpm : ["lz4", "openmpi", "gsl", "libgeotiff", "giflib", "geos", "sqlite", "netcdf"]
-            rpm_dev : ["perl-interpreter", "qt5-devel", "openmpi-devel", "gsl-devel", "libpng-devel", "libtiff-devel", "libgeotiff-devel", "giflib-devel", "geos-devel", "netcdf-devel", "texlive-dvipng"]
+            rpm : ["lz4", "openmpi", "gsl", "libgeotiff", "giflib", "geos", "sqlite", "netcdf", "libxml++"]
+            rpm_dev : ["perl-interpreter", "qt5-devel", "openmpi-devel", "gsl-devel", "libpng-devel", "libtiff-devel", "libgeotiff-devel", "giflib-devel", "geos-devel", "netcdf-devel", "texlive-dvipng",
+                       "libxml++-devel"]
         }
         "FD30" :
         {
-           rpm : ["lz4", "gsl"]
-           rpm_dev : ["perl-interpreter", "qt5-devel", "gsl-devel", "texlive-dvipng"]
+           rpm : ["lz4", "gsl", "libxml++"]
+           rpm_dev : ["perl-interpreter", "qt5-devel", "gsl-devel", "texlive-dvipng", "libxml++-devel"]
         }
         "FD32" :
         {
-           rpm : ["lz4", "gsl", "openmpi", "netcdf", "gdal"]
-           rpm_dev : ["perl-interpreter", "qt5-devel", "gsl-devel", "openmpi-devel", "netcdf-devel", "protobuf-devel", "python3-protobuf", "texlive-dvipng"]
+           rpm : ["lz4", "gsl", "openmpi", "netcdf", "gdal", "libxml++"]
+           rpm_dev : ["perl-interpreter", "qt5-devel", "gsl-devel", "openmpi-devel", "netcdf-devel", "protobuf-devel", "python3-protobuf", "texlive-dvipng", "libxml++-devel"]
         }
         "FD34" :
         {
-           rpm : ["lz4-libs", "gsl", "openmpi", "netcdf", "gdal"]
-           rpm_dev : ["lz4-devel", "qt5-qtbase-devel", "gsl-devel", "openmpi-devel", "netcdf-devel", "gdal-devel", "texlive-dvipng"]
+           rpm : ["lz4-libs", "gsl", "openmpi", "netcdf", "gdal", "libxml++"]
+           rpm_dev : ["lz4-devel", "qt5-qtbase-devel", "gsl-devel", "openmpi-devel", "netcdf-devel", "gdal-devel", "texlive-dvipng", "libxml++-devel"]
         }
         "FD36" :
         {
-           rpm : ["lz4-libs", "gsl", "openmpi", "netcdf", "gdal"]
-           rpm_dev : ["lz4-devel", "qt5-qtbase-devel", "gsl-devel", "openmpi-devel", "netcdf-devel", "gdal-devel"]
+           rpm : ["lz4-libs", "gsl", "openmpi", "netcdf", "gdal", "libxml++"]
+           rpm_dev : ["lz4-devel", "qt5-qtbase-devel", "gsl-devel", "openmpi-devel", "netcdf-devel", "gdal-devel", "libxml++-devel"]
         }
         "DB08" :
         {
@@ -79,19 +80,31 @@ default :
         {
             apt : ["libdc1394-22", "libopenexr23", "libwebp6", "libgfortran5", "libilmbase23", "libevent-2.1-6", "libpng16-16", "libgcc-8-dev",
                    "libffi6", "libtinfo6", "libgphoto2-port12", "libglx0", "libopengl0", "libzstd1", "libglvnd0", "libjsoncpp1", "libopenblas-base", "libscotch-6.0", "openmpi-bin",
-                   "libnetcdf13", "libgdal20", "libtbb2"]
+                   "libnetcdf13", "libgdal20", "libtbb2", "libxml++2.6-2v5"]
             apt_dev : ["libtbb-dev", "cython3", "libfftw3-dev", "libopenblas-dev",
                        "qttools5-dev", "libqt5svg5-dev", "libqt5x11extras5-dev", "qtxmlpatterns5-dev-tools", "libopenmpi-dev",
-                      "libpng-dev", "libtiff5-dev", "libgeotiff-dev", "libjpeg-dev", "libgif-dev", "libgeos-dev", "libsqlite3-dev", "libnetcdf-dev", "libgdal-dev", "texlive-latex-base", "texlive-latex-extra", "dvipng"]
+                       "libpng-dev", "libtiff5-dev", "libgeotiff-dev", "libjpeg-dev", "libgif-dev", "libgeos-dev", "libsqlite3-dev", "libnetcdf-dev", "libgdal-dev",
+                       "texlive-latex-base", "texlive-latex-extra", "dvipng", "libxml++2.6-dev"]
         }
         "DB11" :
         {
             apt : ["libdc1394-25", "libopenexr25", "libwebp6", "libgfortran5", "libilmbase25", "libevent-2.1-7", "libpng16-16", "libgcc-10-dev",
                    "libffi7", "libtinfo6", "libgphoto2-port12", "libglx0", "libopengl0", "libzstd1", "libglvnd0", "libjsoncpp24",
-                  "openmpi-bin", "libnetcdf18", "libgdal28", "libtbb2", "pypy-setuptools"]
+                   "openmpi-bin", "libnetcdf18", "libgdal28", "libtbb2", "pypy-setuptools", "libxml++2.6-2v5"]
             apt_dev : ["libtbb-dev", "cython3", "libfftw3-dev", "libopenblas-dev",
                        "qttools5-dev", "libqt5svg5-dev", "libqt5x11extras5-dev", "qtxmlpatterns5-dev-tools", "libopenmpi-dev",
-                      "libpng-dev", "libtiff5-dev", "libgeotiff-dev", "libjpeg-dev", "libgif-dev", "libgeos-dev", "libsqlite3-dev", "libnetcdf-dev", "libgdal-dev", "texlive-latex-base", "texlive-latex-extra", "dvipng"]
+                       "libpng-dev", "libtiff5-dev", "libgeotiff-dev", "libjpeg-dev", "libgif-dev", "libgeos-dev", "libsqlite3-dev", "libnetcdf-dev", "libgdal-dev",
+                       "texlive-latex-base", "texlive-latex-extra", "dvipng", "libxml++2.6-dev"]
+        }
+        "DB12" :
+        {
+            apt : ["libdc1394-25", "libopenexr-3-1-30", "libwebp6", "libgfortran5", "libevent-2.1-7", "libpng16-16", "libgcc",
+                   "libffi7", "libtinfo6", "libgphoto2-port12", "libglx0", "libopengl0", "libzstd1", "libglvnd0", "libjsoncpp25",
+                   "openmpi-bin", "libnetcdf19", "libgdal32", "libtbb12", "python3-setuptools", "libxml++2.6-2v5"]
+            apt_dev : ["libtbb-dev", "cython3", "libfftw3-dev", "libopenblas-dev",
+                       "qttools5-dev", "libqt5svg5-dev", "libqt5x11extras5-dev", "qtxmlpatterns5-dev-tools", "libopenmpi-dev",
+                       "libpng-dev", "libtiff5-dev", "libgeotiff-dev", "libjpeg-dev", "libgif-dev", "libgeos-dev", "libsqlite3-dev", "libnetcdf-dev", "libgdal-dev",
+                       "texlive-latex-base", "texlive-latex-extra", "dvipng", "libxml++2.6-dev"]
         }
         "UB16.04" :
         {
@@ -102,25 +115,27 @@ default :
         "UB18.04" :
         {
             apt : ["libdc1394-22", "libopenexr22", "libwebp6", "libgfortran4", "libilmbase12", "libevent-2.1-6", "libpng16-16", "libgcc-7-dev",
-                   "libffi6", "libtinfo5", "libgphoto2-port12", "libglx0", "libopengl0", "libzstd1", "libglvnd0", "libopenblas-base", "libgeos-c1v5", "libtbb2"]
+                   "libffi6", "libtinfo5", "libgphoto2-port12", "libglx0", "libopengl0", "libzstd1", "libglvnd0", "libopenblas-base", "libgeos-c1v5", "libtbb2", "libxml++2.6"]
             apt_dev : ["libtbb-dev", "cython3", "libfftw3-dev", "libopenblas-dev",
-                      "libpng-dev", "libtiff5-dev", "libgeotiff-dev", "libjpeg-dev", "libgif-dev", "libgeos-dev", "libsqlite3-dev", "dvipng"]
+                       "libpng-dev", "libtiff5-dev", "libgeotiff-dev", "libjpeg-dev", "libgif-dev", "libgeos-dev", "libsqlite3-dev", "dvipng", "libxml++2.6-dev"]
         }
         "UB20.04" :
         {
             apt : ["libdc1394-22", "libopenexr24", "libwebp6", "libgfortran5", "libilmbase24", "libevent-2.1-7", "libpng16-16", "libgcc-9-dev",
-                   "libffi7", "libtinfo6", "libgphoto2-port12", "libglx0", "libopengl0", "libzstd1", "libglvnd0", "openmpi-bin", "libgdal26", "libopenblas0-serial", "libtbb2"]
+                   "libffi7", "libtinfo6", "libgphoto2-port12", "libglx0", "libopengl0", "libzstd1", "libglvnd0", "openmpi-bin", "libgdal26", "libopenblas0-serial", "libtbb2",
+                   "libxml++2.6-2v5"]
             apt_dev : ["libtbb-dev", "cython3", "libfftw3-dev", "libopenblas-dev",
                        "qttools5-dev", "libqt5svg5-dev", "libqt5x11extras5-dev", "qtxmlpatterns5-dev-tools", "libopenmpi-dev",
-                      "libpng-dev", "libtiff5-dev", "libgeotiff-dev", "libjpeg-dev", "libgif-dev", "libgeos-dev", "libsqlite3-dev", "libgdal-dev", "dvipng"]
+                       "libpng-dev", "libtiff5-dev", "libgeotiff-dev", "libjpeg-dev", "libgif-dev", "libgeos-dev", "libsqlite3-dev", "libgdal-dev", "dvipng", "libxml++2.6-dev"]
         }
         "UB22.04" :
         {
             apt : ["libdc1394-25", "libopenexr25", "libwebp7", "gfortran-11", "libilmbase25", "libevent-2.1-7", "libpng16-16", "libgcc-11-dev",
-                   "libffi7", "libtinfo6", "libgphoto2-port12", "libglx0", "libopengl0", "libzstd1", "libglvnd0", "openmpi-bin", "libgdal30", "libopenblas0-serial", "libtbb12"]
+                   "libffi7", "libtinfo6", "libgphoto2-port12", "libglx0", "libopengl0", "libzstd1", "libglvnd0", "openmpi-bin", "libgdal30", "libopenblas0-serial", "libtbb12",
+                   "libxml++2.6-2v5"]
             apt_dev : ["libtbb-dev", "cython3", "libfftw3-dev", "libopenblas-dev",
                        "qttools5-dev", "libqt5svg5-dev", "libqt5x11extras5-dev", "qtxmlpatterns5-dev-tools", "libopenmpi-dev",
-                      "libpng-dev", "libtiff5-dev", "libgeotiff-dev", "libjpeg-dev", "libgif-dev", "libgeos-dev", "libsqlite3-dev", "libgdal-dev", "dvipng"]
+                       "libpng-dev", "libtiff5-dev", "libgeotiff-dev", "libjpeg-dev", "libgif-dev", "libgeos-dev", "libsqlite3-dev", "libgdal-dev", "dvipng", "libxml++2.6-dev"]
         }
         
     }