Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
39 commits
Select commit Hold shift + click to select a range
3d33e08
Add walnascar branch build status to README
ajlennon Oct 21, 2024
9f5acbb
Update README.md
ajlennon Oct 21, 2024
9ad06e1
Don't trigger CI on changes to README.md
ajlennon Oct 21, 2024
9e18bb6
Tidy ups (remove clean step, generate SPDX, run CVE checks)
ajlennon Oct 21, 2024
d603951
Build on Poky master as walnascar branch doesn't yet exist
ajlennon Oct 21, 2024
de4210e
python3-pythonnet: Update to v3.0.4
Livius90 Oct 21, 2024
647cdff
dotnet: update v6.0.424 -> v6.0.427, v8.0.303 -> v8.0.403
Livius90 Oct 21, 2024
a12cac3
CI: update dotnet versions
Livius90 Oct 21, 2024
433a5ce
mono: Add patch to add libusb-1.0 mapping in /etc/mono/config
zboszor Oct 22, 2024
9acd68a
Merge pull request #248 from Livius90/master
ajlennon Oct 22, 2024
5c35a93
Merge pull request #249 from Livius90/master-update-dotnet
ajlennon Oct 22, 2024
b54ab57
Merge pull request #250 from zboszor/add-libusb-mapping
ajlennon Oct 22, 2024
11fa746
Do two separate CVE checks for mono and dotnet
ajlennon Oct 24, 2024
de23049
Build master against styhead as it's the latest poky release branch
ajlennon Oct 24, 2024
62cf5d0
Update README.md
ajlennon Oct 24, 2024
a5d8e9a
Fix CVE check typo
ajlennon Oct 24, 2024
4d83f1e
Merge branch 'master' into ajl/improve-ci
ajlennon Oct 24, 2024
bc95cc5
Change artifact upload for CVEs
ajlennon Oct 24, 2024
679e628
Change artifact upload name
ajlennon Oct 24, 2024
7bc558b
Merge pull request #247 from DynamicDevices/ajl/improve-ci
ajlennon Oct 24, 2024
2829142
Remove dunfell from supported branches as this is now EOL
ajlennon Nov 7, 2024
2aba7c9
Remove nanbield from supported releases as this is EOL
ajlennon Nov 7, 2024
90e4308
dotnet: update v6.0.427 -> v6.0.428
Livius90 Feb 16, 2025
abb5414
dotnet: v8.0.403 -> v8.0.406
Livius90 Feb 16, 2025
197afcd
CI: update dotnet versions, restore arm arch
Livius90 Feb 16, 2025
9349d3b
CI: Disable Event log for improve bitbake speed
Livius90 Feb 16, 2025
895f54f
CI: increase timeout, adjust style
Livius90 Feb 16, 2025
fe4e4a5
CI: Remove create-spdx cve-check
Livius90 Feb 24, 2025
7010b11
CI: Restore create-spdx cve-check
Livius90 Feb 24, 2025
05403cb
CI: adduser $USER kvm
Livius90 Feb 24, 2025
c8fa705
Revert "CI: adduser $USER kvm"
Livius90 Feb 24, 2025
ea8da53
Merge pull request #255 from Livius90/master
ajlennon Feb 25, 2025
7e8aa3a
Remove older msbuild recipes as they are no longer available #5
ajlennon Mar 19, 2025
b05f077
Update releases on README
ajlennon Mar 21, 2025
e15cd4f
dotnet: Add dotnet 10
spencercw Dec 2, 2025
6bd41cf
dotnet: fix host/fxr installation and NuGet HOME for CI
Feb 8, 2026
b341823
CI: exclude ARM32, add yocto-check-layer, flush stale sstate
Feb 8, 2026
22be306
Merge master: dotnet host/fxr fix, NuGet wrapper, CI improvements
Feb 8, 2026
7353187
Merge pull request #268 from spencercw/dotnet10
ajlennon Feb 8, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
67 changes: 46 additions & 21 deletions .github/workflows/CI_github.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,23 +4,31 @@ on:
push:
branches:
- master
- master-next
- walnascar
- feature/yocto-layer-compliance
pull_request:

branches:
- master
- feature/yocto-layer-compliance
paths-ignore:
- "**.md"
jobs:
build-and-test:
runs-on: [self-hosted, linux, X64]
timeout-minutes: 600
timeout-minutes: 960
container:
image: dynamicdevices/yocto-ci-build:latest
options: --privileged --platform linux/amd64 -v /dev/net/tun:/dev/net/tun -v /dev/kvm:/dev/kvm
strategy:
max-parallel: 1
matrix:
dotnet_version: [8.0.303, 6.0.424]
dotnet_version: [10.0.100, 8.0.406, 6.0.428]
mono_version: [6.12.0.206]
branch: [walnascar]
arch: [x86-64, arm64]
branch: [styhead]
arch: [x86-64, arm, arm64]
exclude:
# styhead GCC build broken for ARM32 - see README "Removal of support for ARM32" and discussions/234
- branch: styhead
arch: arm
env:
name: build-and-test
MONO_VERSION: ${{ matrix.mono_version }}
Expand Down Expand Up @@ -50,7 +58,7 @@ jobs:
cd ${BRANCH}/meta-openembedded
git pull origin ${BRANCH}
cd ../..
fi
fi
- name: Configuring
run: |
rm -f ${BRANCH}/build/conf/local.conf
Expand All @@ -66,29 +74,41 @@ jobs:
echo "BBLAYERS += '$GITHUB_WORKSPACE/${BRANCH}/meta-openembedded/meta-oe'" >> conf/bblayers.conf
echo "BBLAYERS += '$GITHUB_WORKSPACE/${BRANCH}/meta-openembedded/meta-python'" >> conf/bblayers.conf

echo "MACHINE=\"qemu${ARCH}\"" >> conf/local.conf
echo "DL_DIR=\"$GITHUB_WORKSPACE/downloads\"" >> conf/local.conf
echo "SSTATE_DIR=\"$GITHUB_WORKSPACE/sstate\"" >> conf/local.conf

echo "PREFERRED_VERSION_mono=\"${MONO_VERSION}\"" >> conf/local.conf
echo "PREFERRED_VERSION_mono-native=\"${MONO_VERSION}\"" >> conf/local.conf
echo "BB_DEFAULT_EVENTLOG = \"\"" >> conf/local.conf
echo "MACHINE = \"qemu${ARCH}\"" >> conf/local.conf
echo "DL_DIR = \"$GITHUB_WORKSPACE/downloads\"" >> conf/local.conf
echo "SSTATE_DIR = \"$GITHUB_WORKSPACE/sstate\"" >> conf/local.conf
echo "PREFERRED_VERSION_mono = \"${MONO_VERSION}\"" >> conf/local.conf
echo "PREFERRED_VERSION_mono-native = \"${MONO_VERSION}\"" >> conf/local.conf

echo "PREFERRED_VERSION_dotnet=\"${DOTNET_VERSION}\"" >> conf/local.conf
echo "PREFERRED_VERSION_dotnet-native=\"${DOTNET_VERSION}\"" >> conf/local.conf
echo "PREFERRED_VERSION_dotnet = \"${DOTNET_VERSION}\"" >> conf/local.conf
echo "PREFERRED_VERSION_dotnet-native = \"${DOTNET_VERSION}\"" >> conf/local.conf

echo "INHERIT += \" rm_work \"" >> conf/local.conf
echo "INHERIT += \" create-spdx cve-check rm_work \"" >> conf/local.conf
sed -i 's/#IMAGE_CLASSES += "testimage testsdk"/IMAGE_CLASSES += "testimage "/' conf/local.conf
echo "SPDX_PRETTY = \"1\"" >> conf/local.conf

echo "BB_NUMBER_THREADS ?= \"\${@oe.utils.cpu_count()}\"" >> conf/local.conf
echo "PARALLEL_MAKE ?= \"-j \${@oe.utils.cpu_count()} -l \${@oe.utils.cpu_count()*2}\"" >> conf/local.conf
- name: Cleaning
# Flush stale sstate/sysroot to ensure fresh builds with corrected
# host/fxr layout and dotnet wrapper.
# TODO: remove this step once all matrix jobs have rebuilt successfully.
- name: Clean stale sstate
run: |
. ./${BRANCH}/poky/oe-init-build-env ${BRANCH}/build
bitbake -c cleanall test-image-mono dotnet dotnet-native
- name: Building
bitbake -c cleansstate dotnet dotnet-native python3-clr-loader python3-clr-loader-native dotnet-helloworld python3-pythonnet
- name: Building Mono Test Image
run: |
. ./${BRANCH}/poky/oe-init-build-env ${BRANCH}/build
bitbake -k test-image-mono
bitbake test-image-mono
- name: CVE Check Mono / dotNet
run: |
. ./${BRANCH}/poky/oe-init-build-env ${BRANCH}/build
export TERM=linux
bitbake mono -c cve_check
mv $GITHUB_WORKSPACE/${BRANCH}/build/tmp/log/cve/cve-summary.json $GITHUB_WORKSPACE/${BRANCH}/build/tmp/log/cve/cve-summary-mono.json
bitbake dotnet -c cve_check
mv $GITHUB_WORKSPACE/${BRANCH}/build/tmp/log/cve/cve-summary.json $GITHUB_WORKSPACE/${BRANCH}/build/tmp/log/cve/cve-summary-dotnet.json
- name: Testing
run: |
. ./${BRANCH}/poky/oe-init-build-env ${BRANCH}/build
Expand All @@ -99,3 +119,8 @@ jobs:
with:
name: test-image-mono-${{ matrix.branch }}-${{ matrix.mono_version }}-${{ matrix.dotnet_version }}-${{ github.sha }}-${{ matrix.arch }}
path: ./${{ matrix.branch }}/build/tmp/deploy/images/qemu${{ matrix.arch }}/
- name: Store CVEs
uses: actions/upload-artifact@v4
with:
name: cve-summary-${{ matrix.branch }}-${{ matrix.mono_version }}-${{ matrix.dotnet_version }}-${{ github.sha }}-${{ matrix.arch }}
path: ./${{ matrix.branch }}/build/tmp/log/cve/*.json
21 changes: 15 additions & 6 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,13 +6,22 @@ meta-mono is an OpenEmbedded layer that builds dotNet, the mono runtime and mono

| Branch | Version | Support Status* | Status of Build & Tests |
| ------ | ------- | --------------- | ----------------------- |
| styhead | 5.1 | Active Development | [![styhead](https://img.shields.io/github/actions/workflow/status/dynamicdevices/meta-mono/CI_github.yml?branch=styhead&label=build%20%26%20test)](https://github.com/DynamicDevices/meta-mono/actions/workflows/CI_github.yml) |
| walnascar | 5.2 | Future (April 2025) | [![walnascar](https://img.shields.io/github/actions/workflow/status/dynamicdevices/meta-mono/CI_github.yml?branch=walnascar&label=build%20%26%20test)](https://github.com/DynamicDevices/meta-mono/actions/workflows/CI_github.yml) |
| styhead | 5.1 | Support for 7 months (May 2025) | [![styhead](https://img.shields.io/github/actions/workflow/status/dynamicdevices/meta-mono/CI_github.yml?branch=styhead&label=build%20%26%20test)](https://github.com/DynamicDevices/meta-mono/actions/workflows/CI_github.yml) |
| scarthgap | 5.0 | Long Term Support (until Apr. 2028) | [![scarthgap](https://img.shields.io/github/actions/workflow/status/dynamicdevices/meta-mono/CI_github.yml?branch=scarthgap&label=build%20%26%20test)](https://github.com/DynamicDevices/meta-mono/actions/workflows/CI_github.yml) |
| nanbield | 4.3 | May 2024 | [![nanbield](https://img.shields.io/github/actions/workflow/status/dynamicdevices/meta-mono/CI_github.yml?branch=nanbield&label=build%20%26%20test)](https://github.com/DynamicDevices/meta-mono/actions/workflows/CI_github.yml) |
| kirkstone | 4.0 | Long Term Support (minimum Apr. 2024) | [![master](https://img.shields.io/github/actions/workflow/status/dynamicdevices/meta-mono/CI_github.yml?branch=kirkstone&label=build%20%26%20test)](https://github.com/DynamicDevices/meta-mono/actions/workflows/CI_github.yml) |
| dunfell | 3.1 | Supported - Long Term Support (until Apr. 2024) | [![dunfell](https://img.shields.io/github/actions/workflow/status/dynamicdevices/meta-mono/CI_github.yml?branch=dunfell&label=build%20%26%20test)](https://github.com/DynamicDevices/meta-mono/actions/workflows/CI_github.yml) |
| kirkstone | 4.0 | Long Term Support (minimum Apr. 2024) | [![kirkstone](https://img.shields.io/github/actions/workflow/status/dynamicdevices/meta-mono/CI_github.yml?branch=kirkstone&label=build%20%26%20test)](https://github.com/DynamicDevices/meta-mono/actions/workflows/CI_github.yml) |

*support status as of 03/10/24, follows main Yocto release support schedule [here](https://wiki.yoctoproject.org/wiki/Releases)
*support status as of 21/03/25, follows main Yocto release support schedule [here](https://wiki.yoctoproject.org/wiki/Releases)

## Limitations

### Removal of support for ARM32

Currently (21/10/2024) `styhead` is failing to build GCC for ARM32. As such we've removed the CI tests for the interim. For discussion see [here](https://github.com/DynamicDevices/meta-mono/discussions/234). At such time as GCC is building again for ARM32 the intention is to add the CI build back in at which time we intend to continue to support ARM32. #HelpWanted

### pythonnet

The `python3-pythonnet` package currently does not support .NET 10.

## Layer Dependencies

Expand Down Expand Up @@ -66,7 +75,7 @@ On the target:

So far, Windows Forms applications have been tested under Sato.
Mono does not require Sato, it does require X if you want to run
Windows Forms applications.
Windows Forms applications.

## Testing Mono builds

Expand Down
17 changes: 16 additions & 1 deletion recipes-mono/dotnet-helloworld/dotnet-helloworld_1.0.bb
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,9 @@ PRIORITY = "optional"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302"

DEPENDS:append = " dotnet-native"
inherit linuxloader

DEPENDS:append = " dotnet-native patchelf-native"

RDEPENDS:${PN}:append = " \
icu \
Expand All @@ -15,6 +17,16 @@ RDEPENDS:${PN}:append = " \

COMPATIBLE_HOST ?= "(x86_64|aarch64|arm).*-linux"

# NuGet MigrationRunner in .NET 6 hardcodes $HOME for migrations dir.
# Override HOME so it's always writable (CI containers often have read-only HOME).
export HOME="${WORKDIR}/dotnet-home"
export DOTNET_CLI_HOME="${WORKDIR}/dotnet-home"
export DOTNET_SKIP_FIRST_TIME_EXPERIENCE="true"
export DOTNET_CLI_TELEMETRY_OPTOUT="1"
export DOTNET_NOLOGO="1"
export NUGET_PACKAGES="${UNPACKDIR}/nuget-packages"
export NUGET_HTTP_CACHE_PATH="${UNPACKDIR}/nuget-http-cache"

SRC_ARCH:aarch64 = "arm64"
SRC_ARCH:arm = "arm"
SRC_ARCH:x86-64 = "x64"
Expand All @@ -33,6 +45,9 @@ do_compile () {
dotnet new console --force -o ${S} --name ${PN}
dotnet build ${S}/${PN}.csproj --output ${B}/${PN} --configuration release --runtime linux-${SRC_ARCH}

# The interpreter points to a path on the build host by default; fix it to use the correct path for the target
patchelf --set-interpreter "${@get_linuxloader(d)}" ${B}/${PN}/${PN}

#FIXME: remove the following line. if the lttng-ust conflict is solved
#FIXME: dotnet 8 doesn't produce libcoreclrtraceptprovider.so for the helloworld applications
# When dotnet 6 and 7 reach end of life remove the following line.
Expand Down
49 changes: 45 additions & 4 deletions recipes-mono/dotnet/dotnet.inc
Original file line number Diff line number Diff line change
Expand Up @@ -11,17 +11,18 @@ DEPENDS = "patchelf-native"
RDEPENDS:${PN}:class-target = "icu zlib libgssapi-krb5"
RDEPENDS:${PN}:class-native = "icu zlib"
RDEPENDS:${PN}:class-nativesdk = "icu zlib"
RDEPENDS:${PN}-dev = "zlib"

PR = "r0"

SRC_ARCH:aarch64 = "arm64"
SRC_ARCH:arm = "arm"
SRC_ARCH:x86-64 = "x64"

SRC_URI[vardeps] += "SRC_FETCH_ID SRC_ARCH"
SRC_URI[vardeps] += "SRC_ARCH"
SRC_URI[sha512sum] = "${SRC_SHA512SUM}"

SRC_URI = "https://download.visualstudio.microsoft.com/download/pr/${SRC_FETCH_ID}/dotnet-sdk-${PV}-linux-${SRC_ARCH}.tar.gz;subdir=dotnet-${PV}"
SRC_URI = "https://builds.dotnet.microsoft.com/dotnet/Sdk/${PV}/dotnet-sdk-${PV}-linux-${SRC_ARCH}.tar.gz;subdir=dotnet-${PV}"

do_configure[noexec] = "1"
do_compile[noexec] = "1"
Expand All @@ -38,9 +39,14 @@ do_install() {
install -m 0644 ${S}/LICENSE.txt ${D}${datadir}/dotnet
install -m 0644 ${S}/ThirdPartyNotices.txt ${D}${datadir}/dotnet

# Install ALL host/fxr versions from the SDK tarball. Microsoft ships
# updated muxer binaries in serviced SDK releases (e.g. SDK 6.0.428 may
# bundle a 10.0.0 muxer), so only copying DOTNET_RUNTIME_VERSION breaks
# the muxer's fxr lookup.
install -d ${D}${datadir}/dotnet/host/fxr
cp -r --no-preserve=ownership ${S}/host/fxr/${DOTNET_RUNTIME_VERSION} ${D}${datadir}/dotnet/host/fxr
cp -r --no-preserve=ownership ${S}/host/fxr/* ${D}${datadir}/dotnet/host/fxr/

cp -r --no-preserve=ownership ${S}/packs ${D}${datadir}/dotnet/
cp -r --no-preserve=ownership ${S}/sdk ${D}${datadir}/dotnet/
cp -r --no-preserve=ownership ${S}/sdk-manifests ${D}${datadir}/dotnet/

Expand All @@ -52,9 +58,21 @@ do_install() {

# Hack to fix liblttng-ust dependency issues
patchelf --remove-needed liblttng-ust.so.0 ${D}${datadir}/dotnet/shared/Microsoft.NETCore.App/${DOTNET_RUNTIME_VERSION}/libcoreclrtraceptprovider.so
patchelf --remove-needed liblttng-ust.so.1 ${D}${datadir}/dotnet/shared/Microsoft.NETCore.App/${DOTNET_RUNTIME_VERSION}/libcoreclrtraceptprovider.so

# Symlink libhostfxr.so - prefer DOTNET_RUNTIME_VERSION, fall back to
# whatever the SDK tarball actually ships (muxer version may differ).
install -d ${D}${libdir}
ln -rs ${D}${datadir}/dotnet/host/fxr/${DOTNET_RUNTIME_VERSION}/libhostfxr.so ${D}${libdir}/libhostfxr.so
if [ -f ${D}${datadir}/dotnet/host/fxr/${DOTNET_RUNTIME_VERSION}/libhostfxr.so ]; then
ln -rs ${D}${datadir}/dotnet/host/fxr/${DOTNET_RUNTIME_VERSION}/libhostfxr.so ${D}${libdir}/libhostfxr.so
else
for fxr_dir in ${D}${datadir}/dotnet/host/fxr/*/; do
if [ -f "${fxr_dir}libhostfxr.so" ]; then
ln -rs "${fxr_dir}libhostfxr.so" ${D}${libdir}/libhostfxr.so
break
fi
done
fi
}

do_install:append:x86-64:class-target () {
Expand All @@ -71,6 +89,7 @@ FILES:${PN} += "\
"

FILES:${PN}-dev = "\
${datadir}/dotnet/packs \
${datadir}/dotnet/sdk \
${datadir}/dotnet/sdk-manifests \
${datadir}/dotnet/templates \
Expand All @@ -83,6 +102,28 @@ FILES:${PN}-dbg = "\
RRECOMMENDS:dotnet-dev[nodeprrecs] = "1"

INSANE_SKIP:${PN} = "already-stripped libdir staticdev textrel dev-so"
INSANE_SKIP:${PN}-dev = "libdir staticdev dev-elf"
INSANE_SKIP:${PN}-dbg = "libdir"

# For native builds, replace the dotnet symlink with a wrapper script that
# ensures HOME is always writable. .NET SDK 6 NuGet MigrationRunner.Run()
# unconditionally writes to $HOME/.local/share/NuGet/Migrations *before*
# checking DOTNET_SKIP_FIRST_TIME_EXPERIENCE. In CI containers HOME is
# often read-only, breaking every recipe that invokes dotnet. The wrapper
# fixes this for ALL consumer recipes automatically.
do_install:append:class-native() {
rm -f ${D}${bindir}/dotnet
cat > ${D}${bindir}/dotnet << 'WRAPPER'
#!/bin/sh
export HOME="${DOTNET_CLI_HOME:-${TMPDIR:-/tmp}/dotnet-home}"
mkdir -p "$HOME" 2>/dev/null || true
export DOTNET_SKIP_FIRST_TIME_EXPERIENCE=true
export DOTNET_CLI_TELEMETRY_OPTOUT=1
export DOTNET_NOLOGO=1
SELF_DIR="$(cd "$(dirname "$0")" && pwd)"
exec "${SELF_DIR}/../share/dotnet/dotnet" "$@"

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Wrapper uses bitbake-style ${SELF_DIR} for shell variable

High Severity

The native dotnet wrapper script written via heredoc uses ${SELF_DIR} (with braces) on the exec line. BitBake expands all ${VAR} patterns in shell function bodies before passing them to the shell. Since SELF_DIR is a shell variable (not a bitbake variable), bitbake will expand ${SELF_DIR} to an empty string. This causes the exec line to resolve to "/../share/dotnet/dotnet" instead of the correct path, breaking the wrapper for all dotnet-native consumers. Using $SELF_DIR (without braces) avoids bitbake interception and allows the shell to expand it at runtime.

Fix in Cursor Fix in Web

WRAPPER
chmod 0755 ${D}${bindir}/dotnet
}

BBCLASSEXTEND = "native nativesdk"
7 changes: 7 additions & 0 deletions recipes-mono/dotnet/dotnet_10.0.100.bb
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
require dotnet.inc

DOTNET_RUNTIME_VERSION = "10.0.0"

SRC_SHA512SUM:aarch64 = "24fc2b105ab8484c34213ef57ac4e6a36a6593241f0ebc6cf0a40ec2f5fea2d76de85c4b87b2a53814d194e32ec1288dd5053cd6f52768d79cd0ac948cbf84ea"
SRC_SHA512SUM:arm = "45f2d7fd05670a5a14fa480889e45920782277575dba0da44c259997d059d64070b40ac7aae9f0c3a3076d9fed5b787854a8abdc2dfdb4783b449c05c1c9b49c"
SRC_SHA512SUM:x86-64 = "f78dbac30c9af2230d67ff5c224de3a5dbf63f8a78d1c206594dedb80e6909d2cc8a9d865d5105c72c2fd2aa266fc0c6c77dedac60408cbccf272b116bd11b07"
12 changes: 0 additions & 12 deletions recipes-mono/dotnet/dotnet_6.0.424.bb

This file was deleted.

7 changes: 7 additions & 0 deletions recipes-mono/dotnet/dotnet_6.0.428.bb
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
require dotnet.inc

DOTNET_RUNTIME_VERSION = "6.0.36"

SRC_SHA512SUM:aarch64 = "cb8454865ecb99ce557bd0a5741d3dc84657a45ea00f9b2a0f0593e94e4e661e898a5690df90cf0175bf5982973c19985a168998aaa975b7ac7a3bef2ecd05d2"
SRC_SHA512SUM:arm = "c751881dd27ef098428e616b99a9c16e8bf82526484f76987dac1efcb5177534749c8f943f6d9daacc3a91bb086c9cb9c8d535c9881c0be3dc19c647065968fe"
SRC_SHA512SUM:x86-64 = "04395f991ab50e4755ce1ae53e23592a7420b71b82160883bae3194dd1dfd5dcaed78743e4e0b4dd51ea43c49ec84b5643630707b3854f1471265dc98490d2f9"
12 changes: 0 additions & 12 deletions recipes-mono/dotnet/dotnet_8.0.303.bb

This file was deleted.

7 changes: 7 additions & 0 deletions recipes-mono/dotnet/dotnet_8.0.406.bb
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
require dotnet.inc

DOTNET_RUNTIME_VERSION = "8.0.13"

SRC_SHA512SUM:aarch64 = "9b939f09fbda8a080b1266914ca02c4d60a95e85fa6a1344c378d394697de6935eb7d941dd9a3aeb977ada3aab561c614a5fe9b973824899cb02aa74e9c09988"
SRC_SHA512SUM:arm = "18a2bf575a6d895ce0671b22e4f0853003920f0b7f2f33ff45afc51d34453bfd6b87b2aa5e53349d0c6ae9f6c37f6663d37f87a2ee544c89a7f5ba88d6f65408"
SRC_SHA512SUM:x86-64 = "d6fdcfebd0df46959f7857cfb3beac7de6c8843515ece28b24802765fd9cfb6c7e9701b320134cb4907322937ab89cae914ddc21bf48b9b6313e9a9af5c1f24a"
1 change: 0 additions & 1 deletion recipes-mono/images/test-image-mono.bb
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,6 @@ DEFAULT_TEST_SUITES:pn-${PN}:prepend = "dotnet "
IMAGE_INSTALL += "msbuild \
dotnet \
dotnet-helloworld \
python3-pythonnet \
"

IMAGE_BASENAME = "${PN}"
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
From 611f269ab768407965311ad3be56edf912c36e95 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Zolt=C3=A1n=20B=C3=B6sz=C3=B6rm=C3=A9nyi?=
<zboszor@gmail.com>
Date: Tue, 22 Oct 2024 07:36:06 +0200
Subject: [PATCH] Add libusb-1.0 mapping
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

This fixes using USB devices with LibUsbDotNet and MonoLibUsb.

Signed-off-by: Zoltán Böszörményi <zboszor@gmail.com>
Upstream-Status: Submitted [https://github.com/mono/mono/pull/21807]
---
data/config.in | 1 +
1 file changed, 1 insertion(+)

diff --git a/data/config.in b/data/config.in
index 2718b6e9f45..66cfd55ab76 100644
--- a/data/config.in
+++ b/data/config.in
@@ -33,6 +33,7 @@
<dllmap dll="libcairo-2.dll" target="$mono_libdir/libcairo.2.dylib" os="osx" />
<dllmap dll="libcups" target="libcups.so.2" os="!windows"/>
<dllmap dll="libcups" target="libcups.dylib" os="osx"/>
+ <dllmap dll="libusb-1.0" target="libusb-1.0.so.0" os="!windows"/>
<dllmap dll="i:kernel32.dll">
<dllentry dll="__Internal" name="CopyMemory" target="mono_win32_compat_CopyMemory"/>
<dllentry dll="__Internal" name="FillMemory" target="mono_win32_compat_FillMemory"/>
--
2.47.0

1 change: 1 addition & 0 deletions recipes-mono/mono/mono_6.12.0.206.bb
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@ SRC_URI = "gitsm://github.com/mono/mono.git;protocol=https;branch=2020-02 \
file://shm_open-test-crosscompile.diff \
file://disable-mmap-MAP_32BIT-support.patch \
file://0001-Allow-passing-external-mapfile-C-build-options.patch \
file://0001-Add-libusb-1.0-mapping.patch \
"


Expand Down
Loading
Loading