Files
aqtinstall/ci/steps.yml
Alexandre Poumaroux 5d699b9ebf Commercial fixes, CI tests, more tests, coverage (#883)
* Add authentication flags for list-qt-commercial, add tests for coverage

* Add dry run

* Make tests really use auth since secrets have been added, fix some indents

* Fix auth issue, rename user 'email, and password 'pw'

* Fix modules param type

* Update commands names
2025-02-22 09:56:56 +09:00

504 lines
21 KiB
YAML

env:
AQT_TEST_EMAIL: ${{ secrets.AQT_TEST_EMAIL }}
AQT_TEST_PASSWORD: ${{ secrets.AQT_TEST_PASSWORD }}
steps:
- task: UsePythonVersion@0
inputs:
versionSpec: $(PYTHON_VERSION)
architecture: 'x64'
- powershell: |
pip install -e .
displayName: install package
# Install linux dependencies
- bash: |
sudo apt-get update
sudo apt-get install -y libgl1-mesa-dev libxkbcommon-x11-0
if [[ "$(SUBCOMMAND)" == "install-tool" || "$(SUBCOMMAND)" == "install-qt-official" ]]; then
sudo apt-get install -y libxcb-{icccm4,image0,keysyms1,randr0,render-util0,shape0,sync1,xfixes0,xinerama0,xkb1}
fi
condition: and(eq(variables['TARGET'], 'desktop'), eq(variables['Agent.OS'], 'Linux'))
displayName: install test dependency for Linux
# Run Aqt
##----------------------------------------------------
## we insert sleep in random 1sec < duration < 60sec to reduce
## download server load.
- bash: |
set -ex
number=$RANDOM
let "number %= 60" || true
let "number += 1"
sleep $number
mkdir Qt
cd Qt
if [[ "$(SUBCOMMAND)" == "install-qt-official" ]]; then
opt+=" --email $(AQT_TEST_EMAIL) --pw $(AQT_TEST_PASSWORD)"
python -m aqt install-qt-official $opt $(TARGET) $(ARCH) $(QT_VERSION) --m $(MODULE)
fi
if [[ "$(SUBCOMMAND)" == "install-qt" ]]; then
opt=""
if [[ "$(QT_BASE_MIRROR)" != "" ]]; then
opt+=" -b $(QT_BASE_MIRROR)"
fi
if [[ "$(MODULE)" != "" ]]; then
opt+=" -m $(MODULE)"
fi
if [[ "$(OUTPUT_DIR)" != "" ]]; then
opt+=" --outputdir $(OUTPUT_DIR)"
sudo mkdir -p "$(OUTPUT_DIR)"
sudo chown $(whoami) "$(OUTPUT_DIR)"
fi
if [[ "$(SUBARCHIVES)" != "" ]]; then
opt+=" --archives $(SUBARCHIVES)"
fi
if [[ "$(IS_AUTODESKTOP)" == "True" ]]; then
opt+=" --autodesktop"
elif [[ "$(TARGET)" == "android" || "$(TARGET)" == "ios" ]]; then
if [[ "$(HOST)" == "windows" ]]; then
python -m aqt install-qt $(HOST) desktop $(QT_VERSION) mingw81_64 --archives qtbase
else
# qtdeclarative contains `qmlimportscanner`: necessary for ios builds, Qt6+
python -m aqt install-qt $(HOST) desktop $(QT_VERSION) --archives qtbase qtdeclarative
fi
fi
if [[ "$(SPEC)" == "" ]]; then
python -m aqt install-qt $(HOST) $(TARGET) $(QT_VERSION) $(ARCH) $opt
else
python -m aqt install-qt $(HOST) $(TARGET) "$(SPEC)" $(ARCH) $opt
fi
if [[ "$(OUTPUT_DIR)" != "" ]]; then
# Use 'strings' to read binary
echo "Verify patched value of qt_prfxpath"
[[ "$(strings $(QT_BINDIR)/qmake | grep qt_prfxpath | cut -d '=' -f 2)" == "$(OUTPUT_DIR)/$(QT_VERSION)/$(ARCHDIR)" ]]
echo "Verify patched value of qt_epfxpath"
[[ "$(strings $(QT_BINDIR)/qmake | grep qt_epfxpath | cut -d '=' -f 2)" == "$(OUTPUT_DIR)/$(QT_VERSION)/$(ARCHDIR)" ]]
echo "Verify patched value of qt_hpfxpath"
[[ "$(strings $(QT_BINDIR)/qmake | grep qt_hpfxpath | cut -d '=' -f 2)" == "$(OUTPUT_DIR)/$(QT_VERSION)/$(ARCHDIR)" ]]
# Use 'qmake -query' to check paths
echo "Hide qt.conf so it doesn't interfere with test"
mv $(QT_BINDIR)/qt.conf $(QT_BINDIR)/_qt.conf
#export PATH=$(QT_BINDIR):$PATH
echo "Require that qt_epfxpath was set to '$(OUTPUT_DIR)/$(QT_VERSION)/$(ARCHDIR)'"
[[ $($(QT_BINDIR)/qmake -query QT_INSTALL_PREFIX) == "$(OUTPUT_DIR)/$(QT_VERSION)/$(ARCHDIR)" ]]
echo "Require that qt_prfxpath was set to '$(OUTPUT_DIR)/$(QT_VERSION)/$(ARCHDIR)'"
[[ $($(QT_BINDIR)/qmake -query QT_INSTALL_PREFIX/dev) == "$(OUTPUT_DIR)/$(QT_VERSION)/$(ARCHDIR)" ]]
echo "Require that qt_hpfxpath was set to '$(OUTPUT_DIR)/$(QT_VERSION)/$(ARCHDIR)'"
[[ $($(QT_BINDIR)/qmake -query QT_HOST_PREFIX) == "$(OUTPUT_DIR)/$(QT_VERSION)/$(ARCHDIR)" ]]
fi
fi
if [[ "$(SUBCOMMAND)" == "list" ]]; then
aqt list-qt $(HOST) # print all targets for host
aqt list-tool $(HOST) $(TARGET) # print all tools for host/target
aqt list-tool $(HOST) $(TARGET) qt3dstudio_runtime_240 # print all tool variant names for qt3dstudio
aqt list-tool $(HOST) $(TARGET) qt3dstudio_runtime_240 --long # print tool variant names, versions, release dates
if [[ "$(TARGET)" == "desktop" ]]; then
aqt list-tool $(HOST) $(TARGET) tools_qtcreator # print all tool variant names for qtcreator
aqt list-tool $(HOST) $(TARGET) tools_qtcreator -l # print tool variant names, versions, release dates
fi
aqt list-qt $(HOST) $(TARGET) # print all versions of Qt
aqt list-qt $(HOST) $(TARGET) --spec "$(SPEC)" # print all versions of Qt in SimpleSpec
ver=$(aqt list-qt $(HOST) $(TARGET) --spec "$(SPEC)" --latest-version) # latest Qt in SimpleSpec
[ $ver == $(QT_VERSION) ] # latest version in SPEC must be QT_VERSION
aqt list-qt $(HOST) $(TARGET) --spec "$(SPEC)" --modules latest $(ARCH) # print modules for latest in SimpleSpec
aqt list-qt $(HOST) $(TARGET) --modules $(QT_VERSION) $(ARCH) # print modules for version/host/target/arch
aqt list-qt $(HOST) $(TARGET) --arch $(QT_VERSION) # print architectures for version/host/target
if [[ "$(TARGET)" == "desktop" ]]; then
if [[ "$(HAS_WASM)" == "True" ]]; then # fail if 'wasm_32' is not in the list
aqt list-qt $(HOST) $(TARGET) --arch $(QT_VERSION) | grep -w -q "wasm_32"
else # fail if 'wasm_32' is in the list
! aqt list-qt $(HOST) $(TARGET) --arch $(QT_VERSION) | grep -w -q "wasm_32"
fi
# Extra check for Qt 6.5.0 WASM:
for host in mac linux windows; do
export WASM_ARCHES=$(aqt list-qt $host desktop --arch 6.5.0)
echo $WASM_ARCHES | grep -w -q "wasm_singlethread" # fail if 'wasm_singlethread' is not in the list
echo $WASM_ARCHES | grep -w -q "wasm_multithread" # fail if 'wasm_multithread' is not in the list
done
fi
aqt list-qt $(HOST) $(TARGET) --spec "$(SPEC)" --arch latest
# list-src/doc/example
aqt list-src $(HOST) $(QT_VERSION) # print source archives available for host/desktop/version
aqt list-doc $(HOST) $(QT_VERSION) # print docs archives available for host/desktop/version
aqt list-doc $(HOST) $(QT_VERSION) --modules # print docs modules available for host/desktop/version
aqt list-example $(HOST) $(QT_VERSION) # print example archives available for host/desktop/version
aqt list-example $(HOST) $(QT_VERSION) --modules # print example modules available for host/desktop/version
fi
if [[ "$(SUBCOMMAND)" == "install-src" ]]; then
python -m aqt $(SUBCOMMAND) $(HOST) $(QT_VERSION) --archives $(SUBARCHIVES)
$(CHECK_OUTPUT_CMD)
fi
if [[ "$(SUBCOMMAND)" =~ ^install-(doc|example)$ ]]; then
opt=""
if [[ "$(MODULE)" != "" ]]; then
opt+=" -m $(MODULE)"
fi
python -m aqt $(SUBCOMMAND) $(HOST) $(QT_VERSION) --archives $(SUBARCHIVES) $opt
$(CHECK_OUTPUT_CMD)
fi
if [[ "$(SUBCOMMAND)" == "install-tool" ]]; then
opt=""
if [[ "$(OUTPUT_DIR)" != "" ]]; then
opt+=" --outputdir $(OUTPUT_DIR)"
sudo mkdir -p "$(OUTPUT_DIR)"
sudo chown $(whoami) "$(OUTPUT_DIR)"
fi
python -m aqt $(SUBCOMMAND) $(HOST) $(TARGET) $(TOOL1_ARGS) $opt
$(LIST_TOOL1_CMD)
echo "Testing $(TOOL1_ARGS) with '$(TEST_TOOL1_CMD)'"
$(TEST_TOOL1_CMD)
python -m aqt $(SUBCOMMAND) $(HOST) $(TARGET) $(TOOL2_ARGS) $opt
$(LIST_TOOL2_CMD)
echo "Testing $(TOOL2_ARGS) with '$(TEST_TOOL2_CMD)'"
$(TEST_TOOL2_CMD)
fi
workingDirectory: $(Build.BinariesDirectory)
env:
AQT_CONFIG: $(Build.SourcesDirectory)/ci/settings.ini
LOG_CFG: $(Build.SourcesDirectory)/ci/logging.ini
displayName: Run Aqt
##----------------------------------------------------
# for Android target
- bash: |
set -ex
if [[ "$(Agent.OS)" == "Linux" ]]; then
wget https://dl.google.com/android/repository/android-ndk-r21e-linux-x86_64.zip
unzip android-ndk-r21e-linux-x86_64.zip
fi
if [[ "$(Agent.OS)" == "Darwin" ]]; then
wget https://dl.google.com/android/repository/android-ndk-r21e-darwin-x86_64.zip
unzip android-ndk-r21e-darwin-x86_64.zip
fi
export ANDROID_NDK_ROOT=$(Build.SourcesDirectory)/android-ndk-r21e
mkdir $(Build.BinariesDirectory)/tests
(cd $(Build.BinariesDirectory)/tests; 7zr x $(Build.SourcesDirectory)/ci/accelbubble.7z)
export PATH=$(QT_BINDIR):$PATH
qmake $(Build.BinariesDirectory)/tests/accelbubble
make
condition: |
and(
eq(variables['TARGET'], 'android'),
or(
eq(variables['Agent.OS'], 'Linux'),
eq(variables['Agent.OS'], 'Darwin')
),
ne(variables['SUBCOMMAND'], 'list-qt'),
ne(variables['SUBCOMMAND'], 'install-tool')
)
displayName: Build accelbubble example application to test for android
##----------------------------------------------------
# for iOS target
- bash: |
set -ex
mkdir $(Build.BinariesDirectory)/tests
(cd $(Build.BinariesDirectory)/tests; 7zr x $(Build.SourcesDirectory)/ci/accelbubble.7z)
export PATH=$(QT_BINDIR):$PATH
qmake $(Build.BinariesDirectory)/tests/accelbubble
make
condition: |
and(eq(variables['TARGET'], 'ios'),
ne(variables['SUBCOMMAND'], 'list'),
ne(variables['SUBCOMMAND'], 'install-tool'))
displayName: Build accelbubble example application to test for ios
##----------------------------------------------------
# Cache Powershell Modules in $MODULES_FOLDER
- task: Cache@2
inputs:
key: '"pwsh modules" | "$(startYear)" | "$(startMonth)"'
path: $(MODULES_FOLDER)
cacheHitVar: PSModules_IsCached
condition: |
and(eq(variables['Agent.OS'], 'Windows_NT'),
eq(variables['SUBCOMMAND'], 'install-qt'))
displayName: Cache Powershell Modules
# On cache miss: Download Powershell Modules to $MODULES_FOLDER
- powershell: |
Install-PackageProvider NuGet -Force
Import-PackageProvider NuGet -Force
Set-PSRepository -Name PSGallery -InstallationPolicy Trusted
md -p $(MODULES_FOLDER) # mkdir
Save-Module -Name Pscx -AllowPrerelease -Path $(MODULES_FOLDER)
condition: |
and(eq(variables['Agent.OS'], 'Windows_NT'),
eq(variables['SUBCOMMAND'], 'install-qt'),
ne(variables.PSModules_IsCached, 'true'))
displayName: Download Powershell Modules for Windows on cache miss
##----------------------------------------------------
# determine Windows build system
- powershell: |
if ('$(ARCH)' -like '*msvc*') {
Write-Host '##vso[task.setvariable variable=TOOLCHAIN]MSVC'
}
if ('$(ARCH)' -like '*mingw*') {
Write-Host '##vso[task.setvariable variable=TOOLCHAIN]MINGW'
}
if ('$(ARCH)' -like 'win64_msvc*') {
Write-Host '##vso[task.setvariable variable=ARCHITECTURE]amd64'
} else {
Write-Host '##vso[task.setvariable variable=ARCHITECTURE]x86'
}
if ('$(ARCH)' -like '*msvc*') {
Write-Host '##vso[task.setvariable variable=VSVER]2022'
}
cd $(WIN_QT_BINDIR)
unzip $(Build.SourcesDirectory)\ci\jom_1_1_3.zip
condition: |
and(eq(variables['Agent.OS'], 'Windows_NT'),
eq(variables['SUBCOMMAND'], 'install-qt'))
displayName: Detect toolchain for Windows and update PATH
# When no modules
- script: |
set -ex
mkdir $(Build.BinariesDirectory)/tests
(cd $(Build.BinariesDirectory)/tests; 7zr x $(Build.SourcesDirectory)/ci/helloworld.7z)
export PATH=$(QT_BINDIR):$PATH
qmake $(Build.BinariesDirectory)/tests/helloworld
make
condition: |
and(
eq( variables['TARGET'], 'desktop' ),
not( startsWith( variables['ARCH'], 'wasm_' ) ),
or(
eq(variables['Agent.OS'], 'Linux'),
eq(variables['Agent.OS'], 'Darwin')
),
eq(variables['MODULE'], ''),
eq(variables['SUBCOMMAND'], 'install-qt')
)
displayName: Build test with qmake for Linux and macOS w/o extra module
# Update the MSVC build step to use the new compiler flags
- powershell: |
if ( $env:TOOLCHAIN -eq 'MSVC' ) {
# Load modules from cache
$Env:PSModulePath = '$(MODULES_FOLDER)', $Env:PSModulePath -join [System.IO.Path]::PathSeparator
Write-Host $Env:PSModulePath
Import-Module "Pscx"
Import-Module "VSSetup"
Import-VisualStudioVars -VisualStudioVersion $(VSVER) -Architecture $(ARCHITECTURE)
$env:Path += ";$(WIN_QT_BINDIR)"
mkdir $(Build.BinariesDirectory)\tests
cd $(Build.BinariesDirectory)\tests
7z x $(Build.SourcesDirectory)\ci\helloworld.7z
cd ..
qmake $(Build.BinariesDirectory)\tests\helloworld
jom
} elseif ( $env:TOOLCHAIN -eq 'MINGW' ) {
python -m aqt install-tool $(if (($QT_BASE_MIRROR + "") -ne "") { "-b $QT_BASE_MIRROR" } else {""}) `
--outputdir $(Build.BinariesDirectory)/Qt $(HOST) desktop $(MINGW_TOOL_NAME) qt.tools.$(MINGW_VARIANT)
if ($?) {
Write-Host 'Successfully installed tools_mingw'
} else {
throw 'Failed to install tools_mingw'
}
Set-Item -Path Env:Path -Value ("$(Build.BinariesDirectory)\Qt\Tools\$(MINGW_FOLDER)\bin;$(WIN_QT_BINDIR);" + $Env:Path)
Write-Host "Path == " + $env:Path
mkdir $(Build.BinariesDirectory)\tests
cd $(Build.BinariesDirectory)\tests
7z x $(Build.SourcesDirectory)\ci\helloworld.7z
cd ..
qmake $(Build.BinariesDirectory)\tests\helloworld
mingw32-make
}
condition: |
and(
eq(variables['Agent.OS'], 'Windows_NT'),
eq(variables['MODULE'], ''),
eq(variables['SUBCOMMAND'], 'install-qt')
)
displayName: build test with qmake w/o extra module
env:
AQT_CONFIG: $(Build.SourcesDirectory)/ci/settings.ini
LOG_CFG: $(Build.SourcesDirectory)/ci/logging.ini
# When --archives non-empty
- script: |
set -ex
rm -rf $(Build.BinariesDirectory)/tests
mkdir $(Build.BinariesDirectory)/tests
(cd $(Build.BinariesDirectory)/tests && 7zr x $(Build.SourcesDirectory)/ci/helloworld_qttools.7z)
export PATH=$(QT_BINDIR):$PATH
qmake -d $(Build.BinariesDirectory)/tests/helloworld_qttools
make
condition: |
and(
eq( variables['TARGET'], 'desktop' ),
not( startsWith( variables['ARCH'], 'wasm_' ) ),
or(
eq(variables['Agent.OS'], 'Linux'),
eq(variables['Agent.OS'], 'Darwin')
),
contains(variables['SUBARCHIVES'], 'qttools'),
eq(variables['SUBCOMMAND'], 'install-qt')
)
displayName: build test with qmake for Linux and macOS with specific Qt modules (QT += uitools)
- powershell: |
if ( $env:TOOLCHAIN -eq 'MSVC' ) {
# Load modules from cache
$Env:PSModulePath = '$(MODULES_FOLDER)', $Env:PSModulePath -join [System.IO.Path]::PathSeparator
Write-Host $Env:PSModulePath
Import-Module "Pscx"
Import-Module "VSSetup"
Import-VisualStudioVars -VisualStudioVersion $(VSVER) -Architecture $(ARCHITECTURE)
$env:Path += ";$(WIN_QT_BINDIR)"
try { rm -r -fo $(Build.BinariesDirectory)\tests } catch { $Error.Clear() }
mkdir $(Build.BinariesDirectory)\tests
cd $(Build.BinariesDirectory)\tests
7z x $(Build.SourcesDirectory)\ci\helloworld_qttools.7z
qmake -d $(Build.BinariesDirectory)\tests\helloworld_qttools
nmake
} elseif ( $env:TOOLCHAIN -eq 'MINGW' ) {
Set-Item -Path Env:Path -Value ("$(Build.BinariesDirectory)\Qt\Tools\$(MINGW_FOLDER)\bin;$(WIN_QT_BINDIR);" + $Env:Path)
Write-Host "Path == " + $env:Path
if (![bool] (Get-Command -ErrorAction Ignore -Type Application mingw32-make)) {
python -m aqt install-tool $(if (($QT_BASE_MIRROR + "") -ne "") { "-b $QT_BASE_MIRROR" } else {""}) `
--outputdir $(Build.BinariesDirectory)/Qt $(HOST) desktop $(MINGW_TOOL_NAME) qt.tools.$(MINGW_VARIANT)
if ($?) {
Write-Host 'Successfully installed tools_mingw'
} else {
throw 'Failed to install tools_mingw'
}
}
try { rm -r -fo $(Build.BinariesDirectory)\tests } catch { $Error.Clear() }
mkdir $(Build.BinariesDirectory)\tests
cd $(Build.BinariesDirectory)\tests
7z x $(Build.SourcesDirectory)\ci\helloworld_qttools.7z
qmake -d $(Build.BinariesDirectory)\tests\helloworld_qttools
mingw32-make
}
condition: |
and(
eq( variables['Agent.OS'], 'Windows_NT'),
contains(variables['SUBARCHIVES'], 'qttools'),
eq(variables['SUBCOMMAND'], 'install-qt')
)
displayName: build test with qmake with specific Qt modules (QT += uitools)
env:
AQT_CONFIG: $(Build.SourcesDirectory)/ci/settings.ini
LOG_CFG: $(Build.SourcesDirectory)/ci/logging.ini
- powershell: |
# Load modules from cache
$Env:PSModulePath = '$(MODULES_FOLDER)', $Env:PSModulePath -join [System.IO.Path]::PathSeparator
Write-Host $Env:PSModulePath
Import-Module "Pscx"
Import-Module "VSSetup"
Import-VisualStudioVars -VisualStudioVersion $(VSVER) -Architecture $(ARCHITECTURE)
$env:Path += ";$(WIN_QT_BINDIR)"
echo Add Qt to PATH: $env:PATH
mkdir $(Build.BinariesDirectory)/tests
cd $(Build.BinariesDirectory)/tests
7z x $(Build.SourcesDirectory)/ci/redditclient.7z
cd ..
qmake $(Build.BinariesDirectory)\tests\redditclient
nmake
condition: |
and(
eq(variables['Agent.OS'], 'Windows_NT'),
eq(variables['TOOLCHAIN'], 'MSVC'),
ne(variables['MODULE'], ''),
ne(variables['VSVER'], '2022')
)
displayName: build test with qmake with MSVC with extra module
- bash: |
set -ex
mkdir $(Build.BinariesDirectory)/tests
(cd $(Build.BinariesDirectory)/tests; 7zr x $(Build.SourcesDirectory)/ci/redditclient.7z)
if [[ "6" -eq "${QT_VERSION:0:1}" ]]; then
(cd $(Build.BinariesDirectory)/tests/redditclient;patch -i redditclient_6.diff -p1)
fi
export PATH=$(QT_BINDIR):$PATH
qmake $(Build.BinariesDirectory)/tests/redditclient
make
condition: |
and(
eq( variables['TARGET'], 'desktop'),
or(
eq(variables['Agent.OS'], 'Linux'),
eq(variables['Agent.OS'], 'Darwin')
),
ne(variables['MODULE'], ''),
eq(variables['SUBCOMMAND'], 'install-qt')
)
displayName: Build test with qmake for Linux and macOS with extra module
##----------------------------------------------------
# wasm_32/single/multithread on linux and mac
- script: |
set -uex
git clone --depth=1 --branch=$(EMSDK_TAG) https://github.com/emscripten-core/emsdk.git
cd emsdk
./emsdk install $(EMSDK_VERSION)
./emsdk activate --embedded $(EMSDK_VERSION)
source $(Build.BinariesDirectory)/emsdk/emsdk_env.sh
mkdir $(Build.BinariesDirectory)/tests
if [[ $(QT_VERSION) = 6* ]]; then
OPENGLWINDOW_7Z="openglwindow_qt6.7z"
else
OPENGLWINDOW_7Z="openglwindow.7z"
fi
(cd $(Build.BinariesDirectory)/tests; 7zr x $(Build.SourcesDirectory)/ci/$OPENGLWINDOW_7Z)
export PATH=$(QT_BINDIR):$PATH
qmake $(Build.BinariesDirectory)/tests/openglwindow
make
workingDirectory: $(Build.BinariesDirectory)
condition: |
and(
startsWith( variables['ARCH'], 'wasm_' ),
or(
eq(variables['Agent.OS'], 'Linux'),
eq(variables['Agent.OS'], 'Darwin')
)
)
displayName: 'Build WebAssembler sample project on mac/linux'
# wasm_32/single/multithread on Windows cmd.exe
- powershell: |
git clone --depth=1 --branch=$(EMSDK_TAG) https://github.com/emscripten-core/emsdk.git
cd emsdk
.\emsdk install $(EMSDK_VERSION)
.\emsdk activate --embedded $(EMSDK_VERSION)
.\emsdk_env.bat
mkdir $(Build.BinariesDirectory)\tests
cd $(Build.BinariesDirectory)\tests
$env:Path += ";$(WIN_QT_BINDIR)"
echo "Add Qt/qmake to PATH at $(WIN_QT_BINDIR):"
echo "$env:Path"
if ('$(QT_VERSION)' -like '6*') {
7z x $(Build.SourcesDirectory)\ci\openglwindow_qt6.7z
echo "Inlined qmake.bat command is: $(WIN_AUTODESK_QT_BINDIR)\qmake -qtconf $(WIN_QT_BINDIR)\target_qt.conf $(Build.BinariesDirectory)\tests\openglwindow"
$(WIN_AUTODESK_QT_BINDIR)\qmake.exe -qtconf "$(WIN_QT_BINDIR)\target_qt.conf" $(Build.BinariesDirectory)\tests\openglwindow
} else {
7z x $(Build.SourcesDirectory)\ci\openglwindow.7z
echo "Qt5: run qmake.exe"
qmake $(Build.BinariesDirectory)\tests\openglwindow
}
if ($false -eq $?) {
Write-Error "qmake failed."
Write-Host "##vso[task.logissue type=error]qmake failed."
exit(1)
}
make
if ($false -eq $?) {
Write-Error "make failed."
Write-Host "##vso[task.logissue type=error]nmake failed."
exit(1)
}
workingDirectory: $(Build.BinariesDirectory)
condition: |
and(
startsWith( variables['ARCH'], 'wasm_' ),
eq( variables['Agent.OS'], 'Windows_NT' )
)
displayName: 'Build WebAssembler sample project on windows'