Makefile 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. MODULE_TOPDIR = ../../..
  2. include $(MODULE_TOPDIR)/include/Make/Lib.make
  3. LIB_NAME = grass7_wxvdigit
  4. SOURCES := $(wildcard *.cpp) $(LIB_NAME)_wrap.cpp
  5. SHLIB_OBJS := $(patsubst %.cpp, $(OBJDIR)/%.o, $(SOURCES))
  6. EXTRA_CFLAGS = $(SHLIB_CFLAGS) $(GDALCFLAGS) $(PYTHONCFLAGS) $(WXWIDGETSCXXFLAGS)
  7. EXTRA_LIBS = $(VECTLIB) $(GISLIB) $(GDALLIBS) $(VEDITLIB) $(WXWIDGETSLIB) $(PYTHONLDFLAGS)
  8. ifeq ($(findstring darwin,$(ARCH)),darwin)
  9. EXTRA_LIBS := -bundle -undefined dynamic_lookup $(EXTRA_LIBS)
  10. else
  11. EXTRA_LIBS := $(EXTRA_LIBS) -lgdi
  12. endif
  13. LOCAL_HEADERS = digit.h driver.h
  14. ETCDIR = $(ETC)/wxpython
  15. SHLIB = $(OBJDIR)/_$(LIB_NAME).so
  16. EXTRA_CLEAN_FILES = $(SHLIB) $(LIB_NAME).i $(LIB_NAME).py $(LIB_NAME)_wrap.cpp
  17. default: install_vdigit
  18. $(LIB_NAME).i: digit.i dig_types.i driver.h digit.h
  19. cat digit.i dig_types.i > $(LIB_NAME).i
  20. echo "/* auto-generated swig typedef file */" >> $(LIB_NAME).i
  21. cat driver.h digit.h >> $(LIB_NAME).i
  22. $(LIB_NAME).py $(LIB_NAME)_wrap.cpp: $(LIB_NAME).i
  23. $(SWIG) -c++ -python -shadow -o $(LIB_NAME)_wrap.cpp $<
  24. .NOTPARALLEL: $(LIB_NAME).py $(LIB_NAME)_wrap.cpp
  25. $(SHLIB): $(SHLIB_OBJS)
  26. ifeq ($(findstring darwin,$(ARCH)),darwin)
  27. $(CXX) -o $@ $(LDFLAGS) $^ $(EXTRA_LIBS)
  28. else
  29. $(SHLIB_LD) -o $@ $(LDFLAGS) $^ $(EXTRA_LIBS)
  30. endif
  31. install_vdigit: $(SHLIB) $(LIB_NAME).py
  32. $(INSTALL) $(SHLIB) $(ETCDIR)/vdigit/
  33. $(INSTALL_DATA) $(LIB_NAME).py $(ETCDIR)/vdigit/