diff options
-rw-r--r-- | conf/checksums.ini | 4 | ||||
-rw-r--r-- | packages/mono/files/mono-libgc-configure.patch | 20 | ||||
-rw-r--r-- | packages/mono/mono-1.2.5.1+1.2.6pre4/.mtn2git_empty | 0 | ||||
-rw-r--r-- | packages/mono/mono-1.2.5.1+1.2.6pre4/configure.patch | 23 | ||||
-rw-r--r-- | packages/mono/mono-mcs-intermediate_1.2.5.1+1.2.6pre4.bb | 12 | ||||
-rw-r--r-- | packages/mono/mono_1.2.5.1+1.2.6pre4.bb | 80 | ||||
-rw-r--r-- | packages/mono/mono_1.2.6.inc | 13 |
7 files changed, 152 insertions, 0 deletions
diff --git a/conf/checksums.ini b/conf/checksums.ini index afa2a95e2b..dc1b06316f 100644 --- a/conf/checksums.ini +++ b/conf/checksums.ini @@ -7806,6 +7806,10 @@ sha256=8447eb112e0e42db59e490fa98b0a1c9ed90ff3660b99734fe5119061eddce8e md5=b67ef657b83ca26249d7b9e9c5e7da69 sha256=d68f597c303678c3f325f552a0e2780b613dbf34d093c2269c002127be4953e5 +[http://mono.ximian.com/monobuild/preview/sources/mono/mono-1.2.6.tar.bz2] +md5=391f85b4f962269e044ceac2b5235310 +sha256=24cc4f396cac3053c7ba3fe68bc1b80359d75dc4f54a85f39a73cabc3d3f560f + [http://venge.net/monotone/downloads/monotone-0.20.tar.gz] md5=3bdf4da35ff576a401483815952f4045 sha256=56a5c5afd838f90146205ee4769b83988c6bafc85826c0fbcad982f1e0333d93 diff --git a/packages/mono/files/mono-libgc-configure.patch b/packages/mono/files/mono-libgc-configure.patch new file mode 100644 index 0000000000..641635da3c --- /dev/null +++ b/packages/mono/files/mono-libgc-configure.patch @@ -0,0 +1,20 @@ +Index: mono-1.2.6/libgc/configure.in +=================================================================== +--- mono-1.2.6.orig/libgc/configure.in 2007-12-12 15:02:31.000000000 -0500 ++++ mono-1.2.6/libgc/configure.in 2007-12-12 15:05:10.000000000 -0500 +@@ -17,6 +17,15 @@ + AC_PREREQ(2.53) + AC_INIT(libgc-mono, 6.6, Hans_Boehm@hp.com) + ++# the following is a very strange bug. CPPFLAGS does not get set correctly ++# if CPPFLAGS is set in the environment. The top level configure script ++# appends to the CPPFLAGS variable, and then exports it. This change should ++# be picked up by this configure script, but it is not. The original ++# env variable is still used for some reason. If CPPFLAGS is not set in the ++# environment, everything works fine. ++# Someone more experienced with autoconf will have to come up with a better fix. ++CPPFLAGS="$CPPFLAGS -DGC_LINUX_THREADS -D_GNU_SOURCE -D_REENTRANT -DUSE_MMAP -DUSE_MUNMAP -DUSE_COMPILER_TLS" ++echo "CPPFLAGS verify: start of libgc/configure.in, CPPFLAGS = $CPPFLAGS" + AM_INIT_AUTOMAKE(libgc-mono, 6.6, no-define) + + AC_CONFIG_SRCDIR(gcj_mlc.c) diff --git a/packages/mono/mono-1.2.5.1+1.2.6pre4/.mtn2git_empty b/packages/mono/mono-1.2.5.1+1.2.6pre4/.mtn2git_empty new file mode 100644 index 0000000000..e69de29bb2 --- /dev/null +++ b/packages/mono/mono-1.2.5.1+1.2.6pre4/.mtn2git_empty diff --git a/packages/mono/mono-1.2.5.1+1.2.6pre4/configure.patch b/packages/mono/mono-1.2.5.1+1.2.6pre4/configure.patch new file mode 100644 index 0000000000..f033248621 --- /dev/null +++ b/packages/mono/mono-1.2.5.1+1.2.6pre4/configure.patch @@ -0,0 +1,23 @@ +Index: mono-1.2.6/configure.in +=================================================================== +--- mono-1.2.6.orig/configure.in 2007-11-08 17:07:57.000000000 -0500 ++++ mono-1.2.6/configure.in 2007-12-12 15:27:52.000000000 -0500 +@@ -1150,6 +1150,8 @@ + ], [ + AC_MSG_RESULT(no) + with_tls=pthread ++ ], [ ++ AC_MSG_RESULT(yes) + ]) + fi + +@@ -1252,6 +1254,9 @@ + ], [ + with_sigaltstack=no + AC_MSG_RESULT(no) ++ ], [ ++ AC_MSG_RESULT(yes) ++ AC_DEFINE(HAVE_WORKING_SIGALTSTACK) + ]) + fi + diff --git a/packages/mono/mono-mcs-intermediate_1.2.5.1+1.2.6pre4.bb b/packages/mono/mono-mcs-intermediate_1.2.5.1+1.2.6pre4.bb new file mode 100644 index 0000000000..1ec7397e2b --- /dev/null +++ b/packages/mono/mono-mcs-intermediate_1.2.5.1+1.2.6pre4.bb @@ -0,0 +1,12 @@ +# This is a straw-man recipe for step 1 in the two-step build of +# mono. Because it's impossible to build the mcs directory +# in cross-compile mode, this recipe will do a native build, +# then tar the resulting install tree for usage by the mono +# package in step 2. +# See http://www.mono-project.com/Mono:ARM + +require mono_1.2.6.inc +require mono-mcs-intermediate.inc + +DEFAULT_PREFERENCE = "-1" + diff --git a/packages/mono/mono_1.2.5.1+1.2.6pre4.bb b/packages/mono/mono_1.2.5.1+1.2.6pre4.bb new file mode 100644 index 0000000000..e78160ee5a --- /dev/null +++ b/packages/mono/mono_1.2.5.1+1.2.6pre4.bb @@ -0,0 +1,80 @@ +require mono_1.2.6.inc + +DEPENDS = "mono-native mono-mcs-intermediate glib-2.0 perl-native" + +PR = "r0" + +DEFAULT_PREFERENCE = "-1" + +SRC_URI += "file://configure.patch;patch=1" + +# Per http://www.mono-project.com/Mono:ARM +EXTRA_OECONF += " --disable-mcs-build " +# Instead, get the mcs tree from a different build (see mono-mcs-intermediate) + +do_install_prepend() { + install -d ${D} + pushd ${D} + tar -xzf ${STAGING_DIR}/share/mono-mcs/mono-mcs-${PV}.tar.gz + popd +} + +do_install_append() { + # mono-mcs-intermediate builds and installs jay (a Yacc for Java and C#), + # however, jay is not being cross-compiled and thus only + # available for the buildhost architecture, so remove it + # entirely + pushd ${D} + rm -rf ./usr/share/man/man1/jay.1 ./usr/share/jay \ + ./usr/share/jay/README.jay \ + ./usr/bin/jay + popd + + # Not packaged with the default rules and apparently + # not used for anything + rm -rf ${D}${datadir}/mono-1.0/mono/cil/cil-opcodes.xml +} + +inherit mono + +# Import file definitions from Debian +require mono_1.2.5.1-files.inc + +# Add some packages +PACKAGES_append = " mono-doc mono mono-runtime" + +FILES_mono-doc_append = " /usr/share/libgc-mono/ " + +FILES_mono = "" +ALLOW_EMPTY_mono = "1" +RDEPENDS_mono = "mono-common mono-jit" + +FILES_mono-runtime = "" +ALLOW_EMPTY_mono-runtime = "1" +RDEPENDS_mono-runtime = "mono-jit mono-gac" + +RDEPENDS_mono-jit = "mono-common" + +FILES_libmono-dev =+ " /usr/lib/libmono.la /usr/lib/libmono-profiler-cov.la /usr/lib/libmono-profiler-aot.la \ + /usr/lib/libMonoPosixHelper.la /usr/lib/libMonoSupportW.la" +FILES_libmono-dbg =+ " /usr/lib/.debug/libmono*.so.* /usr/lib/.debug/libikvm-native.so \ + /usr/lib/.debug/libMonoPosixHelper.so /usr/lib/.debug/libMonoSupportW.so" + +# Packages not included in Debian +PACKAGES_prepend = "libnunit2.2-cil-dbg libnunit2.2-cil-dev libnunit2.2-cil \ + libmono-cecil0.5-cil-dbg libmono-cecil0.5-cil-dev libmono-cecil0.5-cil \ + libmono-db2-1.0-cil-dbg libmono-db2-1.0-cil-dev libmono-db2-1.0-cil" + +FILES_libnunit2.2-cil = "/usr/lib/mono/gac/nunit.*/2.2.* /usr/lib/mono/1.0/nunit.*.dll" +FILES_libnunit2.2-cil-dev = "/usr/lib/pkgconfig/mono-nunit.pc" +FILES_libnunit2.2-cil-dbg = "/usr/lib/mono/gac/nunit*/2.2.*/nunit.*.dll.mdb" + +FILES_libmono-cecil0.5-cil = "/usr/lib/mono/gac/Mono.Cecil/0.5.*" +FILES_libmono-cecil0.5-cil-dbg = "/usr/lib/mono/gac/Mono.Cecil/0.5.0.1__0738eb9f132ed756/Mono.Cecil.dll.mdb" + +FILES_libmono-db2-1.0-cil = "/usr/lib/mono/gac/IBM.Data.DB2/1.0* /usr/lib/mono/1.0/IBM.Data.DB2.dll" +FILES_libmono-db2-1.0-cil-dbg = "/usr/lib/mono/gac/IBM.Data.DB2/1.0*/IBM.Data.DB2.dll.mdb" + +# Move .pc files +FILES_libmono-cairo1.0-cil-dev = "/usr/lib/pkgconfig/mono-cairo.pc" +PACKAGES =+ " libmono-cairo1.0-cil-dev " diff --git a/packages/mono/mono_1.2.6.inc b/packages/mono/mono_1.2.6.inc new file mode 100644 index 0000000000..23492e82f7 --- /dev/null +++ b/packages/mono/mono_1.2.6.inc @@ -0,0 +1,13 @@ +DESCRIPTION = "Mono Programming Language" +SECTION = "devel/mono" +LICENSE = "GPL LGPL X11" + +SRC_URI = "http://mono.ximian.com/monobuild/preview/sources/mono/mono-1.2.6.tar.bz2 \ + file://mono-libgc-configure.patch;patch=1" + +S = "${WORKDIR}/mono-1.2.6" + +inherit autotools +EXTRA_OECONF_arm = "--without-tls" +EXTRA_OECONF_mipsel = "--without-tls" + |