]> SALOME platform Git repositories - tools/sat_salome.git/commitdiff
Salome HOME
bos #33720: build PERSALYS with Visual C++ 2017
authorNabil Ghodbane <nabil.ghodbane@cea.fr>
Mon, 22 May 2023 07:44:49 +0000 (09:44 +0200)
committerNabil Ghodbane <nabil.ghodbane@cea.fr>
Mon, 22 May 2023 07:44:49 +0000 (09:44 +0200)
21 files changed:
applications/SALOME-master-windows.pyconf
products/FMILibrary.pyconf
products/OPENTURNS_SALOME.pyconf
products/PERSALYS.pyconf
products/PyFMI.pyconf
products/YACS.pyconf
products/cminpack.pyconf
products/compil_scripts/OPENTURNS_SALOME.bat [new file with mode: 0644]
products/compil_scripts/PERSALYS-v14.0.1.bat
products/compil_scripts/PyFMI-2.6.bat [new file with mode: 0644]
products/compil_scripts/openturns-1.20.1.bat
products/env_scripts/PERSALYS.py
products/env_scripts/openturns.py
products/openturns.pyconf
products/patches/PERSALYS-v14.0.1-001.patch [new file with mode: 0644]
products/patches/cminpack-1.3.6-openblas.patch [new file with mode: 0644]
products/patches/openturns-1.20.1.0004.patch [new file with mode: 0644]
products/patches/openturns-1.20.1.0005.patch [new file with mode: 0644]
products/patches/openturns-1.20.1.004.patch [deleted file]
products/patches/openturns_salome.001.patch [new file with mode: 0644]
products/patches/yacs.persalys-14.0.1.patch [new file with mode: 0644]

index 207404a769e5486c7b0c192f06f876bbe46deab4..1b9dc2b9eb86eabded5d04f251f2b62eea40d650 100644 (file)
@@ -59,6 +59,7 @@ APPLICATION :
         embree : '3.12.2'
         expat : '2.0.1'
         f2c : '1.0.0'
+        FMILibrary : '2.0.3'
         freeimage : '3.18.0'
         freetype : '2.9.1'
         gmsh : '4.10.3'
@@ -95,12 +96,13 @@ APPLICATION :
         ospray : '2.4.0'
         packaging : '19.0'
         ParaView : {tag:'5.11.0', base: 'no',  section: 'version_5_11_0'}
-        #PERSALYS: 'v14.0.1'
+        PERSALYS: 'v14.0.1'
         perl : '5.28.1.1'
         Pillow : '7.1.1'
         planegcs : '0.18-3cb6890'
         psutil : '5.7.2'
         pthreads : '2.9.1'
+        PyFMI : '2.6'
         Pygments : '2.4.2'
         pyparsing : '2.4.0'
         PyQt : '5.15.3'
@@ -173,7 +175,7 @@ APPLICATION :
         'ADAO'
         'PARAVISADDONS'
         'PY2CPP'
-        #'OPENTURNS_SALOME'
+        'OPENTURNS_SALOME'
         #'YDEFX'
         'pmml'
         'TESTBASE'
@@ -202,7 +204,7 @@ __overwrite__ :
 [
   {
     __condition__ : "APPLICATION.debug == 'yes'"
-    'APPLICATION.rm_products' : ['matplotlib', 'openturns', 'scipy', 'Pillow']
+    'APPLICATION.rm_products' : ['matplotlib', 'openturns', 'scipy', 'Pillow', 'PERSALYS', 'OPENTURNS_SALOME', 'cminpack', 'openblas', 'FMILibrary', 'PyFMI']
     # TODO: cmake 3.24 screws things up by adding _d suffix to debug libraries to KERNEL
     'APPLICATION.products.cmake'      : {tag: '3.12.1',  base: 'no', section : 'version_3_12_1'             }
     'APPLICATION.products.numpy'      : {tag: '1.16.4',  base: 'no', section : 'version_1_16_4_win_dbg'     }
index 1ac79b510567cdb3d4bf9f2c0131a34529def078..bd07ea37c18f9da1f8ab7fd97ae3c1016956ba47 100644 (file)
@@ -27,9 +27,9 @@ default_win :
     compil_script :  'pip_install' + $VARS.scriptExtension
     properties :
     {
-      single_install_dir : "yes"
+      single_install_dir : "no"
       incremental : "yes"
-      pip : "yes"
+      pip : "no"
     }
     depend : ['Python', 'lapack', 'hdf5', 'tbb', 'nlopt', 'libxml2', 'eigen', 'pthreads']
     opt_depend : []
@@ -38,4 +38,4 @@ default_win :
 version_2_0_3 :
 {
    patches : ['FMILibrary-2.0.3-installdir.patch']
-}
\ No newline at end of file
+}
index 770d3932d7f32d52b0a780e2cd3a79d8fee35913..d28f5fe83ec73442e7857bae9df8d7aac9196bb5 100644 (file)
@@ -21,9 +21,9 @@ default :
     depend : [
               'KERNEL',
               'GUI',
-             'PERSALYS',
-             'gdal',
-             'YACS'
+              'PERSALYS',
+              'gdal',
+              'YACS'
              ]
     build_depend : ["cmake", "swig", "doxygen"]
     source_dir : $APPLICATION.workdir + $VARS.sep + 'SOURCES' + $VARS.sep + $name
@@ -35,4 +35,22 @@ default :
         incremental : "yes"
         has_unit_tests : "yes"
     }
+    patches : []
+}
+
+default_win :
+{
+    name : "OPENTURNS"
+    build_source : "script"
+    compil_script : "OPENTURNS_SALOME.bat"
+    source_dir : $APPLICATION.workdir + $VARS.sep + 'SOURCES' + $VARS.sep + "OPENTURNS_SALOME"
+    build_dir : $APPLICATION.workdir + $VARS.sep + 'BUILD' + $VARS.sep + $name
+    depend : [
+              'KERNEL',
+              'GUI',
+              'PERSALYS',
+              'YACS',
+              'openturns'
+             ]
+    patches : ['openturns_salome.001.patch']
 }
index 9a937cf7c240c4c58c9daa5b22c987ebccf880b9..164af14f74d26a136f5b8e4e50fa43a509f3370c 100644 (file)
@@ -83,12 +83,16 @@ version_v14_0_1_win :
               'qt',
               'ParaView',
               'openturns',
+              'FMILibrary',
+              'PyFMI',
               'YACS',
               #'YDEFX',
               'CAS',
               'CONFIGURATION',
-              'openblas'
+              'openblas',
+              'pthreads'
            ]
+    patches : ["PERSALYS-v14.0.1-001.patch"]
 }
 
 version_v13_0 :
index 47d5874bf3941a2d62cd1b9e15d5f51b1041b4ca..e7261fe0a7c5b6524111e0780ec2f4a740844ca0 100644 (file)
@@ -37,6 +37,20 @@ version_2_6_no_pip :
     }
 }
 
+version_2_6 :
+{
+}
+
+version_2_6_win :
+{
+    compil_script : "PyFMI-2.6.bat"
+    properties:
+    {
+      incremental : "yes"
+      pip : "no"
+    }
+}
+
 version_2_6_UB22_04:
 {
     patches: ['pyfmi-2.6-python-3.1x.01.patch']
index ec4d021ef14ff2c8ffbe45c35d29c8902accd0ee..1a2ef6507c908bd49f8daa4cb3999a5e328c7eab 100644 (file)
@@ -44,8 +44,14 @@ default :
         has_unit_tests
         incremental : "yes"
     }
+    patches : []
 } 
 
+default_win :
+{
+  patches : ['yacs.persalys-14.0.1.patch']
+}
+
 version_9_2_0_to_9_8_0 :
 {
     cmake_options : ""
index aee72dfa2a8be42749635df3fbc509ef833ec835..ac75ad0c2ae78f317cc03c3b984da65273600b2b 100644 (file)
@@ -43,5 +43,5 @@ version_1_3_6_win:
     build_depend : ["cmake", "swig"]
     opt_depend : ['openmpi']    
     compil_script: 'cminpack-1.3.6.bat'
-    patches : []
+    patches : ["cminpack-1.3.6-openblas.patch"]
 }
diff --git a/products/compil_scripts/OPENTURNS_SALOME.bat b/products/compil_scripts/OPENTURNS_SALOME.bat
new file mode 100644 (file)
index 0000000..2c49ef3
--- /dev/null
@@ -0,0 +1,159 @@
+@echo off
+
+echo ##########################################################################
+echo OPENTURNS_SALOME %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
+rem 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
+rem 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
+
+SET CMAKE_OPTIONS=%CMAKE_OPTIONS% -DPersalys_DIR=%PERSALYS_ROOT_DIR:\=/% -DOPENTURNS_HOME=%OPENTURNS_HOME:\=/%
+SET CMAKE_OPTIONS=%CMAKE_OPTIONS% -DCMAKE_WINDOWS_EXPORT_ALL_SYMBOLS=ON
+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 "Visual Studio 15 2017 Win64" %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"
index ce69e385108dada2134322b2ca66a051470edd44..459f1b126a2c44e913add552bfd8814becd96f2d 100644 (file)
@@ -28,7 +28,7 @@ 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% -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
@@ -39,17 +39,27 @@ set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DLIBXML2_LIBRARIES:STRING=%LIBXML2_ROOT_DIR:\
 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
@@ -59,14 +69,26 @@ 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:\=/%
-SET CMAKE_OPTIONS=%CMAKE_OPTIONS% -DBOOST_ROOT:PATH=%BOOST_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
-REM SET CMAKE_OPTIONS=%CMAKE_OPTIONS% -DOpenTURNS_DIR=$OT_ROOT_DIR/lib/cmake/openturns
+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
 rem 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:\=/%
@@ -80,7 +102,9 @@ 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
-REM CMAKE_OPTIONS+=" -DSWIG_EXECUTABLE:PATH=$(which swig)"
+
+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
 
 
@@ -107,12 +131,12 @@ if NOT %ERRORLEVEL% == 0 (
 
 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 /p:CharacterSet=Unicode ALL_BUILD.vcxproj
 
 echo *********************************************************************
 echo.
 
-msbuild %MAKE_OPTIONS% /p:Configuration=%PRODUCT_BUILD_TYPE% /p:Platform=x64 ALL_BUILD.vcxproj
+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
@@ -124,7 +148,7 @@ echo *** installation...
 echo *********************************************************************
 echo.
 
-msbuild %MAKE_OPTIONS% /p:Configuration=%PRODUCT_BUILD_TYPE% /p:Platform=x64 INSTALL.vcxproj
+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
diff --git a/products/compil_scripts/PyFMI-2.6.bat b/products/compil_scripts/PyFMI-2.6.bat
new file mode 100644 (file)
index 0000000..fff8441
--- /dev/null
@@ -0,0 +1,59 @@
+@echo off
+
+echo ##########################################################################
+echo PyFMI %VERSION%
+echo ##########################################################################
+
+SET INSTALL_CENTRALLY=1
+REM retrieve the PRODUCT name...
+for %%i in (%PRODUCT_INSTALL%) do set "PRODUCT_NAME=%%~nxi"
+echo ##########################################################################
+echo *** Installing %PRODUCT_NAME% version: %VERSION%
+echo ##########################################################################
+
+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 %SOURCE_DIR%
+
+set INSTALL_LIB=%PRODUCT_INSTALL%\lib\python%PYTHON_VERSION%\site-packages
+if NOT exist "%INSTALL_LIB%" mkdir %INSTALL_LIB%
+set PYTHONPATH=%INSTALL_LIB%;%PYTHONPATH%
+
+echo.
+echo ##########################################################################
+echo *** Launching "python.exe setup.py build"
+echo ##########################################################################
+
+%PYTHON_ROOT_DIR%\python.exe setup.py build --build-base %BUILD_DIR% --build-temp %BUILD_DIR%
+if NOT %ERRORLEVEL% == 0 (
+    echo ERROR on setup.py build
+    exit 1
+)
+
+echo.
+echo ##########################################################################
+echo *** Launching "python.exe setup.py install"
+echo ##########################################################################
+
+if %INSTALL_CENTRALLY% == 1 (
+    %PYTHON_ROOT_DIR%\python.exe setup.py install
+) else (
+    %PYTHON_ROOT_DIR%\python.exe setup.py install --prefix=%PRODUCT_INSTALL% --install-lib=%INSTALL_LIB% 
+)
+
+if NOT %ERRORLEVEL% == 0 (
+    echo ERROR on setup.py install
+    exit 2
+)
+if %INSTALL_CENTRALLY% == 1 (
+    @echo off
+    @echo Product %PRODUCT_NAME% version: %VERSION%> %PRODUCT_INSTALL%\README.txt
+    @echo Installation folder: %PYTHON_ROOT_DIR%>> %PRODUCT_INSTALL%\README.txt
+)
+
+echo.
+echo ########## END
+
index 710ef259ec7abb9203db140e6da386fbe9e9b828..9a19491aa379f0529a7de52ee259db54d3c9ff2b 100644 (file)
@@ -114,5 +114,78 @@ if NOT %ERRORLEVEL% == 0 (
     exit 3
 )
 
+set PATH=%PRODUCT_INSTALL%\bin;%PRODUCT_INSTALL%\lib;%PATH%
+set PYTHONPATH=%PRODUCT_INSTALL%\lib\site-packages;%PYTHONPATH%
+
+echo ##########################################################################
+echo otmorris 0.13
+echo ##########################################################################
+cd %BUILD_DIR%
+mkdir otmorris
+
+set CMAKE_OPTIONS_EXT=%CMAKE_OPTIONS% 
+cd  %BUILD_DIR%\otmorris
+
+set MSBUILDDISABLENODEREUSE=1
+
+echo.
+echo *********************************************************************
+echo *** %CMAKE_ROOT%\bin\cmake %CMAKE_OPTIONS% %SOURCE_DIR%\otmorris-0.13
+echo *********************************************************************
+echo.
+
+%CMAKE_ROOT%\bin\cmake -G "Visual Studio 15 2017 Win64" %CMAKE_OPTIONS% %SOURCE_DIR%\otmorris-0.13
+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 *********************************************************************
+echo.
+
+REM ON PURPOSE, we CONTINUE if fails since the error are about porting some NR to Windows native build (openturns team uses mingw)
+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, please check!
+    REM exit 2
+)
+
+echo.
+echo *********************************************************************
+echo *** installation...
+echo *********************************************************************
+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
+)
+
+
+echo ##########################################################################
+echo otfmi 0.15
+echo ##########################################################################
+cd %BUILD_DIR%
+mkdir otfmi
+
+set CMAKE_OPTIONS_EXT=%CMAKE_OPTIONS% 
+cd  %BUILD_DIR%\otfmi
+xcopy %SOURCE_DIR%\otfmi-0.15\*   %BUILD_DIR%\otfmi /E /I /Q
+if NOT %ERRORLEVEL% == 0 (
+    echo ERROR on xcopy
+    exit 3
+)
+
+REM %PYTHON_ROOT_DIR%\python.exe setup.py install --prefix=%PRODUCT_INSTALL%
+REM if NOT %ERRORLEVEL% == 0 (
+    REM echo ERROR on python setup.py
+    REM exit 3
+REM )
+
 echo
 echo "########## END"
index 3d46788f2ae496edaddfe9421e71154c447366a6..f3724c49eb8f73f0063f97e18648d33503a77b52 100644 (file)
@@ -6,6 +6,7 @@ def set_env(env, prereq_dir, version):
     env.set('PERSALYS_ROOT_DIR', prereq_dir)
     env.set('PERSALYS_VERSION',version)
     env.set('OTGUI_DIR', prereq_dir)
+    env.set('OTGUI_ROOT_DIR', prereq_dir)
     env.prepend('PATH', os.path.join(prereq_dir,'bin'))
     env.prepend('LD_LIBRARY_PATH', os.path.join(prereq_dir, 'lib'))
     env.prepend('PV_PLUGIN_PATH', os.path.join(prereq_dir, 'lib', pvversion, 'plugins'))
index c1f6ad0b29a1ca3b68e2946632d44dc77ebd2f2d..988da40b093cd234080959cc4355b99b88088d6a 100644 (file)
@@ -3,6 +3,7 @@ import os.path
 import platform
 def set_env(env, prereq_dir, version):
     env.set('OT_ROOT_DIR', prereq_dir)
+    env.set('OPENTURNS_HOME', prereq_dir)
     env.set('OT_HOME', prereq_dir)
     env.set('OT_VERSION',version)
     env.prepend('PATH', os.path.join(prereq_dir,'bin'))
index 54ca69c3cd2eec01812ef06bffb397713b7a2ec6..e24043c0b707780730bf86205fafacb83587416a 100644 (file)
@@ -24,6 +24,7 @@ default :
 
 default_win :
 {
+    name : "OT"
     compil_script :  'pip_install' + $VARS.scriptExtension
     properties :
     {
@@ -45,10 +46,14 @@ version_1_20_1 :
 
 version_1_20_1_win :
 {
+    name : "OT"
+    source_dir : $APPLICATION.workdir + $VARS.sep + 'SOURCES' + $VARS.sep + 'openturns'
+    build_dir : $APPLICATION.workdir + $VARS.sep + 'BUILD' + $VARS.sep + $name
+    install_dir : 'base'
     compil_script :  "openturns-1.20.1.bat"
     depend : ['Python', 'openblas', 'hdf5', 'tbb', 'nlopt', 'libxml2', 'eigen', 'matplotlib']
     opt_depend : []
-    patches : ["openturns-1.20.1.004.patch"]
+    patches : ["openturns-1.20.1.0004.patch", "openturns-1.20.1.0005.patch"]
     properties :
     {
       single_install_dir : "no"
@@ -167,7 +172,7 @@ version_1_19_win :
 version_1_19_UB22_04 :
 {
     compil_script :  "openturns-1.19" + $VARS.scriptExtension
-    patches : ['openturns-1.19.0001.patch', 'openturns-1.19.0003.patch', 'openturns-1.19.0004.patch']
+    patches : ['openturns-1.19.0001.patch', 'openturns-1.19.0003.patch']
     depend : ['Python', 'lapack', 'hdf5', 'tbb', 'nlopt', 'libxml2', 'eigen', 'matplotlib', 'cminpack', 'FMILibrary', 'PyFMI']
     opt_depend : ['pandas', 'statsmodels']
 }
diff --git a/products/patches/PERSALYS-v14.0.1-001.patch b/products/patches/PERSALYS-v14.0.1-001.patch
new file mode 100644 (file)
index 0000000..80d1373
--- /dev/null
@@ -0,0 +1,99 @@
+diff -Naur persalys_v14.0.1_ref/CMakeLists.txt persalys_v14.0.1_dev/CMakeLists.txt
+--- persalys_v14.0.1_ref/CMakeLists.txt        2023-03-31 08:59:27.000000000 +0200
++++ persalys_v14.0.1_dev/CMakeLists.txt        2023-05-22 09:09:43.385983013 +0200
+@@ -43,8 +43,19 @@
+   list (APPEND PERSALYS_DEFINITIONS "-DPERSALYS_STATIC -DPYINTERP_STATIC -DPYCONSOLE_STATIC")
+ endif ()
++SET(BOOST_ROOT_DIR $ENV{BOOST_ROOT_DIR} CACHE PATH "Path to the Boost")
++if(EXISTS "${BOOST_ROOT_DIR}")
++  set(BOOST_ROOT "${BOOST_ROOT_DIR}" CACHE PATH "Boost root directory" FORCE)
++endif()
++set(Boost_USE_DEBUG_LIBS   OFF) # ignore debug libs and
++set(Boost_USE_RELEASE_LIBS ON)  # only find release libslist (APPEND PERSALYS_PRIVATE_LIBRARIES ${Boost_LIBRARIES})
+ find_package (Boost COMPONENTS filesystem locale REQUIRED)
+-list (APPEND PERSALYS_PRIVATE_LIBRARIES ${Boost_LIBRARIES})
++if (TARGET Boost::filesystem)
++  set (Boost_LIBRARIES Boost::filesystem Boost::locale)
++ENDIF()
++
++set(Boost_FILESYSTEM_LIBRARY_DEBUG   "${BOOST_ROOT_DIR}/lib/boost_filesystem-vc141-mt-x64-1_67.lib" CACHE FILEPATH "" FORCE)
++set(Boost_FILESYSTEM_LIBRARY_RELEASE "${BOOST_ROOT_DIR}/lib/boost_filesystem-vc141-mt-x64-1_67.lib" CACHE FILEPATH "" FORCE)
+ find_package (Python 3.5 COMPONENTS Interpreter Development REQUIRED)
+ list (APPEND PERSALYS_PUBLIC_LIBRARIES ${Python_LIBRARIES})
+diff -Naur persalys_v14.0.1_ref/cmake/FindQwt.cmake persalys_v14.0.1_dev/cmake/FindQwt.cmake
+--- persalys_v14.0.1_ref/cmake/FindQwt.cmake   2023-03-31 08:59:27.000000000 +0200
++++ persalys_v14.0.1_dev/cmake/FindQwt.cmake   2023-05-20 15:44:03.000000000 +0200
+@@ -78,6 +78,7 @@
+ endif ()
++SET(QWT_DEFINITIONS "-DQWT_DLL")
+ find_library (QWT_LIBRARY
+   NAMES qwt qwt-qt${QT_DEFAULT_MAJOR_VERSION}
+   HINTS ${QT_LIBRARY_DIR}
+diff -Naur /export/home/catB/ng780475/PERSALYS_FINAL/1/persalys_v14.0.1_ref/lib/src/base/CMakeLists.txt /export/home/catB/ng780475/PERSALYS_FINAL/1/persalys_v14.0.1_dev/lib/src/base/CMakeLists.txt
+--- /export/home/catB/ng780475/PERSALYS_FINAL/1/persalys_v14.0.1_ref/lib/src/base/CMakeLists.txt       2023-03-31 08:59:27.000000000 +0200
++++ /export/home/catB/ng780475/PERSALYS_FINAL/1/persalys_v14.0.1_dev/lib/src/base/CMakeLists.txt       2023-05-22 09:13:05.971858911 +0200
+@@ -203,6 +203,7 @@
+ else ()
+   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})
+@@ -220,8 +221,8 @@
+ set_target_properties (persalysbase PROPERTIES VERSION ${LIB_VERSION})
+ set_target_properties (persalysbase PROPERTIES SOVERSION ${LIB_SOVERSION})
+-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 bin
+diff -Naur /export/home/catB/ng780475/PERSALYS_FINAL/1/persalys_v14.0.1_ref/lib/src/view/plot/CMakeLists.txt /export/home/catB/ng780475/PERSALYS_FINAL/1/persalys_v14.0.1_dev/lib/src/view/plot/CMakeLists.txt
+--- /export/home/catB/ng780475/PERSALYS_FINAL/1/persalys_v14.0.1_ref/lib/src/view/plot/CMakeLists.txt  2023-03-31 08:59:27.000000000 +0200
++++ /export/home/catB/ng780475/PERSALYS_FINAL/1/persalys_v14.0.1_dev/lib/src/view/plot/CMakeLists.txt  2023-05-20 15:45:57.000000000 +0200
+@@ -47,9 +47,9 @@
+ if (BUILD_SHARED_LIBS)
+   target_compile_definitions (persalysplot PRIVATE PERSALYS_PLOT_DLL_EXPORTS)
+ else ()
+-  target_compile_definitions (persalysplot PUBLIC PERSALYS_PLOT_STATIC)
++  target_compile_definitions (persalysplot PUBLIC PERSALYS_PLOT_STATIC )
+ endif ()
+-
++target_compile_options(persalysplot PUBLIC  -DQWT_DLL)
+ if ( NOT DEFINED LIB_VERSION ) 
+   set ( LIB_VERSION 0.0.0 )
+ endif ()
+diff -Naur /export/home/catB/ng780475/PERSALYS_FINAL/1/persalys_v14.0.1_ref/lib/src/view/utils/persalys/TimeLineEdit.hxx /export/home/catB/ng780475/PERSALYS_FINAL/1/persalys_v14.0.1_dev/lib/src/view/utils/persalys/TimeLineEdit.hxx
+--- /export/home/catB/ng780475/PERSALYS_FINAL/1/persalys_v14.0.1_ref/lib/src/view/utils/persalys/TimeLineEdit.hxx      2023-03-31 08:59:27.000000000 +0200
++++ /export/home/catB/ng780475/PERSALYS_FINAL/1/persalys_v14.0.1_dev/lib/src/view/utils/persalys/TimeLineEdit.hxx      2023-05-20 14:53:23.000000000 +0200
+@@ -32,9 +32,9 @@
+ public:
+   // constructor with text
+-  TimeLineEdit(const QString text = "", QWidget *parent = 0);
++  TimeLineEdit(const QString &text, QWidget *parent = nullptr);
+   // constructor with seconds
+-  TimeLineEdit(const unsigned int seconds = 0, QWidget *parent = 0);
++  TimeLineEdit(const unsigned int seconds = 0, QWidget *parent = nullptr);
+   int getSeconds() const;
+   void setSeconds(const int seconds);
+diff -Naur /export/home/catB/ng780475/PERSALYS_FINAL/1/persalys_v14.0.1_ref/lib/src/view/utils/TimeLineEdit.cxx /export/home/catB/ng780475/PERSALYS_FINAL/1/persalys_v14.0.1_dev/lib/src/view/utils/TimeLineEdit.cxx
+--- /export/home/catB/ng780475/PERSALYS_FINAL/1/persalys_v14.0.1_ref/lib/src/view/utils/TimeLineEdit.cxx       2023-03-31 08:59:27.000000000 +0200
++++ /export/home/catB/ng780475/PERSALYS_FINAL/1/persalys_v14.0.1_dev/lib/src/view/utils/TimeLineEdit.cxx       2023-05-20 14:53:33.000000000 +0200
+@@ -26,7 +26,7 @@
+ namespace PERSALYS
+ {
+-TimeLineEdit::TimeLineEdit(const QString text, QWidget *parent)
++TimeLineEdit::TimeLineEdit(const QString& text, QWidget *parent)
+   : QLineEdit(parent)
+ {
+   setInputMask("999\\d\\ 99\\h\\ 99\\m\\ 99\\s");
diff --git a/products/patches/cminpack-1.3.6-openblas.patch b/products/patches/cminpack-1.3.6-openblas.patch
new file mode 100644 (file)
index 0000000..1128b55
--- /dev/null
@@ -0,0 +1,27 @@
+diff -Naur  cminpack-1.3.6_ref/CMakeLists.txt cminpack-1.3.6_dev/CMakeLists.txt
+--- cminpack-1.3.6_ref/CMakeLists.txt  2017-02-24 16:09:31.000000000 +0100
++++ cminpack-1.3.6_dev/CMakeLists.txt  2023-05-22 09:19:37.416506078 +0200
+@@ -69,6 +69,8 @@
+ # Link with a BLAS library if requested
+ if (USE_BLAS)
++  SET(BLAS_ROOT_DIR $ENV{BLAS_ROOT_DIR} CACHE PATH "Path to the BLAS.")
++  SET(BLAS_INCLUDE_DIRS "${BLAS_ROOT_DIR}/include/openblas")
+   if (NOT BUILD_SHARED_LIBS)
+     set(BLA_STATIC True)
+   endif()
+@@ -77,6 +79,7 @@
+     target_link_libraries(cminpack PUBLIC ${BLAS_LIBRARIES})
+     set_target_properties(cminpack PROPERTIES LINK_FLAGS "${BLAS_LINKER_FLAGS}")
+     target_compile_definitions(cminpack PUBLIC -DUSE_CBLAS)
++        include_directories(${BLAS_ROOT_DIR}/include/openblas)
+   endif()
+ endif()
+@@ -94,4 +97,4 @@
+ set_target_properties(cminpack PROPERTIES VERSION ${CMINPACK_VERSION} SOVERSION ${CMINPACK_SOVERSION})
+ add_subdirectory (cmake)
+-add_subdirectory (examples)
+\ Pas de fin de ligne à la fin du fichier
++add_subdirectory (examples)
diff --git a/products/patches/openturns-1.20.1.0004.patch b/products/patches/openturns-1.20.1.0004.patch
new file mode 100644 (file)
index 0000000..1689f7d
--- /dev/null
@@ -0,0 +1,31 @@
+diff -Naur openturns-1.20.1_ref/openturns-1.20.1/CMakeLists.txt openturns-1.20.1_dev/openturns-1.20.1/CMakeLists.txt
+--- openturns-1.20.1_ref/openturns-1.20.1/CMakeLists.txt       2023-04-07 09:47:43.000000000 +0200
++++ openturns-1.20.1_dev/openturns-1.20.1/CMakeLists.txt       2023-05-17 10:52:58.551422902 +0200
+@@ -40,6 +40,15 @@
+ option (BUILD_PYTHON                 "Build the python module for the library"                               ON)
+ option (BUILD_SHARED_LIBS            "Build shared libraries"                                                ON)
++ADD_DEFINITIONS(-D_CRT_SECURE_NO_WARNINGS)  # To disable windows warnings for strcpy, fopen, ...
++ADD_DEFINITIONS(-D_SCL_SECURE_NO_WARNINGS)  # To disable windows warnings generated by checked iterators(e.g. std::copy, std::transform, ...)
++ADD_DEFINITIONS(-DWNT -DWIN32)
++ADD_DEFINITIONS(-D_WIN32_WINNT=0x0500)      # Windows 2000 or later API is required
++ADD_DEFINITIONS(-DPPRO_NT)
++ADD_DEFINITIONS(-DNOMINMAX)
++
++SET(SWIG_ROOT_DIR $ENV{SWIG_ROOT_DIR} CACHE PATH "Path to the SWIG.")
++
+ # Defines our own module path
+ list (APPEND CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/cmake)
+diff -Naur openturns-1.20.1_ref/openturns-1.20.1/python/src/CMakeLists.txt openturns-1.20.1_dev/openturns-1.20.1/python/src/CMakeLists.txt
+--- openturns-1.20.1_ref/openturns-1.20.1/python/src/CMakeLists.txt    2023-04-07 09:47:43.000000000 +0200
++++ openturns-1.20.1_dev/openturns-1.20.1/python/src/CMakeLists.txt    2023-05-17 10:49:29.386285353 +0200
+@@ -16,7 +16,7 @@
+ execute_process (COMMAND ${CMAKE_COMMAND} -E make_directory ${CMAKE_CURRENT_BINARY_DIR}/openturns)
+ add_custom_command (OUTPUT  ${CMAKE_CURRENT_BINARY_DIR}/openturns/swigpyrun.h
+                      COMMAND ${SWIG_EXECUTABLE}
+-                     ARGS -python -external-runtime ${CMAKE_CURRENT_BINARY_DIR}/openturns/swigpyrun.h
++                     ARGS -I${SWIG_ROOT_DIR}/Lib -I${SWIG_ROOT_DIR}/Lib/python -python -external-runtime ${CMAKE_CURRENT_BINARY_DIR}/openturns/swigpyrun.h
+                      COMMENT "Swig runtime header")
+ add_custom_target (generate_swig_runtime DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/openturns/swigpyrun.h)
+ add_custom_target (generate_docstrings)
diff --git a/products/patches/openturns-1.20.1.0005.patch b/products/patches/openturns-1.20.1.0005.patch
new file mode 100644 (file)
index 0000000..86bd26f
--- /dev/null
@@ -0,0 +1,12 @@
+diff -Naur openturns-1.20.1_ref/openturns-1.20.1/lib/include/pthread_win32/pthread.h openturns-1.20.1_dev/openturns-1.20.1/lib/include/pthread_win32/pthread.h
+--- openturns-1.20.1_ref/openturns-1.20.1/lib/include/pthread_win32/pthread.h  2023-04-07 09:47:43.000000000 +0200
++++ openturns-1.20.1_dev/openturns-1.20.1/lib/include/pthread_win32/pthread.h  2023-05-21 18:06:49.000000000 +0200
+@@ -199,7 +199,7 @@
+ static __inline int __pthread_mutex_alloc_concurrently (pthread_mutex_t *mutex) {
+   HANDLE mutex_init_mutex;
+   /* Get access to one global named mutex to serialize mutex initialization */
+-  winPthreadAssertWindows((mutex_init_mutex = CreateMutex(NULL, FALSE, "StarPU mutex init")));
++  winPthreadAssertWindows((mutex_init_mutex = CreateMutex(NULL, FALSE, NULL)));
+   winPthreadAssertPthread(pthread_mutex_lock(&mutex_init_mutex));
+   /* Now we are the one that can initialize it */
+   if (!*mutex)
diff --git a/products/patches/openturns-1.20.1.004.patch b/products/patches/openturns-1.20.1.004.patch
deleted file mode 100644 (file)
index 1689f7d..0000000
+++ /dev/null
@@ -1,31 +0,0 @@
-diff -Naur openturns-1.20.1_ref/openturns-1.20.1/CMakeLists.txt openturns-1.20.1_dev/openturns-1.20.1/CMakeLists.txt
---- openturns-1.20.1_ref/openturns-1.20.1/CMakeLists.txt       2023-04-07 09:47:43.000000000 +0200
-+++ openturns-1.20.1_dev/openturns-1.20.1/CMakeLists.txt       2023-05-17 10:52:58.551422902 +0200
-@@ -40,6 +40,15 @@
- option (BUILD_PYTHON                 "Build the python module for the library"                               ON)
- option (BUILD_SHARED_LIBS            "Build shared libraries"                                                ON)
-+ADD_DEFINITIONS(-D_CRT_SECURE_NO_WARNINGS)  # To disable windows warnings for strcpy, fopen, ...
-+ADD_DEFINITIONS(-D_SCL_SECURE_NO_WARNINGS)  # To disable windows warnings generated by checked iterators(e.g. std::copy, std::transform, ...)
-+ADD_DEFINITIONS(-DWNT -DWIN32)
-+ADD_DEFINITIONS(-D_WIN32_WINNT=0x0500)      # Windows 2000 or later API is required
-+ADD_DEFINITIONS(-DPPRO_NT)
-+ADD_DEFINITIONS(-DNOMINMAX)
-+
-+SET(SWIG_ROOT_DIR $ENV{SWIG_ROOT_DIR} CACHE PATH "Path to the SWIG.")
-+
- # Defines our own module path
- list (APPEND CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/cmake)
-diff -Naur openturns-1.20.1_ref/openturns-1.20.1/python/src/CMakeLists.txt openturns-1.20.1_dev/openturns-1.20.1/python/src/CMakeLists.txt
---- openturns-1.20.1_ref/openturns-1.20.1/python/src/CMakeLists.txt    2023-04-07 09:47:43.000000000 +0200
-+++ openturns-1.20.1_dev/openturns-1.20.1/python/src/CMakeLists.txt    2023-05-17 10:49:29.386285353 +0200
-@@ -16,7 +16,7 @@
- execute_process (COMMAND ${CMAKE_COMMAND} -E make_directory ${CMAKE_CURRENT_BINARY_DIR}/openturns)
- add_custom_command (OUTPUT  ${CMAKE_CURRENT_BINARY_DIR}/openturns/swigpyrun.h
-                      COMMAND ${SWIG_EXECUTABLE}
--                     ARGS -python -external-runtime ${CMAKE_CURRENT_BINARY_DIR}/openturns/swigpyrun.h
-+                     ARGS -I${SWIG_ROOT_DIR}/Lib -I${SWIG_ROOT_DIR}/Lib/python -python -external-runtime ${CMAKE_CURRENT_BINARY_DIR}/openturns/swigpyrun.h
-                      COMMENT "Swig runtime header")
- add_custom_target (generate_swig_runtime DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/openturns/swigpyrun.h)
- add_custom_target (generate_docstrings)
diff --git a/products/patches/openturns_salome.001.patch b/products/patches/openturns_salome.001.patch
new file mode 100644 (file)
index 0000000..5f499c2
--- /dev/null
@@ -0,0 +1,29 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 7724e93..f6806ea 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -53,6 +53,7 @@ INCLUDE_DIRECTORIES(
+   ${GUI_INCLUDE_DIRS}
+   ${YACS_INCLUDE_DIRS}
+   ${PERSALYS_INCLUDE_DIRS}
++  ${OPENTURNS_HOME}/include
+   )
+ ADD_DEFINITIONS(
+@@ -61,10 +62,15 @@ ADD_DEFINITIONS(
+   ${PYTHON_DEFINITIONS}
+   )
++FIND_LIBRARY(PERSALYS_base persalysbase ${PERSALYS_LIBRARY_DIRS})
+ FIND_LIBRARY(PERSALYS_view persalysview ${PERSALYS_LIBRARY_DIRS})
++FIND_LIBRARY(PERSALYS_plotpv persalysplotpv ${PERSALYS_LIBRARY_DIRS})
++
++FIND_LIBRARY(OPENTURNS_ot OT ${OPENTURNS_HOME}/lib)
++FIND_LIBRARY(OPENTURNS_otmorris otmorris ${OPENTURNS_HOME}/lib)
+ ADD_LIBRARY(OPENTURNS ${OPENTURNS_SOURCES})
+-TARGET_LINK_LIBRARIES(OPENTURNS ${GUI_LightApp} ${PERSALYS_view})
++TARGET_LINK_LIBRARIES(OPENTURNS ${GUI_LightApp} ${PERSALYS_view} ${PERSALYS_base} ${PERSALYS_plotpv} ${OPENTURNS_ot} ${OPENTURNS_otmorris} )
+ INSTALL(TARGETS OPENTURNS DESTINATION lib/salome)
+ SALOME_CONFIGURE_PREPARE(Qt5)
diff --git a/products/patches/yacs.persalys-14.0.1.patch b/products/patches/yacs.persalys-14.0.1.patch
new file mode 100644 (file)
index 0000000..2365f13
--- /dev/null
@@ -0,0 +1,101 @@
+diff --git a/src/bases/Test/CMakeLists.txt b/src/bases/Test/CMakeLists.txt
+index 35fba915..bfb4e46b 100644
+--- a/src/bases/Test/CMakeLists.txt
++++ b/src/bases/Test/CMakeLists.txt
+@@ -42,6 +42,12 @@ SET(TestBases_SOURCES
+ # --- rules ---
++if(WIN32)
++  add_library(YACSDLTest_lib STATIC  ${YACSDLTest_SOURCES})
++  TARGET_LINK_LIBRARIES(YACSDLTest_lib ${_link_LIBRARIES})
++  set_target_properties(YACSDLTest_lib PROPERTIES OUTPUT_NAME YACSDLTest)
++endif(WIN32)
++
+ ADD_LIBRARY(YACSDLTest ${YACSDLTest_SOURCES})
+ INSTALL(TARGETS YACSDLTest EXPORT ${PROJECT_NAME}TargetGroup 
+         DESTINATION ${SALOME_YACS_INSTALL_TEST_LIB})
+diff --git a/src/engine/Plugin/CMakeLists.txt b/src/engine/Plugin/CMakeLists.txt
+index 31026521..32451b92 100644
+--- a/src/engine/Plugin/CMakeLists.txt
++++ b/src/engine/Plugin/CMakeLists.txt
+@@ -41,7 +41,11 @@ SET(PluginSimplex_SOURCES
+ )
+ # --- rules ---
+-
++if(WIN32)
++  add_library(PluginSimplex_lib STATIC  ${PluginSimplex_SOURCES})
++  TARGET_LINK_LIBRARIES(PluginSimplex_lib ${_link_LIBRARIES})
++  set_target_properties(PluginSimplex_lib PROPERTIES OUTPUT_NAME PluginSimplex)
++endif(WIN32)
+ ADD_LIBRARY(PluginSimplex ${PluginSimplex_SOURCES})
+ TARGET_LINK_LIBRARIES(PluginSimplex YACSlibEngine)
+ INSTALL(TARGETS PluginSimplex EXPORT ${PROJECT_NAME}TargetGroup DESTINATION ${SALOME_INSTALL_LIBS})
+diff --git a/src/engine/Test/CMakeLists.txt b/src/engine/Test/CMakeLists.txt
+index a711cd0e..b089edbe 100644
+--- a/src/engine/Test/CMakeLists.txt
++++ b/src/engine/Test/CMakeLists.txt
+@@ -63,7 +63,11 @@ SET(IntegrationTestEngine_SOURCES
+ )
+ # --- rules ---
+-
++if(WIN32)
++  add_library(PluginOptEvTest1_lib STATIC  ${PluginOptEvTest1_SOURCES})
++  TARGET_LINK_LIBRARIES(PluginOptEvTest1_lib ${_link_LIBRARIES})
++  set_target_properties(PluginOptEvTest1_lib PROPERTIES OUTPUT_NAME PluginOptEvTest1)
++endif(WIN32)
+ ADD_LIBRARY(PluginOptEvTest1 ${PluginOptEvTest1_SOURCES})
+ TARGET_LINK_LIBRARIES(PluginOptEvTest1 YACSlibEngine)
+ INSTALL(TARGETS PluginOptEvTest1 EXPORT ${PROJECT_NAME}TargetGroup
+diff --git a/src/runtime/CMakeLists.txt b/src/runtime/CMakeLists.txt
+index 1ef9ffce..c19ad2a3 100644
+--- a/src/runtime/CMakeLists.txt
++++ b/src/runtime/CMakeLists.txt
+@@ -221,7 +221,11 @@ SET(YACSRuntimeSALOME_SOURCES
+   )
+ # --- rules ---
+-
++if(WIN32)
++  add_library(YACSRuntimeSALOME_lib STATIC  ${YACSRuntimeSALOME_SOURCES})
++  TARGET_LINK_LIBRARIES(YACSRuntimeSALOME_lib ${_link_LIBRARIES})
++  set_target_properties(YACSRuntimeSALOME_lib PROPERTIES OUTPUT_NAME YACSRuntimeSALOME)
++endif(WIN32)
+ ADD_LIBRARY(YACSRuntimeSALOME ${YACSRuntimeSALOME_SOURCES})
+ TARGET_LINK_LIBRARIES(YACSRuntimeSALOME ${_link_LIBRARIES})
+ INSTALL(TARGETS YACSRuntimeSALOME EXPORT ${PROJECT_NAME}TargetGroup DESTINATION ${SALOME_INSTALL_LIBS})
+diff --git a/src/runtime/Test/CMakeLists.txt b/src/runtime/Test/CMakeLists.txt
+index d3549a5c..2775341e 100644
+--- a/src/runtime/Test/CMakeLists.txt
++++ b/src/runtime/Test/CMakeLists.txt
+@@ -104,6 +104,12 @@ TARGET_LINK_LIBRARIES(runtimeTestEchoSrv runtime_echo ${OMNIORB_LIBRARIES})
+ ADD_EXECUTABLE(echo_clt ${echo_clt_SOURCES})
+ TARGET_LINK_LIBRARIES(echo_clt runtime_echo ${OMNIORB_LIBRARIES})
++if(WIN32)
++  add_library(TestComponentLocal_lib STATIC  ${TestComponentLocal_SOURCES})
++  TARGET_LINK_LIBRARIES(TestComponentLocal_lib ${_link_LIBRARIES})
++  set_target_properties(TestComponentLocal_lib PROPERTIES OUTPUT_NAME TestComponentLocal)
++endif(WIN32)
++
+ ADD_LIBRARY(TestComponentLocal ${TestComponentLocal_SOURCES})
+ TARGET_LINK_LIBRARIES(TestComponentLocal YACSlibEngine)
+diff --git a/src/yacsloader/CMakeLists.txt b/src/yacsloader/CMakeLists.txt
+index 70321898..3bf780e6 100644
+--- a/src/yacsloader/CMakeLists.txt
++++ b/src/yacsloader/CMakeLists.txt
+@@ -153,6 +153,11 @@ SET(ExampleOfObserversPluginForDriver_SOURCES
+ # --- rules ---
++if(WIN32)
++  add_library(YACSloader_lib STATIC  ${YACSRuntimeSALOME_SOURCES})
++  TARGET_LINK_LIBRARIES(YACSloader_lib ${YACSloader_LIBRARIES})
++  set_target_properties(YACSloader_lib PROPERTIES OUTPUT_NAME YACSloader)
++endif(WIN32)
+ ADD_LIBRARY(YACSloader ${YACSloader_SOURCES})
+ TARGET_LINK_LIBRARIES(YACSloader ${YACSloader_LIBRARIES})
+ INSTALL(TARGETS YACSloader EXPORT ${PROJECT_NAME}TargetGroup DESTINATION ${SALOME_INSTALL_LIBS})