MODULE_TOPDIR = ../../..

include $(MODULE_TOPDIR)/include/Make/Lib.make

# substitute OSX arch flags for wxpython
ifneq ($(MACOSX_ARCHS),)
CFLAGS := $(subst $(MACOSX_ARCHS),,$(CFLAGS)) $(MACOSX_ARCHS_WXPYTHON)
CXXFLAGS := $(subst $(MACOSX_ARCHS),,$(CXXFLAGS)) $(MACOSX_ARCHS_WXPYTHON)
LDFLAGS := $(subst $(MACOSX_ARCHS),,$(LDFLAGS)) $(MACOSX_ARCHS_WXPYTHON)
endif

LIB_NAME = grass6_wxvdigit

SHLIB = $(OBJDIR)/_$(LIB_NAME).so

ETCDIR = $(ETC)/wxpython

EXTRA_CLEAN_FILES = grass6_wxvdigit.py grass6_wxvdigit.i grass6_wxvdigit_wrap.cpp
default:

ifneq ($(USE_WXWIDGETS),)
ifneq ($(USE_PYTHON),)
ifneq ($(strip $(CXX)),)
default: install_vdigit
endif
endif
endif

$(LIB_NAME).i: digit.i dig_types.i pseudodc.i driver.h digit.h
	cat digit.i pseudodc.i dig_types.i > $(LIB_NAME).i
	echo "/* auto-generated swig typedef file */" >> $(LIB_NAME).i
	cat driver.h digit.h >> $(LIB_NAME).i

$(LIB_NAME).py: $(SHLIB)

$(SHLIB): $(LIB_NAME).i cats.cpp digit.cpp driver.cpp driver_draw.cpp \
	driver_select.cpp line.cpp message.cpp select.cpp undo.cpp vertex.cpp
	$(PYTHON) setup.py build_ext --swig=swig --swig-opts=-c++ --build-lib=$(OBJDIR) --build-temp=$(OBJDIR)

.NOTPARALLEL: $(LIB_NAME).py $(LIB_NAME)_wrap.cpp

install_vdigit: $(ETCDIR)/vdigit $(ETCDIR)/vdigit/_$(LIB_NAME).so $(ETCDIR)/vdigit/$(LIB_NAME).py

$(ETCDIR)/vdigit:
	$(MKDIR) $@

$(ETCDIR)/vdigit/_$(LIB_NAME).so: $(SHLIB)
	$(INSTALL) $< $@

$(ETCDIR)/vdigit/$(LIB_NAME).py: $(LIB_NAME).py
	$(INSTALL_DATA) $< $@
