1
0
mirror of https://github.com/zeldaret/oot.git synced 2024-09-21 04:24:43 +00:00

Move roms to build folder (#1651)

* Move built roms to build directory, along with rename map and linker script

* PR review

* sym_info fix

* Revert docs/tutorial/data.md change
This commit is contained in:
Derek Hensley 2024-02-02 13:34:20 -08:00 committed by GitHub
parent 8db76a27da
commit 5785c7adfb
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
12 changed files with 24 additions and 22 deletions

View File

@ -187,9 +187,11 @@ DISASM_FLAGS += --config-dir $(DISASM_DATA_DIR) --symbol-addrs $(DISASM_DATA_DIR
#### Files ####
# ROM image
ROMC := oot-$(VERSION)-compressed.z64
ROM := oot-$(VERSION).z64
ELF := $(ROM:.z64=.elf)
ROM := $(BUILD_DIR)/oot-$(VERSION).z64
ROMC := $(ROM:.z64=-compressed.z64)
ELF := $(ROM:.z64=.elf)
MAP := $(ROM:.z64=.map)
LDSCRIPT := $(ROM:.z64=.ld)
# description of ROM segments
SPEC := spec
@ -342,7 +344,7 @@ ifneq ($(COMPARE),0)
endif
clean:
$(RM) -r $(ROMC) $(ROM) $(ELF) $(BUILD_DIR)
$(RM) -r $(BUILD_DIR)
assetclean:
$(RM) -r $(ASSET_BIN_DIRS)
@ -392,8 +394,8 @@ $(ROMC): $(ROM) $(ELF) $(BUILD_DIR)/compress_ranges.txt
$(PYTHON) tools/compress.py --in $(ROM) --out $@ --dma-range `./tools/dmadata_range.sh $(NM) $(ELF)` --compress `cat $(BUILD_DIR)/compress_ranges.txt` --threads $(N_THREADS)
$(PYTHON) -m ipl3checksum sum --cic 6105 --update $@
$(ELF): $(TEXTURE_FILES_OUT) $(ASSET_FILES_OUT) $(O_FILES) $(OVL_RELOC_FILES) $(BUILD_DIR)/ldscript.txt $(BUILD_DIR)/undefined_syms.txt
$(LD) -T $(BUILD_DIR)/undefined_syms.txt -T $(BUILD_DIR)/ldscript.txt --no-check-sections --accept-unknown-input-arch --emit-relocs -Map $(BUILD_DIR)/z64.map -o $@
$(ELF): $(TEXTURE_FILES_OUT) $(ASSET_FILES_OUT) $(O_FILES) $(OVL_RELOC_FILES) $(LDSCRIPT) $(BUILD_DIR)/undefined_syms.txt
$(LD) -T $(LDSCRIPT) -T $(BUILD_DIR)/undefined_syms.txt --no-check-sections --accept-unknown-input-arch --emit-relocs -Map $(MAP) -o $@
## Order-only prerequisites
# These ensure e.g. the O_FILES are built before the OVL_RELOC_FILES.
@ -410,7 +412,7 @@ $(O_FILES): | asset_files
$(BUILD_DIR)/$(SPEC): $(SPEC)
$(CPP) $(CPPFLAGS) $< | $(SPEC_REPLACE_VARS) > $@
$(BUILD_DIR)/ldscript.txt: $(BUILD_DIR)/$(SPEC)
$(LDSCRIPT): $(BUILD_DIR)/$(SPEC)
$(MKLDSCRIPT) $< $@
$(BUILD_DIR)/undefined_syms.txt: undefined_syms.txt

View File

@ -127,16 +127,16 @@ Make sure your path to the project is not too long, otherwise this process may e
make
```
If all goes well, a new ROM called "oot-gc-eu-mq-dbg.z64" should be built and the following text should be printed:
If all goes well, a new ROM should be built at `build/gc-eu-mq-dbg/oot-gc-eu-mq-dbg.z64`, and the following text printed:
```bash
oot-gc-eu-mq-dbg.z64: OK
build/gc-eu-mq-dbg/oot-gc-eu-mq-dbg.z64: OK
```
If you instead see the following:
```bash
oot-gc-eu-mq-dbg.z64: FAILED
build/gc-eu-mq-dbg/oot-gc-eu-mq-dbg.z64: FAILED
md5sum: WARNING: 1 computed checksum did NOT match
```

View File

@ -1 +1 @@
5831385a7f216370cdbea55616b12fed oot-gc-eu-mq-dbg-compressed.z64
5831385a7f216370cdbea55616b12fed build/gc-eu-mq-dbg/oot-gc-eu-mq-dbg-compressed.z64

View File

@ -1 +1 @@
f0b7f35375f9cc8ca1b2d59d78e35405 oot-gc-eu-mq-dbg.z64
f0b7f35375f9cc8ca1b2d59d78e35405 build/gc-eu-mq-dbg/oot-gc-eu-mq-dbg.z64

View File

@ -1 +1 @@
1618403427e4344a57833043db5ce3c3 oot-gc-eu-mq-compressed.z64
1618403427e4344a57833043db5ce3c3 build/gc-eu-mq/oot-gc-eu-mq-compressed.z64

View File

@ -1 +1 @@
1a438f4235f8038856971c14a798122a oot-gc-eu-mq.z64
1a438f4235f8038856971c14a798122a build/gc-eu-mq/oot-gc-eu-mq.z64

View File

@ -3,8 +3,8 @@ def add_custom_arguments(parser):
def apply(config, args):
version = args.oot_version
config['mapfile'] = f'build/{version}/z64.map'
config['myimg'] = f'oot-{version}.z64'
config['mapfile'] = f'build/{version}/oot-{version}.map'
config['myimg'] = f'build/{version}/oot-{version}.z64'
config['baseimg'] = f'baseroms/{version}/baserom-decompressed.z64'
config['makeflags'] = [f'VERSION={version}']
config['source_directories'] = ['src', 'include', 'spec']

View File

@ -52,7 +52,7 @@ code. In order to keep the code readable, we should try to minimize the amount o
```
where `N` is the number of cores on your machine. This will build into
`build/gc-eu-mq` and produce `oot-gc-eu-mq.z64`.
`build/gc-eu-mq` and produce `build/gc-eu-mq/oot-gc-eu-mq.z64`.
If you later want to delete all output files, run

View File

@ -37,8 +37,8 @@ def firstDiffMain():
buildFolder = Path("build") / args.oot_version
BUILTROM = Path(f"oot-{args.oot_version}.z64")
BUILTMAP = buildFolder / "z64.map"
BUILTROM = buildFolder / f"oot-{args.oot_version}.z64"
BUILTMAP = buildFolder / f"oot-{args.oot_version}.map"
EXPECTEDROM = Path(f"baseroms/{args.oot_version}/baserom-decompressed.z64")
EXPECTEDMAP = "expected" / BUILTMAP

View File

@ -61,7 +61,7 @@ def IsCFile(objfile):
srcfile = objfile.strip().replace("build/gc-eu-mq-dbg/", "").replace(".o", ".c")
return os.path.isfile(srcfile)
mapFile = ReadAllLines("build/gc-eu-mq-dbg/z64.map")
mapFile = ReadAllLines("build/gc-eu-mq-dbg/oot-gc-eu-mq-dbg.map")
curSegment = None
src = 0
code = 0

View File

@ -14,7 +14,7 @@ def symInfoMain():
args = parser.parse_args()
BUILTMAP = Path("build") / args.oot_version / "z64.map"
BUILTMAP = Path("build") / args.oot_version / f"oot-{args.oot_version}.map"
mapPath = BUILTMAP
if args.use_expected:

View File

@ -162,7 +162,7 @@ parser.add_argument("--num-out", help="number of functions to display", type=int
args = parser.parse_args()
rom_bytes = read_rom()
map_syms = parse_map(build_dir + "z64.map")
map_syms = parse_map(build_dir + "oot-gc-eu-mq-dbg.map")
map_offsets = get_map_offsets(map_syms)
s_files = get_all_s_files()