1 ###################################################
4 # Created: June 29, 2010
6 ###################################################
16 MOTHUR_FILES="\"Enter_your_default_path_here\""
17 RELEASE_DATE = "\"2/12/2014\""
18 VERSION = "\"1.33.0\""
19 FORTAN_COMPILER = gfortran
22 # Optimize to level 3:
25 ifeq ($(strip $(64BIT_VERSION)),yes)
26 #if you are using centos uncomment the following lines
29 #if you are a mac user use the following line
30 #TARGET_ARCH += -arch x86_64
32 #if you using cygwin to build Windows the following line
33 #CXX = x86_64-w64-mingw32-g++
34 #CC = x86_64-w64-mingw32-g++
35 #FORTAN_COMPILER = x86_64-w64-mingw32-gfortran
36 #TARGET_ARCH += -m64 -static
38 #if you are a linux user use the following line
39 CXXFLAGS += -mtune=native -march=native -g
41 CXXFLAGS += -DBIT_VERSION -std=gnu++11
45 CXXFLAGS += -DRELEASE_DATE=${RELEASE_DATE} -DVERSION=${VERSION}
47 ifeq ($(strip $(MOTHUR_FILES)),"\"Enter_your_default_path_here\"")
49 CXXFLAGS += -DMOTHUR_FILES=${MOTHUR_FILES}
53 # if you do not want to use the readline library, set this to no.
54 # make sure you have the library installed
57 ifeq ($(strip $(USEREADLINE)),yes)
58 CXXFLAGS += -DUSE_READLINE
65 ifeq ($(strip $(USEMPI)),yes)
70 # if you want to enable reading and writing of compressed files, set to yes.
71 # The default is no. this may only work on unix-like systems, not for windows.
74 ifeq ($(strip $(USECOMPRESSION)),yes)
75 CXXFLAGS += -DUSE_COMPRESSION
79 # INCLUDE directories for mothur
85 # Get the list of all .cpp files, rename to .o files
88 OBJECTS=$(patsubst %.cpp,%.o,$(wildcard *.cpp))
89 OBJECTS+=$(patsubst %.c,%.o,$(wildcard *.c))
90 OBJECTS+=$(patsubst %.f,%.o,$(wildcard *.f))
92 mothur : fortranSource $(OBJECTS) uchime
93 $(CXX) $(LDFLAGS) $(TARGET_ARCH) -o $@ $(OBJECTS) $(LIBS)
97 cd uchime_src && ./mk && mv uchime .. && cd ..
100 ${FORTAN_COMPILER} -c $(FORTRAN_FLAGS) *.f
103 # cp mothur ../Release/mothur
106 $(COMPILE.c) $(OUTPUT_OPTION) $<
108 $(COMPILE.cpp) $(OUTPUT_OPTION) $<
110 $(COMPILE.cpp) $(OUTPUT_OPTION) $<