Compare commits

...

1 commit

Author SHA1 Message Date
Jeff Epler
cc9ac29f0f Implement make toolchain
.. this will download and build the 'cc65' and 'exomizer' prerequisites,
and then automatically pick them up on a subsequent 'make'.
2017-07-17 19:57:08 -05:00
6 changed files with 42 additions and 1 deletions

1
.gitignore vendored
View file

@ -1,3 +1,4 @@
*.o
*.prg
*.bin
bin

6
.gitmodules vendored Normal file
View file

@ -0,0 +1,6 @@
[submodule "cc65"]
path = cc65
url = https://github.com/cc65/cc65
[submodule "exomizer"]
path = exomizer
url = https://github.com/bitshifters/exomizer

View file

@ -1,3 +1,5 @@
export PATH:= $(abspath bin):$(PATH)
.PHONY: all
all: 80columns-compressed.prg 80c2-compressed.prg 80c3-compressed.prg 80c4-compressed.prg
all: charset.prg charset2.prg charset3.prg charset4.prg
@ -58,3 +60,30 @@ update-font-images: charset.bin charset2.bin charset3.bin charset4.bin mkfontimg
.PHONY: clean
clean:
rm -f *.prg *.bin *.o 80columns.d64
.PHONY: toolchain
toolchain: toolchain-cc65 toolchain-exomizer
.PHONY: toolchain-cc65
toolchain-cc65:
[ -d cc65/src ] || git submodule update --init cc65
$(MAKE) -C cc65 CC=cc bin
mkdir -p bin
cp cc65/bin/ca65 bin/
cp cc65/bin/ld65 bin/
.PHONY: toolchain-exomizer
toolchain-exomizer:
[ -d exomizer/exomizer2/src ] || git submodule update --init exomizer
$(MAKE) -C exomizer/exomizer2/src CFLAGS="-Wall -Wstrict-prototypes -pedantic -O3"
mkdir -p bin
cp exomizer/exomizer2/src/exomizer bin/
# have to do this, or git will report untracked files
(cd exomizer && git clean -dxf)

View file

@ -8,7 +8,10 @@ The code is based on 80COLUMNS.PRG by an unknown author. It has been reverse-eng
## Building
Building requires a UNIX environment and [cc65](https://github.com/cc65/cc65) and [exomizer](https://github.com/bitshifters/exomizer). Running `make` will produce `80columns-compressed.prg`, which is about 2.2 KB in size and can be started using `LOAD`/`RUN`.
Building requires a UNIX environment and [cc65](https://github.com/cc65/cc65) and [exomizer](https://github.com/bitshifters/exomizer).
Running `make toolchain` will download and build cc65 and exomizer, assuming that you have a basic C development environment available.
(If your system has packages of cc65 or exomizer, it is probably better to use those, e.g., with `brew install cc65 exomizer` on MacOS)
Running `make` will produce `80columns-compressed.prg`, which is about 2.2 KB in size and can be started using `LOAD`/`RUN`.
## Features

1
cc65 Submodule

@ -0,0 +1 @@
Subproject commit 6de78c536f78bc47129a7d4da4ad10f7e3a27b8f

1
exomizer Submodule

@ -0,0 +1 @@
Subproject commit 2426d97207c8dff23cd2a94cc768c8be87a7b5d0