[Pkg-mono-svn-commits] rev 566 - in mono/trunk/debian: . patches

Eduard Bloch blade@haydn.debian.org
Thu, 15 Apr 2004 15:35:41 -0600


Author: blade
Date: 2004-04-15 15:35:38 -0600 (Thu, 15 Apr 2004)
New Revision: 566

Modified:
   mono/trunk/debian/README.Debian
   mono/trunk/debian/changelog
   mono/trunk/debian/patches/02_soname_map.dpatch
   mono/trunk/debian/rules
Log:
-02 update with kernel detection override and minor updates


Modified: mono/trunk/debian/README.Debian
===================================================================
--- mono/trunk/debian/README.Debian	2004-04-15 15:49:56 UTC (rev 565)
+++ mono/trunk/debian/README.Debian	2004-04-15 21:35:38 UTC (rev 566)
@@ -28,36 +28,39 @@
 4. (for developers) Package installation policy be found on
    http://wiki.debian.net/?MonoConventions . Recent snapshot:
 
-| Conventions for installation of Mono applications
+| MONO Conventions Version: 0.1.2
 | 
-| Few ideas to build a semi-official policy for mono package installations.
+| Conventions for packaging Mono applications/libraries for Debian GNU/Linux.
 | 
-| Framework issues:
+| .NET Framework issues:
 | 
 |   * Depend on every library package that you need. Note that some applications
 |     or libs may open them via ldopen, so you need to track the dependencies
 |     manually
 |   * To get an interpreter, depend on:
 | 
-| mono-jit (>> 0.29) | cli-virtual-machine
+| mono-jit | cli-virtual-machine
 | 
-|   * To run the interpreter, run /usr/bin/cli. This is a link to the "best"
-|     interpreter chosen with update-alternatives. Currently mono or mint.
+|   * To run the interpreter/jit-compiler, run //usr/bin/cli. This is a link to
+|     the "best" interpreter choosen with update-alternatives. Currently mono or
+|     mint.
 |   * To get the compiler, depend on
 | 
 | mono-mcs | c-sharp-compiler
 | 
 | Note that there are no c-sharp-compiler alternatives yet, it is not clear
-| whether we will create the c-sharp-compiler alternative entry.
+| whether we will create the c-sharp-compiler alternative entry. (Portable .NET
+| maybe comming into debian some day)
 | 
-| Library installation issues...
+| Library issues;
 | 
 |   * base assemblies are packaged. Currently they go into /usr/lib which is not
 |     the best location (aliens in the system). Ideally, we should get the GAC
 |     soon so the DLLs could be moved to separate location(s) without having a
-|     config hell in /etc/mono/config. See new-installation-proposal below.
+|     config (dll mapping) hell in /etcmono/config. See new-installation-proposal
+|     below.
 | 
-| Applications package installation issues... Possible cases:
+| Applications package issues... Possible cases:
 | 
 |   * application packages:
 |       + (bad idea) put the .exe into /usr/bin and let the user work with
@@ -69,8 +72,8 @@
 |             actual interpreter
 |           o compatibility: $user may not have binfmt_misc in the kernel
 | 
-|       + general solution: a shell wrapper. On Debian, it runs /usr/bin/cli with
-|         the application name and parameters.
+|       + general solution: a shell wrapper. On Debian, it runs //usr/bin/cli
+|         with the application name and parameters.
 | 
 |     Pro:
 | 
@@ -96,32 +99,53 @@
 |           o cannot be modified. Could use a standard scheme for locating the
 |             EXE files, see below.
 | 
+| Naming:
+| 
+|   * The official name of the Mono Project is: Mono, mono:: or mono. To keep it
+|     unified (more transperant to the user) it should be always called "Mono",
+|     not MONO, not mono, not mono:: even no mixing with .NET in it. The
+|     explaination of Mono goes into the package long description.
+| 
 | THE PLAN (new policy proposal)
 | 
-| We create the directory /usr/share/dotnet (not in /usr/lib since all of this is
-| arch-independent, interpreted code). In this "dot-net area", we create:
+| We create the directory //usr/share/dotnet (not in //usr/lib since all of this
+| is arch-independent, interpreted code). In this "dot-net area", we create:
 | 
-|   * lib/ (with DLLs, this path needs to be known by the runtime. As well as /
-|     usr/lib for all the "incompatible" apps. Hm. We need the GAC).
-|   * $package name (where the actual package and its relevant files are located.
-|     For example, the monodoc.exe, assembler.exe etc., and the documentation
-|     directory)
-|   * bin/ (with .EXE executables, OR with symlinks to the $package dirs. For
-|     example, there is a symlink called usr/share/dotnet/exe/normalize which
-|     points to ../monodoc).
+|   * /usr/share/dotnet/lib (with DLLs, this path needs to be known by the
+|     runtime. As well as usr/lib for all the "incompatible" apps. Hm. We need
+|     the GAC). In this directory should go general libs, which are shared
+|     between applications. Application specific libs should goto their dotnet
+|     $package directory.
 | 
+|   * /usr/share/dotnet/bin (with .EXE executables, OR with symlinks to the
+|     $package dirs. For example, there is a symlink called usr/share/dotnet/bin/
+|     normalize which points to ../monodoc).
+| 
+|   * /usr/share/dotnet$package_name (where the actual package and its relevant
+|     files are located. For example, the monodoc.exe, assembler.exe etc., and
+|     the documentation directory). The $source_package_name should be used if it
+|     makes sense, some programs don't like to be seperated too much (symlink
+|     hell is also no solution).
+| 
+|   * All .exe filesh must have the executable flag (+x), to keep compatibility
+|     with binfmt.
+| 
 | Why all this? First, to have reliable file locations. Second, to create a good
-| generic application invocation tool. Shell wrappers for each application can be
-| used too (of course), but I suggest a allround-program so there would be no
-| need to write shell scripts again and again. We store it as /usr/bin/
-| cli-wrapper. The application package would install a symlink cli-wrapper -> /
-| usr/bin/program-name. What would the wrapper do on start? It checks argv0
-| (which is "normalize", for example). It looks for /usr/bin/normalize.exe (and
-| executes it iff found), then for /usr/share/dotnet/exe/normalize.exe, then for
-| /usr/share/dotnet/exe/normalize (directory). If the last is found, it runs /usr
-| /share/dotnet/exe/normalize/normalize.exe. This is done because the application
-| may have additional assemblies in its startup directory, look for the
-| additional config file there and such things.
+| generic application invocation tool. Shell wrappers for each application are
+| the simplest and quite acceptable way. For those who are lazy to write them, I
+| suggest an allround-program that looks for the right EXE binary to start. We
+| store it as //usr/bin/cli-wrapper. The application package would install a
+| symlink cli-wrapper -> //usr/bin/program-name (without .exe!). The cli-wrapper
+| is in the mono-common package and part of the cli-virtual-machine. What would
+| the wrapper do on start? It checks argv0 (which is "normalize", for example).
+| It looks for //usr/bin/normalize.exe (and executes it if found), then for //usr
+| /share/dotnet/bin/normalize.exe, then for //usr/share/dotnet/bin/normalize/
+| normalize.exe. The last one is a directory symlink, pointing to ../monodoc.
+| These all is especially useful if the application has additional assemblies in
+| its startup directory, or looks for additional config files there or such
+| things. The libs placed in /usr/share/dotnet/lib are in the search path when
+| the cli-wrapper is used, if you don't use the cli-wrapper (shell scripts
+| instead) you need to set MONO_PATH yourself!
 
 PS: Some comparisons (not real benchmarks!), testing different
 invocation methods:
@@ -159,4 +183,4 @@
 user    1m33.140s
 sys     0m8.920s
 
- Eduard Bloch <blade@debian.org> -- Wed, 11 Feb 2004 10:58:27 +0100
+ Eduard Bloch <blade@debian.org> -- Thu, 15 Apr 2004 23:32:45 +0200

Modified: mono/trunk/debian/changelog
===================================================================
--- mono/trunk/debian/changelog	2004-04-15 15:49:56 UTC (rev 565)
+++ mono/trunk/debian/changelog	2004-04-15 21:35:38 UTC (rev 566)
@@ -1,3 +1,12 @@
+mono (0.31-2) unstable; urgency=low
+
+  * kernel detection overridden to build 2.4 compatible version 
+    (closes: #243928, #243940)
+  * DLL map updates (closes: #241686)
+  * README.Debian updated with latest MonoConventions
+
+ -- Eduard Bloch <blade@debian.org>  Wed,  7 Apr 2004 01:39:55 +0200
+
 mono (0.31-1) unstable; urgency=low
 
   * New upstream release

Modified: mono/trunk/debian/patches/02_soname_map.dpatch
===================================================================
--- mono/trunk/debian/patches/02_soname_map.dpatch	2004-04-15 15:49:56 UTC (rev 565)
+++ mono/trunk/debian/patches/02_soname_map.dpatch	2004-04-15 21:35:38 UTC (rev 566)
@@ -24,11 +24,16 @@
 
 @DPATCH@
 diff -urNad /home/inet/debian/dev/build-area/mono-0.31/data/config.in mono-0.31/data/config.in
---- /home/inet/debian/dev/build-area/mono-0.31/data/config.in	2004-04-07 00:18:29.000000000 +0200
-+++ mono-0.31/data/config.in	2004-04-07 00:21:56.000000000 +0200
-@@ -4,18 +4,26 @@
- 	<dllmap dll="libxslt.dll" target="libxslt.so" />
- 	<dllmap dll="libmySQL.dll" target="libmysqlclient.so" />
+--- /home/inet/debian/dev/build-area/mono-0.31/data/config.in	2004-04-15 22:36:00.000000000 +0200
++++ mono-0.31/data/config.in	2004-04-15 22:56:07.000000000 +0200
+@@ -1,21 +1,29 @@
+ <configuration>
+ 	<dllmap dll="cygwin1.dll" target="@LIBC@" />
+ 	<dllmap dll="libc" target="@LIBC@" />
+-	<dllmap dll="libxslt.dll" target="libxslt.so" />
+-	<dllmap dll="libmySQL.dll" target="libmysqlclient.so" />
++	<dllmap dll="libxslt.dll" target="libxslt.so.1" />
++	<dllmap dll="libmySQL.dll" target="libmysqlclient.so.12" />
  	<dllmap dll="odbc32.dll" target="libodbc.so" />
 -	<dllmap dll="libglib-2.0-0.dll" target="libglib-2.0.so" />
 -	<dllmap dll="libgobject-2.0-0.dll" target="libgobject-2.0.so" />
@@ -48,19 +53,20 @@
 +	<dllmap dll="libgdk-win32-2.0-0.dll" target="libgdk-x11-2.0.so.0" />
 +	<dllmap dll="libgdk_pixbuf-2.0-0.dll" target="libgdk_pixbuf-2.0.so.0" />
 +	<dllmap dll="libgtk-win32-2.0-0.dll" target="libgtk-x11-2.0.so.0" />
-+	<dllmap dll="libgtk-win32-2.0-0.dll" target="libgtk-x11-2.0.so.0" />
 +	<dllmap dll="libglade-2.0-0.dll" target="libglade-2.0.so.0" />
  	<dllmap dll="oci" target="clntsh" />
- 	<dllmap dll="gtkhtml-3.0" target="libgtkhtml-3.0.so" />
+-	<dllmap dll="gtkhtml-3.0" target="libgtkhtml-3.0.so" />
++	<dllmap dll="gtkhtml-3.0" target="libgtkhtml-3.0.so.4" />
  	<dllmap dll="db2cli" target="libdb2_36.so"/>
 -	<dllmap dll="gstreamer" target="libgstreamer-0.6.so" />
-+  <dllmap dll="gnome-2" target="libgnome-2.so.0" />
-+  <dllmap dll="gconf-2" target="libgconf-2.so.4" />
-+  <dllmap dll="gstreamer" target="libgstreamer-0.6.so.0" />
-+  <dllmap dll="gtksourceview-1.0" target="libgtksourceview-1.0.so.0">
-+  <dllmap dll="gnomeui-2" target="libgnomeui-2.so.0" />
-+  <dllmap dll="gobject-2" target="libgobject-2.0.so.0" />
-+  <dllmap dll="gobject-2.0" target="libgobject-2.0.so.0" />
-+  <dllmap dll="gnomevfs-2" target="libgnomevfs-2.so.0" />
-+  <dllmap dll="gnomecanvas-2" target="libgnomecanvas-2.so.0" />
++	<dllmap dll="gnome-2" target="libgnome-2.so.0" />
++	<dllmap dll="gconf-2" target="libgconf-2.so.4" />
++	<dllmap dll="gstreamer" target="libgstreamer-0.6.so.0" />
++	<dllmap dll="gtksourceview-1.0" target="libgtksourceview-1.0.so.0">
++	<dllmap dll="gnomeui-2" target="libgnomeui-2.so.0" />
++	<dllmap dll="gobject-2" target="libgobject-2.0.so.0" />
++	<dllmap dll="gobject-2.0" target="libgobject-2.0.so.0" />
++	<dllmap dll="gnomevfs-2" target="libgnomevfs-2.so.0" />
++	<dllmap dll="gnomecanvas-2" target="libgnomecanvas-2.so.0" />
++	<dllmap dll="gnome-print2-2" target="libgnomeprint-2-2.so.0" />
  </configuration>

Modified: mono/trunk/debian/rules
===================================================================
--- mono/trunk/debian/rules	2004-04-15 15:49:56 UTC (rev 565)
+++ mono/trunk/debian/rules	2004-04-15 21:35:38 UTC (rev 566)
@@ -19,7 +19,7 @@
 	./autogen.sh --prefix=/usr --with-gc=included \
 	  --mandir=\$${prefix}/share/man \
 	  --infodir=\$${prefix}/share/info \
-	  --sysconfdir=/etc
+	  --sysconfdir=/etc --with-sigaltstack=no
 	$(MAKE)
 	touch build-stamp