|
| 1 | +image: gitlab.renesas.solutions:5050/spl2/continuous-integration/dockerfiles:linux__ubuntu-20.04-latest |
| 2 | + |
| 3 | +stages: |
| 4 | + - dtchecks |
| 5 | + |
| 6 | +.build-dtchecks: |
| 7 | + stage: dtchecks |
| 8 | + variables: |
| 9 | + GIT_STRATEGY: none |
| 10 | + IMAGES_DIR: tmp-glibc/deploy/images/${MACHINE} |
| 11 | + OUTPUT_DIR: ${CI_PROJECT_DIR}/output |
| 12 | + BUILD_DIR: ${CI_PROJECT_DIR}/build |
| 13 | + CI_DT_SCHEMA: 784179b |
| 14 | + baselinelog: baselinelog.log |
| 15 | + before_script: |
| 16 | + - printenv |
| 17 | + - rm -rf ${OUTPUT_DIR} ${BUILD_DIR} |
| 18 | + - mkdir -p ${OUTPUT_DIR} ${BUILD_DIR} |
| 19 | + - sudo apt-get -y update |
| 20 | + - sudo apt install -y python3-ruamel.yaml libssl-dev sparse libncurses-dev gawk flex bison openssl libssl-dev dkms libelf-dev libudev-dev libpci-dev libiberty-dev autoconf llvm bc sqlite3 libsqlite3-dev libdbd-sqlite3-perl libgmp-dev libmpc-dev swig python3 |
| 21 | + - pip3 install rfc3987 |
| 22 | + - wget https://gitlab.renesas.solutions/prabhakarlad/riscv-toolchain/-/raw/master/rv64-2023.03.14.tar.gz?inline=false |
| 23 | + - mkdir ~/rv64-cross-compile && tar -xvf rv64-2023.03.14.tar.gz?inline=false -C ~/rv64-cross-compile |
| 24 | + - wget https://gitlab.renesas.solutions/prabhakarlad/riscv-toolchain/-/raw/master/rv32-2023.03.14.tar.gz?inline=false |
| 25 | + - mkdir ~/rv32-cross-compile && tar -xvf rv32-2023.03.14.tar.gz?inline=false -C ~/rv32-cross-compile |
| 26 | + script: |
| 27 | + - cd ${BUILD_DIR} |
| 28 | + - git clone https://repo.or.cz/smatch.git |
| 29 | + - cd smatch && make -j$(nproc) && cd - |
| 30 | + - git clone https://github.com/devicetree-org/dt-schema.git |
| 31 | + - cd dt-schema && git checkout ${CI_DT_SCHEMA} && cd - |
| 32 | + - cd dt-schema && pip3 install -e . && cd - |
| 33 | + - cd dt-schema/tools && sudo cp * /usr/sbin && cd - |
| 34 | + - dt-doc-validate --version |
| 35 | + - cd /opt/linux && git fetch origin ${CI_COMMIT_BRANCH} && git checkout -b lcl${CI_COMMIT_BRANCH} origin/${CI_COMMIT_BRANCH} |
| 36 | + - make CROSS_COMPILE=~/rv64-cross-compile/bin/riscv64-unknown-linux-gnu- ARCH=riscv rzf_defconfig |
| 37 | + - make CROSS_COMPILE=~/rv64-cross-compile/bin/riscv64-unknown-linux-gnu- ARCH=riscv modules Image.gz dtbs -j$(nproc) W=1 |
| 38 | + - cp arch/riscv/boot/dts/renesas/r9a07g043f01-smarc.dtb arch/riscv/boot/Image.gz ${OUTPUT_DIR} |
| 39 | + - cp drivers/dma/dmatest.ko ${OUTPUT_DIR} |
| 40 | + - make CROSS_COMPILE=~/rv64-cross-compile/bin/riscv64-unknown-linux-gnu- ARCH=riscv defconfig |
| 41 | + - make CROSS_COMPILE=~/rv64-cross-compile/bin/riscv64-unknown-linux-gnu- ARCH=riscv modules Image.gz dtbs -j$(nproc) W=1 |
| 42 | + - make CROSS_COMPILE=~/rv32-cross-compile/bin/riscv32-unknown-linux-gnu- ARCH=riscv rv32_defconfig |
| 43 | + - make CROSS_COMPILE=~/rv32-cross-compile/bin/riscv32-unknown-linux-gnu- ARCH=riscv modules Image.gz dtbs -j$(nproc) W=1 |
| 44 | + - make -s ARCH=arm allmodconfig |
| 45 | + - make -s ARCH=arm refcheckdocs 2>&1 | tee doc-links-${baselinelog} |
| 46 | + - make -O -j$(nproc) ARCH=arm -s DT_CHECKER_FLAGS=-m dt_binding_check 2>&1 | tee dt_binding_check.log |
| 47 | + - make -O -j$(nproc) ARCH=arm -s DT_SCHEMA_FILES=Documentation/devicetree/bindings/cache/andestech,ax45mp-cache.yaml dtbs_check 2>&1 | tee -a arm-dtbs.log |
| 48 | + - make -s ARCH=arm64 allmodconfig |
| 49 | + - make -O -j$(nproc) -s ARCH=arm64 DT_SCHEMA_FILES=Documentation/devicetree/bindings/cache/andestech,ax45mp-cache.yaml dtbs_check 2>&1 | tee -a arm64-dtbs.log |
| 50 | + - make -s ARCH=riscv allmodconfig |
| 51 | + - make -O -j$(nproc) -s ARCH=riscv DT_SCHEMA_FILES=Documentation/devicetree/bindings/cache/andestech,ax45mp-cache.yaml dtbs_check 2>&1 | tee -a riscv-dtbs.log |
| 52 | + - cp dt_binding_check.log arm-dtbs.log arm64-dtbs.log riscv-dtbs.log ${OUTPUT_DIR} |
| 53 | + - cp doc-links-${baselinelog} ${OUTPUT_DIR} |
| 54 | + - make CROSS_COMPILE=~/rv64-cross-compile/bin/riscv64-unknown-linux-gnu- ARCH=riscv allmodconfig |
| 55 | + - make CROSS_COMPILE=~/rv64-cross-compile/bin/riscv64-unknown-linux-gnu- ARCH=riscv modules Image.gz dtbs -j$(nproc) |
| 56 | + artifacts: |
| 57 | + name: "${CI_JOB_NAME}-${CI_JOB_ID}" |
| 58 | + expire_in: 1 week |
| 59 | + paths: |
| 60 | + - ${OUTPUT_DIR} |
| 61 | + |
| 62 | +dt_checker: |
| 63 | + extends: .build-dtchecks |
| 64 | + variables: |
| 65 | + CONFIG: defconfig |
0 commit comments