--- mono-tools-2.0.orig/debian/rules +++ mono-tools-2.0/debian/rules @@ -0,0 +1,78 @@ +#!/usr/bin/make -f + +#export DH_VERBOSE=1 +export MONO_SHARED_DIR=$(CURDIR) +CURVER = $(shell dpkg-parsechangelog | grep ^Version | cut -d' ' -f2 | cut -d'-' -f1) + +include /usr/share/quilt/quilt.make + +configure: config-stamp +config-stamp: $(QUILT_STAMPFN) + dh_testdir + + aclocal + autoconf + automake --add-missing --copy + + ./configure --prefix=/usr + + touch $@ + +build: build-stamp +build-stamp: config-stamp + dh_testdir + $(MAKE) + touch build-stamp + +clean: clean-patched unpatch +clean-patched: + dh_testdir + dh_testroot + [ ! -f Makefile ] || $(MAKE) distclean + find . -name "Makefile.in" | xargs rm -rf + rm -rf $$MONO_SHARED_DIR/.wapi autom4te.cache/ + dh_clean configure config.sub config.guess aclocal.m4 + +install: build + dh_testdir + dh_testroot + dh_clean -k + dh_installdirs + $(MAKE) install DESTDIR=$(CURDIR)/debian/tmp/ + +binary-indep: build install + dh_testdir + dh_testroot + dh_movefiles + dh_link + dh_install + dh_installchangelogs ChangeLog + dh_installdocs + dh_installmenu + dh_desktop + dh_installman + dh_strip + dh_clistrip + dh_compress + dh_fixperms + dh_clifixperms + dh_installdeb + dh_clideps + dh_gencontrol + dh_md5sums + dh_builddeb + +binary-arch: + +binary: binary-indep + +get-orig-source: + [ -d ../tarballs ] || mkdir ../tarballs + uscan \ + --force-download \ + --download-version $(CURVER) \ + --repack \ + --rename \ + --destdir ../tarballs + +.PHONY: build clean clean-patched binary-indep binary install --- mono-tools-2.0.orig/debian/gendarme.install +++ mono-tools-2.0/debian/gendarme.install @@ -0,0 +1,3 @@ +debian/tmp/usr/bin/gendarme* +debian/tmp/usr/lib/gendarme/ +debian/tmp/usr/lib/pkgconfig/gendarme* --- mono-tools-2.0.orig/debian/gendarme.manpages +++ mono-tools-2.0/debian/gendarme.manpages @@ -0,0 +1 @@ +debian/tmp/usr/share/man/man1/gendarme* --- mono-tools-2.0.orig/debian/copyright +++ mono-tools-2.0/debian/copyright @@ -0,0 +1,27 @@ +This package was debianized by Mirco Bauer + +It was downloaded from http://go-mono.com/sources/ + +Authors: +Jonathan Pryor +Martin Baulig +Miguel de Icaza + +Copyright: + + This package is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; version 2 dated June, 1991. + + This package 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 package; if not, write to the + Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, + MA 02110-1301, USA. + +On Debian systems, the complete text of the GNU General +Public License can be found in `/usr/share/common-licenses/GPL'. --- mono-tools-2.0.orig/debian/mono-profiler.install +++ mono-tools-2.0/debian/mono-profiler.install @@ -0,0 +1,3 @@ +debian/tmp/usr/lib/mono-tools/ +debian/tmp/usr/bin/mprof* +debian/tmp/usr/share/applications/mprof* --- mono-tools-2.0.orig/debian/mono-tools-devel.install +++ mono-tools-2.0/debian/mono-tools-devel.install @@ -0,0 +1,4 @@ +debian/tmp/usr/bin/create-native-map +debian/tmp/usr/lib/create-native-map/ +debian/tmp/usr/lib/pkgconfig/create-native-map.pc +debian/tmp/usr/share/man/man1/create-native-map.1 --- mono-tools-2.0.orig/debian/gnunit2.install +++ mono-tools-2.0/debian/gnunit2.install @@ -0,0 +1,3 @@ +debian/tmp/usr/bin/gnunit2 +debian/tmp/usr/lib/mono/2.0/gnunit2.exe +debian/gnunit2.desktop /usr/share/applications/ --- mono-tools-2.0.orig/debian/monodoc-browser.menu +++ mono-tools-2.0/debian/monodoc-browser.menu @@ -0,0 +1,3 @@ +?package(monodoc-browser):needs="X11" section="Applications/Programming"\ + title="Monodoc" command="/usr/bin/monodoc"\ + icon="/usr/share/pixmaps/monodoc.png" --- mono-tools-2.0.orig/debian/monodoc-browser.install +++ mono-tools-2.0/debian/monodoc-browser.install @@ -0,0 +1,5 @@ +debian/tmp/usr/bin/monodoc +debian/tmp/usr/lib/monodoc/browser.exe +debian/tmp/usr/lib/monodoc/GtkHtmlHtmlRender.dll +debian/tmp/usr/share/pixmaps/monodoc.png +debian/tmp/usr/share/applications/monodoc.desktop --- mono-tools-2.0.orig/debian/monodoc-browser.docs +++ mono-tools-2.0/debian/monodoc-browser.docs @@ -0,0 +1 @@ +docbrowser/ChangeLog --- mono-tools-2.0.orig/debian/control +++ mono-tools-2.0/debian/control @@ -0,0 +1,101 @@ +Source: mono-tools +Section: devel +Priority: optional +Maintainer: Ubuntu Mono Team +XSBC-Original-Maintainer: Debian Mono Group +Uploaders: Mirco Bauer , Sebastian Dröge +Build-Depends: debhelper (>= 7), quilt +Build-Depends-Indep: cli-common-dev (>= 0.5.4), + pkg-config, + autoconf, + automake, + autotools-dev, + mono-devel, + libmono-nunit2.2-cil, + libmono-winforms2.0-cil, + libmono-system-web2.0-cil, + libgtk2.0-cil (>= 2.0), + libgconf2.0-cil (>= 2.0), + libglade2.0-cil (>= 2.0), + libgnome2.0-cil (>= 2.0), + libgtkhtml3.16-cil, + libmono-webbrowser0.5-cil, + libwebkit1.0-cil, + monodoc-base (>= 1.1.9) +Standards-Version: 3.8.0 + +Package: monodoc-browser +Provides: monodoc-viewer +Replaces: monodoc-base (<< 1.1.9) +Architecture: all +Recommends: lynx +Depends: ${cli:Depends}, monodoc-manual +Description: MonoDoc GTK+ based viewer + The MonoDoc Project is the documentation framework of the Mono project which + provides detailed API documentation for all Mono components and the Mono CLI + implementation. + . + This package contains the GTK+ based viewer of the Mono documentation. + +Package: gnunit +Architecture: all +Depends: ${cli:Depends} +Description: frontend for running NUnit 2 test suites + gnunit (formerly known as nunit-gtk) is a frontend for NUnit which uses + the Mono class library version 1.0. + . + NUnit is a unit testing framework for all .NET languages. It serves the + same purpose as JUnit does in the Java world. It supports test + categories, testing for exceptions and writing test results in plain + text or XML. + +Package: gnunit2 +Architecture: all +Depends: ${cli:Depends} +Description: frontend for running NUnit 2 test suites + gnunit2 (formerly known as nunit-gtk) is a frontend for NUnit which uses + the Mono class library version 2.0. + . + NUnit is a unit testing framework for all .NET languages. It serves the + same purpose as JUnit does in the Java world. It supports test + categories, testing for exceptions and writing test results in plain + text or XML. + +Package: mono-tools-gui +Architecture: all +Depends: ${cli:Depends} +Replaces: gnunit (<< 1.2.1) +Description: Various GUI tools for mono + This package contains various GUI tools for use with Mono: + - gasnview + - ilcontrast + - gui-compare + +Package: mono-tools-devel +Architecture: all +Depends: ${cli:Depends} +Description: Various development tools for mono + This package contains various development tools for use with Mono: + - create-native-map + +Package: gendarme +Architecture: all +Depends: ${cli:Depends} +Replaces: mono-tools-devel (<< 2.0) +Conflicts: mono-tools-devel (<< 2.0) +Homepage: http://www.mono-project.com/Gendarme +Description: extensible rule-based checker for CLI assemblies + Gendarme is a extensible rule-based tool to find problems in .NET + applications and libraries. Gendarme inspects programs and libraries + that contain code in ECMA CIL format (Mono and .NET) and looks for + common problems with the code, problems that compiler do not typically + check or have not historically checked. + +Package: mono-profiler +Architecture: all +Depends: ${cli:Depends} +Description: Mono profiler + This package contains utilities for profiling Mono CLI assemblies: + - mprof-decoder + - mprof-heap-viewer + --- mono-tools-2.0.orig/debian/gnunit.install +++ mono-tools-2.0/debian/gnunit.install @@ -0,0 +1,3 @@ +debian/tmp/usr/bin/gnunit +debian/tmp/usr/lib/mono/1.0/gnunit.exe +debian/gnunit.desktop /usr/share/applications/ --- mono-tools-2.0.orig/debian/compat +++ mono-tools-2.0/debian/compat @@ -0,0 +1 @@ +7 --- mono-tools-2.0.orig/debian/mono-profiler.manpages +++ mono-tools-2.0/debian/mono-profiler.manpages @@ -0,0 +1 @@ +debian/tmp/usr/share/man/man1/mprof* --- mono-tools-2.0.orig/debian/monodoc-browser.postrm +++ mono-tools-2.0/debian/monodoc-browser.postrm @@ -0,0 +1,15 @@ +#!/bin/sh -e + +if [ -f /usr/lib/monodoc/monodoc.index ]; then + rm /usr/lib/monodoc/monodoc.index + rmdir /usr/lib/monodoc 2> /dev/null || true +fi + +if [ -d /usr/lib/monodoc/search_index ]; then + rm -r /usr/lib/monodoc/search_index + rmdir /usr/lib/monodoc 2> /dev/null || true +fi + +#DEBHELPER# + +exit 0 --- mono-tools-2.0.orig/debian/changelog +++ mono-tools-2.0/debian/changelog @@ -0,0 +1,334 @@ +mono-tools (2.0-0ubuntu1) jaunty; urgency=low + + * 0ubuntu1 package due to delays in Debian NEW queue + (LP: #302955) + + -- Jo Shields Thu, 27 Nov 2008 22:25:02 +0000 + +mono-tools (2.0-1) experimental; urgency=low + + [ David Paleino ] + * New upstream release + * Group Policy: + + implemented get-orig-source in debian/rules + * debian/compat bumped to 7 + * debian/control: + + Build-Depends: + - added autotools-dev, autoconf, automake + - added mono-devel + - removed mono-mcs, mono-gmcs, mono-gac and mono-1.0-devel + - added libmono-winforms2.0-cil + - added libmono-webbrowser0.5-cil + - removed libmono1.0-cil + - debhelper bumped to (>= 7) + + fixed spurious dot in long description + + New binary packages: + - mono-profiler, since these two related programs would have gone + into two different packages, and this is not nice + at all; + - gendarme, because it would've been split into mono-tools-devel and + mono-tools-gui, like mono-profiler; because it uses + System.Windows.Forms. + Added Conflicts and Replaces mono-tools-devel (<< 2.0), + since it was contained there. + + Standards-Version bumped to 3.8.0 (no changes needed) + * debian/rules: + + implemented autotools files re-generation + * debian/patches: + + converted to quilt + + 00-fix_build_system.patch added + + [ Mirco Bauer ] + * debian/patches/dont_bundle_cecil.patch: + + Don't copy the Mono.Cecil library during the build into the binary + package, as it's already in the GAC. + + -- David Paleino Thu, 27 Nov 2008 00:12:02 +0100 + +mono-tools (1.9-2) unstable; urgency=medium + + * debian/control: + + Removed libgecko2.0-cil and libxul-dev from build-dependencies. + + Added libwebkit1.0-cil to build-dependencies. + + Replaced libnunit2.2.6-cil build-dependency with libmono-nunit2.2-cil. + + Moved pseudo homepage field of gendarme to real field. + + Added extra space to lists in package description to make them verbatim. + (Closes: #480336, #480343) + * debian/patches/05_webkit-sharp_port.dpatch: + + Link against webkit-sharp instead of gecko-sharp (xulrunner). + (patch taken from upstream SVN, Closes: #480811, #488674) + * debian/patches/00list: + + Disabled 01_use_real_nunit, linking now against libmono-nunit2.2-cil + instead of libnunit2.2.6-cil. (Closes: #487037) + * debian/gnunit(2).desktop + debian/gnunit(2).install: + + Desktop files for the freedesktop menu. + (thanks goes to benoit tuduri for the patch, + Closes: #478962) + + -- Mirco Bauer Sun, 10 Aug 2008 14:20:01 +0200 + +mono-tools (1.9-1) unstable; urgency=low + + [ Sebastian Dröge ] + * New upstream release: + + debian/patches/04_gnome-sharp.patch: + - Dropped, merged upstream. + + debian/patches/03_mozilla-home.dpatch: + - Updated to apply cleanly again. + + [ Mirco Bauer ] + * debian/rules: + + Use dh_clifixperms instead of find commands. + + Enhanced error handling of "make clean". + * debian/control: + + Added libmono1.0-cil >= 1.9.1 to build-deps. + + Added libmono-system-web2.0-cil to build-deps as needed by gendarme. + + Updated cli-common-dev build-dep to >= 0.5.4, as we are using + dh_clistrip from it now. + * debian/watch: + + Updated + * debian/mono-tools-gui.install: + + Added gui-compare. + * debian/mono-tools-devel.install: + + Added gendarme. + + -- Mirco Bauer Fri, 02 May 2008 19:40:07 +0200 + +mono-tools (1.2.6-4) unstable; urgency=low + + * debian/control, + debian/monodoc-browser.install, + debian/patches/04_no-gtkhtml.dpatch: + + Build and ship the GtkHTML backend of monodoc-browser again instead of + the gecko one. This also enabled printing again. + * debian/patches/04_gnome-sharp.patch: + + Also link to gnome-sharp-2.0 as it's required by gnunit. + + -- Sebastian Dröge Thu, 20 Mar 2008 16:02:07 +0100 + +mono-tools (1.2.6-3) unstable; urgency=low + + [ Sam Hocevar ] + * debian/patches/01_use_real_nunit.dpatch: + + Look for nunit.pc instead of now deprecated nunit-2.2.pc. + + Implement a few missing interface memebers that allow gnunit and gnunit2 + to build with newer versions of nunit. Now nunit-console, gnunit and + gnunit2 are in sync and don't require rebuilds (Closes: #439835). + + * debian/control: + + Build-depend on libnunit2.2.6-cil instead of libnunit2.2-cil. + + -- Sam Hocevar (Debian packages) Thu, 10 Jan 2008 14:26:41 +0000 + +mono-tools (1.2.6-2) unstable; urgency=low + + * debian/control: + + Build depend on mono-1.0-devel for resgen to fix FTBFS (Closes: #458693). + * debian/watch: + + Update location (Closes: #449755). + + -- Sebastian Dröge Wed, 02 Jan 2008 20:12:51 +0100 + +mono-tools (1.2.6-1) unstable; urgency=low + + * New upstream release: + + debian/patches/04_no-gtkhtml.dpatch: + - Updated for the new version. + + debian/patches/03_mozilla-home.dpatch: + - Updated for the new version. + * debian/control: + + Update Standards-Version to 3.7.3, no additional changes needed. + * debian/monodoc-browser.menu: + + Fix section of the menu file. + + -- Sebastian Dröge Thu, 13 Dec 2007 13:44:02 +0100 + +mono-tools (1.2.4-1) unstable; urgency=low + + * Sebastian 'slomo' Dröge: + + New upstream release + + debian/patches/03_glade-callbacks-sig.dpatch: + - Dropped, merged upstream. + + debian/patches/01_use_real_nunit.dpatch: + - Updated. + + debian/patches/03_mozilla-home.dpatch, + debian/control, + debian/monodoc-browser.install, + debian/patches/04_no-gtkhtml.dpatch: + - Use xulrunner instead of Mozilla and GtkHTML. + + debian/control, + debian/mono-tools-gui.install: + - Add new ilcontrast application. + + debian/mono-tools-gui.install: + - Update manpage path. + + * Mirco 'meebey' Bauer: + + debian/control: + - Updated cli-common-dev build-dep to >= 0.4.4 + - Updated to use my Debian email address now. + + -- Sebastian Dröge Wed, 16 May 2007 23:50:22 +0200 + +mono-tools (1.2.3-2) unstable; urgency=low + + * Upload to unstable + + -- Sebastian Dröge Sun, 15 Apr 2007 23:04:43 +0200 + +mono-tools (1.2.3-1) experimental; urgency=low + + * Sebastian 'slomo' Dröge: + + New upstream release + + -- Sebastian Dröge Tue, 27 Feb 2007 14:34:20 +0100 + +mono-tools (1.2.1-1) experimental; urgency=low + + * Sebastian 'slomo' Dröge: + + New upstream release + + debian/control, + debian/mono-tools-gui.install, + debian/mono-tools-devel.install: + - Add packages for the random small mono-tools + + debian/control: + - Update to use my debian.org mail address + + -- Sebastian Dröge Wed, 31 Jan 2007 10:05:14 +0100 + +mono-tools (1.1.17-1) unstable; urgency=low + + * Sebastian 'slomo' Dröge: + + New upstream release + + debian/patches/03_gtk-sharp2.dpatch, + debian/patches/04_glade-callbacks.dpatch, + debian/patches/05_empty-search.dpatch: + - Dropped, merged upstream + + debian/patches/03_glade-callbacks-sig.dpatch: + - Fix signatures for the Glade callbacks (Closes: #391044) + + debian/watch: + - Updated location + + -- Debian Mono Group Tue, 17 Oct 2006 08:21:50 +0200 + +mono-tools (1.1.11-5) unstable; urgency=low + + * Sebastian 'slomo' Dröge: + + debian/patches/04_glade-callbacks.dpatch: + - Fix the signatures of the glade callback handlers. + Fixes various crashes in monodoc-browser. + Patch from upstream SVN (r63562) + + debian/patches/05_empty-search.dpatch: + - Don't crash when searching with an empty string. + Patch from upstream SVN (r61357) + + -- Debian Mono Group Tue, 3 Oct 2006 13:00:10 +0200 + +mono-tools (1.1.11-4) unstable; urgency=low + + * Sebastian 'slomo' Dröge + + Acknowledge NMU (Closes: #363586) + + debian/control: + - Add myself to Uploaders + - Build-Depend on the Gtk#2 variants of everything + - remove the versioned Depends of monodoc-browser on libgnome-cil as + this is not necessary anymore with libgnome2.0-cil + - bump Standards-Version to 3.7.2 + - move dpatch from Build-Depends-Indep to Build-Depends + + debian/patches/02_fix_buildsystem.dpatch: + - dropped as it wasn't used anymore since ages + + debian/patches/03_gtk-sharp2.dpatch: + - build everything against Gtk#2 + + -- Debian Mono Group Sun, 9 Jul 2006 02:56:21 +0200 + +mono-tools (1.1.11-3.1) unstable; urgency=low + + * Non-maintainer upload. + * Let monodoc-browser depend on libgnome-cil (>= 1:1.0.10-5), so we are + sure we get a version that pulls in a non-segfaulting libgtkhtml3.8-15. + (Closes: #363586) + + -- Steinar H. Gunderson Sun, 11 Jun 2006 13:46:25 +0200 + +mono-tools (1.1.11-3) unstable; urgency=low + + * Mirco 'meebey' Bauer + + Rebuild against libnunit2.2-cil 2.2.0-3 + + Updated cli-common build-dep to cli-common-dev >= 0.4.0 + + Moved debhelper build-dep-indep to build-dep. + + Updated FSF's snail-mail address in debian/copyright. + + Added binary-arch target to debian/rules. + + -- Debian Mono Group Sun, 30 Apr 2006 00:58:32 +0200 + +mono-tools (1.1.11-2) unstable; urgency=low + + * Mirco 'meebey' Bauer + + Rebuild against Mono 1.1.13.6-3 + + debian/control: + - Updated build-deps for Mono 1.1.13.6-2 split. (Closes: #363651, #351651) + + debian/patches/01_use_real_nunit.dpatch: + - Updated to use nunit-2.2 instead of nunit. + + -- Debian Mono Group Sun, 23 Apr 2006 13:21:01 +0200 + +mono-tools (1.1.11-1) unstable; urgency=low + + * New upstream release + + monodoc.desktop contains now proper Exec line (Closes: #341287) + * Mirco 'meebey' Bauer + + Split gnunit2 into own package because of Mono class library 2.0 + dependency. + + debian/control: + - Bumped debhelper build-dep to >= 5.0.0 + - Changed Build-Depends to Build-Depends-Indep + + debian/compat: + - Changed to 5. + + -- Debian Mono Group Sun, 15 Jan 2006 14:28:43 +0100 + +mono-tools (1.1.10-1) unstable; urgency=low + + * New upstream release + * Mirco 'meebey' Bauer + + debian/control: + - Added "Replaces: monodoc-base (<< 1.1.9)" to monodoc-browser for smooth + upgrades from 1.0.x versions. + + debian/monodoc-browser.install: + - Added GtkHtmlHtmlRender.dll, new renderer for MonoDoc Browser. + - Removed GeckoHtmlRender.dll, it's less stable than GtkHTML. + + Removed 02_fix_buildsystem.dpatch, already applied upstream. + + -- Debian Mono Group Tue, 15 Nov 2005 15:54:49 +0100 + +mono-tools (1.1.9-3) unstable; urgency=low + + * Mirco 'meebey' Bauer + + debian/control: + - Added mono-mcs and mono-gmcs to build-depends. + + debian/rules: + - Clean target tries to be more clean now, "make clean" isn't. + - Added clean-patched target. + + debian/patches/02_fix_buildsystem.dpatch: + - Fixes "make distclean" + (thanks to Ingo Saitz for the patch) + + -- Debian Mono Group Wed, 12 Oct 2005 10:55:29 +0200 + +mono-tools (1.1.9-2) unstable; urgency=low + + * Mirco 'meebey' Bauer + + debian/control: + - Added dpatch to build-depends. (Closes: #331610) + + debian/patches/01_use_real_nunit.dpatch: + - Updated to use nunit.pc instead of nunit-core.pc + + -- Debian Mono Group Wed, 5 Oct 2005 10:25:47 +0200 + +mono-tools (1.1.9-1) unstable; urgency=low + + * Mirco 'meebey' Bauer + + Initial Release. + + -- Debian Mono Group Sun, 25 Sep 2005 19:40:02 +0200 --- mono-tools-2.0.orig/debian/mono-tools-gui.install +++ mono-tools-2.0/debian/mono-tools-gui.install @@ -0,0 +1,8 @@ +debian/tmp/usr/bin/gasnview +debian/tmp/usr/lib/mono/1.0/gasnview.exe +debian/tmp/usr/bin/ilcontrast +debian/tmp/usr/lib/ilcontrast/ +debian/tmp/usr/share/applications/ilcontrast.desktop +debian/tmp/usr/share/pixmaps/ilcontrast.png +debian/tmp/usr/bin/gui-compare +debian/tmp/usr/lib/gui-compare/ --- mono-tools-2.0.orig/debian/watch +++ mono-tools-2.0/debian/watch @@ -0,0 +1,2 @@ +version=3 +http://ftp.novell.com/pub/mono/sources/mono-tools/mono-tools-([\d\.]+)\.(?:zip|tar\.(?:gz|bz2)) --- mono-tools-2.0.orig/debian/monodoc-browser.postinst +++ mono-tools-2.0/debian/monodoc-browser.postinst @@ -0,0 +1,9 @@ +#!/bin/sh +set -e + +echo "generating monodoc index..." +monodoc --make-index > /dev/null +echo "generating monodoc search index... (this can take a while)" +monodoc --make-search-index > /dev/null + +#DEBHELPER# --- mono-tools-2.0.orig/debian/gnunit2.desktop +++ mono-tools-2.0/debian/gnunit2.desktop @@ -0,0 +1,10 @@ +[Desktop Entry] +Version=1.0 +Encoding=UTF-8 +Name=Gnunit2 +Comment=Run NUnit test suites on CLI 2.0 +Exec=gnunit2 +TryExec=gnunit2 +Terminal=false +Type=Application +Categories=Development; --- mono-tools-2.0.orig/debian/gnunit.desktop +++ mono-tools-2.0/debian/gnunit.desktop @@ -0,0 +1,9 @@ +[Desktop Entry] +Encoding=UTF-8 +Name=Gnunit +Comment=Run NUnit test suites on CLI 1.0/1.1 +Exec=gnunit +TryExec=gnunit +Terminal=false +Type=Application +Categories=Development; --- mono-tools-2.0.orig/debian/patches/02-startup_mono_path.patch +++ mono-tools-2.0/debian/patches/02-startup_mono_path.patch @@ -0,0 +1,12 @@ +--- mono-tools-2.0.orig/gnunit/src/script.in ++++ mono-tools-2.0/gnunit/src/script.in +@@ -1,2 +1,3 @@ + #!/bin/sh ++export MONO_PATH=/usr/lib/nunit:$MONO_PATH + exec @RUNTIME@ @mono_one_instdir@/@exe_file@ "$@" +--- mono-tools-2.0.orig/gnunit/src/script2.in ++++ mono-tools-2.0/gnunit/src/script2.in +@@ -1,2 +1,3 @@ + #!/bin/sh ++export MONO_PATH=/usr/lib/nunit:$MONO_PATH + exec @RUNTIME@ @mono_two_instdir@/@exe_file@ "$@" --- mono-tools-2.0.orig/debian/patches/00-fix_build_system.patch +++ mono-tools-2.0/debian/patches/00-fix_build_system.patch @@ -0,0 +1,93 @@ +--- mono-tools-2.0.orig/configure.in ++++ mono-tools-2.0/configure.in +@@ -7,8 +7,8 @@ + AC_PROG_INSTALL + + dnl C# compiler +-AC_PATH_PROG(MCS, mcs, no) +-AC_PATH_PROG(GMCS, gmcs, no) ++AC_PATH_PROG(MCS, csc, no) ++AC_PATH_PROG(GMCS, csc, no) + AC_PATH_PROG(RUNTIME, mono, no) + AC_PATH_PROG(GACUTIL, gacutil, no) + +--- mono-tools-2.0.orig/Mono.Profiler/profiler-file-decoder/Makefile.am ++++ mono-tools-2.0/Mono.Profiler/profiler-file-decoder/Makefile.am +@@ -4,7 +4,7 @@ + # Warning: This is an automatically generated file, do not edit! + + if ENABLE_DEBUG +-ASSEMBLY_COMPILER_COMMAND = gmcs ++ASSEMBLY_COMPILER_COMMAND = csc + ASSEMBLY_COMPILER_FLAGS = -noconfig -codepage:utf8 -warn:4 -optimize+ -debug -define:DEBUG + ASSEMBLY = bin/Debug/mprof-decoder.exe + ASSEMBLY_MDB = $(ASSEMBLY).mdb +@@ -25,7 +25,7 @@ + endif + + if ENABLE_RELEASE +-ASSEMBLY_COMPILER_COMMAND = gmcs ++ASSEMBLY_COMPILER_COMMAND = csc + ASSEMBLY_COMPILER_FLAGS = -noconfig -codepage:utf8 -warn:4 -optimize+ + ASSEMBLY = bin/Release/mprof-decoder.exe + ASSEMBLY_MDB = +--- mono-tools-2.0.orig/Mono.Profiler/profiler-decoder-library/Makefile.am ++++ mono-tools-2.0/Mono.Profiler/profiler-decoder-library/Makefile.am +@@ -4,7 +4,7 @@ + # Warning: This is an automatically generated file, do not edit! + + if ENABLE_DEBUG +-ASSEMBLY_COMPILER_COMMAND = gmcs ++ASSEMBLY_COMPILER_COMMAND = csc + ASSEMBLY_COMPILER_FLAGS = -noconfig -codepage:utf8 -warn:4 -optimize+ -debug -define:DEBUG + ASSEMBLY = bin/Debug/mprof-decoder-library.dll + ASSEMBLY_MDB = $(ASSEMBLY).mdb +@@ -18,7 +18,7 @@ + endif + + if ENABLE_RELEASE +-ASSEMBLY_COMPILER_COMMAND = gmcs ++ASSEMBLY_COMPILER_COMMAND = csc + ASSEMBLY_COMPILER_FLAGS = -noconfig -codepage:utf8 -warn:4 -optimize+ + ASSEMBLY = bin/Release/profiler-decoder-library.dll + ASSEMBLY_MDB = +--- mono-tools-2.0.orig/Mono.Profiler/heap-snapshot-explorer/Makefile.am ++++ mono-tools-2.0/Mono.Profiler/heap-snapshot-explorer/Makefile.am +@@ -4,7 +4,7 @@ + # Warning: This is an automatically generated file, do not edit! + + if ENABLE_DEBUG +-ASSEMBLY_COMPILER_COMMAND = gmcs ++ASSEMBLY_COMPILER_COMMAND = csc + ASSEMBLY_COMPILER_FLAGS = -noconfig -codepage:utf8 -warn:4 -optimize+ -debug "-define:DEBUG" + + ASSEMBLY = bin/Debug/mprof-heap-snapshot-explorer.dll +@@ -25,7 +25,7 @@ + endif + + if ENABLE_RELEASE +-ASSEMBLY_COMPILER_COMMAND = gmcs ++ASSEMBLY_COMPILER_COMMAND = csc + ASSEMBLY_COMPILER_FLAGS = -noconfig -codepage:utf8 -warn:4 -optimize+ + ASSEMBLY = bin/Release/heap-snapshot-explorer.dll + ASSEMBLY_MDB = +--- mono-tools-2.0.orig/Mono.Profiler/heap-snapshot-viewer/Makefile.am ++++ mono-tools-2.0/Mono.Profiler/heap-snapshot-viewer/Makefile.am +@@ -4,7 +4,7 @@ + # Warning: This is an automatically generated file, do not edit! + + if ENABLE_DEBUG +-ASSEMBLY_COMPILER_COMMAND = gmcs ++ASSEMBLY_COMPILER_COMMAND = csc + ASSEMBLY_COMPILER_FLAGS = -noconfig -codepage:utf8 -warn:4 -optimize+ -debug "-define:DEBUG" + + ASSEMBLY = bin/Debug/mprof-heap-viewer.exe +@@ -33,7 +33,7 @@ + endif + + if ENABLE_RELEASE +-ASSEMBLY_COMPILER_COMMAND = gmcs ++ASSEMBLY_COMPILER_COMMAND = csc + ASSEMBLY_COMPILER_FLAGS = -noconfig -codepage:utf8 -warn:4 -optimize+ + ASSEMBLY = bin/Release/mprof-heap-viewer.exe + ASSEMBLY_MDB = --- mono-tools-2.0.orig/debian/patches/series +++ mono-tools-2.0/debian/patches/series @@ -0,0 +1,9 @@ +#01-use_real_nunit.patch +00-fix_build_system.patch +02-startup_mono_path.patch +03-mozilla_home.patch +04-gendarme_link_libraries_correctly.patch +#05-cecil.patch +#06-nunit_2.4_port.patch +#07-webkit-sharp_port.patch +dont_bundle_cecil.patch --- mono-tools-2.0.orig/debian/patches/dont_bundle_cecil.patch +++ mono-tools-2.0/debian/patches/dont_bundle_cecil.patch @@ -0,0 +1,29 @@ +--- mono-tools-2.0.orig/gui-compare/Makefile.am ++++ mono-tools-2.0/gui-compare/Makefile.am +@@ -1,8 +1,8 @@ + guicomparedir=$(prefix)/lib/gui-compare + bin_SCRIPTS = gui-compare +-guicompare_DATA = gui-compare.exe Mono.Cecil.dll ++guicompare_DATA = gui-compare.exe + +-CLEANFILES = gui-compare.exe gui-compare.exe.mdb Mono.Cecil.dll gui-compare ++CLEANFILES = gui-compare.exe gui-compare.exe.mdb gui-compare + + + gui_compare_sources = \ +@@ -53,12 +53,9 @@ + + EXTRA_DIST = $(gui_compare_sources) $(gui_compare_resources) gui-compare.mds gui-compare.mdp gui-compare.in + +-packages = -pkg:gtk-sharp-2.0 -pkg:glib-sharp-2.0 -pkg:glade-sharp-2.0 -r:Mono.Cecil.dll +-assemblies = -r:System -r:Mono.Posix -r:System.Xml ++packages = -pkg:gtk-sharp-2.0 -pkg:glib-sharp-2.0 -pkg:glade-sharp-2.0 ++assemblies = -r:System -r:Mono.Posix -r:System.Xml -r:$(CECIL_ASM) + ress= $(foreach res,$(gui_compare_resources), $(addprefix -resource:,$(res)),$(notdir $(res))) + +-Mono.Cecil.dll: +- cp $(CECIL_ASM) . +- +-gui-compare.exe: $(gui_compare_sources) $(gui_compare_resources) Mono.Cecil.dll ++gui-compare.exe: $(gui_compare_sources) $(gui_compare_resources) + $(GMCS) -noconfig -codepage:utf8 -warn:4 -optimize+ -debug -define:DEBUG -target:exe -out:gui-compare.exe $(gui_compare_sources) $(ress) $(packages) $(assemblies) --- mono-tools-2.0.orig/debian/patches/06-nunit_2.4_port.patch +++ mono-tools-2.0/debian/patches/06-nunit_2.4_port.patch @@ -0,0 +1,240 @@ +--- mono-tools-2.0.orig/gnunit/src/AssemblyStore.cs ++++ mono-tools-2.0/gnunit/src/AssemblyStore.cs +@@ -40,9 +40,9 @@ + } + } + +- delegate void TestStartHandler (TestCase test); ++ delegate void TestStartHandler (TestName test); + delegate void TestFinishHandler (TestCaseResult result); +- delegate void SuiteStartHandler (TestSuite test); ++ delegate void SuiteStartHandler (TestName test); + delegate void SuiteFinishHandler (TestSuiteResult result); + delegate void TestCaseResultHandler (TestResult result); + +@@ -71,9 +71,9 @@ + class QueuedSuiteStart : QueuedEvent + { + SuiteStartHandler handler; +- TestSuite suite; ++ TestName suite; + +- public QueuedSuiteStart (SuiteStartHandler handler, TestSuite suite) ++ public QueuedSuiteStart (SuiteStartHandler handler, TestName suite) + { + this.handler = handler; + this.suite = suite; +@@ -105,9 +105,9 @@ + class QueuedTestStart : QueuedEvent + { + TestStartHandler handler; +- TestCase test; ++ TestName test; + +- public QueuedTestStart (TestStartHandler handler, TestCase test) ++ public QueuedTestStart (TestStartHandler handler, TestName test) + { + this.handler = handler; + this.test = test; +@@ -186,7 +186,7 @@ + Queue pending; + System.Threading.Thread th; + string location; +- IFilter filter; ++ ITestFilter filter; + + Exception exception; + static GLib.GType gtype = GLib.GType.Invalid; +@@ -220,7 +220,7 @@ + } + } + +- public IFilter Filter { ++ public ITestFilter Filter { + get { return filter; } + set { filter = value; } + } +@@ -437,7 +437,7 @@ + { + TreeIter next; + foreach (Test t in suite.Tests) { +- next = AddFixture (parent, t.FullName); ++ next = AddFixture (parent, t.TestName.FullName); + if ((n % 5) == 0) { + while (GLib.MainContext.Iteration ()); + } +@@ -516,11 +516,11 @@ + } + + // Interface NUnit.Core.EventListener +- void EventListener.RunStarted (Test [] tests) ++ void EventListener.RunStarted (string name, int testCount) + { + } + +- void EventListener.RunFinished (TestResult [] results) ++ void EventListener.RunFinished (TestResult result) + { + } + +@@ -532,7 +532,7 @@ + { + } + +- void EventListener.TestStarted (TestCase testCase) ++ void EventListener.TestStarted (TestName testCase) + { + if (listener != null) { + Monitor.Enter (pending); +@@ -553,7 +553,7 @@ + idle.Set (); + } + +- void EventListener.SuiteStarted (TestSuite suite) ++ void EventListener.SuiteStarted (TestName suite) + { + if (listener != null) { + Monitor.Enter (pending); +--- mono-tools-2.0.orig/gnunit/src/main.cs ++++ mono-tools-2.0/gnunit/src/main.cs +@@ -17,6 +17,7 @@ + using Gnome; + using Gtk; + using NUnit.Core; ++using NUnit.Core.Filters; + using NUnit.Util; + using Dialog = Gtk.Dialog; + +@@ -125,7 +126,7 @@ + } + } + +- class CategoryMaster : IFilter { ++ class CategoryMaster : ITestFilter { + static Hashtable known_categories; + string [] categories; + bool [] states; +@@ -134,7 +135,7 @@ + string [] exclude; + bool uncategorized; + bool all; +- IFilter inner_filter; ++ ITestFilter inner_filter; + + static CategoryMaster () + { +@@ -216,6 +217,10 @@ + get { return cb; } + } + ++ public bool IsEmpty { ++ get { return false; } ++ } ++ + void ToggleState (object sender, EventArgs args) + { + CheckMenuItem item = (CheckMenuItem) sender; +@@ -255,25 +260,19 @@ + idx++; + } + } +- inner_filter = new CategoryFilter (exclude, uncategorized); ++ inner_filter = new CategoryFilter (exclude); + } else { +- inner_filter = new CategoryFilter (categories, uncategorized); ++ inner_filter = new CategoryFilter (categories); ++ } ++ ++ if (uncategorized) { ++ inner_filter = new NotFilter(inner_filter); + } + } + + public bool Cancel; +- bool IFilter.Pass (TestSuite suite) +- { +- if (Cancel) +- return false; +- +- if (all) +- return true; +- +- return inner_filter.Pass (suite); +- } + +- bool IFilter.Pass (TestCase test) ++ bool ITestFilter.Pass (ITest test) + { + if (Cancel) + return false; +@@ -284,9 +283,9 @@ + return inner_filter.Pass (test); + } + +- public bool Exclude ++ public bool Match (ITest test) + { +- get { return false; } ++ return true; + } + + static string _ (string key) +@@ -724,11 +723,11 @@ + } + + // Interface NUnit.Core.EventListener +- void EventListener.RunStarted (Test [] tests) ++ void EventListener.RunStarted (string name, int testCount) + { + } + +- void EventListener.RunFinished (TestResult [] results) ++ void EventListener.RunFinished (TestResult result) + { + } + +@@ -740,7 +739,7 @@ + { + } + +- void EventListener.TestStarted (TestCase testCase) ++ void EventListener.TestStarted (TestName testCase) + { + frameLabel.Text = "Test: " + testCase.FullName; + } +@@ -752,7 +751,7 @@ + + assertions += result.AssertCount; + if (result.Executed == false) { +- AddIgnored (result.Test.FullName, result.Test.IgnoreReason); ++ AddIgnored (result.Test.TestName.FullName, result.Test.IgnoreReason); + } else if (result.IsFailure) { + AddError (result); + } +@@ -762,7 +761,7 @@ + ClockUpdater (this, EventArgs.Empty); + } + +- void EventListener.SuiteStarted (TestSuite suite) ++ void EventListener.SuiteStarted (TestName suite) + { + frameLabel.Text = "Suite: " + suite.FullName; + } +@@ -826,7 +825,7 @@ + int dot; + TreeIter main = TreeIter.Zero; + TreeIter iter; +- string fullname = result.Test.FullName; ++ string fullname = result.Test.TestName.FullName; + if ((dot = fullname.LastIndexOf ('.')) != -1) { + string key = fullname.Substring (0, dot); + if (!errorIters.ContainsKey (key)) { +@@ -841,7 +840,7 @@ + errorIters [fullname] = main; + } + +- iter = failuresStore.AppendValues (main, result.Test.Name); ++ iter = failuresStore.AppendValues (main, result.Test.TestName.Name); + iter = failuresStore.AppendValues (iter, result.Message); + iter = failuresStore.AppendValues (iter, result.StackTrace); + --- mono-tools-2.0.orig/debian/patches/03-mozilla_home.patch +++ mono-tools-2.0/debian/patches/03-mozilla_home.patch @@ -0,0 +1,34 @@ +--- mono-tools-2.0.orig/configure.in ++++ mono-tools-2.0/configure.in +@@ -62,7 +62,7 @@ + + if test "x$enable_gecko" = "xyes"; then + # get the mozilla home directory +- MOZILLA_HOME="`$PKG_CONFIG --variable=libdir mozilla-gtkmozembed`" ++ MOZILLA_HOME="`$PKG_CONFIG --variable=libdir xulrunner-gtkmozembed`" + AC_SUBST(MOZILLA_HOME) + fi + +--- mono-tools-2.0.orig/ilcontrast/ilcontrast.in ++++ mono-tools-2.0/ilcontrast/ilcontrast.in +@@ -19,16 +19,20 @@ + elif test x@MOZILLA_HOME@ != x; then + if [ -f @MOZILLA_HOME@/chrome/comm.jar ]; then + MOZILLA_HOME=@MOZILLA_HOME@ ++ MOZILLA_FIVE_HOME=$MOZILLA_HOME + fi + elif grep GRE_PATH /etc/gre.d/*.conf > /dev/null ; then + MOZILLA_HOME=$(grep -h GRE_PATH= /etc/gre.d/*.conf | cut -d '"' -f 2 -d = | head -n 1) ++ MOZILLA_FIVE_HOME=$MOZILLA_HOME + elif [ $(which xulrunner 2> /dev/null) ] > /dev/null ; then + MOZILLA_FIVE_HOME=`getdirectory xulrunner` + MOZILLA_HOME=$MOZILLA_FIVE_HOME + elif [ $(which mozilla 2> /dev/null) ] && grep MOZILLA_FIVE_HOME= "$(which mozilla)" > /dev/null ; then + MOZILLA_HOME=$(grep MOZILLA_FIVE_HOME= $(which mozilla) | cut -d '"' -f 2) ++ MOZILLA_FIVE_HOME=$MOZILLA_HOME + elif [ $(which firefox 2> /dev/null) ] && grep MOZILLA_FIVE_HOME= "$(which firefox)" > /dev/null ; then + MOZILLA_HOME=$(grep MOZILLA_FIVE_HOME= $(which firefox) | cut -d '"' -f 2) ++ MOZILLA_FIVE_HOME=$MOZILLA_HOME + fi + + if [ -n $LD_LIBRARY_PATH ]; then --- mono-tools-2.0.orig/debian/patches/07-webkit-sharp_port.patch +++ mono-tools-2.0/debian/patches/07-webkit-sharp_port.patch @@ -0,0 +1,1042 @@ +Author: Mirco Bauer +Reason: Backport of webkit-sharp support, taken from upstream SVN revision: + r97203, r97657, r97745, r105817, r105820, r105828, r105860 and r105868 +diff -urNad mono-tools-1.9~/configure.in mono-tools-1.9/configure.in +--- mono-tools-1.9~/configure.in 2008-08-10 14:59:40.000000000 +0200 ++++ mono-tools-1.9/configure.in 2008-08-10 14:59:40.000000000 +0200 +@@ -10,6 +10,7 @@ + AC_PATH_PROG(MCS, mcs, no) + AC_PATH_PROG(GMCS, gmcs, no) + AC_PATH_PROG(RUNTIME, mono, no) ++AC_PATH_PROG(GACUTIL, gacutil, no) + + CS="C#" + if test "x$MCS" = "xno" ; then +@@ -31,6 +32,8 @@ + AC_SUBST(GMCS) + AC_SUBST(RUNTIME) + AC_SUBST(RESGEN) ++AC_SUBST(GACUTIL) ++ + + PKG_CHECK_MODULES(NUNIT, mono-nunit) + AC_SUBST(NUNIT_LIBS) +@@ -63,9 +66,35 @@ + AC_SUBST(MOZILLA_HOME) + fi + ++dnl TODO: check for webkit-sharp ++# AM_CONDITIONAL(ENABLE_WEBKIT, test "xno" = "xyes") ++PKG_CHECK_MODULES(WEBKIT_SHARP, webkit-sharp-1.0, enable_webkit=yes, enable_webkit=no) ++AC_SUBST(WEBKIT_SHARP_LIBS) ++AM_CONDITIONAL(ENABLE_WEBKIT, test "x$enable_webkit" = "xyes") + +-if test "x$enable_gtkhtml$enable_gecko" = "xnono" ; then +- AC_MSG_ERROR([no HTML display found. You need either gtkhtml or gecko]) ++# PKG_CHECK_MODULES(MONOWEBBROWSER, mono-webbrowser, enable_monowebbrowser=yes, enable_monowebbrowser=no) ++# AC_SUBST(MONOWEBBROWSER_LIBS) ++ ++AC_MSG_CHECKING([for Mono.WebBrowser]) ++if test "x$GACUTIL" = "xno" ++then ++ AC_MSG_RESULT([no]) ++ if test "x$enable_monowebbrowser" = "x" ; then enable_monowebbrowser=no ; fi ++else ++ if $GACUTIL -l Mono.WebBrowser | grep -q "Mono.WebBrowser" ++ then ++ AC_MSG_RESULT([yes]) ++ enable_monowebbrowser=yes ++ else ++ AC_MSG_RESULT([no]) ++ enable_monowebbrowser=no ++ fi ++fi ++MONOWEBBROWSER_LIBS=-r:Mono.WebBrowser ++AM_CONDITIONAL(ENABLE_MONOWEBBROWSER, test "x$enable_monowebbrowser" = "xyes") ++ ++if test "x$enable_gtkhtml$enable_gecko$enable_monowebbrowser$enable_webkit" = "xnononono" ; then ++ AC_MSG_ERROR([no HTML display found. You need either gtkhtml, gecko, WebKit or Mono.WebBrowser]) + fi + + dnl +@@ -183,7 +212,10 @@ + echo "Configuration summary" + echo "" + echo " * Installation prefix = $prefix" +-echo " * gecko-sharp.dll = $enable_gecko" ++echo " * Using Gecko = $enable_gecko" ++echo " * Using GtkHtml = $enable_gtkhtml" ++echo " * Using Mono.WebBrowser = $enable_monowebbrowser" ++echo " * Using WebKit = $enable_webkit" + echo "" + echo " NOTE: if any of the above say 'no' you may install the" + echo " corresponding development packages for them, rerun" +diff -urNad mono-tools-1.9~/docbrowser/BrowserWidget.cs mono-tools-1.9/docbrowser/BrowserWidget.cs +--- mono-tools-1.9~/docbrowser/BrowserWidget.cs 1970-01-01 01:00:00.000000000 +0100 ++++ mono-tools-1.9/docbrowser/BrowserWidget.cs 2008-08-10 14:59:40.000000000 +0200 +@@ -0,0 +1,108 @@ ++//Permission is hereby granted, free of charge, to any person obtaining ++//a copy of this software and associated documentation files (the ++//"Software"), to deal in the Software without restriction, including ++//without limitation the rights to use, copy, modify, merge, publish, ++//distribute, sublicense, and/or sell copies of the Software, and to ++//permit persons to whom the Software is furnished to do so, subject to ++//the following conditions: ++// ++//The above copyright notice and this permission notice shall be ++//included in all copies or substantial portions of the Software. ++// ++//THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, ++//EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF ++//MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND ++//NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE ++//LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION ++//OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION ++//WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ++// ++//Copyright (c) 2008 Novell, Inc. ++// ++//Authors: ++// Andreia Gaita (avidigal at novell.com) ++// ++ ++using System; ++using Mono.WebBrowser; ++using Gtk; ++using Gdk; ++using Gnome; ++ ++namespace Monodoc ++{ ++ public class BrowserWidget : Gtk.Bin ++ { ++ public IWebBrowser browser; ++ int width, height; ++ ++ public BrowserWidget() : base() ++ { ++ width = height = 200; ++ browser = Manager.GetNewInstance (Platform.Gtk); ++ } ++ ++ ++ protected override void OnRealized () ++ { ++ base.OnRealized (); ++ ++ WindowAttr attributes = new WindowAttr (); ++ attributes.WindowType = Gdk.WindowType.Child; ++ attributes.X = Allocation.X; ++ attributes.Y = Allocation.Y; ++ attributes.Width = Allocation.Width; ++ attributes.Height = Allocation.Height; ++ attributes.Wclass = WindowClass.InputOutput; ++ attributes.Visual = Visual; ++ attributes.Colormap = Colormap; ++ attributes.EventMask = (int) Events; ++ attributes.EventMask = attributes.EventMask | ((int) Gdk.EventMask.ExposureMask | ++ (int) Gdk.EventMask.KeyPressMask | ++ (int) Gdk.EventMask.KeyReleaseMask | ++ (int) Gdk.EventMask.EnterNotifyMask | ++ (int) Gdk.EventMask.LeaveNotifyMask | ++ (int) Gdk.EventMask.StructureMask | ++ (int) Gdk.EventMask.FocusChangeMask); ++ ++ GdkWindow = new Gdk.Window (ParentWindow, attributes, Gdk.WindowAttributesType.X | Gdk.WindowAttributesType.Y | ++ Gdk.WindowAttributesType.Colormap | Gdk.WindowAttributesType.Visual); ++ GdkWindow.UserData = this.Handle; ++ ++ Style = Style.Attach (GdkWindow); ++ Style.Background (StateType.Normal); ++ ++ browser.Load (this.Handle, width, height); ++ } ++ ++ protected override void OnMapped () ++ { ++ base.OnMapped (); ++ GdkWindow.Show (); ++ } ++ ++ protected override void OnUnmapped () ++ { ++ base.OnUnmapped (); ++ GdkWindow.Hide (); ++ } ++ ++ protected override void OnSizeAllocated (Rectangle allocation) ++ { ++ base.OnSizeAllocated (allocation); ++ if ((WidgetFlags & WidgetFlags.Realized) != 0) { ++ GdkWindow.MoveResize (allocation); ++ if (browser != null) ++ browser.Resize (allocation.Width, allocation.Height); ++ } ++ } ++ ++ protected override void OnSizeRequested (ref Requisition requisition) ++ { ++ SetSizeRequest (width, height); ++ ++ } ++ ++ ++ } ++} +diff -urNad mono-tools-1.9~/docbrowser/GtkHtmlHtmlRender.cs mono-tools-1.9/docbrowser/GtkHtmlHtmlRender.cs +--- mono-tools-1.9~/docbrowser/GtkHtmlHtmlRender.cs 2008-01-30 00:06:11.000000000 +0100 ++++ mono-tools-1.9/docbrowser/GtkHtmlHtmlRender.cs 2008-08-10 14:59:40.000000000 +0200 +@@ -31,11 +31,6 @@ + + public GtkHtmlHtmlRender (RootTree help_tree) + { +- html_panel = new HTML(); +- html_panel.Show(); +- html_panel.LinkClicked += new LinkClickedHandler (LinkClicked); +- html_panel.OnUrl += new OnUrlHandler (OnUrlMouseOver); +- html_panel.UrlRequested += new UrlRequestedHandler (UrlRequested); + this.help_tree = help_tree; + } + +@@ -115,5 +110,34 @@ + + PrintManager.Print (Html); + } ++ ++ public bool Initialize () ++ { ++ try { ++ html_panel = new HTML (); ++ } ++ catch (Exception ex) { ++ Console.WriteLine (ex.Message); ++ Console.WriteLine (ex.StackTrace); ++ return false; ++ } ++ html_panel.Show (); ++ html_panel.LinkClicked += new LinkClickedHandler (LinkClicked); ++ html_panel.OnUrl += new OnUrlHandler (OnUrlMouseOver); ++ html_panel.UrlRequested += new UrlRequestedHandler (UrlRequested); ++ return true; ++ ++ } ++ ++ public Capabilities Capabilities ++ { ++ get { return Capabilities.None; } ++ } ++ ++ public string Name ++ { ++ get { return "GtkHtml"; } ++ } ++ + } + } +diff -urNad mono-tools-1.9~/docbrowser/IHtmlRender.cs mono-tools-1.9/docbrowser/IHtmlRender.cs +--- mono-tools-1.9~/docbrowser/IHtmlRender.cs 2007-12-06 22:43:45.000000000 +0100 ++++ mono-tools-1.9/docbrowser/IHtmlRender.cs 2008-08-10 14:59:40.000000000 +0200 +@@ -6,35 +6,49 @@ + using System; + using Gtk; + +-namespace Monodoc { +-public interface IHtmlRender { +- // Jump to an anchor of the form +- void JumpToAnchor (string anchor_name); ++namespace Monodoc ++{ ++ public interface IHtmlRender ++ { ++ // Jump to an anchor of the form ++ void JumpToAnchor (string anchor_name); + +- //Copy to the clipboard the selcted text +- void Copy (); ++ //Copy to the clipboard the selcted text ++ void Copy (); + +- //Select all the text +- void SelectAll (); ++ //Select all the text ++ void SelectAll (); + +- //Render the HTML code given +- void Render (string html_code); ++ //Render the HTML code given ++ void Render (string html_code); + +- //Event fired when the use is over an Url +- event EventHandler OnUrl; ++ //Event fired when the use is over an Url ++ event EventHandler OnUrl; + +- //Event fired when the user clicks on a Link +- event EventHandler UrlClicked; ++ //Event fired when the user clicks on a Link ++ event EventHandler UrlClicked; + +- // Variable that handles the info encessary for the events +- // As every implementation of HtmlRender will have differents events +- // we try to homogenize them with the variabel +- string Url { get; } ++ // Variable that handles the info encessary for the events ++ // As every implementation of HtmlRender will have differents events ++ // we try to homogenize them with the variabel ++ string Url { get; } + +- Widget HtmlPanel { get; } ++ Widget HtmlPanel { get; } + +- void Print (string Html); +-} ++ void Print (string Html); ++ ++ bool Initialize (); ++ Capabilities Capabilities { get; } ++ string Name { get; } ++ ++ } + ++ [Flags] ++ public enum Capabilities ++ { ++ None = 0, ++ Css = 1, ++ Fonts = 2 ++ } + + } +diff -urNad mono-tools-1.9~/docbrowser/Makefile.am mono-tools-1.9/docbrowser/Makefile.am +--- mono-tools-1.9~/docbrowser/Makefile.am 2008-01-30 00:06:11.000000000 +0100 ++++ mono-tools-1.9/docbrowser/Makefile.am 2008-08-10 14:59:40.000000000 +0200 +@@ -10,9 +10,15 @@ + + GTKHTML_TARGET=GtkHtmlHtmlRender.dll + endif ++if ENABLE_WEBKIT ++WEBKIT_TARGET=WebKitHtmlRender.dll ++endif ++if ENABLE_MONOWEBBROWSER ++MONOWEBBROWSER_TARGET=MonoWebBrowserHtmlRender.dll ++endif + +-CLEANFILES = browser.exe browser.exe.mdb admin.exe admin.exe.mdb $(GECKO_TARGET) $(GECKO_TARGET).mdb $(GTKHTML_TARGET) $(GTKHTML_TARGET).mdb monodoc.desktop +-monodoc_DATA = browser.exe $(GECKO_TARGET) $(GTKHTML_TARGET) ++CLEANFILES = browser.exe browser.exe.mdb admin.exe admin.exe.mdb $(GECKO_TARGET) $(GECKO_TARGET).mdb $(GTKHTML_TARGET) $(GTKHTML_TARGET).mdb $(WEBKIT_TARGET) $(WEBKIT_TARGET).mdb $(MONOWEBBROWSER_TARGET) $(MONOWEBBROWSER_TARGET).mdb monodoc.desktop ++monodoc_DATA = browser.exe $(GECKO_TARGET) $(GTKHTML_TARGET) $(WEBKIT_TARGET) $(MONOWEBBROWSER_TARGET) + + DISTCLEANFILES = AssemblyInfo.cs monodoc.desktop monodoc + +@@ -39,6 +45,13 @@ + $(srcdir)/PrintManager.cs \ + $(srcdir)/GtkHtmlHtmlRender.cs + ++webkitrender_sources = \ ++ $(srcdir)/WebKitHtmlRender.cs ++ ++monowebbrowserrender_sources = \ ++ $(srcdir)/BrowserWidget.cs \ ++ $(srcdir)/MonoWebBrowserHtmlRender.cs ++ + admin_sources = \ + $(srcdir)/admin.cs \ + $(srcdir)/Contributions.cs +@@ -48,10 +61,17 @@ + geckorender_assemblies = $(GTK_SHARP_LIBS) $(GTKHTML_SHARP_LIBS) $(GECKO_SHARP_LIBS) $(MONODOC_LIBS) -r:browser.exe + gtkhtmlrender_assemblies = $(GTK_SHARP_LIBS) $(GTKHTML_SHARP_LIBS) $(MONODOC_LIBS) -r:browser.exe + ++# TODO: use pkg-config for webkit-sharp ++# WEBKIT_SHARP_LIBS = -r:nwebkit.dll ++webkitrender_assemblies = $(GTK_SHARP_LIBS) $(WEBKIT_SHARP_LIBS) $(MONODOC_LIBS) -r:browser.exe ++ ++monowebbrowserrender_assemblies = $(GTK_SHARP_LIBS) $(MONOWEBBROWSER_LIBS) $(MONODOC_LIBS) -r:browser.exe -r:Mono.Mozilla.dll ++ + EXTRA_DIST = \ + $(browser_sources) \ + $(geckorender_sources) \ + $(gtkhtmlrender_sources) \ ++ $(webkitrender_sources) \ + monodoc.desktop.in \ + admin.cs \ + admin.glade \ +@@ -63,17 +83,23 @@ + # admin hardcodes GTKHTML for now. + if ENABLE_GTKHTML + admin.exe: $(admin_sources) $(srcdir)/admin.glade +- $(MCS) -debug -out:admin.exe $(admin_sources) -resource:$(srcdir)/admin.glade,admin.glade $(browser_assemblies) $(GTKHTML_SHARP_LIBS) -r:System.Drawing ++ $(GMCS) -debug -out:admin.exe $(admin_sources) -resource:$(srcdir)/admin.glade,admin.glade $(browser_assemblies) $(GTKHTML_SHARP_LIBS) -r:System.Drawing + endif + + browser.exe: $(browser_sources) $(browser_built_sources) $(srcdir)/browser.glade $(srcdir)/monodoc.png +- $(MCS) -debug -out:browser.exe $(browser_sources) $(browser_built_sources) -resource:$(srcdir)/monodoc.png,monodoc.png -resource:$(srcdir)/browser.glade,browser.glade $(browser_assemblies) ++ $(GMCS) -debug -out:browser.exe $(browser_sources) $(browser_built_sources) -resource:$(srcdir)/monodoc.png,monodoc.png -resource:$(srcdir)/browser.glade,browser.glade $(browser_assemblies) + + GeckoHtmlRender.dll : $(geckorender_sources) browser.exe +- $(MCS) -debug -target:library -out:$@ $(geckorender_sources) $(geckorender_assemblies) $(GECKO_PRINTING_DEF) $(CSHARP_FLAGS) ++ $(GMCS) -debug -target:library -out:$@ $(geckorender_sources) $(geckorender_assemblies) $(GECKO_PRINTING_DEF) $(CSHARP_FLAGS) + + GtkHtmlHtmlRender.dll : $(gtkhtmlrender_sources) browser.exe +- $(MCS) -debug -target:library -out:$@ $(gtkhtmlrender_sources) $(gtkhtmlrender_assemblies) $(CSHARP_FLAGS) ++ $(GMCS) -debug -target:library -out:$@ $(gtkhtmlrender_sources) $(gtkhtmlrender_assemblies) $(CSHARP_FLAGS) ++ ++WebKitHtmlRender.dll : $(webkitrender_sources) browser.exe ++ $(GMCS) -debug -target:library -out:$@ $(webkitrender_sources) $(webkitrender_assemblies) $(CSHARP_FLAGS) ++ ++MonoWebBrowserHtmlRender.dll : $(monowebbrowserrender_sources) browser.exe ++ $(GMCS) -debug -target:library -out:$@ $(monowebbrowserrender_sources) $(monowebbrowserrender_assemblies) $(CSHARP_FLAGS) + + b: browser.exe + MONO_PATH=. $(RUNTIME) --debug browser.exe +diff -urNad mono-tools-1.9~/docbrowser/Makefile.am.orig mono-tools-1.9/docbrowser/Makefile.am.orig +--- mono-tools-1.9~/docbrowser/Makefile.am.orig 1970-01-01 01:00:00.000000000 +0100 ++++ mono-tools-1.9/docbrowser/Makefile.am.orig 2008-08-10 14:59:40.000000000 +0200 +@@ -0,0 +1,117 @@ ++monodocdir=$(prefix)/lib/monodoc ++noinst_DATA = admin.exe ++ ++ ++if ENABLE_GECKO ++GECKO_TARGET=GeckoHtmlRender.dll ++endif ++if ENABLE_GTKHTML ++GECKO_PRINTING_DEF="-d:USE_GTKHTML_PRINT" ++ ++GTKHTML_TARGET=GtkHtmlHtmlRender.dll ++endif ++if ENABLE_WEBKIT ++WEBKIT_TARGET=WebKitHtmlRender.dll ++endif ++if ENABLE_MONOWEBBROWSER ++MONOWEBBROWSER_TARGET=MonoWebBrowserHtmlRender.dll ++endif ++ ++CLEANFILES = browser.exe browser.exe.mdb admin.exe admin.exe.mdb $(GECKO_TARGET) $(GECKO_TARGET).mdb $(GTKHTML_TARGET) $(GTKHTML_TARGET).mdb $(WEBKIT_TARGET) $(WEBKIT_TARGET).mdb $(MONOWEBBROWSER_TARGET) $(MONOWEBBROWSER_TARGET).mdb monodoc.desktop ++monodoc_DATA = browser.exe $(GECKO_TARGET) $(GTKHTML_TARGET) $(WEBKIT_TARGET) $(MONOWEBBROWSER_TARGET) ++ ++DISTCLEANFILES = AssemblyInfo.cs monodoc.desktop monodoc ++ ++bin_SCRIPTS = monodoc ++ ++browser_sources = \ ++ $(srcdir)/browser.cs \ ++ $(srcdir)/list.cs \ ++ $(srcdir)/elabel.cs \ ++ $(srcdir)/history.cs \ ++ $(srcdir)/Contributions.cs \ ++ $(srcdir)/XmlNodeWriter.cs \ ++ $(srcdir)/IHtmlRender.cs \ ++ $(srcdir)/BookmarkManager.cs \ ++ $(srcdir)/ProgressPanel.cs ++ ++browser_built_sources = AssemblyInfo.cs ++ ++geckorender_sources = \ ++ $(srcdir)/PrintManager.cs \ ++ $(srcdir)/GeckoHtmlRender.cs ++ ++gtkhtmlrender_sources = \ ++ $(srcdir)/PrintManager.cs \ ++ $(srcdir)/GtkHtmlHtmlRender.cs ++ ++webkitrender_sources = \ ++ $(srcdir)/WebKitHtmlRender.cs ++ ++monowebbrowserrender_sources = \ ++ $(srcdir)/BrowserWidget.cs \ ++ $(srcdir)/MonoWebBrowserHtmlRender.cs ++ ++admin_sources = \ ++ $(srcdir)/admin.cs \ ++ $(srcdir)/Contributions.cs ++ ++browser_assemblies = $(GTK_SHARP_LIBS) $(MONODOC_LIBS) -r:System.Web.Services ++# we insert gtkhtml libs if we have them for printing ++geckorender_assemblies = $(GTK_SHARP_LIBS) $(GTKHTML_SHARP_LIBS) $(GECKO_SHARP_LIBS) $(MONODOC_LIBS) -r:browser.exe ++gtkhtmlrender_assemblies = $(GTK_SHARP_LIBS) $(GTKHTML_SHARP_LIBS) $(MONODOC_LIBS) -r:browser.exe ++ ++# TODO: use pkg-config for webkit-sharp ++# WEBKIT_SHARP_LIBS = -r:nwebkit.dll ++webkitrender_assemblies = $(GTK_SHARP_LIBS) $(WEBKIT_SHARP_LIBS) $(MONODOC_LIBS) -r:browser.exe ++ ++monowebbrowserrender_assemblies = $(GTK_SHARP_LIBS) $(MONOWEBBROWSER_LIBS) $(MONODOC_LIBS) -r:browser.exe -r:Mono.Mozilla.dll ++ ++EXTRA_DIST = \ ++ $(browser_sources) \ ++ $(geckorender_sources) \ ++ $(gtkhtmlrender_sources) \ ++ $(webkitrender_sources) \ ++ monodoc.desktop.in \ ++ admin.cs \ ++ admin.glade \ ++ browser.glade \ ++ monodoc.png \ ++ AssemblyInfo.cs.in \ ++ README.ADMIN ++ ++# admin hardcodes GTKHTML for now. ++if ENABLE_GTKHTML ++admin.exe: $(admin_sources) $(srcdir)/admin.glade ++ $(MCS) -debug -out:admin.exe $(admin_sources) -resource:$(srcdir)/admin.glade,admin.glade $(browser_assemblies) $(GTKHTML_SHARP_LIBS) -r:System.Drawing ++endif ++ ++browser.exe: $(browser_sources) $(browser_built_sources) $(srcdir)/browser.glade $(srcdir)/monodoc.png ++ $(MCS) -debug -out:browser.exe $(browser_sources) $(browser_built_sources) -resource:$(srcdir)/monodoc.png,monodoc.png -resource:$(srcdir)/browser.glade,browser.glade $(browser_assemblies) ++ ++GeckoHtmlRender.dll : $(geckorender_sources) browser.exe ++ $(MCS) -debug -target:library -out:$@ $(geckorender_sources) $(geckorender_assemblies) $(GECKO_PRINTING_DEF) $(CSHARP_FLAGS) ++ ++GtkHtmlHtmlRender.dll : $(gtkhtmlrender_sources) browser.exe ++ $(MCS) -debug -target:library -out:$@ $(gtkhtmlrender_sources) $(gtkhtmlrender_assemblies) $(CSHARP_FLAGS) ++ ++WebKitHtmlRender.dll : $(webkitrender_sources) browser.exe ++ $(GMCS) -debug -target:library -out:$@ $(webkitrender_sources) $(webkitrender_assemblies) $(CSHARP_FLAGS) ++ ++MonoWebBrowserHtmlRender.dll : $(monowebbrowserrender_sources) browser.exe ++ $(GMCS) -debug -target:library -out:$@ $(monowebbrowserrender_sources) $(monowebbrowserrender_assemblies) $(CSHARP_FLAGS) ++ ++b: browser.exe ++ MONO_PATH=. $(RUNTIME) --debug browser.exe ++ ++c: admin.exe ++ MONO_PATH=. $(RUNTIME) --debug admin.exe ++ ++desktopdir = $(datadir)/applications ++desktop_DATA = monodoc.desktop ++ ++monodoc.desktop: monodoc.desktop.in ++ sed -e "s|\@bindir\@|$(bindir)|" $< > $@ ++ ++pixmapdir = $(datadir)/pixmaps ++pixmap_DATA = monodoc.png +diff -urNad mono-tools-1.9~/docbrowser/MonoWebBrowserHtmlRender.cs mono-tools-1.9/docbrowser/MonoWebBrowserHtmlRender.cs +--- mono-tools-1.9~/docbrowser/MonoWebBrowserHtmlRender.cs 1970-01-01 01:00:00.000000000 +0100 ++++ mono-tools-1.9/docbrowser/MonoWebBrowserHtmlRender.cs 2008-08-10 14:59:40.000000000 +0200 +@@ -0,0 +1,116 @@ ++//Permission is hereby granted, free of charge, to any person obtaining ++//a copy of this software and associated documentation files (the ++//"Software"), to deal in the Software without restriction, including ++//without limitation the rights to use, copy, modify, merge, publish, ++//distribute, sublicense, and/or sell copies of the Software, and to ++//permit persons to whom the Software is furnished to do so, subject to ++//the following conditions: ++// ++//The above copyright notice and this permission notice shall be ++//included in all copies or substantial portions of the Software. ++// ++//THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, ++//EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF ++//MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND ++//NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE ++//LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION ++//OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION ++//WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ++// ++//Copyright (c) 2008 Novell, Inc. ++// ++//Authors: ++// Andreia Gaita (avidigal at novell.com) ++// ++ ++using System; ++using Mono.WebBrowser; ++using Gtk; ++ ++namespace Monodoc ++{ ++ public class MonoWebBrowserHtmlRender : IHtmlRender ++ { ++ BrowserWidget html_panel; ++// Widget html_panel; ++ RootTree help_tree; ++ ++ public MonoWebBrowserHtmlRender (RootTree help_tree) ++ { ++ ++ ++// html_panel = new Gtk.Bin (IntPtr.Zero); ++// html_panel.ExposeEvent += new ExposeEventHandler (OnExposed); ++ //html_panel.Realized += new EventHandler (OnRealized); ++ this.help_tree = help_tree; ++ ++ } ++ ++ public void OnRealized (object sender, EventArgs e) ++ { ++ ++ } ++ ++ public void OnExposed (object sender, ExposeEventArgs e) ++ { ++ } ++ ++ public event EventHandler OnUrl; ++ public event EventHandler UrlClicked; ++ ++ // Jump to an anchor of the form ++ public void JumpToAnchor (string anchor_name) ++ { ++ } ++ ++ //Copy to the clipboard the selcted text ++ public void Copy () ++ { ++ } ++ ++ //Select all the text ++ public void SelectAll () ++ { ++ } ++ ++ //Render the HTML code given ++ public void Render (string html_code) ++ { ++ Console.WriteLine (html_code); ++ html_panel.browser.Render (html_code); ++ } ++ ++ ++ // Variable that handles the info encessary for the events ++ // As every implementation of HtmlRender will have differents events ++ // we try to homogenize them with the variabel ++ public string Url { ++ get {return String.Empty;}//return html_panel.browser.Document.Url; } ++ } ++ ++ public Widget HtmlPanel { ++ get { return (Widget)html_panel; } ++ } ++ ++ public void Print (string Html) ++ { ++ } ++ ++ public bool Initialize () ++ { ++ html_panel = new BrowserWidget (); ++ return html_panel.browser.Initialized; ++ } ++ ++ public Capabilities Capabilities ++ { ++ get { return Capabilities.Css | Capabilities.Fonts; } ++ } ++ ++ public string Name ++ { ++ get { return "MonoWebBrowser"; } ++ } ++ ++ } ++} +diff -urNad mono-tools-1.9~/docbrowser/WebKitHtmlRender.cs mono-tools-1.9/docbrowser/WebKitHtmlRender.cs +--- mono-tools-1.9~/docbrowser/WebKitHtmlRender.cs 1970-01-01 01:00:00.000000000 +0100 ++++ mono-tools-1.9/docbrowser/WebKitHtmlRender.cs 2008-08-10 14:59:40.000000000 +0200 +@@ -0,0 +1,89 @@ ++// ++// WebKitHtmlRender.cs: Implementation of IHtmlRender that uses WebKit ++// ++// Author: Alp Toker ++// ++ ++using System; ++using System.IO; ++using Gtk; ++using WebKit; ++ ++namespace Monodoc { ++public class WebKitHtmlRender : IHtmlRender { ++ ++ WebView web_view; ++ public Widget HtmlPanel { ++ get { return (Widget) web_view; } ++ } ++ ++ string url; ++ public string Url { ++ get { return url; } ++ } ++ ++ RootTree help_tree; ++ public event EventHandler OnUrl; ++ public event EventHandler UrlClicked; ++ ++ public WebKitHtmlRender (RootTree help_tree) ++ { ++ web_view = new WebView (); ++ web_view.Show (); ++ web_view.NavigationRequested += delegate (object sender, NavigationRequestedArgs e) { ++ url = e.Request.Uri; ++ if (UrlClicked != null) ++ UrlClicked (this, new EventArgs()); ++ e.RetVal = NavigationResponse.Ignore; ++ }; ++ web_view.HoveringOverLink += delegate (object sender, HoveringOverLinkArgs e) { ++ url = e.Link; ++ if (OnUrl != null) ++ OnUrl (this, new EventArgs ()); ++ }; ++ this.help_tree = help_tree; ++ } ++ ++ public void JumpToAnchor (string anchor) ++ { ++ web_view.Open ("#" + anchor); ++ } ++ ++ public void Copy () ++ { ++ web_view.CopyClipboard (); ++ } ++ ++ public void SelectAll () ++ { ++ web_view.SelectAll (); ++ } ++ ++ public void Render (string html) ++ { ++ web_view.LoadHtmlString (html, null); ++ } ++ ++ public void Print (string html) ++ { ++ web_view.ExecuteScript ("print();"); ++ } ++ ++ public bool Initialize () ++ { ++ return true; ++ } ++ ++ public Capabilities Capabilities ++ { ++ get { return Capabilities.Css | Capabilities.Fonts; } ++ } ++ ++ public string Name ++ { ++ get { return "WebKit"; } ++ } ++ ++ ++} ++} +diff -urNad mono-tools-1.9~/docbrowser/browser.cs mono-tools-1.9/docbrowser/browser.cs +--- mono-tools-1.9~/docbrowser/browser.cs 2008-01-30 00:06:10.000000000 +0100 ++++ mono-tools-1.9/docbrowser/browser.cs 2008-08-10 14:59:40.000000000 +0200 +@@ -15,17 +15,22 @@ + using System.Reflection; + using System.Threading; + using System.Collections; ++using System.Collections.Generic; + using System.Web.Services.Protocols; + using System.Xml; + + namespace Monodoc { + class Driver { ++ ++ public static string[] engines = {"WebKit", "GtkHtml", "MonoWebBrowser", "Gecko"}; ++ + static int Main (string [] args) + { + string topic = null; +- bool useGecko = true; + bool remote_mode = false; + ++ string engine = engines[0]; ++ + for (int i = 0; i < args.Length; i++){ + switch (args [i]){ + case "--html": +@@ -98,8 +103,14 @@ + remote_mode = true; + break; + +- case "--no-gecko": +- useGecko = false; ++ case "--engine": ++ if (i + 1 == args.Length) { ++ Console.WriteLine ("Usage: --engine engine, where engine is the name of the browser engine to use (WebKit, GtkHtml, MonoWebBrowser, Gecko or another)."); ++ return 1; ++ } ++ ++ engine = args [i+1]; ++ i++; + break; + default: + topic = args [i]; +@@ -112,7 +123,7 @@ + + Settings.RunningGUI = true; + Application.Init (); +- Browser browser = new Browser (useGecko); ++ Browser browser = new Browser (engine); + + if (topic != null) + browser.LoadUrl (topic); +@@ -165,7 +176,7 @@ + public Notebook tabs_nb; + public Tab CurrentTab; + bool HoldCtrl; +- public bool UseGecko; ++ public string engine; + + [Glade.Widget] public MenuItem bookmarksMenu; + [Glade.Widget] MenuItem view1; +@@ -231,9 +242,11 @@ + + public ArrayList bookList; + +- public Browser (bool UseGecko) ++ public Capabilities capabilities; ++ ++ public Browser (string engine) + { +- this.UseGecko = UseGecko; ++ this.engine = engine; + ui = new Glade.XML (null, "browser.glade", "window1", null); + ui.Autoconnect (this); + +@@ -280,7 +293,10 @@ + tabs_nb.SwitchPage += new SwitchPageHandler(ChangeTab); + help_container.Add(tabs_nb); + +- if (UseGecko) { ++ AddTab(); ++ ++ ++ if ((capabilities & Capabilities.Fonts) != 0) { + // Add Menu entries for changing the font + Menu aux = (Menu) view1.Submenu; + MenuItem sep = new SeparatorMenuItem (); +@@ -334,10 +350,11 @@ + + index_browser = IndexBrowser.MakeIndexBrowser (this); + +- AddTab(); + MainWindow.ShowAll(); + } + ++ ++ + // Initianlizes the search index + void CreateSearchPanel () + { +@@ -821,7 +838,7 @@ + void on_print_activate (object sender, EventArgs e) + { + // desactivate css temporary +- if (UseGecko) ++ if ((capabilities & Capabilities.Css) != 0) + HelpSource.use_css = false; + + string url = CurrentUrl; +@@ -842,7 +859,7 @@ + if (html != null) + CurrentTab.html.Print (html); + +- if (UseGecko) ++ if ((capabilities & Capabilities.Css) != 0) + HelpSource.use_css = true; + } + +@@ -2264,19 +2281,65 @@ + text_editor.GrabFocus (); + } + +- static IHtmlRender GetRenderer (string file, string type, Browser browser) +- { ++ ++ private static IHtmlRender LoadRenderer (string dll, Browser browser) { + try { +- +- string exeAssembly = Assembly.GetExecutingAssembly ().Location; +- string myPath = System.IO.Path.GetDirectoryName (exeAssembly); +- Assembly dll = Assembly.LoadFrom (System.IO.Path.Combine (myPath, file)); +- Type t = dll.GetType (type, true); ++ Assembly ass = Assembly.LoadFile (dll); ++ System.Type type = ass.GetType ("Monodoc." + ass.GetName ().Name, false, false); ++ if (type == null) ++ return null; ++ return (IHtmlRender) Activator.CreateInstance (type, new object[1] { browser.help_tree }); ++ } catch (Exception ex) { ++ Console.Error.WriteLine (ex); ++ } ++ return null; ++ } ++ ++ ++ public static IHtmlRender GetRenderer (string engine, string fallback, Browser browser) ++ { ++ IHtmlRender renderer = LoadRenderer (System.IO.Path.Combine (AppDomain.CurrentDomain.BaseDirectory, engine + "HtmlRender.dll"), browser); ++ if (renderer != null) { ++ try { ++ if (renderer.Initialize ()) { ++ Console.WriteLine ("using " + renderer.Name); ++ return renderer; ++ } ++ } catch (Exception ex) { ++ Console.Error.WriteLine (ex); ++ } ++ } + +- return (IHtmlRender) Activator.CreateInstance (t, new object [1] { browser.help_tree }); +- } catch { +- return null; ++ renderer = LoadRenderer (System.IO.Path.Combine (AppDomain.CurrentDomain.BaseDirectory, fallback + "HtmlRender.dll"), browser); ++ if (renderer != null) { ++ try { ++ if (renderer.Initialize ()) { ++ Console.WriteLine ("using " + renderer.Name); ++ return renderer; ++ } ++ } catch (Exception ex) { ++ //Console.Error.WriteLine (ex); ++ } ++ } ++ ++ foreach (string backend in Driver.engines) { ++ string dll = System.IO.Path.Combine (AppDomain.CurrentDomain.BaseDirectory, backend + "HtmlRender.dll"); ++ if (System.IO.File.Exists (dll)) { ++ renderer = LoadRenderer (dll, browser); ++ if (renderer != null) { ++ try { ++ if (renderer.Initialize ()) { ++ Console.WriteLine ("using " + renderer.Name); ++ return renderer; ++ } ++ } catch (Exception ex) { ++ //Console.Error.WriteLine (ex); ++ } ++ } ++ } + } ++ ++ return null; + } + + +@@ -2300,24 +2363,19 @@ + // + // Setup the HTML rendering and preview area + // +- if (browser.UseGecko) { +- html = GetRenderer ("GeckoHtmlRender.dll", "Monodoc.GeckoHtmlRender", browser); +- html_preview = GetRenderer ("GeckoHtmlRender.dll", "Monodoc.GeckoHtmlRender", browser); +- HelpSource.use_css = true; +- } +- +- if (html == null || html_preview == null) { +- html = GetRenderer ("GtkHtmlHtmlRender.dll", "Monodoc.GtkHtmlHtmlRender", browser); +- html_preview = GetRenderer ("GtkHtmlHtmlRender.dll", "Monodoc.GtkHtmlHtmlRender", browser); +- browser.UseGecko = false; +- HelpSource.use_css = false; +- } + ++ html = GetRenderer (browser.engine, Driver.engines[1], browser); ++ html_preview = GetRenderer (browser.engine, Driver.engines[1], browser); + if (html == null || html_preview == null) + throw new Exception ("Couldn't find html renderer!"); +- ++ ++ browser.capabilities = html.Capabilities; ++ ++ if ((html.Capabilities & Capabilities.Css) != 0) ++ HelpSource.use_css = true; ++ + //Prepare Font for css (TODO: use GConf?) +- if (browser.UseGecko && SettingsHandler.Settings.preferred_font_size == 0) { ++ if ((html.Capabilities & Capabilities.Fonts) != 0 && SettingsHandler.Settings.preferred_font_size == 0) { + Pango.FontDescription font_desc = Pango.FontDescription.FromString ("Sans 12"); + SettingsHandler.Settings.preferred_font_family = font_desc.Family; + SettingsHandler.Settings.preferred_font_size = 100; //size: 100% +diff -urNad mono-tools-1.9~/docbrowser/monodoc.in mono-tools-1.9/docbrowser/monodoc.in +--- mono-tools-1.9~/docbrowser/monodoc.in 2008-03-10 23:34:01.000000000 +0100 ++++ mono-tools-1.9/docbrowser/monodoc.in 2008-08-10 15:00:17.000000000 +0200 +@@ -98,4 +98,4 @@ + export MOZILLA_HOME + export LD_LIBRARY_PATH + +-exec @RUNTIME@ $monodocdir/browser.exe $OPTIONS "$@" $REST ++exec @RUNTIME@ $monodocdir/browser.exe --engine GtkHtml $OPTIONS "$@" $REST +diff -urNad mono-tools-1.9~/ilcontrast/Makefile.am mono-tools-1.9/ilcontrast/Makefile.am +--- mono-tools-1.9~/ilcontrast/Makefile.am 2007-12-06 22:43:43.000000000 +0100 ++++ mono-tools-1.9/ilcontrast/Makefile.am 2008-08-10 14:59:40.000000000 +0200 +@@ -7,6 +7,12 @@ + desktopdir = $(datadir)/applications + pixmapdir = $(datadir)/pixmaps + ++if ENABLE_WEBKIT ++assembly_DATA = $(TARGET) ++bin_SCRIPTS = ilcontrast ++desktop_DATA = ilcontrast.desktop ++pixmap_DATA = ilcontrast.png ++else + if ENABLE_GECKO + assembly_DATA = $(TARGET) + bin_SCRIPTS = ilcontrast +@@ -14,10 +20,15 @@ + pixmap_DATA = ilcontrast.png + else + all: +- echo "Install gecko-sharp to build ilContrast" ++ echo "Install webkit-sharp or gecko-sharp to build ilContrast" ++endif + endif + +-references = $(GTK_SHARP_LIBS) $(GECKO_SHARP_LIBS) -r:ICSharpCode.SharpZipLib.dll ++if ENABLE_WEBKIT ++references = $(GTK_SHARP_LIBS) $(WEBKIT_SHARP_LIBS) -r:ICSharpCode.SharpZipLib.dll ++else ++references = $(GTK_SHARP_LIBS) $(GECKO_SHARP_LIBS) -d:USE_GECKO -r:ICSharpCode.SharpZipLib.dll ++endif + + resources = \ + /resource:$(srcdir)/ilcontrast.png,ilcontrast.png \ +diff -urNad mono-tools-1.9~/ilcontrast/Window.cs mono-tools-1.9/ilcontrast/Window.cs +--- mono-tools-1.9~/ilcontrast/Window.cs 2007-12-06 22:43:43.000000000 +0100 ++++ mono-tools-1.9/ilcontrast/Window.cs 2008-08-10 14:59:40.000000000 +0200 +@@ -40,7 +40,11 @@ + + Box main_vbox; + Statusbar statusbar; ++#if USE_GECKO + Gecko.WebControl browser; ++#else ++ WebKit.WebView web_view; ++#endif + bool first_show = false; + Thread worker; + ComparisonInfo info; +@@ -49,10 +53,17 @@ + { + DefaultSize = new Size (450, 450); + +- browser = new Gecko.WebControl (); + main_vbox = new VBox (false, 0); + AddActionUI (); ++#if USE_GECKO ++ browser = new Gecko.WebControl (); + main_vbox.PackStart (browser, true, true, 0); ++#else ++ web_view = new WebKit.WebView (); ++ ScrolledWindow sw = new ScrolledWindow (); ++ sw.Add (web_view); ++ main_vbox.PackStart (sw, true, true, 0); ++#endif + statusbar = new Statusbar (); + main_vbox.PackStart (statusbar, false, false, 0); + Add (main_vbox); +@@ -125,7 +136,11 @@ + + void LoadUrl (string url) + { ++#if USE_GECKO + browser.LoadUrl (url); ++#else ++ web_view.Open (url); ++#endif + } + + void GenerateHtmlTarget () --- mono-tools-2.0.orig/debian/patches/01-use_real_nunit.patch +++ mono-tools-2.0/debian/patches/01-use_real_nunit.patch @@ -0,0 +1,51 @@ +--- mono-tools-2.0.orig/configure.in ++++ mono-tools-2.0/configure.in +@@ -35,7 +35,7 @@ + AC_SUBST(GACUTIL) + + +-PKG_CHECK_MODULES(NUNIT, mono-nunit) ++PKG_CHECK_MODULES(NUNIT, nunit) + AC_SUBST(NUNIT_LIBS) + + PKG_CHECK_MODULES(MONODOC, monodoc) +--- mono-tools-2.0.orig/gnunit/src/AssemblyStore.cs ++++ mono-tools-2.0/gnunit/src/AssemblyStore.cs +@@ -574,6 +574,11 @@ + idle.Set (); + } + ++ void EventListener.TestOutput (TestOutput testOutput) ++ { ++ ; ++ } ++ + void SetIconFromResult (TestResult result) + { + CircleColor color; +--- mono-tools-2.0.orig/gnunit/src/main.cs ++++ mono-tools-2.0/gnunit/src/main.cs +@@ -284,6 +284,11 @@ + return inner_filter.Pass (test); + } + ++ public bool Exclude ++ { ++ get { return false; } ++ } ++ + static string _ (string key) + { + return Catalog.GetString (key); +@@ -767,6 +772,11 @@ + ClockUpdater (this, EventArgs.Empty); + } + ++ void EventListener.TestOutput (TestOutput testOutput) ++ { ++ ; ++ } ++ + // Misc. + + void UpdateRunStatus () --- mono-tools-2.0.orig/debian/patches/05-cecil.patch +++ mono-tools-2.0/debian/patches/05-cecil.patch @@ -0,0 +1,20 @@ +--- mono-tools-2.0.orig/configure.in ++++ mono-tools-2.0/configure.in +@@ -119,13 +119,13 @@ + dnl + dnl I hate PKG_CONFIG_MODULES, that is for the weak + dnl +-if pkg-config --modversion cecil>/dev/null; then +-AC_MSG_RESULT("Found cecil.pc") ++if pkg-config --modversion mono-cecil>/dev/null; then ++AC_MSG_RESULT("Found mono-cecil.pc") + else +-AC_MSG_ERROR([You are missing Cecil (cecil.pc for packageconfig) required for gui-compare]) ++AC_MSG_ERROR([You are missing Cecil (mono-cecil.pc for packageconfig) required for gui-compare]) + fi + +-CECIL_ASM=`pkg-config --variable=Libraries cecil` ++CECIL_ASM=`pkg-config --variable=Libraries mono-cecil` + AC_SUBST(CECIL_ASM) + + dnl Intl --- mono-tools-2.0.orig/debian/patches/04-gendarme_link_libraries_correctly.patch +++ mono-tools-2.0/debian/patches/04-gendarme_link_libraries_correctly.patch @@ -0,0 +1,11 @@ +--- mono-tools-2.0.orig/gendarme/rules/Gendarme.Rules.Portability/Makefile.am ++++ mono-tools-2.0/gendarme/rules/Gendarme.Rules.Portability/Makefile.am +@@ -13,7 +13,7 @@ + CLEANFILES = $(rules_dll) $(rules_dll).mdb $(tests_dll) + DISTCLEANFILES = Makefile.in Gendarme.Rules.Portability.xml TestResult.xml + +-EXTRA_RULES_OPTIONS = -r:ICSharpCode.SharpZipLib.dll -pkg:dotnet ++EXTRA_RULES_OPTIONS = -r:ICSharpCode.SharpZipLib.dll -r:System.Web.Services + + rules_sources = \ + DoNotHardcodePathsRule.cs \