wwarthen / RomWBW

System Software for Z80/Z180/Z280 Computers
GNU Affero General Public License v3.0
331 stars 96 forks source link

Build Fail after FZ80 support added #407

Closed kiwisincebirth closed 3 weeks ago

kiwisincebirth commented 3 weeks ago

I am getting a build error in the master branch, after updating from the GIT repo.

I am running on Mac OSX (sonama), and it worked previously on the main release build, prior to the FZ80 changes. When I execute the command (sc126m is my own config file)

make ROM_PLATFORM=SCZ180 ROM_CONFIG=sc126m

It mostly appears to build except for the error (below), at the end of build, after the main ROM file has been built. I get same error regardless of the shell ZSH (default), or Bash both git the same error.


Copying SCZ180_sc126m.rom to ../../Binary
Copying SCZ180_sc126m.com to ../../Binary
Copying SCZ180_sc126m.upd to ../../Binary
/Applications/Xcode.app/Contents/Developer/usr/bin/make --directory ZRC 
rm -f /tmp/casefn.cache
/Applications/Xcode.app/Contents/Developer/usr/bin/make --directory Z1RCC 
rm -f /tmp/casefn.cache
/Applications/Xcode.app/Contents/Developer/usr/bin/make --directory ZZRCC 
rm -f /tmp/casefn.cache
/Applications/Xcode.app/Contents/Developer/usr/bin/make --directory ZRC512 
rm -f /tmp/casefn.cache
/Applications/Xcode.app/Contents/Developer/usr/bin/make --directory FZ80 
srec_cat -generate 0x0 0x100000 --constant 0x00 -o temp.dat -binary
srec_cat temp.dat -binary -exclude 0x1B8 0x200 fz80_ptbl.bin -binary -offset 0x1B8 -o temp.dat -binary
srec_cat temp.dat -binary -exclude 0x80000 0xE0000 ../../Binary/FZ80_std.rom -binary -offset 0x80000 -o temp.dat -binary
srec_cat: ../../Binary/FZ80_std.rom: open: No such file or directory
make[2]: *** [hd1k_fz80_prefix.dat] Error 1
make[1]: *** [fz80] Error 2
make: *** [source] Error 2
kiwisincebirth commented 3 weeks ago

The issue appears to be in the FZ80/Makefile, as it is missing the conditional logic found in other similar Makefile's

Replacing this

OBJECTS := $(HD1KFZ80PREFIX) $(HD1KFZ80COMBOIMG)

with this. seems to resolve the issue, noting I am not a Makefile developer in any way.


OBJECTS :=

ifneq ($(wildcard $(FZ80ROM)),)
    OBJECTS += $(HD1KFZ80PREFIX) $(HD1KFZ80COMBOIMG)
endif
wwarthen commented 3 weeks ago

Thank you @kiwisincebirth.

Yes, you are exactly right. A fix for this will be checked in shortly.

Thanks, Wayne

wwarthen commented 3 weeks ago

I have checked in the fix for this (commit 9df8773) and posted RomWBW Development Snapshot v3.5.0-dev.69.

I will leave this issue open for a day or so to allow for any further feedback.

Thanks for reporting this @kiwisincebirth.

-Wayne

kiwisincebirth commented 3 weeks ago

I have tested, and believe this fixes the issue. Thanks for prompt update. Happy to close this issue.

Unrelated Question: I have been working on some documentation improvements / consolidation, primarily around ZSDOS date and time stamping, mainly in the main user guide. Should I raise an issue for this? Or is ok to raise a PR directly?

wwarthen commented 3 weeks ago

Based on the feedback from @kiwisincebirth, I am closing this issue.

Mark, I would be thrilled to get some better documentation of date stamping in the User Guide. It is not necessary to raise an issue for this unless you want to discuss any of the changes you are working on (up to you). A PR is fine with the understanding that I will review it for consistency and may ask for changes.

With repect to the documentation, I want to make sure you are up to speed on the process for maintaining and building the documentation. In brief, the source of the documentation is in Markdown in the /Source/Doc folder (.md files). All documentation changes must be made in Source/Doc. An offline buld process consisting of gpp -> Pandoc -> MiKTeX is used to generate the final dcouments in the /Doc folder. Any changes you make should be in /Source/Doc. Let me know if you need any assistance with the document generation process. If so, I suggest opening a new issue since I am closing this one.

Thank you!

Wayne