Qt : Bump build version to 5.12.12 (#8544)

* Qt : Bump build version to 5.12.12

* Bump cache key
This commit is contained in:
Magne Sjaastad 2022-02-12 17:54:38 +01:00 committed by GitHub
parent 64bb5c3351
commit 4d0b94570e
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 175 additions and 160 deletions

View File

@ -11,31 +11,36 @@ jobs:
steps: steps:
- name: Checkout - name: Checkout
uses: actions/checkout@v2 uses: actions/checkout@v2
- name: Cache Qt - name: Cache Qt
id: cache-qt id: cache-qt
uses: actions/cache@v2 uses: actions/cache@v2
with: with:
path: ${{ github.workspace }}/Qt/ path: ${{ github.workspace }}/Qt/
key: ${{ runner.os }}-QtCache key: ${{ runner.os }}-QtCache-5-12-12
- name: Install Qt - name: Install Qt
uses: jurplel/install-qt-action@v2 uses: jurplel/install-qt-action@v2
with: with:
version: 5.9.9 version: 5.12.12
modules: qtscript modules: qtscript
dir: '${{ github.workspace }}/Qt/' dir: "${{ github.workspace }}/Qt/"
cached: ${{ steps.cache-qt.outputs.cache-hit }} cached: ${{ steps.cache-qt.outputs.cache-hit }}
- name: Install Linux dependencies - name: Install Linux dependencies
if: "contains( matrix.os, 'ubuntu')" if: "contains( matrix.os, 'ubuntu')"
run: sudo apt-get install libxkbcommon-x11-0 libgl1-mesa-dev mesa-common-dev libglfw3-dev libglu1-mesa-dev run: sudo apt-get install libxkbcommon-x11-0 libgl1-mesa-dev mesa-common-dev libglfw3-dev libglu1-mesa-dev
- name: Build AppFwk with Unit Tests - name: Build AppFwk with Unit Tests
uses: lukka/run-cmake@v1 uses: lukka/run-cmake@v1
with: with:
cmakeListsOrSettingsJson: CMakeListsTxtAdvanced cmakeListsOrSettingsJson: CMakeListsTxtAdvanced
cmakeListsTxtPath: '${{ github.workspace }}/Fwk/AppFwk/CMakeLists.txt' cmakeListsTxtPath: "${{ github.workspace }}/Fwk/AppFwk/CMakeLists.txt"
cmakeAppendedArgs: cmakeAppendedArgs:
buildDirectory: ${{ github.workspace }}/cmakebuild buildDirectory: ${{ github.workspace }}/cmakebuild
buildWithCMakeArgs: '--config Release' buildWithCMakeArgs: "--config Release"
useVcpkgToolchainFile: false useVcpkgToolchainFile: false
- name: Run Unit Tests Windows - name: Run Unit Tests Windows
if: contains( matrix.os, 'windows') if: contains( matrix.os, 'windows')
shell: bash shell: bash
@ -43,6 +48,7 @@ jobs:
cmakebuild/cafProjectDataModel/cafPdmCore/cafPdmCore_UnitTests/Release/cafPdmCore_UnitTests cmakebuild/cafProjectDataModel/cafPdmCore/cafPdmCore_UnitTests/Release/cafPdmCore_UnitTests
cmakebuild/cafProjectDataModel/cafPdmXml/cafPdmXml_UnitTests/Release/cafPdmXml_UnitTests cmakebuild/cafProjectDataModel/cafPdmXml/cafPdmXml_UnitTests/Release/cafPdmXml_UnitTests
cmakebuild/cafProjectDataModel/cafProjectDataModel_UnitTests/Release/cafProjectDataModel_UnitTests cmakebuild/cafProjectDataModel/cafProjectDataModel_UnitTests/Release/cafProjectDataModel_UnitTests
- name: Run Unit Tests Linux - name: Run Unit Tests Linux
if: "!contains( matrix.os, 'windows')" if: "!contains( matrix.os, 'windows')"
shell: bash shell: bash
@ -50,4 +56,3 @@ jobs:
cmakebuild/cafProjectDataModel/cafPdmCore/cafPdmCore_UnitTests/cafPdmCore_UnitTests cmakebuild/cafProjectDataModel/cafPdmCore/cafPdmCore_UnitTests/cafPdmCore_UnitTests
cmakebuild/cafProjectDataModel/cafPdmXml/cafPdmXml_UnitTests/cafPdmXml_UnitTests cmakebuild/cafProjectDataModel/cafPdmXml/cafPdmXml_UnitTests/cafPdmXml_UnitTests
cmakebuild/cafProjectDataModel/cafProjectDataModel_UnitTests/cafProjectDataModel_UnitTests cmakebuild/cafProjectDataModel/cafProjectDataModel_UnitTests/cafProjectDataModel_UnitTests

View File

@ -6,10 +6,10 @@ on:
schedule: schedule:
# Every day at 1am to make sure we have a build cache for the current date # Every day at 1am to make sure we have a build cache for the current date
# build cache is # build cache is
- cron: '0 1 * * * ' - cron: "0 1 * * * "
env: env:
BUILD_TYPE: Release BUILD_TYPE: Release
BUILDCACHE_VERSION: 0.24.4 BUILDCACHE_VERSION: 0.27.6
BUILDCACHE_DIR: ${{ github.workspace }}/buildcache_dir BUILDCACHE_DIR: ${{ github.workspace }}/buildcache_dir
BUILDCACHE_ACCURACY: SLOPPY BUILDCACHE_ACCURACY: SLOPPY
@ -20,51 +20,56 @@ jobs:
fail-fast: false fail-fast: false
matrix: matrix:
config: config:
- { - {
name: "Windows Latest MSVC", name: "Windows Latest MSVC",
os: windows-latest, os: windows-latest,
cc: "cl", cxx: "cl", cc: "cl",
vcpkg-response-file: vcpkg_x64-windows.txt, cxx: "cl",
vcpkg-triplet: x64-windows, vcpkg-response-file: vcpkg_x64-windows.txt,
build-python-module: true, vcpkg-triplet: x64-windows,
execute-unit-tests: true build-python-module: true,
} execute-unit-tests: true,
- { }
name: "Ubuntu Latest gcc", - {
os: ubuntu-latest, name: "Ubuntu Latest gcc",
cc: "gcc", cxx: "g++", os: ubuntu-latest,
vcpkg-response-file: vcpkg_x64-linux.txt, cc: "gcc",
vcpkg-triplet: x64-linux, cxx: "g++",
build-python-module: true, vcpkg-response-file: vcpkg_x64-linux.txt,
execute-unit-tests: true vcpkg-triplet: x64-linux,
} build-python-module: true,
- { execute-unit-tests: true,
name: "Ubuntu Latest clang", }
os: ubuntu-latest, - {
cc: "clang", cxx: "clang++", name: "Ubuntu Latest clang",
vcpkg-response-file: vcpkg_x64-linux.txt, os: ubuntu-latest,
vcpkg-triplet: x64-linux, cc: "clang",
build-python-module: true, cxx: "clang++",
execute-unit-tests: true vcpkg-response-file: vcpkg_x64-linux.txt,
} vcpkg-triplet: x64-linux,
- { build-python-module: true,
name: "Mac OS", execute-unit-tests: true,
os: macos-latest, }
cc: "clang", cxx: "clang++", - {
vcpkg-response-file: vcpkg_x64-osx.txt, name: "Mac OS",
vcpkg-triplet: x64-osx, os: macos-latest,
build-python-module: false, cc: "clang",
execute-unit-tests: false cxx: "clang++",
} vcpkg-response-file: vcpkg_x64-osx.txt,
vcpkg-triplet: x64-osx,
build-python-module: false,
execute-unit-tests: false,
}
steps: steps:
- name: Checkout - name: Checkout
uses: actions/checkout@v2 uses: actions/checkout@v2
with: with:
submodules: true submodules: true
- name: Set up Python - name: Set up Python
uses: actions/setup-python@v2 uses: actions/setup-python@v2
with: with:
python-version: '3.8' python-version: "3.8"
- name: Display Python version - name: Display Python version
run: python -c "import sys; print(sys.version)" run: python -c "import sys; print(sys.version)"
@ -80,7 +85,7 @@ jobs:
shell: cmake -P {0} shell: cmake -P {0}
run: | run: |
if ("${{ runner.os }}" STREQUAL "Windows") if ("${{ runner.os }}" STREQUAL "Windows")
set(buildcache_suffix "win-msvc.zip") set(buildcache_suffix "windows.zip")
elseif ("${{ runner.os }}" STREQUAL "macOS") elseif ("${{ runner.os }}" STREQUAL "macOS")
set(buildcache_suffix "macos.zip") set(buildcache_suffix "macos.zip")
elseif ("${{ runner.os }}" STREQUAL "Linux") elseif ("${{ runner.os }}" STREQUAL "Linux")
@ -122,17 +127,19 @@ jobs:
uses: actions/cache@v2 uses: actions/cache@v2
with: with:
path: ${{ github.workspace }}/Qt/ path: ${{ github.workspace }}/Qt/
key: ${{ matrix.config.os }}-QtCache-v03 key: ${{ matrix.config.os }}-QtCache-5-12-12
- name: Install Qt - name: Install Qt
uses: jurplel/install-qt-action@v2 uses: jurplel/install-qt-action@v2
with: with:
version: 5.9.9 version: 5.12.12
modules: qtscript qtcharts modules: qtscript qtcharts
dir: '${{ github.workspace }}/Qt/' dir: "${{ github.workspace }}/Qt/"
cached: ${{ steps.cache-qt.outputs.cache-hit }} cached: ${{ steps.cache-qt.outputs.cache-hit }}
- name: Install Linux dependencies - name: Install Linux dependencies
if: "contains( matrix.config.os, 'ubuntu')" if: "contains( matrix.config.os, 'ubuntu')"
run: sudo apt-get install libxkbcommon-x11-0 libgl1-mesa-dev mesa-common-dev libglfw3-dev libglu1-mesa-dev libhdf5-dev run: sudo apt-get install libxkbcommon-x11-0 libgl1-mesa-dev mesa-common-dev libglfw3-dev libglu1-mesa-dev libhdf5-dev
- name: Get Python executable path - name: Get Python executable path
id: python-path id: python-path
run: echo "::set-output name=PYTHON_EXECUTABLE::$(python -c 'import sys; import pathlib; print (pathlib.PurePath(sys.executable).as_posix())')" run: echo "::set-output name=PYTHON_EXECUTABLE::$(python -c 'import sys; import pathlib; print (pathlib.PurePath(sys.executable).as_posix())')"
@ -147,9 +154,10 @@ jobs:
uses: lukka/run-vcpkg@v7 uses: lukka/run-vcpkg@v7
id: runvcpkg id: runvcpkg
with: with:
vcpkgArguments: '@${{ github.workspace }}/${{ matrix.config.vcpkg-response-file }}' vcpkgArguments: "@${{ github.workspace }}/${{ matrix.config.vcpkg-response-file }}"
vcpkgDirectory: '${{ github.workspace }}/ThirdParty/vcpkg' vcpkgDirectory:
# Ensure the cache key changes any time the content of the response file changes. "${{ github.workspace }}/ThirdParty/vcpkg"
# Ensure the cache key changes any time the content of the response file changes.
appendedCacheKey: ${{ hashFiles(env.VCPKGRESPONSEFILE) }}-cache-key-v2 appendedCacheKey: ${{ hashFiles(env.VCPKGRESPONSEFILE) }}-cache-key-v2
- name: Cache dynamic version of OpenSSL (Linux) - name: Cache dynamic version of OpenSSL (Linux)

View File

@ -4,7 +4,7 @@ on:
workflow_dispatch: workflow_dispatch:
schedule: schedule:
# Once every night # Once every night
- cron: '0 1 * * * ' - cron: "0 1 * * * "
env: env:
NINJA_VERSION: 1.9.0 NINJA_VERSION: 1.9.0
BUILD_TYPE: Release BUILD_TYPE: Release
@ -18,14 +18,15 @@ jobs:
fail-fast: false fail-fast: false
matrix: matrix:
config: config:
- { - {
name: "Ubuntu 20.04", name: "Ubuntu 20.04",
os: ubuntu-20.04, os: ubuntu-20.04,
cc: "gcc", cxx: "g++", cc: "gcc",
vcpkg-response-file: vcpkg_x64-linux.txt, cxx: "g++",
vcpkg-triplet: x64-linux, vcpkg-response-file: vcpkg_x64-linux.txt,
cmake-toolchain: 'ThirdParty/vcpkg/scripts/buildsystems/vcpkg.cmake' vcpkg-triplet: x64-linux,
} cmake-toolchain: "ThirdParty/vcpkg/scripts/buildsystems/vcpkg.cmake",
}
steps: steps:
- name: Checkout - name: Checkout
uses: actions/checkout@v2 uses: actions/checkout@v2
@ -34,7 +35,7 @@ jobs:
- name: Set up Python - name: Set up Python
uses: actions/setup-python@v2 uses: actions/setup-python@v2
with: with:
python-version: '3.8' python-version: "3.8"
- name: Display Python version - name: Display Python version
run: python -c "import sys; print(sys.version)" run: python -c "import sys; print(sys.version)"
- name: Download Ninja - name: Download Ninja
@ -86,13 +87,13 @@ jobs:
uses: actions/cache@v2 uses: actions/cache@v2
with: with:
path: ${{ github.workspace }}/Qt/ path: ${{ github.workspace }}/Qt/
key: ${{ matrix.config.os }}-QtCache-v03 key: ${{ matrix.config.os }}-QtCache-5-12-12
- name: Install Qt - name: Install Qt
uses: jurplel/install-qt-action@v2 uses: jurplel/install-qt-action@v2
with: with:
version: 5.9.9 version: 5.12.12
modules: qtscript qtcharts modules: qtscript qtcharts
dir: '${{ github.workspace }}/Qt/' dir: "${{ github.workspace }}/Qt/"
cached: ${{ steps.cache-qt.outputs.cache-hit }} cached: ${{ steps.cache-qt.outputs.cache-hit }}
- name: Install Linux dependencies - name: Install Linux dependencies
if: "contains( matrix.config.os, 'ubuntu')" if: "contains( matrix.config.os, 'ubuntu')"
@ -111,9 +112,10 @@ jobs:
uses: lukka/run-vcpkg@v5 uses: lukka/run-vcpkg@v5
id: runvcpkg id: runvcpkg
with: with:
vcpkgArguments: '@${{ github.workspace }}/${{ matrix.config.vcpkg-response-file }}' vcpkgArguments: "@${{ github.workspace }}/${{ matrix.config.vcpkg-response-file }}"
vcpkgDirectory: '${{ github.workspace }}/ThirdParty/vcpkg' vcpkgDirectory:
# Ensure the cache key changes any time the content of the response file changes. "${{ github.workspace }}/ThirdParty/vcpkg"
# Ensure the cache key changes any time the content of the response file changes.
appendedCacheKey: ${{ hashFiles(env.VCPKGRESPONSEFILE) }} appendedCacheKey: ${{ hashFiles(env.VCPKGRESPONSEFILE) }}
- name: Configure - name: Configure

View File

@ -4,93 +4,93 @@ on:
workflow_dispatch: workflow_dispatch:
schedule: schedule:
# Once every night # Once every night
- cron: '0 1 * * * ' - cron: "0 1 * * * "
jobs: jobs:
build_on_centos7: build_on_centos7:
runs-on: ubuntu-latest runs-on: ubuntu-latest
container: container:
image: centos:7 image: centos:7
steps: steps:
- name: Install Dependencies - name: Install Dependencies
run: | run: |
yum install -y centos-release-scl yum install -y centos-release-scl
yum-config-manager --enable rhel-server-rhscl-7-rpms yum-config-manager --enable rhel-server-rhscl-7-rpms
yum install -y https://repo.ius.io/ius-release-el7.rpm yum install -y https://repo.ius.io/ius-release-el7.rpm
yum install -y git222 yum install -y git222
yum install -y qt5-qtbase yum install -y qt5-qtbase
yum install -y qt5-qtbase-devel yum install -y qt5-qtbase-devel
yum install -y qt5-qtscript-devel yum install -y qt5-qtscript-devel
yum install -y qt5-qtsvg-devel yum install -y qt5-qtsvg-devel
yum install -y cmake3 yum install -y cmake3
yum install -y make yum install -y make
yum install -y mesa-libGL-devel yum install -y mesa-libGL-devel
yum install -y freeglut-devel yum install -y freeglut-devel
yum install -y devtoolset-10 yum install -y devtoolset-10
yum install -y rh-python36 yum install -y rh-python36
- name: Build QtCharts - name: Build QtCharts
run: | run: |
source /opt/rh/devtoolset-10/enable source /opt/rh/devtoolset-10/enable
git clone git://code.qt.io/qt/qtcharts.git git clone git://code.qt.io/qt/qtcharts.git
cd qtcharts/ cd qtcharts/
git checkout v5.9.7 git checkout v5.12.12
qmake-qt5 --version qmake-qt5 --version
qmake-qt5 -makefile qmake-qt5 -makefile
make -j 4 make -j 4
make install make install
- name: Checkout - name: Checkout
uses: actions/checkout@v2 uses: actions/checkout@v2
with: with:
submodules: true submodules: true
- name: Set up Python - name: Set up Python
id: python-path id: python-path
run: | run: |
source /opt/rh/rh-python36/enable source /opt/rh/rh-python36/enable
python -c "import sys; print(sys.version)" python -c "import sys; print(sys.version)"
echo "::set-output name=PYTHON_EXECUTABLE::$(python -c 'import sys; import pathlib; print (pathlib.PurePath(sys.executable).as_posix())')" echo "::set-output name=PYTHON_EXECUTABLE::$(python -c 'import sys; import pathlib; print (pathlib.PurePath(sys.executable).as_posix())')"
- name: Build ResInsight - name: Build ResInsight
run: | run: |
source /opt/rh/devtoolset-10/enable source /opt/rh/devtoolset-10/enable
source /opt/rh/rh-python36/enable source /opt/rh/rh-python36/enable
cmake3 --version cmake3 --version
git --version git --version
g++ --version g++ --version
${{ steps.python-path.outputs.PYTHON_EXECUTABLE }} --version ${{ steps.python-path.outputs.PYTHON_EXECUTABLE }} --version
${{ steps.python-path.outputs.PYTHON_EXECUTABLE }} -m pip install --upgrade pip ${{ steps.python-path.outputs.PYTHON_EXECUTABLE }} -m pip install --upgrade pip
${{ steps.python-path.outputs.PYTHON_EXECUTABLE }} -m pip install grpcio-tools ${{ steps.python-path.outputs.PYTHON_EXECUTABLE }} -m pip install grpcio-tools
ThirdParty/vcpkg/bootstrap-vcpkg.sh ThirdParty/vcpkg/bootstrap-vcpkg.sh
ThirdParty/vcpkg/vcpkg install grpc boost-filesystem boost-spirit eigen3 ThirdParty/vcpkg/vcpkg install grpc boost-filesystem boost-spirit eigen3
mkdir cmakebuild mkdir cmakebuild
cd cmakebuild cd cmakebuild
cmake3 \ cmake3 \
-DRESINSIGHT_QT5_BUNDLE_LIBRARIES=ON \ -DRESINSIGHT_QT5_BUNDLE_LIBRARIES=ON \
-DRESINSIGHT_ENABLE_GRPC=true \ -DRESINSIGHT_ENABLE_GRPC=true \
-DRESINSIGHT_ENABLE_UNITY_BUILD=true \ -DRESINSIGHT_ENABLE_UNITY_BUILD=true \
-DVCPKG_TARGET_TRIPLET=x64-linux \ -DVCPKG_TARGET_TRIPLET=x64-linux \
-DCMAKE_TOOLCHAIN_FILE=../ThirdParty/vcpkg/scripts/buildsystems/vcpkg.cmake \ -DCMAKE_TOOLCHAIN_FILE=../ThirdParty/vcpkg/scripts/buildsystems/vcpkg.cmake \
-DRESINSIGHT_GRPC_PYTHON_EXECUTABLE=${{ steps.python-path.outputs.PYTHON_EXECUTABLE }} \ -DRESINSIGHT_GRPC_PYTHON_EXECUTABLE=${{ steps.python-path.outputs.PYTHON_EXECUTABLE }} \
-DRESINSIGHT_GRPC_DOWNLOAD_PYTHON_MODULE=true \ -DRESINSIGHT_GRPC_DOWNLOAD_PYTHON_MODULE=true \
.. ..
make -j8 make -j8
make package make package
rm -rf packages/_CPack_Packages rm -rf packages/_CPack_Packages
# Show file structure # Show file structure
pwd pwd
ls ls
- name: Upload artifact - name: Upload artifact
uses: actions/upload-artifact@v2 uses: actions/upload-artifact@v2
with: with:
name: ResInsight name: ResInsight
path: ./cmakebuild/packages path: ./cmakebuild/packages