Skip to content
Snippets Groups Projects
Commit f622aaaf authored by Mulas, Giacomo's avatar Mulas, Giacomo
Browse files

clean up all Makefiles:

- all objects now go in a dedicated dir
- to avoid error-prone repetitions, objects are put in env variables
- correct target mismatches that caused builds to be repeated even when not necessary
parent 56528161
No related branches found
No related tags found
No related merge requests found
Showing with 29 additions and 41 deletions
SUBDIRS := cluster sphere trapping SUBDIRS := cluster sphere trapping
SRCDIR=$(PWD) SRCDIR=$(PWD)
OBJDIR=$(SRCDIR)/objects
BUILDDIR=$(SRCDIR)/../build BUILDDIR=$(SRCDIR)/../build
DOCSDIR=$(SRCDIR)/../doc DOCSDIR=$(SRCDIR)/../doc
...@@ -12,14 +13,13 @@ $(SUBDIRS): ...@@ -12,14 +13,13 @@ $(SUBDIRS):
$(MAKE) -C $@ $(MAKE) -C $@
clean: clean:
rm -f $(BUILDDIR)/cluster/*.o rm -f $(OBJDIR)/*.o
rm -f $(BUILDDIR)/sphere/*.o
rm -f $(BUILDDIR)/trapping/*.o
wipe: wipe:
rm -f $(BUILDDIR)/cluster/* rm -f $(BUILDDIR)/cluster/*
rm -f $(BUILDDIR)/sphere/* rm -f $(BUILDDIR)/sphere/*
rm -f $(BUILDDIR)/trapping/* rm -f $(BUILDDIR)/trapping/*
rm -f $(OBJDIR)/*.o
if [ -d $(DOCSDIR)/build/html ]; then rm -r $(DOCSDIR)/build/html; fi if [ -d $(DOCSDIR)/build/html ]; then rm -r $(DOCSDIR)/build/html; fi
if [ -d $(DOCSDIR)/build/latex ]; then rm -r $(DOCSDIR)/build/latex; fi if [ -d $(DOCSDIR)/build/latex ]; then rm -r $(DOCSDIR)/build/latex; fi
......
BUILDDIR=../../build/cluster ifndef BUILDDIR
override BUILDDIR=../../build/cluster
endif
ifndef OBJDIR
override OBJDIR=../objects
endif
include ../make.inc include ../make.inc
F_CLU_OBJS=$(OBJDIR)/clu.o $(OBJDIR)/edfb_clu.o
all: clu edfb_clu np_cluster CXX_CLU_OBJS=$(OBJDIR)/np_cluster.o $(OBJDIR)/Commons.o $(OBJDIR)/Configuration.o $(OBJDIR)/file_io.o $(OBJDIR)/Parsers.o $(OBJDIR)/sph_subs.o $(OBJDIR)/clu_subs.o $(OBJDIR)/cluster.o
clu: clu.o
$(FC) $(FCFLAGS) -o $(BUILDDIR)/clu $(BUILDDIR)/clu.o $(LDFLAGS)
edfb_clu: edfb_clu.o all: $(BUILDDIR)/clu $(BUILDDIR)/edfb_clu $(BUILDDIR)/np_cluster
$(FC) $(FCFLAGS) -o $(BUILDDIR)/edfb_clu $(BUILDDIR)/edfb_clu.o $(LDFLAGS)
np_cluster: $(BUILDDIR)/np_cluster.o $(BUILDDIR)/Commons.o $(BUILDDIR)/Configuration.o $(BUILDDIR)/file_io.o $(BUILDDIR)/Parsers.o $(BUILDDIR)/sph_subs.o $(BUILDDIR)/clu_subs.o $(BUILDDIR)/cluster.o $(BUILDDIR)/clu: $(OBJDIR)/clu.o
$(CXX) $(CXXFLAGS) -o $(BUILDDIR)/np_cluster $(BUILDDIR)/np_cluster.o $(BUILDDIR)/Commons.o $(BUILDDIR)/Configuration.o $(BUILDDIR)/file_io.o $(BUILDDIR)/Parsers.o $(BUILDDIR)/sph_subs.o $(BUILDDIR)/clu_subs.o $(BUILDDIR)/cluster.o $(CXXLDFLAGS) $(FC) $(FCFLAGS) -o $(BUILDDIR)/clu $(OBJDIR)/clu.o $(LDFLAGS)
#$(BUILDDIR)/np_cluster.o: $(BUILDDIR)/edfb_clu: $(OBJDIR)/edfb_clu.o
# $(CXX) $(CXXFLAGS) -c np_cluster.cpp -o $(BUILDDIR)/np_cluster.o $(FC) $(FCFLAGS) -o $(BUILDDIR)/edfb_clu $(OBJDIR)/edfb_clu.o $(LDFLAGS)
#$(BUILDDIR)/Commons.o: $(BUILDDIR)/np_cluster: $(CXX_CLU_OBJS)
# $(CXX) $(CXXFLAGS) -c ../libnptm/Commons.cpp -o $(BUILDDIR)/Commons.o $(CXX) $(CXXFLAGS) -o $(BUILDDIR)/np_cluster $(CXX_CLU_OBJS) $(CXXLDFLAGS)
#$(BUILDDIR)/Configuration.o:
# $(CXX) $(CXXFLAGS) -c ../libnptm/Configuration.cpp -o $(BUILDDIR)/Configuration.o
#$(BUILDDIR)/file_io.o:
# $(CXX) $(CXXFLAGS) -c ../libnptm/file_io.cpp -o $(BUILDDIR)/file_io.o
#$(BUILDDIR)/Parsers.o:
# $(CXX) $(CXXFLAGS) -c ../libnptm/Parsers.cpp -o $(BUILDDIR)/Parsers.o
#$(BUILDDIR)/cluster.o:
# $(CXX) $(CXXFLAGS) -c cluster.cpp -o $(BUILDDIR)/cluster.o
#$(BUILDDIR)/clu_subs.o:
# $(CXX) $(CXXFLAGS) -c ../libnptm/clu_subs.cpp -o $(BUILDDIR)/clu_subs.o
#$(BUILDDIR)/sph_subs.o:
# $(CXX) $(CXXFLAGS) -c ../libnptm/sph_subs.cpp -o $(BUILDDIR)/sph_subs.o
clean: clean:
rm -f $(BUILDDIR)/*.o rm -f $(F_CLU_OBJS) $(CXX_CLU_OBJS)
wipe: wipe:
rm -f $(BUILDDIR)/clu $(BUILDDIR)/edfb_clu $(BUILDDIR)/*.o rm -f $(BUILDDIR)/clu $(BUILDDIR)/edfb_clu $(F_CLU_OBJS) $(CXX_CLU_OBJS)
...@@ -41,13 +41,16 @@ override CXXLDFLAGS=-L/usr/lib64 -L$(HDF5_LIB) -lhdf5 $(LDFLAGS) ...@@ -41,13 +41,16 @@ override CXXLDFLAGS=-L/usr/lib64 -L$(HDF5_LIB) -lhdf5 $(LDFLAGS)
endif endif
%.o : %.f %.o : %.f
$(FC) $(FCFLAGS) -c -o $(BUILDDIR)/$@ $< $(FC) $(FCFLAGS) -c -o $(OBJDIR)/$@ $<
%.o : %.cpp %.o : %.cpp
$(CXX) $(CXXFLAGS) -c -o $(BUILDDIR)/$@ $< $(CXX) $(CXXFLAGS) -c -o $(OBJDIR)/$@ $<
$(BUILDDIR)/%.o : %.cpp $(OBJDIR)/%.o : %.f
$(CXX) $(CXXFLAGS) -c -o $(BUILDDIR)/$@ $< $(FC) $(FCFLAGS) -c -o $(OBJDIR)/$@ $<
$(BUILDDIR)/%.o : ../libnptm/%.cpp $(OBJDIR)/%.o : %.cpp
$(CXX) $(CXXFLAGS) -c -o $(BUILDDIR)/$@ ../libnptm/$< $(CXX) $(CXXFLAGS) -c -o $(OBJDIR)/$@ $<
$(OBJDIR)/%.o : ../libnptm/%.cpp
$(CXX) $(CXXFLAGS) -c -o $(OBJDIR)/$@ ../libnptm/$<
File added
File added
File added
File added
File added
File added
File added
File added
File added
File added
File added
File added
File added
File added
File added
File added
File added
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment