mirror of
https://github.com/gbdev/rgbds.git
synced 2025-11-20 18:22:07 +00:00
build: merge everything to a single top-level Makefile
Signed-off-by: Vegard Nossum <vegard.nossum@gmail.com>
This commit is contained in:
6
.gitignore
vendored
6
.gitignore
vendored
@@ -1,3 +1,9 @@
|
|||||||
|
# programs
|
||||||
|
rgbasm
|
||||||
|
rgbfix
|
||||||
|
xlib
|
||||||
|
xlink
|
||||||
|
|
||||||
*.o
|
*.o
|
||||||
|
|
||||||
# indent backup files
|
# indent backup files
|
||||||
|
|||||||
65
Makefile
65
Makefile
@@ -1,11 +1,60 @@
|
|||||||
all:
|
all:
|
||||||
make -C src/asm rgbasm
|
|
||||||
make -C src/lib xlib
|
rgbasm_obj := \
|
||||||
make -C src/link xlink
|
src/asm/alloca.o \
|
||||||
make -C src/rgbfix rgbfix
|
src/asm/asmy.o \
|
||||||
|
src/asm/fstack.o \
|
||||||
|
src/asm/globlex.o \
|
||||||
|
src/asm/lexer.o \
|
||||||
|
src/asm/main.o \
|
||||||
|
src/asm/math.o \
|
||||||
|
src/asm/output.o \
|
||||||
|
src/asm/rpn.o \
|
||||||
|
src/asm/symbol.o \
|
||||||
|
src/asm/gameboy/locallex.o
|
||||||
|
|
||||||
|
xlib_obj := \
|
||||||
|
src/lib/library.o \
|
||||||
|
src/lib/main.o
|
||||||
|
|
||||||
|
xlink_obj := \
|
||||||
|
src/link/assign.o \
|
||||||
|
src/link/library.o \
|
||||||
|
src/link/main.o \
|
||||||
|
src/link/mapfile.o \
|
||||||
|
src/link/object.o \
|
||||||
|
src/link/output.o \
|
||||||
|
src/link/patch.o \
|
||||||
|
src/link/symbol.o
|
||||||
|
|
||||||
|
rgbfix_obj := \
|
||||||
|
src/rgbfix/main.o
|
||||||
|
|
||||||
|
all: rgbasm xlib xlink rgbfix
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
make -C src/asm clean
|
rm -rf rgbasm $(rgbasm_obj)
|
||||||
make -C src/lib clean
|
rm -rf xlib $(xlib_obj)
|
||||||
make -C src/link clean
|
rm -rf xlink $(xlink_obj)
|
||||||
make -C src/rgbfix clean
|
rm -rf rgbfix $(rgbfix_obj)
|
||||||
|
|
||||||
|
rgbasm: $(rgbasm_obj)
|
||||||
|
gcc -Wall -o $@ $^ -lm
|
||||||
|
|
||||||
|
xlib: $(xlib_obj)
|
||||||
|
gcc -Wall -o $@ $^
|
||||||
|
|
||||||
|
xlink: $(xlink_obj)
|
||||||
|
gcc -Wall -o $@ $^
|
||||||
|
|
||||||
|
rgbfix: $(rgbfix_obj)
|
||||||
|
gcc -Wall -o $@ $^
|
||||||
|
|
||||||
|
.c.o:
|
||||||
|
gcc -Wall -DGAMEBOY -Iinclude -Iinclude/asm/gameboy -g -c -o $@ $<
|
||||||
|
|
||||||
|
.y.c:
|
||||||
|
bison -d -o $@ $^
|
||||||
|
|
||||||
|
src/asm/asmy.y: src/asm/yaccprt1.y src/asm/gameboy/yaccprt2.y src/asm/yaccprt3.y src/asm/gameboy/yaccprt4.y
|
||||||
|
cat $^ > $@
|
||||||
|
|||||||
4
src/asm/.gitignore
vendored
4
src/asm/.gitignore
vendored
@@ -1,5 +1,3 @@
|
|||||||
# executable
|
asmy.c
|
||||||
rgbasm
|
|
||||||
|
|
||||||
asmy.h
|
asmy.h
|
||||||
asmy.y
|
asmy.y
|
||||||
|
|||||||
@@ -1,29 +0,0 @@
|
|||||||
obj := \
|
|
||||||
alloca.o \
|
|
||||||
asmy.o \
|
|
||||||
fstack.o \
|
|
||||||
globlex.o \
|
|
||||||
lexer.o \
|
|
||||||
main.o \
|
|
||||||
math.o \
|
|
||||||
output.o \
|
|
||||||
rpn.o \
|
|
||||||
symbol.o \
|
|
||||||
gameboy/locallex.o
|
|
||||||
|
|
||||||
all: rgbasm
|
|
||||||
|
|
||||||
clean:
|
|
||||||
rm -rf rgbasm $(obj) asmy.y asmy.c asmy.h
|
|
||||||
|
|
||||||
rgbasm: $(obj)
|
|
||||||
gcc -Wall -o $@ $^ -lm
|
|
||||||
|
|
||||||
.c.o:
|
|
||||||
gcc -Wall -DGAMEBOY -I../../include -Igameboy -g -c -o $@ $<
|
|
||||||
|
|
||||||
.y.c:
|
|
||||||
bison -d -o $@ $^
|
|
||||||
|
|
||||||
asmy.y: yaccprt1.y gameboy/yaccprt2.y yaccprt3.y gameboy/yaccprt4.y
|
|
||||||
cat $^ > $@
|
|
||||||
2
src/lib/.gitignore
vendored
2
src/lib/.gitignore
vendored
@@ -1,2 +0,0 @@
|
|||||||
# executable
|
|
||||||
xlib
|
|
||||||
@@ -1,12 +0,0 @@
|
|||||||
obj := library.o main.o
|
|
||||||
|
|
||||||
all: xlib
|
|
||||||
|
|
||||||
clean:
|
|
||||||
rm -rf xlib $(obj)
|
|
||||||
|
|
||||||
xlib: $(obj)
|
|
||||||
gcc -Wall -o $@ $^
|
|
||||||
|
|
||||||
.c.o:
|
|
||||||
gcc -Wall -I../../include -g -c -o $@ $<
|
|
||||||
2
src/link/.gitignore
vendored
2
src/link/.gitignore
vendored
@@ -1,2 +0,0 @@
|
|||||||
# executable
|
|
||||||
xlink
|
|
||||||
@@ -1,21 +0,0 @@
|
|||||||
obj := \
|
|
||||||
assign.o \
|
|
||||||
library.o \
|
|
||||||
main.o \
|
|
||||||
mapfile.o \
|
|
||||||
object.o \
|
|
||||||
output.o \
|
|
||||||
patch.o \
|
|
||||||
symbol.o
|
|
||||||
|
|
||||||
all: xlink
|
|
||||||
|
|
||||||
clean:
|
|
||||||
rm -rf xlink $(obj)
|
|
||||||
|
|
||||||
xlink: $(obj)
|
|
||||||
gcc -Wall -o $@ $^
|
|
||||||
|
|
||||||
.c.o:
|
|
||||||
gcc -Wall -I../../include -g -c -o $@ $<
|
|
||||||
|
|
||||||
2
src/rgbfix/.gitignore
vendored
2
src/rgbfix/.gitignore
vendored
@@ -1,2 +0,0 @@
|
|||||||
# executable
|
|
||||||
rgbfix
|
|
||||||
@@ -1,13 +0,0 @@
|
|||||||
obj := \
|
|
||||||
main.o
|
|
||||||
|
|
||||||
all: rgbfix
|
|
||||||
|
|
||||||
clean:
|
|
||||||
rm -rf rgbfix $(obj)
|
|
||||||
|
|
||||||
rgbfix: $(obj)
|
|
||||||
gcc -Wall -o $@ $^
|
|
||||||
|
|
||||||
.c.o:
|
|
||||||
gcc -Wall -I../../include -g -c -o $@ $<
|
|
||||||
Reference in New Issue
Block a user