[Pkg-mono-svn-commits] rev 1142 - winelib/trunk/debian

Eduard Bloch blade@haydn.debian.org
Sun, 20 Jun 2004 13:41:48 -0600


Author: blade
Date: 2004-06-20 13:41:45 -0600 (Sun, 20 Jun 2004)
New Revision: 1142

Added:
   winelib/trunk/debian/libwine-cil.docs
   winelib/trunk/debian/libwine-cil.install
   winelib/trunk/debian/libwine-cil.links
   winelib/trunk/debian/libwine-cil.manpages
   winelib/trunk/debian/setup-faq.html
   winelib/trunk/debian/swf_invoke
   winelib/trunk/debian/swf_invoke.1
Modified:
   winelib/trunk/debian/changelog
   winelib/trunk/debian/dirs
   winelib/trunk/debian/rules
Log:
Reordered libs, created symlinks to use the wine DLLs and wrote ane
example wrapper to run SWF applications


Modified: winelib/trunk/debian/changelog
===================================================================
--- winelib/trunk/debian/changelog	2004-06-20 18:49:00 UTC (rev 1141)
+++ winelib/trunk/debian/changelog	2004-06-20 19:41:45 UTC (rev 1142)
@@ -1,3 +1,9 @@
+winelib (0.3-2) unstable; urgency=low
+
+  * NOT RELEASED YET
+
+ -- Eduard Bloch <blade@debian.org>  Sat, 19 Jun 2004 17:41:36 +0200
+
 winelib (0.3-1) unstable; urgency=low
 
   * New upstream release

Modified: winelib/trunk/debian/dirs
===================================================================
--- winelib/trunk/debian/dirs	2004-06-20 18:49:00 UTC (rev 1141)
+++ winelib/trunk/debian/dirs	2004-06-20 19:41:45 UTC (rev 1142)
@@ -1,2 +1,2 @@
 usr/bin
-usr/sbin
+usr/lib/wine

Added: winelib/trunk/debian/libwine-cil.docs
===================================================================
--- winelib/trunk/debian/libwine-cil.docs	2004-06-20 18:49:00 UTC (rev 1141)
+++ winelib/trunk/debian/libwine-cil.docs	2004-06-20 19:41:45 UTC (rev 1142)
@@ -0,0 +1 @@
+debian/setup-faq.html

Added: winelib/trunk/debian/libwine-cil.install
===================================================================
--- winelib/trunk/debian/libwine-cil.install	2004-06-20 18:49:00 UTC (rev 1141)
+++ winelib/trunk/debian/libwine-cil.install	2004-06-20 19:41:45 UTC (rev 1142)
@@ -0,0 +1,2 @@
+debian/swf_invoke /usr/bin/
+winelib/winelib.exe.so /usr/lib/wine/

Added: winelib/trunk/debian/libwine-cil.links
===================================================================
--- winelib/trunk/debian/libwine-cil.links	2004-06-20 18:49:00 UTC (rev 1141)
+++ winelib/trunk/debian/libwine-cil.links	2004-06-20 19:41:45 UTC (rev 1142)
@@ -0,0 +1 @@
+/usr/lib/wine/winelib.exe.so /usr/lib/winelib.exe.so

Added: winelib/trunk/debian/libwine-cil.manpages
===================================================================
--- winelib/trunk/debian/libwine-cil.manpages	2004-06-20 18:49:00 UTC (rev 1141)
+++ winelib/trunk/debian/libwine-cil.manpages	2004-06-20 19:41:45 UTC (rev 1142)
@@ -0,0 +1 @@
+debian/swf_invoke.1

Modified: winelib/trunk/debian/rules
===================================================================
--- winelib/trunk/debian/rules	2004-06-20 18:49:00 UTC (rev 1141)
+++ winelib/trunk/debian/rules	2004-06-20 19:41:45 UTC (rev 1142)
@@ -62,8 +62,9 @@
 	dh_testdir
 	dh_testroot
 	dh_clean -k 
-	dh_installdirs /usr/share/dotnet/mono/gac/System.Windows.Forms/* /usr/lib/
-	cp winelib/winelib.exe.so debian/libwine-cil/usr/lib/
+	dh_installdirs
+	dh_install
+	cd debian/libwine-cil/usr/lib/wine && for i in /usr/lib/wine/*dll.so; do ln -fs `basename $$i` lib`basename $$i`; done
 
 	# Add here commands to install the package into debian/winelib.
 	#$(MAKE) install prefix=$(CURDIR)/debian/winelib/usr
@@ -91,7 +92,7 @@
 #	dh_installinit
 #	dh_installcron
 #	dh_installinfo
-#	dh_installman
+	dh_installman
 	dh_link
 	dh_strip
 	dh_compress

Added: winelib/trunk/debian/setup-faq.html
===================================================================
--- winelib/trunk/debian/setup-faq.html	2004-06-20 18:49:00 UTC (rev 1141)
+++ winelib/trunk/debian/setup-faq.html	2004-06-20 19:41:45 UTC (rev 1142)
@@ -0,0 +1,149 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
+<HTML>
+ <HEAD>
+   <TITLE> [Mono-winforms-list] SWF &amp; Winelib Q&amp;A
+   </TITLE>
+   <LINK REL="Index" HREF="index.html" >
+   <LINK REL="made" HREF="mailto:peter%40novonyx.com">
+   <META NAME="robots" CONTENT="index,nofollow">
+   
+   <LINK REL="Previous"  HREF="000636.html">
+   <LINK REL="Next"  HREF="000638.html">
+ </HEAD>
+ <BODY BGCOLOR="#ffffff">
+   <H1>[Mono-winforms-list] SWF &amp; Winelib Q&amp;A
+   </H1>
+    <B>Peter Dennis Bartok
+    </B> 
+    <A HREF="mailto:peter%40novonyx.com"
+       TITLE="[Mono-winforms-list] SWF &amp; Winelib Q&amp;A">peter@novonyx.com
+       </A><BR>
+    <I>Fri, 19 Mar 2004 14:02:18 -0700</I>
+    <P><UL>
+        <LI> Previous message: <A HREF="000636.html">[Mono-winforms-list] Gentlefolk ... please ... how may Ijointhe Winforms cabal?
+</A></li>
+        <LI> Next message: <A HREF="000638.html">[Mono-winforms-list] Wine-mono
+</A></li>
+         <LI> <B>Messages sorted by:</B> 
+              <a href="date.html#637">[ date ]</a>
+              <a href="thread.html#637">[ thread ]</a>
+              <a href="subject.html#637">[ subject ]</a>
+              <a href="author.html#637">[ author ]</a>
+         </LI>
+       </UL>
+    <HR>  
+<!--beginarticle-->
+<PRE>Hi All,
+
+I figured since there are quite a few questions regarding winelib that 
+I'd write a little blurb on how things are connected. I tried to start 
+it in FAQ form to allow later inclusion into the FAQ.
+Let me know if it helps, if you have additional questions or if you 
+notice something wrong/missing.
+
+1. What dependencies does System.Windows.Forms (SWF) have?
+2. When running a SWF application I get the 
+System.DllNotFoundException:winelib.exe.so exception. What's wrong?
+3. How can I verify that I've got winelib installed correctly?
+4. When trying to run a SWF application I get the 
+System.DllNotFoundException:user32.dll exception. What's wrong?
+5. When running a SWF application I don't get the usual nice exception 
+with stack and everything. What happened?
+6. How does winelib work?
+7. Why do I have to do those links from wine to the lib directory?
+
+
+1. What dependencies does System.Windows.Forms (SWF) have?
+The following is the dependency tree:
+-&gt; System.Windows.Forms
+    -&gt; Winelib
+       -&gt; Wine
+    -&gt; System.Drawing
+       -&gt; gdiplus
+          -&gt; cairo
+             -&gt; pixman
+             -&gt; freetype
+             -&gt; Xrender
+
+Unless you have *all* of these libraries working on your system, SWF 
+will not operate (and in most cases even initialize).
+
+
+2. When running a SWF application I get the 
+System.DllNotFoundException:winelib.exe.so exception. What's wrong?
+Several possible causes:
+- The winelib package is not installed
+- Winelib is installed but wine is not
+- winelib.exe.so is not in &lt;prefix&gt;/lib
+
+
+3. How can I verify that I've got winelib installed correctly?
+Winelib will be installed into the &lt;prefix&gt;/lib directory. &lt;prefix&gt; was 
+chosen when the install packages was created. If you want to have 
+winelib in another directory than the default where it was installed to, 
+you must get the source packages and configure &amp; compile it for a 
+different path.
+
+
+4. When trying to run a SWF application I get the 
+System.DllNotFoundException:user32.dll exception. What's wrong?
+
+In order for SWF and winelib to operate properly you need to have 
+symbolic links for the wine dlls in the &lt;prefix&gt;/lib directory. While 
+the rpm should install those automatically as part of the postinstall 
+script you can also manually create those with the following command:
+
+cd &lt;prefix&gt;/lib
+for i in &lt;wine_dll_dir&gt;/*dll.so; do ln -s $i lib`basename $i`; done
+
+&lt;prefix&gt; is the base directory where mono is installed under (ie. /usr 
+or /usr/local) and &lt;wine_dll_dir&gt; is the directory where the wine dlls 
+(user32.dll.so, gdi32.dll.so, etc) can be found (ie. /usr/lib/wine or 
+/usr/local/lib/wine)
+
+5. When running a SWF application I don't get the usual nice exception 
+with stack and everything. What happened?
+This is a known issue, when initializing wine the mono exception handler 
+is replaced with the wine exception handler. This will be fixed shortly.
+
+
+6. How does winelib work?
+
+Winelib performs the same wine initialization as the command-line 'wine' 
+application. As 'argument' it uses itself, effectively telling wine to 
+rune winelib.exe.so. Before initializing, wine does a setjmp and when 
+wine calls the winelib.exe.so WinMain function we perform a longjmp
+back to right after the wine initialization code was called. This 
+results in wine being initialized and control being back at the routine 
+that got called from SWF.
+
+
+7. Why do I have to do those links from wine to the lib directory?
+
+Currently mono is not using the LD_LIBRARY_PATH to find libraries, and 
+also, mono has a particular naming format it expects libraries to have, 
+all libraries have to start with 'lib', and the wine dlls don't conform. 
+The symbolic links remedy this issue.
+
+
+
+
+
+
+</PRE>
+<!--endarticle-->
+    <HR>
+    <P><UL>
+        <!--threads-->
+	<LI> Previous message: <A HREF="000636.html">[Mono-winforms-list] Gentlefolk ... please ... how may Ijointhe Winforms cabal?
+</A></li>
+	<LI> Next message: <A HREF="000638.html">[Mono-winforms-list] Wine-mono
+</A></li>
+         <LI> <B>Messages sorted by:</B> 
+              <a href="date.html#637">[ date ]</a>
+              <a href="thread.html#637">[ thread ]</a>
+              <a href="subject.html#637">[ subject ]</a>
+              <a href="author.html#637">[ author ]</a>
+         </LI>
+       </UL>
+</body></html>

Added: winelib/trunk/debian/swf_invoke
===================================================================
--- winelib/trunk/debian/swf_invoke	2004-06-20 18:49:00 UTC (rev 1141)
+++ winelib/trunk/debian/swf_invoke	2004-06-20 19:41:45 UTC (rev 1142)
@@ -0,0 +1,6 @@
+#!/bin/sh
+
+LD_LIBRARY_PATH=/usr/lib/wine:$LD_LIBRARY_PATH
+export LD_LIBRARY_PATH
+/usr/lib/wine/wineserver
+/usr/bin/cli "$@"

Added: winelib/trunk/debian/swf_invoke.1
===================================================================
--- winelib/trunk/debian/swf_invoke.1	2004-06-20 18:49:00 UTC (rev 1141)
+++ winelib/trunk/debian/swf_invoke.1	2004-06-20 19:41:45 UTC (rev 1142)
@@ -0,0 +1,16 @@
+.TH EXAMPLES 1 "January 15th, 2004" "Debian GNU/Linux" "libwine-cil examples"
+.SH NAME
+swn_invoke \- example script to use winelib with Mono
+.SH DESCRIPTION
+This
+.B program
+is an example script to start programs that use Windows.System.Forms
+assembly for the GUI. It is for example purposes only and may be removed
+in the future.
+.SH INVOCATION
+To start the .EXE program 
+.B foo.exe
+run:
+
+
+.I swf_invoke foo.exe