From b98fc15267d2e59ce804153bc121faf6eb1d110f Mon Sep 17 00:00:00 2001 From: Martin Schultz Date: Wed, 23 May 2018 16:37:33 +0200 Subject: [PATCH 1/4] Update .gitlab-ci.yml to use anchors for VS2017x64 definitions --- .gitlab-ci.yml | 71 +++++++++++++++++++------------------------------- 1 file changed, 27 insertions(+), 44 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 95d8d1d6..7202bf35 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -43,48 +43,45 @@ cppcheck: artifacts: paths: - cppcheck.log - -VS2017-64-bit-shared-apps: + +.VS2017_64_TEMPLATE: &VS2017_x64 variables: BUILD_PLATFORM: "VS2017" ARCHITECTURE: "x64" - SHARED: "TRUE" - APPS: "ON" - script: "CI\\Windows.bat" - tags: - - VS2017 - - Qt5101 - artifacts: - paths: - - build-release/*.exe - -VS2017-64-bit-static-apps: - variables: - BUILD_PLATFORM: "VS2017" - ARCHITECTURE: "x64" - SHARED: "FALSE" - APPS: "ON" - script: "CI\\Windows.bat" - tags: - - VS2017 - - Qt5101 + script: "CI\Windows.bat" artifacts: paths: - build-release/*.exe + tags: + - VS2017 + - Qt5101 + +VS2017-64-bit-shared-apps: + variables: + SHARED: "TRUE" + APPS: "ON" + <<: *VS2017_x64 + + +VS2017-64-bit-static-apps: + variables: + SHARED: "FALSE" + APPS: "ON" + <<: *VS2017_x64 VS2017-64-bit-shared-no-apps: variables: - BUILD_PLATFORM: "VS2017" - ARCHITECTURE: "x64" SHARED: "TRUE" APPS: "OFF" - script: "CI\\Windows.bat" - tags: - - VS2017 - artifacts: - paths: - - build-release/*.exe + <<: *VS2017_x64 + + +VS2017-64-bit-static-no-apps: + variables: + SHARED: "FALSE" + APPS: "OFF" + <<: *VS2017_x64 VS2017-32-bit-shared-no-apps: @@ -99,20 +96,6 @@ VS2017-32-bit-shared-no-apps: artifacts: paths: - build-release/*.exe - - -VS2017-64-bit-static-no-apps: - variables: - BUILD_PLATFORM: "VS2017" - ARCHITECTURE: "x64" - SHARED: "FALSE" - APPS: "OFF" - script: "CI\\Windows.bat" - tags: - - VS2017 - artifacts: - paths: - - build-release/*.exe VS2017-32-bit-static-no-apps: From b7e8f0d9b47443a5b8a21c347a54bc13da466b07 Mon Sep 17 00:00:00 2001 From: Martin Schultz Date: Wed, 23 May 2018 16:38:06 +0200 Subject: [PATCH 2/4] Update .gitlab-ci.yml typo --- .gitlab-ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 7202bf35..06033921 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -48,7 +48,7 @@ cppcheck: variables: BUILD_PLATFORM: "VS2017" ARCHITECTURE: "x64" - script: "CI\Windows.bat" + script: "CI\\Windows.bat" artifacts: paths: - build-release/*.exe From d7fc167f0cd9e1aae47b6e00eb75c9c4d8b1bbd9 Mon Sep 17 00:00:00 2001 From: Martin Schultz Date: Wed, 23 May 2018 16:42:40 +0200 Subject: [PATCH 3/4] Update .gitlab-ci.yml --- .gitlab-ci.yml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 06033921..9cc5e15c 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -60,28 +60,28 @@ VS2017-64-bit-shared-apps: variables: SHARED: "TRUE" APPS: "ON" - <<: *VS2017_x64 + <<: *VS2017_x64 VS2017-64-bit-static-apps: variables: SHARED: "FALSE" APPS: "ON" - <<: *VS2017_x64 + <<: *VS2017_x64 VS2017-64-bit-shared-no-apps: variables: SHARED: "TRUE" APPS: "OFF" - <<: *VS2017_x64 + <<: *VS2017_x64 VS2017-64-bit-static-no-apps: variables: SHARED: "FALSE" APPS: "OFF" - <<: *VS2017_x64 + <<: *VS2017_x64 VS2017-32-bit-shared-no-apps: From 12fb6d7ee9fdec87d81f7443b0884f8269bfb27a Mon Sep 17 00:00:00 2001 From: Martin Schultz Date: Wed, 23 May 2018 17:16:12 +0200 Subject: [PATCH 4/4] Update .gitlab-ci.yml to use anchors for all VisualStudio jobs and the linux tags. * reduces filesizes and improves maintainability --- .gitlab-ci.yml | 404 +++++++++++++++++++------------------------------ 1 file changed, 156 insertions(+), 248 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 9cc5e15c..6ef81b27 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -1,22 +1,120 @@ -gcc-c++11: - script: "CI/ci-linux.sh gcc C++11" +### Templates for common job definitions ### +.LINUX_TAG: &LINUX_TAG tags: - Linux +### VS2017 ### + +.VS2017_64_TEMPLATE: &VS2017_x64 + variables: + BUILD_PLATFORM: "VS2017" + ARCHITECTURE: "x64" + script: "CI\\Windows.bat" + artifacts: + paths: + - build-release/*.exe + tags: + - VS2017 + - Qt5101 + +.VS2017_32_TEMPLATE: &VS2017_x32 + variables: + BUILD_PLATFORM: "VS2017" + ARCHITECTURE: "x32" + script: "CI\\Windows.bat" + tags: + - VS2017 + artifacts: + paths: + - build-release/*.exe + +### VS2015 ### + +.VS2015_64_TEMPLATE: &VS2015_x64 + variables: + BUILD_PLATFORM: "VS2015" + ARCHITECTURE: "x64" + script: "CI\\Windows.bat" + tags: + - VS2015 + artifacts: + paths: + - build-release/*.exe + +.VS2015_32_TEMPLATE: &VS2015_x32 + variables: + BUILD_PLATFORM: "VS2015" + ARCHITECTURE: "x32" + script: "CI\\Windows.bat" + tags: + - VS2015 + artifacts: + paths: + - build-release/*.exe + +### VS2013 ### + +.VS2013_64_TEMPLATE: &VS2013_x64 + variables: + BUILD_PLATFORM: "VS2013" + ARCHITECTURE: "x64" + script: "CI\\Windows.bat" + tags: + - VS2013 + artifacts: + paths: + - build-release/*.exe + +.VS2013_32_TEMPLATE: &VS2013_x32 + variables: + BUILD_PLATFORM: "VS2013" + ARCHITECTURE: "x32" + script: "CI\\Windows.bat" + tags: + - VS2013 + artifacts: + paths: + - build-release/*.exe + +### Linker and App configurations for VS ### + +.STATIC_NO_APPS: &STATIC_NO_APPS + variables: + SHARED: "FALSE" + APPS: "OFF" + +.STATIC_APPS: &STATIC_APPS + variables: + SHARED: "FLASE" + APPS: "ON" + +.SHARED_NO_APPS: &SHARED_NO_APPS + variables: + SHARED: "TRUE" + APPS: "OFF" + +.SHARED_APPS: &SHARED_APPS + variables: + SHARED: "TRUE" + APPS: "ON" + +### actual job definitions ### + +gcc-c++11: + script: "CI/ci-linux.sh gcc C++11" + <<: *LINUX_TAG + clang-c++11: script: "CI/ci-linux.sh clang C++11" - tags: - - Linux + <<: *LINUX_TAG gcc-c++14: script: "CI/ci-linux.sh gcc C++14" - tags: - - Linux + <<: *LINUX_TAG clang-c++14: script: "CI/ci-linux.sh clang C++14" - tags: - - Linux + <<: *LINUX_TAG macos-c++11: script: "CI/ci-mac.sh C++11" @@ -44,283 +142,93 @@ cppcheck: paths: - cppcheck.log -.VS2017_64_TEMPLATE: &VS2017_x64 - variables: - BUILD_PLATFORM: "VS2017" - ARCHITECTURE: "x64" - script: "CI\\Windows.bat" - artifacts: - paths: - - build-release/*.exe - tags: - - VS2017 - - Qt5101 - VS2017-64-bit-shared-apps: - variables: - SHARED: "TRUE" - APPS: "ON" + variables: *SHARED_APPS <<: *VS2017_x64 - VS2017-64-bit-static-apps: - variables: - SHARED: "FALSE" - APPS: "ON" + variables: *STATIC_APPS <<: *VS2017_x64 - VS2017-64-bit-shared-no-apps: - variables: - SHARED: "TRUE" - APPS: "OFF" + variables: *SHARED_NO_APPS <<: *VS2017_x64 - VS2017-64-bit-static-no-apps: - variables: - SHARED: "FALSE" - APPS: "OFF" + variables: *STATIC_NO_APPS <<: *VS2017_x64 - VS2017-32-bit-shared-no-apps: - variables: - BUILD_PLATFORM: "VS2017" - ARCHITECTURE: "x32" - SHARED: "TRUE" - APPS: "OFF" - script: "CI\\Windows.bat" - tags: - - VS2017 - artifacts: - paths: - - build-release/*.exe - + variables: *SHARED_NO_APPS + <<: *VS2017_x32 VS2017-32-bit-static-no-apps: - variables: - BUILD_PLATFORM: "VS2017" - ARCHITECTURE: "x32" - SHARED: "FALSE" - APPS: "OFF" - script: "CI\\Windows.bat" - tags: - - VS2017 - artifacts: - paths: - - build-release/*.exe + variables: *STATIC_NO_APPS + <<: *VS2017_x32 VS2015-64-bit-shared-apps: - variables: - BUILD_PLATFORM: "VS2015" - ARCHITECTURE: "x64" - SHARED: "TRUE" - APPS: "ON" - script: "CI\\Windows.bat" - tags: - - VS2015 - artifacts: - paths: - - build-release/*.exe - - + variables: *SHARED_APPS + <<: *VS2015_x64 + VS2015-64-bit-shared-no-apps: - variables: - BUILD_PLATFORM: "VS2015" - ARCHITECTURE: "x64" - SHARED: "TRUE" - APPS: "OFF" - script: "CI\\Windows.bat" - tags: - - VS2015 - artifacts: - paths: - - build-release/*.exe + variables: *SHARED_NO_APPS + <<: *VS2015_x64 -VS2015-32-bit-shared-apps: - variables: - BUILD_PLATFORM: "VS2015" - ARCHITECTURE: "x32" - SHARED: "TRUE" - APPS: "ON" - script: "CI\\Windows.bat" - tags: - - VS2015 - artifacts: - paths: - - build-release/*.exe - -VS2015-32-bit-shared-no-apps: - variables: - BUILD_PLATFORM: "VS2015" - ARCHITECTURE: "x32" - SHARED: "TRUE" - APPS: "OFF" - script: "CI\\Windows.bat" - tags: - - VS2015 - artifacts: - paths: - - build-release/*.exe - VS2015-64-bit-static-apps: - variables: - BUILD_PLATFORM: "VS2015" - ARCHITECTURE: "x64" - SHARED: "FALSE" - APPS: "ON" - script: "CI\\Windows.bat" - tags: - - VS2015 - artifacts: - paths: - - build-release/*.exe + variables: *STATIC_APPS + <<: *VS2015_x64 VS2015-64-bit-static-no-apps: - variables: - BUILD_PLATFORM: "VS2015" - ARCHITECTURE: "x64" - SHARED: "FALSE" - APPS: "OFF" - script: "CI\\Windows.bat" - tags: - - VS2015 - artifacts: - paths: - - build-release/*.exe + variables: *STATIC_NO_APPS + <<: *VS2015_x64 + +VS2015-32-bit-shared-apps: + variables: *SHARED_APPS + <<: *VS2015_x32 + +VS2015-32-bit-shared-no-apps: + variables: *SHARED_NO_APPS + <<: *VS2015_x32 VS2015-32-bit-static-apps: - variables: - BUILD_PLATFORM: "VS2015" - ARCHITECTURE: "x32" - SHARED: "FALSE" - APPS: "ON" - script: "CI\\Windows.bat" - tags: - - VS2015 - artifacts: - paths: - - build-release/*.exe + variables: *STATIC_APPS + <<: *VS2015_x32 VS2015-32-bit-static-no-apps: - variables: - BUILD_PLATFORM: "VS2015" - ARCHITECTURE: "x32" - SHARED: "FALSE" - APPS: "OFF" - script: "CI\\Windows.bat" - tags: - - VS2015 - artifacts: - paths: - - build-release/*.exe - - - + variables: *STATIC_NO_APPS + <<: *VS2015_x32 + VS2013-64-bit-shared-apps: - variables: - BUILD_PLATFORM: "VS2013" - ARCHITECTURE: "x64" - SHARED: "TRUE" - APPS: "ON" - script: "CI\\Windows.bat" - tags: - - VS2013 - artifacts: - paths: - - build-release/*.exe + variables: *SHARED_APPS + <<: *VS2013_x64 VS2013-64-bit-shared-no-apps: - variables: - BUILD_PLATFORM: "VS2013" - ARCHITECTURE: "x64" - SHARED: "TRUE" - APPS: "OFF" - script: "CI\\Windows.bat" - tags: - - VS2013 - artifacts: - paths: - - build-release/*.exe + variables: *SHARED_NO_APPS + <<: *VS2013_x64 -VS2013-32-bit-shared-apps: - variables: - BUILD_PLATFORM: "VS2013" - ARCHITECTURE: "x32" - SHARED: "TRUE" - APPS: "ON" - script: "CI\\Windows.bat" - tags: - - VS2013 - artifacts: - paths: - - build-release/*.exe - -VS2013-32-bit-shared-no-apps: - variables: - BUILD_PLATFORM: "VS2013" - ARCHITECTURE: "x32" - SHARED: "TRUE" - APPS: "OFF" - script: "CI\\Windows.bat" - tags: - - VS2013 - artifacts: - paths: - - build-release/*.exe - VS2013-64-bit-static-apps: - variables: - BUILD_PLATFORM: "VS2013" - ARCHITECTURE: "x64" - SHARED: "FALSE" - APPS: "ON" - script: "CI\\Windows.bat" - tags: - - VS2013 - artifacts: - paths: - - build-release/*.exe + variables: *STATIC_APPS + <<: *VS2013_x64 VS2013-64-bit-static-no-apps: - variables: - BUILD_PLATFORM: "VS2013" - ARCHITECTURE: "x64" - SHARED: "FALSE" - APPS: "OFF" - script: "CI\\Windows.bat" - tags: - - VS2013 - artifacts: - paths: - - build-release/*.exe + variables: *STATIC_NO_APPS + <<: *VS2013_x64 + +VS2013-32-bit-shared-apps: + variables: *SHARED_APPS + <<: *VS2013_x32 + +VS2013-32-bit-shared-no-apps: + variables: *SHARED_NO_APPS + <<: *VS2013_x32 VS2013-32-bit-static-apps: - variables: - BUILD_PLATFORM: "VS2013" - ARCHITECTURE: "x32" - SHARED: "FALSE" - APPS: "ON" - script: "CI\\Windows.bat" - tags: - - VS2013 - artifacts: - paths: - - build-release/*.exe + variables: *STATIC_APPS + <<: *VS2013_x32 VS2013-32-bit-static-no-apps: - variables: - BUILD_PLATFORM: "VS2013" - ARCHITECTURE: "x32" - SHARED: "FALSE" - APPS: "OFF" - script: "CI\\Windows.bat" - tags: - - VS2013 - artifacts: - paths: - - build-release/*.exe + variables: *STATIC_NO_APPS + <<: *VS2013_x32 Doc-publish: only: