From 7bdf16c743442e595600c0fbb1d585b11195804d Mon Sep 17 00:00:00 2001 From: Alinson Xavier Date: Thu, 19 Mar 2015 05:46:49 -0400 Subject: [PATCH] Update makefiles --- CMakeLists.txt | 2 +- Makefile.linux | 34 ++++++++++++++++++++++++++++++++++ Makefile.windows | 36 ++++++++++++++++++++++++++++++++++++ 3 files changed, 71 insertions(+), 1 deletion(-) create mode 100644 Makefile.linux create mode 100644 Makefile.windows diff --git a/CMakeLists.txt b/CMakeLists.txt index 046384c..2aef75d 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -22,6 +22,6 @@ set(SOURCE_FILES src/branch_and_cut.h src/branch_and_cut.c) -add_executable(project ${SOURCE_FILES} ) +add_executable(project ${SOURCE_FILES} src/gtsp.h src/gtsp.c src/geometry.h src/geometry.c) target_link_libraries(project cplex m pthread) \ No newline at end of file diff --git a/Makefile.linux b/Makefile.linux new file mode 100644 index 0000000..b1385c7 --- /dev/null +++ b/Makefile.linux @@ -0,0 +1,34 @@ +path := src/*/*.c src/*.c src/*.s +include:= src/*.h +binary := bin/hw2.run + +source := $(wildcard ${path}) +headers:= $(wildcard ${include}) +obj := $(patsubst src/%, bin/%, $(patsubst %.c,%.o, $(patsubst %.s,%.s.o, $(source)))) + +CPLEX_INCLUDE = /opt/cplex-12.4/distribution/cplex/include/ilcplex + +flags := -O3 -g -Wall -pedantic -g --std=c11 -Winline -I$(CPLEX_INCLUDE) +libs := -lcplex -lm -lpthread + +compile: $(obj) $(binary) + +run: compile + @$(binary) + +bin/%.s.o: src/%.s + @echo ' as $<' + @$(AS) $< -o $@ + +bin/%.o: src/%.c $(headers) + @mkdir -p bin + @echo ' cc $<' + @$(CC) -c $(flags) $< -o $@ + +$(binary): $(obj) + @mkdir -p bin + @echo ' ld $@' + @$(CC) $(flags) $(obj) $(libs) -o $@ + +clean: + @$(RM) -f $(obj) $(binary) diff --git a/Makefile.windows b/Makefile.windows new file mode 100644 index 0000000..7caa838 --- /dev/null +++ b/Makefile.windows @@ -0,0 +1,36 @@ +path := src/*/*.c src/*.c src/*.s +include:= src/*.h +binary := bin/hw2.exe + +source := $(wildcard ${path}) +headers:= $(wildcard ${include}) +obj := $(patsubst src/%, bin/%, $(patsubst %.c,%.o, $(patsubst %.s,%.s.o, $(source)))) + +CPLEX_INCLUDE = /cygdrive/c/Program\ Files/IBM/ILOG/CPLEX_Studio1261/cplex/include/ilcplex +CPLEX_LIB = /cygdrive/c/Program\ Files/IBM/ILOG/CPLEX_Studio1261/cplex/bin/x64_win64 + +flags := -O3 -g -Wall -pedantic -g --std=c11 -Winline -I$(CPLEX_INCLUDE) +libs := -L$(CPLEX_LIB) -lcplex1261 -lm -lpthread + +compile: $(obj) $(binary) + +run: compile + @$(binary) + +bin/%.s.o: src/%.s + @echo ' as $<' + @$(AS) $< -o $@ + +bin/%.o: src/%.c $(headers) + @mkdir -p bin + @echo ' cc $<' + @$(CC) -c $(flags) $< -o $@ + +$(binary): $(obj) + @mkdir -p bin + @echo ' ld $@' + @$(CC) $(flags) $(obj) $(libs) -o $@ + +clean: + @$(RM) -f $(obj) $(binary) +