diff options
| author | Anghelo Carvajal <angheloalf95@gmail.com> | 2026-03-09 17:04:17 -0300 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2026-03-09 21:04:17 +0100 |
| commit | bc6d153a21e3fc7a729ea2154f2ff16111d5e704 (patch) | |
| tree | 639455495082c3830f7caffc9881b470f99eba21 /src/code/sys_debug_controller.c | |
| parent | e66e6f8f1da067260ced7ec9abd415011cfab8bc (diff) | |
Allow `atblgen` to process `sequence_order.in` with empty lines in between lines for building on Macos (#2718)
The present changes are a direct copy-paste from https://github.com/zeldaret/mm/pull/1850
This fixes building on macos due to a kinda specific issue with Apple clang.
When trying to build on Macos (specifically MacOS 12, Monteray with Apple clang 13.0.0 (clang-1300.0.29.30), idk if other versions have this issue too) `make` stops with the following error from `atblgen`:
```
Failed to match line 1: ""
regexec error: "regexec() failed to match"
Error: Malformed build/n64-us/assets/audio/sequence_order.in?
```
`atblgen` makes the assumption that the `sequence_order.in` file has no extra data, spaces, empty lines, etc. but the file somehow ends up having empty lines between each line on macos.
This file is created by using the C preprocessor to process `include/tables/sequence_table.h`.
In normal circumstances this file should look like this snip,
```
(Sequence_0,NA_BGM_GENERAL_SFX)
(Sequence_1,NA_BGM_AMBIENCE)
(Sequence_2,NA_BGM_TERMINA_FIELD)
(Sequence_3,NA_BGM_CHASE)
(Sequence_4,NA_BGM_MAJORAS_THEME)
```
but it ends up looking like this instead
```
(Sequence_0,NA_BGM_GENERAL_SFX)
(Sequence_1,NA_BGM_AMBIENCE)
(Sequence_2,NA_BGM_TERMINA_FIELD)
(Sequence_3,NA_BGM_CHASE)
(Sequence_4,NA_BGM_MAJORAS_THEME)
```
which `atblgen` doesn't like.
I believe this happens because there are lines with comments between each macro in [`sequence_table.h`](https://github.com/zeldaret/mm/blob/0877ce4adf28a8e73e05c3c58682273b8bf28749/include/tables/sequence_table.h) and for some reason this Apple clang version decided to preserve those empty lines
The fix just makes `atblgen` skip empty lines.
I threw `atblgen` to valgrind to check the fix was working as intended and noted a bunch of memory that was being free before exit, so I fixed them.
I also noted the tools/audio makefile was not using `OPTFLAGS` when building those tools, so I fixed that too.
Diffstat (limited to 'src/code/sys_debug_controller.c')
0 files changed, 0 insertions, 0 deletions
