forked from sokrypton/map_align
-
Notifications
You must be signed in to change notification settings - Fork 5
Expand file tree
/
Copy pathMakefile
More file actions
34 lines (24 loc) · 999 Bytes
/
Makefile
File metadata and controls
34 lines (24 loc) · 999 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
CXX=g++
CXXFLAGS += -Wall -Wno-unused-result -pedantic -Ofast -march=native -std=c++0x -g -ggdb -fopenmp
CXXLIBS =
INCDIRS = -I./src
LIBDIRS =
OBJDIR = obj
SRCDIR = src
DEPS = $(shell find $(SRCDIR) -name '*.h')
SRCS = $(shell find $(SRCDIR) -name '*.cpp')
OBJS = $(patsubst $(SRCDIR)%.cpp, $(OBJDIR)%.o, $(SRCS))
all: $(OBJDIR) map_align mp_super mp_trim
$(OBJDIR):
mkdir -p $(OBJDIR)
map_align: $(OBJS) $(DEPS)
$(CXX) $(CXXFLAGS) $(INCDIRS) $(LIBDIRS) -o map_align $(filter-out obj/mp_super.o obj/mp_trim.o, $(OBJS)) $(CXXLIBS)
mp_super: $(OBJS) $(DEPS)
$(CXX) $(CXXFLAGS) $(INCDIRS) $(LIBDIRS) -o mp_super obj/mp_super.o obj/Chain.o obj/Residue.o obj/Atom.o obj/kdtree.o obj/TMalign.o obj/Kabsch.o $(CXXLIBS)
mp_trim:
$(CXX) $(CXXFLAGS) $(INCDIRS) $(LIBDIRS) -o mp_trim obj/mp_trim.o obj/Chain.o obj/Residue.o obj/Atom.o obj/kdtree.o $(CXXLIBS)
$(OBJDIR)/%.o: $(SRCDIR)/%.cpp
$(CXX) $(CXXFLAGS) $(INCDIRS) -c -o $@ $<
clean:
rm $(OBJS) map_align mp_super mp_trim
rmdir $(OBJDIR)