Update Makefile and .clangd
This commit is contained in:
parent
9402f2563c
commit
62b85340ed
2
.clangd
2
.clangd
@ -1,2 +1,2 @@
|
|||||||
CompileFlags:
|
CompileFlags:
|
||||||
Add: [-I../include]
|
Add: [-I../include, -std=c++11]
|
||||||
|
|||||||
45
Makefile
45
Makefile
@ -1,5 +1,5 @@
|
|||||||
# The compiler
|
# The compiler
|
||||||
CC=mpicxx
|
CC=g++
|
||||||
|
|
||||||
# Flags
|
# Flags
|
||||||
CFLAGS=-Wall -larmadillo -std=c++11 -O3 -fopenmp
|
CFLAGS=-Wall -larmadillo -std=c++11 -O3 -fopenmp
|
||||||
@ -26,19 +26,26 @@ LATEXDIR=./latex
|
|||||||
|
|
||||||
# Source directories
|
# Source directories
|
||||||
SRC=./src
|
SRC=./src
|
||||||
|
LIB=./lib
|
||||||
INCLUDE=./include
|
INCLUDE=./include
|
||||||
|
|
||||||
# Source files and object file locations
|
# Source files and object file locations
|
||||||
SRCFILES=utils.cpp testlib.cpp
|
#SRCFILES=utils.cpp testlib.cpp
|
||||||
SRCS=$(addprefix $(SRC)/, $(SRCS))
|
#SRCS=$(addprefix $(SRC)/, $(SRCS))
|
||||||
BINOBJS=$(addprefix $(BINOBJDIR)/, $(SRCFILES:.cpp=.o))
|
#BINOBJS=$(addprefix $(BINOBJDIR)/, $(SRCFILES:.cpp=.o))
|
||||||
PROFOBJS=$(addprefix $(PROFOBJDIR)/, $(SRCFILES:.cpp=.o))
|
#PROFOBJS=$(addprefix $(PROFOBJDIR)/, $(SRCFILES:.cpp=.o))
|
||||||
DEBUGOBJS=$(addprefix $(DEBUGOBJDIR)/, $(SRCFILES:.cpp=.o))
|
#DEBUGOBJS=$(addprefix $(DEBUGOBJDIR)/, $(SRCFILES:.cpp=.o))
|
||||||
|
|
||||||
|
# Lib files
|
||||||
|
LIBSRCS=$(notdir $(shell find $(LIB) -type f))
|
||||||
|
LIBBINOBJS=$(addprefix $(BINOBJDIR)/, $(LIBSRCS:.cpp=.o))
|
||||||
|
LIBPROFOBJS=$(addprefix $(PROFOBJDIR)/, $(LIBSRCS:.cpp=.o))
|
||||||
|
LIBDEBUGOBJS=$(addprefix $(DEBUGOBJDIR)/, $(LIBSRCS:.cpp=.o))
|
||||||
|
|
||||||
# Location for Binaries
|
# Location for Binaries
|
||||||
EXEC=main test_suite
|
EXEC=$(basename $(notdir $(shell find $(SRC) -type f)))
|
||||||
BINS=$(addprefix $(BINDIR)/, $(EXEC))
|
BINS=$(addprefix $(BINDIR)/, $(EXEC))
|
||||||
PROFBINS=$(PROFDIR)/phase_transition_mpi
|
PROFBINS=$(addprefix $(PROFDIR)/, $(EXEC))
|
||||||
DEBUGBINS=$(addprefix $(DEBUGDIR)/, $(EXEC))
|
DEBUGBINS=$(addprefix $(DEBUGDIR)/, $(EXEC))
|
||||||
|
|
||||||
# List phony targets
|
# List phony targets
|
||||||
@ -56,23 +63,24 @@ latex:
|
|||||||
$(MAKE) -C $(LATEXDIR)
|
$(MAKE) -C $(LATEXDIR)
|
||||||
|
|
||||||
# Rule for binaries
|
# Rule for binaries
|
||||||
$(BINDIR)/%: $(BINOBJDIR)/%.o $(BINOBJS)
|
$(BINDIR)/%: $(BINOBJDIR)/%.o $(LIBBINOBJS)
|
||||||
$(MKDIR) $(BINDIR)
|
$(MKDIR) $(BINDIR)
|
||||||
$(CC) $^ -o $@ $(CFLAGS) -I$(INCLUDE)
|
$(CC) $^ -o $@ $(CFLAGS) -I$(INCLUDE)
|
||||||
|
|
||||||
# Rule for profiling binaries
|
# Rule for profiling binaries
|
||||||
$(PROFDIR)/%: $(PROFOBJDIR)/%.o $(PROFOBJS)
|
$(PROFDIR)/%: $(PROFOBJDIR)/%.o $(LIBPROFOBJS)
|
||||||
$(MKDIR) $(PROFDIR)
|
$(MKDIR) $(PROFDIR)
|
||||||
$(INSTRUMENT) $(CC) $^ -o $@ $(CFLAGS) $(PROFFLAGS) -I$(INCLUDE)
|
$(INSTRUMENT) $(CC) $^ -o $@ $(CFLAGS) $(PROFFLAGS) -I$(INCLUDE)
|
||||||
|
|
||||||
# Rule for debug binaries
|
# Rule for debug binaries
|
||||||
$(DEBUGDIR)/%: $(DEBUGOBJDIR)/%.o $(DEBUGOBJS)
|
$(DEBUGDIR)/%: $(DEBUGOBJDIR)/%.o $(LIBDEBUGOBJS)
|
||||||
$(MKDIR) $(DEBUGDIR)
|
$(MKDIR) $(DEBUGDIR)
|
||||||
$(CC) $^ -o $@ $(CFLAGS) $(DBGFLAGS) -I$(INCLUDE)
|
$(CC) $^ -o $@ $(CFLAGS) $(DBGFLAGS) -I$(INCLUDE)
|
||||||
|
|
||||||
# Rule for object files
|
# Rule for object files
|
||||||
$(BINOBJDIR)/%.o: $(SRC)/%.cpp
|
$(BINOBJDIR)/%.o: $(SRC)/%.cpp
|
||||||
$(MKDIR) $(BINOBJDIR)
|
$(MKDIR) $(BINOBJDIR)
|
||||||
|
echo $(LIBBINOBJS)
|
||||||
$(CC) -c $^ -o $@ $(CFLAGS) -I$(INCLUDE)
|
$(CC) -c $^ -o $@ $(CFLAGS) -I$(INCLUDE)
|
||||||
|
|
||||||
# Rule for instrumented object files
|
# Rule for instrumented object files
|
||||||
@ -85,6 +93,21 @@ $(DEBUGOBJDIR)/%.o: $(SRC)/%.cpp
|
|||||||
$(MKDIR) $(DEBUGOBJDIR)
|
$(MKDIR) $(DEBUGOBJDIR)
|
||||||
$(CC) -c $^ -o $@ $(CFLAGS) $(DBGFLAGS) -I$(INCLUDE)
|
$(CC) -c $^ -o $@ $(CFLAGS) $(DBGFLAGS) -I$(INCLUDE)
|
||||||
|
|
||||||
|
# Rule for object files
|
||||||
|
$(BINOBJDIR)/%.o: $(LIB)/%.cpp
|
||||||
|
$(MKDIR) $(BINOBJDIR)
|
||||||
|
$(CC) -c $^ -o $@ $(CFLAGS) -I$(INCLUDE)
|
||||||
|
|
||||||
|
# Rule for instrumented object files
|
||||||
|
$(PROFOBJDIR)/%.o: $(LIB)/%.cpp
|
||||||
|
$(MKDIR) $(PROFOBJDIR)
|
||||||
|
$(INSTRUMENT) $(CC) -c $^ -o $@ $(CFLAGS) $(PROFFLAGS) -I$(INCLUDE)
|
||||||
|
|
||||||
|
# Rule for debug object files
|
||||||
|
$(DEBUGOBJDIR)/%.o: $(LIB)/%.cpp
|
||||||
|
$(MKDIR) $(DEBUGOBJDIR)
|
||||||
|
$(CC) -c $^ -o $@ $(CFLAGS) $(DBGFLAGS) -I$(INCLUDE)
|
||||||
|
|
||||||
# Cleaning
|
# Cleaning
|
||||||
clean: objclean binclean latexclean
|
clean: objclean binclean latexclean
|
||||||
|
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user