diff options
Diffstat (limited to 'bindings/mono/Makefile.am')
-rw-r--r-- | bindings/mono/Makefile.am | 81 |
1 files changed, 71 insertions, 10 deletions
diff --git a/bindings/mono/Makefile.am b/bindings/mono/Makefile.am index 4d2d8b4..dfaa41f 100644 --- a/bindings/mono/Makefile.am +++ b/bindings/mono/Makefile.am @@ -10,11 +10,43 @@ MIDDLE_API = libappindicator-api.middle RAW_API = libappindicator-api.raw METADATA = libappindicator-api.metadata ASSEMBLY_NAME = appindicator-sharp -ASSEMBLY = appindicator-sharp.dll -TARGET = $(ASSEMBLY) $(ASSEMBLY).config +ASSEMBLY_VERSION = 0.2.0.0 +ASSEMBLY = $(ASSEMBLY_NAME).dll +POLICY = policy.$(POLICY_VERSION).$(ASSEMBLY_NAME) +POLICY_VERSION = 0.0 +DLLPOLICY = $(POLICY).dll +POLICY1 = policy.$(POLICY1_VERSION).$(ASSEMBLY_NAME) +POLICY1_VERSION = 0.1 +DLLPOLICY1 = $(POLICY1).dll +WRAPPER_FREE_BINDING_SRC = $(top_srcdir)/src/app-indicator.c +WRAPPER_FREE_BINDING = app-indicator.c + +TARGET = \ + $(ASSEMBLY) \ + $(ASSEMBLY).config \ + $(DLLPOLICY) \ + $(POLICY).config \ + $(DLLPOLICY1) \ + $(POLICY1).config + assemblydir = $(libdir)/cli/appindicator-sharp-0.1 assembly_DATA = $(TARGET) -CLEANFILES = $(ASSEMBLY) $(ASSEMBLY).mdb generated-stamp generated/*.cs $(API) $(MIDDLE_API) $(RAW_API) $(TEST) + +CLEANFILES = \ + $(ASSEMBLY) \ + $(ASSEMBLY).mdb \ + generated-stamp \ + generated/*.cs \ + $(API) \ + $(MIDDLE_API) \ + $(RAW_API) \ + $(TEST) \ + $(DLLPOLICY) \ + $(DLLPOLICY1) \ + $(WRAPPER_FREE_BINDING) \ + $(POLICY).config \ + $(POLICY1).config + DISTCLEANFILES = $(ASSEMBLY).config TEST_SOURCES = TestIndicator.cs customs = ApplicationIndicator.custom @@ -26,16 +58,21 @@ EXTRA_DIST = \ appindicator-sharp.dll.config.in \ app-indicator.sources.xml \ $(ASSEMBLY_NAME).snk \ + $(POLICY).config.in \ + $(POLICY1).config.in \ $(customs) \ $(TEST_SOURCES) -GACUTIL_FLAGS="-package $(ASSEMBLY_NAME) -root $(DESTDIR)$(prefix)/lib" +GACUTIL_FLAGS=-package $(ASSEMBLY_NAME) -root $(DESTDIR)$(prefix)/lib references = $(GTK_SHARP_LIBS) test_references = $(GTK_SHARP_LIBS) $(NUNIT_LIBS) -r:$(ASSEMBLY) -$(RAW_API): app-indicator.sources.xml - $(GAPI_PARSER) app-indicator.sources.xml +$(RAW_API): app-indicator.sources.xml $(WRAPPER_FREE_BINDING) + $(GAPI_PARSER) $(srcdir)/app-indicator.sources.xml + +$(WRAPPER_FREE_BINDING): $(WRAPPER_FREE_BINDING_SRC) + sed '/signals\[X_NEW_LABEL\] /,+6d' $(WRAPPER_FREE_BINDING_SRC) > $(WRAPPER_FREE_BINDING) $(MIDDLE_API): $(METADATA) $(RAW_API) cp $(srcdir)/$(RAW_API) $(MIDDLE_API) @@ -54,6 +91,9 @@ $(API): $(MIDDLE_API) Makefile.am -e "s|PROP_ICON_THEME_PATH_S|icon-theme-path|" \ -e "s|PROP_MENU_S|menu|" \ -e "s|PROP_CONNECTED_S|connected|" \ + -e "s|PROP_LABEL_S|label|" \ + -e "s|PROP_LABEL_GUIDE_S|label-guide|" \ + -e "s|PROP_ORDERING_INDEX_S|ordering-index|" \ $< > $@ api_includes = $(GTK_SHARP_CFLAGS) @@ -72,14 +112,35 @@ $(ASSEMBLY): generated-stamp $(srcdir)/AssemblyInfo.cs $(CSC) $(CSFLAGS) -keyfile:$(srcdir)/$(ASSEMBLY_NAME).snk -nowarn:0169,0612,0618 -unsafe -out:$(ASSEMBLY) -target:library $(references) $(builddir)/$(GENERATED_SOURCES) $(srcdir)/AssemblyInfo.cs install-data-local: - echo "$(GACUTIL) -i $(ASSEMBLY_NAME).dll -package $(ASSEMBLY_NAME) -root $(DESTDIR)$(prefix)/lib"; \ - $(GACUTIL) -i $(ASSEMBLY_NAME).dll -package $(ASSEMBLY_NAME) -root $(DESTDIR)$(prefix)/lib || exit 1; + echo "$(GACUTIL) -i $(ASSEMBLY_NAME).dll $(GACUTIL_FLAGS)"; \ + $(GACUTIL) -i $(ASSEMBLY_NAME).dll $(GACUTIL_FLAGS) || exit 1; + echo "$(GACUTIL) -i $(DLLPOLICY) $(GACUTIL_FLAGS)"; \ + $(GACUTIL) -i $(DLLPOLICY) $(GACUTIL_FLAGS) || exit 1; uninstall-local: - echo "$(GACUTIL) -u $(ASSEMBLY_NAME) -package $(ASSEMBLY_NAME) -root $(DESTDIR)$(prefix)/lib"; \ - $(GACUTIL) -u $(ASSEMBLY_NAME) -package $(ASSEMBLY_NAME) -root $(DESTDIR)$(prefix)/lib || exit 1; + echo "$(GACUTIL) -u $(ASSEMBLY_NAME) $(GACUTIL_FLAGS)"; \ + $(GACUTIL) -u $(ASSEMBLY_NAME) $(GACUTIL_FLAGS) || exit 1; + echo "$(GACUTIL) -u $(DLLPOLICY) $(GACUTIL_FLAGS)"; \ + $(GACUTIL) -u $(POLICY) $(GACUTIL_FLAGS) || exit 1; $(TEST): $(ASSEMBLY) $(TEST_SOURCES) $(CSC) -out:$(TEST) -target:library $(test_references) $(srcdir)/$(TEST_SOURCES) all: $(TEST) + +$(POLICY).config: $(POLICY).config.in Makefile + sed -e "s|@ASSEMBLY_NAME@|$(ASSEMBLY_NAME)|" \ + -e "s|@ASSEMBLY_VERSION@|$(ASSEMBLY_VERSION)|g" \ + $< > $@ + +$(DLLPOLICY): $(POLICY).config $(ASSEMBLY_NAME).snk Makefile + $(AL) -link:$(POLICY).config -out:$(DLLPOLICY) -keyfile:$(srcdir)/$(ASSEMBLY_NAME).snk + + +$(POLICY1).config: $(POLICY1).config.in Makefile + sed -e "s|@ASSEMBLY_NAME@|$(ASSEMBLY_NAME)|" \ + -e "s|@ASSEMBLY_VERSION@|$(ASSEMBLY_VERSION)|g" \ + $< > $@ + +$(DLLPOLICY1): $(POLICY1).config $(ASSEMBLY_NAME).snk Makefile + $(AL) -link:$(POLICY1).config -out:$(DLLPOLICY1) -keyfile:$(srcdir)/$(ASSEMBLY_NAME).snk |