[prev in list] [next in list] [prev in thread] [next in thread]
List: mono-devel-list
Subject: [Mono-devel-list] [PATCH] Monodoc Gecko support improved
From: Mario Sopena <mario.sopena () gmail ! com>
Date: 2005-07-30 0:08:44
Message-ID: ef36f55f0507291708315e1b50 () mail ! gmail ! com
[Download RAW message or body]
Hey everybody,
after being stucked for a couple of days because of a stupid error
that I made, I've finally added some improvements to the gecko patch.
* Gecko support is now only built when gecko-sharp is present
(GeckoHtmlRender.dll). Gecko-sharp is not a requirement now.
* The HtmlRender.cs is splitted in 3 files, the interface and the two
implementations: IHtmlRender.cs, GtkHtmlHtmlRender.cs,
GeckoHtmlRender.cs
* When monodoc is started, it tries to load the gecko renderer and if
it fails, it uses the gtkhtml.
* The "--gecko" option is changed to "--no-gecko" because gecko is
(should be) the default
*The GeckoHtmlRender has a new function, checkUrl, that tries to solve
the problem with gecko, who lower-case the scheme part of the url (the
part before the ':'), thus, breaking some URLs like
T:System.Activator.
Things that are left:
* the scrollbar showed is the gecko one
* copy/paste doesn't work
* anchor links (links to the same page) doesn't work either
ok to commit?
Mario.
["docbrowser.diff" (text/x-patch)]
Index: configure.in
===================================================================
--- configure.in (revision 47406)
+++ configure.in (working copy)
@@ -42,8 +42,9 @@
#fi
AC_SUBST(GTK_SHARP_LIBS)
-PKG_CHECK_MODULES(GECKO_SHARP, gecko-sharp = 0.6)
+PKG_CHECK_MODULES(GECKO_SHARP, gecko-sharp = 0.6, enable_gecko=yes, enable_gecko=no)
AC_SUBST(GECKO_SHARP_LIBS)
+AM_CONDITIONAL(ENABLE_GECKO, test "x$enable_gecko" = "xyes")
dnl Intl
GETTEXT_PACKAGE=mono-tools
@@ -55,6 +56,7 @@
GNUNIT_VERSION=0.5
AC_SUBST(GNUNIT_VERSION)
+
AC_OUTPUT([
Makefile
gnunit/Makefile
@@ -76,4 +78,9 @@
echo "Configuration summary"
echo ""
echo " * Installation prefix = $prefix"
+echo " * gecko-sharp.dll = $enable_gecko"
echo ""
+echo " NOTE: if any of the above say 'no' you may install the"
+echo " corresponding development packages for them, rerun"
+echo " autogen.sh to include them in the build."
+echo ""
Index: ChangeLog
===================================================================
--- ChangeLog (revision 47406)
+++ ChangeLog (working copy)
@@ -1,3 +1,6 @@
+2005-08-30 Mario Sopena Novales <mario.sopena@gmail.com>
+ * configure.in: make gecko-sharp dependency conditional
+
2005-06-09 Gonzalo Paniagua Javier <gonzalo@ximian.com>
* configure.in: added GNUNIT_VERSION.
Index: docbrowser/IHtmlRender.cs
===================================================================
--- docbrowser/IHtmlRender.cs (revision 0)
+++ docbrowser/IHtmlRender.cs (revision 0)
@@ -0,0 +1,38 @@
+//
+// IHtmlRender.cs: Interface that abstracts the html render widget
+//
+// Author: Mario Sopena
+//
+using System;
+using Gtk;
+
+namespace Monodoc {
+public interface IHtmlRender {
+ // Jump to an anchor of the form <a name="tttt">
+ void JumpToAnchor (string anchor_name);
+
+ //Copy to the clipboard the selcted text
+ void Copy ();
+
+ //Select all the text
+ void SelectAll ();
+
+ //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 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; }
+
+ Widget HtmlPanel { get; }
+}
+
+
+}
Index: docbrowser/GeckoHtmlRender.cs
===================================================================
--- docbrowser/GeckoHtmlRender.cs (revision 0)
+++ docbrowser/GeckoHtmlRender.cs (revision 0)
@@ -0,0 +1,156 @@
+//
+// GeckoHtmlRender.cs: Implementation of IHtmlRender that uses Gecko
+//
+// Author: Mario Sopena
+//
+using System;
+using System.Text;
+using System.IO;
+using System.Collections;
+using Gecko;
+using Gtk;
+
+namespace Monodoc {
+public class GeckoHtmlRender : IHtmlRender {
+
+ //Images are cached in a temporal directory
+ Hashtable cache_imgs;
+ string tmpPath;
+
+ WebControl html_panel;
+ Viewport panel;
+ public Widget HtmlPanel {
+ get { return (Widget) panel; }
+ }
+
+ string url;
+ public string Url {
+ get { return url; }
+ }
+ RootTree help_tree;
+
+ public event EventHandler OnUrl;
+ public event EventHandler UrlClicked;
+
+ public GeckoHtmlRender (RootTree help_tree)
+ {
+ this.help_tree = help_tree;
+ html_panel = new WebControl("/tmp/monodoc", "MonodocGecko"); //FIXME
+ html_panel.Show(); //due to Gecko bug
+ html_panel.OpenUri += OnOpenUri;
+ html_panel.LinkMsg += OnLinkMsg;
+ panel = new Viewport();
+ panel.Add (html_panel);
+ cache_imgs = new Hashtable();
+ tmpPath = Path.Combine (Path.GetTempPath(), "monodoc");
+ }
+
+ protected void OnOpenUri (object o, OpenUriArgs args)
+ {
+ url = CheckUrl (args.AURI);
+ if (UrlClicked != null)
+ UrlClicked (this, new EventArgs());
+ args.RetVal = true; //this prevents Gecko to continue processing
+ }
+
+ protected void OnLinkMsg (object o, EventArgs args)
+ {
+ url = CheckUrl (html_panel.LinkMessage);
+ if (OnUrl != null)
+ OnUrl (this, args);
+ }
+
+ // URL like T:System.Activator are lower cased by gecko to t.;System.Activator
+ // so we revert that
+ string CheckUrl (string u)
+ {
+ if (u.IndexOf (':') == 1)
+ return Char.ToUpper (u[0]) + u.Substring (1);
+ return u;
+ }
+
+ /* NOT ALREADY IMPLEMENTED */
+ public void JumpToAnchor (string anchor_name)
+ {
+ }
+
+ /* NOT ALREADY IMPLEMENTED */
+ public void Copy() {}
+
+ /* NOT ALREADY IMPLEMENTED */
+ public void SelectAll() {}
+
+ public void Render (string html_code)
+ {
+ string r = ProcessImages (html_code);
+ html_panel.OpenStream ("file:///", "text/html");
+ html_panel.AppendData (r);
+ html_panel.CloseStream ();
+ }
+
+ // Substitute the src of the images with the appropriate path
+ string ProcessImages (string html_code)
+ {
+ //If there are no Images return fast
+ int pos = html_code.IndexOf ("<img", 0, html_code.Length);
+ if (pos == -1)
+ return html_code;
+
+ StringBuilder html = new StringBuilder ();
+ html.Append (html_code.Substring (0, pos));
+ int srcIni, srcEnd;
+ string Img;
+ Stream s;
+ string path, img_name;
+
+ while (pos != -1) {
+
+ //look for the src of the img
+ srcIni = html_code.IndexOf ("src=\"", pos);
+ srcEnd = html_code.IndexOf ("\"", srcIni+6);
+ Img = html_code.Substring (srcIni+5, srcEnd-srcIni-5);
+
+ path = "NO_IMG";
+ //is the img cached?
+ if (cache_imgs.Contains(Img)) {
+ path = (string) cache_imgs[Img];
+ } else {
+ //obtain the stream from the compressed sources
+ s = help_tree.GetImage (Img);
+ if (s != null) {
+ //write the file to a tmp directory
+ img_name = Img.Substring (Img.LastIndexOf (":")+1);
+ path = Path.Combine (tmpPath, img_name);
+ Directory.CreateDirectory (Path.GetDirectoryName (path));
+ FileStream file = new FileStream (path, FileMode.Create);
+ byte[] buffer = new byte [8192];
+ int n;
+
+ while ((n = s.Read (buffer, 0, 8192)) != 0)
+ file.Write (buffer, 0, n);
+ file.Flush();
+ file.Close();
+ System.Console.WriteLine("Cache: {0}", path);
+ //Add the image to the cache
+ cache_imgs[Img] = path;
+ }
+ }
+ //Add the html code from <img until src="
+ html.Append (html_code.Substring (pos, srcIni + 5 - pos));
+ //Add the Image path
+ html.Append (path);
+ //Look for the next image
+ pos = html_code.IndexOf ("<img", srcIni);
+
+ if (pos == -1)
+ //Add the rest of the file
+ html.Append (html_code.Substring (srcEnd));
+ else
+ //Add from " to the next <img
+ html.Append (html_code.Substring (srcEnd, pos - srcEnd)); //check this
+ }
+ return html.ToString();
+ }
+
+}
+}
Index: docbrowser/ChangeLog
===================================================================
--- docbrowser/ChangeLog (revision 47406)
+++ docbrowser/ChangeLog (working copy)
@@ -1,3 +1,11 @@
+2005-08-30 Mario Sopena Novales <mario.sopena@gmail.com>
+ * Makefile.am: build gecko support in a separate dll: GeckoHtmlRender.dll
+ * monodoc.in: Change "--gecko" parameter to "--no-gecko"
+ * HtmlRender.cs: splitted in 3 files (deleted):
+ * IHtmlRender.cs: interface
+ * GtkHtmlHtmlRender.cs: GtkHtml based renderer
+ * GeckoHtmlRender.cs: Gecko-sharp based renderer
+
2005-07-07 Mario Sopena Novales <mario.sopena@gmail.com>
Move the rendering logic to an interface IHtmlRender and write
Index: docbrowser/browser.cs
===================================================================
--- docbrowser/browser.cs (revision 47406)
+++ docbrowser/browser.cs (working copy)
@@ -24,7 +24,7 @@
static int Main (string [] args)
{
string topic = null;
- bool useGecko = false;
+ bool useGecko = true;
for (int i = 0; i < args.Length; i++){
switch (args [i]){
@@ -81,8 +81,8 @@
i++;
break;
- case "--gecko":
- useGecko = true;
+ case "--no-gecko":
+ useGecko = false;
break;
default:
topic = args [i];
@@ -1847,12 +1847,28 @@
html_container.Show();
//
- // Setup the HTML rendering area
+ // Setup the HTML rendering and preview area
//
- if (browser.UseGecko)
- html = new GeckoHtmlRender (browser);
- else
+ if (browser.UseGecko) {
+ try {
+ string exeAssembly = Assembly.GetExecutingAssembly ().Location;
+ string myPath = System.IO.Path.GetDirectoryName (exeAssembly);
+ Assembly gecko_dll = Assembly.LoadFrom (System.IO.Path.Combine (myPath, \
"GeckoHtmlRender.dll")); + Type gecko_render_type = gecko_dll.GetType \
("Monodoc.GeckoHtmlRender", true); +
+ object[] args = new object [1];
+ args [0] = browser.help_tree;
+ html = (IHtmlRender) Activator.CreateInstance (gecko_render_type, args);
+ html_preview = (IHtmlRender) Activator.CreateInstance (gecko_render_type, args);
+ } catch (Exception exc) {
+ html = new GtkHtmlHtmlRender (browser);
+ html_preview = new GtkHtmlHtmlRender (browser);
+ }
+ // if the user explicitally state that doesnt want gecko
+ } else {
html = new GtkHtmlHtmlRender (browser);
+ html_preview = new GtkHtmlHtmlRender (browser);
+ }
html_container.Add (html.HtmlPanel);
html.UrlClicked += new EventHandler (browser.LinkClicked);
html.OnUrl += new EventHandler (browser.OnUrlMouseOver);
@@ -1905,10 +1921,6 @@
//
// code preview panel
//
- if (browser.UseGecko)
- html_preview = new GeckoHtmlRender (browser);
- else
- html_preview = new GtkHtmlHtmlRender (browser);
html_preview_container.Add (html_preview.HtmlPanel);
html_preview_frame.Add(html_preview_container);
Index: docbrowser/GtkHtmlHtmlRender.cs
===================================================================
--- docbrowser/GtkHtmlHtmlRender.cs (revision 0)
+++ docbrowser/GtkHtmlHtmlRender.cs (revision 0)
@@ -0,0 +1,92 @@
+//
+//
+// GtkHtmlHtmlRender.cs: Implementation of IHtmlRender that uses Gtk.HTML
+//
+// Author: Mario Sopena
+//
+using System;
+using Gtk;
+using System.IO;
+
+namespace Monodoc {
+class GtkHtmlHtmlRender : IHtmlRender {
+
+ HTML html_panel;
+ public Widget HtmlPanel {
+ get { return (Widget) html_panel; }
+ }
+
+ string url;
+ public string Url {
+ get { return url; }
+ }
+
+ Browser browser;
+ public event EventHandler OnUrl;
+ public event EventHandler UrlClicked;
+
+
+ public GtkHtmlHtmlRender (Browser browser)
+ {
+ 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.browser = browser;
+ }
+
+ protected void LinkClicked (object o, LinkClickedArgs args)
+ {
+ url = args.Url;
+ if (UrlClicked != null)
+ UrlClicked (this, new EventArgs());
+ }
+
+ protected void OnUrlMouseOver (object o, OnUrlArgs args)
+ {
+ url = args.Url;
+ if (OnUrl != null)
+ OnUrl (this, args);
+ }
+
+ public void JumpToAnchor (string anchor)
+ {
+ html_panel.JumpToAnchor(anchor);
+ }
+
+ public void Copy ()
+ {
+ html_panel.Copy();
+ }
+
+ public void SelectAll ()
+ {
+ html_panel.SelectAll();
+ }
+
+ public void Render (string html_code)
+ {
+ Gtk.HTMLStream stream = html_panel.Begin ("text/html");
+ stream.Write(html_code);
+ html_panel.End (stream, HTMLStreamStatus.Ok);
+ }
+
+ protected void UrlRequested (object sender, UrlRequestedArgs args)
+ {
+ Stream s = browser.help_tree.GetImage (args.Url);
+
+ if (s == null)
+ s = browser.GetResourceImage ("monodoc.png");
+ byte [] buffer = new byte [8192];
+ int n, m;
+ m=0;
+ while ((n = s.Read (buffer, 0, 8192)) != 0) {
+ args.Handle.Write (buffer, n);
+ m += n;
+ }
+ args.Handle.Close (HTMLStreamStatus.Ok);
+ }
+
+}
+}
Index: docbrowser/monodoc.in
===================================================================
--- docbrowser/monodoc.in (revision 47406)
+++ docbrowser/monodoc.in (working copy)
@@ -46,7 +46,7 @@
echo " --help Print this message"
echo " --html TOPIC Print the HTML contents of TOPIC"
echo " --make-index Create the documentation index"
- echo " --gecko Use Mozilla to render the contents"
+ echo " --no-gecko Don't use Mozilla to render the contents"
echo
echo "The following options are available for authoring documentation:"
echo " --edit path Edit (unassembled) documentation at path"
Index: docbrowser/HtmlRender.cs
===================================================================
--- docbrowser/HtmlRender.cs (revision 47406)
+++ docbrowser/HtmlRender.cs (working copy)
@@ -1,248 +0,0 @@
-using System;
-using Gecko;
-using Gtk;
-using System.Text;
-using System.IO;
-using System.Collections;
-
-namespace Monodoc {
-interface IHtmlRender {
- // Jump to an anchor of the form <a name="tttt">
- void JumpToAnchor (string anchor_name);
-
- //Copy to the clipboard the selcted text
- void Copy ();
-
- //Select all the text
- void SelectAll ();
-
- //Render the HTML code given
- void Render (string HtmlCode);
-
- //Event fired when the use is over an Url
- event EventHandler OnUrl;
-
- //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; }
-
- Widget HtmlPanel { get; }
-}
-
-
-class GeckoHtmlRender : IHtmlRender {
-
- Hashtable cache_imgs;
- string tmpPath;
- WebControl _HtmlPanel;
- Viewport panel;
- public Widget HtmlPanel {
- get { return (Widget) panel; }
- }
-
- string _url;
- public string Url {
- get { return _url; }
- }
- Browser browser;
-
- public event EventHandler OnUrl;
- public event EventHandler UrlClicked;
-
- public GeckoHtmlRender (Browser browser)
- {
- this.browser = browser;
- _HtmlPanel = new WebControl("/tmp/monodoc", "MonodocGecko"); //FIXME
- _HtmlPanel.Show(); //due to Gecko bug
- _HtmlPanel.OpenUri += OnOpenUri;
- _HtmlPanel.LinkMsg += OnLinkMsg;
- panel = new Viewport();
- panel.Add (_HtmlPanel);
- cache_imgs = new Hashtable();
- tmpPath = Path.Combine (Path.GetTempPath(), "monodoc");
- }
- protected void OnOpenUri (object o, OpenUriArgs args)
- {
- _url = args.AURI;
- if (UrlClicked != null)
- UrlClicked (this, new EventArgs());
- args.RetVal = true; //this prevents Gecko to continue processing
- }
- protected void OnLinkMsg (object o, EventArgs args)
- {
- _url = _HtmlPanel.LinkMessage;
- if (OnUrl != null)
- OnUrl (this, args);
- }
-
- /* NOT ALREADY IMPLEMENTED */
- public void JumpToAnchor (string anchor_name)
- {
- }
-
- /* NOT ALREADY IMPLEMENTED */
- public void Copy() {}
-
- /* NOT ALREADY IMPLEMENTED */
- public void SelectAll() {}
-
- public void Render (string HtmlCode)
- {
- string r = ProcessImages(HtmlCode);
- _HtmlPanel.OpenStream("file:///", "text/html");
- _HtmlPanel.AppendData(r);
- _HtmlPanel.CloseStream();
- }
-
- // Substitute the src of the images with the appropriate path
- string ProcessImages(string HtmlCode)
- {
- //If there are no Images return fast
- int pos = HtmlCode.IndexOf ("<img", 0, HtmlCode.Length);
- if (pos == -1)
- return HtmlCode;
-
- StringBuilder html = new StringBuilder ();
- html.Append (HtmlCode.Substring (0, pos));
- int srcIni, srcEnd;
- string Img;
- Stream s;
- string path, img_name;
-
- while (pos != -1) {
-
- //look for the src of the img
- srcIni = HtmlCode.IndexOf ("src=\"", pos);
- srcEnd = HtmlCode.IndexOf ("\"", srcIni+6);
- Img = HtmlCode.Substring (srcIni+5, srcEnd-srcIni-5);
-
- path = "NO_IMG";
- //is the img cached?
- if (cache_imgs.Contains(Img)) {
- path = (string) cache_imgs[Img];
- } else {
- //obtain the stream from the compressed sources
- s = browser.help_tree.GetImage (Img);
- if (s != null) {
- //write the file to a tmp directory
- img_name = Img.Substring (Img.LastIndexOf (":")+1);
- path = Path.Combine (tmpPath, img_name);
- Directory.CreateDirectory (Path.GetDirectoryName (path));
- FileStream file = new FileStream (path, FileMode.Create);
- byte[] buffer = new byte [8192];
- int n;
-
- while ((n = s.Read (buffer, 0, 8192)) != 0)
- file.Write (buffer, 0, n);
- file.Flush();
- file.Close();
- System.Console.WriteLine("Cache: {0}", path);
- //Add the image to the cache
- cache_imgs[Img] = path;
- }
- }
- //Add the html code from <img until src="
- html.Append (HtmlCode.Substring (pos, srcIni + 5 - pos));
- //Add the Image path
- html.Append (path);
- //Look for the next image
- pos = HtmlCode.IndexOf ("<img", srcIni);
-
- if (pos == -1)
- //Add the rest of the file
- html.Append (HtmlCode.Substring (srcEnd));
- else
- //Add from " to the next <img
- html.Append (HtmlCode.Substring (srcEnd, pos - srcEnd)); //check this
- }
- return html.ToString();
- }
-
-}
-
-
-
-class GtkHtmlHtmlRender : IHtmlRender {
-
- HTML _HtmlPanel;
- public Widget HtmlPanel {
- get {
- return (Widget) _HtmlPanel; }
- }
-
- string _url;
- public string Url {
- get { return _url; }
- }
- Browser browser;
-
- public event EventHandler OnUrl;
- public event EventHandler UrlClicked;
-
-
- public GtkHtmlHtmlRender (Browser browser)
- {
- _HtmlPanel = new HTML();
- _HtmlPanel.Show();
- _HtmlPanel.LinkClicked += new LinkClickedHandler (LinkClicked);
- _HtmlPanel.OnUrl += new OnUrlHandler (OnUrlMouseOver);
- _HtmlPanel.UrlRequested += new UrlRequestedHandler (UrlRequested);
- this.browser = browser;
- }
- protected void LinkClicked (object o, LinkClickedArgs args)
- {
- _url = args.Url;
- if (UrlClicked != null)
- UrlClicked (this, new EventArgs());
- }
- protected void OnUrlMouseOver (object o, OnUrlArgs args)
- {
- _url = args.Url;
- if (OnUrl != null)
- OnUrl (this, args);
- }
- public void JumpToAnchor (string anchor)
- {
- _HtmlPanel.JumpToAnchor(anchor);
- }
-
- public void Copy ()
- {
- _HtmlPanel.Copy();
- }
-
- public void SelectAll ()
- {
- _HtmlPanel.SelectAll();
- }
-
- public void Render (string HtmlCode)
- {
-
- Gtk.HTMLStream stream = _HtmlPanel.Begin ("text/html");
- stream.Write(HtmlCode);
- _HtmlPanel.End (stream, HTMLStreamStatus.Ok);
- }
-
- protected void UrlRequested (object sender, UrlRequestedArgs args)
- {
- Stream s = browser.help_tree.GetImage (args.Url);
-
- if (s == null)
- s = browser.GetResourceImage ("monodoc.png");
- byte [] buffer = new byte [8192];
- int n, m;
- m=0;
- while ((n = s.Read (buffer, 0, 8192)) != 0) {
- args.Handle.Write (buffer, n);
- m += n;
- }
- args.Handle.Close (HTMLStreamStatus.Ok);
- }
-
-}
-}
Index: docbrowser/Makefile.am
===================================================================
--- docbrowser/Makefile.am (revision 47406)
+++ docbrowser/Makefile.am (working copy)
@@ -1,8 +1,16 @@
monodocdir=$(prefix)/lib/monodoc
-monodoc_DATA = browser.exe
noinst_DATA = admin.exe
-CLEANFILES = browser.exe browser.exe.mdb admin.exe admin.exe.mdb
+
+if ENABLE_GECKO
+CLEANFILES = browser.exe browser.exe.mdb admin.exe admin.exe.mdb GeckoHtmlRender.dll \
+monodoc_DATA = browser.exe GeckoHtmlRender.dll
+else
+CLEANFILES = browser.exe browser.exe.mdb admin.exe admin.exe.mdb
+monodoc_DATA = browser.exe
+endif
+
+
DISTCLEANFILES = AssemblyInfo.cs monodoc.desktop monodoc.in
bin_SCRIPTS = monodoc
@@ -14,13 +22,19 @@
$(srcdir)/history.cs \
$(srcdir)/Contributions.cs \
$(srcdir)/XmlNodeWriter.cs \
- $(srcdir)/HtmlRender.cs
+ $(srcdir)/GtkHtmlHtmlRender.cs \
+ $(srcdir)/IHtmlRender.cs
+
+geckorender_sources = \
+ $(srcdir)/GeckoHtmlRender.cs
+
admin_sources = \
$(srcdir)/admin.cs \
$(srcdir)/Contributions.cs
-browser_assemblies = $(GTK_SHARP_LIBS) $(GECKO_SHARP_LIBS) -pkg:monodoc \
-r:System.Web.Services +browser_assemblies = $(GTK_SHARP_LIBS) -pkg:monodoc \
-r:System.Web.Services +geckorender_assemblies = $(GTK_SHARP_LIBS) \
$(GECKO_SHARP_LIBS) -pkg:monodoc -r:browser.exe
EXTRA_DIST = \
$(browser_sources) \
@@ -32,9 +46,14 @@
admin.exe: $(admin_sources) $(srcdir)/admin.glade
$(MCS) -debug -out:admin.exe $(admin_sources) \
-resource:$(srcdir)/admin.glade,admin.glade $(browser_assemblies) -r:System.Drawing
-browser.exe: $(browser_sources) $(srcdir)/browser.glade $(srcdir)/monodoc.png
- $(MCS) -debug -out:browser.exe $(browser_sources) \
-resource:$(srcdir)/monodoc.png,monodoc.png \
-resource:$(srcdir)/browser.glade,browser.glade $(browser_assemblies) +browser.exe: \
$(browser_sources) $(srcdir)/browser.glade $(srcdir)/monodoc.png + $(MCS) -debug \
-out:browser.exe $(browser_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:GeckoHtmlRender.dll $(geckorender_sources) \
$(geckorender_assemblies) +
+
+
b: browser.exe
MONO_PATH=. $(RUNTIME) --debug browser.exe
_______________________________________________
Mono-devel-list mailing list
Mono-devel-list@lists.ximian.com
http://lists.ximian.com/mailman/listinfo/mono-devel-list
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic