RAW_APIS = evolution-api-1.8.raw if USE_EDS_1_8 RAW_API = evolution-api-1.8.raw endif # NOTE! We use the 1.8 API definition for 1.9.x and 1.10.x. We can do this # even though the .so version for libedataserver is 9 instead of 7 because we # bind only a subset of it, and it didn't change between 1.8 and 1.10. This # might not always be the case, so you HAVE TO RECHECK IT BEFORE YOU ADD # SUPPORT FOR 1.11! if USE_EDS_1_9 RAW_API = evolution-api-1.8.raw endif if USE_EDS_1_10 RAW_API = evolution-api-1.8.raw endif API=evolution-api.xml METADATA = Evolution.metadata ASSEMBLY_NAME = evolution-sharp references = $(GTK_SHARP_LIBS) TARGET = $(ASSEMBLY) ASSEMBLY = $(ASSEMBLY_NAME).dll gapidir = $(datadir)/gapi-2.0 noinst_DATA = $(ASSEMBLY) $(ASSEMBLY).config gapi_DATA = $(API) CLEANFILES = $(ASSEMBLY) generated-stamp generated/*.cs $(API) evolution-sharp.pub DISTCLEANFILES = $(ASSEMBLY).config AssemblyInfo.cs $(TESTCAL_TARGET) $(TESTTASK_TARGET) $(TESTBOOK_TARGET) $(TESTCAL_TARGET).mdb $(TESTTASK_TARGET).mdb $(TESTBOOK_TARGET).mdb $(ASSEMBLY).mdb sources = \ src/CalComponent.cs \ src/CalRecurrence.cs \ src/CalUtil.cs \ src/GLibUtil.cs \ src/ContactPhoto.cs build_sources = $(addprefix $(srcdir)/, $(sources)) AssemblyInfo.cs customs = \ Book.custom \ Contact.custom \ Cal.custom \ CalView.custom \ Source.custom \ VCard.custom \ VCardAttribute.custom build_customs = $(addprefix $(srcdir)/, $(customs)) EXTRA_DIST = \ $(ASSEMBLY).config.in \ AssemblyInfo.cs.in \ $(RAW_APIS) \ $(METADATA) \ $(customs) \ $(sources) \ $(TESTBOOK_CSFILES) \ $(TESTCAL_CSFILES) \ $(TESTTASK_CSFILES) $(API): $(srcdir)/$(RAW_API) $(srcdir)/$(METADATA) cp $(srcdir)/$(RAW_API) $(API) chmod u+w $(API) $(GAPI_FIXUP) --api=$(API) --metadata=$(srcdir)/$(METADATA) generated-stamp: $(API) $(build_customs) rm -f generated/* && \ $(GAPI_CODEGEN) --generate $(API) --outdir=generated --customdir=$(srcdir) --assembly-name=$(ASSEMBLY_NAME) \ && touch generated-stamp $(ASSEMBLY): $(build_sources) generated-stamp evolution-sharp.pub $(CSC) -debug --unsafe /out:$(ASSEMBLY) /target:library $(references) $(build_sources) generated/*.cs all: $(ASSEMBLY) $(TEST_TARGETS) install-data-local: @if test -n '$(TARGET)'; then \ echo "$(GACUTIL) /i $(ASSEMBLY) /f /package $(PACKAGE) /root $(DESTDIR)$(prefix)/lib"; \ $(GACUTIL) /i $(ASSEMBLY) /f /package $(PACKAGE) /root $(DESTDIR)$(prefix)/lib || exit 1; \ fi uninstall-local: @if test -n '$(TARGET)'; then \ echo "$(GACUTIL) /u $(ASSEMBLY_NAME) /package $(PACKAGE) /root $(DESTDIR)$(prefix)/lib"; \ $(GACUTIL) /u $(ASSEMBLY_NAME) /package $(PACKAGE) /root $(DESTDIR)$(prefix)/lib || exit 1; \ fi evolution-sharp.pub: $(top_srcdir)/evolution-sharp.pub cp $(top_srcdir)/evolution-sharp.pub . TEST_TARGETS = $(TESTCAL_TARGET) $(TESTTASK_TARGET) $(TESTBOOK_TARGET) TESTCAL_TARGET = TestCal.exe TESTCAL_CSFILES = $(srcdir)/TestCal.cs $(TESTCAL_TARGET): $(TESTCAL_CSFILES) $(ASSEMBLY) $(CSC) -debug -out:$@ $(CSFLAGS) $(TESTCAL_CSFILES) -r:$(ASSEMBLY) $(references) TESTTASK_TARGET = TestTask.exe TESTTASK_CSFILES = $(srcdir)/TestTask.cs $(TESTTASK_TARGET): $(TESTTASK_CSFILES) $(ASSEMBLY) $(CSC) -debug -out:$@ $(CSFLAGS) $(TESTTASK_CSFILES) -r:$(ASSEMBLY) $(references) TESTBOOK_TARGET = TestBook.exe TESTBOOK_CSFILES = $(srcdir)/TestBook.cs $(TESTBOOK_TARGET): $(TESTBOOK_CSFILES) $(ASSEMBLY) $(CSC) -debug -out:$@ $(CSFLAGS) $(TESTBOOK_CSFILES) -r:$(ASSEMBLY) $(references)