#puvodni mapovani objektovych souboru pomoci rucniho vyctu .o souboru #.h soubory na kterych zavisi moje zdrojove soubory #DEPS = main.h Config.h Constants.h CmdDriver.h EquationBounds.h EquationData.h FileDriver.h MeasuredData.h NelderMead.h SegmentData.h SqliteDriver.h #_OBJ = main.o CmdDriver.o EquationData.o FileDriver.o MeasuredData.o NelderMead.o SegmentData.o SqliteDriver.o #OBJ = $(patsubst %,$(ODIR)/%,$(_OBJ)) #nove mapovani souboru do promennych DEPS = $(wildcard *.h) #headers files CPPS = main.cpp $(wildcard *.cpp) #source files OBJ = $(CPPS:%.cpp=$(ODIR)/%.o) #object files #promenna pro prekladac CC = g++ #promena pro prikaz na vytvoreni adresare MKDIR = mkdir -p #pokud by se nejaky soubor jmenoval jako v teto definici, make na nej nebude brat zretel .PHONY: clean cr_dir #seznam parametru (FLAGS) pro prekladac CFLAGS = -Wall -O3 -lpthread -ldl -ltbb LANG_STD = -std=c++11 #externi knihovny LIBS=$(ALGLIB) $(SQLITE) ALGLIB=-I lib/alglib/ SQLITE=-L/usr/include/sqlite3.h -lsqlite3 #adresar pro umisteni objektovych souboru ODIR=obj #nazev vysledneho spustitelneho souboru PRG_NAME = GlucoseTransporters #vlastni kompilacni pravidla all: clean cr_dir $(PRG_NAME) cr_dir: $(MKDIR) $(ODIR) $(ODIR)/%.o: %.cpp $(DEPS) $(CC) $(LANG_STD) -c -o $@ $< $(CFLAGS) $(LIBS) $(PRG_NAME): $(OBJ) $(CC) $(LANG_STD) -o $@ $^ $(CFLAGS) $(LIBS) lib/alglib.a #smazani objektovych souboru clean: rm -f $(ODIR)/*.o # rm -d $(ODIR) rm -f $(PRG_NAME)