58 lines
1.8 KiB
Makefile
58 lines
1.8 KiB
Makefile
CC := g++
|
|
CFLAGS := -Wall
|
|
CFLAGS += -std=c++11
|
|
#CFLAGS += -fno-rtti
|
|
#CFLAGS += -fno-exceptions
|
|
#CFLAGS += -Os
|
|
LFLAGS :=
|
|
|
|
ODIR := build
|
|
RDIR := output
|
|
|
|
YABCODESTRUCTURES_SOURCE_DEPS := yabCodeStructures.cpp yab2cpp.h yab2cpp.cpp tester.cpp runtime/runtime.h
|
|
YAB2CPP_SOURCE_DEPS := yab2cpp.cpp yab2cpp.h tester.cpp
|
|
YABDATASTRUCTURES_SOURCE_DEPS := yabDataStructures.cpp yab2cpp.h yab2cpp.cpp tester.cpp
|
|
YABFUNCTIONS_SOURCE_DEPS := yabFunctions.cpp yab2cpp.h yab2cpp.cpp tester.cpp
|
|
YABIO_SOURCE_DEPS := yab2cpp.h yab2cpp.cpp tester.cpp
|
|
|
|
all: binaries
|
|
|
|
$(ODIR):
|
|
@mkdir $(ODIR)
|
|
|
|
$(RDIR):
|
|
@mkdir $(RDIR)
|
|
|
|
binaries: bin_yab2cpp bin_tester
|
|
|
|
YAB2CPP_OBJECT_DEPS := $(ODIR)/yabCodeStructures.o $(ODIR)/yabFunctions.o $(ODIR)/yabDataStructures.o $(ODIR)/yabIO.o $(ODIR)/yab2cpp.o
|
|
TESTER_OBJECT_DEPS := $(ODIR)/yabCodeStructures.o $(ODIR)/yabFunctions.o $(ODIR)/yabDataStructures.o $(ODIR)/yabIO.o $(ODIR)/tester.o
|
|
|
|
bin_tester: $(RDIR) $(ODIR) $(TESTER_OBJECT_DEPS)
|
|
$(CC) -o tester $(TESTER_OBJECT_DEPS) $(LFLAGS)
|
|
|
|
bin_yab2cpp: $(RDIR) $(ODIR) $(YAB2CPP_OBJECT_DEPS)
|
|
$(CC) -o yab2cpp $(YAB2CPP_OBJECT_DEPS) $(LFLAGS)
|
|
|
|
$(ODIR)/yabCodeStructures.o: $(ODIR) $(YABCODESTRUCTURES_SOURCE_DEPS)
|
|
$(CC) -c $(CFLAGS) yabCodeStructures.cpp -o $(ODIR)/yabCodeStructures.o
|
|
|
|
$(ODIR)/tester.o: $(ODIR) $(YAB2CPP_SOURCE_DEPS)
|
|
$(CC) -c $(CFLAGS) tester.cpp -o $(ODIR)/tester.o
|
|
|
|
$(ODIR)/yab2cpp.o: $(ODIR) $(YAB2CPP_SOURCE_DEPS)
|
|
$(CC) -c $(CFLAGS) yab2cpp.cpp -o $(ODIR)/yab2cpp.o
|
|
|
|
$(ODIR)/yabIO.o: $(ODIR) $(YABIO_SOURCE_DEPS)
|
|
$(CC) -c $(CFLAGS) yabIO.cpp -o $(ODIR)/yabIO.o
|
|
|
|
$(ODIR)/yabDataStructures.o: $(ODIR) $(YABDATASTRUCTURES_SOURCE_DEPS)
|
|
$(CC) -c $(CFLAGS) yabDataStructures.cpp -o $(ODIR)/yabDataStructures.o
|
|
|
|
$(ODIR)/yabFunctions.o: $(ODIR) $(YABFUNCTIONS_SOURCE_DEPS)
|
|
$(CC) -c $(CFLAGS) yabFunctions.cpp -o $(ODIR)/yabFunctions.o
|
|
|
|
.PHONY: clean
|
|
clean:
|
|
rm -rf build/* output/* yab2cpp tester
|
|
|