2005-09-21 Mike Kestner <mkestner@novell.com>

* bootstrap* : expose POLICY_VERSIONS variable.
	* configure.in.in : AC_SUBST new POLICY_VERSIONS.
	* Makefile.include : build/install policy assemblies.
	* policy.config.in : policy config skeleton.
	* */Makefile.am : ditto.

svn path=/trunk/gtk-sharp/; revision=50450
This commit is contained in:
Mike Kestner 2005-09-22 04:26:52 +00:00
parent b0c973ebe0
commit f9be897c3f
13 changed files with 183 additions and 40 deletions

View file

@ -1,3 +1,11 @@
2005-09-21 Mike Kestner <mkestner@novell.com>
* bootstrap* : expose POLICY_VERSIONS variable.
* configure.in.in : AC_SUBST new POLICY_VERSIONS.
* Makefile.include : build/install policy assemblies.
* policy.config.in : policy config skeleton.
* */Makefile.am : ditto.
2005-09-19 Tambet Ingo <tambet@ximian.com> 2005-09-19 Tambet Ingo <tambet@ximian.com>
* glib/Opaque.cs: Set owned property in any case. Generated code * glib/Opaque.cs: Set owned property in any case. Generated code

View file

@ -4,6 +4,7 @@ EXTRA_DIST = \
gtk-sharp.snk \ gtk-sharp.snk \
gapi-cdecl-insert \ gapi-cdecl-insert \
makefile.win32 \ makefile.win32 \
policy.config.in \
AssemblyInfo.cs.in \ AssemblyInfo.cs.in \
ChangeLog \ ChangeLog \
HACKING \ HACKING \

View file

@ -5,14 +5,17 @@ RAW_API = $(pkg)-api.raw
ASSEMBLY_NAME = $(pkg)-sharp ASSEMBLY_NAME = $(pkg)-sharp
ASSEMBLY = $(ASSEMBLY_NAME).dll ASSEMBLY = $(ASSEMBLY_NAME).dll
TARGET = $(pkg:=-sharp.dll) $(pkg:=-sharp.dll.config) TARGET = $(pkg:=-sharp.dll) $(pkg:=-sharp.dll.config) $(POLICY_ASSEMBLIES)
noinst_DATA = $(TARGET) noinst_DATA = $(TARGET)
TARGET_API = $(pkg:=-api.xml) TARGET_API = $(pkg:=-api.xml)
gapidir = $(datadir)/gapi-2.0 gapidir = $(datadir)/gapi-2.0
gapi_DATA = $(TARGET_API) gapi_DATA = $(TARGET_API)
CLEANFILES = $(ASSEMBLY) $(ASSEMBLY).mdb generated-stamp generated/*.cs $(API) glue/generated.c $(SNK) AssemblyInfo.cs CLEANFILES = $(ASSEMBLY) $(ASSEMBLY).mdb $(POLICY_ASSEMBLIES) generated-stamp generated/*.cs $(API) glue/generated.c $(SNK) AssemblyInfo.cs $(POLICY_CONFIGS)
DISTCLEANFILES = $(ASSEMBLY).config DISTCLEANFILES = $(ASSEMBLY).config
POLICY_ASSEMBLIES = $(addsuffix .$(ASSEMBLY), $(addprefix policy., $(POLICY_VERSIONS)))
POLICY_CONFIGS = $(addsuffix .config, $(addprefix policy., $(POLICY_VERSIONS)))
EXTRA_DIST = $(RAW_API) $(SYMBOLS) $(ASSEMBLY).config.in $(METADATA) $(customs) $(sources) $(add_dist) EXTRA_DIST = $(RAW_API) $(SYMBOLS) $(ASSEMBLY).config.in $(METADATA) $(customs) $(sources) $(add_dist)
build_symbols = $(addprefix --symbols=$(srcdir)/, $(SYMBOLS)) build_symbols = $(addprefix --symbols=$(srcdir)/, $(SYMBOLS))
@ -43,6 +46,13 @@ $(SNK): $(top_srcdir)/$(SNK)
AssemblyInfo.cs: $(top_builddir)/AssemblyInfo.cs AssemblyInfo.cs: $(top_builddir)/AssemblyInfo.cs
cp $(top_builddir)/AssemblyInfo.cs . cp $(top_builddir)/AssemblyInfo.cs .
$(POLICY_ASSEMBLIES): $(top_builddir)/policy.config $(SNK)
@for i in "$(POLICY_VERSIONS)"; do \
echo "Creating policy.$$i.$(ASSEMBLY)"; \
sed -e "s/@ASSEMBLY_NAME@/$(ASSEMBLY_NAME)/" -e "s/@POLICY@/$$i/" $(top_builddir)/policy.config > policy.$$i.config; \
$(AL) -link:policy.$$i.config -out:policy.$$i.$(ASSEMBLY) -keyfile:$(SNK); \
done
build_sources = $(addprefix $(srcdir)/, $(sources)) AssemblyInfo.cs build_sources = $(addprefix $(srcdir)/, $(sources)) AssemblyInfo.cs
build_references = $(addprefix /r:, $(references)) build_references = $(addprefix /r:, $(references))
@ -58,13 +68,26 @@ $(ASSEMBLY): generated-stamp $(SNK) $(build_sources) $(references)
$(GAPI_CDECL_INSERT) $(GAPI_CDECL_INSERT)
install-data-local: install-data-local:
@if test -n '$(pkg)'; then \ @if test -n '$(pkg)'; then \
echo "$(GACUTIL) /i $(ASSEMBLY) /f $(GACUTIL_FLAGS)"; \ echo "$(GACUTIL) /i $(ASSEMBLY) /f $(GACUTIL_FLAGS)"; \
$(GACUTIL) /i $(ASSEMBLY) /f $(GACUTIL_FLAGS) || exit 1; \ $(GACUTIL) /i $(ASSEMBLY) /f $(GACUTIL_FLAGS) || exit 1; \
if test -n '$(POLICY_VERSIONS)'; then \
for i in $(POLICY_VERSIONS); do \
echo "$(GACUTIL) /i policy.$$i.$(ASSEMBLY) /f $(GACUTIL_FLAGS)"; \
$(GACUTIL) /i policy.$$i.$(ASSEMBLY) /f $(GACUTIL_FLAGS) || exit 1; \
done \
fi \
fi fi
uninstall-local: uninstall-local:
@if test -n '$(pkg)'; then \ @if test -n '$(pkg)'; then \
echo "$(GACUTIL) /u $(ASSEMBLY_NAME) $(GACUTIL_FLAGS)"; \ echo "$(GACUTIL) /u $(ASSEMBLY_NAME) $(GACUTIL_FLAGS)"; \
$(GACUTIL) /u $(ASSEMBLY_NAME) $(GACUTIL_FLAGS) || exit 1; \ $(GACUTIL) /u $(ASSEMBLY_NAME) $(GACUTIL_FLAGS) || exit 1; \
if test -n '$(POLICY_VERSIONS)'; then \
for i in $(POLICY_VERSIONS); do \
echo "$(GACUTIL) /u policy.$$i.$(ASSEMBLY_NAME) $(GACUTIL_FLAGS)"; \
$(GACUTIL) /u policy.$$i.$(ASSEMBLY_NAME) $(GACUTIL_FLAGS) || exit 1; \
done \
fi \
fi fi

View file

@ -3,6 +3,7 @@
GTK_SHARP_VERSION=2.5.91 GTK_SHARP_VERSION=2.5.91
ASSEMBLY_VERSION=2.6.0.0 ASSEMBLY_VERSION=2.6.0.0
POLICY_VERSIONS=2.4
GTK_REQUIRED_VERSION=2.6.0 GTK_REQUIRED_VERSION=2.6.0
GNOME_REQUIRED_VERSION=2.10.0 GNOME_REQUIRED_VERSION=2.10.0
VERSIONCSDEFINES=-define:GTK_SHARP_2_6 VERSIONCSDEFINES=-define:GTK_SHARP_2_6

View file

@ -3,6 +3,7 @@
GTK_SHARP_VERSION=2.3.91 GTK_SHARP_VERSION=2.3.91
ASSEMBLY_VERSION=2.4.0.0 ASSEMBLY_VERSION=2.4.0.0
POLICY_VERSIONS=
GTK_REQUIRED_VERSION=2.4.0 GTK_REQUIRED_VERSION=2.4.0
GNOME_REQUIRED_VERSION=2.6.0 GNOME_REQUIRED_VERSION=2.6.0
VERSIONCSDEFINES= VERSIONCSDEFINES=

View file

@ -11,6 +11,7 @@ echo "**********************************************************************"
GTK_SHARP_VERSION=2.7.0.99 GTK_SHARP_VERSION=2.7.0.99
ASSEMBLY_VERSION=2.8.0.0 ASSEMBLY_VERSION=2.8.0.0
POLICY_VERSIONS="2.4 2.6"
GTK_REQUIRED_VERSION=2.7.0 GTK_REQUIRED_VERSION=2.7.0
GNOME_REQUIRED_VERSION=2.10.0 GNOME_REQUIRED_VERSION=2.10.0
VERSIONCSDEFINES="-define:GTK_SHARP_2_6 -define:GTK_SHARP_2_8" VERSIONCSDEFINES="-define:GTK_SHARP_2_6 -define:GTK_SHARP_2_8"

View file

@ -19,6 +19,7 @@ sed -e "s/@GTK_SHARP_VERSION@/$GTK_SHARP_VERSION/" \
-e "s/@GNOME_REQUIRED_VERSION@/$GNOME_REQUIRED_VERSION/" \ -e "s/@GNOME_REQUIRED_VERSION@/$GNOME_REQUIRED_VERSION/" \
-e "s/@VERSIONCSDEFINES@/$VERSIONCSDEFINES/" \ -e "s/@VERSIONCSDEFINES@/$VERSIONCSDEFINES/" \
-e "s/@VERSIONCFLAGS@/$VERSIONCFLAGS/" \ -e "s/@VERSIONCFLAGS@/$VERSIONCFLAGS/" \
-e "s/@POLICY_VERSIONS@/$POLICY_VERSIONS/" \
-e "s/@ASSEMBLY_VERSION@/$ASSEMBLY_VERSION/" $srcdir/configure.in.in > $srcdir/configure.in -e "s/@ASSEMBLY_VERSION@/$ASSEMBLY_VERSION/" $srcdir/configure.in.in > $srcdir/configure.in
ln -f $srcdir/pango/pango-api-$GTK_API_TAG.raw $srcdir/pango/pango-api.raw ln -f $srcdir/pango/pango-api-$GTK_API_TAG.raw $srcdir/pango/pango-api.raw

View file

@ -7,6 +7,8 @@ AM_MAINTAINER_MODE
API_VERSION=@ASSEMBLY_VERSION@ API_VERSION=@ASSEMBLY_VERSION@
AC_SUBST(API_VERSION) AC_SUBST(API_VERSION)
POLICY_VERSIONS=@POLICY_VERSIONS@
AC_SUBST(POLICY_VERSIONS)
PACKAGE_VERSION=gtk-sharp-2.0 PACKAGE_VERSION=gtk-sharp-2.0
AC_SUBST(PACKAGE_VERSION) AC_SUBST(PACKAGE_VERSION)
@ -93,6 +95,11 @@ if test "x$GACUTIL" = "xno" ; then
AC_MSG_ERROR([No gacutil tool found. You need to install either the mono or .Net SDK.]) AC_MSG_ERROR([No gacutil tool found. You need to install either the mono or .Net SDK.])
fi fi
AC_PATH_PROG(AL, al, no)
if test "x$AL" = "xno" ; then
AC_MSG_ERROR([No al tool found. You need to install either the mono or .Net SDK.])
fi
if test "x$has_mono" = "xtrue"; then if test "x$has_mono" = "xtrue"; then
GACUTIL_FLAGS='/package $(PACKAGE_VERSION) /gacdir $(DESTDIR)$(prefix)/lib' GACUTIL_FLAGS='/package $(PACKAGE_VERSION) /gacdir $(DESTDIR)$(prefix)/lib'
GENERATED_SOURCES=generated/*.cs GENERATED_SOURCES=generated/*.cs
@ -249,6 +256,7 @@ AC_SUBST(CFLAGS)
AC_OUTPUT([ AC_OUTPUT([
AssemblyInfo.cs AssemblyInfo.cs
Makefile Makefile
policy.config
sources/Makefile sources/Makefile
parser/Makefile parser/Makefile
parser/gapi-2.0.pc parser/gapi-2.0.pc

View file

@ -6,8 +6,11 @@ endif
ASSEMBLY = $(ASSEMBLY_NAME).dll ASSEMBLY = $(ASSEMBLY_NAME).dll
ASSEMBLY_NAME = gconf-sharp-peditors ASSEMBLY_NAME = gconf-sharp-peditors
noinst_DATA = $(TARGET) noinst_DATA = $(TARGET) $(POLICY_ASSEMBLIES)
CLEANFILES = $(ASSEMBLY) $(ASSEMBLY).mdb gtk-sharp.snk CLEANFILES = $(ASSEMBLY) $(ASSEMBLY).mdb gtk-sharp.snk $(POLICY_ASSEMBLIES) $(POLICY_CONFIGS)
POLICY_ASSEMBLIES = $(addsuffix .$(ASSEMBLY), $(addprefix policy., $(POLICY_VERSIONS)))
POLICY_CONFIGS = $(addsuffix .config, $(addprefix policy., $(POLICY_VERSIONS)))
EXTRA_DIST = \ EXTRA_DIST = \
PropertyEditorColorPicker.cs \ PropertyEditorColorPicker.cs \
@ -37,15 +40,34 @@ $(ASSEMBLY): $(build_sources) gtk-sharp.snk
@rm -f $(ASSEMBLY).mdb @rm -f $(ASSEMBLY).mdb
$(CSC) $(CSFLAGS) /out:$(ASSEMBLY) /target:library $(references) $(build_sources) $(CSC) $(CSFLAGS) /out:$(ASSEMBLY) /target:library $(references) $(build_sources)
$(POLICY_ASSEMBLIES): $(top_builddir)/policy.config gtk-sharp.snk
@for i in "$(POLICY_VERSIONS)"; do \
echo "Creating policy.$$i.$(ASSEMBLY)"; \
sed -e "s/@ASSEMBLY_NAME@/$(ASSEMBLY_NAME)/" -e "s/@POLICY@/$$i/" $(top_builddir)/policy.config > policy.$$i.config; \
$(AL) -link:policy.$$i.config -out:policy.$$i.$(ASSEMBLY) -keyfile:gtk-sharp.snk; \
done
install-data-local: install-data-local:
@if test -n '$(TARGET)'; then \ @if test -n '$(TARGET)'; then \
echo "$(GACUTIL) /i $(ASSEMBLY) /f $(GACUTIL_FLAGS)"; \ echo "$(GACUTIL) /i $(ASSEMBLY) /f $(GACUTIL_FLAGS)"; \
$(GACUTIL) /i $(ASSEMBLY) /f $(GACUTIL_FLAGS) || exit 1; \ $(GACUTIL) /i $(ASSEMBLY) /f $(GACUTIL_FLAGS) || exit 1; \
if test -n '$(POLICY_VERSIONS)'; then \
for i in $(POLICY_VERSIONS); do \
echo "$(GACUTIL) /i policy.$$i.$(ASSEMBLY) /f $(GACUTIL_FLAGS)"; \
$(GACUTIL) /i policy.$$i.$(ASSEMBLY) /f $(GACUTIL_FLAGS) || exit 1; \
done \
fi \
fi fi
uninstall-local: uninstall-local:
@if test -n '$(TARGET)'; then \ @if test -n '$(TARGET)'; then \
echo "$(GACUTIL) /u $(ASSEMBLY_NAME) $(GACUTIL_FLAGS)"; \ echo "$(GACUTIL) /u $(ASSEMBLY_NAME) $(GACUTIL_FLAGS)"; \
$(GACUTIL) /u $(ASSEMBLY_NAME) $(GACUTIL_FLAGS) || exit 1; \ $(GACUTIL) /u $(ASSEMBLY_NAME) $(GACUTIL_FLAGS) || exit 1; \
if test -n '$(POLICY_VERSIONS)'; then \
for i in $(POLICY_VERSIONS); do \
echo "$(GACUTIL) /u policy.$$i.$(ASSEMBLY_NAME) $(GACUTIL_FLAGS)"; \
$(GACUTIL) /u policy.$$i.$(ASSEMBLY_NAME) $(GACUTIL_FLAGS) || exit 1; \
done \
fi \
fi fi

View file

@ -5,10 +5,13 @@ pkgconfig_DATA = gconf-sharp-2.0.pc
else else
TARGET = TARGET =
endif endif
noinst_DATA = $(TARGET) noinst_DATA = $(TARGET) $(POLICY_ASSEMBLIES)
CLEANFILES = $(ASSEMBLY) $(ASSEMBLY).mdb gtk-sharp.snk CLEANFILES = $(ASSEMBLY) $(ASSEMBLY).mdb gtk-sharp.snk $(POLICY_ASSEMBLIES) $(POLICY_CONFIGS)
DISTCLEANFILES = gconf-sharp-2.0.pc $(ASSEMBLY).config DISTCLEANFILES = gconf-sharp-2.0.pc $(ASSEMBLY).config
POLICY_ASSEMBLIES = $(addsuffix .$(ASSEMBLY), $(addprefix policy., $(POLICY_VERSIONS)))
POLICY_CONFIGS = $(addsuffix .config, $(addprefix policy., $(POLICY_VERSIONS)))
ASSEMBLY = $(ASSEMBLY_NAME).dll ASSEMBLY = $(ASSEMBLY_NAME).dll
ASSEMBLY_NAME = gconf-sharp ASSEMBLY_NAME = gconf-sharp
@ -41,15 +44,34 @@ $(ASSEMBLY): $(build_sources) gtk-sharp.snk
@rm -f $(ASSEMBLY).mdb @rm -f $(ASSEMBLY).mdb
$(CSC) $(CSFLAGS) /out:$(ASSEMBLY) /target:library $(references) $(build_sources) $(CSC) $(CSFLAGS) /out:$(ASSEMBLY) /target:library $(references) $(build_sources)
$(POLICY_ASSEMBLIES): $(top_builddir)/policy.config gtk-sharp.snk
@for i in "$(POLICY_VERSIONS)"; do \
echo "Creating policy.$$i.$(ASSEMBLY)"; \
sed -e "s/@ASSEMBLY_NAME@/$(ASSEMBLY_NAME)/" -e "s/@POLICY@/$$i/" $(top_builddir)/policy.config > policy.$$i.config; \
$(AL) -link:policy.$$i.config -out:policy.$$i.$(ASSEMBLY) -keyfile:gtk-sharp.snk; \
done
install-data-local: install-data-local:
@if test -n '$(TARGET)'; then \ @if test -n '$(TARGET)'; then \
echo "$(GACUTIL) /i $(ASSEMBLY) /f $(GACUTIL_FLAGS)"; \ echo "$(GACUTIL) /i $(ASSEMBLY) /f $(GACUTIL_FLAGS)"; \
$(GACUTIL) /i $(ASSEMBLY) /f $(GACUTIL_FLAGS) || exit 1; \ $(GACUTIL) /i $(ASSEMBLY) /f $(GACUTIL_FLAGS) || exit 1; \
if test -n '$(POLICY_VERSIONS)'; then \
for i in $(POLICY_VERSIONS); do \
echo "$(GACUTIL) /i policy.$$i.$(ASSEMBLY) /f $(GACUTIL_FLAGS)"; \
$(GACUTIL) /i policy.$$i.$(ASSEMBLY) /f $(GACUTIL_FLAGS) || exit 1; \
done \
fi \
fi fi
uninstall-local: uninstall-local:
@if test -n '$(TARGET)'; then \ @if test -n '$(TARGET)'; then \
echo "$(GACUTIL) /u $(ASSEMBLY_NAME) $(GACUTIL_FLAGS)"; \ echo "$(GACUTIL) /u $(ASSEMBLY_NAME) $(GACUTIL_FLAGS)"; \
$(GACUTIL) /u $(ASSEMBLY_NAME) $(GACUTIL_FLAGS) || exit 1; \ $(GACUTIL) /u $(ASSEMBLY_NAME) $(GACUTIL_FLAGS) || exit 1; \
if test -n '$(POLICY_VERSIONS)'; then \
for i in $(POLICY_VERSIONS); do \
echo "$(GACUTIL) /u policy.$$i.$(ASSEMBLY_NAME) $(GACUTIL_FLAGS)"; \
$(GACUTIL) /u policy.$$i.$(ASSEMBLY_NAME) $(GACUTIL_FLAGS) || exit 1; \
done \
fi \
fi fi

View file

@ -3,10 +3,14 @@ SUBDIRS = glue
TARGET = $(ASSEMBLY) TARGET = $(ASSEMBLY)
ASSEMBLY = $(ASSEMBLY_NAME).dll ASSEMBLY = $(ASSEMBLY_NAME).dll
ASSEMBLY_NAME = glib-sharp ASSEMBLY_NAME = glib-sharp
noinst_DATA = $(ASSEMBLY) $(ASSEMBLY).config noinst_DATA = $(ASSEMBLY) $(ASSEMBLY).config $(POLICY_ASSEMBLIES)
CLEANFILES = $(ASSEMBLY) $(ASSEMBLY).mdb gtk-sharp.snk AssemblyInfo.cs
CLEANFILES = $(ASSEMBLY) $(ASSEMBLY).mdb gtk-sharp.snk AssemblyInfo.cs $(POLICY_ASSEMBLIES) $(POLICY_CONFIGS)
DISTCLEANFILES = $(ASSEMBLY).config DISTCLEANFILES = $(ASSEMBLY).config
POLICY_ASSEMBLIES = $(addsuffix .$(ASSEMBLY), $(addprefix policy., $(POLICY_VERSIONS)))
POLICY_CONFIGS = $(addsuffix .config, $(addprefix policy., $(POLICY_VERSIONS)))
references = references =
sources = \ sources = \
@ -80,15 +84,34 @@ $(ASSEMBLY): $(build_sources) gtk-sharp.snk AssemblyInfo.cs
$(CSC) $(CSFLAGS) -nowarn:0169,0612,0618 -out:$(ASSEMBLY) -target:library $(references) $(build_sources) $(CSC) $(CSFLAGS) -nowarn:0169,0612,0618 -out:$(ASSEMBLY) -target:library $(references) $(build_sources)
$(GAPI_CDECL_INSERT) $(GAPI_CDECL_INSERT)
$(POLICY_ASSEMBLIES): $(top_builddir)/policy.config gtk-sharp.snk
@for i in "$(POLICY_VERSIONS)"; do \
echo "Creating policy.$$i.$(ASSEMBLY)"; \
sed -e "s/@ASSEMBLY_NAME@/$(ASSEMBLY_NAME)/" -e "s/@POLICY@/$$i/" $(top_builddir)/policy.config > policy.$$i.config; \
$(AL) -link:policy.$$i.config -out:policy.$$i.$(ASSEMBLY) -keyfile:gtk-sharp.snk; \
done
install-data-local: install-data-local:
@if test -n '$(TARGET)'; then \ @if test -n '$(TARGET)'; then \
echo "$(GACUTIL) /i $(ASSEMBLY) /f $(GACUTIL_FLAGS)"; \ echo "$(GACUTIL) /i $(ASSEMBLY) /f $(GACUTIL_FLAGS)"; \
$(GACUTIL) /i $(ASSEMBLY) /f $(GACUTIL_FLAGS) || exit 1; \ $(GACUTIL) /i $(ASSEMBLY) /f $(GACUTIL_FLAGS) || exit 1; \
if test -n '$(POLICY_VERSIONS)'; then \
for i in $(POLICY_VERSIONS); do \
echo "$(GACUTIL) /i policy.$$i.$(ASSEMBLY) /f $(GACUTIL_FLAGS)"; \
$(GACUTIL) /i policy.$$i.$(ASSEMBLY) /f $(GACUTIL_FLAGS) || exit 1; \
done \
fi \
fi fi
uninstall-local: uninstall-local:
@if test -n '$(TARGET)'; then \ @if test -n '$(TARGET)'; then \
echo "$(GACUTIL) /u $(ASSEMBLY_NAME) $(GACUTIL_FLAGS)"; \ echo "$(GACUTIL) /u $(ASSEMBLY_NAME) $(GACUTIL_FLAGS)"; \
$(GACUTIL) /u $(ASSEMBLY_NAME) $(GACUTIL_FLAGS) || exit 1; \ $(GACUTIL) /u $(ASSEMBLY_NAME) $(GACUTIL_FLAGS) || exit 1; \
if test -n '$(POLICY_VERSIONS)'; then \
for i in $(POLICY_VERSIONS); do \
echo "$(GACUTIL) /u policy.$$i.$(ASSEMBLY_NAME) $(GACUTIL_FLAGS)"; \
$(GACUTIL) /u policy.$$i.$(ASSEMBLY_NAME) $(GACUTIL_FLAGS) || exit 1; \
done \
fi \
fi fi

View file

@ -8,10 +8,13 @@ endif
ASSEMBLY = $(ASSEMBLY_NAME).dll ASSEMBLY = $(ASSEMBLY_NAME).dll
ASSEMBLY_NAME = gtk-dotnet ASSEMBLY_NAME = gtk-dotnet
noinst_DATA = $(TARGET) noinst_DATA = $(ASSEMBLY) $(POLICY_ASSEMBLIES)
CLEANFILES = $(ASSEMBLY) $(ASSEMBLY).mdb gtk-sharp.snk AssemblyInfo.cs CLEANFILES = $(ASSEMBLY) $(ASSEMBLY).mdb gtk-sharp.snk AssemblyInfo.cs $(POLICY_ASSEMBLIES) $(POLICY_CONFIGS)
DISTCLEANFILES = $(ASSEMBLY).config DISTCLEANFILES = $(ASSEMBLY).config
POLICY_ASSEMBLIES = $(addsuffix .$(ASSEMBLY), $(addprefix policy., $(POLICY_VERSIONS)))
POLICY_CONFIGS = $(addsuffix .config, $(addprefix policy., $(POLICY_VERSIONS)))
references = ../glib/glib-sharp.dll ../pango/pango-sharp.dll ../gdk/gdk-sharp.dll references = ../glib/glib-sharp.dll ../pango/pango-sharp.dll ../gdk/gdk-sharp.dll
build_references = $(addprefix -r:, $(references)) -r:System.Drawing.dll build_references = $(addprefix -r:, $(references)) -r:System.Drawing.dll
@ -43,15 +46,34 @@ $(ASSEMBLY): $(build_sources) $(references) gtk-sharp.snk AssemblyInfo.cs
$(CSC) $(CSFLAGS) -nowarn:0169,0612,0618 -out:$(ASSEMBLY) -target:library $(build_references) $(build_sources) $(CSC) $(CSFLAGS) -nowarn:0169,0612,0618 -out:$(ASSEMBLY) -target:library $(build_references) $(build_sources)
$(GAPI_CDECL_INSERT) $(GAPI_CDECL_INSERT)
$(POLICY_ASSEMBLIES): $(top_builddir)/policy.config gtk-sharp.snk
@for i in "$(POLICY_VERSIONS)"; do \
echo "Creating policy.$$i.$(ASSEMBLY)"; \
sed -e "s/@ASSEMBLY_NAME@/$(ASSEMBLY_NAME)/" -e "s/@POLICY@/$$i/" $(top_builddir)/policy.config > policy.$$i.config; \
$(AL) -link:policy.$$i.config -out:policy.$$i.$(ASSEMBLY) -keyfile:gtk-sharp.snk; \
done
install-data-local: install-data-local:
@if test -n '$(TARGET)'; then \ @if test -n '$(TARGET)'; then \
echo "$(GACUTIL) /i $(ASSEMBLY) /f $(GACUTIL_FLAGS)"; \ echo "$(GACUTIL) /i $(ASSEMBLY) /f $(GACUTIL_FLAGS)"; \
$(GACUTIL) /i $(ASSEMBLY) /f $(GACUTIL_FLAGS) || exit 1; \ $(GACUTIL) /i $(ASSEMBLY) /f $(GACUTIL_FLAGS) || exit 1; \
if test -n '$(POLICY_VERSIONS)'; then \
for i in $(POLICY_VERSIONS); do \
echo "$(GACUTIL) /i policy.$$i.$(ASSEMBLY) /f $(GACUTIL_FLAGS)"; \
$(GACUTIL) /i policy.$$i.$(ASSEMBLY) /f $(GACUTIL_FLAGS) || exit 1; \
done \
fi \
fi fi
uninstall-local: uninstall-local:
@if test -n '$(TARGET)'; then \ @if test -n '$(TARGET)'; then \
echo "$(GACUTIL) /u $(ASSEMBLY_NAME) $(GACUTIL_FLAGS)"; \ echo "$(GACUTIL) /u $(ASSEMBLY_NAME) $(GACUTIL_FLAGS)"; \
$(GACUTIL) /u $(ASSEMBLY_NAME) $(GACUTIL_FLAGS) || exit 1; \ $(GACUTIL) /u $(ASSEMBLY_NAME) $(GACUTIL_FLAGS) || exit 1; \
if test -n '$(POLICY_VERSIONS)'; then \
for i in $(POLICY_VERSIONS); do \
echo "$(GACUTIL) /u policy.$$i.$(ASSEMBLY_NAME) $(GACUTIL_FLAGS)"; \
$(GACUTIL) /u policy.$$i.$(ASSEMBLY_NAME) $(GACUTIL_FLAGS) || exit 1; \
done \
fi \
fi fi

10
policy.config.in Normal file
View file

@ -0,0 +1,10 @@
<configuration>
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="@ASSEMBLY_NAME@" publicKeyToken="35e10195dab3c99f" />
<bindingRedirect oldVersion="@POLICY@.0.0" newVersion="@API_VERSION@"/>
</dependentAssembly>
</assemblyBinding>
</runtime>
</configuration>