[yocto] [meta-mono][PATCH 5/7] mono: add support for mono 4.6.1.5

Barry Grussling barry at grussling.com
Sat Nov 5 21:23:02 PDT 2016


Upgrade the mono framework to 4.6.1.5.  Only real issue was
problems with the .NETPortable directory:
ERROR: mono-4.6.1.5-r0 do_package: QA Issue: mono: Files/directories were installed but not shipped in any package:
  /usr/lib/mono/xbuild-frameworks/.NETPortable
  /usr/lib/mono/xbuild-frameworks/.NETPortable/v5.0
  /usr/lib/mono/xbuild-frameworks/.NETPortable/v5.0/RedistList
  /usr/lib/mono/xbuild-frameworks/.NETPortable/v5.0/SupportedFrameworks
  /usr/lib/mono/xbuild-frameworks/.NETPortable/v5.0/RedistList/FrameworkList.xml
  /usr/lib/mono/xbuild-frameworks/.NETPortable/v5.0/SupportedFrameworks/.NET Framework 4.6.xml
  /usr/lib/mono/xbuild-frameworks/.NETPortable/v5.0/SupportedFrameworks/ASP.NET Core 1.0.xml
  /usr/lib/mono/xbuild-frameworks/.NETPortable/v5.0/SupportedFrameworks/Windows Universal 10.0.xml

I fixed this by expanding the FILES directive for xbuild in the mono-4.xx.inc.

Signed-off-by: Barry Grussling <barry at grussling.com>
---
 README.md                                          |  7 +++++-
 recipes-mono/mono/mono-4.6.1.5.inc                 |  2 ++
 .../mono/mono-4.6.1.5/dllmap-config.in.diff        | 29 ++++++++++++++++++++++
 recipes-mono/mono/mono-4.xx.inc                    |  2 +-
 recipes-mono/mono/mono-native_4.6.1.5.bb           |  4 +++
 recipes-mono/mono/mono_4.6.1.5.bb                  |  8 ++++++
 6 files changed, 50 insertions(+), 2 deletions(-)
 create mode 100644 recipes-mono/mono/mono-4.6.1.5.inc
 create mode 100644 recipes-mono/mono/mono-4.6.1.5/dllmap-config.in.diff
 create mode 100644 recipes-mono/mono/mono-native_4.6.1.5.bb
 create mode 100644 recipes-mono/mono/mono_4.6.1.5.bb

diff --git a/README.md b/README.md
index 3333aad..2adac04 100644
--- a/README.md
+++ b/README.md
@@ -6,7 +6,7 @@ libraries to allow users to run .NET applications under linux built
 using OE. For more info about mono, see mono project's website. For
 more info on OpenEmbedded, see OE's website.
 
-This README pertains to meta-mono layer support for Mono 3.12.1 - 4.4.x
+This README pertains to meta-mono layer support for Mono 3.12.1 - 4.6.x
 
 For Mono release notes please see:
 
@@ -19,6 +19,7 @@ For Mono release notes please see:
 * [Mono 4.2.0 Release Notes](http://www.mono-project.com/docs/about-mono/releases/4.2.0/)
 * [Mono 4.2.1 Release Notes](http://www.mono-project.com/docs/about-mono/releases/4.2.1/)
 * [Mono 4.4.0 Release Notes](http://www.mono-project.com/docs/about-mono/releases/4.4.0/)
+* [Mono 4.6.1 Release Notes](http://www.mono-project.com/docs/about-mono/releases/4.6.1/)
 
 NOTE: Mono TLS vulnerabilities. 3.12.1+ includes the fix in the release archive.
 
@@ -151,6 +152,10 @@ MIT/GPLv2 - following the lead of libgdiplus and mono
 
 ## Current State - ARM vfp: Works
 
+4.6.1
+
+* Has been tested on Cortex-A9
+
 #### 27/04/2014
 
 4.0.1
diff --git a/recipes-mono/mono/mono-4.6.1.5.inc b/recipes-mono/mono/mono-4.6.1.5.inc
new file mode 100644
index 0000000..cf960ff
--- /dev/null
+++ b/recipes-mono/mono/mono-4.6.1.5.inc
@@ -0,0 +1,2 @@
+SRC_URI[md5sum] = "601a96baa96a2e7acde1fb7e622322c4"
+SRC_URI[sha256sum] = "3871ee72bdfc2ea5d636ffff22cf49ae6bac7c4a4f3d687214dd8ac236bbf7c3"
diff --git a/recipes-mono/mono/mono-4.6.1.5/dllmap-config.in.diff b/recipes-mono/mono/mono-4.6.1.5/dllmap-config.in.diff
new file mode 100644
index 0000000..52ca1a7
--- /dev/null
+++ b/recipes-mono/mono/mono-4.6.1.5/dllmap-config.in.diff
@@ -0,0 +1,29 @@
+diff -Naur mono-4.6.1.orig/data/config.in mono-4.6.1/data/config.in
+--- mono-4.6.1.orig/data/config.in	2016-10-11 05:53:43.000000000 -0700
++++ mono-4.6.1/data/config.in	2016-11-04 10:15:32.018107576 -0700
+@@ -10,12 +10,12 @@
+ 	<dllmap dll="i:odbc32.dll" target="libiodbc.dylib" os="osx"/>
+ 	<dllmap dll="oci" target="libclntsh at libsuffix@" os="!windows"/>
+ 	<dllmap dll="db2cli" target="libdb2_36 at libsuffix@" os="!windows"/>
+-	<dllmap dll="MonoPosixHelper" target="$mono_libdir/libMonoPosixHelper at libsuffix@" os="!windows" />
++	<dllmap dll="MonoPosixHelper" target="libMonoPosixHelper.so" os="!windows" />
+ 	<dllmap dll="i:msvcrt" target="@LIBC@" os="!windows"/>
+ 	<dllmap dll="i:msvcrt.dll" target="@LIBC@" os="!windows"/>
+ 	<dllmap dll="sqlite" target="@SQLITE@" os="!windows"/>
+ 	<dllmap dll="sqlite3" target="@SQLITE3@" os="!windows"/>
+-	<dllmap dll="libX11" target="@X11@" os="!windows" />
++	<dllmap dll="libX11" target="libX11.so.6" os="!windows" />
+ 	<dllmap dll="libgdk-x11-2.0" target="@GDKX11@" os="!windows"/>
+ 	<dllmap dll="libgtk-x11-2.0" target="@GTKX11@" os="!windows"/>
+ 	<dllmap dll="libXinerama" target="@XINERAMA@" os="!windows" />
+@@ -29,8 +29,8 @@
+ 		<dllentry dll="__Internal" name="MoveMemory" target="mono_win32_compat_MoveMemory"/>
+ 		<dllentry dll="__Internal" name="ZeroMemory" target="mono_win32_compat_ZeroMemory"/>
+ 	</dllmap>
+-	<dllmap dll="gdiplus" target="@libgdiplus_install_loc@" os="!windows"/>
+-	<dllmap dll="gdiplus.dll" target="@libgdiplus_install_loc@"  os="!windows"/>
++	<dllmap dll="gdiplus" target="libgdiplus.so.0" os="!windows"/>
++	<dllmap dll="gdiplus.dll" target="libgdiplus.so.0"  os="!windows"/>
+ 	<dllmap dll="gdi32" target="@libgdiplus_install_loc@" os="!windows"/>
+ 	<dllmap dll="gdi32.dll" target="@libgdiplus_install_loc@" os="!windows"/>
+ </configuration>
diff --git a/recipes-mono/mono/mono-4.xx.inc b/recipes-mono/mono/mono-4.xx.inc
index f1dc536..c1df4f0 100644
--- a/recipes-mono/mono/mono-4.xx.inc
+++ b/recipes-mono/mono/mono-4.xx.inc
@@ -81,7 +81,7 @@ FILES_${PN}-libs-compat-2.0 		= "${libdir}/mono/compat-2.0/*"
 FILES_${PN}-gac				= "${libdir}/mono/gac/*"
 FILES_${PN}-configuration-crypto 	= "${libdir}/mono/mono-configuration-crypto/*/*"
 FILES_${PN}-libs-monodoc 		= "${libdir}/mono/monodoc/*"
-FILES_${PN}-xbuild 			= "${libdir}/mono/xbuild/* ${libdir}/mono/xbuild-frameworks/* ${libdir}/mono/xbuild-frameworks/.NETFramework/*/*/*"
+FILES_${PN}-xbuild 			= "${libdir}/mono/xbuild/* ${libdir}/mono/xbuild-frameworks/* ${libdir}/mono/xbuild-frameworks/.NETFramework/*/*/* ${libdir}/mono/xbuild-frameworks/.NETPortable/*/*/* ${libdir}/mono/xbuild-frameworks/.NETPortable/*/*/.NET*"
 FILES_${PN}-doc 			+= " ${datadir}/libgc-mono/*"
 FILES_${PN}-dbg 			+= " ${datadir}/mono-2.0/mono/cil/cil-opcodes.xml ${libdir}/mono/*/*.mdb ${libdir}/mono/gac/*/*/*.mdb"
 FILES_${PN}-staticdev 			+= " ${libdir}/*.a"
diff --git a/recipes-mono/mono/mono-native_4.6.1.5.bb b/recipes-mono/mono/mono-native_4.6.1.5.bb
new file mode 100644
index 0000000..81bc5af
--- /dev/null
+++ b/recipes-mono/mono/mono-native_4.6.1.5.bb
@@ -0,0 +1,4 @@
+require mono-4.xx.inc
+require mono-mit.inc
+require ${PN}-base.inc
+require mono-${PV}.inc
diff --git a/recipes-mono/mono/mono_4.6.1.5.bb b/recipes-mono/mono/mono_4.6.1.5.bb
new file mode 100644
index 0000000..ae8a7eb
--- /dev/null
+++ b/recipes-mono/mono/mono_4.6.1.5.bb
@@ -0,0 +1,8 @@
+require mono-4.xx.inc
+require mono-mit.inc
+require ${PN}-base.inc
+require mono-${PV}.inc
+
+PACKAGES += "${PN}-profiler "
+FILES_${PN}-profiler += " ${datadir}/mono-2.0/mono/profiler/*"
+
-- 
2.10.2




More information about the yocto mailing list