Add PAL, JPN, and Shield versions to CI, update dtk-template (#2605)

* Add ShieldD to GitHub CI build

* Update dtk-template, add support for CI caching

* Fix PAL and JPN not building on Linux due to case sensitive file paths

* Add PAL and JPN to GitHub CI build

* Fix bad copy paste
This commit is contained in:
LagoLunatic
2025-08-25 20:45:28 -04:00
committed by GitHub
parent 22573bf7a6
commit ee6c527735
29 changed files with 94 additions and 51 deletions
+22 -2
View File
@@ -12,20 +12,40 @@ jobs:
strategy:
fail-fast: false
matrix:
version: [GZ2E01]
version: [GZ2E01, GZ2P01, GZ2J01, ShieldD]
steps:
# Checkout the repository
- name: Checkout
uses: actions/checkout@v4
with:
fetch-depth: 0
submodules: recursive
# Set Git config
- name: Git config
run: git config --global --add safe.directory "$GITHUB_WORKSPACE"
# Normalize file mod times
- name: Restore timestamps
run: |
uv run https://raw.githubusercontent.com/MestreLion/git-tools/refs/tags/v2022.12/git-restore-mtime \
--merge --commit-time
# Copy the original files to the workspace
- name: Prepare
run: cp -R /orig .
run: cp -a /orig .
# Restore cached files
- name: Cache build
uses: actions/cache@v4
with:
path: |
build
.ninja_deps
.ninja_log
key: ${{ runner.os }}-${{ matrix.version }}-${{ github.sha }}
restore-keys: ${{ runner.os }}-${{ matrix.version }}-
# Build the project
- name: Build
+8 -8
View File
@@ -38,7 +38,7 @@ e2b3f3d5608488cd666f58a2e4c86372affdfba7 build/GZ2J01/d_a_b_zant_sima/d_a_b_zan
05e81d14b9877e633793207c654f32f446001219 build/GZ2J01/d_a_coach_fire/d_a_coach_fire.rel
d9c731edaac846cc173ba15d94569e7be0235366 build/GZ2J01/d_a_cow/d_a_cow.rel
34ae366fd852526a84c22171be6437a1e192923a build/GZ2J01/d_a_crod/d_a_crod.rel
dc67fc8a876e527467db78ea08da1c7335bc2a2a build/GZ2J01/d_a_cstaf/d_a_cstaf.rel
dc67fc8a876e527467db78ea08da1c7335bc2a2a build/GZ2J01/d_a_cstaF/d_a_cstaF.rel
982430ca8ca7b2e769177ee28db0e5debd392ffe build/GZ2J01/d_a_cstatue/d_a_cstatue.rel
75e5c8adc179f3f7a1c30224ba8c97373165d86e build/GZ2J01/d_a_demo00/d_a_demo00.rel
0cb8467162687d1a7ffca4eafc1acecf4c8be0ba build/GZ2J01/d_a_demo_item/d_a_demo_item.rel
@@ -47,7 +47,7 @@ ec6e05228cfebb6946d8c8a5594c452a4e49ddb0 build/GZ2J01/d_a_dmidna/d_a_dmidna.rel
5b8f01101c41e8a5206ee7d19705c09a19ec717c build/GZ2J01/d_a_do/d_a_do.rel
888d98eebd5b7e52bf15ca692818ae3ade182e1c build/GZ2J01/d_a_door_boss/d_a_door_boss.rel
4c1d5bab81a58a0dc815940acbc22455e426b257 build/GZ2J01/d_a_door_bossL5/d_a_door_bossL5.rel
6cfab11b91f85e111398ccc262f2eb8eabea7913 build/GZ2J01/d_a_door_bossl1/d_a_door_bossl1.rel
6cfab11b91f85e111398ccc262f2eb8eabea7913 build/GZ2J01/d_a_door_bossL1/d_a_door_bossL1.rel
e5ca6b138220d013361bba9c0e69352188a7a799 build/GZ2J01/d_a_door_dbdoor00/d_a_door_dbdoor00.rel
d9d4cc11d51301a762e42091ccba94b5074474c4 build/GZ2J01/d_a_door_knob00/d_a_door_knob00.rel
bb6f31009a51e743a7b0123acc282b09571e2323 build/GZ2J01/d_a_door_mbossL1/d_a_door_mbossL1.rel
@@ -390,7 +390,7 @@ f95e843748d9a91654ce25b91c8b45a016cf7385 build/GZ2J01/d_a_obj_glowSphere/d_a_ob
1225251262c9c1add006df86c4ea4ceff908caf3 build/GZ2J01/d_a_obj_gm/d_a_obj_gm.rel
fcd44475ede26bf4da92abde40cf66f4f5eba9a6 build/GZ2J01/d_a_obj_goGate/d_a_obj_goGate.rel
e6b87be2b2450b8542e422a4e4461e9b43834330 build/GZ2J01/d_a_obj_gomikabe/d_a_obj_gomikabe.rel
66876bcdb0f34a75b51f57a760471652e5712591 build/GZ2J01/d_a_obj_gptaru/d_a_obj_gptaru.rel
66876bcdb0f34a75b51f57a760471652e5712591 build/GZ2J01/d_a_obj_gpTaru/d_a_obj_gpTaru.rel
b1682a2776d3072b7e07892d93fec6443b5b7fb3 build/GZ2J01/d_a_obj_gra2/d_a_obj_gra2.rel
1cd031df346496d73112fdcde7b4b7e988cf5f9e build/GZ2J01/d_a_obj_graWall/d_a_obj_graWall.rel
bee0ae399fa4c4ee53d09b28ad5d53842dcb2eee build/GZ2J01/d_a_obj_gra_rock/d_a_obj_gra_rock.rel
@@ -441,7 +441,7 @@ dffe55d65a668d7e187a0e65937614bf55db35f2 build/GZ2J01/d_a_obj_kgate/d_a_obj_kga
a86bfe4c26d97591489998706ed2cbb1d8ef8d99 build/GZ2J01/d_a_obj_klift00/d_a_obj_klift00.rel
50ae42bf20032e8edf8dc2b5f2171448024ce5e5 build/GZ2J01/d_a_obj_knBullet/d_a_obj_knBullet.rel
aa87252c28339178492f6f07ce5dcef6bdc189e7 build/GZ2J01/d_a_obj_kshutter/d_a_obj_kshutter.rel
7df6712ec3489a6b3ec5bb8c52d1baacc7ab9890 build/GZ2J01/d_a_obj_ktonfire/d_a_obj_ktonfire.rel
7df6712ec3489a6b3ec5bb8c52d1baacc7ab9890 build/GZ2J01/d_a_obj_ktOnFire/d_a_obj_ktOnFire.rel
23fbb23088bdd3ddfefe550d4355258373285228 build/GZ2J01/d_a_obj_kuwagata/d_a_obj_kuwagata.rel
d6e127a12cfaf7d2a92190ac6bbfc3e15adbde67 build/GZ2J01/d_a_obj_kwheel00/d_a_obj_kwheel00.rel
f981ebe94e731d7529408538a4863e2b77e8a581 build/GZ2J01/d_a_obj_kwheel01/d_a_obj_kwheel01.rel
@@ -454,7 +454,7 @@ c62dad75812978980c3e4cf64d8e1cef19a01229 build/GZ2J01/d_a_obj_ladder/d_a_obj_la
fcdf5517c8b4714f6fe6fe7041a08d008e3c9b82 build/GZ2J01/d_a_obj_lp/d_a_obj_lp.rel
0b63b012f4c6014f7276962d9ffbac0c714bfa94 build/GZ2J01/d_a_obj_lv1Candle00/d_a_obj_lv1Candle00.rel
c3ca3a18b7592ef55d1658cb33dea29d72ce5181 build/GZ2J01/d_a_obj_lv1Candle01/d_a_obj_lv1Candle01.rel
392ec10bb78c16dbbecf7b6162c31e98ca572dbd build/GZ2J01/d_a_obj_lv2candle/d_a_obj_lv2candle.rel
392ec10bb78c16dbbecf7b6162c31e98ca572dbd build/GZ2J01/d_a_obj_lv2Candle/d_a_obj_lv2Candle.rel
3408d93b02721d13c1f72aa774ca3505fcf0576c build/GZ2J01/d_a_obj_lv3Candle/d_a_obj_lv3Candle.rel
e742696721d4cc447dae5f489291ec0968b0450c build/GZ2J01/d_a_obj_lv3Water/d_a_obj_lv3Water.rel
8d37534dd361d08ed3f2eb93cb47959f39a5060d build/GZ2J01/d_a_obj_lv3Water2/d_a_obj_lv3Water2.rel
@@ -580,7 +580,7 @@ e66e31dcaae918691a946b1934d5d4215138fa05 build/GZ2J01/d_a_obj_ss_item/d_a_obj_s
fa50b43b5e91eb3a4edca4aaa7ce334664eea12e build/GZ2J01/d_a_obj_stairBlock/d_a_obj_stairBlock.rel
c7129070b57592e655d5c7d17ad3e9d6368452c4 build/GZ2J01/d_a_obj_stick/d_a_obj_stick.rel
09729e87862a77db925e955f546172f8ec35b908 build/GZ2J01/d_a_obj_stone/d_a_obj_stone.rel
1ee840a5848698ec8103748abd43f73a99897071 build/GZ2J01/d_a_obj_stonemark/d_a_obj_stonemark.rel
1ee840a5848698ec8103748abd43f73a99897071 build/GZ2J01/d_a_obj_stoneMark/d_a_obj_stoneMark.rel
d62984c6a258bb34ecf04490f4a84f89ee93b146 build/GZ2J01/d_a_obj_stopper/d_a_obj_stopper.rel
2a92c3cb850b9f2c4b20f159936257ffec968644 build/GZ2J01/d_a_obj_stopper2/d_a_obj_stopper2.rel
7f511ccdb6ba44d4976cfe1fe0b8c893b048a843 build/GZ2J01/d_a_obj_suisya/d_a_obj_suisya.rel
@@ -589,7 +589,7 @@ c1642dbf9cba0f471838cba3b54910e7db486300 build/GZ2J01/d_a_obj_swBallA/d_a_obj_s
2340a46a1dd9b03e4513edb1f6a6564f5bce8052 build/GZ2J01/d_a_obj_swBallB/d_a_obj_swBallB.rel
233e2e42c471b222940f7e700dfe10701f3a25a7 build/GZ2J01/d_a_obj_swBallC/d_a_obj_swBallC.rel
36800b41440fdcb8fb8a6edfaa4334e7fa6cd88c build/GZ2J01/d_a_obj_swLight/d_a_obj_swLight.rel
3473aad68f1b39dde8988911900c1fc1945649fe build/GZ2J01/d_a_obj_swallshutter/d_a_obj_swallshutter.rel
3473aad68f1b39dde8988911900c1fc1945649fe build/GZ2J01/d_a_obj_sWallShutter/d_a_obj_sWallShutter.rel
2d8260c4c658e3fc2d919884587e80f4cc32f649 build/GZ2J01/d_a_obj_swchain/d_a_obj_swchain.rel
c1cd73abbca3edfc58c8498f7e894ed2e42038d0 build/GZ2J01/d_a_obj_swhang/d_a_obj_swhang.rel
e49738b5e37fbe1272f44a22c1f3384ccca5a779 build/GZ2J01/d_a_obj_sword/d_a_obj_sword.rel
@@ -688,7 +688,7 @@ ebf3e31403c892df5d8fe499911d1980b29d8a16 build/GZ2J01/d_a_tag_bottle_item/d_a_t
4b9b9717d3c7e7f8fbee58f7c0cce0c5eb37538b build/GZ2J01/d_a_tag_camera/d_a_tag_camera.rel
ad8cd80000b52b9f32db8456495a18c918e082d9 build/GZ2J01/d_a_tag_chgrestart/d_a_tag_chgrestart.rel
8b4350b451e282fd16d07d5e8ed1572112cf203b build/GZ2J01/d_a_tag_chkpoint/d_a_tag_chkpoint.rel
4e73db515946e41884f55c063d4680985e88b66d build/GZ2J01/d_a_tag_cstasw/d_a_tag_cstasw.rel
4e73db515946e41884f55c063d4680985e88b66d build/GZ2J01/d_a_tag_CstaSw/d_a_tag_CstaSw.rel
965473fe871c58ed47832dcd5b5a8100c00544ad build/GZ2J01/d_a_tag_csw/d_a_tag_csw.rel
71303ad1ad9c192f389ca5ba87c9d03e6668f8ea build/GZ2J01/d_a_tag_escape/d_a_tag_escape.rel
9229453f33781b9c5309c3564ddf677c6813ff9b build/GZ2J01/d_a_tag_event/d_a_tag_event.rel
+1 -1
View File
@@ -129,6 +129,6 @@ __vt__12daObjBATTA_c = .data:0x000001E8; // type:object size:0xC scope:global
__vt__12J3DFrameCtrl = .data:0x000001F4; // type:object size:0xC scope:global
__vt__16daObj_BattaHIO_c = .data:0x00000200; // type:object size:0xC scope:global
__global_destructor_chain = .bss:0x00000000; // type:object size:0x4 scope:global
l_HIOInit = .bss:0x00000008; // type:object size:0x1 data:byte scope:local
l_HIOInit = .bss:0x00000008; // type:object size:0x1 scope:local data:byte
@3769 = .bss:0x0000000C; // type:object size:0xC scope:local
l_HIO = .bss:0x00000018; // type:object size:0x10 scope:global align:4 data:float
@@ -91,6 +91,6 @@ __vt__8cM3dGSph = .data:0x00000090; // type:object size:0xC scope:global
__vt__15daObjGOMIKABE_c = .data:0x0000009C; // type:object size:0x28 scope:global
__vt__19daObjGOMIKABE_HIO_c = .data:0x000000C4; // type:object size:0xC scope:global
__global_destructor_chain = .bss:0x00000000; // type:object size:0x4 scope:global
l_HIOInit = .bss:0x00000008; // type:object size:0x1 data:byte scope:local
l_HIOInit = .bss:0x00000008; // type:object size:0x1 scope:local data:byte
@3761 = .bss:0x0000000C; // type:object size:0xC scope:local
l_HIO = .bss:0x00000018; // type:object size:0x8 scope:local data:byte
+1 -1
View File
@@ -50,6 +50,6 @@ l_daObj_Kita_Method = .data:0x00000000; // type:object size:0x20 scope:local
g_profile_OBJ_KITA = .data:0x00000020; // type:object size:0x30 scope:global
__vt__16daObj_Kita_HIO_c = .data:0x00000050; // type:object size:0xC scope:global
__global_destructor_chain = .bss:0x00000000; // type:object size:0x4 scope:global
l_HIOInit = .bss:0x00000008; // type:object size:0x1 data:byte scope:local
l_HIOInit = .bss:0x00000008; // type:object size:0x1 scope:local data:byte
@3764 = .bss:0x0000000C; // type:object size:0xC scope:local
l_HIO = .bss:0x00000018; // type:object size:0x18 scope:local data:byte
+1 -1
View File
@@ -88,7 +88,7 @@ __global_destructor_chain = .bss:0x00000000; // type:object size:0x4 scope:globa
@1012 = .bss:0x0000003C; // type:object size:0x1 scope:local
@1010 = .bss:0x00000040; // type:object size:0x1 scope:local
@1009 = .bss:0x00000044; // type:object size:0x1 scope:local
l_HIOInit = .bss:0x00000045; // type:object size:0x1 data:byte scope:local
l_HIOInit = .bss:0x00000045; // type:object size:0x1 scope:local data:byte
@3858 = .bss:0x00000048; // type:object size:0xC scope:local
l_HIO = .bss:0x00000054; // type:object size:0x14 scope:local data:byte
@3958 = .bss:0x00000068; // type:object size:0xC scope:local
+8 -8
View File
@@ -38,7 +38,7 @@ fc62d97ce37bfb9bf1127e36bd7d3379001410e0 build/GZ2P01/d_a_coach_2D/d_a_coach_2D
f4a16d64975358bfa02c25a7fd1b2764aa9bb095 build/GZ2P01/d_a_coach_fire/d_a_coach_fire.rel
c01daf6d12a2424eaa4ecd422ea769220d6900a3 build/GZ2P01/d_a_cow/d_a_cow.rel
f181645387e11b56de58368c69b721cfd1617a6d build/GZ2P01/d_a_crod/d_a_crod.rel
12a9764ae9a7a4418638b8479d8213fed07842d5 build/GZ2P01/d_a_cstaf/d_a_cstaf.rel
12a9764ae9a7a4418638b8479d8213fed07842d5 build/GZ2P01/d_a_cstaF/d_a_cstaF.rel
87df56c78ef7618cdffd6254ff662bcc7e41f82d build/GZ2P01/d_a_cstatue/d_a_cstatue.rel
e26cf0e5dabe0540a1a87f31fd43baf0f39f03d1 build/GZ2P01/d_a_demo00/d_a_demo00.rel
8574d6f9d3b84355e742faa34ebd074101d4d396 build/GZ2P01/d_a_demo_item/d_a_demo_item.rel
@@ -47,7 +47,7 @@ fb4b2833d054e7a9b37eb8a5c3b61dda4cd5e07a build/GZ2P01/d_a_disappear/d_a_disappe
a2a510ed8bdfeed8e662cb9a77fe4d58f2869da4 build/GZ2P01/d_a_do/d_a_do.rel
6e4601116067427c7840d5a19c3aa58b2c976f05 build/GZ2P01/d_a_door_boss/d_a_door_boss.rel
f0216749543bdf4cacc79a977088ff8993c9ae62 build/GZ2P01/d_a_door_bossL5/d_a_door_bossL5.rel
48f58ed9c2fadedac424ddad65d94d738de84be6 build/GZ2P01/d_a_door_bossl1/d_a_door_bossl1.rel
48f58ed9c2fadedac424ddad65d94d738de84be6 build/GZ2P01/d_a_door_bossL1/d_a_door_bossL1.rel
48494f8cbeb129af1789877fe697587bcaba1727 build/GZ2P01/d_a_door_dbdoor00/d_a_door_dbdoor00.rel
5d29ba6637d0c01c2f85dbd6403f9b8667532a59 build/GZ2P01/d_a_door_knob00/d_a_door_knob00.rel
07f3ecd6768b7a68645294879e1f04df772b1fcd build/GZ2P01/d_a_door_mbossL1/d_a_door_mbossL1.rel
@@ -390,7 +390,7 @@ da9f33fe7f408b9502742098ce920ddd7f2f1e03 build/GZ2P01/d_a_obj_food/d_a_obj_food
2304e39c128a470bf366bdd5cca016c26c659ae1 build/GZ2P01/d_a_obj_gm/d_a_obj_gm.rel
5a9f57a9cde721cdef8a85ee34f5f010904eaa60 build/GZ2P01/d_a_obj_goGate/d_a_obj_goGate.rel
cc19b90d818fc0f662619d41a149b7c4ae031a77 build/GZ2P01/d_a_obj_gomikabe/d_a_obj_gomikabe.rel
15127e69f0705d9daaa54db977bb8a6b82ffceae build/GZ2P01/d_a_obj_gptaru/d_a_obj_gptaru.rel
15127e69f0705d9daaa54db977bb8a6b82ffceae build/GZ2P01/d_a_obj_gpTaru/d_a_obj_gpTaru.rel
0ecdb2d7f8435c2fbcbb0a82eef998ff2d767752 build/GZ2P01/d_a_obj_gra2/d_a_obj_gra2.rel
871c1fb23174f4ce8dcf79f09699ef60a987f826 build/GZ2P01/d_a_obj_graWall/d_a_obj_graWall.rel
7800cb1929d7f71dca7fd02fab23d8a1d62f2a6d build/GZ2P01/d_a_obj_gra_rock/d_a_obj_gra_rock.rel
@@ -441,7 +441,7 @@ a6a9c7c4859cea49465b31ac17d51ee282b20d90 build/GZ2P01/d_a_obj_kkanban/d_a_obj_k
a50744caeabc23e43daf1e8942a67f1b7efa22e6 build/GZ2P01/d_a_obj_klift00/d_a_obj_klift00.rel
24daa3d4ead70818528f1ad5bb7b7e70f2efd2a3 build/GZ2P01/d_a_obj_knBullet/d_a_obj_knBullet.rel
194ba5b547cd31f2e98b1ba1724f4e7e28dbd05a build/GZ2P01/d_a_obj_kshutter/d_a_obj_kshutter.rel
a1f20af11da1b23301936aa6a3780caab87e797b build/GZ2P01/d_a_obj_ktonfire/d_a_obj_ktonfire.rel
a1f20af11da1b23301936aa6a3780caab87e797b build/GZ2P01/d_a_obj_ktOnFire/d_a_obj_ktOnFire.rel
027704c43922d80740f52c04806c71225b77be5f build/GZ2P01/d_a_obj_kuwagata/d_a_obj_kuwagata.rel
e80567f0a44c0f8fe9c9544be0415b06ad630556 build/GZ2P01/d_a_obj_kwheel00/d_a_obj_kwheel00.rel
e9629c0345f2eee85bf97ba5cf53e8255a65a294 build/GZ2P01/d_a_obj_kwheel01/d_a_obj_kwheel01.rel
@@ -454,7 +454,7 @@ bfdd51cf46e04bef3734492f32041cb826d5a5ab build/GZ2P01/d_a_obj_lbox/d_a_obj_lbox
9a00e27c61c427eac7c13370ff2f73a53fe83c08 build/GZ2P01/d_a_obj_lp/d_a_obj_lp.rel
e33d9d2453f2a0005e2257089e769cac043daa11 build/GZ2P01/d_a_obj_lv1Candle00/d_a_obj_lv1Candle00.rel
9ec2ed3811a7da54ab33104de55d5b65d1664be0 build/GZ2P01/d_a_obj_lv1Candle01/d_a_obj_lv1Candle01.rel
4573ec4c677bc9a6b33d68272d0e012e6f2c00fa build/GZ2P01/d_a_obj_lv2candle/d_a_obj_lv2candle.rel
4573ec4c677bc9a6b33d68272d0e012e6f2c00fa build/GZ2P01/d_a_obj_lv2Candle/d_a_obj_lv2Candle.rel
c08ea37e0771adfe6a2b20933324cc06b2e9ded3 build/GZ2P01/d_a_obj_lv3Candle/d_a_obj_lv3Candle.rel
19c8af6d6009dd75fea665a173ef445084443656 build/GZ2P01/d_a_obj_lv3Water/d_a_obj_lv3Water.rel
0fe444ca092907a293c0635b5b3b0cf5f095e7ca build/GZ2P01/d_a_obj_lv3Water2/d_a_obj_lv3Water2.rel
@@ -580,7 +580,7 @@ fac335dc152d7ccc9b840595163abf5b919baca4 build/GZ2P01/d_a_obj_ss_item/d_a_obj_s
37ffcbba505ed810c885d8aadc9454afd2422915 build/GZ2P01/d_a_obj_stairBlock/d_a_obj_stairBlock.rel
0a4215b1ce66a2e927eab78b0da233eb4895fec1 build/GZ2P01/d_a_obj_stick/d_a_obj_stick.rel
505a3b17890d065b07978ba4074bb05666f6dcef build/GZ2P01/d_a_obj_stone/d_a_obj_stone.rel
1b065b48f69493d4be6862c435cad4515f66f9f8 build/GZ2P01/d_a_obj_stonemark/d_a_obj_stonemark.rel
1b065b48f69493d4be6862c435cad4515f66f9f8 build/GZ2P01/d_a_obj_stoneMark/d_a_obj_stoneMark.rel
831a4005e4feb9e68e458becf3a85f6739b48b05 build/GZ2P01/d_a_obj_stopper/d_a_obj_stopper.rel
918314fbdffc925e21df35c51d02b2e75868760e build/GZ2P01/d_a_obj_stopper2/d_a_obj_stopper2.rel
b65d8eebb912571249f3046722fccbdc95bdc8db build/GZ2P01/d_a_obj_suisya/d_a_obj_suisya.rel
@@ -589,7 +589,7 @@ f62d3847b73273ddfa41942b63de9694d7dab16a build/GZ2P01/d_a_obj_swBallA/d_a_obj_s
3e27ad308bfbf288be9592794b167e581d1feff3 build/GZ2P01/d_a_obj_swBallB/d_a_obj_swBallB.rel
23483521ee13831025bcc978398a60a9498d367a build/GZ2P01/d_a_obj_swBallC/d_a_obj_swBallC.rel
073f2ec906fa877c1c8b75267d517515b20fa76b build/GZ2P01/d_a_obj_swLight/d_a_obj_swLight.rel
b576b86f8da31a501bcfc20a2a3fe51b03279b8a build/GZ2P01/d_a_obj_swallshutter/d_a_obj_swallshutter.rel
b576b86f8da31a501bcfc20a2a3fe51b03279b8a build/GZ2P01/d_a_obj_sWallShutter/d_a_obj_sWallShutter.rel
b53ddb7a8fb35b8b40d894f5bfe108851bf14c81 build/GZ2P01/d_a_obj_swchain/d_a_obj_swchain.rel
15c2f8488d479eb4196aa1db57b1a5e6e8425341 build/GZ2P01/d_a_obj_swhang/d_a_obj_swhang.rel
39017914424402d23d5b180452944bcd9f1492e1 build/GZ2P01/d_a_obj_sword/d_a_obj_sword.rel
@@ -688,7 +688,7 @@ d64ace890760d5beec337f0674319b298d2d1e07 build/GZ2P01/d_a_tag_bottle_item/d_a_t
6f6241d16ba53d44d2556727b47a882825d5c68b build/GZ2P01/d_a_tag_camera/d_a_tag_camera.rel
e30941ae5a722bd26cebfb7cc8845a5ee5b8b7fe build/GZ2P01/d_a_tag_chgrestart/d_a_tag_chgrestart.rel
e924ef3f906faeb26928392a23cb5d6fac9933af build/GZ2P01/d_a_tag_chkpoint/d_a_tag_chkpoint.rel
d4c36eeb04a523188d5cdbac1528b73fd93905ac build/GZ2P01/d_a_tag_cstasw/d_a_tag_cstasw.rel
d4c36eeb04a523188d5cdbac1528b73fd93905ac build/GZ2P01/d_a_tag_CstaSw/d_a_tag_CstaSw.rel
f5377e6d7c3f171b1274ea0c8bf98ae59a3f039c build/GZ2P01/d_a_tag_csw/d_a_tag_csw.rel
072b39bcf043937ba18c020f1a7555b91a2af9ef build/GZ2P01/d_a_tag_escape/d_a_tag_escape.rel
8d328465dbb384979a058da098c233adfdf00b96 build/GZ2P01/d_a_tag_event/d_a_tag_event.rel
+1 -1
View File
@@ -129,6 +129,6 @@ __vt__12daObjBATTA_c = .data:0x000001E8; // type:object size:0xC scope:global
__vt__12J3DFrameCtrl = .data:0x000001F4; // type:object size:0xC scope:global
__vt__16daObj_BattaHIO_c = .data:0x00000200; // type:object size:0xC scope:global
__global_destructor_chain = .bss:0x00000000; // type:object size:0x4 scope:global
l_HIOInit = .bss:0x00000008; // type:object size:0x1 data:byte scope:local
l_HIOInit = .bss:0x00000008; // type:object size:0x1 scope:local data:byte
@3769 = .bss:0x0000000C; // type:object size:0xC scope:local
l_HIO = .bss:0x00000018; // type:object size:0x10 scope:global align:4 data:float
@@ -91,6 +91,6 @@ __vt__8cM3dGSph = .data:0x00000090; // type:object size:0xC scope:global
__vt__15daObjGOMIKABE_c = .data:0x0000009C; // type:object size:0x28 scope:global
__vt__19daObjGOMIKABE_HIO_c = .data:0x000000C4; // type:object size:0xC scope:global
__global_destructor_chain = .bss:0x00000000; // type:object size:0x4 scope:global
l_HIOInit = .bss:0x00000008; // type:object size:0x1 data:byte scope:local
l_HIOInit = .bss:0x00000008; // type:object size:0x1 scope:local data:byte
@3761 = .bss:0x0000000C; // type:object size:0xC scope:local
l_HIO = .bss:0x00000018; // type:object size:0x8 scope:local data:byte
+1 -1
View File
@@ -50,6 +50,6 @@ l_daObj_Kita_Method = .data:0x00000000; // type:object size:0x20 scope:local
g_profile_OBJ_KITA = .data:0x00000020; // type:object size:0x30 scope:global
__vt__16daObj_Kita_HIO_c = .data:0x00000050; // type:object size:0xC scope:global
__global_destructor_chain = .bss:0x00000000; // type:object size:0x4 scope:global
l_HIOInit = .bss:0x00000008; // type:object size:0x1 data:byte scope:local
l_HIOInit = .bss:0x00000008; // type:object size:0x1 scope:local data:byte
@3764 = .bss:0x0000000C; // type:object size:0xC scope:local
l_HIO = .bss:0x00000018; // type:object size:0x18 scope:local data:byte
+1 -1
View File
@@ -88,7 +88,7 @@ __global_destructor_chain = .bss:0x00000000; // type:object size:0x4 scope:globa
@1012 = .bss:0x0000003C; // type:object size:0x1 scope:local
@1010 = .bss:0x00000040; // type:object size:0x1 scope:local
@1009 = .bss:0x00000044; // type:object size:0x1 scope:local
l_HIOInit = .bss:0x00000045; // type:object size:0x1 data:byte scope:local
l_HIOInit = .bss:0x00000045; // type:object size:0x1 scope:local data:byte
@3858 = .bss:0x00000048; // type:object size:0xC scope:local
l_HIO = .bss:0x00000054; // type:object size:0x14 scope:local data:byte
@3958 = .bss:0x00000068; // type:object size:0xC scope:local
@@ -84,4 +84,4 @@ lbl_267_rodata_90 = .rodata:0x00000090; // type:object size:0x14
@118817 = .data:0x000000FC; // type:object size:0x1B scope:local data:string
l_daDr_Method = .data:0x00000118; // type:object size:0x20 scope:global
g_profile_DR = .data:0x00000138; // type:object size:0x30 scope:global
lbl_267_data_168 = .data:0x00000168; // type:object size:0x4
lbl_267_data_168 = .data:0x00000168; // type:object size:0x3 data:string
@@ -48,4 +48,4 @@ lbl_268_rodata_4C = .rodata:0x0000004C; // type:object size:0x18
@116959 = .data:0x00000098; // type:object size:0x2A scope:local
l_daL7lowDr_Method = .data:0x000000C8; // type:object size:0x20 scope:global
g_profile_L7lowDr = .data:0x000000E8; // type:object size:0x30 scope:global
lbl_268_data_118 = .data:0x00000118; // type:object size:0x4
lbl_268_data_118 = .data:0x00000118; // type:object size:0x3 data:string
@@ -23,4 +23,4 @@ _dtors = .dtors:0x00000000; // type:label scope:global
@116877 = .data:0x000000C0; // type:object size:0x22 scope:local data:string
l_daE_BI_LEAF_Method = .data:0x000000E8; // type:object size:0x20 scope:global
g_profile_E_BI_LEAF = .data:0x00000108; // type:object size:0x30 scope:global
lbl_167_data_138 = .data:0x00000138; // type:object size:0x4
lbl_167_data_138 = .data:0x00000138; // type:object size:0x3 data:string
@@ -166,6 +166,6 @@ lbl_391_data_288 = .data:0x00000288; // type:object size:0x2C
@STRING@CreateHeap__12daObjBATTA_cFv@1 = .data:0x000005B8; // type:object size:0xF scope:local data:string
@STRING@CreateHeap__12daObjBATTA_cFv@0 = .data:0x000005C8; // type:object size:0x12 scope:local data:string
@STRING@CreateHeap__12daObjBATTA_cFv = .data:0x000005DC; // type:object size:0x4 scope:local data:string
lbl_391_data_5E0 = .data:0x000005E0; // type:object size:0x4
lbl_391_data_5E0 = .data:0x000005E0; // type:object size:0x3 data:string
lbl_391_bss_0 = .bss:0x00000000; // type:object size:0x1 data:byte
l_HIO = .bss:0x00000008; // type:object size:0x10 scope:global align:4 data:float
@@ -33,4 +33,4 @@ lbl_400_rodata_34 = .rodata:0x00000034; // type:object size:0x18
@116950 = .data:0x00000048; // type:object size:0x1C scope:local data:string
l_daObjBombf_Method = .data:0x00000068; // type:object size:0x20 scope:global
g_profile_Obj_Bombf = .data:0x00000088; // type:object size:0x30 scope:global
lbl_400_data_B8 = .data:0x000000B8; // type:object size:0x4
lbl_400_data_B8 = .data:0x000000B8; // type:object size:0x3 data:string
@@ -38,4 +38,4 @@ l_arcName = .data:0x0000000C; // type:object size:0x4 scope:global data:4byte
@114319 = .data:0x000000D0; // type:object size:0x1D scope:local data:string
l_daObjCrystal_Method = .data:0x000000F0; // type:object size:0x20 scope:global
g_profile_Obj_Crystal = .data:0x00000110; // type:object size:0x30 scope:global
lbl_420_data_140 = .data:0x00000140; // type:object size:0x4
lbl_420_data_140 = .data:0x00000140; // type:object size:0x3 data:string
@@ -28,4 +28,4 @@ lbl_92_rodata_1C = .rodata:0x0000001C; // type:object size:0x18
@116850 = .data:0x000000B8; // type:object size:0x22 scope:local data:string
l_daObj_Fmobj_Method = .data:0x000000E0; // type:object size:0x20 scope:global
g_profile_OBJ_FMOBJ = .data:0x00000100; // type:object size:0x30 scope:global
lbl_92_data_130 = .data:0x00000130; // type:object size:0x4
lbl_92_data_130 = .data:0x00000130; // type:object size:0x3 data:string
@@ -39,4 +39,4 @@ lbl_477_rodata_44 = .rodata:0x00000044; // type:object size:0x18
@118547 = .data:0x000000B8; // type:object size:0x21 scope:local data:string
l_daObj_Kage_Method = .data:0x000000E0; // type:object size:0x20 scope:global
g_profile_OBJ_KAGE = .data:0x00000100; // type:object size:0x30 scope:global
lbl_477_data_130 = .data:0x00000130; // type:object size:0x4
lbl_477_data_130 = .data:0x00000130; // type:object size:0x3 data:string
@@ -85,5 +85,5 @@ __vt__18mDoExt_3DlineMat_c = .data:0x000001B0; // type:object size:0x14 scope:gl
@114757 = .data:0x00000230; // type:object size:0xC scope:local
@114758 = .data:0x00000254; // type:object size:0x11 scope:local data:string
@STRING@createHeap__14daObjLndRope_cFv = .data:0x00000270; // type:object size:0x10 scope:local data:string
lbl_500_data_280 = .data:0x00000280; // type:object size:0x4
lbl_500_data_280 = .data:0x00000280; // type:object size:0x3 data:string
M_hio__14daObjLndRope_c = .bss:0x00000000; // type:object size:0x1C scope:global
@@ -35,4 +35,4 @@ __RTTI__11daObjProp_c = .data:0x000000C0; // type:object size:0x8 scope:global
@114278 = .data:0x000000C8; // type:object size:0xB scope:local data:string
@114279 = .data:0x000000E0; // type:object size:0x1F scope:local data:string
__RTTI__30request_of_phase_process_class = .data:0x00000100; // type:object size:0x8 scope:global
lbl_587_data_108 = .data:0x00000108; // type:object size:0x4
lbl_587_data_108 = .data:0x00000108; // type:object size:0x3 data:string
@@ -46,4 +46,4 @@ __RTTI__15daObjSnowSoup_c = .data:0x000000D0; // type:object size:0x8 scope:glob
@114384 = .data:0x000000D8; // type:object size:0xB scope:local data:string
@114385 = .data:0x000000F0; // type:object size:0x1F scope:local data:string
__RTTI__30request_of_phase_process_class = .data:0x00000110; // type:object size:0x8 scope:global
lbl_615_data_118 = .data:0x00000118; // type:object size:0x4
lbl_615_data_118 = .data:0x00000118; // type:object size:0x3 data:string
@@ -30,4 +30,4 @@ l_arcName = .data:0x00000008; // type:object size:0x4 scope:global data:4byte
@114296 = .data:0x00000054; // type:object size:0x19 scope:local data:string
l_daObjTMoon_Method = .data:0x00000070; // type:object size:0x20 scope:global
g_profile_Obj_TMoon = .data:0x00000090; // type:object size:0x30 scope:global
lbl_650_data_C0 = .data:0x000000C0; // type:object size:0x4
lbl_650_data_C0 = .data:0x000000C0; // type:object size:0x3 data:string
@@ -29,4 +29,4 @@ _dtors = .dtors:0x00000000; // type:label scope:global
@116867 = .data:0x00000148; // type:object size:0x22 scope:local data:string
l_daObj_Usaku_Method = .data:0x00000170; // type:object size:0x20 scope:global
g_profile_OBJ_USAKU = .data:0x00000190; // type:object size:0x30 scope:global
lbl_664_data_1C0 = .data:0x000001C0; // type:object size:0x4
lbl_664_data_1C0 = .data:0x000001C0; // type:object size:0x3 data:string
@@ -21,4 +21,4 @@ l_specName = .rodata:0x00000000; // type:object size:0x9 scope:global data:strin
@114404 = .data:0x000000C0; // type:object size:0x1B scope:local data:string
l_daSetBgObj_Method = .data:0x000000E0; // type:object size:0x20 scope:global
g_profile_SET_BG_OBJ = .data:0x00000100; // type:object size:0x30 scope:global
lbl_26_data_130 = .data:0x00000130; // type:object size:0x4
lbl_26_data_130 = .data:0x00000130; // type:object size:0x3 data:string
+1 -1
View File
@@ -25,4 +25,4 @@ lbl_55_rodata_20 = .rodata:0x00000020; // type:object size:0x14
@114241 = .data:0x0000004C; // type:object size:0xC scope:local data:string
daSus_METHODS = .data:0x00000058; // type:object size:0x20 scope:global
g_profile_SUSPEND = .data:0x00000078; // type:object size:0x30 scope:global
lbl_55_data_A8 = .data:0x000000A8; // type:object size:0x4
lbl_55_data_A8 = .data:0x000000A8; // type:object size:0x3 data:string
+14 -5
View File
@@ -127,6 +127,12 @@ parser.add_argument(
type=Path,
help="path to sjiswrap.exe (optional)",
)
parser.add_argument(
"--ninja",
metavar="BINARY",
type=Path,
help="path to ninja binary (optional)"
)
parser.add_argument(
"--verbose",
action="store_true",
@@ -171,6 +177,7 @@ config.compilers_path = args.compilers
config.generate_map = args.map
config.non_matching = args.non_matching
config.sjiswrap_path = args.sjiswrap
config.ninja_path = args.ninja
config.progress = args.progress
if not is_windows():
config.wrapper = args.wrapper
@@ -180,11 +187,11 @@ if not config.non_matching:
# Tool versions
config.binutils_tag = "2.42-1"
config.compilers_tag = "20250520"
config.dtk_tag = "v1.5.1"
config.objdiff_tag = "v3.0.0-beta.8"
config.sjiswrap_tag = "v1.2.1"
config.wibo_tag = "0.6.16"
config.compilers_tag = "20250812"
config.dtk_tag = "v1.6.2"
config.objdiff_tag = "v3.0.0-beta.14"
config.sjiswrap_tag = "v1.2.2"
config.wibo_tag = "0.7.0"
# Project
config.config_path = Path("config") / config.version / "config.yml"
@@ -256,6 +263,8 @@ if args.debug:
cflags_base.extend(["-sym on", "-DDEBUG=1"])
else:
cflags_base.append("-DNDEBUG=1")
# Warning flags
if args.warn == "all":
cflags_base.append("-W all")
elif args.warn == "off":
+11 -4
View File
@@ -91,6 +91,7 @@ TOOLS: Dict[str, Callable[[str], str]] = {
"wibo": wibo_url,
}
def download(url, response, output) -> None:
if url.endswith(".zip"):
data = io.BytesIO(response.read())
@@ -107,6 +108,7 @@ def download(url, response, output) -> None:
st = os.stat(output)
os.chmod(output, st.st_mode | stat.S_IEXEC)
def main() -> None:
parser = argparse.ArgumentParser()
parser.add_argument("tool", help="Tool name")
@@ -128,12 +130,17 @@ def main() -> None:
try:
import certifi
import ssl
except:
print("\"certifi\" module not found. Please install it using \"python -m pip install certifi\".")
except ImportError:
print(
'"certifi" module not found. Please install it using "python -m pip install certifi".'
)
return
with urllib.request.urlopen(req, context=ssl.create_default_context(cafile=certifi.where())) as response:
with urllib.request.urlopen(
req, context=ssl.create_default_context(cafile=certifi.where())
) as response:
download(url, response, output)
if __name__ == "__main__":
main()
+8 -1
View File
@@ -1545,13 +1545,20 @@ def generate_objdiff_config(
"build_target": False,
"watch_patterns": [
"*.c",
"*.cc",
"*.cp",
"*.cpp",
"*.cxx",
"*.c++",
"*.h",
"*.hh",
"*.hp",
"*.hpp",
"*.inc",
"*.hxx",
"*.h++",
"*.pch",
"*.pch++",
"*.inc",
"*.py",
"*.yml",
"*.txt",