Conventional make tweaks to handle Lepton C++11 requirement

This commit is contained in:
Giacomo Fiorin
2019-10-14 15:50:19 -04:00
parent b6a6638f49
commit b6af3c7ad0
2 changed files with 13 additions and 9 deletions

View File

@ -52,25 +52,29 @@ LEPTON_SRCS = \
lepton/src/ParsedExpression.cpp lepton/src/ExpressionProgram.cpp \ lepton/src/ParsedExpression.cpp lepton/src/ExpressionProgram.cpp \
lepton/src/Operation.cpp lepton/src/Parser.cpp lepton/src/Operation.cpp lepton/src/Parser.cpp
LEPTON_OBJS = \
lepton/src/CompiledExpression.o lepton/src/ExpressionTreeNode.o \
lepton/src/ParsedExpression.o lepton/src/ExpressionProgram.o \
lepton/src/Operation.o lepton/src/Parser.o
COLVARS_OBJS = $(COLVARS_SRCS:.cpp=.o) $(LEPTON_OBJS) # Allow to selectively turn off Lepton
ifeq ($(ENABLE_LEPTON),no)
LEPTON_INCFLAGS =
COLVARS_OBJS = $(COLVARS_SRCS:.cpp=.o)
else
LEPTON_INCFLAGS = -Ilepton/include -DLEPTON
COLVARS_OBJS = $(COLVARS_SRCS:.cpp=.o) $(LEPTON_SRCS:.cpp=.o)
endif
%.o: %.cpp %.o: %.cpp
$(CXX) $(CXXFLAGS) $(COLVARS_INCFLAGS) -Ilepton/include -DLEPTON -c -o $@ $< $(CXX) $(CXXFLAGS) $(COLVARS_INCFLAGS) $(LEPTON_INCFLAGS) -c -o $@ $<
$(COLVARS_LIB): Makefile.deps $(COLVARS_OBJS) $(COLVARS_LIB): Makefile.deps $(COLVARS_OBJS)
$(AR) $(ARFLAGS) $(COLVARS_LIB) $(COLVARS_OBJS) $(LEPTON_OBJS) $(AR) $(ARFLAGS) $(COLVARS_LIB) $(COLVARS_OBJS)
Makefile.deps: $(COLVARS_SRCS) Makefile.deps: $(COLVARS_SRCS)
@echo > $@ @echo > $@
@for src in $^ ; do \ @for src in $^ ; do \
obj=`basename $$src .cpp`.o ; \ obj=`basename $$src .cpp`.o ; \
$(CXX) -MM $(COLVARS_INCFLAGS) -Ilepton/include -DLEPTON \ $(CXX) -MM $(COLVARS_INCFLAGS) $(LEPTON_INCFLAGS) \
-MT '$$(COLVARS_OBJ_DIR)'$$obj $$src >> $@ ; \ -MT '$$(COLVARS_OBJ_DIR)'$$obj $$src >> $@ ; \
done done

View File

@ -6,7 +6,7 @@ COLVARS_LIB = libcolvars.a
COLVARS_OBJ_DIR = COLVARS_OBJ_DIR =
CXX = g++ CXX = g++
CXXFLAGS = -O2 -g -Wall -fPIC -funroll-loops CXXFLAGS = -std=c++0x -O2 -g -Wall -fPIC -funroll-loops
AR = ar AR = ar
ARFLAGS = -rscv ARFLAGS = -rscv
SHELL = /bin/sh SHELL = /bin/sh