From bd0ac33bb44a5a4c520d4624d9e8e629f4e53f5f Mon Sep 17 00:00:00 2001 From: Johannes Lenzen Date: Tue, 5 Jan 2021 11:09:54 +0100 Subject: [PATCH 01/59] Added iwyu jobs --- .gitignore | 2 ++ .gitlab-ci.yml | 16 ++++++++++++++++ CI/ci-linux-build.sh | 22 ++++++++++++++++++++-- CI/ci-linux-prepare.sh | 9 ++++++++- CI/gitlab-ci/linux-iwyu-job.yml | 15 +++++++++++++++ CI/gitlab-ci/linux.yml | 2 ++ 6 files changed, 63 insertions(+), 3 deletions(-) create mode 100644 CI/gitlab-ci/linux-iwyu-job.yml diff --git a/.gitignore b/.gitignore index de469da2..1d14c766 100644 --- a/.gitignore +++ b/.gitignore @@ -6,3 +6,5 @@ build* .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..98d10a02 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -321,6 +321,22 @@ test-release-clang-cpp14: +#----------- Job Informations: +# Type: Build: release +# OS: Linux +# Compiler: clang +# Language: cpp14 + +build-release-clang-cpp14: + stage: build + script: "CI/ci-linux-build.sh clang cpp14 release IWYU" + image: graphics.rwth-aachen.de:4567/docker/docker/docker-openmesh-container + tags: [Docker] + artifacts: + paths: + - build-clang-cpp14-release-Vector-Checks/compile_commands.json + - build-clang-cpp14-release-Vector-Checks/iwyu.dump + # ----------------- # MAC tasks # ----------------- diff --git a/CI/ci-linux-build.sh b/CI/ci-linux-build.sh index db28ab29..d4cd9572 100755 --- a/CI/ci-linux-build.sh +++ b/CI/ci-linux-build.sh @@ -31,7 +31,25 @@ cd build-$BUILDPATH-Vector-Checks cmake -DCMAKE_BUILD_TYPE=$BUILD_TYPE -DOPENMESH_BUILD_UNIT_TESTS=TRUE -DSTL_VECTOR_CHECKS=ON $OPTIONS ../ -#build it -make $MAKE_OPTIONS +if [ "$IWYU" == "IWYU" ]; 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 +fi cd .. \ No newline at end of file diff --git a/CI/ci-linux-prepare.sh b/CI/ci-linux-prepare.sh index 9153abea..ce6ef2c6 100755 --- a/CI/ci-linux-prepare.sh +++ b/CI/ci-linux-prepare.sh @@ -3,6 +3,7 @@ COMPILER=$1 LANGUAGE=$2 BUILD_TYPE=$3 +IWYU=$4 # Exit script on any error set -e @@ -56,4 +57,10 @@ if [ "$BUILD_TYPE" == "release" ]; then else export BUILD_TYPE=debug BUILDPATH="$BUILDPATH-debug" -fi \ No newline at end of file +fi + +if [ "$IWYU" == "IWYU" ]; then + echo "Include what you use enabled."; + BUILDPATH="$BUILDPATH-iwyu" + OPTIONS="$OPTIONS -DCMAKE_EXPORT_COMPILE_COMMANDS=ON" +fi diff --git a/CI/gitlab-ci/linux-iwyu-job.yml b/CI/gitlab-ci/linux-iwyu-job.yml new file mode 100644 index 00000000..f6be9e48 --- /dev/null +++ b/CI/gitlab-ci/linux-iwyu-job.yml @@ -0,0 +1,15 @@ +#----------- Job Informations: +# Type: Build: {{BUILDTYPE}} +# OS: Linux +# Compiler: {{COMPILER}} +# Language: {{LANGUAGE}} + +build-{{BUILDTYPE}}-{{COMPILER}}-{{LANGUAGE}}: + stage: build + script: "CI/ci-linux-build.sh {{COMPILER}} {{LANGUAGE}} {{BUILDTYPE}} IWYU" + image: graphics.rwth-aachen.de:4567/docker/docker/docker-openmesh-container + tags: [Docker] + artifacts: + paths: + - build-{{COMPILER}}-{{LANGUAGE}}-{{BUILDTYPE}}-Vector-Checks/compile_commands.json + - build-{{COMPILER}}-{{LANGUAGE}}-{{BUILDTYPE}}-Vector-Checks/iwyu.dump diff --git a/CI/gitlab-ci/linux.yml b/CI/gitlab-ci/linux.yml index 1ce9de13..fdc85ffe 100644 --- a/CI/gitlab-ci/linux.yml +++ b/CI/gitlab-ci/linux.yml @@ -16,3 +16,5 @@ cppcheck: {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-iwyu-job.yml, BUILDTYPE=release, COMPILER=clang, LANGUAGE=cpp14} From 1ff404230f3c7db448ceeb133d6664dfe5c6cbe2 Mon Sep 17 00:00:00 2001 From: Johannes Lenzen Date: Tue, 5 Jan 2021 11:11:02 +0100 Subject: [PATCH 02/59] Renamed iwyu job --- .gitlab-ci.yml | 16 ++++++++-------- CI/gitlab-ci/linux-template-build-job.yml | 2 +- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 98d10a02..62b3bdb0 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -38,7 +38,7 @@ cppcheck: # Compiler: gcc # Language: cpp11 -build-debug-gcc-cpp11: +iwyu-debug-gcc-cpp11: stage: build script: "CI/ci-linux-build.sh gcc cpp11 debug" image: graphics.rwth-aachen.de:4567/docker/docker/docker-openmesh-container @@ -74,7 +74,7 @@ test-debug-gcc-cpp11: # Compiler: gcc # Language: cpp11 -build-release-gcc-cpp11: +iwyu-release-gcc-cpp11: stage: build script: "CI/ci-linux-build.sh gcc cpp11 release" image: graphics.rwth-aachen.de:4567/docker/docker/docker-openmesh-container @@ -110,7 +110,7 @@ test-release-gcc-cpp11: # Compiler: clang # Language: cpp11 -build-debug-clang-cpp11: +iwyu-debug-clang-cpp11: stage: build script: "CI/ci-linux-build.sh clang cpp11 debug" image: graphics.rwth-aachen.de:4567/docker/docker/docker-openmesh-container @@ -146,7 +146,7 @@ test-debug-clang-cpp11: # Compiler: clang # Language: cpp11 -build-release-clang-cpp11: +iwyu-release-clang-cpp11: stage: build script: "CI/ci-linux-build.sh clang cpp11 release" image: graphics.rwth-aachen.de:4567/docker/docker/docker-openmesh-container @@ -182,7 +182,7 @@ test-release-clang-cpp11: # Compiler: gcc # Language: cpp14 -build-debug-gcc-cpp14: +iwyu-debug-gcc-cpp14: stage: build script: "CI/ci-linux-build.sh gcc cpp14 debug" image: graphics.rwth-aachen.de:4567/docker/docker/docker-openmesh-container @@ -218,7 +218,7 @@ test-debug-gcc-cpp14: # Compiler: gcc # Language: cpp14 -build-release-gcc-cpp14: +iwyu-release-gcc-cpp14: stage: build script: "CI/ci-linux-build.sh gcc cpp14 release" image: graphics.rwth-aachen.de:4567/docker/docker/docker-openmesh-container @@ -254,7 +254,7 @@ test-release-gcc-cpp14: # Compiler: clang # Language: cpp14 -build-debug-clang-cpp14: +iwyu-debug-clang-cpp14: stage: build script: "CI/ci-linux-build.sh clang cpp14 debug" image: graphics.rwth-aachen.de:4567/docker/docker/docker-openmesh-container @@ -290,7 +290,7 @@ test-debug-clang-cpp14: # Compiler: clang # Language: cpp14 -build-release-clang-cpp14: +iwyu-release-clang-cpp14: stage: build script: "CI/ci-linux-build.sh clang cpp14 release" image: graphics.rwth-aachen.de:4567/docker/docker/docker-openmesh-container diff --git a/CI/gitlab-ci/linux-template-build-job.yml b/CI/gitlab-ci/linux-template-build-job.yml index 4dce86a3..876a1fd2 100644 --- a/CI/gitlab-ci/linux-template-build-job.yml +++ b/CI/gitlab-ci/linux-template-build-job.yml @@ -4,7 +4,7 @@ # Compiler: {{COMPILER}} # Language: {{LANGUAGE}} -build-{{BUILDTYPE}}-{{COMPILER}}-{{LANGUAGE}}: +iwyu-{{BUILDTYPE}}-{{COMPILER}}-{{LANGUAGE}}: stage: build script: "CI/ci-linux-build.sh {{COMPILER}} {{LANGUAGE}} {{BUILDTYPE}}" image: graphics.rwth-aachen.de:4567/docker/docker/docker-openmesh-container From a4a50217d8d42c30d55f42afb36ef4e4ff56663a Mon Sep 17 00:00:00 2001 From: Johannes Lenzen Date: Tue, 5 Jan 2021 11:12:25 +0100 Subject: [PATCH 03/59] Fixed gitlab ci yaml config errors --- .gitlab-ci.yml | 18 +++++++++--------- CI/gitlab-ci/linux-iwyu-job.yml | 2 +- CI/gitlab-ci/linux-template-build-job.yml | 2 +- 3 files changed, 11 insertions(+), 11 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 62b3bdb0..e1cb3402 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -38,7 +38,7 @@ cppcheck: # Compiler: gcc # Language: cpp11 -iwyu-debug-gcc-cpp11: +build-debug-gcc-cpp11: stage: build script: "CI/ci-linux-build.sh gcc cpp11 debug" image: graphics.rwth-aachen.de:4567/docker/docker/docker-openmesh-container @@ -74,7 +74,7 @@ test-debug-gcc-cpp11: # Compiler: gcc # Language: cpp11 -iwyu-release-gcc-cpp11: +build-release-gcc-cpp11: stage: build script: "CI/ci-linux-build.sh gcc cpp11 release" image: graphics.rwth-aachen.de:4567/docker/docker/docker-openmesh-container @@ -110,7 +110,7 @@ test-release-gcc-cpp11: # Compiler: clang # Language: cpp11 -iwyu-debug-clang-cpp11: +build-debug-clang-cpp11: stage: build script: "CI/ci-linux-build.sh clang cpp11 debug" image: graphics.rwth-aachen.de:4567/docker/docker/docker-openmesh-container @@ -146,7 +146,7 @@ test-debug-clang-cpp11: # Compiler: clang # Language: cpp11 -iwyu-release-clang-cpp11: +build-release-clang-cpp11: stage: build script: "CI/ci-linux-build.sh clang cpp11 release" image: graphics.rwth-aachen.de:4567/docker/docker/docker-openmesh-container @@ -182,7 +182,7 @@ test-release-clang-cpp11: # Compiler: gcc # Language: cpp14 -iwyu-debug-gcc-cpp14: +build-debug-gcc-cpp14: stage: build script: "CI/ci-linux-build.sh gcc cpp14 debug" image: graphics.rwth-aachen.de:4567/docker/docker/docker-openmesh-container @@ -218,7 +218,7 @@ test-debug-gcc-cpp14: # Compiler: gcc # Language: cpp14 -iwyu-release-gcc-cpp14: +build-release-gcc-cpp14: stage: build script: "CI/ci-linux-build.sh gcc cpp14 release" image: graphics.rwth-aachen.de:4567/docker/docker/docker-openmesh-container @@ -254,7 +254,7 @@ test-release-gcc-cpp14: # Compiler: clang # Language: cpp14 -iwyu-debug-clang-cpp14: +build-debug-clang-cpp14: stage: build script: "CI/ci-linux-build.sh clang cpp14 debug" image: graphics.rwth-aachen.de:4567/docker/docker/docker-openmesh-container @@ -290,7 +290,7 @@ test-debug-clang-cpp14: # Compiler: clang # Language: cpp14 -iwyu-release-clang-cpp14: +build-release-clang-cpp14: stage: build script: "CI/ci-linux-build.sh clang cpp14 release" image: graphics.rwth-aachen.de:4567/docker/docker/docker-openmesh-container @@ -327,7 +327,7 @@ test-release-clang-cpp14: # Compiler: clang # Language: cpp14 -build-release-clang-cpp14: +iwyu-release-clang-cpp14: stage: build script: "CI/ci-linux-build.sh clang cpp14 release IWYU" image: graphics.rwth-aachen.de:4567/docker/docker/docker-openmesh-container diff --git a/CI/gitlab-ci/linux-iwyu-job.yml b/CI/gitlab-ci/linux-iwyu-job.yml index f6be9e48..247d8f13 100644 --- a/CI/gitlab-ci/linux-iwyu-job.yml +++ b/CI/gitlab-ci/linux-iwyu-job.yml @@ -4,7 +4,7 @@ # Compiler: {{COMPILER}} # Language: {{LANGUAGE}} -build-{{BUILDTYPE}}-{{COMPILER}}-{{LANGUAGE}}: +iwyu-{{BUILDTYPE}}-{{COMPILER}}-{{LANGUAGE}}: stage: build script: "CI/ci-linux-build.sh {{COMPILER}} {{LANGUAGE}} {{BUILDTYPE}} IWYU" image: graphics.rwth-aachen.de:4567/docker/docker/docker-openmesh-container diff --git a/CI/gitlab-ci/linux-template-build-job.yml b/CI/gitlab-ci/linux-template-build-job.yml index 876a1fd2..4dce86a3 100644 --- a/CI/gitlab-ci/linux-template-build-job.yml +++ b/CI/gitlab-ci/linux-template-build-job.yml @@ -4,7 +4,7 @@ # Compiler: {{COMPILER}} # Language: {{LANGUAGE}} -iwyu-{{BUILDTYPE}}-{{COMPILER}}-{{LANGUAGE}}: +build-{{BUILDTYPE}}-{{COMPILER}}-{{LANGUAGE}}: stage: build script: "CI/ci-linux-build.sh {{COMPILER}} {{LANGUAGE}} {{BUILDTYPE}}" image: graphics.rwth-aachen.de:4567/docker/docker/docker-openmesh-container From 1b97306058cc97d2126310f83bfedfd2f61186f7 Mon Sep 17 00:00:00 2001 From: Johannes Lenzen Date: Tue, 5 Jan 2021 11:15:32 +0100 Subject: [PATCH 04/59] Enabled script error on error --- CI/ci-linux-build.sh | 2 ++ 1 file changed, 2 insertions(+) diff --git a/CI/ci-linux-build.sh b/CI/ci-linux-build.sh index d4cd9572..42dca598 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}" From ad5865bc6b7786ec11f9a87a48621d3246ca078f Mon Sep 17 00:00:00 2001 From: Johannes Lenzen Date: Tue, 5 Jan 2021 15:33:22 +0100 Subject: [PATCH 05/59] Fixed wrong artifact path --- CI/gitlab-ci/linux-iwyu-job.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/CI/gitlab-ci/linux-iwyu-job.yml b/CI/gitlab-ci/linux-iwyu-job.yml index 247d8f13..0e5838aa 100644 --- a/CI/gitlab-ci/linux-iwyu-job.yml +++ b/CI/gitlab-ci/linux-iwyu-job.yml @@ -11,5 +11,5 @@ iwyu-{{BUILDTYPE}}-{{COMPILER}}-{{LANGUAGE}}: tags: [Docker] artifacts: paths: - - build-{{COMPILER}}-{{LANGUAGE}}-{{BUILDTYPE}}-Vector-Checks/compile_commands.json - - build-{{COMPILER}}-{{LANGUAGE}}-{{BUILDTYPE}}-Vector-Checks/iwyu.dump + - build-{{COMPILER}}-{{LANGUAGE}}-{{BUILDTYPE}}-iwyu-Vector-Checks/compile_commands.json + - build-{{COMPILER}}-{{LANGUAGE}}-{{BUILDTYPE}}-iwyu-Vector-Checks/iwyu.dump From 5dd941b48da2c9ca721c9a89dcfe46841dadba2b Mon Sep 17 00:00:00 2001 From: Johannes Lenzen Date: Tue, 5 Jan 2021 16:42:52 +0100 Subject: [PATCH 06/59] Corrected artifacts path --- .gitlab-ci.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index e1cb3402..90a0316c 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -334,8 +334,8 @@ iwyu-release-clang-cpp14: tags: [Docker] artifacts: paths: - - build-clang-cpp14-release-Vector-Checks/compile_commands.json - - build-clang-cpp14-release-Vector-Checks/iwyu.dump + - build-clang-cpp14-release-iwyu-Vector-Checks/compile_commands.json + - build-clang-cpp14-release-iwyu-Vector-Checks/iwyu.dump # ----------------- # MAC tasks From 684d749201cca059a0bc3277b9e10cbc6b32e021 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20M=C3=B6bius?= Date: Fri, 15 Jan 2021 14:53:10 +0100 Subject: [PATCH 07/59] First VS2019 try --- .gitlab-ci.yml | 95 ++++++++++++++++++++++++++++++++++++++++ CI/Windows.bat | 13 ++++++ CI/gitlab-ci/windows.yml | 3 ++ 3 files changed, 111 insertions(+) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 5d60107c..351500fa 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -412,6 +412,101 @@ macos-cpp14-release: # Windows tasks # ----------------- +#------------- Job Informations: +# Type: Build+Test: Release +# OS: Windows +# Architecture: x64 +# Shared: TRUE +# VS Version: VS2017 +# Apps: {{APPS}} + +build-VS2017-x64-shared-TRUE-apps: + stage: build + variables: + BUILD_PLATFORM: "VS2017" + ARCHITECTURE: "x64" + SHARED: "TRUE" + APPS: "ON" + script: "CI\\Windows.bat" + tags: + - VS2017 + - 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 + +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 +# Architecture: x64 +# Shared: FALSE +# VS Version: VS2017 +# Apps: {{APPS}} + +build-VS2017-x64-shared-FALSE-apps: + stage: build + variables: + BUILD_PLATFORM: "VS2017" + ARCHITECTURE: "x64" + SHARED: "FALSE" + APPS: "ON" + script: "CI\\Windows.bat" + tags: + - VS2017 + - 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 + +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 # OS: Windows diff --git a/CI/Windows.bat b/CI/Windows.bat index 616dcf27..2135932f 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\Qt5.15.0\5.15.0\msvc2019_64 + set QT_BASE_CONFIG=-DQT5_INSTALL_PATH=E:\Qt\Qt5.15.0\5.15.0\msvc2019_64 + ) + +) + IF "%APPS%" == "ON" ( set STRING_APPS= diff --git a/CI/gitlab-ci/windows.yml b/CI/gitlab-ci/windows.yml index 0000105c..afd182aa 100644 --- a/CI/gitlab-ci/windows.yml +++ b/CI/gitlab-ci/windows.yml @@ -2,6 +2,9 @@ # Windows tasks # ----------------- +{windows-template-job.yml, ARCHITECTURE=x64, SHARED=TRUE, VSVERSION=VS2017, QTTAG=Qt5150} +{windows-template-job.yml, ARCHITECTURE=x64, SHARED=FALSE, VSVERSION=VS2017, QTTAG=Qt5150} + {windows-template-job.yml, ARCHITECTURE=x64, SHARED=TRUE, VSVERSION=VS2017, QTTAG=Qt5101} {windows-template-job.yml, ARCHITECTURE=x64, SHARED=FALSE, VSVERSION=VS2017, QTTAG=Qt5101} From 53d8207c0f44ee994461eb812a9e130aecdd60c5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20M=C3=B6bius?= Date: Fri, 15 Jan 2021 14:55:14 +0100 Subject: [PATCH 08/59] Wrong compiler --- .gitlab-ci.yml | 28 ++++++++++++++-------------- CI/gitlab-ci/windows.yml | 4 ++-- 2 files changed, 16 insertions(+), 16 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 351500fa..5fa85660 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -417,19 +417,19 @@ macos-cpp14-release: # OS: Windows # Architecture: x64 # Shared: TRUE -# VS Version: VS2017 +# VS Version: VS2019 # Apps: {{APPS}} -build-VS2017-x64-shared-TRUE-apps: +build-VS2019-x64-shared-TRUE-apps: stage: build variables: - BUILD_PLATFORM: "VS2017" + BUILD_PLATFORM: "VS2019" ARCHITECTURE: "x64" SHARED: "TRUE" APPS: "ON" script: "CI\\Windows.bat" tags: - - VS2017 + - VS2019 - Qt5150 artifacts: paths: @@ -440,16 +440,16 @@ 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: +build-VS2019-x64-shared-TRUE-no-apps: stage: build variables: - BUILD_PLATFORM: "VS2017" + BUILD_PLATFORM: "VS2019" ARCHITECTURE: "x64" SHARED: "TRUE" APPS: "OFF" script: "CI\\Windows.bat" tags: - - VS2017 + - VS2019 artifacts: paths: - build-release/*.exe @@ -464,19 +464,19 @@ build-VS2017-x64-shared-TRUE-no-apps: # OS: Windows # Architecture: x64 # Shared: FALSE -# VS Version: VS2017 +# VS Version: VS2019 # Apps: {{APPS}} -build-VS2017-x64-shared-FALSE-apps: +build-VS2019-x64-shared-FALSE-apps: stage: build variables: - BUILD_PLATFORM: "VS2017" + BUILD_PLATFORM: "VS2019" ARCHITECTURE: "x64" SHARED: "FALSE" APPS: "ON" script: "CI\\Windows.bat" tags: - - VS2017 + - VS2019 - Qt5150 artifacts: paths: @@ -487,16 +487,16 @@ 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: +build-VS2019-x64-shared-FALSE-no-apps: stage: build variables: - BUILD_PLATFORM: "VS2017" + BUILD_PLATFORM: "VS2019" ARCHITECTURE: "x64" SHARED: "FALSE" APPS: "OFF" script: "CI\\Windows.bat" tags: - - VS2017 + - VS2019 artifacts: paths: - build-release/*.exe diff --git a/CI/gitlab-ci/windows.yml b/CI/gitlab-ci/windows.yml index afd182aa..b46c2ffa 100644 --- a/CI/gitlab-ci/windows.yml +++ b/CI/gitlab-ci/windows.yml @@ -2,8 +2,8 @@ # Windows tasks # ----------------- -{windows-template-job.yml, ARCHITECTURE=x64, SHARED=TRUE, VSVERSION=VS2017, QTTAG=Qt5150} -{windows-template-job.yml, ARCHITECTURE=x64, SHARED=FALSE, VSVERSION=VS2017, QTTAG=Qt5150} +{windows-template-job.yml, ARCHITECTURE=x64, SHARED=TRUE, VSVERSION=VS2019, QTTAG=Qt5150} +{windows-template-job.yml, ARCHITECTURE=x64, SHARED=FALSE, VSVERSION=VS2019, QTTAG=Qt5150} {windows-template-job.yml, ARCHITECTURE=x64, SHARED=TRUE, VSVERSION=VS2017, QTTAG=Qt5101} {windows-template-job.yml, ARCHITECTURE=x64, SHARED=FALSE, VSVERSION=VS2017, QTTAG=Qt5101} From 510898ee07c7564126f8809ab892dc109e6127d1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20M=C3=B6bius?= Date: Wed, 20 Jan 2021 12:27:47 +0100 Subject: [PATCH 09/59] Ignore cmakelists user files from qtcreator --- .gitignore | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitignore b/.gitignore index de469da2..210ba9f4 100644 --- a/.gitignore +++ b/.gitignore @@ -1,6 +1,6 @@ .project .cproject -CMakeLists.txt.user +CMakeLists.txt.user* build* *.swp .settings From 90bb606aa61aeaec92acb54772e9db1a47427aa3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20M=C3=B6bius?= Date: Wed, 20 Jan 2021 12:29:24 +0100 Subject: [PATCH 10/59] Removed the old vci get version call --- CMakeLists.txt | 9 ++------- VERSION | 6 ------ cmake-library | 2 +- cmake/OpenMeshPackage.cmake | 8 ++++---- openmesh.pc.in | 2 +- src/OpenMesh/Core/CMakeLists.txt | 4 ++-- src/OpenMesh/Tools/CMakeLists.txt | 4 ++-- 7 files changed, 12 insertions(+), 23 deletions(-) delete mode 100644 VERSION diff --git a/CMakeLists.txt b/CMakeLists.txt index 46c329ef..7d199df8 100755 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -7,10 +7,8 @@ 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) # Set AUTO UIC/MOC Policy to new for CMAKE 3.17 or higher if(${CMAKE_VERSION} VERSION_GREATER_EQUAL "3.17") @@ -43,9 +41,6 @@ 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") include(OpenMeshPackage) diff --git a/VERSION b/VERSION deleted file mode 100644 index 77582fff..00000000 --- a/VERSION +++ /dev/null @@ -1,6 +0,0 @@ -VERSION=9.0 -MAJOR=9 -MINOR=0 -PATCH=0 -ID=OPENMESH - diff --git a/cmake-library b/cmake-library index 05efd852..bce3f7ba 160000 --- a/cmake-library +++ b/cmake-library @@ -1 +1 @@ -Subproject commit 05efd8523dbb92b34c4de77b90e55d659839ae3e +Subproject commit bce3f7ba87397b0e8d54394aafd447402e3ee9dd diff --git a/cmake/OpenMeshPackage.cmake b/cmake/OpenMeshPackage.cmake index 39b36b21..2cc10674 100644 --- a/cmake/OpenMeshPackage.cmake +++ b/cmake/OpenMeshPackage.cmake @@ -10,10 +10,10 @@ set (CPACK_PACKAGE_NAME "OpenMesh") set (CPACK_PACKAGE_VENDOR "VCI") # set version -set (CPACK_PACKAGE_VERSION_MAJOR "${OPENMESH_VERSION_MAJOR}") -set (CPACK_PACKAGE_VERSION_MINOR "${OPENMESH_VERSION_MINOR}") -set (CPACK_PACKAGE_VERSION_PATCH "${OPENMESH_VERSION_PATCH}") -set (CPACK_PACKAGE_VERSION "${OPENMESH_VERSION}") +set (CPACK_PACKAGE_VERSION_MAJOR "${PROJECT_VERSION_MAJOR}") +set (CPACK_PACKAGE_VERSION_MINOR "${PROJECT_VERSION_MINOR}") +set (CPACK_PACKAGE_VERSION_PATCH "${PROJECT_VERSION_PATCH}") +set (CPACK_PACKAGE_VERSION "${PROJECT_VERSION}") # addition package info set (CPACK_PACKAGE_DESCRIPTION_SUMMARY "OpenMesh") diff --git a/openmesh.pc.in b/openmesh.pc.in index 99c3437d..1d739832 100644 --- a/openmesh.pc.in +++ b/openmesh.pc.in @@ -5,7 +5,7 @@ includedir=${prefix}/include Name: libOpenMesh Description: OpenMesh library -Version: @OPENMESH_VERSION_MAJOR@.@OPENMESH_VERSION_MINOR@ +Version: @PROJECT_VERSION_MAJOR@.@PROJECT_VERSION_MINOR@ Libs: -L${libdir} @PRIVATE_LIBS@ Cflags: -I${includedir} diff --git a/src/OpenMesh/Core/CMakeLists.txt b/src/OpenMesh/Core/CMakeLists.txt index e92cda32..468cf99a 100644 --- a/src/OpenMesh/Core/CMakeLists.txt +++ b/src/OpenMesh/Core/CMakeLists.txt @@ -42,8 +42,8 @@ if (WIN32) else () vci_add_library (OpenMeshCore SHAREDANDSTATIC ${sources} ${headers}) - set_target_properties (OpenMeshCore PROPERTIES VERSION ${OPENMESH_VERSION_MAJOR}.${OPENMESH_VERSION_MINOR} - SOVERSION ${OPENMESH_VERSION_MAJOR}.${OPENMESH_VERSION_MINOR} ) + set_target_properties (OpenMeshCore PROPERTIES VERSION ${PROJECT_VERSION_MAJOR}.${PROJECT_VERSION_MINOR} + SOVERSION ${PROJECT_VERSION_MAJOR}.${PROJECT_VERSION_MINOR} ) endif () diff --git a/src/OpenMesh/Tools/CMakeLists.txt b/src/OpenMesh/Tools/CMakeLists.txt index 5659d133..cb0defad 100644 --- a/src/OpenMesh/Tools/CMakeLists.txt +++ b/src/OpenMesh/Tools/CMakeLists.txt @@ -44,8 +44,8 @@ if (WIN32) else () vci_add_library (OpenMeshTools SHAREDANDSTATIC ${sources} ${headers}) - set_target_properties (OpenMeshTools PROPERTIES VERSION ${OPENMESH_VERSION_MAJOR}.${OPENMESH_VERSION_MINOR} - SOVERSION ${OPENMESH_VERSION_MAJOR}.${OPENMESH_VERSION_MINOR} ) + set_target_properties (OpenMeshTools PROPERTIES VERSION ${PROJECT_VERSION_MAJOR}.${PROJECT_VERSION_MINOR} + SOVERSION ${PROJECT_VERSION_MAJOR}.${PROJECT_VERSION_MINOR} ) endif () target_link_libraries (OpenMeshTools OpenMeshCore) From a20be770e0021662bcb905c94ee231044ca3f37d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20M=C3=B6bius?= Date: Wed, 20 Jan 2021 12:39:17 +0100 Subject: [PATCH 11/59] Raised minimal cmake version to avoid warnings --- CMakeLists.txt | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 7d199df8..5efa3d46 100755 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -42,7 +42,7 @@ set (CMAKE_DEBUG_POSTFIX "d") include (VCICommon) # Disable package building when built as an external library -if(${PROJECT_NAME} MATCHES "OpenMesh") +if(${CMAKE_PROJECT_NAME} MATCHES "OpenMesh") include(OpenMeshPackage) endif() @@ -83,7 +83,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 ) @@ -115,7 +115,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 @@ -147,7 +147,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 From aab142f09462e055085b874a476be5ad5d641e83 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20M=C3=B6bius?= Date: Wed, 20 Jan 2021 12:59:43 +0100 Subject: [PATCH 12/59] Add path to eigen3 --- CI/Windows.bat | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/CI/Windows.bat b/CI/Windows.bat index 2135932f..3d506a2b 100644 --- a/CI/Windows.bat +++ b/CI/Windows.bat @@ -120,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" -DOPENMESH_BUILD_SHARED=%SHARED% %CMAKE_CONFIGURATION% .. +"C:\Program Files\CMake\bin\cmake.exe" -DGTEST_ROOT="%LIBPATH%\%ARCHITECTURE%\%GTESTVERSION%" -G "%GENERATOR%" -DEigen3_DIR="e:\libs\general\Eigen3.3.9\share\eigen3\cmake" -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" @@ -142,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 -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 -DEigen3_DIR="e:\libs\general\Eigen3.3.9\share\eigen3\cmake" -DCMAKE_BUILD_TYPE=Debug -DOPENMESH_BUILD_SHARED=%SHARED% -DBUILD_APPS=%APPS% %CMAKE_CONFIGURATION% .. %VS_PATH% /Build "Debug" OpenMesh.sln /Project "ALL_BUILD" From e9e0b8f16bc196fde69896197521a0ece4e242ec Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20M=C3=B6bius?= Date: Wed, 20 Jan 2021 13:03:11 +0100 Subject: [PATCH 13/59] Updated changelog --- Doc/changelog.docu | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/Doc/changelog.docu b/Doc/changelog.docu index 24f358f1..eabdedaf 100644 --- a/Doc/changelog.docu +++ b/Doc/changelog.docu @@ -26,11 +26,16 @@ IO
  • STL Reader: Change stl reader behaviour on extension .stl , Don't check for the solid keyword explicitly
  • +
  • OM Writer: Removed debug output
Build System
  • Dropped 32-bit Windows continuous integration and artifact builds.
  • +
  • Removed the VERSION file and do it via cmakes project call) +
  • Switched to external cmake-library used by all of our projects now
  • +
  • Removed custom Eigen3 finder. Eigen3 has full cmake support. (You can point OpenMesh to eigen via -DEigen3_DIR="c:\" ) +
  • Added support for and fixed some issues with VS2019
From cba826106d417610b35bfc3183c36945d3296378 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20M=C3=B6bius?= Date: Wed, 20 Jan 2021 14:55:52 +0100 Subject: [PATCH 14/59] Updated relase howto --- release.howto | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/release.howto b/release.howto index dae655c7..9ad456c4 100644 --- a/release.howto +++ b/release.howto @@ -1,10 +1,11 @@ 1. check files, build on windows,mac,linux with cmake (-> Done by CI) 2. check files with release numbers: + cmake/FindOpenMesh.cmake Doc/changelog.docu src/OpenMesh/Core/System/config.h README - VERSION + CMakeLists.txt ( version setting in project call) 3. Tag the current version in the git 4. Create HTML-Documentation in OpenMesh/Documentation (!) 5. Create tar-ball and zip-archive ( -> Done by CI) From 2504cac5668ba1747732a7564fe4c09530cf5a07 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20M=C3=B6bius?= Date: Wed, 20 Jan 2021 16:27:55 +0100 Subject: [PATCH 15/59] Replace remaining PROJECT_NAMES with CMAKE_PROJECT_NAMES --- src/OpenMesh/Apps/CMakeLists.txt | 2 +- src/OpenMesh/Core/CMakeLists.txt | 8 ++++---- src/OpenMesh/Tools/CMakeLists.txt | 6 +++--- 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/src/OpenMesh/Apps/CMakeLists.txt b/src/OpenMesh/Apps/CMakeLists.txt index 6ecb9211..2e17ab99 100644 --- a/src/OpenMesh/Apps/CMakeLists.txt +++ b/src/OpenMesh/Apps/CMakeLists.txt @@ -7,7 +7,7 @@ endif() if ( BUILD_APPS ) # Only build and fixbundle apps, when we are building OpenMesh standalone - if(${PROJECT_NAME} MATCHES "OpenMesh") + if(${CMAKE_PROJECT_NAME} MATCHES "OpenMesh") if ( WIN32 AND OPENMESH_BUILD_SHARED ) add_definitions(-DOPENMESHDLL ) diff --git a/src/OpenMesh/Core/CMakeLists.txt b/src/OpenMesh/Core/CMakeLists.txt index 468cf99a..59e3fecf 100644 --- a/src/OpenMesh/Core/CMakeLists.txt +++ b/src/OpenMesh/Core/CMakeLists.txt @@ -25,7 +25,7 @@ vci_append_files (headers "*.hh" ${directories}) vci_append_files (sources "*.cc" ${directories}) # Disable Library installation when not building OpenMesh on its own but as part of another project! -if ( NOT ${PROJECT_NAME} MATCHES "OpenMesh") +if ( NOT ${CMAKE_PROJECT_NAME} MATCHES "OpenMesh") set(VCI_NO_LIBRARY_INSTALL true) endif() @@ -48,7 +48,7 @@ else () endif () # Add core as dependency before fixbundle -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" ) @@ -65,7 +65,7 @@ if ( (${PROJECT_NAME} MATCHES "OpenMesh") AND BUILD_APPS ) endif() # if we build debug and release in the same dir, we want to install both! -if ( ${PROJECT_NAME} MATCHES "OpenMesh") +if ( ${CMAKE_PROJECT_NAME} MATCHES "OpenMesh") if ( WIN32 ) FILE(GLOB files_install_libs "${CMAKE_BINARY_DIR}/Build/lib/*.lib" ) FILE(GLOB files_install_dlls "${CMAKE_BINARY_DIR}/Build/*.dll" ) @@ -101,7 +101,7 @@ endif() # Only install if the project name matches OpenMesh. -if (NOT APPLE AND ${PROJECT_NAME} MATCHES "OpenMesh") +if (NOT APPLE AND ${CMAKE_PROJECT_NAME} MATCHES "OpenMesh") # Install Header Files) install(DIRECTORY . diff --git a/src/OpenMesh/Tools/CMakeLists.txt b/src/OpenMesh/Tools/CMakeLists.txt index cb0defad..8265af19 100644 --- a/src/OpenMesh/Tools/CMakeLists.txt +++ b/src/OpenMesh/Tools/CMakeLists.txt @@ -27,7 +27,7 @@ IF(WIN32 AND NOT MINGW) ENDIF(WIN32 AND NOT MINGW) # Disable Library installation when not building OpenMesh on its own but as part of another project! -if ( NOT ${PROJECT_NAME} MATCHES "OpenMesh") +if ( NOT ${CMAKE_PROJECT_NAME} MATCHES "OpenMesh") set(VCI_NO_LIBRARY_INSTALL true) endif() @@ -54,7 +54,7 @@ IF( NOT WIN32 ) target_link_libraries (OpenMeshToolsStatic OpenMeshCoreStatic) ENDIF(NOT WIN32) -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" ) @@ -97,7 +97,7 @@ endif() # Only install if the project name matches OpenMesh. -if (NOT APPLE AND ${PROJECT_NAME} MATCHES "OpenMesh") +if (NOT APPLE AND ${CMAKE_PROJECT_NAME} MATCHES "OpenMesh") # Install Header Files install(DIRECTORY . From f558c26e3fd6be0e05ef59623b0b917aaa07cba6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20M=C3=B6bius?= Date: Thu, 21 Jan 2021 11:11:39 +0100 Subject: [PATCH 16/59] Test_without_eigen_path_in_ci_script --- CI/Windows.bat | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/CI/Windows.bat b/CI/Windows.bat index 3269b6bf..27375c5a 100644 --- a/CI/Windows.bat +++ b/CI/Windows.bat @@ -120,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" @@ -142,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" From e416517c59f3b34e73f104295d2b22549d19e491 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20M=C3=B6bius?= Date: Thu, 21 Jan 2021 11:45:23 +0100 Subject: [PATCH 17/59] Specify language in project call --- CMakeLists.txt | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 5efa3d46..b294c611 100755 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -8,7 +8,9 @@ set( CMAKE_CXX_STANDARD 11 ) enable_testing() -project (OpenMesh VERSION 9.0.0) +project (OpenMesh + VERSION 9.0.0 + LANGUAGES CXX ) # Set AUTO UIC/MOC Policy to new for CMAKE 3.17 or higher if(${CMAKE_VERSION} VERSION_GREATER_EQUAL "3.17") From b919ead53b2e7b6bf9134ca21a13e2f4a873326f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20M=C3=B6bius?= Date: Thu, 21 Jan 2021 11:50:48 +0100 Subject: [PATCH 18/59] Specify language in project call --- CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index b294c611..5b7fa82b 100755 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -10,7 +10,7 @@ enable_testing() project (OpenMesh VERSION 9.0.0 - LANGUAGES CXX ) + LANGUAGES C CXX ) # Set AUTO UIC/MOC Policy to new for CMAKE 3.17 or higher if(${CMAKE_VERSION} VERSION_GREATER_EQUAL "3.17") From 19b38a5b8b21a816fa67d46711113b14469efad6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20M=C3=B6bius?= Date: Thu, 21 Jan 2021 12:18:26 +0100 Subject: [PATCH 19/59] Only include flags if the corresponding language is available --- CMakeLists.txt | 2 +- cmake-library | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 5b7fa82b..b294c611 100755 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -10,7 +10,7 @@ enable_testing() project (OpenMesh VERSION 9.0.0 - LANGUAGES C CXX ) + LANGUAGES CXX ) # Set AUTO UIC/MOC Policy to new for CMAKE 3.17 or higher if(${CMAKE_VERSION} VERSION_GREATER_EQUAL "3.17") diff --git a/cmake-library b/cmake-library index bce3f7ba..7399ec4e 160000 --- a/cmake-library +++ b/cmake-library @@ -1 +1 @@ -Subproject commit bce3f7ba87397b0e8d54394aafd447402e3ee9dd +Subproject commit 7399ec4ec36ec9bf1f3f135b9c96bc37181ee1f5 From 243bb928d8677a2d7387543e67ded7bce61b0cc0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20M=C3=B6bius?= Date: Thu, 21 Jan 2021 12:36:16 +0100 Subject: [PATCH 20/59] Fixed library --- cmake-library | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cmake-library b/cmake-library index 7399ec4e..3ed14638 160000 --- a/cmake-library +++ b/cmake-library @@ -1 +1 @@ -Subproject commit 7399ec4ec36ec9bf1f3f135b9c96bc37181ee1f5 +Subproject commit 3ed14638f8c44d6c923343cc03f081ad5ae00488 From a76898f12ae3d594cdf0687a205974fb458519f3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20M=C3=B6bius?= Date: Thu, 21 Jan 2021 12:48:51 +0100 Subject: [PATCH 21/59] Remove VS 11 definition (not supported anymore) --- src/Unittests/CMakeLists.txt | 4 ---- 1 file changed, 4 deletions(-) diff --git a/src/Unittests/CMakeLists.txt b/src/Unittests/CMakeLists.txt index 22595feb..0c2a61d4 100644 --- a/src/Unittests/CMakeLists.txt +++ b/src/Unittests/CMakeLists.txt @@ -34,10 +34,6 @@ if ( OPENMESH_BUILD_UNIT_TESTS ) message(WARNING "Eigen3 not found! This will skip the Eigen3 Unittests. You can point cmake to Eigen3 by setting Eigen3_DIR to the cmake files of Eigen3") endif() - if ( CMAKE_GENERATOR MATCHES "^Visual Studio 11.*" ) - add_definitions( /D _VARIADIC_MAX=10 ) - endif() - # Create new target named unittests_hexmeshing FILE(GLOB UNITTEST_SRC *.cc) # Create unittest executable From ff1747f7d101a6e3daca3b436bef266a72f8ac3b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20M=C3=B6bius?= Date: Thu, 21 Jan 2021 13:37:30 +0100 Subject: [PATCH 22/59] Argument parsing is still C --- CMakeLists.txt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index b294c611..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 @@ -10,7 +10,7 @@ enable_testing() project (OpenMesh VERSION 9.0.0 - LANGUAGES CXX ) + LANGUAGES C CXX ) # Set AUTO UIC/MOC Policy to new for CMAKE 3.17 or higher if(${CMAKE_VERSION} VERSION_GREATER_EQUAL "3.17") From ce49891c490b487caf1564e04c8906275e74586b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20M=C3=B6bius?= Date: Mon, 25 Jan 2021 16:06:36 +0100 Subject: [PATCH 23/59] Throw assertion in debug when adding topologically degenerate faces closes #66 --- src/OpenMesh/Core/Mesh/PolyConnectivity.cc | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/src/OpenMesh/Core/Mesh/PolyConnectivity.cc b/src/OpenMesh/Core/Mesh/PolyConnectivity.cc index e2eaf45c..9811b43a 100644 --- a/src/OpenMesh/Core/Mesh/PolyConnectivity.cc +++ b/src/OpenMesh/Core/Mesh/PolyConnectivity.cc @@ -304,6 +304,14 @@ PolyConnectivity::add_face(const VertexHandle* _vertex_handles, size_t _vhs_size SmartFaceHandle PolyConnectivity::add_face(VertexHandle _vh0, VertexHandle _vh1, VertexHandle _vh2, VertexHandle _vh3) { + // Check if we have been given a degenerate configuration (2 vertices are identical) + assert(_vh0!=_vh1); + assert(_vh0!=_vh2); + assert(_vh1!=_vh2); + assert(_vh0!=_vh3); + assert(_vh1!=_vh3); + assert(_vh2!=_vh3); + VertexHandle vhs[4] = { _vh0, _vh1, _vh2, _vh3 }; return add_face(vhs, 4); } @@ -312,6 +320,11 @@ SmartFaceHandle PolyConnectivity::add_face(VertexHandle _vh0, VertexHandle _vh1, SmartFaceHandle PolyConnectivity::add_face(VertexHandle _vh0, VertexHandle _vh1, VertexHandle _vh2) { + // Check if we have been given a degenerate configuration (2 vertices are identical) + assert(_vh0!=_vh1); + assert(_vh0!=_vh2); + assert(_vh1!=_vh2); + VertexHandle vhs[3] = { _vh0, _vh1, _vh2 }; return add_face(vhs, 3); } From af9741fe3b4dbe1e28596417ba0e10a0581067a1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20M=C3=B6bius?= Date: Fri, 29 Jan 2021 09:07:25 +0100 Subject: [PATCH 24/59] Fix bad unittest --- src/Unittests/unittests_convert_meshes.cc | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/Unittests/unittests_convert_meshes.cc b/src/Unittests/unittests_convert_meshes.cc index a86a78d9..2cd5cf7a 100644 --- a/src/Unittests/unittests_convert_meshes.cc +++ b/src/Unittests/unittests_convert_meshes.cc @@ -201,8 +201,12 @@ TEST_F(OpenMeshConvertPolyMeshToTriangle, VertexFaceCheck) { EXPECT_EQ(4u, p.n_vertices() ) << "Wrong number of vertices in TriMesh"; Mesh::VertexIter it = mesh_.vertices_begin(); + + //add face to original mesh - mesh_.add_face(vhand,(*it),(*++it)); + Mesh::VertexHandle vhand1 = *it; + Mesh::VertexHandle vhand2 = (*++it); + mesh_.add_face(vhand,vhand1,vhand2); EXPECT_EQ(2u, mesh_.n_faces() ) << "Wrong number of faces in PolyMesh"; EXPECT_EQ(2u, p.n_faces() ) << "Wrong number of faces in TriMesh"; From 4bbdbd36074ca83ab949bc8deca7b1c991d70ca9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20M=C3=B6bius?= Date: Mon, 1 Feb 2021 09:36:33 +0100 Subject: [PATCH 25/59] Switched Qt Version for Windows --- CI/Windows.bat | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/CI/Windows.bat b/CI/Windows.bat index 27375c5a..903c74e8 100644 --- a/CI/Windows.bat +++ b/CI/Windows.bat @@ -56,8 +56,8 @@ IF "%BUILD_PLATFORM%" == "VS2019" ( 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\Qt5.15.0\5.15.0\msvc2019_64 - set QT_BASE_CONFIG=-DQT5_INSTALL_PATH=E:\Qt\Qt5.15.0\5.15.0\msvc2019_64 + 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 ) ) From f97bded9e5f4deb69c47f4063d00b36dd5c5917a Mon Sep 17 00:00:00 2001 From: Johannes Lenzen Date: Tue, 2 Feb 2021 14:12:04 +0100 Subject: [PATCH 26/59] Testing gitlab ci qt pipelines --- .gitlab-ci.yml | 336 +++++++++++++++------- CI/ci-linux-prepare.sh | 26 ++ CI/gitlab-ci/linux-template-build-job.yml | 17 +- CI/gitlab-ci/linux-template-test-job.yml | 25 +- CI/gitlab-ci/linux.yml | 10 +- 5 files changed, 301 insertions(+), 113 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 10742901..4c366eae 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -37,15 +37,24 @@ 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] + #image: graphics.rwth-aachen.de:4567/docker/docker/docker-openmesh-container + variables: + COMPILER: "gcc" + LANGUAGE: "cpp11" + QTVERSION: "qt5.15.1" + BUILDTYPE: "debug" + GIT_SUBMODULE_STRATEGY: recursive + tags: + - Linux + - stretch artifacts: paths: - - build-gcc-cpp11-debug-Vector-Checks/ + - build-gcc-cpp11-debug-qt5.15.1-Vector-Checks/ #----------- Job Informations: # Type: Test: debug @@ -53,19 +62,28 @@ 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] + #image: graphics.rwth-aachen.de:4567/docker/docker/docker-openmesh-container + tags: + - Linux + - stretch + - MultiThreads + variables: + COMPILER: "gcc" + LANGUAGE: "cpp11" + QTVERSION: "qt5.15.1" + BUILDTYPE: "debug" + GIT_SUBMODULE_STRATEGY: recursive + 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-debug-qt5.15.1-Vector-Checks/Unittests/report.xml + - build-gcc-cpp11-debug-qt5.15.1-Vector-Checks/Unittests/report-customvec.xml + - build-gcc-cpp11-debug-qt5.15.1-Vector-Checks/Unittests/report-doublevec.xml #----------- Job Informations: @@ -73,15 +91,24 @@ 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] + #image: graphics.rwth-aachen.de:4567/docker/docker/docker-openmesh-container + variables: + COMPILER: "gcc" + LANGUAGE: "cpp11" + QTVERSION: "qt5.15.1" + BUILDTYPE: "release" + GIT_SUBMODULE_STRATEGY: recursive + tags: + - Linux + - stretch artifacts: paths: - - build-gcc-cpp11-release-Vector-Checks/ + - build-gcc-cpp11-release-qt5.15.1-Vector-Checks/ #----------- Job Informations: # Type: Test: release @@ -89,19 +116,28 @@ 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] + #image: graphics.rwth-aachen.de:4567/docker/docker/docker-openmesh-container + tags: + - Linux + - stretch + - MultiThreads + variables: + COMPILER: "gcc" + LANGUAGE: "cpp11" + QTVERSION: "qt5.15.1" + BUILDTYPE: "release" + GIT_SUBMODULE_STRATEGY: recursive + 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-release-qt5.15.1-Vector-Checks/Unittests/report.xml + - build-gcc-cpp11-release-qt5.15.1-Vector-Checks/Unittests/report-customvec.xml + - build-gcc-cpp11-release-qt5.15.1-Vector-Checks/Unittests/report-doublevec.xml #----------- Job Informations: @@ -109,15 +145,24 @@ 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] + #image: graphics.rwth-aachen.de:4567/docker/docker/docker-openmesh-container + variables: + COMPILER: "clang" + LANGUAGE: "cpp11" + QTVERSION: "qt5.15.1" + BUILDTYPE: "debug" + GIT_SUBMODULE_STRATEGY: recursive + tags: + - Linux + - stretch artifacts: paths: - - build-clang-cpp11-debug-Vector-Checks/ + - build-clang-cpp11-debug-qt5.15.1-Vector-Checks/ #----------- Job Informations: # Type: Test: debug @@ -125,19 +170,28 @@ 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] + #image: graphics.rwth-aachen.de:4567/docker/docker/docker-openmesh-container + tags: + - Linux + - stretch + - MultiThreads + variables: + COMPILER: "clang" + LANGUAGE: "cpp11" + QTVERSION: "qt5.15.1" + BUILDTYPE: "debug" + GIT_SUBMODULE_STRATEGY: recursive + 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-debug-qt5.15.1-Vector-Checks/Unittests/report.xml + - build-clang-cpp11-debug-qt5.15.1-Vector-Checks/Unittests/report-customvec.xml + - build-clang-cpp11-debug-qt5.15.1-Vector-Checks/Unittests/report-doublevec.xml #----------- Job Informations: @@ -145,15 +199,24 @@ 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] + #image: graphics.rwth-aachen.de:4567/docker/docker/docker-openmesh-container + variables: + COMPILER: "clang" + LANGUAGE: "cpp11" + QTVERSION: "qt5.15.1" + BUILDTYPE: "release" + GIT_SUBMODULE_STRATEGY: recursive + tags: + - Linux + - stretch artifacts: paths: - - build-clang-cpp11-release-Vector-Checks/ + - build-clang-cpp11-release-qt5.15.1-Vector-Checks/ #----------- Job Informations: # Type: Test: release @@ -161,19 +224,28 @@ 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] + #image: graphics.rwth-aachen.de:4567/docker/docker/docker-openmesh-container + tags: + - Linux + - stretch + - MultiThreads + variables: + COMPILER: "clang" + LANGUAGE: "cpp11" + QTVERSION: "qt5.15.1" + BUILDTYPE: "release" + GIT_SUBMODULE_STRATEGY: recursive + 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-release-qt5.15.1-Vector-Checks/Unittests/report.xml + - build-clang-cpp11-release-qt5.15.1-Vector-Checks/Unittests/report-customvec.xml + - build-clang-cpp11-release-qt5.15.1-Vector-Checks/Unittests/report-doublevec.xml #----------- Job Informations: @@ -181,15 +253,24 @@ 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] + #image: graphics.rwth-aachen.de:4567/docker/docker/docker-openmesh-container + variables: + COMPILER: "gcc" + LANGUAGE: "cpp14" + QTVERSION: "qt5.15.1" + BUILDTYPE: "debug" + GIT_SUBMODULE_STRATEGY: recursive + tags: + - Linux + - stretch artifacts: paths: - - build-gcc-cpp14-debug-Vector-Checks/ + - build-gcc-cpp14-debug-qt5.15.1-Vector-Checks/ #----------- Job Informations: # Type: Test: debug @@ -197,19 +278,28 @@ 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] + #image: graphics.rwth-aachen.de:4567/docker/docker/docker-openmesh-container + tags: + - Linux + - stretch + - MultiThreads + variables: + COMPILER: "gcc" + LANGUAGE: "cpp14" + QTVERSION: "qt5.15.1" + BUILDTYPE: "debug" + GIT_SUBMODULE_STRATEGY: recursive + 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-debug-qt5.15.1-Vector-Checks/Unittests/report.xml + - build-gcc-cpp14-debug-qt5.15.1-Vector-Checks/Unittests/report-customvec.xml + - build-gcc-cpp14-debug-qt5.15.1-Vector-Checks/Unittests/report-doublevec.xml #----------- Job Informations: @@ -217,15 +307,24 @@ 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] + #image: graphics.rwth-aachen.de:4567/docker/docker/docker-openmesh-container + variables: + COMPILER: "gcc" + LANGUAGE: "cpp14" + QTVERSION: "qt5.15.1" + BUILDTYPE: "release" + GIT_SUBMODULE_STRATEGY: recursive + tags: + - Linux + - stretch artifacts: paths: - - build-gcc-cpp14-release-Vector-Checks/ + - build-gcc-cpp14-release-qt5.15.1-Vector-Checks/ #----------- Job Informations: # Type: Test: release @@ -233,19 +332,28 @@ 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] + #image: graphics.rwth-aachen.de:4567/docker/docker/docker-openmesh-container + tags: + - Linux + - stretch + - MultiThreads + variables: + COMPILER: "gcc" + LANGUAGE: "cpp14" + QTVERSION: "qt5.15.1" + BUILDTYPE: "release" + GIT_SUBMODULE_STRATEGY: recursive + 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-release-qt5.15.1-Vector-Checks/Unittests/report.xml + - build-gcc-cpp14-release-qt5.15.1-Vector-Checks/Unittests/report-customvec.xml + - build-gcc-cpp14-release-qt5.15.1-Vector-Checks/Unittests/report-doublevec.xml #----------- Job Informations: @@ -253,15 +361,24 @@ 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] + #image: graphics.rwth-aachen.de:4567/docker/docker/docker-openmesh-container + variables: + COMPILER: "clang" + LANGUAGE: "cpp14" + QTVERSION: "qt5.15.1" + BUILDTYPE: "debug" + GIT_SUBMODULE_STRATEGY: recursive + tags: + - Linux + - stretch artifacts: paths: - - build-clang-cpp14-debug-Vector-Checks/ + - build-clang-cpp14-debug-qt5.15.1-Vector-Checks/ #----------- Job Informations: # Type: Test: debug @@ -269,19 +386,28 @@ 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] + #image: graphics.rwth-aachen.de:4567/docker/docker/docker-openmesh-container + tags: + - Linux + - stretch + - MultiThreads + variables: + COMPILER: "clang" + LANGUAGE: "cpp14" + QTVERSION: "qt5.15.1" + BUILDTYPE: "debug" + GIT_SUBMODULE_STRATEGY: recursive + 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-debug-qt5.15.1-Vector-Checks/Unittests/report.xml + - build-clang-cpp14-debug-qt5.15.1-Vector-Checks/Unittests/report-customvec.xml + - build-clang-cpp14-debug-qt5.15.1-Vector-Checks/Unittests/report-doublevec.xml #----------- Job Informations: @@ -289,15 +415,24 @@ test-debug-clang-cpp14: # OS: Linux # Compiler: clang # Language: cpp14 +# QT Version: qt5.15.1 -build-release-clang-cpp14: +build-release-clang-cpp14-qt5.15.1: stage: build script: "CI/ci-linux-build.sh clang cpp14 release" - image: graphics.rwth-aachen.de:4567/docker/docker/docker-openmesh-container - tags: [Docker] + #image: graphics.rwth-aachen.de:4567/docker/docker/docker-openmesh-container + variables: + COMPILER: "clang" + LANGUAGE: "cpp14" + QTVERSION: "qt5.15.1" + BUILDTYPE: "release" + GIT_SUBMODULE_STRATEGY: recursive + tags: + - Linux + - stretch artifacts: paths: - - build-clang-cpp14-release-Vector-Checks/ + - build-clang-cpp14-release-qt5.15.1-Vector-Checks/ #----------- Job Informations: # Type: Test: release @@ -305,19 +440,28 @@ build-release-clang-cpp14: # Compiler: clang # Language: cpp14 -test-release-clang-cpp14: +test-release-clang-cpp14-qt5.15.1: stage: test script: "CI/ci-linux-test.sh clang cpp14 release" - image: graphics.rwth-aachen.de:4567/docker/docker/docker-openmesh-container - tags: [Docker] - dependencies: [build-release-clang-cpp14] - needs: [build-release-clang-cpp14] + #image: graphics.rwth-aachen.de:4567/docker/docker/docker-openmesh-container + tags: + - Linux + - stretch + - MultiThreads + variables: + COMPILER: "clang" + LANGUAGE: "cpp14" + QTVERSION: "qt5.15.1" + BUILDTYPE: "release" + GIT_SUBMODULE_STRATEGY: recursive + dependencies: [build-release-clang-cpp14-qt5.15.1] + needs: [build-release-clang-cpp14-qt5.15.1] 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 + - build-clang-cpp14-release-qt5.15.1-Vector-Checks/Unittests/report.xml + - build-clang-cpp14-release-qt5.15.1-Vector-Checks/Unittests/report-customvec.xml + - build-clang-cpp14-release-qt5.15.1-Vector-Checks/Unittests/report-doublevec.xml diff --git a/CI/ci-linux-prepare.sh b/CI/ci-linux-prepare.sh index ce6ef2c6..e66cf5f9 100755 --- a/CI/ci-linux-prepare.sh +++ b/CI/ci-linux-prepare.sh @@ -44,6 +44,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 -DQWT6_INCLUDE_DIR=~/sw/qwt-6.1.4-qt5.13.0/include -DQWT6_LIBRARY_DIR=~/sw/qwt-6.1.4-qt5.13.0/lib -DQWT6_LIBRARY=~/sw/qwt-6.1.4-qt5.13.0/lib/libqwt.so -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 -DQWT6_INCLUDE_DIR=~/sw/qwt-6.1.4-qt5.12.2/include -DQWT6_LIBRARY_DIR=~/sw/qwt-6.1.4-qt5.12.2/lib -DQWT6_LIBRARY=~/sw/qwt-6.1.4-qt5.12.2/lib/libqwt.so -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 -DQWT6_INCLUDE_DIR=~/sw/qwt-6.1.3-qt5.11.2/include -DQWT6_LIBRARY_DIR=~/sw/qwt-6.1.3-qt5.11.2/lib -DQWT6_LIBRARY=~/sw/qwt-6.1.3-qt5.11.2/lib/libqwt.so -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 -DQWT6_INCLUDE_DIR=~/sw/qwt-6.1.3-qt5.9.0/include -DQWT6_LIBRARY_DIR=~/sw/qwt-6.1.3-qt5.9.0/lib -DQWT6_LIBRARY=~/sw/qwt-6.1.3-qt5.9.0/lib/libqwt.so -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 -DQWT6_INCLUDE_DIR=~/sw/qwt-6.1.4-qt5.13.2/include -DQWT6_LIBRARY_DIR=~/sw/qwt-6.1.4-qt5.13.2/lib -DQWT6_LIBRARY=~/sw/qwt-6.1.4-qt5.13.2/lib/libqwt.so -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 -DQWT6_INCLUDE_DIR=~/sw/qwt-6.1.5-qt5.15.1/include -DQWT6_LIBRARY_DIR=~/sw/qwt-6.1.5-qt5.15.1/lib -DQWT6_LIBRARY=~/sw/qwt-6.1.5-qt5.15.1/lib/libqwt.so -DQT5_INSTALL_PATH=~/sw/Qt/5.15.1/gcc_64" +fi + #===================================== # Color Settings: #===================================== diff --git a/CI/gitlab-ci/linux-template-build-job.yml b/CI/gitlab-ci/linux-template-build-job.yml index 4dce86a3..82889e41 100644 --- a/CI/gitlab-ci/linux-template-build-job.yml +++ b/CI/gitlab-ci/linux-template-build-job.yml @@ -3,12 +3,21 @@ # 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] + #image: graphics.rwth-aachen.de:4567/docker/docker/docker-openmesh-container + variables: + COMPILER: "{{COMPILER}}" + LANGUAGE: "{{LANGUAGE}}" + QTVERSION: "{{QT_VERSION}}" + BUILDTYPE: "{{BUILDTYPE}}" + GIT_SUBMODULE_STRATEGY: recursive + tags: + - Linux + - stretch artifacts: paths: - - build-{{COMPILER}}-{{LANGUAGE}}-{{BUILDTYPE}}-Vector-Checks/ + - build-{{COMPILER}}-{{LANGUAGE}}-{{BUILDTYPE}}-{{QT_VERSION}}-Vector-Checks/ diff --git a/CI/gitlab-ci/linux-template-test-job.yml b/CI/gitlab-ci/linux-template-test-job.yml index efc091ab..10c5eddf 100644 --- a/CI/gitlab-ci/linux-template-test-job.yml +++ b/CI/gitlab-ci/linux-template-test-job.yml @@ -4,17 +4,26 @@ # 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}}] + #image: graphics.rwth-aachen.de:4567/docker/docker/docker-openmesh-container + tags: + - Linux + - stretch + - MultiThreads + variables: + COMPILER: "{{COMPILER}}" + LANGUAGE: "{{LANGUAGE}}" + QTVERSION: "{{QT_VERSION}}" + BUILDTYPE: "{{BUILDTYPE}}" + GIT_SUBMODULE_STRATEGY: recursive + 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}}-{{BUILDTYPE}}-{{QT_VERSION}}-Vector-Checks/Unittests/report.xml + - build-{{COMPILER}}-{{LANGUAGE}}-{{BUILDTYPE}}-{{QT_VERSION}}-Vector-Checks/Unittests/report-customvec.xml + - build-{{COMPILER}}-{{LANGUAGE}}-{{BUILDTYPE}}-{{QT_VERSION}}-Vector-Checks/Unittests/report-doublevec.xml diff --git a/CI/gitlab-ci/linux.yml b/CI/gitlab-ci/linux.yml index fdc85ffe..ece94791 100644 --- a/CI/gitlab-ci/linux.yml +++ b/CI/gitlab-ci/linux.yml @@ -12,9 +12,9 @@ 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} +{linux-iwyu-job.yml, BUILDTYPE=release, COMPILER=clang, LANGUAGE=cpp14, QT_VERSION=qt5.15.1} From 10fb852ae62b62d4acf2601a24b904ee21656c27 Mon Sep 17 00:00:00 2001 From: Johannes Lenzen Date: Tue, 2 Feb 2021 14:21:53 +0100 Subject: [PATCH 27/59] Added debug output --- .gitlab-ci.yml | 140 ++++------------------ CI/ci-linux-prepare.sh | 5 +- CI/gitlab-ci/linux-iwyu-job.yml | 12 +- CI/gitlab-ci/linux-template-build-job.yml | 8 +- CI/gitlab-ci/linux-template-test-job.yml | 8 +- 5 files changed, 36 insertions(+), 137 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 4c366eae..74271714 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -41,14 +41,8 @@ cppcheck: build-debug-gcc-cpp11-qt5.15.1: stage: build - script: "CI/ci-linux-build.sh gcc cpp11 debug" + script: "CI/ci-linux-build.sh gcc cpp11 debug qt5.15.1" #image: graphics.rwth-aachen.de:4567/docker/docker/docker-openmesh-container - variables: - COMPILER: "gcc" - LANGUAGE: "cpp11" - QTVERSION: "qt5.15.1" - BUILDTYPE: "debug" - GIT_SUBMODULE_STRATEGY: recursive tags: - Linux - stretch @@ -64,18 +58,12 @@ build-debug-gcc-cpp11-qt5.15.1: test-debug-gcc-cpp11-qt5.15.1: stage: test - script: "CI/ci-linux-test.sh gcc cpp11 debug" + script: "CI/ci-linux-test.sh gcc cpp11 debug qt5.15.1" #image: graphics.rwth-aachen.de:4567/docker/docker/docker-openmesh-container tags: - Linux - stretch - MultiThreads - variables: - COMPILER: "gcc" - LANGUAGE: "cpp11" - QTVERSION: "qt5.15.1" - BUILDTYPE: "debug" - GIT_SUBMODULE_STRATEGY: recursive dependencies: [build-debug-gcc-cpp11-qt5.15.1] needs: [build-debug-gcc-cpp11-qt5.15.1] artifacts: @@ -95,14 +83,8 @@ test-debug-gcc-cpp11-qt5.15.1: build-release-gcc-cpp11-qt5.15.1: stage: build - script: "CI/ci-linux-build.sh gcc cpp11 release" + script: "CI/ci-linux-build.sh gcc cpp11 release qt5.15.1" #image: graphics.rwth-aachen.de:4567/docker/docker/docker-openmesh-container - variables: - COMPILER: "gcc" - LANGUAGE: "cpp11" - QTVERSION: "qt5.15.1" - BUILDTYPE: "release" - GIT_SUBMODULE_STRATEGY: recursive tags: - Linux - stretch @@ -118,18 +100,12 @@ build-release-gcc-cpp11-qt5.15.1: test-release-gcc-cpp11-qt5.15.1: stage: test - script: "CI/ci-linux-test.sh gcc cpp11 release" + script: "CI/ci-linux-test.sh gcc cpp11 release qt5.15.1" #image: graphics.rwth-aachen.de:4567/docker/docker/docker-openmesh-container tags: - Linux - stretch - MultiThreads - variables: - COMPILER: "gcc" - LANGUAGE: "cpp11" - QTVERSION: "qt5.15.1" - BUILDTYPE: "release" - GIT_SUBMODULE_STRATEGY: recursive dependencies: [build-release-gcc-cpp11-qt5.15.1] needs: [build-release-gcc-cpp11-qt5.15.1] artifacts: @@ -149,14 +125,8 @@ test-release-gcc-cpp11-qt5.15.1: build-debug-clang-cpp11-qt5.15.1: stage: build - script: "CI/ci-linux-build.sh clang cpp11 debug" + script: "CI/ci-linux-build.sh clang cpp11 debug qt5.15.1" #image: graphics.rwth-aachen.de:4567/docker/docker/docker-openmesh-container - variables: - COMPILER: "clang" - LANGUAGE: "cpp11" - QTVERSION: "qt5.15.1" - BUILDTYPE: "debug" - GIT_SUBMODULE_STRATEGY: recursive tags: - Linux - stretch @@ -172,18 +142,12 @@ build-debug-clang-cpp11-qt5.15.1: test-debug-clang-cpp11-qt5.15.1: stage: test - script: "CI/ci-linux-test.sh clang cpp11 debug" + script: "CI/ci-linux-test.sh clang cpp11 debug qt5.15.1" #image: graphics.rwth-aachen.de:4567/docker/docker/docker-openmesh-container tags: - Linux - stretch - MultiThreads - variables: - COMPILER: "clang" - LANGUAGE: "cpp11" - QTVERSION: "qt5.15.1" - BUILDTYPE: "debug" - GIT_SUBMODULE_STRATEGY: recursive dependencies: [build-debug-clang-cpp11-qt5.15.1] needs: [build-debug-clang-cpp11-qt5.15.1] artifacts: @@ -203,14 +167,8 @@ test-debug-clang-cpp11-qt5.15.1: build-release-clang-cpp11-qt5.15.1: stage: build - script: "CI/ci-linux-build.sh clang cpp11 release" + script: "CI/ci-linux-build.sh clang cpp11 release qt5.15.1" #image: graphics.rwth-aachen.de:4567/docker/docker/docker-openmesh-container - variables: - COMPILER: "clang" - LANGUAGE: "cpp11" - QTVERSION: "qt5.15.1" - BUILDTYPE: "release" - GIT_SUBMODULE_STRATEGY: recursive tags: - Linux - stretch @@ -226,18 +184,12 @@ build-release-clang-cpp11-qt5.15.1: test-release-clang-cpp11-qt5.15.1: stage: test - script: "CI/ci-linux-test.sh clang cpp11 release" + script: "CI/ci-linux-test.sh clang cpp11 release qt5.15.1" #image: graphics.rwth-aachen.de:4567/docker/docker/docker-openmesh-container tags: - Linux - stretch - MultiThreads - variables: - COMPILER: "clang" - LANGUAGE: "cpp11" - QTVERSION: "qt5.15.1" - BUILDTYPE: "release" - GIT_SUBMODULE_STRATEGY: recursive dependencies: [build-release-clang-cpp11-qt5.15.1] needs: [build-release-clang-cpp11-qt5.15.1] artifacts: @@ -257,14 +209,8 @@ test-release-clang-cpp11-qt5.15.1: build-debug-gcc-cpp14-qt5.15.1: stage: build - script: "CI/ci-linux-build.sh gcc cpp14 debug" + script: "CI/ci-linux-build.sh gcc cpp14 debug qt5.15.1" #image: graphics.rwth-aachen.de:4567/docker/docker/docker-openmesh-container - variables: - COMPILER: "gcc" - LANGUAGE: "cpp14" - QTVERSION: "qt5.15.1" - BUILDTYPE: "debug" - GIT_SUBMODULE_STRATEGY: recursive tags: - Linux - stretch @@ -280,18 +226,12 @@ build-debug-gcc-cpp14-qt5.15.1: test-debug-gcc-cpp14-qt5.15.1: stage: test - script: "CI/ci-linux-test.sh gcc cpp14 debug" + script: "CI/ci-linux-test.sh gcc cpp14 debug qt5.15.1" #image: graphics.rwth-aachen.de:4567/docker/docker/docker-openmesh-container tags: - Linux - stretch - MultiThreads - variables: - COMPILER: "gcc" - LANGUAGE: "cpp14" - QTVERSION: "qt5.15.1" - BUILDTYPE: "debug" - GIT_SUBMODULE_STRATEGY: recursive dependencies: [build-debug-gcc-cpp14-qt5.15.1] needs: [build-debug-gcc-cpp14-qt5.15.1] artifacts: @@ -311,14 +251,8 @@ test-debug-gcc-cpp14-qt5.15.1: build-release-gcc-cpp14-qt5.15.1: stage: build - script: "CI/ci-linux-build.sh gcc cpp14 release" + script: "CI/ci-linux-build.sh gcc cpp14 release qt5.15.1" #image: graphics.rwth-aachen.de:4567/docker/docker/docker-openmesh-container - variables: - COMPILER: "gcc" - LANGUAGE: "cpp14" - QTVERSION: "qt5.15.1" - BUILDTYPE: "release" - GIT_SUBMODULE_STRATEGY: recursive tags: - Linux - stretch @@ -334,18 +268,12 @@ build-release-gcc-cpp14-qt5.15.1: test-release-gcc-cpp14-qt5.15.1: stage: test - script: "CI/ci-linux-test.sh gcc cpp14 release" + script: "CI/ci-linux-test.sh gcc cpp14 release qt5.15.1" #image: graphics.rwth-aachen.de:4567/docker/docker/docker-openmesh-container tags: - Linux - stretch - MultiThreads - variables: - COMPILER: "gcc" - LANGUAGE: "cpp14" - QTVERSION: "qt5.15.1" - BUILDTYPE: "release" - GIT_SUBMODULE_STRATEGY: recursive dependencies: [build-release-gcc-cpp14-qt5.15.1] needs: [build-release-gcc-cpp14-qt5.15.1] artifacts: @@ -365,14 +293,8 @@ test-release-gcc-cpp14-qt5.15.1: build-debug-clang-cpp14-qt5.15.1: stage: build - script: "CI/ci-linux-build.sh clang cpp14 debug" + script: "CI/ci-linux-build.sh clang cpp14 debug qt5.15.1" #image: graphics.rwth-aachen.de:4567/docker/docker/docker-openmesh-container - variables: - COMPILER: "clang" - LANGUAGE: "cpp14" - QTVERSION: "qt5.15.1" - BUILDTYPE: "debug" - GIT_SUBMODULE_STRATEGY: recursive tags: - Linux - stretch @@ -388,18 +310,12 @@ build-debug-clang-cpp14-qt5.15.1: test-debug-clang-cpp14-qt5.15.1: stage: test - script: "CI/ci-linux-test.sh clang cpp14 debug" + script: "CI/ci-linux-test.sh clang cpp14 debug qt5.15.1" #image: graphics.rwth-aachen.de:4567/docker/docker/docker-openmesh-container tags: - Linux - stretch - MultiThreads - variables: - COMPILER: "clang" - LANGUAGE: "cpp14" - QTVERSION: "qt5.15.1" - BUILDTYPE: "debug" - GIT_SUBMODULE_STRATEGY: recursive dependencies: [build-debug-clang-cpp14-qt5.15.1] needs: [build-debug-clang-cpp14-qt5.15.1] artifacts: @@ -419,14 +335,8 @@ test-debug-clang-cpp14-qt5.15.1: build-release-clang-cpp14-qt5.15.1: stage: build - script: "CI/ci-linux-build.sh clang cpp14 release" + script: "CI/ci-linux-build.sh clang cpp14 release qt5.15.1" #image: graphics.rwth-aachen.de:4567/docker/docker/docker-openmesh-container - variables: - COMPILER: "clang" - LANGUAGE: "cpp14" - QTVERSION: "qt5.15.1" - BUILDTYPE: "release" - GIT_SUBMODULE_STRATEGY: recursive tags: - Linux - stretch @@ -442,18 +352,12 @@ build-release-clang-cpp14-qt5.15.1: test-release-clang-cpp14-qt5.15.1: stage: test - script: "CI/ci-linux-test.sh clang cpp14 release" + script: "CI/ci-linux-test.sh clang cpp14 release qt5.15.1" #image: graphics.rwth-aachen.de:4567/docker/docker/docker-openmesh-container tags: - Linux - stretch - MultiThreads - variables: - COMPILER: "clang" - LANGUAGE: "cpp14" - QTVERSION: "qt5.15.1" - BUILDTYPE: "release" - GIT_SUBMODULE_STRATEGY: recursive dependencies: [build-release-clang-cpp14-qt5.15.1] needs: [build-release-clang-cpp14-qt5.15.1] artifacts: @@ -471,15 +375,17 @@ test-release-clang-cpp14-qt5.15.1: # Compiler: clang # Language: cpp14 -iwyu-release-clang-cpp14: +iwyu-release-clang-cpp14-qt5.15.1: stage: build - script: "CI/ci-linux-build.sh clang cpp14 release IWYU" + script: "CI/ci-linux-build.sh clang cpp14 release qt5.15.1 IWYU" image: graphics.rwth-aachen.de:4567/docker/docker/docker-openmesh-container - tags: [Docker] + tags: + - Linux + - stretch artifacts: paths: - - build-clang-cpp14-release-iwyu-Vector-Checks/compile_commands.json - - build-clang-cpp14-release-iwyu-Vector-Checks/iwyu.dump + - build-clang-cpp14-release-qt5.15.1-iwyu-Vector-Checks/compile_commands.json + - build-clang-cpp14-release-qt5.15.1-iwyu-Vector-Checks/iwyu.dump # ----------------- # MAC tasks diff --git a/CI/ci-linux-prepare.sh b/CI/ci-linux-prepare.sh index e66cf5f9..161c1c47 100755 --- a/CI/ci-linux-prepare.sh +++ b/CI/ci-linux-prepare.sh @@ -3,7 +3,8 @@ COMPILER=$1 LANGUAGE=$2 BUILD_TYPE=$3 -IWYU=$4 +QTVERSION=$4 +IWYU=$5 # Exit script on any error set -e @@ -90,3 +91,5 @@ if [ "$IWYU" == "IWYU" ]; then BUILDPATH="$BUILDPATH-iwyu" OPTIONS="$OPTIONS -DCMAKE_EXPORT_COMPILE_COMMANDS=ON" fi + +echo "Building to directory $BUILDPATH" diff --git a/CI/gitlab-ci/linux-iwyu-job.yml b/CI/gitlab-ci/linux-iwyu-job.yml index 0e5838aa..c2c88ddc 100644 --- a/CI/gitlab-ci/linux-iwyu-job.yml +++ b/CI/gitlab-ci/linux-iwyu-job.yml @@ -4,12 +4,14 @@ # Compiler: {{COMPILER}} # Language: {{LANGUAGE}} -iwyu-{{BUILDTYPE}}-{{COMPILER}}-{{LANGUAGE}}: +iwyu-{{BUILDTYPE}}-{{COMPILER}}-{{LANGUAGE}}-{{QT_VERSION}}: stage: build - script: "CI/ci-linux-build.sh {{COMPILER}} {{LANGUAGE}} {{BUILDTYPE}} IWYU" + script: "CI/ci-linux-build.sh {{COMPILER}} {{LANGUAGE}} {{BUILDTYPE}} {{QT_VERSION}} IWYU" image: graphics.rwth-aachen.de:4567/docker/docker/docker-openmesh-container - tags: [Docker] + tags: + - Linux + - stretch artifacts: paths: - - build-{{COMPILER}}-{{LANGUAGE}}-{{BUILDTYPE}}-iwyu-Vector-Checks/compile_commands.json - - build-{{COMPILER}}-{{LANGUAGE}}-{{BUILDTYPE}}-iwyu-Vector-Checks/iwyu.dump + - build-{{COMPILER}}-{{LANGUAGE}}-{{BUILDTYPE}}-{{QT_VERSION}}-iwyu-Vector-Checks/compile_commands.json + - build-{{COMPILER}}-{{LANGUAGE}}-{{BUILDTYPE}}-{{QT_VERSION}}-iwyu-Vector-Checks/iwyu.dump diff --git a/CI/gitlab-ci/linux-template-build-job.yml b/CI/gitlab-ci/linux-template-build-job.yml index 82889e41..7709c095 100644 --- a/CI/gitlab-ci/linux-template-build-job.yml +++ b/CI/gitlab-ci/linux-template-build-job.yml @@ -7,14 +7,8 @@ build-{{BUILDTYPE}}-{{COMPILER}}-{{LANGUAGE}}-{{QT_VERSION}}: stage: build - script: "CI/ci-linux-build.sh {{COMPILER}} {{LANGUAGE}} {{BUILDTYPE}}" + script: "CI/ci-linux-build.sh {{COMPILER}} {{LANGUAGE}} {{BUILDTYPE}} {{QT_VERSION}}" #image: graphics.rwth-aachen.de:4567/docker/docker/docker-openmesh-container - variables: - COMPILER: "{{COMPILER}}" - LANGUAGE: "{{LANGUAGE}}" - QTVERSION: "{{QT_VERSION}}" - BUILDTYPE: "{{BUILDTYPE}}" - GIT_SUBMODULE_STRATEGY: recursive tags: - Linux - stretch diff --git a/CI/gitlab-ci/linux-template-test-job.yml b/CI/gitlab-ci/linux-template-test-job.yml index 10c5eddf..b9723cdf 100644 --- a/CI/gitlab-ci/linux-template-test-job.yml +++ b/CI/gitlab-ci/linux-template-test-job.yml @@ -6,18 +6,12 @@ test-{{BUILDTYPE}}-{{COMPILER}}-{{LANGUAGE}}-{{QT_VERSION}}: stage: test - script: "CI/ci-linux-test.sh {{COMPILER}} {{LANGUAGE}} {{BUILDTYPE}}" + script: "CI/ci-linux-test.sh {{COMPILER}} {{LANGUAGE}} {{BUILDTYPE}} {{QT_VERSION}}" #image: graphics.rwth-aachen.de:4567/docker/docker/docker-openmesh-container tags: - Linux - stretch - MultiThreads - variables: - COMPILER: "{{COMPILER}}" - LANGUAGE: "{{LANGUAGE}}" - QTVERSION: "{{QT_VERSION}}" - BUILDTYPE: "{{BUILDTYPE}}" - GIT_SUBMODULE_STRATEGY: recursive dependencies: [build-{{BUILDTYPE}}-{{COMPILER}}-{{LANGUAGE}}-{{QT_VERSION}}] needs: [build-{{BUILDTYPE}}-{{COMPILER}}-{{LANGUAGE}}-{{QT_VERSION}}] artifacts: From 260b77a13205c57190393cd73795cde1ddc4c53b Mon Sep 17 00:00:00 2001 From: Johannes Lenzen Date: Tue, 2 Feb 2021 14:25:38 +0100 Subject: [PATCH 28/59] Fixed artifact directory --- .gitlab-ci.yml | 64 +++++++++++------------ CI/ci-linux-build.sh | 6 +-- CI/ci-linux-test.sh | 6 +-- CI/gitlab-ci/linux-template-build-job.yml | 2 +- CI/gitlab-ci/linux-template-test-job.yml | 6 +-- 5 files changed, 42 insertions(+), 42 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 74271714..df7e4440 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -48,7 +48,7 @@ build-debug-gcc-cpp11-qt5.15.1: - stretch artifacts: paths: - - build-gcc-cpp11-debug-qt5.15.1-Vector-Checks/ + - build-gcc-cpp11-qt5.15.1-debug/ #----------- Job Informations: # Type: Test: debug @@ -69,9 +69,9 @@ test-debug-gcc-cpp11-qt5.15.1: artifacts: reports: junit: - - build-gcc-cpp11-debug-qt5.15.1-Vector-Checks/Unittests/report.xml - - build-gcc-cpp11-debug-qt5.15.1-Vector-Checks/Unittests/report-customvec.xml - - build-gcc-cpp11-debug-qt5.15.1-Vector-Checks/Unittests/report-doublevec.xml + - build-gcc-cpp11-qt5.15.1-debug/Unittests/report.xml + - build-gcc-cpp11-qt5.15.1-debug/Unittests/report-customvec.xml + - build-gcc-cpp11-qt5.15.1-debug/Unittests/report-doublevec.xml #----------- Job Informations: @@ -90,7 +90,7 @@ build-release-gcc-cpp11-qt5.15.1: - stretch artifacts: paths: - - build-gcc-cpp11-release-qt5.15.1-Vector-Checks/ + - build-gcc-cpp11-qt5.15.1-release/ #----------- Job Informations: # Type: Test: release @@ -111,9 +111,9 @@ test-release-gcc-cpp11-qt5.15.1: artifacts: reports: junit: - - build-gcc-cpp11-release-qt5.15.1-Vector-Checks/Unittests/report.xml - - build-gcc-cpp11-release-qt5.15.1-Vector-Checks/Unittests/report-customvec.xml - - build-gcc-cpp11-release-qt5.15.1-Vector-Checks/Unittests/report-doublevec.xml + - build-gcc-cpp11-qt5.15.1-release/Unittests/report.xml + - build-gcc-cpp11-qt5.15.1-release/Unittests/report-customvec.xml + - build-gcc-cpp11-qt5.15.1-release/Unittests/report-doublevec.xml #----------- Job Informations: @@ -132,7 +132,7 @@ build-debug-clang-cpp11-qt5.15.1: - stretch artifacts: paths: - - build-clang-cpp11-debug-qt5.15.1-Vector-Checks/ + - build-clang-cpp11-qt5.15.1-debug/ #----------- Job Informations: # Type: Test: debug @@ -153,9 +153,9 @@ test-debug-clang-cpp11-qt5.15.1: artifacts: reports: junit: - - build-clang-cpp11-debug-qt5.15.1-Vector-Checks/Unittests/report.xml - - build-clang-cpp11-debug-qt5.15.1-Vector-Checks/Unittests/report-customvec.xml - - build-clang-cpp11-debug-qt5.15.1-Vector-Checks/Unittests/report-doublevec.xml + - build-clang-cpp11-qt5.15.1-debug/Unittests/report.xml + - build-clang-cpp11-qt5.15.1-debug/Unittests/report-customvec.xml + - build-clang-cpp11-qt5.15.1-debug/Unittests/report-doublevec.xml #----------- Job Informations: @@ -174,7 +174,7 @@ build-release-clang-cpp11-qt5.15.1: - stretch artifacts: paths: - - build-clang-cpp11-release-qt5.15.1-Vector-Checks/ + - build-clang-cpp11-qt5.15.1-release/ #----------- Job Informations: # Type: Test: release @@ -195,9 +195,9 @@ test-release-clang-cpp11-qt5.15.1: artifacts: reports: junit: - - build-clang-cpp11-release-qt5.15.1-Vector-Checks/Unittests/report.xml - - build-clang-cpp11-release-qt5.15.1-Vector-Checks/Unittests/report-customvec.xml - - build-clang-cpp11-release-qt5.15.1-Vector-Checks/Unittests/report-doublevec.xml + - build-clang-cpp11-qt5.15.1-release/Unittests/report.xml + - build-clang-cpp11-qt5.15.1-release/Unittests/report-customvec.xml + - build-clang-cpp11-qt5.15.1-release/Unittests/report-doublevec.xml #----------- Job Informations: @@ -216,7 +216,7 @@ build-debug-gcc-cpp14-qt5.15.1: - stretch artifacts: paths: - - build-gcc-cpp14-debug-qt5.15.1-Vector-Checks/ + - build-gcc-cpp14-qt5.15.1-debug/ #----------- Job Informations: # Type: Test: debug @@ -237,9 +237,9 @@ test-debug-gcc-cpp14-qt5.15.1: artifacts: reports: junit: - - build-gcc-cpp14-debug-qt5.15.1-Vector-Checks/Unittests/report.xml - - build-gcc-cpp14-debug-qt5.15.1-Vector-Checks/Unittests/report-customvec.xml - - build-gcc-cpp14-debug-qt5.15.1-Vector-Checks/Unittests/report-doublevec.xml + - build-gcc-cpp14-qt5.15.1-debug/Unittests/report.xml + - build-gcc-cpp14-qt5.15.1-debug/Unittests/report-customvec.xml + - build-gcc-cpp14-qt5.15.1-debug/Unittests/report-doublevec.xml #----------- Job Informations: @@ -258,7 +258,7 @@ build-release-gcc-cpp14-qt5.15.1: - stretch artifacts: paths: - - build-gcc-cpp14-release-qt5.15.1-Vector-Checks/ + - build-gcc-cpp14-qt5.15.1-release/ #----------- Job Informations: # Type: Test: release @@ -279,9 +279,9 @@ test-release-gcc-cpp14-qt5.15.1: artifacts: reports: junit: - - build-gcc-cpp14-release-qt5.15.1-Vector-Checks/Unittests/report.xml - - build-gcc-cpp14-release-qt5.15.1-Vector-Checks/Unittests/report-customvec.xml - - build-gcc-cpp14-release-qt5.15.1-Vector-Checks/Unittests/report-doublevec.xml + - build-gcc-cpp14-qt5.15.1-release/Unittests/report.xml + - build-gcc-cpp14-qt5.15.1-release/Unittests/report-customvec.xml + - build-gcc-cpp14-qt5.15.1-release/Unittests/report-doublevec.xml #----------- Job Informations: @@ -300,7 +300,7 @@ build-debug-clang-cpp14-qt5.15.1: - stretch artifacts: paths: - - build-clang-cpp14-debug-qt5.15.1-Vector-Checks/ + - build-clang-cpp14-qt5.15.1-debug/ #----------- Job Informations: # Type: Test: debug @@ -321,9 +321,9 @@ test-debug-clang-cpp14-qt5.15.1: artifacts: reports: junit: - - build-clang-cpp14-debug-qt5.15.1-Vector-Checks/Unittests/report.xml - - build-clang-cpp14-debug-qt5.15.1-Vector-Checks/Unittests/report-customvec.xml - - build-clang-cpp14-debug-qt5.15.1-Vector-Checks/Unittests/report-doublevec.xml + - build-clang-cpp14-qt5.15.1-debug/Unittests/report.xml + - build-clang-cpp14-qt5.15.1-debug/Unittests/report-customvec.xml + - build-clang-cpp14-qt5.15.1-debug/Unittests/report-doublevec.xml #----------- Job Informations: @@ -342,7 +342,7 @@ build-release-clang-cpp14-qt5.15.1: - stretch artifacts: paths: - - build-clang-cpp14-release-qt5.15.1-Vector-Checks/ + - build-clang-cpp14-qt5.15.1-release/ #----------- Job Informations: # Type: Test: release @@ -363,9 +363,9 @@ test-release-clang-cpp14-qt5.15.1: artifacts: reports: junit: - - build-clang-cpp14-release-qt5.15.1-Vector-Checks/Unittests/report.xml - - build-clang-cpp14-release-qt5.15.1-Vector-Checks/Unittests/report-customvec.xml - - build-clang-cpp14-release-qt5.15.1-Vector-Checks/Unittests/report-doublevec.xml + - build-clang-cpp14-qt5.15.1-release/Unittests/report.xml + - build-clang-cpp14-qt5.15.1-release/Unittests/report-customvec.xml + - build-clang-cpp14-qt5.15.1-release/Unittests/report-doublevec.xml diff --git a/CI/ci-linux-build.sh b/CI/ci-linux-build.sh index 42dca598..503aa4ed 100755 --- a/CI/ci-linux-build.sh +++ b/CI/ci-linux-build.sh @@ -25,11 +25,11 @@ 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 [ ! -d build-$BUILDPATH ]; then + mkdir build-$BUILDPATH fi -cd build-$BUILDPATH-Vector-Checks +cd build-$BUILDPATH cmake -DCMAKE_BUILD_TYPE=$BUILD_TYPE -DOPENMESH_BUILD_UNIT_TESTS=TRUE -DSTL_VECTOR_CHECKS=ON $OPTIONS ../ diff --git a/CI/ci-linux-test.sh b/CI/ci-linux-test.sh index a9cc5fa8..f8f28c1f 100755 --- a/CI/ci-linux-test.sh +++ b/CI/ci-linux-test.sh @@ -23,11 +23,11 @@ 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 diff --git a/CI/gitlab-ci/linux-template-build-job.yml b/CI/gitlab-ci/linux-template-build-job.yml index 7709c095..9cae8caa 100644 --- a/CI/gitlab-ci/linux-template-build-job.yml +++ b/CI/gitlab-ci/linux-template-build-job.yml @@ -14,4 +14,4 @@ build-{{BUILDTYPE}}-{{COMPILER}}-{{LANGUAGE}}-{{QT_VERSION}}: - stretch artifacts: paths: - - build-{{COMPILER}}-{{LANGUAGE}}-{{BUILDTYPE}}-{{QT_VERSION}}-Vector-Checks/ + - build-{{COMPILER}}-{{LANGUAGE}}-{{QT_VERSION}}-{{BUILDTYPE}}/ diff --git a/CI/gitlab-ci/linux-template-test-job.yml b/CI/gitlab-ci/linux-template-test-job.yml index b9723cdf..7dc7fe8d 100644 --- a/CI/gitlab-ci/linux-template-test-job.yml +++ b/CI/gitlab-ci/linux-template-test-job.yml @@ -17,7 +17,7 @@ test-{{BUILDTYPE}}-{{COMPILER}}-{{LANGUAGE}}-{{QT_VERSION}}: artifacts: reports: junit: - - build-{{COMPILER}}-{{LANGUAGE}}-{{BUILDTYPE}}-{{QT_VERSION}}-Vector-Checks/Unittests/report.xml - - build-{{COMPILER}}-{{LANGUAGE}}-{{BUILDTYPE}}-{{QT_VERSION}}-Vector-Checks/Unittests/report-customvec.xml - - build-{{COMPILER}}-{{LANGUAGE}}-{{BUILDTYPE}}-{{QT_VERSION}}-Vector-Checks/Unittests/report-doublevec.xml + - build-{{COMPILER}}-{{LANGUAGE}}-{{QT_VERSION}}-{{BUILDTYPE}}/Unittests/report.xml + - build-{{COMPILER}}-{{LANGUAGE}}-{{QT_VERSION}}-{{BUILDTYPE}}/Unittests/report-customvec.xml + - build-{{COMPILER}}-{{LANGUAGE}}-{{QT_VERSION}}-{{BUILDTYPE}}/Unittests/report-doublevec.xml From 695bcc49b2ee32507fe8d2482bc1bd8c0036db61 Mon Sep 17 00:00:00 2001 From: Johannes Lenzen Date: Tue, 2 Feb 2021 15:04:02 +0100 Subject: [PATCH 29/59] Run cmake in test --- CI/ci-linux-test.sh | 3 +++ 1 file changed, 3 insertions(+) diff --git a/CI/ci-linux-test.sh b/CI/ci-linux-test.sh index f8f28c1f..ce008226 100755 --- a/CI/ci-linux-test.sh +++ b/CI/ci-linux-test.sh @@ -29,6 +29,9 @@ fi cd build-$BUILDPATH +# Run cmake to make sure the tests are configured correctly for this system +cmake -DOPENFLIPPER_BUILD_UNIT_TESTS=TRUE -DSTL_VECTOR_CHECKS=ON $OPTIONS ../ + #build the unit tests make $MAKE_OPTIONS unittests From 8b5f4ec6152790c07c80a0b66c2f17bf56787630 Mon Sep 17 00:00:00 2001 From: Johannes Lenzen Date: Tue, 2 Feb 2021 15:38:52 +0100 Subject: [PATCH 30/59] Clean old cmake data --- CI/ci-linux-test.sh | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/CI/ci-linux-test.sh b/CI/ci-linux-test.sh index ce008226..b1fa1a09 100755 --- a/CI/ci-linux-test.sh +++ b/CI/ci-linux-test.sh @@ -29,6 +29,21 @@ fi cd build-$BUILDPATH +#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 ../ From 4be641088fdced0566b4fbb41bca6696ba738867 Mon Sep 17 00:00:00 2001 From: Johannes Lenzen Date: Tue, 2 Feb 2021 16:01:22 +0100 Subject: [PATCH 31/59] Make unittests in build job --- CI/ci-linux-build.sh | 3 +++ CI/ci-linux-test.sh | 3 --- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/CI/ci-linux-build.sh b/CI/ci-linux-build.sh index 503aa4ed..9932435b 100755 --- a/CI/ci-linux-build.sh +++ b/CI/ci-linux-build.sh @@ -52,6 +52,9 @@ if [ "$IWYU" == "IWYU" ]; then else # build it make $MAKE_OPTIONS + + # build unittests + make $MAKE_OPTIONS unittests fi cd .. \ No newline at end of file diff --git a/CI/ci-linux-test.sh b/CI/ci-linux-test.sh index b1fa1a09..9c793c8f 100755 --- a/CI/ci-linux-test.sh +++ b/CI/ci-linux-test.sh @@ -47,9 +47,6 @@ 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 ../ -#build the unit tests -make $MAKE_OPTIONS unittests - echo -e "${OUTPUT}" echo "" echo "======================================================================" From 78af6cb1a724dc0b38eb99c4fc0e495ee4b9e3b6 Mon Sep 17 00:00:00 2001 From: Johannes Lenzen Date: Tue, 2 Feb 2021 16:15:16 +0100 Subject: [PATCH 32/59] Add libraries to artifacts --- CI/ci-linux-build.sh | 9 +++++++++ CI/ci-linux-test.sh | 4 ++++ 2 files changed, 13 insertions(+) diff --git a/CI/ci-linux-build.sh b/CI/ci-linux-build.sh index 9932435b..9d9f1fb5 100755 --- a/CI/ci-linux-build.sh +++ b/CI/ci-linux-build.sh @@ -55,6 +55,15 @@ else # 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 OpenFlipper to the systemlib directory" + ldd bin/OpenFlipper | grep "=> /" | awk '{print $3}' | xargs -I '{}' cp -v '{}' systemlib fi cd .. \ No newline at end of file diff --git a/CI/ci-linux-test.sh b/CI/ci-linux-test.sh index 9c793c8f..063e3781 100755 --- a/CI/ci-linux-test.sh +++ b/CI/ci-linux-test.sh @@ -47,6 +47,10 @@ 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 "" echo "======================================================================" From 5f959b0f63199743f3308bc1e18ad12297f78e7b Mon Sep 17 00:00:00 2001 From: Johannes Lenzen Date: Tue, 2 Feb 2021 16:36:41 +0100 Subject: [PATCH 33/59] Add libraries to artifacts Fix --- CI/ci-linux-build.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CI/ci-linux-build.sh b/CI/ci-linux-build.sh index 9d9f1fb5..ffc4cae2 100755 --- a/CI/ci-linux-build.sh +++ b/CI/ci-linux-build.sh @@ -63,7 +63,7 @@ else fi echo "Copying all required libraries of OpenFlipper to the systemlib directory" - ldd bin/OpenFlipper | grep "=> /" | awk '{print $3}' | xargs -I '{}' cp -v '{}' systemlib + ldd Build/bin/OpenFlipper | grep "=> /" | awk '{print $3}' | xargs -I '{}' cp -v '{}' systemlib fi cd .. \ No newline at end of file From 4ef36b86dff6404bdf0c8ef982f1dbab30c486d1 Mon Sep 17 00:00:00 2001 From: Johannes Lenzen Date: Tue, 2 Feb 2021 17:32:16 +0100 Subject: [PATCH 34/59] Fixed wrong ldd path --- CI/ci-linux-build.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/CI/ci-linux-build.sh b/CI/ci-linux-build.sh index ffc4cae2..3a68e7ef 100755 --- a/CI/ci-linux-build.sh +++ b/CI/ci-linux-build.sh @@ -62,8 +62,8 @@ else mkdir systemlib fi - echo "Copying all required libraries of OpenFlipper to the systemlib directory" - ldd Build/bin/OpenFlipper | grep "=> /" | awk '{print $3}' | xargs -I '{}' cp -v '{}' systemlib + echo "Copying all required libraries of OpenMesh to the systemlib directory" + ldd Build/lib/libOpenMeshToolsd.so.9.0 | grep "=> /" | awk '{print $3}' | xargs -I '{}' cp -v '{}' systemlib fi cd .. \ No newline at end of file From bb621ffee11fc37bddc55455fc11b65760fb7abb Mon Sep 17 00:00:00 2001 From: Johannes Lenzen Date: Tue, 2 Feb 2021 17:41:10 +0100 Subject: [PATCH 35/59] Fixed naming --- CI/ci-linux-build.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CI/ci-linux-build.sh b/CI/ci-linux-build.sh index 3a68e7ef..bca289c8 100755 --- a/CI/ci-linux-build.sh +++ b/CI/ci-linux-build.sh @@ -63,7 +63,7 @@ else fi echo "Copying all required libraries of OpenMesh to the systemlib directory" - ldd Build/lib/libOpenMeshToolsd.so.9.0 | grep "=> /" | awk '{print $3}' | xargs -I '{}' cp -v '{}' systemlib + ldd Build/lib/libOpenMeshCored.so.9.0 | grep "=> /" | awk '{print $3}' | xargs -I '{}' cp -v '{}' systemlib fi cd .. \ No newline at end of file From 7aaf24825960413f462c85a7228d6132d7e384de Mon Sep 17 00:00:00 2001 From: Johannes Lenzen Date: Tue, 2 Feb 2021 18:25:08 +0100 Subject: [PATCH 36/59] Add debug output --- CI/ci-linux-build.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/CI/ci-linux-build.sh b/CI/ci-linux-build.sh index bca289c8..2e59d49a 100755 --- a/CI/ci-linux-build.sh +++ b/CI/ci-linux-build.sh @@ -63,6 +63,7 @@ else fi echo "Copying all required libraries of OpenMesh to the systemlib directory" + ls -la ldd Build/lib/libOpenMeshCored.so.9.0 | grep "=> /" | awk '{print $3}' | xargs -I '{}' cp -v '{}' systemlib fi From 316137d3eaed59d29bf071dabe38b13a2a0a0d16 Mon Sep 17 00:00:00 2001 From: Johannes Lenzen Date: Tue, 9 Feb 2021 10:35:05 +0100 Subject: [PATCH 37/59] Added debug output --- CI/ci-linux-build.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CI/ci-linux-build.sh b/CI/ci-linux-build.sh index 2e59d49a..61592137 100755 --- a/CI/ci-linux-build.sh +++ b/CI/ci-linux-build.sh @@ -63,7 +63,7 @@ else fi echo "Copying all required libraries of OpenMesh to the systemlib directory" - ls -la + ls -laR Build ldd Build/lib/libOpenMeshCored.so.9.0 | grep "=> /" | awk '{print $3}' | xargs -I '{}' cp -v '{}' systemlib fi From c81d69117fee510b1253c2601d45ad33b806f439 Mon Sep 17 00:00:00 2001 From: Johannes Lenzen Date: Tue, 9 Feb 2021 10:42:58 +0100 Subject: [PATCH 38/59] Fixing errors --- CI/ci-linux-build.sh | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/CI/ci-linux-build.sh b/CI/ci-linux-build.sh index 61592137..8bd3a881 100755 --- a/CI/ci-linux-build.sh +++ b/CI/ci-linux-build.sh @@ -63,8 +63,11 @@ else fi echo "Copying all required libraries of OpenMesh to the systemlib directory" - ls -laR Build - ldd Build/lib/libOpenMeshCored.so.9.0 | grep "=> /" | awk '{print $3}' | xargs -I '{}' cp -v '{}' systemlib + 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 From c69e8bbc1d5f26fedf613ef0523383bf29f01305 Mon Sep 17 00:00:00 2001 From: Johannes Lenzen Date: Tue, 9 Feb 2021 10:53:36 +0100 Subject: [PATCH 39/59] Fixing errors --- CI/ci-linux-build.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CI/ci-linux-build.sh b/CI/ci-linux-build.sh index 8bd3a881..05431423 100755 --- a/CI/ci-linux-build.sh +++ b/CI/ci-linux-build.sh @@ -63,7 +63,7 @@ else fi echo "Copying all required libraries of OpenMesh to the systemlib directory" - if [ "$BUILD_TYPE" == "Release" ]; then + 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 From 7cc8cd0bf41c2442f5400c8487ff303537426bf4 Mon Sep 17 00:00:00 2001 From: Johannes Lenzen Date: Tue, 9 Feb 2021 11:31:21 +0100 Subject: [PATCH 40/59] Linux ci jobs no use environment variables instead of positional parameters --- .gitlab-ci.yml | 136 +++++++++++++++++++--- CI/ci-linux-prepare.sh | 8 +- CI/gitlab-ci/linux-iwyu-job.yml | 8 +- CI/gitlab-ci/linux-template-build-job.yml | 8 +- CI/gitlab-ci/linux-template-test-job.yml | 8 +- 5 files changed, 141 insertions(+), 27 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index df7e4440..cd9d6cac 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -41,11 +41,17 @@ cppcheck: build-debug-gcc-cpp11-qt5.15.1: stage: build - script: "CI/ci-linux-build.sh gcc cpp11 debug qt5.15.1" + 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" artifacts: paths: - build-gcc-cpp11-qt5.15.1-debug/ @@ -58,12 +64,18 @@ build-debug-gcc-cpp11-qt5.15.1: test-debug-gcc-cpp11-qt5.15.1: stage: test - script: "CI/ci-linux-test.sh gcc cpp11 debug qt5.15.1" + 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" dependencies: [build-debug-gcc-cpp11-qt5.15.1] needs: [build-debug-gcc-cpp11-qt5.15.1] artifacts: @@ -83,11 +95,17 @@ test-debug-gcc-cpp11-qt5.15.1: build-release-gcc-cpp11-qt5.15.1: stage: build - script: "CI/ci-linux-build.sh gcc cpp11 release qt5.15.1" + 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" artifacts: paths: - build-gcc-cpp11-qt5.15.1-release/ @@ -100,12 +118,18 @@ build-release-gcc-cpp11-qt5.15.1: test-release-gcc-cpp11-qt5.15.1: stage: test - script: "CI/ci-linux-test.sh gcc cpp11 release qt5.15.1" + 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" dependencies: [build-release-gcc-cpp11-qt5.15.1] needs: [build-release-gcc-cpp11-qt5.15.1] artifacts: @@ -125,11 +149,17 @@ test-release-gcc-cpp11-qt5.15.1: build-debug-clang-cpp11-qt5.15.1: stage: build - script: "CI/ci-linux-build.sh clang cpp11 debug qt5.15.1" + 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" artifacts: paths: - build-clang-cpp11-qt5.15.1-debug/ @@ -142,12 +172,18 @@ build-debug-clang-cpp11-qt5.15.1: test-debug-clang-cpp11-qt5.15.1: stage: test - script: "CI/ci-linux-test.sh clang cpp11 debug qt5.15.1" + 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" dependencies: [build-debug-clang-cpp11-qt5.15.1] needs: [build-debug-clang-cpp11-qt5.15.1] artifacts: @@ -167,11 +203,17 @@ test-debug-clang-cpp11-qt5.15.1: build-release-clang-cpp11-qt5.15.1: stage: build - script: "CI/ci-linux-build.sh clang cpp11 release qt5.15.1" + 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" artifacts: paths: - build-clang-cpp11-qt5.15.1-release/ @@ -184,12 +226,18 @@ build-release-clang-cpp11-qt5.15.1: test-release-clang-cpp11-qt5.15.1: stage: test - script: "CI/ci-linux-test.sh clang cpp11 release qt5.15.1" + 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" dependencies: [build-release-clang-cpp11-qt5.15.1] needs: [build-release-clang-cpp11-qt5.15.1] artifacts: @@ -209,11 +257,17 @@ test-release-clang-cpp11-qt5.15.1: build-debug-gcc-cpp14-qt5.15.1: stage: build - script: "CI/ci-linux-build.sh gcc cpp14 debug qt5.15.1" + 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" artifacts: paths: - build-gcc-cpp14-qt5.15.1-debug/ @@ -226,12 +280,18 @@ build-debug-gcc-cpp14-qt5.15.1: test-debug-gcc-cpp14-qt5.15.1: stage: test - script: "CI/ci-linux-test.sh gcc cpp14 debug qt5.15.1" + 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" dependencies: [build-debug-gcc-cpp14-qt5.15.1] needs: [build-debug-gcc-cpp14-qt5.15.1] artifacts: @@ -251,11 +311,17 @@ test-debug-gcc-cpp14-qt5.15.1: build-release-gcc-cpp14-qt5.15.1: stage: build - script: "CI/ci-linux-build.sh gcc cpp14 release qt5.15.1" + 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" artifacts: paths: - build-gcc-cpp14-qt5.15.1-release/ @@ -268,12 +334,18 @@ build-release-gcc-cpp14-qt5.15.1: test-release-gcc-cpp14-qt5.15.1: stage: test - script: "CI/ci-linux-test.sh gcc cpp14 release qt5.15.1" + 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" dependencies: [build-release-gcc-cpp14-qt5.15.1] needs: [build-release-gcc-cpp14-qt5.15.1] artifacts: @@ -293,11 +365,17 @@ test-release-gcc-cpp14-qt5.15.1: build-debug-clang-cpp14-qt5.15.1: stage: build - script: "CI/ci-linux-build.sh clang cpp14 debug qt5.15.1" + 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" artifacts: paths: - build-clang-cpp14-qt5.15.1-debug/ @@ -310,12 +388,18 @@ build-debug-clang-cpp14-qt5.15.1: test-debug-clang-cpp14-qt5.15.1: stage: test - script: "CI/ci-linux-test.sh clang cpp14 debug qt5.15.1" + 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" dependencies: [build-debug-clang-cpp14-qt5.15.1] needs: [build-debug-clang-cpp14-qt5.15.1] artifacts: @@ -335,11 +419,17 @@ test-debug-clang-cpp14-qt5.15.1: build-release-clang-cpp14-qt5.15.1: stage: build - script: "CI/ci-linux-build.sh clang cpp14 release qt5.15.1" + 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" artifacts: paths: - build-clang-cpp14-qt5.15.1-release/ @@ -352,12 +442,18 @@ build-release-clang-cpp14-qt5.15.1: test-release-clang-cpp14-qt5.15.1: stage: test - script: "CI/ci-linux-test.sh clang cpp14 release qt5.15.1" + 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" dependencies: [build-release-clang-cpp14-qt5.15.1] needs: [build-release-clang-cpp14-qt5.15.1] artifacts: @@ -377,11 +473,17 @@ test-release-clang-cpp14-qt5.15.1: iwyu-release-clang-cpp14-qt5.15.1: stage: build - script: "CI/ci-linux-build.sh clang cpp14 release qt5.15.1 IWYU" + 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: "yes" artifacts: paths: - build-clang-cpp14-release-qt5.15.1-iwyu-Vector-Checks/compile_commands.json diff --git a/CI/ci-linux-prepare.sh b/CI/ci-linux-prepare.sh index 161c1c47..2cad2ff7 100755 --- a/CI/ci-linux-prepare.sh +++ b/CI/ci-linux-prepare.sh @@ -1,11 +1,5 @@ #!/bin/bash -COMPILER=$1 -LANGUAGE=$2 -BUILD_TYPE=$3 -QTVERSION=$4 -IWYU=$5 - # Exit script on any error set -e @@ -86,7 +80,7 @@ else BUILDPATH="$BUILDPATH-debug" fi -if [ "$IWYU" == "IWYU" ]; then +if [ "$IWYU" == "yes" ]; then echo "Include what you use enabled."; BUILDPATH="$BUILDPATH-iwyu" OPTIONS="$OPTIONS -DCMAKE_EXPORT_COMPILE_COMMANDS=ON" diff --git a/CI/gitlab-ci/linux-iwyu-job.yml b/CI/gitlab-ci/linux-iwyu-job.yml index c2c88ddc..5f27eff7 100644 --- a/CI/gitlab-ci/linux-iwyu-job.yml +++ b/CI/gitlab-ci/linux-iwyu-job.yml @@ -6,11 +6,17 @@ iwyu-{{BUILDTYPE}}-{{COMPILER}}-{{LANGUAGE}}-{{QT_VERSION}}: stage: build - script: "CI/ci-linux-build.sh {{COMPILER}} {{LANGUAGE}} {{BUILDTYPE}} {{QT_VERSION}} IWYU" + 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" artifacts: paths: - build-{{COMPILER}}-{{LANGUAGE}}-{{BUILDTYPE}}-{{QT_VERSION}}-iwyu-Vector-Checks/compile_commands.json diff --git a/CI/gitlab-ci/linux-template-build-job.yml b/CI/gitlab-ci/linux-template-build-job.yml index 9cae8caa..4462ac0e 100644 --- a/CI/gitlab-ci/linux-template-build-job.yml +++ b/CI/gitlab-ci/linux-template-build-job.yml @@ -7,11 +7,17 @@ build-{{BUILDTYPE}}-{{COMPILER}}-{{LANGUAGE}}-{{QT_VERSION}}: stage: build - script: "CI/ci-linux-build.sh {{COMPILER}} {{LANGUAGE}} {{BUILDTYPE}} {{QT_VERSION}}" + 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" artifacts: paths: - build-{{COMPILER}}-{{LANGUAGE}}-{{QT_VERSION}}-{{BUILDTYPE}}/ diff --git a/CI/gitlab-ci/linux-template-test-job.yml b/CI/gitlab-ci/linux-template-test-job.yml index 7dc7fe8d..92f80d30 100644 --- a/CI/gitlab-ci/linux-template-test-job.yml +++ b/CI/gitlab-ci/linux-template-test-job.yml @@ -6,12 +6,18 @@ test-{{BUILDTYPE}}-{{COMPILER}}-{{LANGUAGE}}-{{QT_VERSION}}: stage: test - script: "CI/ci-linux-test.sh {{COMPILER}} {{LANGUAGE}} {{BUILDTYPE}} {{QT_VERSION}}" + 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" dependencies: [build-{{BUILDTYPE}}-{{COMPILER}}-{{LANGUAGE}}-{{QT_VERSION}}] needs: [build-{{BUILDTYPE}}-{{COMPILER}}-{{LANGUAGE}}-{{QT_VERSION}}] artifacts: From f6d62bf1f49c808934386433d05c39265bce1eeb Mon Sep 17 00:00:00 2001 From: Johannes Lenzen Date: Tue, 9 Feb 2021 12:27:37 +0100 Subject: [PATCH 41/59] Added vectorchecks disabled build --- .gitlab-ci.yml | 109 +++++++++++++++------- CI/ci-linux-build.sh | 18 ++-- CI/ci-linux-prepare.sh | 6 ++ CI/gitlab-ci/linux-iwyu-job.yml | 5 +- CI/gitlab-ci/linux-novchecks-job.yml | 24 +++++ CI/gitlab-ci/linux-template-build-job.yml | 3 +- CI/gitlab-ci/linux-template-test-job.yml | 7 +- CI/gitlab-ci/linux.yml | 1 + 8 files changed, 125 insertions(+), 48 deletions(-) create mode 100644 CI/gitlab-ci/linux-novchecks-job.yml diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index cd9d6cac..e4698640 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -52,9 +52,10 @@ build-debug-gcc-cpp11-qt5.15.1: BUILD_TYPE: "debug" QTVERSION: "qt5.15.1" IWYU: "no" + VECTORCHECKS: "yes" artifacts: paths: - - build-gcc-cpp11-qt5.15.1-debug/ + - build-gcc-cpp11-qt5.15.1-debug-vectorchecks/ #----------- Job Informations: # Type: Test: debug @@ -76,14 +77,15 @@ test-debug-gcc-cpp11-qt5.15.1: 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-qt5.15.1-debug/Unittests/report.xml - - build-gcc-cpp11-qt5.15.1-debug/Unittests/report-customvec.xml - - build-gcc-cpp11-qt5.15.1-debug/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: @@ -106,9 +108,10 @@ build-release-gcc-cpp11-qt5.15.1: BUILD_TYPE: "release" QTVERSION: "qt5.15.1" IWYU: "no" + VECTORCHECKS: "yes" artifacts: paths: - - build-gcc-cpp11-qt5.15.1-release/ + - build-gcc-cpp11-qt5.15.1-release-vectorchecks/ #----------- Job Informations: # Type: Test: release @@ -130,14 +133,15 @@ test-release-gcc-cpp11-qt5.15.1: 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-qt5.15.1-release/Unittests/report.xml - - build-gcc-cpp11-qt5.15.1-release/Unittests/report-customvec.xml - - build-gcc-cpp11-qt5.15.1-release/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: @@ -160,9 +164,10 @@ build-debug-clang-cpp11-qt5.15.1: BUILD_TYPE: "debug" QTVERSION: "qt5.15.1" IWYU: "no" + VECTORCHECKS: "yes" artifacts: paths: - - build-clang-cpp11-qt5.15.1-debug/ + - build-clang-cpp11-qt5.15.1-debug-vectorchecks/ #----------- Job Informations: # Type: Test: debug @@ -184,14 +189,15 @@ test-debug-clang-cpp11-qt5.15.1: 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-qt5.15.1-debug/Unittests/report.xml - - build-clang-cpp11-qt5.15.1-debug/Unittests/report-customvec.xml - - build-clang-cpp11-qt5.15.1-debug/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: @@ -214,9 +220,10 @@ build-release-clang-cpp11-qt5.15.1: BUILD_TYPE: "release" QTVERSION: "qt5.15.1" IWYU: "no" + VECTORCHECKS: "yes" artifacts: paths: - - build-clang-cpp11-qt5.15.1-release/ + - build-clang-cpp11-qt5.15.1-release-vectorchecks/ #----------- Job Informations: # Type: Test: release @@ -238,14 +245,15 @@ test-release-clang-cpp11-qt5.15.1: 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-qt5.15.1-release/Unittests/report.xml - - build-clang-cpp11-qt5.15.1-release/Unittests/report-customvec.xml - - build-clang-cpp11-qt5.15.1-release/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: @@ -268,9 +276,10 @@ build-debug-gcc-cpp14-qt5.15.1: BUILD_TYPE: "debug" QTVERSION: "qt5.15.1" IWYU: "no" + VECTORCHECKS: "yes" artifacts: paths: - - build-gcc-cpp14-qt5.15.1-debug/ + - build-gcc-cpp14-qt5.15.1-debug-vectorchecks/ #----------- Job Informations: # Type: Test: debug @@ -292,14 +301,15 @@ test-debug-gcc-cpp14-qt5.15.1: 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-qt5.15.1-debug/Unittests/report.xml - - build-gcc-cpp14-qt5.15.1-debug/Unittests/report-customvec.xml - - build-gcc-cpp14-qt5.15.1-debug/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: @@ -322,9 +332,10 @@ build-release-gcc-cpp14-qt5.15.1: BUILD_TYPE: "release" QTVERSION: "qt5.15.1" IWYU: "no" + VECTORCHECKS: "yes" artifacts: paths: - - build-gcc-cpp14-qt5.15.1-release/ + - build-gcc-cpp14-qt5.15.1-release-vectorchecks/ #----------- Job Informations: # Type: Test: release @@ -346,14 +357,15 @@ test-release-gcc-cpp14-qt5.15.1: 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-qt5.15.1-release/Unittests/report.xml - - build-gcc-cpp14-qt5.15.1-release/Unittests/report-customvec.xml - - build-gcc-cpp14-qt5.15.1-release/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: @@ -376,9 +388,10 @@ build-debug-clang-cpp14-qt5.15.1: BUILD_TYPE: "debug" QTVERSION: "qt5.15.1" IWYU: "no" + VECTORCHECKS: "yes" artifacts: paths: - - build-clang-cpp14-qt5.15.1-debug/ + - build-clang-cpp14-qt5.15.1-debug-vectorchecks/ #----------- Job Informations: # Type: Test: debug @@ -400,14 +413,15 @@ test-debug-clang-cpp14-qt5.15.1: 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-qt5.15.1-debug/Unittests/report.xml - - build-clang-cpp14-qt5.15.1-debug/Unittests/report-customvec.xml - - build-clang-cpp14-qt5.15.1-debug/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: @@ -430,9 +444,10 @@ build-release-clang-cpp14-qt5.15.1: BUILD_TYPE: "release" QTVERSION: "qt5.15.1" IWYU: "no" + VECTORCHECKS: "yes" artifacts: paths: - - build-clang-cpp14-qt5.15.1-release/ + - build-clang-cpp14-qt5.15.1-release-vectorchecks/ #----------- Job Informations: # Type: Test: release @@ -454,14 +469,15 @@ test-release-clang-cpp14-qt5.15.1: 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/Unittests/report.xml - - build-clang-cpp14-qt5.15.1-release/Unittests/report-customvec.xml - - build-clang-cpp14-qt5.15.1-release/Unittests/report-doublevec.xml + - 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 @@ -484,10 +500,35 @@ iwyu-release-clang-cpp14-qt5.15.1: BUILD_TYPE: "release" QTVERSION: "qt5.15.1" IWYU: "yes" + VECTORCHECKS: "yes" artifacts: paths: - - build-clang-cpp14-release-qt5.15.1-iwyu-Vector-Checks/compile_commands.json - - build-clang-cpp14-release-qt5.15.1-iwyu-Vector-Checks/iwyu.dump + - build-clang-cpp14-release-qt5.15.1-iwyu-vectorchecks/compile_commands.json + - build-clang-cpp14-release-qt5.15.1-iwyu-vectorchecks/iwyu.dump +#----------- Job Informations: +# Type: Build: release +# OS: Linux +# Compiler: clang +# Language: cpp14 + +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: + - Linux + - stretch + variables: + COMPILER: "clang" + LANGUAGE: "cpp14" + BUILD_TYPE: "release" + QTVERSION: "qt5.15.1" + IWYU: "no" + VECTORCHECKS: "no" + artifacts: + paths: + - build-clang-cpp14-release-qt5.15.1/compile_commands.json + - build-clang-cpp14-release-qt5.15.1/iwyu.dump # ----------------- # MAC tasks diff --git a/CI/ci-linux-build.sh b/CI/ci-linux-build.sh index 05431423..eb64b64d 100755 --- a/CI/ci-linux-build.sh +++ b/CI/ci-linux-build.sh @@ -18,12 +18,14 @@ 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 [ "$VECTORCHECKS" == "yes" ]; then + echo -e "${OUTPUT}" + echo "" + echo "======================================================================" + echo "Building $BUILD_TYPE version with vectorchecks enabled" + echo "======================================================================" + echo -e "${NC}" +fi if [ ! -d build-$BUILDPATH ]; then mkdir build-$BUILDPATH @@ -31,9 +33,9 @@ fi cd build-$BUILDPATH -cmake -DCMAKE_BUILD_TYPE=$BUILD_TYPE -DOPENMESH_BUILD_UNIT_TESTS=TRUE -DSTL_VECTOR_CHECKS=ON $OPTIONS ../ +cmake -DCMAKE_BUILD_TYPE=$BUILD_TYPE -DOPENMESH_BUILD_UNIT_TESTS=TRUE $OPTIONS ../ -if [ "$IWYU" == "IWYU" ]; then +if [ "$IWYU" == "yes" ]; then # do iwyu check if echo $(iwyu --version) | grep -q "0.11" then diff --git a/CI/ci-linux-prepare.sh b/CI/ci-linux-prepare.sh index 2cad2ff7..bcd93cbf 100755 --- a/CI/ci-linux-prepare.sh +++ b/CI/ci-linux-prepare.sh @@ -86,4 +86,10 @@ if [ "$IWYU" == "yes" ]; then 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/gitlab-ci/linux-iwyu-job.yml b/CI/gitlab-ci/linux-iwyu-job.yml index 5f27eff7..f0e933c6 100644 --- a/CI/gitlab-ci/linux-iwyu-job.yml +++ b/CI/gitlab-ci/linux-iwyu-job.yml @@ -17,7 +17,8 @@ iwyu-{{BUILDTYPE}}-{{COMPILER}}-{{LANGUAGE}}-{{QT_VERSION}}: BUILD_TYPE: "{{BUILDTYPE}}" QTVERSION: "{{QT_VERSION}}" IWYU: "yes" + VECTORCHECKS: "yes" artifacts: paths: - - build-{{COMPILER}}-{{LANGUAGE}}-{{BUILDTYPE}}-{{QT_VERSION}}-iwyu-Vector-Checks/compile_commands.json - - build-{{COMPILER}}-{{LANGUAGE}}-{{BUILDTYPE}}-{{QT_VERSION}}-iwyu-Vector-Checks/iwyu.dump + - build-{{COMPILER}}-{{LANGUAGE}}-{{BUILDTYPE}}-{{QT_VERSION}}-iwyu-vectorchecks/compile_commands.json + - build-{{COMPILER}}-{{LANGUAGE}}-{{BUILDTYPE}}-{{QT_VERSION}}-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..9492f722 --- /dev/null +++ b/CI/gitlab-ci/linux-novchecks-job.yml @@ -0,0 +1,24 @@ +#----------- 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}}-{{BUILDTYPE}}-{{QT_VERSION}}/compile_commands.json + - build-{{COMPILER}}-{{LANGUAGE}}-{{BUILDTYPE}}-{{QT_VERSION}}/iwyu.dump diff --git a/CI/gitlab-ci/linux-template-build-job.yml b/CI/gitlab-ci/linux-template-build-job.yml index 4462ac0e..bd1d5b42 100644 --- a/CI/gitlab-ci/linux-template-build-job.yml +++ b/CI/gitlab-ci/linux-template-build-job.yml @@ -18,6 +18,7 @@ build-{{BUILDTYPE}}-{{COMPILER}}-{{LANGUAGE}}-{{QT_VERSION}}: BUILD_TYPE: "{{BUILDTYPE}}" QTVERSION: "{{QT_VERSION}}" IWYU: "no" + VECTORCHECKS: "yes" artifacts: paths: - - build-{{COMPILER}}-{{LANGUAGE}}-{{QT_VERSION}}-{{BUILDTYPE}}/ + - 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 92f80d30..5b84581a 100644 --- a/CI/gitlab-ci/linux-template-test-job.yml +++ b/CI/gitlab-ci/linux-template-test-job.yml @@ -18,12 +18,13 @@ test-{{BUILDTYPE}}-{{COMPILER}}-{{LANGUAGE}}-{{QT_VERSION}}: 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}}-{{QT_VERSION}}-{{BUILDTYPE}}/Unittests/report.xml - - build-{{COMPILER}}-{{LANGUAGE}}-{{QT_VERSION}}-{{BUILDTYPE}}/Unittests/report-customvec.xml - - build-{{COMPILER}}-{{LANGUAGE}}-{{QT_VERSION}}-{{BUILDTYPE}}/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 ece94791..6d1653ad 100644 --- a/CI/gitlab-ci/linux.yml +++ b/CI/gitlab-ci/linux.yml @@ -18,3 +18,4 @@ cppcheck: {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} From 64e9cabdfa7c3ebc741a2bf9e724e00cea539893 Mon Sep 17 00:00:00 2001 From: Johannes Lenzen Date: Tue, 9 Feb 2021 13:44:44 +0100 Subject: [PATCH 42/59] Added debug output to iwyu --- CI/ci-linux-build.sh | 2 ++ CI/gitlab-ci/linux-novchecks-job.yml | 3 +-- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/CI/ci-linux-build.sh b/CI/ci-linux-build.sh index eb64b64d..01caf218 100755 --- a/CI/ci-linux-build.sh +++ b/CI/ci-linux-build.sh @@ -38,6 +38,8 @@ 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" + echo $(pwd) + ls -la then # support older tool version iwyu_tool -j 4 -p . -- \ diff --git a/CI/gitlab-ci/linux-novchecks-job.yml b/CI/gitlab-ci/linux-novchecks-job.yml index 9492f722..63ae0ead 100644 --- a/CI/gitlab-ci/linux-novchecks-job.yml +++ b/CI/gitlab-ci/linux-novchecks-job.yml @@ -20,5 +20,4 @@ nvc-{{BUILDTYPE}}-{{COMPILER}}-{{LANGUAGE}}-{{QT_VERSION}}: VECTORCHECKS: "no" artifacts: paths: - - build-{{COMPILER}}-{{LANGUAGE}}-{{BUILDTYPE}}-{{QT_VERSION}}/compile_commands.json - - build-{{COMPILER}}-{{LANGUAGE}}-{{BUILDTYPE}}-{{QT_VERSION}}/iwyu.dump + - build-{{COMPILER}}-{{LANGUAGE}}-{{QT_VERSION}}-{{BUILDTYPE}}/ From 29d25b10727d3188f8729e2f1478d984d2cb2e0b Mon Sep 17 00:00:00 2001 From: Johannes Lenzen Date: Tue, 9 Feb 2021 14:14:22 +0100 Subject: [PATCH 43/59] Fixing iwyu artifacts not found --- .gitlab-ci.yml | 7 +++---- CI/ci-linux-build.sh | 2 -- CI/gitlab-ci/linux-iwyu-job.yml | 4 ++-- 3 files changed, 5 insertions(+), 8 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index e4698640..072c9329 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -503,8 +503,8 @@ iwyu-release-clang-cpp14-qt5.15.1: VECTORCHECKS: "yes" artifacts: paths: - - build-clang-cpp14-release-qt5.15.1-iwyu-vectorchecks/compile_commands.json - - build-clang-cpp14-release-qt5.15.1-iwyu-vectorchecks/iwyu.dump + - 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: Build: release # OS: Linux @@ -527,8 +527,7 @@ nvc-release-clang-cpp14-qt5.15.1: VECTORCHECKS: "no" artifacts: paths: - - build-clang-cpp14-release-qt5.15.1/compile_commands.json - - build-clang-cpp14-release-qt5.15.1/iwyu.dump + - build-clang-cpp14-qt5.15.1-release/ # ----------------- # MAC tasks diff --git a/CI/ci-linux-build.sh b/CI/ci-linux-build.sh index 01caf218..eb64b64d 100755 --- a/CI/ci-linux-build.sh +++ b/CI/ci-linux-build.sh @@ -38,8 +38,6 @@ 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" - echo $(pwd) - ls -la then # support older tool version iwyu_tool -j 4 -p . -- \ diff --git a/CI/gitlab-ci/linux-iwyu-job.yml b/CI/gitlab-ci/linux-iwyu-job.yml index f0e933c6..cb8b0d58 100644 --- a/CI/gitlab-ci/linux-iwyu-job.yml +++ b/CI/gitlab-ci/linux-iwyu-job.yml @@ -20,5 +20,5 @@ iwyu-{{BUILDTYPE}}-{{COMPILER}}-{{LANGUAGE}}-{{QT_VERSION}}: VECTORCHECKS: "yes" artifacts: paths: - - build-{{COMPILER}}-{{LANGUAGE}}-{{BUILDTYPE}}-{{QT_VERSION}}-iwyu-vectorchecks/compile_commands.json - - build-{{COMPILER}}-{{LANGUAGE}}-{{BUILDTYPE}}-{{QT_VERSION}}-iwyu-vectorchecks/iwyu.dump + - build-{{COMPILER}}-{{LANGUAGE}}-{{QT_VERSION}}-{{BUILDTYPE}}-iwyu-vectorchecks/compile_commands.json + - build-{{COMPILER}}-{{LANGUAGE}}-{{QT_VERSION}}-{{BUILDTYPE}}-iwyu-vectorchecks/iwyu.dump From 0db4709f80c407754ac30d878564a050ec641df7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20M=C3=B6bius?= Date: Wed, 10 Feb 2021 10:42:57 +0100 Subject: [PATCH 44/59] Get rid of qwt as its not used anywhere in OpenMesh --- CI/ci-linux-prepare.sh | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/CI/ci-linux-prepare.sh b/CI/ci-linux-prepare.sh index bcd93cbf..48929405 100755 --- a/CI/ci-linux-prepare.sh +++ b/CI/ci-linux-prepare.sh @@ -42,27 +42,27 @@ fi if [ "$QTVERSION" == "qt5.13.0" ]; then echo "Using QT5.13.0"; BUILDPATH="$BUILDPATH-qt5.13.0" - OPTIONS="$OPTIONS -DQWT6_INCLUDE_DIR=~/sw/qwt-6.1.4-qt5.13.0/include -DQWT6_LIBRARY_DIR=~/sw/qwt-6.1.4-qt5.13.0/lib -DQWT6_LIBRARY=~/sw/qwt-6.1.4-qt5.13.0/lib/libqwt.so -DQT5_INSTALL_PATH=~/sw/Qt/5.13.0/gcc_64" + 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 -DQWT6_INCLUDE_DIR=~/sw/qwt-6.1.4-qt5.12.2/include -DQWT6_LIBRARY_DIR=~/sw/qwt-6.1.4-qt5.12.2/lib -DQWT6_LIBRARY=~/sw/qwt-6.1.4-qt5.12.2/lib/libqwt.so -DQT5_INSTALL_PATH=~/sw/Qt/5.12.2/gcc_64" + 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 -DQWT6_INCLUDE_DIR=~/sw/qwt-6.1.3-qt5.11.2/include -DQWT6_LIBRARY_DIR=~/sw/qwt-6.1.3-qt5.11.2/lib -DQWT6_LIBRARY=~/sw/qwt-6.1.3-qt5.11.2/lib/libqwt.so -DQT5_INSTALL_PATH=~/sw/Qt/5.11.2/gcc_64" + 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 -DQWT6_INCLUDE_DIR=~/sw/qwt-6.1.3-qt5.9.0/include -DQWT6_LIBRARY_DIR=~/sw/qwt-6.1.3-qt5.9.0/lib -DQWT6_LIBRARY=~/sw/qwt-6.1.3-qt5.9.0/lib/libqwt.so -DQT5_INSTALL_PATH=~/sw/Qt/5.9/gcc_64" + 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 -DQWT6_INCLUDE_DIR=~/sw/qwt-6.1.4-qt5.13.2/include -DQWT6_LIBRARY_DIR=~/sw/qwt-6.1.4-qt5.13.2/lib -DQWT6_LIBRARY=~/sw/qwt-6.1.4-qt5.13.2/lib/libqwt.so -DQT5_INSTALL_PATH=~/sw/Qt/5.13.2/gcc_64" + 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 -DQWT6_INCLUDE_DIR=~/sw/qwt-6.1.5-qt5.15.1/include -DQWT6_LIBRARY_DIR=~/sw/qwt-6.1.5-qt5.15.1/lib -DQWT6_LIBRARY=~/sw/qwt-6.1.5-qt5.15.1/lib/libqwt.so -DQT5_INSTALL_PATH=~/sw/Qt/5.15.1/gcc_64" + OPTIONS="$OPTIONS -DQT5_INSTALL_PATH=~/sw/Qt/5.15.1/gcc_64" fi #===================================== From b95c23bcaf83f58185f843c086edd353bf51efb3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20M=C3=B6bius?= Date: Wed, 10 Feb 2021 11:34:09 +0100 Subject: [PATCH 45/59] Updated cmake-library --- cmake-library | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cmake-library b/cmake-library index 3ed14638..b61ec2d8 160000 --- a/cmake-library +++ b/cmake-library @@ -1 +1 @@ -Subproject commit 3ed14638f8c44d6c923343cc03f081ad5ae00488 +Subproject commit b61ec2d8546642b0babb117beaf3a38157ffbc74 From 441bcb345b3890dc094de90df8c5b7a3f0da9c32 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20M=C3=B6bius?= Date: Wed, 10 Feb 2021 15:31:55 +0100 Subject: [PATCH 46/59] Use icecc for g++ builds again --- CI/ci-linux-prepare.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/CI/ci-linux-prepare.sh b/CI/ci-linux-prepare.sh index 48929405..c9168b51 100755 --- a/CI/ci-linux-prepare.sh +++ b/CI/ci-linux-prepare.sh @@ -15,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/lib/icecc/bin/g++ ; export ICECC_CC=/usr/lib/icecc/bin/gcc elif [ "$COMPILER" == "clang" ]; then From 655b8189dab97221a262b795f010a2a9975306d1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20M=C3=B6bius?= Date: Wed, 10 Feb 2021 15:37:40 +0100 Subject: [PATCH 47/59] Fixed typo --- CI/ci-linux-prepare.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CI/ci-linux-prepare.sh b/CI/ci-linux-prepare.sh index c9168b51..cba3c5d8 100755 --- a/CI/ci-linux-prepare.sh +++ b/CI/ci-linux-prepare.sh @@ -17,7 +17,7 @@ if [ "$COMPILER" == "gcc" ]; then # without icecc: no options required 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/lib/icecc/bin/g++ ; export ICECC_CC=/usr/lib/icecc/bin/gcc + export ICECC_CXX=/usr/lib/icecc/bin/g++ ; export ICECC_CC=/usr/lib/icecc/bin/gcc elif [ "$COMPILER" == "clang" ]; then From 6d5d618ea49768c32ed925f587996f24fb1db42b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20M=C3=B6bius?= Date: Wed, 10 Feb 2021 15:40:13 +0100 Subject: [PATCH 48/59] Fixed typo --- CI/ci-linux-prepare.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CI/ci-linux-prepare.sh b/CI/ci-linux-prepare.sh index cba3c5d8..ff35c196 100755 --- a/CI/ci-linux-prepare.sh +++ b/CI/ci-linux-prepare.sh @@ -17,7 +17,7 @@ if [ "$COMPILER" == "gcc" ]; then # without icecc: no options required 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/lib/icecc/bin/g++ ; export ICECC_CC=/usr/lib/icecc/bin/gcc + export ICECC_CXX=/usr/bin/g++ ; export ICECC_CC=/usr/bin/gcc elif [ "$COMPILER" == "clang" ]; then From 3b0362b0b35ceafd9dc5a79fbb98f31dcc60eae7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20M=C3=B6bius?= Date: Wed, 10 Feb 2021 16:08:18 +0100 Subject: [PATCH 49/59] Reduce number of windows jobs --- .gitlab-ci.yml | 80 ---------------------------------------- CI/gitlab-ci/windows.yml | 8 ++-- 2 files changed, 4 insertions(+), 84 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 072c9329..b4c7af9b 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -628,26 +628,6 @@ macos-cpp14-release: # 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 - build-VS2019-x64-shared-TRUE-no-apps: stage: build variables: @@ -675,26 +655,6 @@ build-VS2019-x64-shared-TRUE-no-apps: # 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 - build-VS2019-x64-shared-FALSE-no-apps: stage: build variables: @@ -723,26 +683,6 @@ build-VS2019-x64-shared-FALSE-no-apps: # VS Version: VS2017 # Apps: {{APPS}} -build-VS2017-x64-shared-TRUE-apps: - stage: build - variables: - BUILD_PLATFORM: "VS2017" - ARCHITECTURE: "x64" - SHARED: "TRUE" - APPS: "ON" - script: "CI\\Windows.bat" - tags: - - VS2017 - - Qt5101 - artifacts: - paths: - - build-release/*.exe - reports: - junit: - - build-release/unittests/report.xml - - build-release/unittests/report-customvec.xml - - build-release/unittests/report-doublevec.xml - build-VS2017-x64-shared-TRUE-no-apps: stage: build variables: @@ -770,26 +710,6 @@ build-VS2017-x64-shared-TRUE-no-apps: # VS Version: VS2017 # Apps: {{APPS}} -build-VS2017-x64-shared-FALSE-apps: - stage: build - variables: - BUILD_PLATFORM: "VS2017" - ARCHITECTURE: "x64" - SHARED: "FALSE" - APPS: "ON" - script: "CI\\Windows.bat" - tags: - - VS2017 - - Qt5101 - artifacts: - paths: - - build-release/*.exe - reports: - junit: - - build-release/unittests/report.xml - - build-release/unittests/report-customvec.xml - - build-release/unittests/report-doublevec.xml - build-VS2017-x64-shared-FALSE-no-apps: stage: build variables: diff --git a/CI/gitlab-ci/windows.yml b/CI/gitlab-ci/windows.yml index b46c2ffa..2424a621 100644 --- a/CI/gitlab-ci/windows.yml +++ b/CI/gitlab-ci/windows.yml @@ -2,11 +2,11 @@ # Windows tasks # ----------------- -{windows-template-job.yml, ARCHITECTURE=x64, SHARED=TRUE, VSVERSION=VS2019, QTTAG=Qt5150} -{windows-template-job.yml, ARCHITECTURE=x64, SHARED=FALSE, VSVERSION=VS2019, QTTAG=Qt5150} +{windows-template-job-noapps.yml, ARCHITECTURE=x64, SHARED=TRUE, VSVERSION=VS2019, QTTAG=Qt5150} +{windows-template-job-noapps.yml, ARCHITECTURE=x64, SHARED=FALSE, VSVERSION=VS2019, QTTAG=Qt5150} -{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-noapps.yml, ARCHITECTURE=x64, SHARED=TRUE, VSVERSION=VS2017, QTTAG=Qt5101} +{windows-template-job-noapps.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} From b5b022978f19595ab2f16fa36d01195ef479e2bc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20M=C3=B6bius?= Date: Wed, 10 Feb 2021 16:09:36 +0100 Subject: [PATCH 50/59] Reduce number of windows jobs --- .gitlab-ci.yml | 20 ++++++++++++-------- CI/gitlab-ci/windows.yml | 8 ++++---- 2 files changed, 16 insertions(+), 12 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index b4c7af9b..dd8e0389 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -628,16 +628,17 @@ macos-cpp14-release: # VS Version: VS2019 # Apps: {{APPS}} -build-VS2019-x64-shared-TRUE-no-apps: +build-VS2019-x64-shared-TRUE-apps: stage: build variables: BUILD_PLATFORM: "VS2019" ARCHITECTURE: "x64" SHARED: "TRUE" - APPS: "OFF" + APPS: "ON" script: "CI\\Windows.bat" tags: - VS2019 + - Qt5150 artifacts: paths: - build-release/*.exe @@ -655,16 +656,17 @@ build-VS2019-x64-shared-TRUE-no-apps: # VS Version: VS2019 # Apps: {{APPS}} -build-VS2019-x64-shared-FALSE-no-apps: +build-VS2019-x64-shared-FALSE-apps: stage: build variables: BUILD_PLATFORM: "VS2019" ARCHITECTURE: "x64" SHARED: "FALSE" - APPS: "OFF" + APPS: "ON" script: "CI\\Windows.bat" tags: - VS2019 + - Qt5150 artifacts: paths: - build-release/*.exe @@ -683,16 +685,17 @@ build-VS2019-x64-shared-FALSE-no-apps: # VS Version: VS2017 # Apps: {{APPS}} -build-VS2017-x64-shared-TRUE-no-apps: +build-VS2017-x64-shared-TRUE-apps: stage: build variables: BUILD_PLATFORM: "VS2017" ARCHITECTURE: "x64" SHARED: "TRUE" - APPS: "OFF" + APPS: "ON" script: "CI\\Windows.bat" tags: - VS2017 + - Qt5101 artifacts: paths: - build-release/*.exe @@ -710,16 +713,17 @@ build-VS2017-x64-shared-TRUE-no-apps: # VS Version: VS2017 # Apps: {{APPS}} -build-VS2017-x64-shared-FALSE-no-apps: +build-VS2017-x64-shared-FALSE-apps: stage: build variables: BUILD_PLATFORM: "VS2017" ARCHITECTURE: "x64" SHARED: "FALSE" - APPS: "OFF" + APPS: "ON" script: "CI\\Windows.bat" tags: - VS2017 + - Qt5101 artifacts: paths: - build-release/*.exe diff --git a/CI/gitlab-ci/windows.yml b/CI/gitlab-ci/windows.yml index 2424a621..01a994dc 100644 --- a/CI/gitlab-ci/windows.yml +++ b/CI/gitlab-ci/windows.yml @@ -2,11 +2,11 @@ # Windows tasks # ----------------- -{windows-template-job-noapps.yml, ARCHITECTURE=x64, SHARED=TRUE, VSVERSION=VS2019, QTTAG=Qt5150} -{windows-template-job-noapps.yml, ARCHITECTURE=x64, SHARED=FALSE, VSVERSION=VS2019, QTTAG=Qt5150} +{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-noapps.yml, ARCHITECTURE=x64, SHARED=TRUE, VSVERSION=VS2017, QTTAG=Qt5101} -{windows-template-job-noapps.yml, ARCHITECTURE=x64, SHARED=FALSE, VSVERSION=VS2017, QTTAG=Qt5101} +{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} From 3879735341da3bb980e6f890f775d752be30aa50 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20M=C3=B6bius?= Date: Fri, 12 Feb 2021 09:38:52 +0100 Subject: [PATCH 51/59] Trigger openmesh-python rebuild if OpenMesh master has been updated --- .gitlab-ci.yml | 5 +++++ CI/gitlab-ci/ci-master.yml | 5 +++++ 2 files changed, 10 insertions(+) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index dd8e0389..8147cf6c 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -852,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/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" + From b291682540184c3bcb41a14e0ae6e0abc6444b92 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20M=C3=B6bius?= Date: Fri, 12 Feb 2021 10:44:22 +0100 Subject: [PATCH 52/59] Warn in documentation about using reference to mesh itself when adding verticies --- src/OpenMesh/Core/Mesh/PolyMeshT.hh | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/src/OpenMesh/Core/Mesh/PolyMeshT.hh b/src/OpenMesh/Core/Mesh/PolyMeshT.hh index a06661f2..03bedaac 100644 --- a/src/OpenMesh/Core/Mesh/PolyMeshT.hh +++ b/src/OpenMesh/Core/Mesh/PolyMeshT.hh @@ -205,6 +205,10 @@ public: * \brief Adds a new vertex initialized to a custom position. * * \sa new_vertex(), new_vertex_dirty() + * + * \attention Be careful to not use a reference to a point in the mesh itself here. + * as a resize of the underlying vector might invalidate this reference + * and cause a segfault. */ inline SmartVertexHandle new_vertex(const Point& _p) { @@ -231,7 +235,13 @@ public: return make_smart(vh, this); } - /// Alias for new_vertex(const Point&). + /** Alias for new_vertex(const Point&). + * + * \attention Be careful to not use a reference to a point in the mesh itself here. + * as a resize of the underlying vector might invalidate this reference + * and cause a segfault. + * + */ inline SmartVertexHandle add_vertex(const Point& _p) { return new_vertex(_p); } From 6172bb936b3bf848d8ce80e982b4d38046d98ffb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20M=C3=B6bius?= Date: Fri, 12 Feb 2021 10:44:40 +0100 Subject: [PATCH 53/59] Missing ci config files --- CI/gitlab-ci/windows-template-job-apps.yml | 28 ++++++++++++++++++++ CI/gitlab-ci/windows-template-job-noapps.yml | 27 +++++++++++++++++++ 2 files changed, 55 insertions(+) create mode 100644 CI/gitlab-ci/windows-template-job-apps.yml create mode 100644 CI/gitlab-ci/windows-template-job-noapps.yml 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 + From b32d5ef803e4a1cf4363a092524ea2894fe3e104 Mon Sep 17 00:00:00 2001 From: Max Lyon Date: Sun, 14 Feb 2021 18:41:06 +0100 Subject: [PATCH 54/59] add cmake variable that controls if headers should be installed or not --- src/OpenMesh/Core/CMakeLists.txt | 8 +++++++- src/OpenMesh/Tools/CMakeLists.txt | 8 +++++++- 2 files changed, 14 insertions(+), 2 deletions(-) diff --git a/src/OpenMesh/Core/CMakeLists.txt b/src/OpenMesh/Core/CMakeLists.txt index 59e3fecf..c00a1d65 100644 --- a/src/OpenMesh/Core/CMakeLists.txt +++ b/src/OpenMesh/Core/CMakeLists.txt @@ -101,7 +101,13 @@ endif() # Only install if the project name matches OpenMesh. -if (NOT APPLE AND ${CMAKE_PROJECT_NAME} MATCHES "OpenMesh") +if (${CMAKE_PROJECT_NAME} MATCHES "OpenMesh") + set (OPENMESH_NO_INSTALL_HEADERS FALSE CACHE BOOL "Should OpenMesh skip installing headers?") +else() + set (OPENMESH_NO_INSTALL_HEADERS TRUE CACHE BOOL "Should OpenMesh skip installing headers?") +endif() + +if (NOT APPLE AND NOT ${OPENMESH_NO_INSTALL_HEADERS}) # Install Header Files) install(DIRECTORY . diff --git a/src/OpenMesh/Tools/CMakeLists.txt b/src/OpenMesh/Tools/CMakeLists.txt index 8265af19..0170e2b8 100644 --- a/src/OpenMesh/Tools/CMakeLists.txt +++ b/src/OpenMesh/Tools/CMakeLists.txt @@ -97,7 +97,13 @@ endif() # Only install if the project name matches OpenMesh. -if (NOT APPLE AND ${CMAKE_PROJECT_NAME} MATCHES "OpenMesh") +if (${CMAKE_PROJECT_NAME} MATCHES "OpenMesh") + set (OPENMESH_NO_INSTALL_HEADERS FALSE CACHE BOOL "Should OpenMesh skip installing headers?") +else() + set (OPENMESH_NO_INSTALL_HEADERS TRUE CACHE BOOL "Should OpenMesh skip installing headers?") +endif() + +if (NOT APPLE AND NOT ${OPENMESH_NO_INSTALL_HEADERS}) # Install Header Files install(DIRECTORY . From 5ea19a5247cb91a45ecd6fcb1a629220215d09e2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20M=C3=B6bius?= Date: Mon, 15 Feb 2021 14:46:17 +0100 Subject: [PATCH 55/59] Added unittest for pointproperty access --- .../unittests_set_positions_directly.cc | 66 +++++++++++++++++++ 1 file changed, 66 insertions(+) create mode 100644 src/Unittests/unittests_set_positions_directly.cc diff --git a/src/Unittests/unittests_set_positions_directly.cc b/src/Unittests/unittests_set_positions_directly.cc new file mode 100644 index 00000000..3b9beb0e --- /dev/null +++ b/src/Unittests/unittests_set_positions_directly.cc @@ -0,0 +1,66 @@ +#include +#include +#include + +namespace { + +class OpenMeshDirectSettingProperties : public OpenMeshBase { + + protected: + + // This function is called before each test is run + virtual void SetUp() { + + // Do some initial stuff with the member data here... + } + + // This function is called after all tests are through + virtual void TearDown() { + + // Do some final stuff with the member data here... + } + + // Member already defined in OpenMeshBase + //Mesh mesh_; +}; + +/* + * ==================================================================== + * Define tests below + * ==================================================================== + */ + +/* Adds two triangles to a tri mesh + */ +TEST_F(OpenMeshDirectSettingProperties, SetVertexPositionsDirectly) { + + mesh_.clear(); + + // Add some vertices + Mesh::VertexHandle vhandle[4]; + + vhandle[0] = mesh_.add_vertex(Mesh::Point(0, 0, 0)); + vhandle[1] = mesh_.add_vertex(Mesh::Point(0, 1, 0)); + vhandle[2] = mesh_.add_vertex(Mesh::Point(1, 1, 0)); + vhandle[3] = mesh_.add_vertex(Mesh::Point(1, 0, 0)); + + + auto pos_pro = mesh_.points_property_handle(); + + auto point_vector = mesh_.property(pos_pro).data_vector(); + + int vertex_count = 0; + for( auto p : point_vector) { +// std::cerr << p[0] << " " << p[1] << " " << p[2] << std::endl; + ++vertex_count; + } + + EXPECT_EQ(4u, mesh_.n_vertices() ) << "Wrong number of vertices"; + EXPECT_EQ(2u, mesh_.n_faces() ) << "Wrong number of faces"; + + EXPECT_EQ(4, vertex_count) << "Wrong number of vertices when counting direct point property vector"; + + +} + +} From 0bc24d587d4e61281aa75fe808ecfcfe2b1708e4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20M=C3=B6bius?= Date: Mon, 15 Feb 2021 14:46:54 +0100 Subject: [PATCH 56/59] Added unittest for pointproperty access --- src/Unittests/unittests_set_positions_directly.cc | 1 - 1 file changed, 1 deletion(-) diff --git a/src/Unittests/unittests_set_positions_directly.cc b/src/Unittests/unittests_set_positions_directly.cc index 3b9beb0e..d3656243 100644 --- a/src/Unittests/unittests_set_positions_directly.cc +++ b/src/Unittests/unittests_set_positions_directly.cc @@ -56,7 +56,6 @@ TEST_F(OpenMeshDirectSettingProperties, SetVertexPositionsDirectly) { } EXPECT_EQ(4u, mesh_.n_vertices() ) << "Wrong number of vertices"; - EXPECT_EQ(2u, mesh_.n_faces() ) << "Wrong number of faces"; EXPECT_EQ(4, vertex_count) << "Wrong number of vertices when counting direct point property vector"; From 6aebeef8897e4fe8029328f7712647f517c3ef98 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20M=C3=B6bius?= Date: Tue, 16 Feb 2021 09:41:03 +0100 Subject: [PATCH 57/59] Updated cmake-library --- cmake-library | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cmake-library b/cmake-library index b61ec2d8..ab9edd27 160000 --- a/cmake-library +++ b/cmake-library @@ -1 +1 @@ -Subproject commit b61ec2d8546642b0babb117beaf3a38157ffbc74 +Subproject commit ab9edd278c64b3a387f4d8eb39eb2c2a091d6481 From 00315138355543dea8d7788f51ac64e261bfa4eb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20M=C3=B6bius?= Date: Tue, 16 Feb 2021 13:13:15 +0100 Subject: [PATCH 58/59] Fixed a crash in the modified butterfly subdivider with vertices with valance larger than 30. --- .../Subdivider/Uniform/ModifiedButterFlyT.hh | 11 +++++++++ src/Unittests/TestFiles/cylinder.om | Bin 0 -> 1198 bytes src/Unittests/unittests_subdivider_uniform.cc | 22 ++++++++++++++++++ 3 files changed, 33 insertions(+) create mode 100644 src/Unittests/TestFiles/cylinder.om diff --git a/src/OpenMesh/Tools/Subdivider/Uniform/ModifiedButterFlyT.hh b/src/OpenMesh/Tools/Subdivider/Uniform/ModifiedButterFlyT.hh index 78b8f806..f476ad1f 100644 --- a/src/OpenMesh/Tools/Subdivider/Uniform/ModifiedButterFlyT.hh +++ b/src/OpenMesh/Tools/Subdivider/Uniform/ModifiedButterFlyT.hh @@ -179,6 +179,17 @@ protected: ///TODO:Implement fixed positions + // Compute the maximal vertex valence in the mesh + unsigned int maxValence = 0; + for ( auto vertex : _m.vertices() ) { + maxValence = std::max(maxValence,_m.valence(vertex)); + } + + // We pre initialized with 30. If it's larger, we update the weights + if (maxValence >= 30) { + init_weights( maxValence + 1 ); + } + // Do _n subdivisions for (size_t i=0; i < _n; ++i) { diff --git a/src/Unittests/TestFiles/cylinder.om b/src/Unittests/TestFiles/cylinder.om new file mode 100644 index 0000000000000000000000000000000000000000..7036e0a3ae74fe35c8c93bf22cdbbaddf518e1a0 GIT binary patch literal 1198 zcmYL|N6yqx5QKYj&N=5CJvrLlY*--{{A*6Y4cPn=YmUJ+#t6g$jsO>6$ASy+y62f0 z$@1rRxw>9S^ZM0O`vm|ztLwA6Ag|bB;QKB6-um+GrOEvE!#gYY=c};s>&g0gj4R!< z_1C+ViBDZ<2@mSD7Uz_b<%d-24AOH(A5poQYZcSj@VAVZB$Fz4^?nVQ=n&S@-YE zO=qspD|6k0uOYLaP@)pSAA)wJ9$%Wat+x9KsjUeDEgz4*Kr-{tK0o&D!iz<&yy zj={h&cszuHhtOdk4(-GHT_n7V?6%R!HoD!!qMO)e9gnT!>s2DYO00}z!blp+RC1YG zF4Cz*dNI$W=b8B|o0(;2(_D6%n@;k%Nq#aekN5fKaSQ-w>r9pYnuax_h hey>{TReRl9wOi|U>a|Y2({9w;jdlwfEoe2X@DI>8I|2Xz literal 0 HcmV?d00001 diff --git a/src/Unittests/unittests_subdivider_uniform.cc b/src/Unittests/unittests_subdivider_uniform.cc index 835c89cf..53900233 100644 --- a/src/Unittests/unittests_subdivider_uniform.cc +++ b/src/Unittests/unittests_subdivider_uniform.cc @@ -1027,6 +1027,28 @@ TEST_F(OpenMeshSubdividerUniform_Triangle, Modified_Butterfly) { +TEST_F(OpenMeshSubdividerUniform_Triangle, Modified_Butterfly_cylinder) { + mesh_.clear(); + + OpenMesh::IO::read_mesh(mesh_, "cylinder.om"); + + // Initialize subdivider + OpenMesh::Subdivider::Uniform::ModifiedButterflyT butter; + + // Check setup + EXPECT_EQ(66u, mesh_.n_vertices() ) << "Wrong number of vertices"; + EXPECT_EQ(128u, mesh_.n_faces() ) << "Wrong number of faces"; + + // Execute 3 subdivision steps + butter( mesh_,3,true ); + + // Check setup + EXPECT_EQ(4098u, mesh_.n_vertices() ) << "Wrong number of vertices after subdivision with loop"; + EXPECT_EQ(8192u, mesh_.n_faces() ) << "Wrong number of faces after subdivision with loop"; +} + + + TEST_F(OpenMeshSubdividerUniform_Triangle, Modified_Butterfly_delete_vertex) { for (bool collect_garbage : { false, true }) From 9c17c07b15adcacc61fb1b4984d9d210bfefe856 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20M=C3=B6bius?= Date: Tue, 16 Feb 2021 13:17:14 +0100 Subject: [PATCH 59/59] Updated changelog --- Doc/changelog.docu | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/Doc/changelog.docu b/Doc/changelog.docu index eabdedaf..14b6228a 100644 --- a/Doc/changelog.docu +++ b/Doc/changelog.docu @@ -29,8 +29,14 @@
  • OM Writer: Removed debug output
  • +Tools +
      +
    • Subdivider: Fixed crash in ModifiedButterfly subdivider (When vertex with valence > 30 was present)
    • +
    + Build System
      +
    • Set cmake project info correctly
    • Dropped 32-bit Windows continuous integration and artifact builds.
    • Removed the VERSION file and do it via cmakes project call)
    • Switched to external cmake-library used by all of our projects now