sm64/Jenkinsfile

67 lines
1.8 KiB
Plaintext
Raw Normal View History

2019-08-25 00:46:40 -04:00
pipeline {
agent any
stages {
stage('Build Tools') {
steps {
sh 'make -j4 -C tools/'
}
}
stage('Extract Assets') {
steps {
sh 'ln -s "$ROMS_DIR/Super Mario 64 (J) [!].z64" baserom.jp.z64'
sh 'ln -s "$ROMS_DIR/Super Mario 64 (U) [!].z64" baserom.us.z64'
sh 'ln -s "$ROMS_DIR/Super Mario 64 (E) (M3) [!].z64" baserom.eu.z64'
2020-12-03 14:26:38 -05:00
sh 'ln -s "$ROMS_DIR/Super Mario 64 - Shindou Edition (J) [!].z64" baserom.sh.z64'
2023-08-17 08:56:02 -04:00
sh 'ln -s "$ROMS_DIR/Super Mario 64 - iQue (Ch).z64" baserom.cn.z64'
2019-08-25 00:46:40 -04:00
// verify no assets were committed to repo
sh '[ -z "$(find {actors,levels,textures}/ -name \'*.png\')" ]'
sh '[ -z "$(find assets/ -name \'*.m64\' -or \'*.bin\')" ]'
2023-08-17 08:56:02 -04:00
sh './extract_assets.py jp us eu sh cn'
2019-08-25 00:46:40 -04:00
}
}
2023-08-17 08:56:02 -04:00
stage('Build US Source') {
2020-02-03 00:51:26 -05:00
steps {
2020-12-03 14:26:38 -05:00
sh 'make -j4 VERSION=us VERBOSE=1 COLOR=0'
}
}
2023-08-17 08:56:02 -04:00
stage('Build SH Source') {
2020-12-03 14:26:38 -05:00
steps {
sh 'make -j4 VERSION=sh VERBOSE=1 COLOR=0'
2020-02-03 00:51:26 -05:00
}
}
2023-08-17 08:56:02 -04:00
stage('Build EU Source') {
2020-02-03 00:51:26 -05:00
steps {
2020-12-03 14:26:38 -05:00
sh 'make -j4 VERSION=eu VERBOSE=1 COLOR=0'
2020-02-03 00:51:26 -05:00
}
}
2023-08-17 08:56:02 -04:00
stage('Build JP Source') {
2019-08-25 00:46:40 -04:00
steps {
2020-12-03 14:26:38 -05:00
sh 'make -j4 VERSION=jp VERBOSE=1 COLOR=0'
2019-08-25 00:46:40 -04:00
}
}
2023-08-17 08:56:02 -04:00
stage('Build CN Source') {
steps {
sh 'make -j4 VERSION=cn VERBOSE=1 COLOR=0 COMPARE=0'
}
}
2020-02-03 00:51:26 -05:00
stage('Test Enhancements') {
2019-08-25 00:46:40 -04:00
steps {
2020-02-03 00:51:26 -05:00
sh '''
set -e
for f in enhancements/*.patch
do
git clean -fd .
git checkout -- .
echo 'y' | tools/apply_patch.sh "$f"
2020-12-03 14:26:38 -05:00
make -j4 VERSION=us COMPARE=0 VERBOSE=1
2020-02-03 00:51:26 -05:00
done
'''
2019-08-25 00:46:40 -04:00
}
}
}
environment {
QEMU_IRIX = credentials('qemu-irix')
ROMS_DIR = credentials('roms')
}
}