diff --git a/.gitignore b/.gitignore index de469da2..d0f731ed 100644 --- a/.gitignore +++ b/.gitignore @@ -1,8 +1,10 @@ .project .cproject -CMakeLists.txt.user +CMakeLists.txt.user* build* *.swp .settings # ignore mac temporal files .DS_Store +.idea +cmake-build*/ \ No newline at end of file diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 5d60107c..8147cf6c 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -37,15 +37,25 @@ cppcheck: # OS: Linux # Compiler: gcc # Language: cpp11 +# QT Version: qt5.15.1 -build-debug-gcc-cpp11: +build-debug-gcc-cpp11-qt5.15.1: stage: build - script: "CI/ci-linux-build.sh gcc cpp11 debug" - image: graphics.rwth-aachen.de:4567/docker/docker/docker-openmesh-container - tags: [Docker] + script: "CI/ci-linux-build.sh" + #image: graphics.rwth-aachen.de:4567/docker/docker/docker-openmesh-container + tags: + - Linux + - stretch + variables: + COMPILER: "gcc" + LANGUAGE: "cpp11" + BUILD_TYPE: "debug" + QTVERSION: "qt5.15.1" + IWYU: "no" + VECTORCHECKS: "yes" artifacts: paths: - - build-gcc-cpp11-debug-Vector-Checks/ + - build-gcc-cpp11-qt5.15.1-debug-vectorchecks/ #----------- Job Informations: # Type: Test: debug @@ -53,19 +63,29 @@ build-debug-gcc-cpp11: # Compiler: gcc # Language: cpp11 -test-debug-gcc-cpp11: +test-debug-gcc-cpp11-qt5.15.1: stage: test - script: "CI/ci-linux-test.sh gcc cpp11 debug" - image: graphics.rwth-aachen.de:4567/docker/docker/docker-openmesh-container - tags: [Docker] - dependencies: [build-debug-gcc-cpp11] - needs: [build-debug-gcc-cpp11] + script: "CI/ci-linux-test.sh" + #image: graphics.rwth-aachen.de:4567/docker/docker/docker-openmesh-container + tags: + - Linux + - stretch + - MultiThreads + variables: + COMPILER: "gcc" + LANGUAGE: "cpp11" + BUILD_TYPE: "debug" + QTVERSION: "qt5.15.1" + IWYU: "no" + VECTORCHECKS: "yes" + dependencies: [build-debug-gcc-cpp11-qt5.15.1] + needs: [build-debug-gcc-cpp11-qt5.15.1] artifacts: reports: junit: - - build-gcc-cpp11-debug-Vector-Checks/Unittests/report.xml - - build-gcc-cpp11-debug-Vector-Checks/Unittests/report-customvec.xml - - build-gcc-cpp11-debug-Vector-Checks/Unittests/report-doublevec.xml + - build-gcc-cpp11-qt5.15.1-debug-vectorchecks/Unittests/report.xml + - build-gcc-cpp11-qt5.15.1-debug-vectorchecks/Unittests/report-customvec.xml + - build-gcc-cpp11-qt5.15.1-debug-vectorchecks/Unittests/report-doublevec.xml #----------- Job Informations: @@ -73,15 +93,25 @@ test-debug-gcc-cpp11: # OS: Linux # Compiler: gcc # Language: cpp11 +# QT Version: qt5.15.1 -build-release-gcc-cpp11: +build-release-gcc-cpp11-qt5.15.1: stage: build - script: "CI/ci-linux-build.sh gcc cpp11 release" - image: graphics.rwth-aachen.de:4567/docker/docker/docker-openmesh-container - tags: [Docker] + script: "CI/ci-linux-build.sh" + #image: graphics.rwth-aachen.de:4567/docker/docker/docker-openmesh-container + tags: + - Linux + - stretch + variables: + COMPILER: "gcc" + LANGUAGE: "cpp11" + BUILD_TYPE: "release" + QTVERSION: "qt5.15.1" + IWYU: "no" + VECTORCHECKS: "yes" artifacts: paths: - - build-gcc-cpp11-release-Vector-Checks/ + - build-gcc-cpp11-qt5.15.1-release-vectorchecks/ #----------- Job Informations: # Type: Test: release @@ -89,19 +119,29 @@ build-release-gcc-cpp11: # Compiler: gcc # Language: cpp11 -test-release-gcc-cpp11: +test-release-gcc-cpp11-qt5.15.1: stage: test - script: "CI/ci-linux-test.sh gcc cpp11 release" - image: graphics.rwth-aachen.de:4567/docker/docker/docker-openmesh-container - tags: [Docker] - dependencies: [build-release-gcc-cpp11] - needs: [build-release-gcc-cpp11] + script: "CI/ci-linux-test.sh" + #image: graphics.rwth-aachen.de:4567/docker/docker/docker-openmesh-container + tags: + - Linux + - stretch + - MultiThreads + variables: + COMPILER: "gcc" + LANGUAGE: "cpp11" + BUILD_TYPE: "release" + QTVERSION: "qt5.15.1" + IWYU: "no" + VECTORCHECKS: "yes" + dependencies: [build-release-gcc-cpp11-qt5.15.1] + needs: [build-release-gcc-cpp11-qt5.15.1] artifacts: reports: junit: - - build-gcc-cpp11-release-Vector-Checks/Unittests/report.xml - - build-gcc-cpp11-release-Vector-Checks/Unittests/report-customvec.xml - - build-gcc-cpp11-release-Vector-Checks/Unittests/report-doublevec.xml + - build-gcc-cpp11-qt5.15.1-release-vectorchecks/Unittests/report.xml + - build-gcc-cpp11-qt5.15.1-release-vectorchecks/Unittests/report-customvec.xml + - build-gcc-cpp11-qt5.15.1-release-vectorchecks/Unittests/report-doublevec.xml #----------- Job Informations: @@ -109,15 +149,25 @@ test-release-gcc-cpp11: # OS: Linux # Compiler: clang # Language: cpp11 +# QT Version: qt5.15.1 -build-debug-clang-cpp11: +build-debug-clang-cpp11-qt5.15.1: stage: build - script: "CI/ci-linux-build.sh clang cpp11 debug" - image: graphics.rwth-aachen.de:4567/docker/docker/docker-openmesh-container - tags: [Docker] + script: "CI/ci-linux-build.sh" + #image: graphics.rwth-aachen.de:4567/docker/docker/docker-openmesh-container + tags: + - Linux + - stretch + variables: + COMPILER: "clang" + LANGUAGE: "cpp11" + BUILD_TYPE: "debug" + QTVERSION: "qt5.15.1" + IWYU: "no" + VECTORCHECKS: "yes" artifacts: paths: - - build-clang-cpp11-debug-Vector-Checks/ + - build-clang-cpp11-qt5.15.1-debug-vectorchecks/ #----------- Job Informations: # Type: Test: debug @@ -125,19 +175,29 @@ build-debug-clang-cpp11: # Compiler: clang # Language: cpp11 -test-debug-clang-cpp11: +test-debug-clang-cpp11-qt5.15.1: stage: test - script: "CI/ci-linux-test.sh clang cpp11 debug" - image: graphics.rwth-aachen.de:4567/docker/docker/docker-openmesh-container - tags: [Docker] - dependencies: [build-debug-clang-cpp11] - needs: [build-debug-clang-cpp11] + script: "CI/ci-linux-test.sh" + #image: graphics.rwth-aachen.de:4567/docker/docker/docker-openmesh-container + tags: + - Linux + - stretch + - MultiThreads + variables: + COMPILER: "clang" + LANGUAGE: "cpp11" + BUILD_TYPE: "debug" + QTVERSION: "qt5.15.1" + IWYU: "no" + VECTORCHECKS: "yes" + dependencies: [build-debug-clang-cpp11-qt5.15.1] + needs: [build-debug-clang-cpp11-qt5.15.1] artifacts: reports: junit: - - build-clang-cpp11-debug-Vector-Checks/Unittests/report.xml - - build-clang-cpp11-debug-Vector-Checks/Unittests/report-customvec.xml - - build-clang-cpp11-debug-Vector-Checks/Unittests/report-doublevec.xml + - build-clang-cpp11-qt5.15.1-debug-vectorchecks/Unittests/report.xml + - build-clang-cpp11-qt5.15.1-debug-vectorchecks/Unittests/report-customvec.xml + - build-clang-cpp11-qt5.15.1-debug-vectorchecks/Unittests/report-doublevec.xml #----------- Job Informations: @@ -145,15 +205,25 @@ test-debug-clang-cpp11: # OS: Linux # Compiler: clang # Language: cpp11 +# QT Version: qt5.15.1 -build-release-clang-cpp11: +build-release-clang-cpp11-qt5.15.1: stage: build - script: "CI/ci-linux-build.sh clang cpp11 release" - image: graphics.rwth-aachen.de:4567/docker/docker/docker-openmesh-container - tags: [Docker] + script: "CI/ci-linux-build.sh" + #image: graphics.rwth-aachen.de:4567/docker/docker/docker-openmesh-container + tags: + - Linux + - stretch + variables: + COMPILER: "clang" + LANGUAGE: "cpp11" + BUILD_TYPE: "release" + QTVERSION: "qt5.15.1" + IWYU: "no" + VECTORCHECKS: "yes" artifacts: paths: - - build-clang-cpp11-release-Vector-Checks/ + - build-clang-cpp11-qt5.15.1-release-vectorchecks/ #----------- Job Informations: # Type: Test: release @@ -161,19 +231,29 @@ build-release-clang-cpp11: # Compiler: clang # Language: cpp11 -test-release-clang-cpp11: +test-release-clang-cpp11-qt5.15.1: stage: test - script: "CI/ci-linux-test.sh clang cpp11 release" - image: graphics.rwth-aachen.de:4567/docker/docker/docker-openmesh-container - tags: [Docker] - dependencies: [build-release-clang-cpp11] - needs: [build-release-clang-cpp11] + script: "CI/ci-linux-test.sh" + #image: graphics.rwth-aachen.de:4567/docker/docker/docker-openmesh-container + tags: + - Linux + - stretch + - MultiThreads + variables: + COMPILER: "clang" + LANGUAGE: "cpp11" + BUILD_TYPE: "release" + QTVERSION: "qt5.15.1" + IWYU: "no" + VECTORCHECKS: "yes" + dependencies: [build-release-clang-cpp11-qt5.15.1] + needs: [build-release-clang-cpp11-qt5.15.1] artifacts: reports: junit: - - build-clang-cpp11-release-Vector-Checks/Unittests/report.xml - - build-clang-cpp11-release-Vector-Checks/Unittests/report-customvec.xml - - build-clang-cpp11-release-Vector-Checks/Unittests/report-doublevec.xml + - build-clang-cpp11-qt5.15.1-release-vectorchecks/Unittests/report.xml + - build-clang-cpp11-qt5.15.1-release-vectorchecks/Unittests/report-customvec.xml + - build-clang-cpp11-qt5.15.1-release-vectorchecks/Unittests/report-doublevec.xml #----------- Job Informations: @@ -181,15 +261,25 @@ test-release-clang-cpp11: # OS: Linux # Compiler: gcc # Language: cpp14 +# QT Version: qt5.15.1 -build-debug-gcc-cpp14: +build-debug-gcc-cpp14-qt5.15.1: stage: build - script: "CI/ci-linux-build.sh gcc cpp14 debug" - image: graphics.rwth-aachen.de:4567/docker/docker/docker-openmesh-container - tags: [Docker] + script: "CI/ci-linux-build.sh" + #image: graphics.rwth-aachen.de:4567/docker/docker/docker-openmesh-container + tags: + - Linux + - stretch + variables: + COMPILER: "gcc" + LANGUAGE: "cpp14" + BUILD_TYPE: "debug" + QTVERSION: "qt5.15.1" + IWYU: "no" + VECTORCHECKS: "yes" artifacts: paths: - - build-gcc-cpp14-debug-Vector-Checks/ + - build-gcc-cpp14-qt5.15.1-debug-vectorchecks/ #----------- Job Informations: # Type: Test: debug @@ -197,19 +287,29 @@ build-debug-gcc-cpp14: # Compiler: gcc # Language: cpp14 -test-debug-gcc-cpp14: +test-debug-gcc-cpp14-qt5.15.1: stage: test - script: "CI/ci-linux-test.sh gcc cpp14 debug" - image: graphics.rwth-aachen.de:4567/docker/docker/docker-openmesh-container - tags: [Docker] - dependencies: [build-debug-gcc-cpp14] - needs: [build-debug-gcc-cpp14] + script: "CI/ci-linux-test.sh" + #image: graphics.rwth-aachen.de:4567/docker/docker/docker-openmesh-container + tags: + - Linux + - stretch + - MultiThreads + variables: + COMPILER: "gcc" + LANGUAGE: "cpp14" + BUILD_TYPE: "debug" + QTVERSION: "qt5.15.1" + IWYU: "no" + VECTORCHECKS: "yes" + dependencies: [build-debug-gcc-cpp14-qt5.15.1] + needs: [build-debug-gcc-cpp14-qt5.15.1] artifacts: reports: junit: - - build-gcc-cpp14-debug-Vector-Checks/Unittests/report.xml - - build-gcc-cpp14-debug-Vector-Checks/Unittests/report-customvec.xml - - build-gcc-cpp14-debug-Vector-Checks/Unittests/report-doublevec.xml + - build-gcc-cpp14-qt5.15.1-debug-vectorchecks/Unittests/report.xml + - build-gcc-cpp14-qt5.15.1-debug-vectorchecks/Unittests/report-customvec.xml + - build-gcc-cpp14-qt5.15.1-debug-vectorchecks/Unittests/report-doublevec.xml #----------- Job Informations: @@ -217,15 +317,25 @@ test-debug-gcc-cpp14: # OS: Linux # Compiler: gcc # Language: cpp14 +# QT Version: qt5.15.1 -build-release-gcc-cpp14: +build-release-gcc-cpp14-qt5.15.1: stage: build - script: "CI/ci-linux-build.sh gcc cpp14 release" - image: graphics.rwth-aachen.de:4567/docker/docker/docker-openmesh-container - tags: [Docker] + script: "CI/ci-linux-build.sh" + #image: graphics.rwth-aachen.de:4567/docker/docker/docker-openmesh-container + tags: + - Linux + - stretch + variables: + COMPILER: "gcc" + LANGUAGE: "cpp14" + BUILD_TYPE: "release" + QTVERSION: "qt5.15.1" + IWYU: "no" + VECTORCHECKS: "yes" artifacts: paths: - - build-gcc-cpp14-release-Vector-Checks/ + - build-gcc-cpp14-qt5.15.1-release-vectorchecks/ #----------- Job Informations: # Type: Test: release @@ -233,19 +343,29 @@ build-release-gcc-cpp14: # Compiler: gcc # Language: cpp14 -test-release-gcc-cpp14: +test-release-gcc-cpp14-qt5.15.1: stage: test - script: "CI/ci-linux-test.sh gcc cpp14 release" - image: graphics.rwth-aachen.de:4567/docker/docker/docker-openmesh-container - tags: [Docker] - dependencies: [build-release-gcc-cpp14] - needs: [build-release-gcc-cpp14] + script: "CI/ci-linux-test.sh" + #image: graphics.rwth-aachen.de:4567/docker/docker/docker-openmesh-container + tags: + - Linux + - stretch + - MultiThreads + variables: + COMPILER: "gcc" + LANGUAGE: "cpp14" + BUILD_TYPE: "release" + QTVERSION: "qt5.15.1" + IWYU: "no" + VECTORCHECKS: "yes" + dependencies: [build-release-gcc-cpp14-qt5.15.1] + needs: [build-release-gcc-cpp14-qt5.15.1] artifacts: reports: junit: - - build-gcc-cpp14-release-Vector-Checks/Unittests/report.xml - - build-gcc-cpp14-release-Vector-Checks/Unittests/report-customvec.xml - - build-gcc-cpp14-release-Vector-Checks/Unittests/report-doublevec.xml + - build-gcc-cpp14-qt5.15.1-release-vectorchecks/Unittests/report.xml + - build-gcc-cpp14-qt5.15.1-release-vectorchecks/Unittests/report-customvec.xml + - build-gcc-cpp14-qt5.15.1-release-vectorchecks/Unittests/report-doublevec.xml #----------- Job Informations: @@ -253,15 +373,25 @@ test-release-gcc-cpp14: # OS: Linux # Compiler: clang # Language: cpp14 +# QT Version: qt5.15.1 -build-debug-clang-cpp14: +build-debug-clang-cpp14-qt5.15.1: stage: build - script: "CI/ci-linux-build.sh clang cpp14 debug" - image: graphics.rwth-aachen.de:4567/docker/docker/docker-openmesh-container - tags: [Docker] + script: "CI/ci-linux-build.sh" + #image: graphics.rwth-aachen.de:4567/docker/docker/docker-openmesh-container + tags: + - Linux + - stretch + variables: + COMPILER: "clang" + LANGUAGE: "cpp14" + BUILD_TYPE: "debug" + QTVERSION: "qt5.15.1" + IWYU: "no" + VECTORCHECKS: "yes" artifacts: paths: - - build-clang-cpp14-debug-Vector-Checks/ + - build-clang-cpp14-qt5.15.1-debug-vectorchecks/ #----------- Job Informations: # Type: Test: debug @@ -269,19 +399,86 @@ build-debug-clang-cpp14: # Compiler: clang # Language: cpp14 -test-debug-clang-cpp14: +test-debug-clang-cpp14-qt5.15.1: stage: test - script: "CI/ci-linux-test.sh clang cpp14 debug" - image: graphics.rwth-aachen.de:4567/docker/docker/docker-openmesh-container - tags: [Docker] - dependencies: [build-debug-clang-cpp14] - needs: [build-debug-clang-cpp14] + script: "CI/ci-linux-test.sh" + #image: graphics.rwth-aachen.de:4567/docker/docker/docker-openmesh-container + tags: + - Linux + - stretch + - MultiThreads + variables: + COMPILER: "clang" + LANGUAGE: "cpp14" + BUILD_TYPE: "debug" + QTVERSION: "qt5.15.1" + IWYU: "no" + VECTORCHECKS: "yes" + dependencies: [build-debug-clang-cpp14-qt5.15.1] + needs: [build-debug-clang-cpp14-qt5.15.1] artifacts: reports: junit: - - build-clang-cpp14-debug-Vector-Checks/Unittests/report.xml - - build-clang-cpp14-debug-Vector-Checks/Unittests/report-customvec.xml - - build-clang-cpp14-debug-Vector-Checks/Unittests/report-doublevec.xml + - build-clang-cpp14-qt5.15.1-debug-vectorchecks/Unittests/report.xml + - build-clang-cpp14-qt5.15.1-debug-vectorchecks/Unittests/report-customvec.xml + - build-clang-cpp14-qt5.15.1-debug-vectorchecks/Unittests/report-doublevec.xml + + +#----------- Job Informations: +# Type: Build: release +# OS: Linux +# Compiler: clang +# Language: cpp14 +# QT Version: qt5.15.1 + +build-release-clang-cpp14-qt5.15.1: + stage: build + script: "CI/ci-linux-build.sh" + #image: graphics.rwth-aachen.de:4567/docker/docker/docker-openmesh-container + tags: + - Linux + - stretch + variables: + COMPILER: "clang" + LANGUAGE: "cpp14" + BUILD_TYPE: "release" + QTVERSION: "qt5.15.1" + IWYU: "no" + VECTORCHECKS: "yes" + artifacts: + paths: + - build-clang-cpp14-qt5.15.1-release-vectorchecks/ + +#----------- Job Informations: +# Type: Test: release +# OS: Linux +# Compiler: clang +# Language: cpp14 + +test-release-clang-cpp14-qt5.15.1: + stage: test + script: "CI/ci-linux-test.sh" + #image: graphics.rwth-aachen.de:4567/docker/docker/docker-openmesh-container + tags: + - Linux + - stretch + - MultiThreads + variables: + COMPILER: "clang" + LANGUAGE: "cpp14" + BUILD_TYPE: "release" + QTVERSION: "qt5.15.1" + IWYU: "no" + VECTORCHECKS: "yes" + dependencies: [build-release-clang-cpp14-qt5.15.1] + needs: [build-release-clang-cpp14-qt5.15.1] + artifacts: + reports: + junit: + - build-clang-cpp14-qt5.15.1-release-vectorchecks/Unittests/report.xml + - build-clang-cpp14-qt5.15.1-release-vectorchecks/Unittests/report-customvec.xml + - build-clang-cpp14-qt5.15.1-release-vectorchecks/Unittests/report-doublevec.xml + #----------- Job Informations: @@ -290,36 +487,47 @@ test-debug-clang-cpp14: # Compiler: clang # Language: cpp14 -build-release-clang-cpp14: +iwyu-release-clang-cpp14-qt5.15.1: stage: build - script: "CI/ci-linux-build.sh clang cpp14 release" + script: "CI/ci-linux-build.sh" image: graphics.rwth-aachen.de:4567/docker/docker/docker-openmesh-container - tags: [Docker] + tags: + - Linux + - stretch + variables: + COMPILER: "clang" + LANGUAGE: "cpp14" + BUILD_TYPE: "release" + QTVERSION: "qt5.15.1" + IWYU: "yes" + VECTORCHECKS: "yes" artifacts: paths: - - build-clang-cpp14-release-Vector-Checks/ - + - build-clang-cpp14-qt5.15.1-release-iwyu-vectorchecks/compile_commands.json + - build-clang-cpp14-qt5.15.1-release-iwyu-vectorchecks/iwyu.dump #----------- Job Informations: -# Type: Test: release +# Type: Build: release # OS: Linux # Compiler: clang # Language: cpp14 -test-release-clang-cpp14: - stage: test - script: "CI/ci-linux-test.sh clang cpp14 release" +nvc-release-clang-cpp14-qt5.15.1: + stage: build + script: "CI/ci-linux-build.sh" image: graphics.rwth-aachen.de:4567/docker/docker/docker-openmesh-container - tags: [Docker] - dependencies: [build-release-clang-cpp14] - needs: [build-release-clang-cpp14] + tags: + - Linux + - stretch + variables: + COMPILER: "clang" + LANGUAGE: "cpp14" + BUILD_TYPE: "release" + QTVERSION: "qt5.15.1" + IWYU: "no" + VECTORCHECKS: "no" artifacts: - reports: - junit: - - build-clang-cpp14-release-Vector-Checks/Unittests/report.xml - - build-clang-cpp14-release-Vector-Checks/Unittests/report-customvec.xml - - build-clang-cpp14-release-Vector-Checks/Unittests/report-doublevec.xml - - + paths: + - build-clang-cpp14-qt5.15.1-release/ # ----------------- # MAC tasks @@ -412,6 +620,63 @@ macos-cpp14-release: # Windows tasks # ----------------- +#------------- Job Informations: +# Type: Build+Test: Release +# OS: Windows +# Architecture: x64 +# Shared: TRUE +# VS Version: VS2019 +# Apps: {{APPS}} + +build-VS2019-x64-shared-TRUE-apps: + stage: build + variables: + BUILD_PLATFORM: "VS2019" + ARCHITECTURE: "x64" + SHARED: "TRUE" + APPS: "ON" + script: "CI\\Windows.bat" + tags: + - VS2019 + - Qt5150 + artifacts: + paths: + - build-release/*.exe + reports: + junit: + - build-release/unittests/report.xml + - build-release/unittests/report-customvec.xml + - build-release/unittests/report-doublevec.xml + +#------------- Job Informations: +# Type: Build+Test: Release +# OS: Windows +# Architecture: x64 +# Shared: FALSE +# VS Version: VS2019 +# Apps: {{APPS}} + +build-VS2019-x64-shared-FALSE-apps: + stage: build + variables: + BUILD_PLATFORM: "VS2019" + ARCHITECTURE: "x64" + SHARED: "FALSE" + APPS: "ON" + script: "CI\\Windows.bat" + tags: + - VS2019 + - Qt5150 + artifacts: + paths: + - build-release/*.exe + reports: + junit: + - build-release/unittests/report.xml + - build-release/unittests/report-customvec.xml + - build-release/unittests/report-doublevec.xml + + #------------- Job Informations: # Type: Build+Test: Release # OS: Windows @@ -440,25 +705,6 @@ build-VS2017-x64-shared-TRUE-apps: - build-release/unittests/report-customvec.xml - build-release/unittests/report-doublevec.xml -build-VS2017-x64-shared-TRUE-no-apps: - stage: build - variables: - BUILD_PLATFORM: "VS2017" - ARCHITECTURE: "x64" - SHARED: "TRUE" - APPS: "OFF" - script: "CI\\Windows.bat" - tags: - - VS2017 - artifacts: - paths: - - build-release/*.exe - reports: - junit: - - build-release/unittests/report.xml - - build-release/unittests/report-customvec.xml - - build-release/unittests/report-doublevec.xml - #------------- Job Informations: # Type: Build+Test: Release # OS: Windows @@ -487,25 +733,6 @@ build-VS2017-x64-shared-FALSE-apps: - build-release/unittests/report-customvec.xml - build-release/unittests/report-doublevec.xml -build-VS2017-x64-shared-FALSE-no-apps: - stage: build - variables: - BUILD_PLATFORM: "VS2017" - ARCHITECTURE: "x64" - SHARED: "FALSE" - APPS: "OFF" - script: "CI\\Windows.bat" - tags: - - VS2017 - artifacts: - paths: - - build-release/*.exe - reports: - junit: - - build-release/unittests/report.xml - - build-release/unittests/report-customvec.xml - - build-release/unittests/report-doublevec.xml - #------------- Job Informations: # Type: Build+Test: Release @@ -625,4 +852,9 @@ Sources: - OpenMesh*.tar.bz2 - OpenMesh*.tar.gz +trigger_openmesh-python-rebuild: + stage: deploy + script: + - "curl -X POST -F token=b63ed804ada51d7d1ffe5d6ea0dfa2 -F ref=track-OM-master https://www.graphics.rwth-aachen.de:9000/api/v4/projects/1024/trigger/pipeline" + diff --git a/CI/Windows.bat b/CI/Windows.bat index acb1e2d2..903c74e8 100644 --- a/CI/Windows.bat +++ b/CI/Windows.bat @@ -49,6 +49,19 @@ IF "%BUILD_PLATFORM%" == "VS2017" ( ) +IF "%BUILD_PLATFORM%" == "VS2019" ( + set LIBPATH=E:\libs\VS2019 + set GTESTVERSION=gtest-1.10.0 + set GENERATOR=Visual Studio 16 2019 + set VS_PATH="C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\Common7\IDE\devenv.com" + + IF "%ARCHITECTURE%" == "x64" ( + set QT_INSTALL_PATH=E:\Qt\5.15.2\msvc2019_64 + set QT_BASE_CONFIG=-DQT5_INSTALL_PATH=E:\Qt\5.15.2\msvc2019_64 + ) + +) + IF "%APPS%" == "ON" ( set STRING_APPS= @@ -107,7 +120,7 @@ IF EXIST %QT_INSTALL_PATH%\ ( ) -"C:\Program Files\CMake\bin\cmake.exe" -DGTEST_ROOT="%LIBPATH%\%ARCHITECTURE%\%GTESTVERSION%" -G "%GENERATOR%" -DCMAKE_BUILD_TYPE=Release -DBUILD_APPS=%APPS% -DOPENMESH_BUILD_UNIT_TESTS=TRUE -DCMAKE_WINDOWS_LIBS_DIR="e:\libs" -DEigen3_DIR="e:\libs\general\Eigen3.3.9\share\eigen3\cmake" -DOPENMESH_BUILD_SHARED=%SHARED% %CMAKE_CONFIGURATION% .. +"C:\Program Files\CMake\bin\cmake.exe" -DGTEST_ROOT="%LIBPATH%\%ARCHITECTURE%\%GTESTVERSION%" -G "%GENERATOR%" -DCMAKE_BUILD_TYPE=Release -DBUILD_APPS=%APPS% -DOPENMESH_BUILD_UNIT_TESTS=TRUE -DCMAKE_WINDOWS_LIBS_DIR="e:\libs" -DOPENMESH_BUILD_SHARED=%SHARED% %CMAKE_CONFIGURATION% .. %VS_PATH% /Build "Release" OpenMesh.sln /Project "ALL_BUILD" @@ -129,7 +142,7 @@ mkdir build-debug cd build-debug -"C:\Program Files\CMake\bin\cmake.exe" -DGTEST_ROOT="%LIBPATH%\%ARCHITECTURE%\%GTESTVERSION%" -G "%GENERATOR%" -DOPENMESH_BUILD_UNIT_TESTS=TRUE -DEigen3_DIR="e:\libs\general\Eigen3.3.9\share\eigen3\cmake" -DCMAKE_BUILD_TYPE=Debug -DOPENMESH_BUILD_SHARED=%SHARED% -DBUILD_APPS=%APPS% %CMAKE_CONFIGURATION% .. +"C:\Program Files\CMake\bin\cmake.exe" -DGTEST_ROOT="%LIBPATH%\%ARCHITECTURE%\%GTESTVERSION%" -G "%GENERATOR%" -DOPENMESH_BUILD_UNIT_TESTS=TRUE -DCMAKE_BUILD_TYPE=Debug -DOPENMESH_BUILD_SHARED=%SHARED% -DBUILD_APPS=%APPS% %CMAKE_CONFIGURATION% .. %VS_PATH% /Build "Debug" OpenMesh.sln /Project "ALL_BUILD" diff --git a/CI/ci-linux-build.sh b/CI/ci-linux-build.sh index db28ab29..eb64b64d 100755 --- a/CI/ci-linux-build.sh +++ b/CI/ci-linux-build.sh @@ -1,4 +1,6 @@ #!/bin/bash +set -e +set -o pipefail source CI/ci-linux-prepare.sh echo -e "${OUTPUT}" @@ -16,22 +18,58 @@ echo "BuildPath: $BUILDPATH" echo "Path: $PATH" echo "Language: $LANGUAGE" -echo -e "${OUTPUT}" -echo "" -echo "======================================================================" -echo "Building $BUILD_TYPE version with vectorchecks enabled" -echo "======================================================================" -echo -e "${NC}" - -if [ ! -d build-$BUILDPATH-Vector-Checks ]; then - mkdir build-$BUILDPATH-Vector-Checks +if [ "$VECTORCHECKS" == "yes" ]; then + echo -e "${OUTPUT}" + echo "" + echo "======================================================================" + echo "Building $BUILD_TYPE version with vectorchecks enabled" + echo "======================================================================" + echo -e "${NC}" fi -cd build-$BUILDPATH-Vector-Checks +if [ ! -d build-$BUILDPATH ]; then + mkdir build-$BUILDPATH +fi -cmake -DCMAKE_BUILD_TYPE=$BUILD_TYPE -DOPENMESH_BUILD_UNIT_TESTS=TRUE -DSTL_VECTOR_CHECKS=ON $OPTIONS ../ +cd build-$BUILDPATH -#build it -make $MAKE_OPTIONS +cmake -DCMAKE_BUILD_TYPE=$BUILD_TYPE -DOPENMESH_BUILD_UNIT_TESTS=TRUE $OPTIONS ../ + +if [ "$IWYU" == "yes" ]; then + # do iwyu check + if echo $(iwyu --version) | grep -q "0.11" + then + # support older tool version + iwyu_tool -j 4 -p . -- \ + --mapping_file=/usr/share/include-what-you-use/gcc.libc.imp \ + --mapping_file=/usr/share/include-what-you-use/clang-6.intrinsics.imp \ + | tee iwyu.dump + else + # current tool version + iwyu_tool -j 4 -p . -- \ + -Xiwyu --mapping_file=/usr/share/include-what-you-use/gcc.libc.imp \ + -Xiwyu --mapping_file=/usr/share/include-what-you-use/clang-6.intrinsics.imp \ + | tee iwyu.dump + fi +else + # build it + make $MAKE_OPTIONS + + # build unittests + make $MAKE_OPTIONS unittests + + # Creating System Library folder to contain all dependend libraries to run OpenFlipper + if [ ! -d systemlib ]; then + echo "Creating systemlib folder" + mkdir systemlib + fi + + echo "Copying all required libraries of OpenMesh to the systemlib directory" + if [ "$BUILD_TYPE" == "release" ]; then + ldd Build/lib/libOpenMeshCore.so.9.0 | grep "=> /" | awk '{print $3}' | xargs -I '{}' cp -v '{}' systemlib + else + ldd Build/lib/libOpenMeshCored.so.9.0 | grep "=> /" | awk '{print $3}' | xargs -I '{}' cp -v '{}' systemlib + fi +fi cd .. \ No newline at end of file diff --git a/CI/ci-linux-prepare.sh b/CI/ci-linux-prepare.sh index 9153abea..ff35c196 100755 --- a/CI/ci-linux-prepare.sh +++ b/CI/ci-linux-prepare.sh @@ -1,9 +1,5 @@ #!/bin/bash -COMPILER=$1 -LANGUAGE=$2 -BUILD_TYPE=$3 - # Exit script on any error set -e @@ -19,9 +15,9 @@ if [ "$COMPILER" == "gcc" ]; then BUILDPATH="gcc" # without icecc: no options required - OPTIONS="$OPTIONS -DCMAKE_CXX_COMPILER=/usr/bin/g++ -DCMAKE_C_COMPILER=/usr/bin/gcc" + OPTIONS="$OPTIONS -DCMAKE_CXX_COMPILER=/usr/lib/icecc/bin/g++ -DCMAKE_C_COMPILER=/usr/lib/icecc/bin/gcc" MAKE_OPTIONS="-j16" - export ICECC_CXX=/usr/bin/g++ ; export ICECC_CC=/usr/bin/gcc + export ICECC_CXX=/usr/bin/g++ ; export ICECC_CC=/usr/bin/gcc elif [ "$COMPILER" == "clang" ]; then @@ -43,6 +39,32 @@ elif [ "$LANGUAGE" == "cpp14" ]; then BUILDPATH="$BUILDPATH-cpp14" fi +if [ "$QTVERSION" == "qt5.13.0" ]; then + echo "Using QT5.13.0"; + BUILDPATH="$BUILDPATH-qt5.13.0" + OPTIONS="$OPTIONS -DQT5_INSTALL_PATH=~/sw/Qt/5.13.0/gcc_64" +elif [ "$QTVERSION" == "qt5.12.2" ]; then + echo "Using QT5.12.2"; + BUILDPATH="$BUILDPATH-qt5.12.2" + OPTIONS="$OPTIONS -DQT5_INSTALL_PATH=~/sw/Qt/5.12.2/gcc_64" +elif [ "$QTVERSION" == "qt5.11.2" ]; then + echo "Using QT5.11.2"; + BUILDPATH="$BUILDPATH-qt5.11.2" + OPTIONS="$OPTIONS -DQT5_INSTALL_PATH=~/sw/Qt/5.11.2/gcc_64" +elif [ "$QTVERSION" == "qt5.9.0" ]; then + echo "Using QT5.9.0"; + BUILDPATH="$BUILDPATH-qt5.9.0" + OPTIONS="$OPTIONS -DQT5_INSTALL_PATH=~/sw/Qt/5.9/gcc_64" +elif [ "$QTVERSION" == "qt5.13.2" ]; then + echo "Using QT5.13.2"; + BUILDPATH="$BUILDPATH-qt5.13.2" + OPTIONS="$OPTIONS -DQT5_INSTALL_PATH=~/sw/Qt/5.13.2/gcc_64" +elif [ "$QTVERSION" == "qt5.15.1" ]; then + echo "Using QT5.15.1"; + BUILDPATH="$BUILDPATH-qt5.15.1" + OPTIONS="$OPTIONS -DQT5_INSTALL_PATH=~/sw/Qt/5.15.1/gcc_64" +fi + #===================================== # Color Settings: #===================================== @@ -56,4 +78,18 @@ if [ "$BUILD_TYPE" == "release" ]; then else export BUILD_TYPE=debug BUILDPATH="$BUILDPATH-debug" -fi \ No newline at end of file +fi + +if [ "$IWYU" == "yes" ]; then + echo "Include what you use enabled."; + BUILDPATH="$BUILDPATH-iwyu" + OPTIONS="$OPTIONS -DCMAKE_EXPORT_COMPILE_COMMANDS=ON" +fi + +if [ "$VECTORCHECKS" == "yes" ]; then + echo "Vectorchecks enabled."; + BUILDPATH="$BUILDPATH-vectorchecks" + OPTIONS="$OPTIONS -DSTL_VECTOR_CHECKS=ON" +fi + +echo "Building to directory $BUILDPATH" diff --git a/CI/ci-linux-test.sh b/CI/ci-linux-test.sh index a9cc5fa8..063e3781 100755 --- a/CI/ci-linux-test.sh +++ b/CI/ci-linux-test.sh @@ -23,14 +23,33 @@ echo "Building $BUILD_TYPE version unittests" echo "======================================================================" echo -e "${NC}" -if [ ! -d build-$BUILDPATH-Vector-Checks ]; then - mkdir build-$BUILDPATH-Vector-Checks +if [ ! -d build-$BUILDPATH ]; then + mkdir build-$BUILDPATH fi -cd build-$BUILDPATH-Vector-Checks +cd build-$BUILDPATH -#build the unit tests -make $MAKE_OPTIONS unittests +#clean old cmake cache as the path might have changed +find . -name "CMakeCache.txt" -type f -delete + +#just to be safe clean the test file definitions too +if [ -f CTestTestfile.cmake ] +then + echo "Removing old CTestTestfile.cmake" + rm CTestTestfile.cmake +fi +#just to be safe clean the test file definitions too +if [ -f DartConfiguration.tcl ] +then + echo "Removing old DartConfiguration.tcl" + rm DartConfiguration.tcl +fi +# Run cmake to make sure the tests are configured correctly for this system +cmake -DOPENFLIPPER_BUILD_UNIT_TESTS=TRUE -DSTL_VECTOR_CHECKS=ON $OPTIONS ../ + +#tell the location to the libs from build jobs +export LD_LIBRARY_PATH=$(pwd)/Build/lib:$LD_LIBRARY_PATH +export LD_LIBRARY_PATH=$(pwd)/Build/systemlib:$LD_LIBRARY_PATH echo -e "${OUTPUT}" echo "" diff --git a/CI/gitlab-ci/ci-master.yml b/CI/gitlab-ci/ci-master.yml index 341375c4..7db5134e 100644 --- a/CI/gitlab-ci/ci-master.yml +++ b/CI/gitlab-ci/ci-master.yml @@ -35,3 +35,8 @@ Sources: - OpenMesh*.tar.bz2 - OpenMesh*.tar.gz +trigger_openmesh-python-rebuild: + stage: deploy + script: + - "curl -X POST -F token=b63ed804ada51d7d1ffe5d6ea0dfa2 -F ref=track-OM-master https://www.graphics.rwth-aachen.de:9000/api/v4/projects/1024/trigger/pipeline" + diff --git a/CI/gitlab-ci/linux-iwyu-job.yml b/CI/gitlab-ci/linux-iwyu-job.yml new file mode 100644 index 00000000..cb8b0d58 --- /dev/null +++ b/CI/gitlab-ci/linux-iwyu-job.yml @@ -0,0 +1,24 @@ +#----------- Job Informations: +# Type: Build: {{BUILDTYPE}} +# OS: Linux +# Compiler: {{COMPILER}} +# Language: {{LANGUAGE}} + +iwyu-{{BUILDTYPE}}-{{COMPILER}}-{{LANGUAGE}}-{{QT_VERSION}}: + stage: build + script: "CI/ci-linux-build.sh" + image: graphics.rwth-aachen.de:4567/docker/docker/docker-openmesh-container + tags: + - Linux + - stretch + variables: + COMPILER: "{{COMPILER}}" + LANGUAGE: "{{LANGUAGE}}" + BUILD_TYPE: "{{BUILDTYPE}}" + QTVERSION: "{{QT_VERSION}}" + IWYU: "yes" + VECTORCHECKS: "yes" + artifacts: + paths: + - build-{{COMPILER}}-{{LANGUAGE}}-{{QT_VERSION}}-{{BUILDTYPE}}-iwyu-vectorchecks/compile_commands.json + - build-{{COMPILER}}-{{LANGUAGE}}-{{QT_VERSION}}-{{BUILDTYPE}}-iwyu-vectorchecks/iwyu.dump diff --git a/CI/gitlab-ci/linux-novchecks-job.yml b/CI/gitlab-ci/linux-novchecks-job.yml new file mode 100644 index 00000000..63ae0ead --- /dev/null +++ b/CI/gitlab-ci/linux-novchecks-job.yml @@ -0,0 +1,23 @@ +#----------- Job Informations: +# Type: Build: {{BUILDTYPE}} +# OS: Linux +# Compiler: {{COMPILER}} +# Language: {{LANGUAGE}} + +nvc-{{BUILDTYPE}}-{{COMPILER}}-{{LANGUAGE}}-{{QT_VERSION}}: + stage: build + script: "CI/ci-linux-build.sh" + image: graphics.rwth-aachen.de:4567/docker/docker/docker-openmesh-container + tags: + - Linux + - stretch + variables: + COMPILER: "{{COMPILER}}" + LANGUAGE: "{{LANGUAGE}}" + BUILD_TYPE: "{{BUILDTYPE}}" + QTVERSION: "{{QT_VERSION}}" + IWYU: "no" + VECTORCHECKS: "no" + artifacts: + paths: + - build-{{COMPILER}}-{{LANGUAGE}}-{{QT_VERSION}}-{{BUILDTYPE}}/ diff --git a/CI/gitlab-ci/linux-template-build-job.yml b/CI/gitlab-ci/linux-template-build-job.yml index 4dce86a3..bd1d5b42 100644 --- a/CI/gitlab-ci/linux-template-build-job.yml +++ b/CI/gitlab-ci/linux-template-build-job.yml @@ -3,12 +3,22 @@ # OS: Linux # Compiler: {{COMPILER}} # Language: {{LANGUAGE}} +# QT Version: {{QT_VERSION}} -build-{{BUILDTYPE}}-{{COMPILER}}-{{LANGUAGE}}: +build-{{BUILDTYPE}}-{{COMPILER}}-{{LANGUAGE}}-{{QT_VERSION}}: stage: build - script: "CI/ci-linux-build.sh {{COMPILER}} {{LANGUAGE}} {{BUILDTYPE}}" - image: graphics.rwth-aachen.de:4567/docker/docker/docker-openmesh-container - tags: [Docker] + script: "CI/ci-linux-build.sh" + #image: graphics.rwth-aachen.de:4567/docker/docker/docker-openmesh-container + tags: + - Linux + - stretch + variables: + COMPILER: "{{COMPILER}}" + LANGUAGE: "{{LANGUAGE}}" + BUILD_TYPE: "{{BUILDTYPE}}" + QTVERSION: "{{QT_VERSION}}" + IWYU: "no" + VECTORCHECKS: "yes" artifacts: paths: - - build-{{COMPILER}}-{{LANGUAGE}}-{{BUILDTYPE}}-Vector-Checks/ + - build-{{COMPILER}}-{{LANGUAGE}}-{{QT_VERSION}}-{{BUILDTYPE}}-vectorchecks/ diff --git a/CI/gitlab-ci/linux-template-test-job.yml b/CI/gitlab-ci/linux-template-test-job.yml index efc091ab..5b84581a 100644 --- a/CI/gitlab-ci/linux-template-test-job.yml +++ b/CI/gitlab-ci/linux-template-test-job.yml @@ -4,17 +4,27 @@ # Compiler: {{COMPILER}} # Language: {{LANGUAGE}} -test-{{BUILDTYPE}}-{{COMPILER}}-{{LANGUAGE}}: +test-{{BUILDTYPE}}-{{COMPILER}}-{{LANGUAGE}}-{{QT_VERSION}}: stage: test - script: "CI/ci-linux-test.sh {{COMPILER}} {{LANGUAGE}} {{BUILDTYPE}}" - image: graphics.rwth-aachen.de:4567/docker/docker/docker-openmesh-container - tags: [Docker] - dependencies: [build-{{BUILDTYPE}}-{{COMPILER}}-{{LANGUAGE}}] - needs: [build-{{BUILDTYPE}}-{{COMPILER}}-{{LANGUAGE}}] + script: "CI/ci-linux-test.sh" + #image: graphics.rwth-aachen.de:4567/docker/docker/docker-openmesh-container + tags: + - Linux + - stretch + - MultiThreads + variables: + COMPILER: "{{COMPILER}}" + LANGUAGE: "{{LANGUAGE}}" + BUILD_TYPE: "{{BUILDTYPE}}" + QTVERSION: "{{QT_VERSION}}" + IWYU: "no" + VECTORCHECKS: "yes" + dependencies: [build-{{BUILDTYPE}}-{{COMPILER}}-{{LANGUAGE}}-{{QT_VERSION}}] + needs: [build-{{BUILDTYPE}}-{{COMPILER}}-{{LANGUAGE}}-{{QT_VERSION}}] artifacts: reports: junit: - - build-{{COMPILER}}-{{LANGUAGE}}-{{BUILDTYPE}}-Vector-Checks/Unittests/report.xml - - build-{{COMPILER}}-{{LANGUAGE}}-{{BUILDTYPE}}-Vector-Checks/Unittests/report-customvec.xml - - build-{{COMPILER}}-{{LANGUAGE}}-{{BUILDTYPE}}-Vector-Checks/Unittests/report-doublevec.xml + - build-{{COMPILER}}-{{LANGUAGE}}-{{QT_VERSION}}-{{BUILDTYPE}}-vectorchecks/Unittests/report.xml + - build-{{COMPILER}}-{{LANGUAGE}}-{{QT_VERSION}}-{{BUILDTYPE}}-vectorchecks/Unittests/report-customvec.xml + - build-{{COMPILER}}-{{LANGUAGE}}-{{QT_VERSION}}-{{BUILDTYPE}}-vectorchecks/Unittests/report-doublevec.xml diff --git a/CI/gitlab-ci/linux.yml b/CI/gitlab-ci/linux.yml index 1ce9de13..6d1653ad 100644 --- a/CI/gitlab-ci/linux.yml +++ b/CI/gitlab-ci/linux.yml @@ -12,7 +12,10 @@ cppcheck: paths: - cppcheck.log -{linux-template-job.yml, COMPILER=gcc, LANGUAGE=cpp11} -{linux-template-job.yml, COMPILER=clang, LANGUAGE=cpp11} -{linux-template-job.yml, COMPILER=gcc, LANGUAGE=cpp14} -{linux-template-job.yml, COMPILER=clang, LANGUAGE=cpp14} +{linux-template-job.yml, COMPILER=gcc, LANGUAGE=cpp11, QT_VERSION=qt5.15.1} +{linux-template-job.yml, COMPILER=clang, LANGUAGE=cpp11, QT_VERSION=qt5.15.1} +{linux-template-job.yml, COMPILER=gcc, LANGUAGE=cpp14, QT_VERSION=qt5.15.1} +{linux-template-job.yml, COMPILER=clang, LANGUAGE=cpp14, QT_VERSION=qt5.15.1} + +{linux-iwyu-job.yml, BUILDTYPE=release, COMPILER=clang, LANGUAGE=cpp14, QT_VERSION=qt5.15.1} +{linux-novchecks-job.yml, BUILDTYPE=release, COMPILER=clang, LANGUAGE=cpp14, QT_VERSION=qt5.15.1} diff --git a/CI/gitlab-ci/windows-template-job-apps.yml b/CI/gitlab-ci/windows-template-job-apps.yml new file mode 100644 index 00000000..b37b7fe3 --- /dev/null +++ b/CI/gitlab-ci/windows-template-job-apps.yml @@ -0,0 +1,28 @@ +#------------- Job Informations: +# Type: Build+Test: Release +# OS: Windows +# Architecture: {{ARCHITECTURE}} +# Shared: {{SHARED}} +# VS Version: {{VSVERSION}} +# Apps: {{APPS}} + +build-{{VSVERSION}}-{{ARCHITECTURE}}-shared-{{SHARED}}-apps: + stage: build + variables: + BUILD_PLATFORM: "{{VSVERSION}}" + ARCHITECTURE: "{{ARCHITECTURE}}" + SHARED: "{{SHARED}}" + APPS: "ON" + script: "CI\\Windows.bat" + tags: + - {{VSVERSION}} + - {{QTTAG}} + artifacts: + paths: + - build-release/*.exe + reports: + junit: + - build-release/unittests/report.xml + - build-release/unittests/report-customvec.xml + - build-release/unittests/report-doublevec.xml + diff --git a/CI/gitlab-ci/windows-template-job-noapps.yml b/CI/gitlab-ci/windows-template-job-noapps.yml new file mode 100644 index 00000000..5be11a49 --- /dev/null +++ b/CI/gitlab-ci/windows-template-job-noapps.yml @@ -0,0 +1,27 @@ +#------------- Job Informations: +# Type: Build+Test: Release +# OS: Windows +# Architecture: {{ARCHITECTURE}} +# Shared: {{SHARED}} +# VS Version: {{VSVERSION}} +# Apps: {{APPS}} + +build-{{VSVERSION}}-{{ARCHITECTURE}}-shared-{{SHARED}}-no-apps: + stage: build + variables: + BUILD_PLATFORM: "{{VSVERSION}}" + ARCHITECTURE: "{{ARCHITECTURE}}" + SHARED: "{{SHARED}}" + APPS: "OFF" + script: "CI\\Windows.bat" + tags: + - {{VSVERSION}} + artifacts: + paths: + - build-release/*.exe + reports: + junit: + - build-release/unittests/report.xml + - build-release/unittests/report-customvec.xml + - build-release/unittests/report-doublevec.xml + diff --git a/CI/gitlab-ci/windows.yml b/CI/gitlab-ci/windows.yml index 0000105c..01a994dc 100644 --- a/CI/gitlab-ci/windows.yml +++ b/CI/gitlab-ci/windows.yml @@ -2,8 +2,11 @@ # Windows tasks # ----------------- -{windows-template-job.yml, ARCHITECTURE=x64, SHARED=TRUE, VSVERSION=VS2017, QTTAG=Qt5101} -{windows-template-job.yml, ARCHITECTURE=x64, SHARED=FALSE, VSVERSION=VS2017, QTTAG=Qt5101} +{windows-template-job-apps.yml, ARCHITECTURE=x64, SHARED=TRUE, VSVERSION=VS2019, QTTAG=Qt5150} +{windows-template-job-apps.yml, ARCHITECTURE=x64, SHARED=FALSE, VSVERSION=VS2019, QTTAG=Qt5150} + +{windows-template-job-apps.yml, ARCHITECTURE=x64, SHARED=TRUE, VSVERSION=VS2017, QTTAG=Qt5101} +{windows-template-job-apps.yml, ARCHITECTURE=x64, SHARED=FALSE, VSVERSION=VS2017, QTTAG=Qt5101} {windows-template-job.yml, ARCHITECTURE=x64, SHARED=TRUE, VSVERSION=VS2015, QTTAG=Qt5101} {windows-template-job.yml, ARCHITECTURE=x64, SHARED=FALSE, VSVERSION=VS2015, QTTAG=Qt5101} diff --git a/CMakeLists.txt b/CMakeLists.txt index 46c329ef..fc804660 100755 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.1.0 FATAL_ERROR) +cmake_minimum_required(VERSION 3.3.0 FATAL_ERROR) # Set and enforce C++-11 flags @@ -7,10 +7,10 @@ set( CMAKE_CXX_STANDARD 11 ) enable_testing() -# Only set project name if OpenMesh is built as stand-alone library -if("${PROJECT_NAME}" STREQUAL "") - project (OpenMesh) -endif() + +project (OpenMesh + VERSION 9.0.0 + LANGUAGES C CXX ) # Set AUTO UIC/MOC Policy to new for CMAKE 3.17 or higher if(${CMAKE_VERSION} VERSION_GREATER_EQUAL "3.17") @@ -43,11 +43,8 @@ set (CMAKE_DEBUG_POSTFIX "d") # include our cmake files include (VCICommon) -vci_get_version () - - # Disable package building when built as an external library -if(${PROJECT_NAME} MATCHES "OpenMesh") +if(${CMAKE_PROJECT_NAME} MATCHES "OpenMesh") include(OpenMeshPackage) endif() @@ -88,7 +85,7 @@ if ( NOT DEFINED BUILD_APPS ) endif() # Only call fixbundle, when we are building OpenMesh standalone -if( (${PROJECT_NAME} MATCHES "OpenMesh") AND BUILD_APPS ) +if( (${CMAKE_PROJECT_NAME} MATCHES "OpenMesh") AND BUILD_APPS ) if (WIN32) if ( NOT "${CMAKE_GENERATOR}" MATCHES "MinGW Makefiles" AND BUILD_APPS ) @@ -120,7 +117,7 @@ if (OPENMESH_BENCHMARK_DIR) endif() # Do not build unit tests when build as external library -if(${PROJECT_NAME} MATCHES "OpenMesh") +if(${CMAKE_PROJECT_NAME} MATCHES "OpenMesh") add_subdirectory (src/Unittests) else() # If built as a dependent project simulate effects of @@ -152,7 +149,7 @@ endif() # ======================================================================== # Only call fixbundle, when we are building OpenMesh standalone -if(${PROJECT_NAME} MATCHES "OpenMesh") +if(${CMAKE_PROJECT_NAME} MATCHES "OpenMesh") if (WIN32 AND BUILD_APPS) # prepare bundle generation cmake file and add a build target for it diff --git a/Doc/changelog.docu b/Doc/changelog.docu index 24f358f1..14b6228a 100644 --- a/Doc/changelog.docu +++ b/Doc/changelog.docu @@ -26,11 +26,22 @@ IO