Rewrite Makefile
parent
13038a16b3
commit
094d7f769a
|
@ -1,5 +1,6 @@
|
||||||
bin/*.ir
|
bin/*
|
||||||
codedefs/*.bin
|
codedefs/*
|
||||||
|
ir/*
|
||||||
doc
|
doc
|
||||||
fonts
|
fonts
|
||||||
sounds
|
sounds
|
||||||
|
|
68
Makefile
68
Makefile
|
@ -1,43 +1,61 @@
|
||||||
## Copyright © 2017 Project Golan, all rights reserved.
|
## Copyright © 2017 Project Golan, all rights reserved.
|
||||||
CC=gdcc-cc
|
GDCC_CC=gdcc-cc
|
||||||
LD=gdcc-ld
|
GDCC_LD=gdcc-ld
|
||||||
MAKELIB=gdcc-makelib
|
GDCC_MAKELIB=gdcc-makelib
|
||||||
|
|
||||||
BIN=codedefs
|
|
||||||
SRC=src
|
SRC=src
|
||||||
INC=inc
|
INC=inc
|
||||||
IR=bin
|
CODEDEFS=codedefs
|
||||||
|
BIN=bin
|
||||||
|
IR=ir
|
||||||
|
|
||||||
TARGET=--bc-target=Doominati
|
GDCC_TARGET=--bc-target=Doominati
|
||||||
LFLAGS += $(TARGET)
|
GDCC_LFLAGS += $(GDCC_TARGET)
|
||||||
CFLAGS += $(TARGET) --alloc-Aut=4194304 -c
|
GDCC_CFLAGS += $(GDCC_TARGET) --alloc-Aut=4194304 -c
|
||||||
|
|
||||||
MAIN_SOURCES=$(wildcard $(SRC)/*.c)
|
GAME_SOURCES=$(wildcard $(SRC)/g_*.c)
|
||||||
MAIN_HEADERS=$(wildcard $(SRC)/*.h)
|
GAME_HEADERS=$(wildcard $(SRC)/g_*.h)
|
||||||
|
GAME_OUTPUT=$(GAME_SOURCES:$(SRC)/g_%.c=$(IR)/g_%.ir)
|
||||||
|
GAME_BINARY=$(CODEDEFS)/eikyo-game.bin
|
||||||
|
|
||||||
|
MAIN_SOURCES=$(SRC)/main.c
|
||||||
MAIN_OUTPUT=$(MAIN_SOURCES:$(SRC)/%.c=$(IR)/%.ir)
|
MAIN_OUTPUT=$(MAIN_SOURCES:$(SRC)/%.c=$(IR)/%.ir)
|
||||||
MAIN_BINARY=$(BIN)/影響の目.bin
|
MAIN_BINARY=$(CODEDEFS)/eikyo-main.bin
|
||||||
|
|
||||||
|
MISC_SOURCES=$(wildcard $(SRC)/m_*.c)
|
||||||
|
MISC_HEADERS=$(wildcard $(SRC)/m_*.h)
|
||||||
|
MISC_OUTPUT=$(MISC_SOURCES:$(SRC)/m_%.c=$(IR)/m_%.ir)
|
||||||
|
MISC_BINARY=$(CODEDEFS)/eikyo-misc.bin
|
||||||
|
|
||||||
|
RENDER_SOURCES=$(wildcard $(SRC)/r_*.c)
|
||||||
|
RENDER_HEADERS=$(wildcard $(SRC)/r_*.h)
|
||||||
|
RENDER_OUTPUT=$(RENDER_SOURCES:$(SRC)/r_%.c=$(IR)/r_%.ir)
|
||||||
|
RENDER_BINARY=$(CODEDEFS)/eikyo-render.bin
|
||||||
|
|
||||||
.PHONY: clean
|
.PHONY: clean
|
||||||
|
|
||||||
all: $(BIN)/stdlib.bin $(MAIN_BINARY)
|
all: $(CODEDEFS) $(BIN) $(IR) $(CODEDEFS)/stdlib.bin $(GAME_BINARY) $(MAIN_BINARY) $(MISC_BINARY) $(RENDER_BINARY)
|
||||||
|
|
||||||
|
$(CODEDEFS) $(BIN) $(IR):
|
||||||
|
mkdir -p $@
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
rm -f bin/*.ir
|
rm -f $(BIN)/*
|
||||||
rm -f codedefs/*.bin
|
rm -f $(CODEDEFS)/*
|
||||||
|
rm -f $(IR)/*
|
||||||
$(BIN)/stdlib.bin: $(IR)/libc.ir $(IR)/libGDCC.ir
|
|
||||||
$(LD) $(LFLAGS) -o $@ $^
|
|
||||||
|
|
||||||
|
$(CODEDEFS)/stdlib.bin: $(IR)/libc.ir $(IR)/libGDCC.ir
|
||||||
|
$(GAME_BINARY): $(GAME_OUTPUT)
|
||||||
$(MAIN_BINARY): $(MAIN_OUTPUT)
|
$(MAIN_BINARY): $(MAIN_OUTPUT)
|
||||||
$(LD) $(LFLAGS) -o $@ $^
|
$(MISC_BINARY): $(MISC_OUTPUT)
|
||||||
|
$(RENDER_BINARY): $(RENDER_OUTPUT)
|
||||||
|
$(CODEDEFS)/%.bin:
|
||||||
|
$(GDCC_LD) $(GDCC_LFLAGS) -o $@ $^
|
||||||
|
|
||||||
$(IR)/%.ir: $(SRC)/%.c $(MAIN_HEADERS)
|
$(IR)/%.ir: $(SRC)/%.c $(GAME_HEADERS) $(MISC_HEADERS) $(RENDER_HEADERS)
|
||||||
$(CC) $(CFLAGS) -o $@ $<
|
$(GDCC_CC) $(GDCC_CFLAGS) -o $@ $<
|
||||||
|
|
||||||
$(IR)/libc.ir:
|
$(IR)/libc.ir $(IR)/libGDCC.ir:
|
||||||
$(MAKELIB) $(TARGET) $(CFLAGS) -o $@ libc
|
$(GDCC_MAKELIB) $(GDCC_CFLAGS) -o $@ $(basename $(@F))
|
||||||
|
|
||||||
$(IR)/libGDCC.ir:
|
|
||||||
$(MAKELIB) $(TARGET) $(CFLAGS) -o $@ libGDCC
|
|
||||||
|
|
||||||
## EOF
|
## EOF
|
||||||
|
|
|
@ -1 +0,0 @@
|
||||||
|
|
Loading…
Reference in New Issue