19c0fe7f6SEd Maste 2cec2682cSEd Mastecompute_engine_instance: 3407abff2SEd Maste # Image list available via 4407abff2SEd Maste # gcloud compute images list --project freebsd-org-cloud-dev --no-standard-images 5cec2682cSEd Maste platform: freebsd 6cec2682cSEd Maste image_project: freebsd-org-cloud-dev 75e2ba9cbSQWERTIOX image: freebsd-13-2-release-amd64 89c0fe7f6SEd Maste cpu: 8 9bbf70270SEd Maste memory: 8G 10cec2682cSEd Maste disk: 40 119c0fe7f6SEd Maste 1275baf376SEd Masteenv: 1375baf376SEd Maste PKG_FORMAT: tar 1475baf376SEd Maste 159c0fe7f6SEd Mastetask: 168cba2003SEd Maste matrix: 1751c6bf04SEd Maste - name: amd64-llvm16 World and kernel build and boot smoke test 18171f1c1bSEd Maste only_if: $CIRRUS_REPO_FULL_NAME != 'freebsd/freebsd-src' 19171f1c1bSEd Maste trigger_type: manual 208cba2003SEd Maste env: 218cba2003SEd Maste TARGET: amd64 228cba2003SEd Maste TARGET_ARCH: amd64 23df042dcfSEd Maste TOOLCHAIN: llvm16 24df042dcfSEd Maste TOOLCHAIN_PKG: ${TOOLCHAIN}-lite 2551c6bf04SEd Maste - name: amd64-llvm17 World and kernel build and boot smoke test 26*e8b7c78cSEd Maste only_if: $CIRRUS_REPO_FULL_NAME != 'freebsd/freebsd-src' 27*e8b7c78cSEd Maste trigger_type: manual 288cba2003SEd Maste env: 2951c6bf04SEd Maste TARGET: amd64 3051c6bf04SEd Maste TARGET_ARCH: amd64 3151c6bf04SEd Maste TOOLCHAIN: llvm17 3251c6bf04SEd Maste TOOLCHAIN_PKG: ${TOOLCHAIN}-lite 3324235654SEd Maste - name: amd64-llvm18 World and kernel build and boot smoke test 34*e8b7c78cSEd Maste only_if: $CIRRUS_REPO_FULL_NAME != 'freebsd/freebsd-src' || $CIRRUS_BRANCH =~ 'pull/.*' 3524235654SEd Maste env: 3624235654SEd Maste TARGET: amd64 3724235654SEd Maste TARGET_ARCH: amd64 3824235654SEd Maste TOOLCHAIN: llvm18 3924235654SEd Maste TOOLCHAIN_PKG: ${TOOLCHAIN}-lite 40df042dcfSEd Maste - name: arm64-llvm16 World and kernel build and boot smoke test 41df042dcfSEd Maste only_if: $CIRRUS_REPO_FULL_NAME != 'freebsd/freebsd-src' 42df042dcfSEd Maste trigger_type: manual 43df042dcfSEd Maste env: 44df042dcfSEd Maste TARGET: arm64 45df042dcfSEd Maste TARGET_ARCH: aarch64 46df042dcfSEd Maste TOOLCHAIN: llvm16 47df042dcfSEd Maste TOOLCHAIN_PKG: ${TOOLCHAIN} 4851c6bf04SEd Maste - name: arm64-llvm17 World and kernel build and boot smoke test 4951c6bf04SEd Maste only_if: $CIRRUS_REPO_FULL_NAME != 'freebsd/freebsd-src' 5051c6bf04SEd Maste trigger_type: manual 5151c6bf04SEd Maste env: 5251c6bf04SEd Maste TARGET: arm64 5351c6bf04SEd Maste TARGET_ARCH: aarch64 5451c6bf04SEd Maste TOOLCHAIN: llvm17 5551c6bf04SEd Maste TOOLCHAIN_PKG: ${TOOLCHAIN} 5624235654SEd Maste - name: arm64-llvm18 World and kernel build and boot smoke test 5724235654SEd Maste only_if: $CIRRUS_REPO_FULL_NAME != 'freebsd/freebsd-src' 5824235654SEd Maste trigger_type: manual 5924235654SEd Maste env: 6024235654SEd Maste TARGET: arm64 6124235654SEd Maste TARGET_ARCH: aarch64 6224235654SEd Maste TOOLCHAIN: llvm18 6324235654SEd Maste TOOLCHAIN_PKG: ${TOOLCHAIN} 6498c52118SEd Maste - name: amd64-gcc12 World and kernel build and boot smoke test (manual) 659244506aSEd Maste only_if: $CIRRUS_REPO_FULL_NAME != 'freebsd/freebsd-src' 6675e44873SEd Maste trigger_type: manual 6775e44873SEd Maste env: 6875e44873SEd Maste TARGET: amd64 6975e44873SEd Maste TARGET_ARCH: amd64 70f326a83cSEd Maste TOOLCHAIN: amd64-gcc12 71f326a83cSEd Maste TOOLCHAIN_PKG: ${TOOLCHAIN} 725f72ceb2SEd Maste EXTRA_MAKE_FLAGS: -s 739101746aSJohn Baldwin - name: amd64-gcc13 World and kernel build and boot smoke test (manual) 749101746aSJohn Baldwin only_if: $CIRRUS_REPO_FULL_NAME != 'freebsd/freebsd-src' 759101746aSJohn Baldwin trigger_type: manual 769101746aSJohn Baldwin env: 779101746aSJohn Baldwin TARGET: amd64 789101746aSJohn Baldwin TARGET_ARCH: amd64 799101746aSJohn Baldwin TOOLCHAIN: amd64-gcc13 809101746aSJohn Baldwin TOOLCHAIN_PKG: ${TOOLCHAIN} 819101746aSJohn Baldwin EXTRA_MAKE_FLAGS: -s 825ad6c907SEd Maste - name: aarch64-gcc12 World and kernel build and boot smoke test (manual) 835ad6c907SEd Maste only_if: $CIRRUS_REPO_FULL_NAME != 'freebsd/freebsd-src' 845ad6c907SEd Maste trigger_type: manual 855ad6c907SEd Maste env: 865ad6c907SEd Maste TARGET: arm64 875ad6c907SEd Maste TARGET_ARCH: aarch64 885ad6c907SEd Maste TOOLCHAIN: aarch64-gcc12 895ad6c907SEd Maste TOOLCHAIN_PKG: ${TOOLCHAIN} 905f72ceb2SEd Maste EXTRA_MAKE_FLAGS: -s 919101746aSJohn Baldwin - name: aarch64-gcc13 World and kernel build and boot smoke test (manual) 929101746aSJohn Baldwin only_if: $CIRRUS_REPO_FULL_NAME != 'freebsd/freebsd-src' 939101746aSJohn Baldwin trigger_type: manual 949101746aSJohn Baldwin env: 959101746aSJohn Baldwin TARGET: arm64 969101746aSJohn Baldwin TARGET_ARCH: aarch64 979101746aSJohn Baldwin TOOLCHAIN: aarch64-gcc13 989101746aSJohn Baldwin TOOLCHAIN_PKG: ${TOOLCHAIN} 999101746aSJohn Baldwin EXTRA_MAKE_FLAGS: -s 10098c52118SEd Maste - name: amd64-gcc12 World and kernel build and boot smoke test (FreeBSD repo) 10157b9a104SJose Luis Duran only_if: $CIRRUS_REPO_FULL_NAME == 'freebsd/freebsd-src' && $CIRRUS_BRANCH =~ 'pull/.*' 102f5f1b9a9SEd Maste env: 103f5f1b9a9SEd Maste TARGET: amd64 104f5f1b9a9SEd Maste TARGET_ARCH: amd64 105f326a83cSEd Maste TOOLCHAIN: amd64-gcc12 106f326a83cSEd Maste TOOLCHAIN_PKG: ${TOOLCHAIN} 1075f72ceb2SEd Maste EXTRA_MAKE_FLAGS: -s 1084d083e6dSEd Maste timeout_in: 120m 1099c0fe7f6SEd Maste install_script: 110b4373ce3SBrooks Davis - sh .cirrus-ci/pkg-install.sh ${TOOLCHAIN_PKG} git-lite 111260b2c51SBrooks Davis 112af11c202SEd Maste setup_script: 113f2f24008SEd Maste - uname -a 114170d1042SEd Maste - gpart show 115f2f24008SEd Maste - df -m 116a077a4e3SEd Maste - pkg --version 117663e4fa3SBrooks Davis - pw useradd -n user -m 118db853af6SEd Maste - mkdir -p /usr/obj/$(pwd -P) 119db853af6SEd Maste - chown user:user /usr/obj/$(pwd -P) 120663e4fa3SBrooks Davis - su user -c "git config --global --add safe.directory $(pwd -P)" 121260b2c51SBrooks Davis 1226024564cSEd Maste build_world_script: 1235f72ceb2SEd Maste - su user -c "make -j$(sysctl -n hw.ncpu) ${EXTRA_MAKE_FLAGS} CROSS_TOOLCHAIN=${TOOLCHAIN} WITHOUT_TOOLCHAIN=yes buildworld" 1246024564cSEd Maste 1256024564cSEd Maste build_kernel_script: 1266024564cSEd Maste - su user -c "make -j$(sysctl -n hw.ncpu) CROSS_TOOLCHAIN=${TOOLCHAIN} WITHOUT_TOOLCHAIN=yes buildkernel" 127260b2c51SBrooks Davis 128e1e9e084SEd Maste package_script: 129f326a83cSEd Maste - su user -c "make CROSS_TOOLCHAIN=${TOOLCHAIN} WITHOUT_TOOLCHAIN=yes packages" 130260b2c51SBrooks Davis 1312ed0305bSEd Maste package_check_script: 1322ed0305bSEd Maste - su user -c "/usr/libexec/flua tools/pkgbase/metalog_reader.lua -c /usr/obj/$(pwd -P)/${TARGET}.${TARGET_ARCH}/worldstage/METALOG" 133260b2c51SBrooks Davis 134e1e9e084SEd Maste test_script: 135612f254cSEd Maste - sh .cirrus-ci/pkg-install.sh qemu-nox11 136e1e9e084SEd Maste - sh tools/boot/ci-qemu-test.sh 137260b2c51SBrooks Davis 138b4373ce3SBrooks Davis make_sysent_script: 139b4373ce3SBrooks Davis # Check that make sysent results were committed if required 140b4373ce3SBrooks Davis - make sysent 141b4373ce3SBrooks Davis - if ! git diff --exit-code; then printf "\n>>> Generated sysent files not updated, run make sysent <<<\n"; false; fi 142b4373ce3SBrooks Davis 1438cee0c9aSBrooks Davis include_ldirs_script: 1448cee0c9aSBrooks Davis # Check that includes/Makefile refers to existing directories 1458cee0c9aSBrooks Davis - if ! make -C include/ check-ldirs; then printf "\n>>> include/Makefile lists nonexistant directories <<<\n"; false; fi 1468cee0c9aSBrooks Davis 14785e8c2a0SBrooks Davis makeman_script: 14885e8c2a0SBrooks Davis # Check that the committed src.conf.5 matches the one generated by 14985e8c2a0SBrooks Davis # tools/build/options/makeman (modulo the date which always updates) 15085e8c2a0SBrooks Davis # XXX: This script is slow so keep it last 15185e8c2a0SBrooks Davis - (make makeman 2> /tmp/makeman.out); cat /tmp/makeman.out 15285e8c2a0SBrooks Davis - if ! git diff --exit-code --ignore-matching-lines "^.Dd" share/man/man5/src.conf.5; then printf "\n>>> src.conf.5 was not updated as required <<<\n"; false; fi 15385e8c2a0SBrooks Davis - if grep -q "no description found" /tmp/makeman.out; then printf "\n>>> Missing description files <<<\n"; false; fi 15485e8c2a0SBrooks Davis 155f2f24008SEd Maste post_script: 156f2f24008SEd Maste - df -m 157f2f24008SEd Maste - du -m -s /usr/obj 158