Author: Steffen Moeller,
        Nilesh Patra
Last-Update: 2021-04-19 17:37:27 +0530
Description: Propagate variables to Makefile

--- a/src/makefile
+++ b/src/makefile
@@ -1,4 +1,7 @@
-CXXFLAGS = -msse4 -O3 -Wall -g -std=c++11 -pthread
+CXXFLAGS = -O3 -Wall -Wextra -g
+CXXFLAGS += -msse4
+CXXFLAGS += -std=c++11
+CXXFLAGS += -pthread -DHAS_CXX_THREAD
 # -fomit-frame-pointer ?
 
 # The number of symbol types that we can keep in sequences (e.g. 20
@@ -7,7 +10,7 @@ CXXFLAGS = -msse4 -O3 -Wall -g -std=c++1
 ALPHABET_CAPACITY = 66
 CPPF = -DALPHABET_CAPACITY=$(ALPHABET_CAPACITY) -DHAS_CXX_THREADS $(CPPFLAGS)
 
-CFLAGS = -Wall -O2
+CFLAGS ?= -Wall -O2
 
 alpObj = alp/sls_alignment_evaluer.o alp/sls_pvalues.o		\
 alp/sls_alp_sim.o alp/sls_alp_regression.o alp/sls_alp_data.o	\
@@ -72,45 +75,45 @@ last8: $(LAST8)
 
 indexAllObj4 = $(indexObj0) $(indexObj4)
 ../bin/lastdb: $(indexAllObj4)
-	$(CXX) $(CXXFLAGS) $(LDFLAGS) -o $@ $(indexAllObj4) -lz
+	$(CXX) $(CPPFLAGS) $(CXXFLAGS) $(LDFLAGS) -o $@ $(indexAllObj4) -lz
 
 indexAllObj5 = $(indexObj0) $(indexObj5)
 ../bin/lastdb5: $(indexAllObj5)
-	$(CXX) $(CXXFLAGS) $(LDFLAGS) -o $@ $(indexAllObj5) -lz
+	$(CXX) $(CPPFLAGS) $(CXXFLAGS) $(LDFLAGS) -o $@ $(indexAllObj5) -lz
 
 indexAllObj8 = $(indexObj0) $(indexObj8)
 ../bin/lastdb8: $(indexAllObj8)
-	$(CXX) $(CXXFLAGS) $(LDFLAGS) -o $@ $(indexAllObj8) -lz
+	$(CXX) $(CPPFLAGS) $(CXXFLAGS) $(LDFLAGS) -o $@ $(indexAllObj8) -lz
 
 alignAllObj4 = $(alignObj0) $(alignObj4)
 ../bin/lastal: $(alignAllObj4)
-	$(CXX) $(CXXFLAGS) $(LDFLAGS) -o $@ $(alignAllObj4) -lz
+	$(CXX) $(CPPFLAGS) $(CXXFLAGS) $(LDFLAGS) -o $@ $(alignAllObj4) -lz
 
 alignAllObj5 = $(alignObj0) $(alignObj5)
 ../bin/lastal5: $(alignAllObj5)
-	$(CXX) $(CXXFLAGS) $(LDFLAGS) -o $@ $(alignAllObj5) -lz
+	$(CXX) $(CPPFLAGS) $(CXXFLAGS) $(LDFLAGS) -o $@ $(alignAllObj5) -lz
 
 alignAllObj8 = $(alignObj0) $(alignObj8)
 ../bin/lastal8: $(alignAllObj8)
-	$(CXX) $(CXXFLAGS) $(LDFLAGS) -o $@ $(alignAllObj8) -lz
+	$(CXX) $(CPPFLAGS) $(CXXFLAGS) $(LDFLAGS) -o $@ $(alignAllObj8) -lz
 
 splitAllObj4 = $(splitObj0) $(splitObj4)
 ../bin/last-split: $(splitAllObj4)
-	$(CXX) $(CXXFLAGS) $(LDFLAGS) -o $@ $(splitAllObj4)
+	$(CXX) $(CPPFLAGS) $(CXXFLAGS) $(LDFLAGS) -o $@ $(splitAllObj4)
 
 splitAllObj5 = $(splitObj0) $(splitObj5)
 ../bin/last-split5: $(splitAllObj5)
-	$(CXX) $(CXXFLAGS) $(LDFLAGS) -o $@ $(splitAllObj5)
+	$(CXX) $(CPPFLAGS) $(CXXFLAGS) $(LDFLAGS) -o $@ $(splitAllObj5)
 
 splitAllObj8 = $(splitObj0) $(splitObj8)
 ../bin/last-split8: $(splitAllObj8)
-	$(CXX) $(CXXFLAGS) $(LDFLAGS) -o $@ $(splitAllObj8)
+	$(CXX) $(CPPFLAGS) $(CXXFLAGS) $(LDFLAGS) -o $@ $(splitAllObj8)
 
 ../bin/last-pair-probs: $(PPOBJ)
-	$(CXX) $(CXXFLAGS) $(LDFLAGS) -o $@ $(PPOBJ) -lz
+	$(CXX) $(CPPFLAGS) $(CXXFLAGS) $(LDFLAGS) -o $@ $(PPOBJ) -lz
 
 ../bin/last-merge-batches: $(MBOBJ)
-	$(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(MBOBJ)
+	$(CC) $(CPPFLAGS) $(CFLAGS) $(LDFLAGS) -o $@ $(MBOBJ)
 
 .SUFFIXES:
 .SUFFIXES: .o .c .cc .cpp .o5 .o8
@@ -156,10 +159,10 @@ fix8 = sed 's/.*\.o/& &5 &8/'
 
 depend:
 	sed '/[m][v]/q' makefile > m
-	$(CXX) -MM -I. -std=c++11 *.cc | $(fix8) >> m
-	$(CC) -MM *.c >> m
-	$(CXX) -MM alp/*.cpp | sed 's|.*:|alp/&|' >> m
-	$(CXX) -MM -I. split/*.cc | sed 's|.*:|split/&|' | $(fix8) >> m
+	$(CXX) $(CPPFLAGS) -MM -I. -std=c++11 *.cc | $(fix8) >> m
+	$(CC) $(CPPFLAGS) -MM *.c >> m
+	$(CXX) $(CPPFLAGS) -MM alp/*.cpp | sed 's|.*:|alp/&|' >> m
+	$(CXX) $(CPPFLAGS) -MM -I. split/*.cc | sed 's|.*:|split/&|' | $(fix8) >> m
 	mv m makefile
 Alignment.o Alignment.o5 Alignment.o8: Alignment.cc Alignment.hh Centroid.hh GappedXdropAligner.hh \
  mcf_big_seq.hh mcf_contiguous_queue.hh mcf_reverse_queue.hh \
