Makefile for ART-linux
とりあえず機能の修正。
make - odawaraの「はてな de メモ」
上を参考にして作ってみた。
# # Makefile for ART linux program # TARGET = ART_cart_test C_FLAGS += -Wall -O2 COMPILE.c = gcc $(C_FLAGS) -c LINK.c = gcc $(LD_FLAGS) DBGTARGET = debug/$(TARGET)d RELTARGET = release/$(TARGET) INCLUDE = -I/root/prog/art_headers ART_SYSCALL = /usr/lib/art_syscalls.o DBGCFLAGS = -g -D__DEBUG RELCFLAGS = -fno-strict-aliasing PTHREAD = -lpthread MATH = -lm SOURCES = $(wildcard *.c) HEADERS = $(wildcard *.h) DBGOBJFILES = $(SOURCES:%.c=debug/%.o) RELOBJFILES = $(SOURCES:%.c=release/%.o) .PHONY: clean debug release all: debug release release: $(RELTARGET) debug: $(DBGTARGET) $(RELTARGET): $(RELOBJFILES) $(LINK.c) $(C_FLAGS) -o $@ $^ $(ART_SYSCALL) $(PTHREAD) $(DBGTARGET): $(DBGOBJFILES) $(LINK.c) $(C_FLAGS) -o $@ $^ $(ART_SYSCALL) $(PTHREAD) $(RELOBJFILES): release/%.o: %.c $(HEADERS) @mkdir -p release $(COMPILE.c) $(RELCFLAGS) $(PTHREAD) $(ART_SYSCALL) $< @mv ./*.o ./release $(DBGOBJFILES): debug/%.o: %.c $(HEADERS) @mkdir -p debug $(COMPILE.c) $(DBGCFLAGS) $(PTHREAD) $(ART_SYSCALL) $< @mv ./*.o ./debug clean: rm -rf release debug *~ *.d *.o