diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index ae268c6adbb58b899cf1090abcc452e3043b1930..e518300de0108c730928e4abbe95ee76a19c9e33 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -18,7 +18,7 @@ build-py2: - mkdir build - cd build - cmake -DUSE_PY3=OFF -Wno-dev .. - - make -j 4 + - make -j $(nproc) artifacts: paths: - build/ @@ -32,7 +32,7 @@ build-py2-no-tlnos: - mkdir build - cd build - cmake -DUSE_PY3=OFF -Wno-dev -C ../CMake/disable-trilinos.cmake .. - - make -j 4 + - make -j $(nproc) build-py3: image: rboman/waves-py3:2020.1 @@ -43,7 +43,7 @@ build-py3: - mkdir build - cd build - cmake -Wno-dev .. - - make -j 4 + - make -j $(nproc) artifacts: paths: - build/ @@ -80,7 +80,7 @@ ctest-py2: stage: test script: - cd build - - ctest -j 4 #--verbose + - ctest -j $(nproc) #--verbose #timeout: 10 hours # will be available in 12.3 dependencies: - build-py2 @@ -90,7 +90,7 @@ ctest-py3: stage: test script: - cd build - - ctest -j 4 #--verbose + - ctest -j $(nproc) #--verbose dependencies: - build-py3 diff --git a/CMakeLists.txt b/CMakeLists.txt index 6fa771f5e26dd8afcc4b3ec40dc9ed0779e7e624..51b9e47c68988780900c00ada8d71340f88a69b8 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -79,6 +79,7 @@ IF((CMAKE_CXX_COMPILER_ID MATCHES "GNU") OR (CMAKE_CXX_COMPILER_ID MATCHES "Inte SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fopenmp -Wno-unknown-pragmas -Wno-sign-compare") # merge trilinos ELSEIF(CMAKE_CXX_COMPILER_ID MATCHES "MSVC") ADD_DEFINITIONS(-D_CRT_SECURE_NO_WARNINGS -D_SCL_SECURE_NO_DEPRECATE) + ADD_DEFINITIONS(-D_USE_MATH_DEFINES) # otherwise M_PI is undefined SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /MP") # parallel build with MSVC #SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /W4") # add verbosity ELSEIF(CMAKE_CXX_COMPILER_ID MATCHES "Clang") diff --git a/scripts/devenv-vs2015.bat b/scripts/devenv-vs2015.bat index 0817824cafb7d7466c95c5efd7438c76d788e37f..2c2a359ba80b9fa3825f5bceaf1f825e0168db3e 100644 --- a/scripts/devenv-vs2015.bat +++ b/scripts/devenv-vs2015.bat @@ -1,24 +1,10 @@ @echo off -:: Ligne de commande qui va bien pour compiler mes brols -:: -:: Utilisation: -:: - installer les libs (dans c:\local p. expl.) -:: - definir la variable d'env MYLOCAL (=c:\local p. expl. ) -:: - double cliquer sur myenv.bat -:: - cd ..\wavesB -:: - cmake -G "Visual Studio 14 2015 Win64" -DWAVES_USE_TLNOS=OFF ..\waves -:: ou (tbox seul): -:: - cmake -G "Visual Studio 14 2015 Win64" -DWAVES_USE_TLNOS=OFF -DWAVES_USE_WAVES=OFF -DWAVES_USE_HEAT=OFF -DWAVES_USE_MIRRORS=OFF ..\waves -:: - cmake --build . --config Release -- -j6 -:: - ctest -C Release -:: Incredibuild (http://www.incredibuild.com/webhelp/#BuildConsole.html) -:: - BuildConsole Waves.sln /rebuild /cfg="Release|x64" +:: command line for MSVC build (Visual Studio 2015) -set PATH=%PATH%;%MYLOCAL%\swigwin-3.0.12 -set INCLUDE=%MYLOCAL%\include;%MYLOCAL%\MUMPS\include;%MYLOCAL%\eigen-3.3.2 +set PATH=%PATH%;%MYLOCAL%\swigwin +set INCLUDE=%MYLOCAL%\include;%MYLOCAL%\MUMPS\include;%MYLOCAL%\eigen set LIB=%MYLOCAL%\MUMPS\lib -:: ok (MKL + VS en ligne de commande) call "C:\Program Files (x86)\IntelSWTools\compilers_and_libraries\windows\mkl\bin\mklvars.bat" intel64 vs2015 call "C:\Program Files (x86)\IntelSWTools\compilers_and_libraries\windows\tbb\bin\tbbvars.bat" intel64 vs2015 %comspec% /K ""C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" amd64" diff --git a/scripts/devenv-vs2017.bat b/scripts/devenv-vs2017.bat new file mode 100644 index 0000000000000000000000000000000000000000..dce652b643f7f879f301bcadf47f98185c78e759 --- /dev/null +++ b/scripts/devenv-vs2017.bat @@ -0,0 +1,10 @@ +@echo off +:: command line for MSVC build (Visual Studio 2017) + +set PATH=%PATH%;%MYLOCAL%\swig +set INCLUDE=%MYLOCAL%\include;%MYLOCAL%\MUMPS\include;%MYLOCAL%\eigen +set LIB=%MYLOCAL%\MUMPS\lib + +call "C:\Program Files (x86)\IntelSWTools\compilers_and_libraries\windows\mkl\bin\mklvars.bat" intel64 vs2017 +call "C:\Program Files (x86)\IntelSWTools\compilers_and_libraries\windows\tbb\bin\tbbvars.bat" intel64 vs2017 +%comspec% /K ""C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build\vcvars64.bat" amd64" diff --git a/sph/src/sph.h b/sph/src/sph.h index 37d56ac20da005ad16a233b8455078d4c06eb777..32c048f2152e26e925e375507e42f207570b90cc 100644 --- a/sph/src/sph.h +++ b/sph/src/sph.h @@ -30,11 +30,7 @@ #endif #include "tbox.h" -#define _USE_MATH_DEFINES #include <math.h> -//#ifndef M_PI -//#define M_PI 3.141592653589793238462643383279502884197e0 -//#endif namespace sph { diff --git a/tbox/src/CMakeLists.txt b/tbox/src/CMakeLists.txt index ef95ec8f081b0a8524b1ac8204939984bf5743bc..e5cc460b3b823fde82514d407a3d42d937617c2d 100644 --- a/tbox/src/CMakeLists.txt +++ b/tbox/src/CMakeLists.txt @@ -47,7 +47,6 @@ MESSAGE(STATUS "MKL_LIBRARIES=${MKL_LIBRARIES}") IF(MKL_INCLUDE_DIRS AND MKL_LIBRARIES) MESSAGE(STATUS "Found Intel MKL") SET(WITH_MKL TRUE) - INCLUDE_DIRECTORIES(${MKL_INCLUDE_DIRS}) SET(LAPACK_INCLUDE_DIRS ${MKL_INCLUDE_DIRS}) SET(LAPACK_LIBRARIES ${MKL_LIBRARIES}) ELSE() @@ -68,7 +67,7 @@ ENDIF() # -- Eigen -- FIND_PACKAGE(EIGEN REQUIRED) -TARGET_INCLUDE_DIRECTORIES(tbox PUBLIC ${EIGEN_INCLUDE_DIRS}) +TARGET_INCLUDE_DIRECTORIES(tbox PUBLIC ${EIGEN_INCLUDE_DIRS} ${LAPACK_INCLUDE_DIRS}) TARGET_COMPILE_DEFINITIONS(tbox PUBLIC EIGEN_DONT_PARALLELIZE) IF(WITH_MKL) MESSAGE(STATUS "Linking Eigen with MKL") @@ -76,7 +75,6 @@ IF(WITH_MKL) ELSE() MESSAGE(STATUS "Linking Eigen with ${BLA_VENDOR}") TARGET_COMPILE_DEFINITIONS(tbox PUBLIC EIGEN_USE_BLAS) - #TARGET_COMPILE_DEFINITIONS(tbox PUBLIC EIGEN_USE_LAPACKE) # why this line fails? ENDIF() TARGET_LINK_LIBRARIES(tbox ${LAPACK_LIBRARIES})