[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