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

add cpnfigurable BUILDDIR in Makefiles

parent f5e8549b
No related branches found
No related tags found
No related merge requests found
SUBDIRS := cluster sphere trapping SUBDIRS := cluster sphere trapping
SRCDIR=$(PWD) SRCDIR=$(PWD)
OBJDIR=$(SRCDIR)/objects OBJDIR=$(SRCDIR)/objects
BUILDDIR=$(SRCDIR)/../build ifndef BUILDDIR
override BUILDDIR=$(SRCDIR)/../build
endif
DOCSDIR=$(SRCDIR)/../doc DOCSDIR=$(SRCDIR)/../doc
all: $(SUBDIRS) all: $(SUBDIRS) $(BUILDDIR)
docs: docs:
cd $(DOCSDIR)/src; doxygen config.dox cd $(DOCSDIR)/src; doxygen config.dox
$(SUBDIRS): $(BUILDDIR):
mkdir -p $(BUILDDIR)
$(SUBDIRS): $(BUILDDIR)
$(MAKE) -C $@ $(MAKE) -C $@
clean: clean: $(BUILDDIR)
rm -f $(OBJDIR)/*.o $(MAKE) -C cluster clean
$(MAKE) -C sphere clean
$(MAKE) -C trapping clean
wipe: wipe: $(BUILDDIR)
rm -f $(BUILDDIR)/cluster/* $(MAKE) -C cluster wipe
rm -f $(BUILDDIR)/sphere/* $(MAKE) -C sphere wipe
rm -f $(BUILDDIR)/trapping/* $(MAKE) -C trapping wipe
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
......
ifndef BUILDDIR ifndef BUILDDIR
override BUILDDIR=../../build/cluster override BUILDDIR=../../build
endif
ifndef BUILDDIR_CLU
override BUILDDIR_CLU=$(BUILDDIR)/cluster
endif endif
ifndef OBJDIR ifndef OBJDIR
override OBJDIR=../objects override OBJDIR=../objects
...@@ -13,20 +16,23 @@ F_CLU_OBJS=$(OBJDIR)/clu.o $(OBJDIR)/edfb_clu.o ...@@ -13,20 +16,23 @@ F_CLU_OBJS=$(OBJDIR)/clu.o $(OBJDIR)/edfb_clu.o
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 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
all: $(BUILDDIR)/clu $(BUILDDIR)/edfb_clu $(BUILDDIR)/np_cluster all: $(BUILDDIR_CLU)/clu $(BUILDDIR_CLU)/edfb_clu $(BUILDDIR_CLU)/np_cluster
$(BUILDDIR_CLU):
mkdir -p $(BUILDDIR_CLU)
$(BUILDDIR)/clu: $(OBJDIR)/clu.o $(BUILDDIR_CLU)/clu: $(OBJDIR)/clu.o $(BUILDDIR_CLU)
$(FC) $(FCFLAGS) -o $(BUILDDIR)/clu $(OBJDIR)/clu.o $(LDFLAGS) $(FC) $(FCFLAGS) -o $(BUILDDIR_CLU)/clu $(OBJDIR)/clu.o $(LDFLAGS)
$(BUILDDIR)/edfb_clu: $(OBJDIR)/edfb_clu.o $(BUILDDIR_CLU)/edfb_clu: $(OBJDIR)/edfb_clu.o $(BUILDDIR_CLU)
$(FC) $(FCFLAGS) -o $(BUILDDIR)/edfb_clu $(OBJDIR)/edfb_clu.o $(LDFLAGS) $(FC) $(FCFLAGS) -o $(BUILDDIR_CLU)/edfb_clu $(OBJDIR)/edfb_clu.o $(LDFLAGS)
$(BUILDDIR)/np_cluster: $(CXX_CLU_OBJS) $(BUILDDIR_CLU)/np_cluster: $(CXX_CLU_OBJS) $(BUILDDIR_CLU)
$(CXX) $(CXXFLAGS) -o $(BUILDDIR)/np_cluster $(CXX_CLU_OBJS) $(CXXLDFLAGS) $(CXX) $(CXXFLAGS) -o $(BUILDDIR_CLU)/np_cluster $(CXX_CLU_OBJS) $(CXXLDFLAGS)
clean: clean:
rm -f $(F_CLU_OBJS) $(CXX_CLU_OBJS) rm -f $(F_CLU_OBJS) $(CXX_CLU_OBJS)
wipe: wipe:
rm -f $(BUILDDIR)/clu $(BUILDDIR)/edfb_clu $(F_CLU_OBJS) $(CXX_CLU_OBJS) rm -f $(BUILDDIR_CLU)/clu $(BUILDDIR_CLU)/edfb_clu $(BUILDDIR_CLU)/np_cluster $(F_CLU_OBJS) $(CXX_CLU_OBJS)
ifndef BUILDDIR ifndef BUILDDIR
override BUILDDIR=../../build/sphere override BUILDDIR=../../build
endif
ifndef BUILDDIR_SPH
override BUILDDIR_SPH=$(BUILDDIR)/sphere
endif endif
ifndef OBJDIR ifndef OBJDIR
override OBJDIR=../objects override OBJDIR=../objects
...@@ -13,20 +16,23 @@ F_SPH_OBJS=$(OBJDIR)/edfb_sph.o $(OBJDIR)/sph.o ...@@ -13,20 +16,23 @@ F_SPH_OBJS=$(OBJDIR)/edfb_sph.o $(OBJDIR)/sph.o
CXX_SPH_OBJS=$(OBJDIR)/np_sphere.o $(OBJDIR)/Commons.o $(OBJDIR)/Configuration.o $(OBJDIR)/file_io.o $(OBJDIR)/Parsers.o $(OBJDIR)/sph_subs.o $(OBJDIR)/sphere.o CXX_SPH_OBJS=$(OBJDIR)/np_sphere.o $(OBJDIR)/Commons.o $(OBJDIR)/Configuration.o $(OBJDIR)/file_io.o $(OBJDIR)/Parsers.o $(OBJDIR)/sph_subs.o $(OBJDIR)/sphere.o
all: $(BUILDDIR)/edfb_sph $(BUILDDIR)/sph $(BUILDDIR)/np_sphere all: $(BUILDDIR_SPH)/edfb_sph $(BUILDDIR_SPH)/sph $(BUILDDIR_SPH)/np_sphere
$(BUILDDIR_SPH):
mkdir -p $(BUILDDIR_SPH)
$(BUILDDIR)/edfb_sph: $(OBJDIR)/edfb_sph.o $(BUILDDIR_SPH)/edfb_sph: $(OBJDIR)/edfb_sph.o $(BUILDDIR_SPH)
$(FC) $(FCFLAGS) -o $(BUILDDIR)/edfb_sph $(OBJDIR)/edfb_sph.o $(LDFLAGS) $(FC) $(FCFLAGS) -o $(BUILDDIR_SPH)/edfb_sph $(OBJDIR)/edfb_sph.o $(LDFLAGS)
$(BUILDDIR)/sph: $(OBJDIR)/sph.o $(BUILDDIR_SPH)/sph: $(OBJDIR)/sph.o $(BUILDDIR_SPH)
$(FC) $(FCFLAGS) -o $(BUILDDIR)/sph $(OBJDIR)/sph.o $(LDFLAGS) $(FC) $(FCFLAGS) -o $(BUILDDIR_SPH)/sph $(OBJDIR)/sph.o $(LDFLAGS)
$(BUILDDIR)/np_sphere: $(CXX_SPH_OBJS) $(BUILDDIR_SPH)/np_sphere: $(CXX_SPH_OBJS) $(BUILDDIR_SPH)
$(CXX) $(CXXFLAGS) -o $(BUILDDIR)/np_sphere $(CXX_SPH_OBJS) $(CXXLDFLAGS) $(CXX) $(CXXFLAGS) -o $(BUILDDIR_SPH)/np_sphere $(CXX_SPH_OBJS) $(CXXLDFLAGS)
clean: clean:
rm -f $(F_SPH_OBJS) $(CXX_SPH_OBJS) rm -f $(F_SPH_OBJS) $(CXX_SPH_OBJS)
wipe: wipe:
rm -f $(BUILDDIR)/edfb_sph $(BUILDDIR)/sph $(F_SPH_OBJS) $(CXX_SPH_OBJS) rm -f $(BUILDDIR_SPH)/edfb_sph $(BUILDDIR_SPH)/sph $(BUILDDIR_SPH)/np_sphere $(F_SPH_OBJS) $(CXX_SPH_OBJS)
ifndef BUILDDIR ifndef BUILDDIR
override BUILDDIR=../../build/trapping override BUILDDIR=../../build
endif
ifndef BUILDDIR_TRA
override BUILDDIR_TRA=$(BUILDDIR)/trapping
endif endif
ifndef OBJDIR ifndef OBJDIR
override OBJDIR=../objects override OBJDIR=../objects
...@@ -12,20 +15,23 @@ F_TRAP_OBJS=$(OBJDIR)/frfme.o $(OBJDIR)/lffft.o ...@@ -12,20 +15,23 @@ F_TRAP_OBJS=$(OBJDIR)/frfme.o $(OBJDIR)/lffft.o
CXX_TRAP_OBJS=$(OBJDIR)/np_trapping.o $(OBJDIR)/cfrfme.o $(OBJDIR)/clffft.o $(OBJDIR)/Parsers.o $(OBJDIR)/Commons.o $(OBJDIR)/Configuration.o $(OBJDIR)/file_io.o $(OBJDIR)/sph_subs.o $(OBJDIR)/tra_subs.o CXX_TRAP_OBJS=$(OBJDIR)/np_trapping.o $(OBJDIR)/cfrfme.o $(OBJDIR)/clffft.o $(OBJDIR)/Parsers.o $(OBJDIR)/Commons.o $(OBJDIR)/Configuration.o $(OBJDIR)/file_io.o $(OBJDIR)/sph_subs.o $(OBJDIR)/tra_subs.o
all: $(BUILDDIR)/frfme $(BUILDDIR)/lffft $(BUILDDIR)/np_trapping all: $(BUILDDIR_TRA)/frfme $(BUILDDIR_TRA)/lffft $(BUILDDIR_TRA)/np_trapping
$(BUILDDIR_TRA):
mkdir -p $(BUILDDIR_TRA)
$(BUILDDIR)/frfme: $(OBJDIR)/frfme.o $(BUILDDIR_TRA)/frfme: $(OBJDIR)/frfme.o $(BUILDDIR_TRA)
$(FC) $(FCFLAGS) -o $(BUILDDIR)/frfme $(OBJDIR)/frfme.o $(LDFLAGS) $(FC) $(FCFLAGS) -o $(BUILDDIR_TRA)/frfme $(OBJDIR)/frfme.o $(LDFLAGS)
$(BUILDDIR)/lffft: $(OBJDIR)/lffft.o $(BUILDDIR_TRA)/lffft: $(OBJDIR)/lffft.o $(BUILDDIR_TRA)
$(FC) $(FCFLAGS) -o $(BUILDDIR)/lffft $(OBJDIR)/lffft.o $(LDFLAGS) $(FC) $(FCFLAGS) -o $(BUILDDIR_TRA)/lffft $(OBJDIR)/lffft.o $(LDFLAGS)
$(BUILDDIR)/np_trapping: $(CXX_TRAP_OBJS) $(BUILDDIR_TRA)/np_trapping: $(CXX_TRAP_OBJS) $(BUILDDIR_TRA)
$(CXX) $(CXXFLAGS) -o $(BUILDDIR)/np_trapping $(CXX_TRAP_OBJS) $(CXXLDFLAGS) $(CXX) $(CXXFLAGS) -o $(BUILDDIR_TRA)/np_trapping $(CXX_TRAP_OBJS) $(CXXLDFLAGS)
clean: clean:
rm -f $(F_TRAP_OBJS) $(CXX_TRAP_OBJS) rm -f $(F_TRAP_OBJS) $(CXX_TRAP_OBJS)
wipe: wipe:
rm -f $(BUILDDIR)/frfme $(BUILDDIR)/lffft $(F_TRAP_OBJS) $(CXX_TRAP_OBJS) rm -f $(BUILDDIR_TRA)/frfme $(BUILDDIR_TRA)/lffft $(BUILDDIR_TRA)/np_trapping $(F_TRAP_OBJS) $(CXX_TRAP_OBJS)
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment