mirror of
https://gitlab.com/xCrystal/pokecrystal-board.git
synced 2024-11-16 11:27:33 -08:00
Use a separate build object to check the rgbds version
rgbdscheck.o is built without passing potentially non-backwards-compatible flags to rgbasm. Resolves #710.
This commit is contained in:
parent
22615cecc5
commit
bfc6612cbf
7
Makefile
7
Makefile
@ -50,7 +50,7 @@ crystal11: pokecrystal11.gbc
|
|||||||
crystal-au: pokecrystal-au.gbc
|
crystal-au: pokecrystal-au.gbc
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
rm -f $(roms) $(crystal_obj) $(crystal11_obj) $(crystal_au_obj) $(roms:.gbc=.map) $(roms:.gbc=.sym)
|
rm -f $(roms) $(crystal_obj) $(crystal11_obj) $(crystal_au_obj) $(roms:.gbc=.map) $(roms:.gbc=.sym) rgbdscheck.o
|
||||||
find gfx \( -name "*.[12]bpp" -o -name "*.lz" -o -name "*.gbcpal" -o -name "*.sgb.tilemap" \) -delete
|
find gfx \( -name "*.[12]bpp" -o -name "*.lz" -o -name "*.gbcpal" -o -name "*.sgb.tilemap" \) -delete
|
||||||
find gfx/pokemon -mindepth 1 ! -path "gfx/pokemon/unown/*" \( -name "bitmask.asm" -o -name "frames.asm" -o -name "front.animated.tilemap" -o -name "front.dimensions" \) -delete
|
find gfx/pokemon -mindepth 1 ! -path "gfx/pokemon/unown/*" \( -name "bitmask.asm" -o -name "frames.asm" -o -name "front.animated.tilemap" -o -name "front.dimensions" \) -delete
|
||||||
$(MAKE) clean -C tools/
|
$(MAKE) clean -C tools/
|
||||||
@ -71,11 +71,14 @@ $(crystal_obj): RGBASMFLAGS +=
|
|||||||
$(crystal11_obj): RGBASMFLAGS += -D _CRYSTAL11
|
$(crystal11_obj): RGBASMFLAGS += -D _CRYSTAL11
|
||||||
$(crystal_au_obj): RGBASMFLAGS += -D _CRYSTAL11 -D _CRYSTAL_AU
|
$(crystal_au_obj): RGBASMFLAGS += -D _CRYSTAL11 -D _CRYSTAL_AU
|
||||||
|
|
||||||
|
rgbdscheck.o: rgbdscheck.asm
|
||||||
|
$(RGMASM) -o $@ $<
|
||||||
|
|
||||||
# The dep rules have to be explicit or else missing files won't be reported.
|
# The dep rules have to be explicit or else missing files won't be reported.
|
||||||
# As a side effect, they're evaluated immediately instead of when the rule is invoked.
|
# As a side effect, they're evaluated immediately instead of when the rule is invoked.
|
||||||
# It doesn't look like $(shell) can be deferred so there might not be a better way.
|
# It doesn't look like $(shell) can be deferred so there might not be a better way.
|
||||||
define DEP
|
define DEP
|
||||||
$1: $2 $$(shell tools/scan_includes $2)
|
$1: $2 $$(shell tools/scan_includes $2) | rgbdscheck.o
|
||||||
$$(RGBASM) $$(RGBASMFLAGS) -o $$@ $$<
|
$$(RGBASM) $$(RGBASMFLAGS) -o $$@ $$<
|
||||||
endef
|
endef
|
||||||
|
|
||||||
|
@ -1,7 +1,3 @@
|
|||||||
if __RGBDS_MAJOR__ <= 0 && __RGBDS_MINOR__ < 4
|
|
||||||
fail "pokecrystal requires rgbds 0.4.0 or newer."
|
|
||||||
endc
|
|
||||||
|
|
||||||
INCLUDE "charmap.asm"
|
INCLUDE "charmap.asm"
|
||||||
|
|
||||||
INCLUDE "macros.asm"
|
INCLUDE "macros.asm"
|
||||||
|
12
rgbdscheck.asm
Normal file
12
rgbdscheck.asm
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
; pokecrystal requires rgbds 0.4.0 or newer.
|
||||||
|
MAJOR EQU 0
|
||||||
|
MINOR EQU 4
|
||||||
|
PATCH EQU 0
|
||||||
|
|
||||||
|
if !DEF(__RGBDS_MAJOR__) || !DEF(__RGBDS_MINOR__) || !DEF(__RGBDS_PATCH__)
|
||||||
|
fail "pokecrystal requires rgbds {MAJOR}.{MINOR}.{PATCH} or newer."
|
||||||
|
elif (__RGBDS_MAJOR__ < MAJOR) || \
|
||||||
|
(__RGBDS_MAJOR__ == MAJOR && __RGBDS_MINOR__ < MINOR) || \
|
||||||
|
(__RGBDS_MAJOR__ == MAJOR && __RGBDS_MINOR__ == MINOR && __RGBDS_PATCH__ < PATCH)
|
||||||
|
fail "pokecrystal requires rgbds {MAJOR}.{MINOR}.{PATCH} or newer."
|
||||||
|
endc
|
Loading…
Reference in New Issue
Block a user