Makefile 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  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_cheb
  21. all : $(TARGET_BIN)
  22. ifeq ($(INTEL_OFFLOAD_OK),yes)
  23. $(BINDIR)/%: $(OBJDIR)/%.o
  24. -@$(MKDIRS) $(dir $@)
  25. $(CXX) $(CXXFLAGS) -no-offload $^ $(LDLIBS) -o $@
  26. $(CXX) $(CXXFLAGS) $^_async $(LDLIBS) -o $@_async
  27. $(CXX) $(CXXFLAGS) -D__DEVICE_SYNC__=1 $^_mic $(LDLIBS) -o $@_mic
  28. $(OBJDIR)/%.o: $(SRCDIR)/%.cpp
  29. -@$(MKDIRS) $(dir $@)
  30. $(CXX) $(CXXFLAGS) -no-offload -I$(INCDIR) -c $^ -o $@
  31. $(CXX) $(CXXFLAGS) -I$(INCDIR) -c $^ -o $@_async
  32. $(CXX) $(CXXFLAGS) -D__DEVICE_SYNC__=1 -I$(INCDIR) -c $^ -o $@_mic
  33. else
  34. $(BINDIR)/%: $(OBJDIR)/%.o
  35. -@$(MKDIRS) $(dir $@)
  36. $(CXX) $(CXXFLAGS) $^ $(LDLIBS) -o $@
  37. $(OBJDIR)/%.o: $(SRCDIR)/%.cpp
  38. -@$(MKDIRS) $(dir $@)
  39. $(CXX) $(CXXFLAGS) -I$(INCDIR) -c $^ -o $@
  40. endif
  41. clean:
  42. $(RM) -r $(BINDIR)/* $(OBJDIR)/*
  43. $(RM) *~ */*~