Skip to content
Snippets Groups Projects
Select Git revision
  • c68a85585f403ae7b1a44d2564cc636ef5f723a2
  • master default protected
  • offload_trapping
  • script_devel
  • parallel_trapping
  • unify_iterations
  • containers-m10
  • magma_refinement
  • release9
  • enable_svd
  • parallel_angles_gmu
  • containers-m8
  • parallel_angles
  • profile_omp_leonardo
  • test_nvidia_profiler
  • containers
  • shaditest
  • test1
  • main
  • 3-error-in-run-the-program
  • experiment
  • NP_TMcode-M10a.03
  • NP_TMcode-M10a.02
  • NP_TMcode-M10a.01
  • NP_TMcode-M10a.00
  • NP_TMcode-M9.01
  • NP_TMcode-M9.00
  • NP_TMcode-M8.03
  • NP_TMcode-M8.02
  • NP_TMcode-M8.01
  • NP_TMcode-M8.00
  • NP_TMcode-M7.00
  • v0.0
33 results

Makefile

Blame
  • Makefile 1.76 KiB
    ifndef BUILDDIR
    override BUILDDIR=../../build
    endif
    ifndef BUILDDIR_TRA
    override BUILDDIR_TRA=$(BUILDDIR)/trapping
    endif
    ifndef OBJDIR
    override OBJDIR=./objects
    endif
    ifndef BUILDDIR_NPTM
    override BUILDDIR_NPTM=$(BUILDDIR)/libnptm
    endif
    ifndef LIBNPTM
    # choose one of the two following lines, depending on whether a static or dynamic libnptm is wanted
    override LIBNPTM=$(BUILDDIR_NPTM)/libnptm.a
    #override LIBNPTM=$(BUILDDIR_NPTM)/libnpTm.so
    endif
    
    include ../make.inc
    
    
    F_TRAP_OBJS=$(OBJDIR)/frfme.o $(OBJDIR)/lffft.o
    
    CXX_TRAP_OBJS=$(OBJDIR)/np_trapping.o $(OBJDIR)/cfrfme.o $(OBJDIR)/clffft.o
    
    CXX_TRAP_DEBUG=$(OBJDIR)/np_trapping.g* $(OBJDIR)/cfrfme.g* $(OBJDIR)/clffft.g*
    
    all: $(LIBNPTM) $(BUILDDIR_TRA)/frfme $(BUILDDIR_TRA)/lffft $(BUILDDIR_TRA)/np_trapping
    
    $(OBJDIR):
    	mkdir -p $(OBJDIR)
    
    $(LIBNPTM):
    	BUILDDIR=$(BUILDDIR) BUILDDIR_NPTM=$(BUILDDIR_NPTM) LIBNPTM=$(LIBNPTM) $(MAKE) -C ../libnptm $@
    
    $(BUILDDIR_TRA):
    	mkdir -p $(BUILDDIR_TRA)
    
    $(BUILDDIR_TRA)/frfme: $(OBJDIR) $(OBJDIR)/frfme.o $(BUILDDIR_TRA)
    	$(FC) $(FCFLAGS) -o $(BUILDDIR_TRA)/frfme $(OBJDIR)/frfme.o $(LDFLAGS)
    
    $(BUILDDIR_TRA)/lffft: $(OBJDIR) $(OBJDIR)/lffft.o $(BUILDDIR_TRA)
    	$(FC) $(FCFLAGS) -o $(BUILDDIR_TRA)/lffft $(OBJDIR)/lffft.o $(LDFLAGS)
    
    # We put $(LIBNPTM) as an object to link in directly, so that it will be found at runtime even if it is a shared object library. May change in the future when we have an install: target
    $(BUILDDIR_TRA)/np_trapping: $(OBJDIR) $(CXX_TRAP_OBJS) $(BUILDDIR_TRA) $(LIBNPTM)
    	$(CXX) $(CXXFLAGS) -o $(BUILDDIR_TRA)/np_trapping $(CXX_TRAP_OBJS) $(LIBNPTM) $(CXXLDFLAGS) 
    
    clean:
    	rm -f $(F_TRAP_OBJS) $(CXX_TRAP_OBJS) $(CXX_TRAP_DEBUG)
    
    wipe:
    	rm -f $(BUILDDIR_TRA)/frfme $(BUILDDIR_TRA)/lffft $(BUILDDIR_TRA)/np_trapping $(F_TRAP_OBJS) $(CXX_TRAP_OBJS) $(CXX_TRAP_DEBUG)