Skip to content

Commit 1bc4110

Browse files
committed
Add CI support
Signed-off-by: Lad Prabhakar <[email protected]>
1 parent 5d6b6a1 commit 1bc4110

File tree

1 file changed

+65
-0
lines changed

1 file changed

+65
-0
lines changed

.gitlab-ci.yml

Lines changed: 65 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,65 @@
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

Comments
 (0)