Compare commits

..

8 commits

Author SHA1 Message Date
Roman Telezhynskyi 1ff9a975d6 Fallback to conan 1.59. 2023-02-25 17:22:45 +02:00
Roman Telezhynskyi 16f732372b Default profile must always be defined. 2023-02-25 12:27:48 +02:00
Roman Telezhynskyi 079128630b Define profile when we build xerces-c on Windows. 2023-02-25 12:19:15 +02:00
Roman Telezhynskyi 6e03722250 Correct path to Qt. 2023-02-25 12:09:58 +02:00
Roman Telezhynskyi 3417b22f63 Define Path variable. 2023-02-25 11:59:12 +02:00
Roman Telezhynskyi aa85a0bde9 Fixing PowerShell script. 2023-02-25 11:16:11 +02:00
Roman Telezhynskyi a558a788ae Fixes. 2023-02-25 11:07:15 +02:00
Roman Telezhynskyi 03603ff7f5 Define custom conan profile. 2023-02-25 10:26:21 +02:00
4 changed files with 50 additions and 39 deletions

View file

@ -167,10 +167,10 @@ macos_task_template: &MACOS_TASK_TEMPLATE
- find /Applications -maxdepth 1 -type d -name 'Xcode*.app'
- sudo xcode-select -p
- brew update > /dev/null
- brew install --force qt6 coreutils ccache conan qbs cmake
- brew install --force qt6 coreutils ccache qbs cmake
- chmod -R 755 /opt/homebrew/opt/qt6/*
- python3 --version
- pip3 install --user --upgrade pip dropbox
- pip3 install --user --upgrade pip dropbox conan==1.59
- ccache --set-config=sloppiness=pch_defines,time_macros
- conan --version
- qmake --version
@ -178,7 +178,6 @@ macos_task_template: &MACOS_TASK_TEMPLATE
- qbs --version
build_script:
- pwd
- conan profile detect
- conan install . -s os=Macos -s os.version=${MACOS_DEPLOYMENT_TARGET} --build=xerces-c/3.2.4
- qbs setup-toolchains --detect
- qbs config --list profiles

View file

@ -44,7 +44,7 @@ environment:
- job_name: Windows_Qt_6_4_(GCC_x64)
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2019
COMPILER: mingw
QT: Qt\6.4.0\mingw_64
QT: Qt\6.4\mingw_64
QT_VERSION: Qt6_4
BUILD_SYSTEM: "qbs"
GCC_VERSION: 11.2
@ -82,7 +82,7 @@ environment:
- job_name: MacOS_12_Qt_6_4 (multibundle)
APPVEYOR_BUILD_WORKER_IMAGE: macos-monterey
COMPILER: clang
QT: $HOME/Qt/6.4.0/macos/bin
QT: $HOME/Qt/6.4/macos
QT_VERSION: Qt6_4
BUILD_SYSTEM: "qbs"
ARCH: x64
@ -96,7 +96,7 @@ environment:
- job_name: MacOS_12_Qt_6_4 (singlebundle)
APPVEYOR_BUILD_WORKER_IMAGE: macos-monterey
COMPILER: clang
QT: $HOME/Qt/6.4.0/macos/bin
QT: $HOME/Qt/6.4/macos
QT_VERSION: Qt6_4
BUILD_SYSTEM: "qbs"
ARCH: x64
@ -110,7 +110,7 @@ environment:
- job_name: MacOS_10_15_Qt_5_15 (qbs, multibundle)
APPVEYOR_BUILD_WORKER_IMAGE: macos-catalina
COMPILER: clang
QT: $HOME/Qt/5.15.2/clang_64/bin
QT: $HOME/Qt/5.15/clang_64
QT_VERSION: Qt5_15
BUILD_SYSTEM: "qbs"
ARCH: x64
@ -124,7 +124,7 @@ environment:
- job_name: MacOS_10_15_Qt_5_15 (qbs, singlebundle)
APPVEYOR_BUILD_WORKER_IMAGE: macos-catalina
COMPILER: clang
QT: $HOME/Qt/5.15.2/clang_64/bin
QT: $HOME/Qt/5.15/clang_64
QT_VERSION: Qt5_15
BUILD_SYSTEM: "qbs"
ARCH: x64
@ -150,7 +150,7 @@ environment:
- job_name: Windows_Qt_6_4_(MSVC_x64)
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2019
COMPILER: msvc
QT: Qt\6.4.0\msvc2019_64
QT: Qt\6.4\msvc2019_64
QT_VERSION: Qt6_4
BUILD_SYSTEM: "qbs"
MSVC_PATH: "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Community\\VC\\Tools\\MSVC\\14.29.30133\\bin\\Hostx64\\x64"
@ -162,7 +162,7 @@ environment:
- job_name: Windows_Qt_6_4_(MSVC_arm64)
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2019
COMPILER: msvc
QT: Qt\6.4.0\msvc2019_arm64
QT: Qt\6.4\msvc2019_arm64
QT_VERSION: Qt6_4
BUILD_SYSTEM: "qbs"
MSVC_PATH: "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Community\\VC\\Tools\\MSVC\\14.29.30133\\bin\\Hostx64\\arm64"
@ -222,7 +222,7 @@ environment:
- job_name: MacOS_10_15_Qt_5_15 (make)
APPVEYOR_BUILD_WORKER_IMAGE: macos-catalina
COMPILER: clang
QT: $HOME/Qt/5.15.2/clang_64/bin
QT: $HOME/Qt/5.15/clang_64
QT_VERSION: Qt5_15
BUILD_SYSTEM: "make"
ARCH: x64
@ -304,7 +304,7 @@ for:
# Path before
- path
- set QTDIR=C:\%QT%
- set PATH=%QTDIR%\bin;%QTDIR%\include;C:\Tools\PsTools;C:\Program Files\Git\cmd;C:\Program Files\Git\usr\bin;C:\Program Files\Git LFS;C:\Tools\GitVersion;C:\Windows\system32;C:\Windows;C:\Windows\System32\WindowsPowerShell\v1.0\
- set PATH=%QTDIR%\bin;%QTDIR%\include;C:\Qt\Tools\QtCreator\bin;C:\Tools\PsTools;C:\Program Files\Git\cmd;C:\Program Files\Git\usr\bin;C:\Program Files\Git LFS;C:\Tools\GitVersion;C:\Windows\system32;C:\Windows;C:\Windows\System32\WindowsPowerShell\v1.0\;%PYTHON%;%PYTHON%\Scripts
# Set VC variables for the platform
- ps: |
if ($env:COMPILER -eq "msvc") {
@ -322,8 +322,6 @@ for:
}
}
}
- set PATH=C:\Qt\Tools\QtCreator\bin;%PATH%
- set PATH=%PYTHON%;%PYTHON%\Scripts;%PATH%
# Path after
- path
# Check that we have the expected version for Python
@ -331,11 +329,11 @@ for:
# Install the build dependencies of the project.
- (python -m pip install --upgrade pip)
- if "%DEPLOY%" == "true" (python -m pip install dropbox)
- python -m pip install conan
- python -m pip install conan==1.59
# Trick qmake to not work through MSYS
- del /F "C:\Program Files\Git\usr\bin\sh.exe"
- del /F "C:\Program Files\Git\bin\sh.exe"
- qmake -v
- qmake.exe -v
- qbs --version
before_build:
@ -344,19 +342,24 @@ for:
- qbs-setup-qt %QTDIR%\bin\qmake.exe qt6
- qbs-config defaultProfile qt6
- dir "C:\Qt\Tools"
- conan config home
- type %HOMEPATH%\.conan2\settings.yml
- conan profile new valentina
- conan profile update settings.build_type=Release valentina
- conan profile update settings.os=Windows valentina
- ps: |
if ($env:ARCH -eq "x64") {
& conan profile update settings.arch=x86_64 valentina
} else {
& conan profile update settings.arch=x86 valentina
}
if ($env:COMPILER -eq "msvc")
{
& qbs-setup-toolchains.exe --type msvc $env:MSVC_PATH\cl.exe $env:COMPILER
& qbs-config.exe profiles.qt6.baseProfile $env:COMPILER
& conan profile update settings.compiler=msvc valentina
& conan profile update settings.compiler.cppstd=17 valentina
& conan profile update settings.compiler.version=192 valentina
& conan profile update settings.compiler.runtime=static valentina
& conan profile update settings.compiler.runtime=dynamic valentina
& conan profile update settings.compiler.runtime_type=Release valentina
& conan profile update settings.compiler.version=192 valentina
}
else
{
@ -367,18 +370,11 @@ for:
& conan profile update settings.compiler.libcxx=libstdc++11 valentina
& conan profile update settings.compiler.version=$env:GCC_VERSION valentina
}
if ($env:ARCH -eq "x64") {
& conan profile update settings.arch=x86_64 valentina
} else {
& conan profile update settings.arch=x86 valentina
}
- conan profile update settings.os=Windows valentina
- conan profile update settings.build_type=Release valentina
- qbs-config --list profiles
build_script:
- conan install . -s os=Windows --build=xerces-c/3.2.4
- qbs build -f valentina.qbs -d %APPVEYOR_BUILD_FOLDER%\build --command-echo-mode command-line config:release qbs.installRoot:%APPVEYOR_BUILD_FOLDER%\build\install-root\valentina profile:qt6 project.enableConan:true modules.buildconfig.enableCcache:false
- conan install . -s os=Windows --build=xerces-c/3.2.4 -pr valentina
- qbs build -f valentina.qbs -d %APPVEYOR_BUILD_FOLDER%\build --command-echo-mode command-line config:release qbs.installRoot:%APPVEYOR_BUILD_FOLDER%\build\install-root\valentina profile:qt6 project.enableConan:true modules.buildconfig.enableCcache:false project.conanProfiles:[valentina]
test_script:
- qbs -p autotest-runner -d %APPVEYOR_BUILD_FOLDER%\build profile:qt6 config:release
@ -491,19 +487,25 @@ for:
- job_name: MacOS_10_15_Qt_5_15 (qbs, singlebundle)
init:
- export QTDIR=$QT
- export PATH="$QTDIR/bin:$PATH"
- echo $PATH
- find /Applications -maxdepth 1 -type d -name 'Xcode*.app'
- sudo xcode-select -p
- sudo xcode-select -s /Applications/Xcode-$XCODE_VERSION.app
- sudo xcode-select -p
- brew update > /dev/null
- rm '/usr/local/bin/ccmake'
- rm '/usr/local/bin/cmake'
- rm '/usr/local/bin/cpack'
- rm '/usr/local/bin/ctest'
- brew install --force coreutils qbs cmake
- python3 --version
- |
if [[ "$ENABLE_CONAN" == "true" ]]; then
brew install --force conan;
pip3 install --user --upgrade conan==1.59;
conan --version
fi
- python3 --version
- pip3 install --user --upgrade pip dropbox
- clang --version
- qmake --version
@ -521,7 +523,7 @@ for:
fi
- qbs setup-toolchains --detect
- qbs config --list profiles
- qbs setup-qt ${QT}/qmake qt6
- qbs setup-qt ${QTDIR}/bin/qmake qt6
- qbs config defaultProfile qt6
- qbs config profiles.qt6.baseProfile clang
- qbs build -f valentina.qbs -d ${APPVEYOR_BUILD_FOLDER}/build --command-echo-mode command-line config:release modules.buildconfig.enableUnitTests:false modules.buildconfig.enableMultiBundle:${MULTI_BUNDLE} qbs.installRoot:${APPVEYOR_BUILD_FOLDER}/build/install-root profile:qt6 project.enableConan:true project.minimumMacosVersion:${MACOS_DEPLOYMENT_TARGET} modules.buildconfig.enableCcache:false
@ -535,13 +537,16 @@ for:
- job_name: MacOS_10_15_Qt_5_15 (make)
init:
- QTDIR=$QT
- PATH="$QTDIR/bin:$PATH"
- echo $PATH
- find /Applications -maxdepth 1 -type d -name 'Xcode*.app'
- sudo xcode-select -p
- sudo xcode-select -s /Applications/Xcode-$XCODE_VERSION.app
- sudo xcode-select -p
- clang --version
- ${QT}/qmake --version
- which ${QT}/qmake
- qmake --version
- which qmake
before_build:
- cd ${APPVEYOR_BUILD_FOLDER}
@ -550,7 +555,7 @@ for:
build_script:
- pwd
- ${QT}/qmake ../Valentina.pro -r CONFIG+=noDebugSymbols CONFIG+=checkWarnings CONFIG+=noTests CONFIG+=no_ccache
- qmake ../Valentina.pro -r CONFIG+=noDebugSymbols CONFIG+=checkWarnings CONFIG+=noTests CONFIG+=no_ccache
- make -j$(nproc)
#---------------------------------#

View file

@ -28,7 +28,6 @@
**
****************************************************************************/
import qbs
import qbs.Process
import qbs.File
import qbs.FileInfo
@ -41,10 +40,11 @@ Probe {
property path conanfilePath
property path packageReference
property path executable: "conan"
property stringList generators: []
property stringList generators: ["json"]
property var options
property var settings
property bool verbose: false
property stringList profiles: []
// Output
property var dependencies
@ -97,7 +97,8 @@ Probe {
});
}
args = args.concat(["-f", "json"]);
if (!generators.contains("json"))
generators.push("json");
for (var i = 0; i < generators.length; i++)
args = args.concat(["-g", generators[i]]);
@ -105,11 +106,15 @@ Probe {
for (var i = 0; i < additionalArguments.length; i++)
args.push(additionalArguments[i]);
for (var i = 0; i < profiles.length; i++) {
args = args.concat(["-pr", profiles[i]]);
}
generatedFilesPath = FileInfo.cleanPath(_projectBuildDirectory +
"/genconan/" +
Utilities.getHash(args.join()));
args = args.concat(["-of", generatedFilesPath]);
args = args.concat(["-if", generatedFilesPath]);
var p = new Process();
p.start(executable, args);
while (!p.waitForFinished(500)) {

View file

@ -6,6 +6,7 @@ Project {
property bool enableConan: false
property string minimumMacosVersion: undefined
property stringList conanProfiles: []
// Temporary probe until qbs doesn't support conan 2.0
ConanfileProbe {
@ -13,6 +14,7 @@ Project {
condition: enableConan
conanfilePath: project.sourceDirectory + "/conanfile.py"
verbose: true
profiles: conanProfiles
}
references: [