diff options
Diffstat (limited to 'coin')
-rw-r--r-- | coin/module_config.yaml | 74 | ||||
-rw-r--r-- | coin/test-ci.inc | 4 | ||||
-rw-r--r-- | coin/test-configs.inc | 21 |
3 files changed, 55 insertions, 44 deletions
diff --git a/coin/module_config.yaml b/coin/module_config.yaml index 17778c70..8ae9c795 100644 --- a/coin/module_config.yaml +++ b/coin/module_config.yaml @@ -15,9 +15,9 @@ machine_type: # Target build matrix: # -# [target1] [target2] [target3] [target4] -# [machine] qemuarm64 qemux86 qemuarm qemux86-64 -# [yocto] gatesgarth dunfell hardknott honister +# [target1] [target2] [target3] [target4] +# [machine] qemuarm64 qemux86 qemuarm qemux86-64 +# [yocto] kirkstone dunfell langdale master # target1: &target1 @@ -27,8 +27,11 @@ target1: &target1 variableName: MACHINE variableValue: qemuarm64 - type: EnvironmentVariable - variableName: YOCTO_BRANCH - variableValue: gatesgarth + variableName: MANIFEST + variableValue: kirkstone.xml + - type: EnvironmentVariable + variableName: TEST_CONFIGS + variableValue: ci configs enable_if: condition: property property: target.arch @@ -40,8 +43,11 @@ target2: &target2 variableName: MACHINE variableValue: qemux86 - type: EnvironmentVariable - variableName: YOCTO_BRANCH - variableValue: dunfell + variableName: MANIFEST + variableValue: dunfell.xml + - type: EnvironmentVariable + variableName: TEST_CONFIGS + variableValue: ci configs enable_if: condition: property property: target.arch @@ -53,8 +59,11 @@ target3: &target3 variableName: MACHINE variableValue: qemuarm - type: EnvironmentVariable - variableName: YOCTO_BRANCH - variableValue: hardknott + variableName: MANIFEST + variableValue: langdale.xml + - type: EnvironmentVariable + variableName: TEST_CONFIGS + variableValue: ci configs enable_if: condition: property property: target.arch @@ -66,8 +75,11 @@ target4: &target4 variableName: MACHINE variableValue: qemux86-64 - type: EnvironmentVariable - variableName: YOCTO_BRANCH - variableValue: honister + variableName: MANIFEST + variableValue: master.xml + - type: EnvironmentVariable + variableName: TEST_CONFIGS + variableValue: ci configs enable_if: condition: property property: target.arch @@ -99,31 +111,37 @@ instructions: 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 + sudo mount yocto-cache.ci.qt.io:/srv/yocto-cache /mnt/yocto-cache + + curl https://storage.googleapis.com/git-repo-downloads/repo > repo + chmod +x repo - 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.openembedded.org/meta-python2 --reference /mnt/yocto-cache/mirror/meta-python2.git - (cd meta-python2; git checkout ${YOCTO_BRANCH}) + ./repo init \ + --repo-url https://github.com/theqtcompany/git-repo \ + -u git://code.qt.io/yocto/boot2qt-manifest \ + -b ci \ + -m ${MANIFEST} \ + --reference /mnt/mirror + ./repo sync 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 SSTATE_DIR=/mnt/yocto-cache/sstate-caches/$(sed -n -e "s/DISTRO_CODENAME.*\"\(.*\)\"/\1/p" ../poky/meta-*/conf/distro/poky.conf)-meta-qt5 + + # meta-python2 layer master branch compatible with kirkstone only + echo "LAYERSERIES_COMPAT_meta-python2:append = \" langdale mickledore nanbield scarthgap\"" >> ../meta-python2/conf/layer.conf + bitbake-layers add-layer ../meta-openembedded/meta-oe bitbake-layers add-layer ../meta-python2 bitbake-layers add-layer ${SOURCE_DIR} - echo "require ${SOURCE_DIR}/coin/test-configs.inc" >> conf/local.conf - # EXCLUDE_FROM_WORLD + for conf in ${TEST_CONFIGS}; do + echo "require ${SOURCE_DIR}/coin/test-${conf}.inc" >> conf/local.conf + done + + # EXCLUDE FROM WORLD rm -fv ${SOURCE_DIR}/recipes-qt/examples/qt5-opengles2-test_git.bb - rm -rv ${SOURCE_DIR}/recipes-python/pyqt5/python3-pyqt5_*.bb - rm -rv ${SOURCE_DIR}/recipes-python/pyqtchart/python3-pyqtchart_*.bb - # build all recipes found in the layer - bitbake $(find ${SOURCE_DIR} -name *.bb | xargs -n1 basename | sed -e 's/\([^._]*\).*/\1/') + + # build only recipes found under recipes-qt + bitbake $(find ${SOURCE_DIR}/recipes-qt -name *.bb | xargs -n1 basename | sed -e 's/\([^._]*\).*/\1/') filename: "{{.BuildDir}}/start-build" fileMode: 420 - type: ExecuteCommand diff --git a/coin/test-ci.inc b/coin/test-ci.inc new file mode 100644 index 00000000..8a1df2ad --- /dev/null +++ b/coin/test-ci.inc @@ -0,0 +1,4 @@ +SSTATE_DIR = "/mnt/yocto-cache/sstate-caches/${DISTRO_CODENAME}-meta-qt5" +DL_DIR = "/mnt/yocto-cache/downloads" +BB_GENERATE_MIRROR_TARBALLS = "1" + diff --git a/coin/test-configs.inc b/coin/test-configs.inc index f983cc00..7b904a1f 100644 --- a/coin/test-configs.inc +++ b/coin/test-configs.inc @@ -1,20 +1,15 @@ # https://github.com/shr-project/jenkins-jobs/blob/master/jenkins-job.sh -INHERIT += "reproducible_build_simple" # need space for dunfell build INHERIT += "rm_work" # We want musl and glibc to share the same tmpfs, so instead of appending default "-${TCLIBC}" we append "fs" TCLIBCAPPEND = "fs" -PREFERRED_PROVIDER_udev = "systemd" PREFERRED_PROVIDER_virtual/fftw = "fftw" # use gold -DISTRO_FEATURES:append = " ld-is-gold" +#DISTRO_FEATURES:append = " ld-is-gold" # use ptest DISTRO_FEATURES:append = " ptest" # use systemd -DISTRO_FEATURES:append = " systemd" -DISTRO_FEATURES_BACKFILL_CONSIDERED = "sysvinit" -VIRTUAL-RUNTIME_init_manager = "systemd" -VIRTUAL-RUNTIME_initscripts = "" +INIT_MANAGER:forcevariable = "systemd" # use opengl DISTRO_FEATURES:append = " opengl" # use wayland to fix building weston and qtwayland @@ -51,15 +46,6 @@ PACKAGECONFIG:append:pn-qtbase = " icu gl accessibility freetype fontconfig" PACKAGECONFIG:remove:pn-qtwayland = "xcomposite-egl xcomposite-glx" # for webkit-efl PACKAGECONFIG:append:pn-harfbuzz = " icu" -inherit blacklist -# PNBLACKLIST[samsung-rfs-mgr] = "needs newer libsamsung-ipc with negative D_P: Requested 'samsung-ipc-1.0 >= 0.2' but version of libsamsung-ipc is 0.1.0" -PNBLACKLIST[android-system] = "depends on lxc from meta-virtualiazation which isn't included in my world builds" -PNBLACKLIST[bigbuckbunny-1080p] = "big and doesn't really need to be tested so much" -PNBLACKLIST[bigbuckbunny-480p] = "big and doesn't really need to be tested so much" -PNBLACKLIST[bigbuckbunny-720p] = "big and doesn't really need to be tested so much" -PNBLACKLIST[bigbuckbunny-720p] = "big and doesn't really need to be tested so much" -PNBLACKLIST[tearsofsteel-1080p] = "big and doesn't really need to be tested so much" -PNBLACKLIST[build-appliance-image] = "tries to include whole downloads directory in /home/builder/poky :/" # enable reporting # needs http://patchwork.openembedded.org/patch/68735/ #ERR_REPORT_SERVER = "errors.yoctoproject.org" @@ -73,6 +59,9 @@ INHERIT += "buildstats buildstats-summary" # be more strict with QA warnings, turn them all to errors: ERROR_QA:append = " ldflags useless-rpaths rpaths staticdev libdir xorg-driver-abi textrel already-stripped incompatible-license files-invalid installed-vs-shipped compile-host-path install-host-path pn-overrides infodir build-deps unknown-configure-option symlink-to-sysroot multilib invalid-packageconfig host-user-contaminated uppercase-pn" WARN_QA:remove = " ldflags useless-rpaths rpaths staticdev libdir xorg-driver-abi textrel already-stripped incompatible-license files-invalid installed-vs-shipped compile-host-path install-host-path pn-overrides infodir build-deps unknown-configure-option symlink-to-sysroot multilib invalid-packageconfig host-user-contaminated uppercase-pn" +# workaround for qemu +# nativesdk-qemu-user-mips rdepends on nativesdk-bash, but it isn't a build dependency +INSANE_SKIP:nativesdk-qemu-user-mips = "build-deps" # enable thumb for broader test coverage (oe-core autobuilder doesn't have thumb enabled) PREFERRED_ARM_INSTRUCTION_SET ?= "thumb" ARM_INSTRUCTION_SET = "${PREFERRED_ARM_INSTRUCTION_SET}" |