stardot / beebasm

A portable 6502 assembler with BBC Micro style syntax
http://www.retrosoftware.co.uk/wiki/index.php/BeebAsm
GNU General Public License v3.0
83 stars 26 forks source link

Add cmake build configuration #54

Closed davel closed 3 years ago

davel commented 3 years ago

Hello,

I've been doing some work on packaging beebasm. I've found that the current Makefile does not play nicely with Debian. It doesn't handle installation and it ignores the CFLAGS environment variable.

As the build is pretty straightforward, rather than patching Makefile, I have added a CMakeLists.txt. I have also added a man page, and a GitHub workflow to ensure both make and cmake both work.

ZornsLemma commented 3 years ago

Thanks for this - I've merged it to proposed-updates, which will hopefully become beebasm 1.10 in the near-ish future. If you particularly need this on master let me know and I'll raise it over on stardot (where beebasm development is discussed). It's nice to see a man page for beebasm too!

The action seems to be failing because github is deprecating Ubuntu 16.04 - should we update this? I'm not very familiar with github actions so I didn't want to just go in and fiddle with it.

davel commented 3 years ago

Thank you!

I took a look at the failure. It was failing because of a warning produced by clang, which is the default compiler on OSX. I have made a follow-up PR (against proposed-updates), which fixes this warning and also removes Ubuntu 16.04. See https://github.com/stardot/beebasm/pull/55

ZornsLemma commented 3 years ago

That's brilliant, thanks for taking a look at that so quickly. I've merged the new PR and it all looks good - while a little scary, I'm sure having the automated checks on future builds will be really helpful. :-)