2020-03-17 01:54:42 -04:00
|
|
|
pipeline {
|
2021-03-23 10:17:02 +09:00
|
|
|
agent {
|
|
|
|
label 'oot'
|
|
|
|
}
|
2020-03-17 01:54:42 -04:00
|
|
|
|
|
|
|
stages {
|
2024-01-31 04:25:24 +01:00
|
|
|
stage('Check formatting (full)') {
|
|
|
|
when {
|
|
|
|
branch 'main'
|
|
|
|
}
|
|
|
|
steps {
|
|
|
|
echo 'Checking formatting on all files...'
|
2024-02-01 00:05:33 +01:00
|
|
|
sh 'python3 tools/check_format.py'
|
2024-01-31 04:25:24 +01:00
|
|
|
}
|
|
|
|
}
|
|
|
|
stage('Check formatting (modified)') {
|
|
|
|
when {
|
|
|
|
not {
|
|
|
|
branch 'main'
|
|
|
|
}
|
|
|
|
}
|
2024-01-29 04:25:58 -08:00
|
|
|
steps {
|
2024-01-31 04:25:24 +01:00
|
|
|
echo 'Checking formatting on modified files...'
|
2024-02-01 00:05:33 +01:00
|
|
|
sh 'python3 tools/check_format.py --verbose --compare-to origin/main'
|
2024-01-29 04:25:58 -08:00
|
|
|
}
|
|
|
|
}
|
2024-08-28 13:28:03 +02:00
|
|
|
stage('Build ntsc-1.2, check disasm metadata') {
|
|
|
|
steps {
|
|
|
|
sh 'ln -s /usr/local/etc/roms/oot-ntsc-1.2-us.z64 baseroms/ntsc-1.2/baserom.z64'
|
2024-09-04 20:22:37 +02:00
|
|
|
sh 'make -j$(nproc) setup VERSION=ntsc-1.2'
|
|
|
|
sh 'make -j$(nproc) VERSION=ntsc-1.2'
|
2024-08-28 13:28:03 +02:00
|
|
|
sh '.venv/bin/python3 tools/check_disasm_metadata_unksyms.py -v ntsc-1.2'
|
|
|
|
sh 'make clean assetclean VERSION=ntsc-1.2'
|
|
|
|
}
|
|
|
|
}
|
2024-08-14 20:39:34 -07:00
|
|
|
// The ROMs are built in an order that maximizes compiler flags coverage in a "fail fast" approach.
|
|
|
|
// Specifically we start with a retail ROM for BSS ordering, and make sure we cover all of
|
|
|
|
// NTSC/PAL/MQ/DEBUG as quickly as possible.
|
|
|
|
stage('Build gc-jp') {
|
2020-03-17 01:54:42 -04:00
|
|
|
steps {
|
2024-08-14 20:39:34 -07:00
|
|
|
sh 'ln -s /usr/local/etc/roms/oot-gc-jp.z64 baseroms/gc-jp/baserom.z64'
|
2024-09-04 20:22:37 +02:00
|
|
|
sh 'make -j$(nproc) setup VERSION=gc-jp'
|
|
|
|
sh 'make -j$(nproc) VERSION=gc-jp'
|
2024-08-14 20:39:34 -07:00
|
|
|
sh 'make clean assetclean VERSION=gc-jp'
|
2020-08-22 19:06:52 -04:00
|
|
|
}
|
|
|
|
}
|
2024-08-14 20:39:34 -07:00
|
|
|
stage('Build gc-eu-mq') {
|
2020-03-17 01:54:42 -04:00
|
|
|
steps {
|
2024-08-14 20:39:34 -07:00
|
|
|
sh 'ln -s /usr/local/etc/roms/oot-gc-eu-mq.z64 baseroms/gc-eu-mq/baserom.z64'
|
2024-09-04 20:22:37 +02:00
|
|
|
sh 'make -j$(nproc) setup VERSION=gc-eu-mq'
|
|
|
|
sh 'make -j$(nproc) VERSION=gc-eu-mq'
|
2024-08-14 20:39:34 -07:00
|
|
|
sh 'make clean assetclean VERSION=gc-eu-mq'
|
2020-03-17 01:54:42 -04:00
|
|
|
}
|
|
|
|
}
|
2024-08-14 20:39:34 -07:00
|
|
|
stage('Build gc-eu-mq-dbg') {
|
2024-04-19 21:12:26 -07:00
|
|
|
steps {
|
2024-08-14 20:39:34 -07:00
|
|
|
sh 'ln -s /usr/local/etc/roms/oot-gc-eu-mq-dbg.z64 baseroms/gc-eu-mq-dbg/baserom.z64'
|
2024-09-04 20:22:37 +02:00
|
|
|
sh 'make -j$(nproc) setup VERSION=gc-eu-mq-dbg'
|
|
|
|
sh 'make -j$(nproc) VERSION=gc-eu-mq-dbg'
|
2024-08-14 20:39:34 -07:00
|
|
|
sh 'make clean assetclean VERSION=gc-eu-mq-dbg'
|
2024-04-19 21:12:26 -07:00
|
|
|
}
|
|
|
|
}
|
2024-08-14 20:39:34 -07:00
|
|
|
stage('Build gc-us') {
|
2024-04-19 21:12:26 -07:00
|
|
|
steps {
|
2024-08-14 20:39:34 -07:00
|
|
|
sh 'ln -s /usr/local/etc/roms/oot-gc-us.z64 baseroms/gc-us/baserom.z64'
|
2024-09-04 20:22:37 +02:00
|
|
|
sh 'make -j$(nproc) setup VERSION=gc-us'
|
|
|
|
sh 'make -j$(nproc) VERSION=gc-us'
|
2024-08-14 20:39:34 -07:00
|
|
|
sh 'make clean assetclean VERSION=gc-us'
|
2024-04-19 21:12:26 -07:00
|
|
|
}
|
|
|
|
}
|
2024-08-14 20:39:34 -07:00
|
|
|
stage('Build gc-jp-ce') {
|
2020-05-26 16:36:30 -04:00
|
|
|
steps {
|
2024-08-14 20:39:34 -07:00
|
|
|
sh 'ln -s /usr/local/etc/roms/oot-gc-jp-ce.z64 baseroms/gc-jp-ce/baserom.z64'
|
2024-09-04 20:22:37 +02:00
|
|
|
sh 'make -j$(nproc) setup VERSION=gc-jp-ce'
|
|
|
|
sh 'make -j$(nproc) VERSION=gc-jp-ce'
|
2024-08-14 20:39:34 -07:00
|
|
|
sh 'make clean assetclean VERSION=gc-jp-ce'
|
2021-03-23 10:17:02 +09:00
|
|
|
}
|
|
|
|
}
|
2024-08-14 20:39:34 -07:00
|
|
|
stage('Build gc-eu') {
|
|
|
|
steps {
|
|
|
|
sh 'ln -s /usr/local/etc/roms/oot-gc-eu.z64 baseroms/gc-eu/baserom.z64'
|
2024-09-04 20:22:37 +02:00
|
|
|
sh 'make -j$(nproc) setup VERSION=gc-eu'
|
|
|
|
sh 'make -j$(nproc) VERSION=gc-eu'
|
2024-08-14 20:39:34 -07:00
|
|
|
sh 'make clean assetclean VERSION=gc-eu'
|
2021-03-23 10:17:02 +09:00
|
|
|
}
|
2024-08-14 20:39:34 -07:00
|
|
|
}
|
|
|
|
stage('Build gc-jp-mq') {
|
|
|
|
steps {
|
|
|
|
sh 'ln -s /usr/local/etc/roms/oot-gc-jp-mq.z64 baseroms/gc-jp-mq/baserom.z64'
|
2024-09-04 20:22:37 +02:00
|
|
|
sh 'make -j$(nproc) setup VERSION=gc-jp-mq'
|
|
|
|
sh 'make -j$(nproc) VERSION=gc-jp-mq'
|
2024-08-14 20:39:34 -07:00
|
|
|
sh 'make clean assetclean VERSION=gc-jp-mq'
|
2021-03-23 10:17:02 +09:00
|
|
|
}
|
2024-08-14 20:39:34 -07:00
|
|
|
}
|
|
|
|
stage('Build gc-us-mq') {
|
2021-03-23 10:17:02 +09:00
|
|
|
steps {
|
2024-08-14 20:39:34 -07:00
|
|
|
sh 'ln -s /usr/local/etc/roms/oot-gc-us-mq.z64 baseroms/gc-us-mq/baserom.z64'
|
2024-09-04 20:22:37 +02:00
|
|
|
sh 'make -j$(nproc) setup VERSION=gc-us-mq'
|
|
|
|
sh 'make -j$(nproc) VERSION=gc-us-mq'
|
2024-08-14 20:39:34 -07:00
|
|
|
sh 'make clean assetclean VERSION=gc-us-mq'
|
2020-05-26 16:36:30 -04:00
|
|
|
}
|
|
|
|
}
|
2020-03-17 01:54:42 -04:00
|
|
|
}
|
|
|
|
post {
|
|
|
|
always {
|
2022-12-19 21:13:52 -08:00
|
|
|
echo "Finished, deleting directory."
|
|
|
|
deleteDir()
|
|
|
|
}
|
|
|
|
cleanup {
|
|
|
|
echo "Clean up in post."
|
|
|
|
cleanWs(cleanWhenNotBuilt: false,
|
|
|
|
deleteDirs: true,
|
|
|
|
disableDeferredWipeout: true,
|
|
|
|
notFailBuild: true)
|
2020-03-17 01:54:42 -04:00
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|