← Back to team overview

ayatana-commits team mailing list archive

[Merge] lp:~ted/indicator-application/mono-version-agreement into lp:indicator-application

 

Ted Gould has proposed merging lp:~ted/indicator-application/mono-version-agreement into lp:indicator-application.

Requested reviews:
  Indicator Applet Developers (indicator-applet-developers)


Mono version changes.

Reviewed by hyperair on IRC.
-- 
https://code.launchpad.net/~ted/indicator-application/mono-version-agreement/+merge/27965
Your team ayatana-commits is subscribed to branch lp:indicator-application.
=== modified file '.bzrignore'
--- .bzrignore	2010-04-29 17:08:21 +0000
+++ .bzrignore	2010-06-18 19:50:40 +0000
@@ -106,3 +106,4 @@
 docs/reference/libappindicator-decl.txt.bak
 docs/reference/libappindicator-decl-list.txt.bak
 src/AppIndicator-0.1.vapi
+bindings/mono/policy.appindicator-sharp.dll

=== modified file 'bindings/mono/Makefile.am'
--- bindings/mono/Makefile.am	2010-06-01 16:07:44 +0000
+++ bindings/mono/Makefile.am	2010-06-18 19:50:40 +0000
@@ -10,11 +10,32 @@
 RAW_API = libappindicator-api.raw
 METADATA = libappindicator-api.metadata
 ASSEMBLY_NAME = appindicator-sharp
-ASSEMBLY = appindicator-sharp.dll
-TARGET = $(ASSEMBLY) $(ASSEMBLY).config
+ASSEMBLY_VERSION = 0.1
+ASSEMBLY = $(ASSEMBLY_NAME).dll
+POLICY = policy.$(ASSEMBLY_VERSION).$(ASSEMBLY_NAME)
+DLLPOLICY = $(POLICY).dll
+
+TARGET = \
+	$(ASSEMBLY) \
+	$(ASSEMBLY).config \
+	$(DLLPOLICY) \
+	$(POLICY).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) \
+	$(POLICY).config
+
 DISTCLEANFILES = $(ASSEMBLY).config
 TEST_SOURCES = TestIndicator.cs
 customs = ApplicationIndicator.custom
@@ -26,10 +47,11 @@
 	appindicator-sharp.dll.config.in	\
 	app-indicator.sources.xml		\
 	$(ASSEMBLY_NAME).snk			\
+	$(POLICY).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)
@@ -72,14 +94,27 @@
 	$(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
+

=== added file 'bindings/mono/policy.0.1.appindicator-sharp.config.in'
--- bindings/mono/policy.0.1.appindicator-sharp.config.in	1970-01-01 00:00:00 +0000
+++ bindings/mono/policy.0.1.appindicator-sharp.config.in	2010-06-18 19:50:40 +0000
@@ -0,0 +1,10 @@
+<configuration>
+	<runtime>
+		<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
+			<dependentAssembly>
+				<assemblyIdentity name="@ASSEMBLY_NAME@" publicKeyToken="bcae265d1c7ab4c2" />
+				<bindingRedirect oldVersion="0.0-@ASSEMBLY_VERSION@" newVersion="@ASSEMBLY_VERSION@"/>
+			</dependentAssembly>
+		</assemblyBinding>
+	</runtime>
+</configuration>


Follow ups