omi-eikyo/Makefile

38 lines
741 B
Makefile

## Copyright © 2017 Project Golan, all rights reserved.
CC=gdcc-cc
LD=gdcc-ld
MAKELIB=gdcc-makelib
BIN=codedefs
SRC=src
INC=inc
IR=bin
TARGET=--bc-target=Doominati
LFLAGS=$(TARGET)
CFLAGS=$(TARGET) --alloc-Aut=4194304 -c
MAIN_SOURCES=$(wildcard $(SRC)/*.c)
MAIN_HEADERS=$(wildcard $(SRC)/*.h)
MAIN_OUTPUT=$(MAIN_SOURCES:$(SRC)/%.c=$(IR)/%.ir)
MAIN_BINARY=$(BIN)/影響の目.bin
all: $(BIN)/stdlib.bin $(MAIN_BINARY)
$(BIN)/stdlib.bin: $(IR)/libc.ir $(IR)/libGDCC.ir
$(LD) $(LFLAGS) -o $@ $^
$(MAIN_BINARY): $(MAIN_OUTPUT)
$(LD) $(LFLAGS) -o $@ $^
$(IR)/%.ir: $(SRC)/%.c $(MAIN_HEADERS)
$(CC) $(CFLAGS) -o $@ $<
$(IR)/libc.ir:
$(MAKELIB) $(TARGET) -c -o $@ libc
$(IR)/libGDCC.ir:
$(MAKELIB) $(TARGET) -c -o $@ libGDCC
## EOF