From 647c28b5142747d797896f8f3a79ae41add7efa2 Mon Sep 17 00:00:00 2001 From: Julien Wadel Date: Thu, 11 Jun 2020 16:42:09 +0200 Subject: [PATCH] - Add CMAKE_BUILD_TYPE selection - Add Debian9 with Qt Release images --- .../job-linux-desktop-centos7.yml | 11 +- .../job-linux-desktop-debian9.yml | 101 ++++++++++++------ .gitlab-ci-files/job-linux-desktop.yml | 5 +- .gitlab-ci-files/job-macosx-desktop.yml | 5 +- .gitlab-ci-files/job-windows-desktop.yml | 4 +- 5 files changed, 84 insertions(+), 42 deletions(-) diff --git a/.gitlab-ci-files/job-linux-desktop-centos7.yml b/.gitlab-ci-files/job-linux-desktop-centos7.yml index 9eec75bdc..24c766319 100644 --- a/.gitlab-ci-files/job-linux-desktop-centos7.yml +++ b/.gitlab-ci-files/job-linux-desktop-centos7.yml @@ -72,8 +72,7 @@ job-centos7-ninja-gcc-package: dependencies: [] only: variables: - - $NIGHTLY_MASTER - - $DEPLOY_LINUX + - $DEPLOY_LINUX_CENTOS7 variables: CMAKE_OPTIONS: -DENABLE_APP_PACKAGING=YES -DLINPHONE_BUILDER_SIGNING_IDENTITY=$GPG_SIGNING_KEYID -DLINPHONE_BUILDER_SIGNING_PASSPHRASE=$GPG_SIGNING_PASS CMAKE_GENERATOR: Ninja @@ -91,12 +90,13 @@ job-centos7-ninja-gcc-package: - export CC=$CC - export CXX=$CXX - mkdir -p build/OUTPUT + - echo $CI_BUILD_TYPE - echo $CMAKE_GENERATOR - echo $DEFAULT_LINUX_CMAKE_OPTIONS - echo $CMAKE_SANITIZER_OPTIONS - cd build - - cmake .. -G "$CMAKE_GENERATOR" -DCMAKE_VERBOSE_MAKEFILE=ON -DLINPHONESDK_PLATFORM=Desktop $DEFAULT_LINUX_CMAKE_OPTIONS $CMAKE_OPTIONS $SCHEDULE_CMAKE_OPTIONS $CMAKE_SANITIZER_OPTIONS - - cmake --build . --target all $LBC_NODEBUG_OPTIONS + - cmake .. -G "$CMAKE_GENERATOR" -DCMAKE_VERBOSE_MAKEFILE=ON -DLINPHONESDK_PLATFORM=Desktop -DCMAKE_BUILD_TYPE=$CI_BUILD_TYPE $DEFAULT_LINUX_CMAKE_OPTIONS $CMAKE_OPTIONS $SCHEDULE_CMAKE_OPTIONS $CMAKE_SANITIZER_OPTIONS + - cmake --build . --target all --config $CI_BUILD_TYPE $LBC_NODEBUG_OPTIONS artifacts: paths: - build/OUTPUT/Packages/*.AppImage @@ -113,8 +113,7 @@ job-centos7-ninja-gcc-deploy: - job-centos7-ninja-gcc-package only: variables: - - $NIGHTLY_MASTER - - $DEPLOY_LINUX + - $DEPLOY_LINUX_CENTOS7 script: - rsync -rlv --ignore-existing build/OUTPUT/Packages/*.AppImage $DEPLOY_SERVER:$APPIMAGE_UPLOAD_DIRECTORY/ diff --git a/.gitlab-ci-files/job-linux-desktop-debian9.yml b/.gitlab-ci-files/job-linux-desktop-debian9.yml index be8cdd105..0db3562f8 100644 --- a/.gitlab-ci-files/job-linux-desktop-debian9.yml +++ b/.gitlab-ci-files/job-linux-desktop-debian9.yml @@ -2,7 +2,7 @@ job-debian9-ninja-gcc: tags: [ "docker-debian9" ] - image: gitlab.linphone.org:4567/bc/public/linphone-sdk/bc-dev-debian:9 + image: gitlab.linphone.org:4567/bc/public/linphone-desktop/bc-dev-debian9-fuse-wget-gpg2-qt-release-no-debug-info:5.12.5 except: refs: - schedules @@ -28,7 +28,7 @@ job-debian9-ninja-gcc-smallsdk: job-debian9-makefile-gcc: tags: [ "docker-debian9" ] - image: gitlab.linphone.org:4567/bc/public/linphone-sdk/bc-dev-debian:9 + image: gitlab.linphone.org:4567/bc/public/linphone-desktop/bc-dev-debian9-fuse-wget-gpg2-qt-release-no-debug-info:5.12.5 only: variables: - $NIGHTLY_MASTER @@ -53,7 +53,7 @@ job-debian9-ninja-clang: only: variables: - $NIGHTLY_MASTER - image: gitlab.linphone.org:4567/bc/public/linphone-sdk/bc-dev-debian:9 + image: gitlab.linphone.org:4567/bc/public/linphone-desktop/bc-dev-debian9-fuse-wget-gpg2-qt-release-no-debug-info:5.12.5 variables: CMAKE_OPTIONS: -DENABLE_DOC=ON CMAKE_GENERATOR: Ninja @@ -71,7 +71,7 @@ job-debian9-ninja-clang-novideo: job-debian9-makefile-clang: tags: [ "docker-debian9" ] - image: gitlab.linphone.org:4567/bc/public/linphone-sdk/bc-dev-debian:9 + image: gitlab.linphone.org:4567/bc/public/linphone-desktop/bc-dev-debian9-fuse-wget-gpg2-qt-release-no-debug-info:5.12.5 only: variables: - $NIGHTLY_MASTER @@ -86,33 +86,74 @@ job-debian9-makefile-clang: # Package - Nightly ################################################# -#job-debian9-makefile-clang-package: -# stage: package -# tags: [ "docker-debian9" ] -# only: -# variables: -# - $NIGHTLY_MASTER -# - $DEPLOY_LINUX -# variables: -# CMAKE_OPTIONS: -DENABLE_APP_PACKAGING=YES -# extends: job-debian9-makefile-clang -# artifacts: -# paths: -# - build/OUTPUT/Packages/Linphone*.AppImage -# expire_in: 1 week -# +job-debian9-makefile-clang-package: + stage: package + tags: [ "docker-test-debian9-liblinphone-nuc" ] + image: gitlab.linphone.org:4567/bc/public/linphone-desktop/bc-dev-debian9-fuse-wget-gpg2-qt-release-no-debug-info:5.12.5 + dependencies: [] + only: + variables: + - $NIGHTLY_MASTER + - $DEPLOY_LINUX + variables: + CMAKE_OPTIONS: -DENABLE_APP_PACKAGING=YES -DLINPHONE_BUILDER_SIGNING_IDENTITY=$GPG_SIGNING_KEYID -DLINPHONE_BUILDER_SIGNING_PASSPHRASE=$GPG_SIGNING_PASS + CMAKE_GENERATOR: Unix Makefiles + CC: clang + CXX: clang++ + extends: .job-linux-desktop + script: + - echo "$GPG_SIGNING_PUB" > file.key && sed -i 's/\r /\n/g' file.key && chmod 600 file.key + - gpg --import file.key + - rm -f file.key + - echo "$GPG_SIGNING_KEY" > file.key && sed -i 's/\r /\n/g' file.key && chmod 600 file.key + - base64 -w 0 file.key | base64 -d | gpg --import --no-tty --batch --yes + - rm -f file.key + - cmake --version + - export CC=$CC + - export CXX=$CXX + - mkdir -p build/OUTPUT + - echo $CI_BUILD_TYPE + - echo $CMAKE_GENERATOR + - echo $DEFAULT_LINUX_CMAKE_OPTIONS + - echo $CMAKE_SANITIZER_OPTIONS + - cd build + - cmake .. -G "$CMAKE_GENERATOR" -DCMAKE_VERBOSE_MAKEFILE=ON -DLINPHONESDK_PLATFORM=Desktop -DCMAKE_BUILD_TYPE=$CI_BUILD_TYPE $DEFAULT_LINUX_CMAKE_OPTIONS $CMAKE_OPTIONS $SCHEDULE_CMAKE_OPTIONS $CMAKE_SANITIZER_OPTIONS + - cmake --build . --target all --config $CI_BUILD_TYPE $LBC_NODEBUG_OPTIONS + artifacts: + paths: + - build/OUTPUT/Packages/*.AppImage + expire_in: 1 week + + ################################################# # Deploy - Nightly ################################################# -#job-debian9-makefile-clang-deploy: -# stage: deploy -# tags: [ "docker-debian9" ] -# dependencies: -# - job-debian9-makefile-clang-package -# only: -# variables: -# - $NIGHTLY_MASTER -# - $DEPLOY_LINUX -# script: -# - scp build/OUTPUT/Packages/Linphone*.AppImage $DEPLOY_SERVER:$APPIMAGE_UPLOAD_DIRECTORY/ +job-debian9-makefile-clang-deploy: + stage: deploy + tags: [ "deploy" ] + dependencies: + - job-debian9-makefile-clang-package + only: + variables: + - $NIGHTLY_MASTER + - $DEPLOY_LINUX + script: + - rsync -rlv --ignore-existing build/OUTPUT/Packages/*.AppImage $DEPLOY_SERVER:$APPIMAGE_UPLOAD_DIRECTORY/ + +################################################# +# Debug +################################################# + + +job-debian9-debug: + stage: deploy + tags: [ "docker-test-debian9-liblinphone-nuc" ] + image: gitlab.linphone.org:4567/bc/public/linphone-desktop/bc-dev-debian9-fuse-wget-gpg2-qt-release-no-debug-info:5.12.5 + dependencies: [] + only: + variables: + - $DEBUG_DEBIAN9 + script: + - sleep 10m + diff --git a/.gitlab-ci-files/job-linux-desktop.yml b/.gitlab-ci-files/job-linux-desktop.yml index 6c3950528..4a8985fab 100644 --- a/.gitlab-ci-files/job-linux-desktop.yml +++ b/.gitlab-ci-files/job-linux-desktop.yml @@ -7,12 +7,13 @@ export CC=$CC export CXX=$CXX mkdir -p build/OUTPUT + echo $CI_BUILD_TYPE echo $CMAKE_GENERATOR echo $DEFAULT_LINUX_CMAKE_OPTIONS echo $CMAKE_SANITIZER_OPTIONS cd build - cmake .. -G "$CMAKE_GENERATOR" -DCMAKE_VERBOSE_MAKEFILE=ON -DLINPHONESDK_PLATFORM=Desktop $DEFAULT_LINUX_CMAKE_OPTIONS $CMAKE_OPTIONS $SCHEDULE_CMAKE_OPTIONS $CMAKE_SANITIZER_OPTIONS - cmake --build . --target all $LBC_NODEBUG_OPTIONS + cmake .. -G "$CMAKE_GENERATOR" -DCMAKE_VERBOSE_MAKEFILE=ON -DLINPHONESDK_PLATFORM=Desktop -DCMAKE_BUILD_TYPE=$CI_BUILD_TYPE $DEFAULT_LINUX_CMAKE_OPTIONS $CMAKE_OPTIONS $SCHEDULE_CMAKE_OPTIONS $CMAKE_SANITIZER_OPTIONS + cmake --build . --target all --config $CI_BUILD_TYPE $LBC_NODEBUG_OPTIONS .job-linux-desktop: stage: build diff --git a/.gitlab-ci-files/job-macosx-desktop.yml b/.gitlab-ci-files/job-macosx-desktop.yml index 717adf298..2e125355f 100644 --- a/.gitlab-ci-files/job-macosx-desktop.yml +++ b/.gitlab-ci-files/job-macosx-desktop.yml @@ -11,12 +11,13 @@ mkdir -p build/OUTPUT cd build #SDK Building + echo $CI_BUILD_TYPE echo $CMAKE_GENERATOR echo $DEFAULT_MACOS_CMAKE_OPTIONS echo $CMAKE_OPTIONS echo $ADDITIONAL_BUILD_OPTIONS - cmake .. -G "$CMAKE_GENERATOR" -DLINPHONESDK_PLATFORM=Desktop -DCMAKE_OSX_DEPLOYMENT_TARGET=10.9 $DEFAULT_MACOS_CMAKE_OPTIONS $XCODE_OPTIONS $CMAKE_OPTIONS $SCHEDULE_CMAKE_OPTIONS -DLINPHONE_BUILDER_SIGNING_IDENTITY="$MACOS_SIGNING_IDENTITY" - cmake --build . --target all $LBC_NODEBUG_OPTIONS -- $ADDITIONAL_BUILD_OPTIONS + cmake .. -G "$CMAKE_GENERATOR" -DLINPHONESDK_PLATFORM=Desktop -DCMAKE_OSX_DEPLOYMENT_TARGET=10.9 -DCMAKE_BUILD_TYPE=$CI_BUILD_TYPE $DEFAULT_MACOS_CMAKE_OPTIONS $XCODE_OPTIONS $CMAKE_OPTIONS $SCHEDULE_CMAKE_OPTIONS -DLINPHONE_BUILDER_SIGNING_IDENTITY="$MACOS_SIGNING_IDENTITY" + cmake --build . --target all --config $CI_BUILD_TYPE $LBC_NODEBUG_OPTIONS -- $ADDITIONAL_BUILD_OPTIONS ccache -s .job-macosx-desktop: diff --git a/.gitlab-ci-files/job-windows-desktop.yml b/.gitlab-ci-files/job-windows-desktop.yml index 1fcc76cce..8e52aa5a9 100644 --- a/.gitlab-ci-files/job-windows-desktop.yml +++ b/.gitlab-ci-files/job-windows-desktop.yml @@ -10,8 +10,8 @@ cd build mkdir OUTPUT C:\PROGRA~1\Python37\Scripts\cl -s - cmake .. -G "Visual Studio 15 2017" -DLINPHONESDK_PLATFORM=Desktop -DCMAKE_BUILD_TYPE=Release %DEFAULT_WINDOWS_CMAKE_OPTIONS% %CMAKE_OPTIONS% - cmake --build . --target ALL_BUILD --config Release %LBC_NODEBUG_OPTIONS% -- /maxcpucount /nodeReuse:true /p:TrackFileAccess=false + cmake .. -G "Visual Studio 15 2017" -DLINPHONESDK_PLATFORM=Desktop -DCMAKE_BUILD_TYPE=%CI_BUILD_TYPE% %DEFAULT_WINDOWS_CMAKE_OPTIONS% %CMAKE_OPTIONS% + cmake --build . --target ALL_BUILD --config %CI_BUILD_TYPE% %LBC_NODEBUG_OPTIONS% -- /maxcpucount /nodeReuse:true /p:TrackFileAccess=false C:\PROGRA~1\Python37\Scripts\cl -s .job-windows-vs2017: