Permalink
Browse files

2007-12-12 Mike Kestner <mkestner@novell.com>

	* Makefile.am: remove boostrap-fu.
	* Makefile.include: add policy and GAC-fu.
	* autogen.sh: moved from bootstrap-generic.
	* bootstrap*: switching to autogen.sh setup.
	* configure.in: rename from in.in and remove substs.
	* gapi-cdecl-insert: copied from gnome-sharp.
	* policy.config.in: ditto.
	* gnomedesktop/*: switching to gac install.
	* gtkhtml/*: switching to gac install.
	* sources/Makefile.am: add librsvg
	* sources/sources-2.20.xml: add rsvg. not checking in parse yet.

svn path=/trunk/gnome-desktop-sharp/; revision=91197
  • Loading branch information...
1 parent c0cda16 commit 1c6240a20fe125f8b7c33e306554bcd5c11afb23 @mkestner mkestner committed Dec 13, 2007
View
@@ -1,3 +1,17 @@
+2007-12-12 Mike Kestner <mkestner@novell.com>
+
+ * Makefile.am: remove boostrap-fu.
+ * Makefile.include: add policy and GAC-fu.
+ * autogen.sh: moved from bootstrap-generic.
+ * bootstrap*: switching to autogen.sh setup.
+ * configure.in: rename from in.in and remove substs.
+ * gapi-cdecl-insert: copied from gnome-sharp.
+ * policy.config.in: ditto.
+ * gnomedesktop/*: switching to gac install.
+ * gtkhtml/*: switching to gac install.
+ * sources/Makefile.am: add librsvg
+ * sources/sources-2.20.xml: add rsvg. not checking in parse yet.
+
2007-12-09 Mike Kestner <mkestner@novell.com>
* sources/Makefile.am: add gtkhtml-search.* to parse.
View
@@ -3,10 +3,9 @@ SUBDIRS = sources gnomedesktop gtkhtml #sample
EXTRA_DIST = \
gtk-sharp.snk \
gapi-cdecl-insert \
+ policy.config.in \
AssemblyInfo.cs.in \
ChangeLog \
HACKING \
README
-configure.in: bootstrap.status configure.in.in
- $(SHELL) $<
View
@@ -1,29 +1,25 @@
SNK = gtk-sharp.snk
-API = $(pkg)-api.xml
-RAW_API = $(pkg)-api.raw
+API = $(pkg:=-api.xml)
+RAW_API = $(pkg:=-api.raw)
+ASSEMBLY_NAME = $(pkg:=-sharp)
+ASSEMBLY = $(ASSEMBLY_NAME:=.dll)
+PACKAGE_VERSION = $(ASSEMBLY_NAME:=-$(pkgversion))
-ASSEMBLY_NAME = $(pkg)-sharp
-ASSEMBLY = $(ASSEMBLY_NAME).dll
-
-assemblydir = $(prefix)/lib/$(ASSEMBLY_NAME)/$(pkgversion)
-TARGET = $(pkg:=-sharp.dll) $(pkg:=-sharp.dll.config) $(POLICY_ASSEMBLIES)
-assembly_DATA = $(TARGET)
-TARGET_API = $(pkg:=-api.xml)
+TARGET = $(ASSEMBLY) $(ASSEMBLY:=.config) $(POLICY_ASSEMBLIES)
+noinst_DATA = $(TARGET)
gapidir = $(datadir)/$(ASSEMBLY_NAME)/$(pkgversion)
-gapi_DATA = $(TARGET_API)
-CLEANFILES = $(ASSEMBLY) $(ASSEMBLY).mdb generated-stamp generated/*.cs $(API) glue/generated.c $(SNK) AssemblyInfo.cs
-DISTCLEANFILES = $(ASSEMBLY).config
-
-EXTRA_DIST = $(RAW_API) $(SYMBOLS) $(ASSEMBLY).config.in $(METADATA) $(customs) $(sources) $(add_dist)
+gapi_DATA = $(API)
+CLEANFILES = $(ASSEMBLY) $(ASSEMBLY:=.mdb) $(POLICY_ASSEMBLIES) $(POLICY_CONFIGS) generated-stamp generated/*.cs $(API) glue/generated.c $(SNK) AssemblyInfo.cs
+DISTCLEANFILES = $(ASSEMBLY:=.config)
-build_symbols = $(addprefix --symbols=$(srcdir)/, $(SYMBOLS))
+EXTRA_DIST = $(RAW_API) $(METADATA) $(customs) $(sources) $(add_dist)
-$(API): $(METADATA) $(RAW_API) $(SYMBOLS)
+$(API): $(METADATA) $(RAW_API)
cp $(srcdir)/$(RAW_API) $(API)
chmod u+w $(API)
@if test -n '$(METADATA)'; then \
- echo "$(GAPI_FIXUP) --api=$(API) --metadata=$(srcdir)/$(METADATA) $(build_symbols)"; \
- $(GAPI_FIXUP) --api=$(API) --metadata=$(srcdir)/$(METADATA) $(build_symbols); \
+ echo "$(GAPI_FIXUP) --api=$(API) --metadata=$(srcdir)/$(METADATA)"; \
+ $(GAPI_FIXUP) --api=$(API) --metadata=$(srcdir)/$(METADATA); \
fi
build_customs = $(addprefix $(srcdir)/, $(customs))
@@ -41,11 +37,11 @@ generated-stamp: $(API) $(INCLUDE_API) $(build_customs)
$(SNK): $(top_srcdir)/$(SNK)
cp $(top_srcdir)/$(SNK) .
-AssemblyInfo.cs: $(top_builddir)/AssemblyInfo.cs
- cp $(top_builddir)/AssemblyInfo.cs .
+AssemblyInfo.cs: $(top_srcdir)/AssemblyInfo.cs.in
+ sed -e "s/@API_VERSION@/$(API_VERSION)/" $(top_srcdir)/AssemblyInfo.cs.in > AssemblyInfo.cs
build_sources = $(addprefix $(srcdir)/, $(sources)) AssemblyInfo.cs
-build_references = $(GTKSHARP_LIBS) $(addprefix /r:, $(references)) $(MONO_CAIRO_LIBS)
+build_references = $(GTKSHARP_LIBS) $(addprefix /r:, $(references))
if PLATFORM_WIN32
GAPI_CDECL_INSERT=$(top_srcdir)/gapi-cdecl-insert --keyfile=$(SNK) $(ASSEMBLY)
@@ -58,3 +54,37 @@ $(ASSEMBLY): generated-stamp $(SNK) $(build_sources) $(references)
$(CSC) $(CSFLAGS) -nowarn:0169,0612,0618 -unsafe -out:$(ASSEMBLY) -target:library $(build_references) $(GENERATED_SOURCES) $(build_sources)
$(GAPI_CDECL_INSERT)
+POLICY_ASSEMBLIES = $(filter %.dll, $(patsubst %, policy.%.$(ASSEMBLY), $(POLICY_VERSIONS)))
+POLICY_CONFIGS = $(patsubst %, policy.%.config, $(POLICY_VERSIONS))
+
+$(POLICY_ASSEMBLIES): $(top_srcdir)/policy.config.in $(SNK)
+ @for i in $(POLICY_VERSIONS); do \
+ echo "Creating policy.$$i.$(ASSEMBLY)"; \
+ sed -e "s/@ASSEMBLY_NAME@/$(ASSEMBLY_NAME)/" -e "s/@POLICY@/$$i/" -e "s/@API_VERSION@/$(API_VERSION)/" $(top_srcdir)/policy.config.in > policy.$$i.config; \
+ $(AL) -link:policy.$$i.config -out:policy.$$i.$(ASSEMBLY) -keyfile:$(SNK); \
+ done
+
+install-data-local:
+ @if test -n '$(pkg)'; then \
+ echo "$(GACUTIL) /i $(ASSEMBLY) /f $(GACUTIL_FLAGS)"; \
+ $(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
+
+uninstall-local:
+ @if test -n '$(pkg)'; then \
+ echo "$(GACUTIL) /u $(ASSEMBLY_NAME) $(GACUTIL_FLAGS)"; \
+ $(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
+
@@ -1,33 +1,8 @@
#!/bin/sh
-# Run this to set configure.in up for an API version.
-
-if [ x"$GNOME_SHARP_VERSION" = x ] ; then
- echo "error: this script should not be run directly; use bootstrap instead" 1>&2
- exit 1
-fi
srcdir=`dirname $0`
test -z "$srcdir" && srcdir=.
-cat >bootstrap.status <<EOF
-#!/bin/sh
-set -e
-set -x
-
-sed -e "s/@GNOME_SHARP_VERSION@/$GNOME_SHARP_VERSION/" \
- -e "s/@GTK_REQUIRED_VERSION@/$GTK_REQUIRED_VERSION/" \
- -e "s/@GNOME_REQUIRED_VERSION@/$GNOME_REQUIRED_VERSION/" \
- -e "s/@VERSIONCSDEFINES@/$VERSIONCSDEFINES/" \
- -e "s/@VERSIONCFLAGS@/$VERSIONCFLAGS/" \
- -e "s/@POLICY_VERSIONS@/$POLICY_VERSIONS/" \
- -e "s/@ASSEMBLY_VERSION@/$ASSEMBLY_VERSION/" $srcdir/configure.in.in > $srcdir/configure.in
-
-ln -f $srcdir/gnomedesktop/gnomedesktop-api-$GNOME_API_TAG.raw $srcdir/gnomedesktop/gnomedesktop-api.raw
-EOF
-
-chmod +x bootstrap.status
-./bootstrap.status
-
DIE=0
(autoconf --version) < /dev/null > /dev/null 2>&1 || {
View
@@ -1,13 +0,0 @@
-#!/bin/sh
-# Run this to set configure.in up for an API version.
-
-GNOME_SHARP_VERSION=2.19.0
-ASSEMBLY_VERSION=2.20.0.0
-POLICY_VERSIONS=
-GTK_REQUIRED_VERSION=2.10.0
-GNOME_REQUIRED_VERSION=2.20.0
-VERSIONCSDEFINES=
-VERSIONCFLAGS=
-GNOME_API_TAG=2.20
-
-. ./bootstrap-generic "$@"
@@ -1,19 +1,9 @@
AC_INIT(README)
AC_CANONICAL_SYSTEM
AM_CONFIG_HEADER(config.h)
-AM_INIT_AUTOMAKE(gnome-desktop-sharp, @GNOME_SHARP_VERSION@)
+AM_INIT_AUTOMAKE(gnome-desktop-sharp, 2.19.0)
AM_MAINTAINER_MODE
-API_VERSION=@ASSEMBLY_VERSION@
-AC_SUBST(API_VERSION)
-POLICY_VERSIONS="@POLICY_VERSIONS@"
-AC_SUBST(POLICY_VERSIONS)
-
-PACKAGE_VERSION=gtk-sharp-2.0
-AC_SUBST(PACKAGE_VERSION)
-
-GTKHTML_REQUIRED_VERSION=3.14.0
-
case "$host" in
*-*-mingw*|*-*-cygwin*)
platform_win32=yes
@@ -70,13 +60,10 @@ AC_ARG_ENABLE(debug, [ --enable-debug Build debugger (.mdb) files for
)
fi
-CSDEFINES='@VERSIONCSDEFINES@'
+CSDEFINES=
CSFLAGS="$DEBUG_FLAGS $CSDEFINES"
AC_SUBST(CSFLAGS)
-GTK_SHARP_VERSION_CFLAGS='@VERSIONCFLAGS@'
-AC_SUBST(GTK_SHARP_VERSION_CFLAGS)
-
AC_PATH_PROG(PKG_CONFIG, pkg-config, no)
if test "x$PKG_CONFIG" = "xno"; then
AC_MSG_ERROR([You need to install pkg-config])
@@ -154,7 +141,7 @@ if test "x$has_mono_cairo" = "xfalse" -a "x$API_VERSION" = "x2.8.0.0"; then
AC_MSG_ERROR([You need to install Mono.Cairo.dll and its pkgconfig file or set PKG_CONFIG_PATH to find it.])
fi
-GTK_REQUIRED_VERSION=@GTK_REQUIRED_VERSION@
+GTK_REQUIRED_VERSION=2.11.0
PKG_CHECK_MODULES(GTKSHARP, gtk-sharp-2.0 >= $GTK_REQUIRED_VERSION)
AC_SUBST(GTKSHARP_CFLAGS)
@@ -169,16 +156,17 @@ AC_PATH_PROG(GAPI_FIXUP, gapi2-fixup, no)
AC_SUBST(GAPI_FIXUP)
## Versions of dependencies
-GNOME_REQUIRED_VERSION=@GNOME_REQUIRED_VERSION@
-ART_REQUIRED_VERSION=2.3.16
+GNOME_REQUIRED_VERSION=2.19.0
-PKG_CHECK_MODULES(GNOME, libgnomecanvas-2.0 >= $GNOMECANVAS_REQUIRED_VERSION libgnomeui-2.0 >= $GNOME_REQUIRED_VERSION gtk+-2.0 >= $GTK_REQUIRED_VERSION libgnomeprintui-2.2 >= $GNOMEPRINT_REQUIRED_VERSION gmodule-2.0 >= $GTK_REQUIRED_VERSION libpanelapplet-2.0 >= $GNOMEPANEL_REQUIRED_VERSION, enable_gnome=yes, enable_gnome=no)
-AC_SUBST(GNOME_CFLAGS)
-AC_SUBST(GNOME_LIBS)
+PKG_CHECK_MODULES(GNOMESHARP, gnome-sharp-2.0 >= $GNOME_REQUIRED_VERSION, enable_gnome=yes, enable_gnome=no)
+AC_SUBST(GNOMESHARP_CFLAGS)
+AC_SUBST(GNOMESHARP_LIBS)
AM_CONDITIONAL(ENABLE_GNOME, test "x$enable_gnome" = "xyes")
AC_SUBST(CFLAGS)
+GTKHTML_REQUIRED_VERSION=3.16.0
+
PKG_CHECK_MODULES(GTKHTML, libgtkhtml-3.14 >= $GTKHTML_REQUIRED_VERSION, enable_gtkhtml=yes, enable_gtkhtml=no)
AC_SUBST(GTKHTML_CFLAGS)
AC_SUBST(GTKHTML_LIBS)
@@ -187,7 +175,6 @@ AM_CONDITIONAL(ENABLE_GTKHTML, test "x$enable_gtkhtml" = "xyes")
AC_SUBST(CFLAGS)
AC_OUTPUT([
-AssemblyInfo.cs
Makefile
sources/Makefile
gnomedesktop/Makefile
View
@@ -0,0 +1,58 @@
+#!/usr/bin/perl
+#
+# gapi-cdecl-insert : Inserts il into an assembly for CDecl callback delegates.
+#
+# Authors: Mike Kestner <mkestner@novell.com>
+#
+# Copyright (c) 2005 Novell, Inc.
+#
+# This program is free software; you can redistribute it and/or
+# modify it under the terms of version 2 of the GNU General Public
+# License as published by the Free Software Foundation.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU General Public
+# License along with this program; if not, write to the
+# Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+# Boston, MA 02111-1307, USA.
+
+die "Usage: gapi-cdecl-insert [--keyfile=<file>] <assembly_path>\n" if ($ARGV > 2);
+foreach $arg (@ARGV) {
+ if ($arg =~ /--keyfile=(.*)/) {
+ $key = $1;
+ } elsif (-e $arg) {
+ $assembly = $arg;
+ } else {
+ die "Usage: gapi-cdecl-insert [--keyfile=<file>] <assembly_path>\n";
+ }
+}
+
+if ($assembly =~ /(.*)\.dll/) {
+ $basename = $1;
+ `ildasm $assembly /out:$basename.raw`;
+ open(INFILE, $basename . ".raw") || die "Couldn't open $basename.raw\n";
+ open(OUTFILE, "> $basename.il") || die "Couldn't open $basename.il\n";
+ while ($line = <INFILE>) {
+ $insert = 1 if ($line =~ /\.custom instance void .*GLib\.CDeclCallbackAttribute/);
+
+ if ($insert && $line =~ /(.*)\s+(Invoke\(.*)/) {
+ print OUTFILE "$1 modopt([mscorlib]System.Runtime.CompilerServices.CallConvCdecl) $2";
+ $insert = 0;
+ next;
+ }
+ print OUTFILE $line;
+ }
+ `ilasm /DLL /QUIET $basename.il`;
+ `sn -R $assembly gtk-sharp.snk` if ($key);
+ unlink "$basename.raw";
+ unlink "$basename.il";
+ unlink "$basename.res";
+} else {
+ print "This script only works for dlls.\nUsage: gapi-cdecl-insert [--keyfile=<file>] <dll_path>\n";
+}
+
+
View
@@ -3,16 +3,16 @@ pkgconfigdir = $(libdir)/pkgconfig
pkgconfig_DATA = gnomedesktop-sharp-2.20.pc
pkgversion = 2.20
+API_VERSION = 2.20.0.0
INCLUDE_API =
METADATA = metadata
-SYMBOLS =
references =
sources =
customs =
-add_dist = gnomedesktop-sharp-2.20.pc.in
+add_dist = gnomedesktop-sharp-2.20.pc.in gnomedesktop-sharp.dll.config.in
include ../Makefile.include
@@ -2,9 +2,7 @@ prefix=${pcfiledir}/../..
exec_prefix=${prefix}
libdir=${exec_prefix}/lib
gapidir=${prefix}/share/gnomedesktop-sharp/2.20
-assemblies_dir=${prefix}/lib/gnomedesktop-sharp/2.20
-Libraries=${assemblies_dir}/gnomedesktop-sharp.dll ${assemblies_dir}/gnomedesktop-sharp.dll.config
-
+assemblies_dir=${libdir}/mono/gnomedesktop-sharp-2.20
Name: GnomeDesktop#
Description: GnomeDesktop# - GNOMEDesktop .NET Binding
View
@@ -7,9 +7,9 @@ else
pkg =
endif
+API_VERSION=3.16.0.0
INCLUDE_API =
METADATA = metadata
-SYMBOLS =
references =
sources =
@@ -18,7 +18,7 @@ customs = \
HTML.custom \
HTMLStream.custom
-add_dist = gtkhtml-sharp-3.14.pc.in
+add_dist = gtkhtml-sharp-3.14.pc.in gtkhtml-sharp.dll.config.in
include ../Makefile.include
@@ -2,12 +2,11 @@ prefix=${pcfiledir}/../..
exec_prefix=${prefix}
libdir=${exec_prefix}/lib
gapidir=${prefix}/share/gtkhtml-sharp/3.14
-assemblies_dir=${prefix}/lib/gtkhtml-sharp/3.14
-Libraries=${assemblies_dir}/gtkhtml-sharp.dll ${assemblies_dir}/gtkhtml-sharp.dll.config
+assemblies_dir=${libdir}/mono/gtkhtml-sharp-3.14
Name: Gtkhtml#
Description: Gtkhtml# - Gtkhtml .NET Binding
Version: @VERSION@
-Requires: gnome-sharp-2.0
+Requires: gtk-sharp-2.0
Cflags: -I:${gapidir}/gtkhtml-api.xml
Libs: -r:${assemblies_dir}/gtkhtml-sharp.dll
View
@@ -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>
View
@@ -5,7 +5,7 @@ EXTRA_DIST = \
GNOME_2_20_DOWNLOADS = \
http://ftp.gnome.org/pub/GNOME/desktop/2.20/2.20.0/sources/gnome-desktop-2.20.0.tar.bz2 \
- http://ftp.gnome.org/pub/GNOME/desktop/2.20/2.20.0/sources/libgtop-2.20.0.tar.bz2 \
+ http://ftp.gnome.org/pub/GNOME/desktop/2.20/2.20.0/sources/librsvg-2.18.2.tar.bz2 \
http://ftp.gnome.org/pub/GNOME/desktop/2.20/2.20.0/sources/nautilus-cd-burner-2.20.0.tar.bz2
api: api-2.20
Oops, something went wrong.

0 comments on commit 1c6240a

Please sign in to comment.