mirror of
http://code.qt.io/yocto/meta-qt6.git
synced 2026-01-04 16:10:12 +00:00
With newer yocto old qface recipe using our internal repo suddenly preferred pypi own repository for qface. So use external version of qface instead and try to get that added to meta-python also. Fixes: QTBUG-96727 Change-Id: Ia6fae613f6d8ced531dad2bda4f1abc18cbf7eba Reviewed-by: Samuli Piippo <samuli.piippo@qt.io>
159 lines
4.8 KiB
YAML
159 lines
4.8 KiB
YAML
version: 2
|
|
accept_configuration:
|
|
condition: and
|
|
conditions:
|
|
- condition: property
|
|
property: host.compiler
|
|
equals_value: Yocto
|
|
- condition: property
|
|
property: target.arch
|
|
in_values: [TARGET1, TARGET2, TARGET3, TARGET4]
|
|
|
|
machine_type:
|
|
Build:
|
|
cores: 16
|
|
|
|
# Target build matrix:
|
|
#
|
|
# [target1] [target2] [target3] [target4]
|
|
# [machine] qemuarm64 qemux86 qemuarm qemux86-64
|
|
# [yocto] master master master master
|
|
# [X11] no no yes yes
|
|
# [mingw] no yes no no
|
|
#
|
|
|
|
target1: &target1
|
|
type: Group
|
|
instructions:
|
|
- type: EnvironmentVariable
|
|
variableName: MACHINE
|
|
variableValue: qemuarm64
|
|
- type: EnvironmentVariable
|
|
variableName: YOCTO_BRANCH
|
|
variableValue: master
|
|
- type: EnvironmentVariable
|
|
variableName: DISABLE_X11
|
|
variableValue: true
|
|
enable_if:
|
|
condition: property
|
|
property: target.arch
|
|
equals_value: TARGET1
|
|
target2: &target2
|
|
type: Group
|
|
instructions:
|
|
- type: EnvironmentVariable
|
|
variableName: MACHINE
|
|
variableValue: qemux86
|
|
- type: EnvironmentVariable
|
|
variableName: YOCTO_BRANCH
|
|
variableValue: master
|
|
- type: EnvironmentVariable
|
|
variableName: DISABLE_X11
|
|
variableValue: true
|
|
- type: EnvironmentVariable
|
|
variableName: MINGW
|
|
variableValue: true
|
|
enable_if:
|
|
condition: property
|
|
property: target.arch
|
|
equals_value: TARGET2
|
|
target3: &target3
|
|
type: Group
|
|
instructions:
|
|
- type: EnvironmentVariable
|
|
variableName: MACHINE
|
|
variableValue: qemuarm
|
|
- type: EnvironmentVariable
|
|
variableName: YOCTO_BRANCH
|
|
variableValue: master
|
|
enable_if:
|
|
condition: property
|
|
property: target.arch
|
|
equals_value: TARGET3
|
|
target4: &target4
|
|
type: Group
|
|
instructions:
|
|
- type: EnvironmentVariable
|
|
variableName: MACHINE
|
|
variableValue: qemux86-64
|
|
- type: EnvironmentVariable
|
|
variableName: YOCTO_BRANCH
|
|
variableValue: master
|
|
enable_if:
|
|
condition: property
|
|
property: target.arch
|
|
equals_value: TARGET4
|
|
|
|
instructions:
|
|
Build:
|
|
- *target1
|
|
- *target2
|
|
- *target3
|
|
- *target4
|
|
- type: EnvironmentVariable
|
|
variableName: DL_DIR
|
|
variableValue: "/mnt/yocto-cache/downloads"
|
|
- type: EnvironmentVariable
|
|
variableName: SOURCE_DIR
|
|
variableValue: "{{.SourceDir}}"
|
|
- type: SetBuildDirectory
|
|
directory: "{{.AgentWorkingDir}}/build"
|
|
- type: MakeDirectory
|
|
directory: "{{.BuildDir}}"
|
|
- type: ChangeDirectory
|
|
directory: "{{.BuildDir}}"
|
|
- type: WriteFile
|
|
fileContents: |
|
|
#!/bin/bash -xe
|
|
sudo apt install zstd
|
|
|
|
# make hostname unique for NFS
|
|
sudo hostname $(hostname -s)-$(date +%s%N)
|
|
|
|
sudo mkdir -p /mnt/yocto-cache
|
|
sudo mount yocto-cache.intra.qt.io:/srv/yocto-cache /mnt/yocto-cache
|
|
|
|
git clone git://git.yoctoproject.org/poky --reference /mnt/yocto-cache/mirror/poky.git
|
|
(cd poky; git checkout ${YOCTO_BRANCH})
|
|
git clone git://github.com/openembedded/meta-openembedded --reference /mnt/yocto-cache/mirror/meta-openembedded.git
|
|
(cd meta-openembedded; git checkout ${YOCTO_BRANCH})
|
|
git clone git://git.yoctoproject.org/meta-mingw --reference /mnt/yocto-cache/mirror/meta-mingw.git
|
|
(cd meta-mingw; git checkout ${YOCTO_BRANCH})
|
|
|
|
source ./poky/oe-init-build-env
|
|
export BB_ENV_EXTRAWHITE="$BB_ENV_EXTRAWHITE SSTATE_DIR DL_DIR"
|
|
export DL_DIR=/mnt/yocto-cache/downloads
|
|
export BB_GENERATE_MIRROR_TARBALLS=1
|
|
export BB_NUMBER_THREADS=8
|
|
DISTRO_CODENAME=$(sed -n -e "s/DISTRO_CODENAME.*\"\(.*\)\"/\1/p" ../poky/meta-*/conf/distro/poky.conf)
|
|
export SSTATE_DIR=/mnt/yocto-cache/sstate-caches/${DISTRO_CODENAME}-meta-qt6
|
|
bitbake-layers add-layer ../meta-openembedded/meta-oe
|
|
bitbake-layers add-layer ../meta-openembedded/meta-python
|
|
bitbake-layers add-layer ../meta-mingw
|
|
bitbake-layers add-layer ${SOURCE_DIR}
|
|
|
|
if [ -n "${DISABLE_X11}" ] ; then
|
|
echo "DISTRO_FEATURES:remove = \"x11\"" >> conf/local.conf
|
|
fi
|
|
if [ -n "${MINGW}" ]; then
|
|
export SDKMACHINE=x86_64-mingw32
|
|
fi
|
|
|
|
echo "require ${SOURCE_DIR}/coin/test-configs.inc" >> conf/local.conf
|
|
echo "include ${SOURCE_DIR}/coin/test-${DISTRO_CODENAME}.inc" >> conf/local.conf
|
|
|
|
# build toolchain which should include all supported recipes
|
|
bitbake meta-toolchain-qt6
|
|
filename: "{{.BuildDir}}/start-build"
|
|
fileMode: 420
|
|
- type: ExecuteCommand
|
|
command: ["bash", "-xe", "{{.BuildDir}}/start-build"]
|
|
maxTimeInSeconds: 43200
|
|
maxTimeBetweenOutput: 7200
|
|
userMessageOnFailure: "Build failed."
|
|
- type: ExecuteCommand
|
|
command: ["sudo", "umount", "/mnt/yocto-cache"]
|
|
userMessageOnFailure: "Unmounting cache failed."
|
|
|
|
Test: []
|