Makefile 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. -include $(PVFMM_DIR)/MakeVariables
  2. ifndef CXX_PVFMM
  3. -include ../MakeVariables
  4. endif
  5. ifndef CXXFLAGS_PVFMM
  6. $(error Cannot find file: MakeVariables)
  7. endif
  8. CXX=$(CXX_PVFMM)
  9. CXXFLAGS=$(CXXFLAGS_PVFMM)
  10. LDLIBS=$(LDLIBS_PVFMM)
  11. RM = rm -f
  12. MKDIRS = mkdir -p
  13. BINDIR = ./bin
  14. SRCDIR = ./src
  15. OBJDIR = ./obj
  16. INCDIR = ./include
  17. TARGET_BIN = \
  18. $(BINDIR)/example1 \
  19. $(BINDIR)/example2 \
  20. $(BINDIR)/fmm_pts \
  21. $(BINDIR)/fmm_cheb
  22. all : $(TARGET_BIN)
  23. ifeq ($(INTEL_OFFLOAD_OK),yes)
  24. $(BINDIR)/%: $(OBJDIR)/%.o
  25. -@$(MKDIRS) $(dir $@)
  26. $(CXX) $(CXXFLAGS) -no-offload $^ $(LDLIBS) -o $@
  27. $(CXX) $(CXXFLAGS) $^_async $(LDLIBS) -o $@_async
  28. $(CXX) $(CXXFLAGS) -D__DEVICE_SYNC__=1 $^_mic $(LDLIBS) -o $@_mic
  29. $(OBJDIR)/%.o: $(SRCDIR)/%.cpp
  30. -@$(MKDIRS) $(dir $@)
  31. $(CXX) $(CXXFLAGS) -no-offload -I$(INCDIR) -c $^ -o $@
  32. $(CXX) $(CXXFLAGS) -I$(INCDIR) -c $^ -o $@_async
  33. $(CXX) $(CXXFLAGS) -D__DEVICE_SYNC__=1 -I$(INCDIR) -c $^ -o $@_mic
  34. else
  35. $(BINDIR)/%: $(OBJDIR)/%.o
  36. -@$(MKDIRS) $(dir $@)
  37. $(CXX) $(CXXFLAGS) $^ $(LDLIBS) -o $@
  38. $(OBJDIR)/%.o: $(SRCDIR)/%.cpp
  39. -@$(MKDIRS) $(dir $@)
  40. $(CXX) $(CXXFLAGS) -I$(INCDIR) -c $^ -o $@
  41. endif
  42. clean:
  43. $(RM) -r $(BINDIR)/* $(OBJDIR)/*
  44. $(RM) *~ */*~