aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJuan J. Martinez <jjm@usebox.net>2021-10-02 20:31:11 +0100
committerJuan J. Martinez <jjm@usebox.net>2021-10-02 20:31:13 +0100
commit2d4ddb1820122cd8e7d42185f2ea80330c63d4f6 (patch)
tree0b82a0c52f9df85961265365b8c5e4e949b5e83c
parent5763dc7aa0b0fc44d9776f582b692d086f8b5b6d (diff)
downloadubox-msx-lib-2d4ddb1820122cd8e7d42185f2ea80330c63d4f6.tar.gz
ubox-msx-lib-2d4ddb1820122cd8e7d42185f2ea80330c63d4f6.zip
Introduced config.env
One config to rule the whole build system and the tests.
-rw-r--r--config.env1
-rw-r--r--game/src/Makefile7
-rw-r--r--tests/Makefile3
-rwxr-xr-xtests/test_rom.py4
4 files changed, 9 insertions, 6 deletions
diff --git a/config.env b/config.env
new file mode 100644
index 0000000..24bc9bb
--- /dev/null
+++ b/config.env
@@ -0,0 +1 @@
+ROM_MAX=0x8000
diff --git a/game/src/Makefile b/game/src/Makefile
index 6ac7a0a..e42313d 100644
--- a/game/src/Makefile
+++ b/game/src/Makefile
@@ -1,12 +1,11 @@
TARGET := game
+include ../../config.env
+
CODE := 0x4000
# leaves 222 bytes for AKM player buffer
DATA := 0xc0de
-# HEX, will fill with 0
-ROM_MAX := 8000
-
OUTPUT := ../build
OBJS := $(patsubst %.c,$(OUTPUT)/%.rel,$(wildcard *.c)) $(OUTPUT)/akm.rel
UBOX_LIBS := $(wildcard ../../lib/*.lib)
@@ -19,7 +18,7 @@ CFLAGS := -mz80 --Werror -I../../include -I../generated --fsigned-char --std-sdc
LDFLAGS := -L../../lib -L. --no-std-crt0 --fomit-frame-pointer
all: $(OUTPUT)/$(TARGET).rom
- @../../tools/chksize 8000 4000 $(OUTPUT)/$(TARGET).map
+ @../../tools/chksize $(ROM_MAX) 4000 $(OUTPUT)/$(TARGET).map
@cp ../bin/$(TARGET).rom ../../bin
openmsx: all
diff --git a/tests/Makefile b/tests/Makefile
index 6c1a9a4..2d741fa 100644
--- a/tests/Makefile
+++ b/tests/Makefile
@@ -1,6 +1,9 @@
default:
$(error Please use the Makefile from root directory)
+include ../config.env
+export $(shell sed 's/=.*//' ../config.env)
+
TESTS := $(wildcard test_*.py)
test:
diff --git a/tests/test_rom.py b/tests/test_rom.py
index a2148e1..d980dad 100755
--- a/tests/test_rom.py
+++ b/tests/test_rom.py
@@ -2,13 +2,13 @@
import unittest
import struct
-from os import path
+from os import path, environ
class TestRom(unittest.TestCase):
"""Test that the generated game ROM is correct."""
- ROM_SIZE = 0x8000
+ ROM_SIZE = int(environ.get("ROM_MAX", 0), 16)
@classmethod
def setUpClass(cls):