summaryrefslogtreecommitdiffstats
path: root/recipes-support
diff options
context:
space:
mode:
Diffstat (limited to 'recipes-support')
-rw-r--r--recipes-support/icu/icu_74-1.bbappend1
-rw-r--r--recipes-support/icu/icu_74-1_agldemo.inc27
-rw-r--r--recipes-support/lin-config/lin-config_git.bb12
-rw-r--r--recipes-support/qemu-set-display/qemu-set-display_git.bb14
-rw-r--r--recipes-support/rng-tools/files/default1
-rw-r--r--recipes-support/rng-tools/rng-tools_%.bbappend1
-rw-r--r--recipes-support/rng-tools/rng-tools_agldemo.inc7
-rw-r--r--recipes-support/udisks/files/99-udisks2.rules5
-rw-r--r--recipes-support/udisks/files/automount.service9
-rw-r--r--recipes-support/udisks/files/automount.sh93
-rw-r--r--recipes-support/udisks/udisks2_%.bbappend1
-rw-r--r--recipes-support/udisks/udisks2_agldemo.inc27
-rw-r--r--recipes-support/vboxguestdrivers/vboxguestdrivers/Makefile.utils45
-rw-r--r--recipes-support/vboxguestdrivers/vboxguestdrivers_6.1.2.bb81
14 files changed, 192 insertions, 132 deletions
diff --git a/recipes-support/icu/icu_74-1.bbappend b/recipes-support/icu/icu_74-1.bbappend
new file mode 100644
index 00000000..cf4061e9
--- /dev/null
+++ b/recipes-support/icu/icu_74-1.bbappend
@@ -0,0 +1 @@
+require ${@bb.utils.contains('AGL_FEATURES', 'agldemo', 'icu_74-1_agldemo.inc', '', d)}
diff --git a/recipes-support/icu/icu_74-1_agldemo.inc b/recipes-support/icu/icu_74-1_agldemo.inc
new file mode 100644
index 00000000..957fe083
--- /dev/null
+++ b/recipes-support/icu/icu_74-1_agldemo.inc
@@ -0,0 +1,27 @@
+PACKAGECONFIG:append = " make-icudata"
+
+do_compile:append () {
+ # just adding below does not enforce a full rebuild
+ # thus force rebuild and investigate
+ echo "new"
+}
+
+do_make_icudata:class-native () {
+ ${@bb.utils.contains('PACKAGECONFIG', 'make-icudata', '', 'exit 0', d)}
+ cd ${S}
+ rm -rf data
+ cp -a ${WORKDIR}/data .
+ AR='${BUILD_AR}' \
+ CC='${BUILD_CC}' \
+ CPP='${BUILD_CPP}' \
+ CXX='${BUILD_CXX}' \
+ RANLIB='${BUILD_RANLIB}' \
+ CFLAGS='${BUILD_CFLAGS}' \
+ CPPFLAGS='${BUILD_CPPFLAGS}' \
+ CXXFLAGS='${BUILD_CXXFLAGS}' \
+ LDFLAGS='${BUILD_LDFLAGS}' \
+ ICU_DATA_FILTER_FILE=${WORKDIR}/filter.json \
+ ./runConfigureICU Linux --with-data-packaging=archive
+ oe_runmake
+ install -Dm644 ${S}/data/out/icudt${ICU_MAJOR_VER}l.dat ${S}/data/in/icudt${ICU_MAJOR_VER}l.dat
+}
diff --git a/recipes-support/lin-config/lin-config_git.bb b/recipes-support/lin-config/lin-config_git.bb
index e83f7160..a8c8f4fc 100644
--- a/recipes-support/lin-config/lin-config_git.bb
+++ b/recipes-support/lin-config/lin-config_git.bb
@@ -1,14 +1,14 @@
DESCRIPTION = "lin-config tool for the sllin driver module"
-LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/GPL-2.0;md5=801f80980d171dd6425610833a22dbe6"
+LICENSE = "GPL-2.0-only"
+LIC_FILES_CHKSUM = "file://lin_config.c;beginline=4;endline=9;md5=196a29df19a30dbc752937bdfc819d7a"
DEPENDS += "libnl libxml2"
-SRC_URI = "git://github.com/trainman419/linux-lin.git;protocol=https"
-SRCREV = "155d885e8ccc907a56f6c86c4b159fac27ef6fec"
+SRC_URI = "git://github.com/lin-bus/linux-lin.git;protocol=https;branch=master"
+SRCREV = "beb057d7505e0c4d7c61f3f4927b76916ec00e88"
S = "${WORKDIR}/git/lin_config/src"
-SRC_URI_append = " \
+SRC_URI:append = " \
file://0001-Change-Makefile-to-use-pkg-config-for-libxml-2.0.patch \
file://0002-Change-Makefile-to-use-LDFLAGS.patch \
"
@@ -19,7 +19,7 @@ PV = "0.1+git${SRCPV}"
do_configure[noexec] = "1"
-do_install_append() {
+do_install:append() {
install -d ${D}/${bindir}
install -m 755 ${S}/lin_config ${D}/${bindir}
}
diff --git a/recipes-support/qemu-set-display/qemu-set-display_git.bb b/recipes-support/qemu-set-display/qemu-set-display_git.bb
new file mode 100644
index 00000000..870ac6b8
--- /dev/null
+++ b/recipes-support/qemu-set-display/qemu-set-display_git.bb
@@ -0,0 +1,14 @@
+DESCRIPTION = "Helper tool to enable the secondandary vnc displays"
+LICENSE = "GPL-2.0-or-later"
+LIC_FILES_CHKSUM = "file://COPYING;md5=361b6b837cad26c6900a926b62aada5f"
+
+
+SRC_URI = "git://github.com/dhobsong/qemu-set-display.git;protocol=https;branch=main"
+SRCREV = "${AUTOREV}"
+S = "${WORKDIR}/git"
+
+DEPENDS += "libvncserver"
+
+inherit meson pkgconfig
+
+PV = "0.1+git${SRCPV}"
diff --git a/recipes-support/rng-tools/files/default b/recipes-support/rng-tools/files/default
new file mode 100644
index 00000000..6e2f2ca9
--- /dev/null
+++ b/recipes-support/rng-tools/files/default
@@ -0,0 +1 @@
+EXTRA_ARGS="-r /dev/hwrng -x jitter"
diff --git a/recipes-support/rng-tools/rng-tools_%.bbappend b/recipes-support/rng-tools/rng-tools_%.bbappend
new file mode 100644
index 00000000..8ec7f750
--- /dev/null
+++ b/recipes-support/rng-tools/rng-tools_%.bbappend
@@ -0,0 +1 @@
+require ${@bb.utils.contains('AGL_FEATURES', 'agldemo', 'rng-tools_agldemo.inc', '', d)}
diff --git a/recipes-support/rng-tools/rng-tools_agldemo.inc b/recipes-support/rng-tools/rng-tools_agldemo.inc
new file mode 100644
index 00000000..283c8a4c
--- /dev/null
+++ b/recipes-support/rng-tools/rng-tools_agldemo.inc
@@ -0,0 +1,7 @@
+# Pick up modified default configuration for virtual machines
+# that disables jitter entropy source, as it is not useful when
+# the VMs are effectively driven by the host RNG via virtio-rng.
+# This also helps boot speed, as otherwise the guests have rngd
+# potentially somewhat pointlessly burning a lot of CPU on boot,
+# in addition to the host's own rngd.
+FILESEXTRAPATHS:prepend:virtio-all := "${THISDIR}/files:"
diff --git a/recipes-support/udisks/files/99-udisks2.rules b/recipes-support/udisks/files/99-udisks2.rules
new file mode 100644
index 00000000..996e4343
--- /dev/null
+++ b/recipes-support/udisks/files/99-udisks2.rules
@@ -0,0 +1,5 @@
+# UDISKS_FILESYSTEM_SHARED
+# ==1: mount filesystem to a shared directory (/media/VolumeName)
+# ==0: mount filesystem to a private directory (/run/media/$USER/VolumeName)
+# See udisks(8)
+ENV{ID_FS_USAGE}=="filesystem|other|crypto", ENV{UDISKS_FILESYSTEM_SHARED}="1"
diff --git a/recipes-support/udisks/files/automount.service b/recipes-support/udisks/files/automount.service
new file mode 100644
index 00000000..b1651519
--- /dev/null
+++ b/recipes-support/udisks/files/automount.service
@@ -0,0 +1,9 @@
+[Unit]
+Description=Automount Disk Manager
+After=udisks2.service
+
+[Service]
+ExecStart=/usr/libexec/automount.sh
+
+[Install]
+WantedBy=multi-user.target
diff --git a/recipes-support/udisks/files/automount.sh b/recipes-support/udisks/files/automount.sh
new file mode 100644
index 00000000..23679191
--- /dev/null
+++ b/recipes-support/udisks/files/automount.sh
@@ -0,0 +1,93 @@
+#!/bin/sh
+
+MOUNT_OPTIONS_DEFAULT="ro,noexec"
+MOUNT_OPTIONS_VFAT="umask=0022"
+MOUNT_OPTIONS_EXT=""
+MOUNT_OPTIONS_NTFS=""
+MOUNT_OPTIONS_ISO9660=""
+
+VERBOSE=false
+
+# Source a configuration file that can override mount options if exists
+[ -f /etc/automount.conf ] && . /etc/automount.conf
+
+mount_device() {
+ MOUNT_OPTIONS=""
+ FSTYPE="$( udevadm info "${1}" "${2}" | awk -v FS== '/ID_FS_TYPE/ {print $2}' )"
+ DEVNAME="$( udevadm info "${1}" "${2}" | awk -v FS== '/DEVNAME/ {print $2}' )"
+ case $FSTYPE in
+ vfat)
+ MOUNT_OPTIONS="${MOUNT_OPTIONS_VFAT}"
+ ;;
+ ext[2-4])
+ MOUNT_OPTIONS="${MOUNT_OPTIONS_EXT}"
+ ;;
+ ntfs)
+ MOUNT_OPTIONS="${MOUNT_OPTIONS_NTFS}"
+ ;;
+ iso9660)
+ MOUNT_OPTIONS="${MOUNT_OPTIONS_ISO9660}"
+ ;;
+ "")
+ if $VERBOSE; then
+ echo "[INFO][${DEVNAME}] Not a partition with a filesystem!"
+ fi
+ return
+ ;;
+ *)
+ echo "[WARNING][${DEVNAME}] The filesystem '${FSTYPE}' is not supported!"
+ return
+ ;;
+ esac
+
+ if [ -n "${MOUNT_OPTIONS_DEFAULT}" ]; then
+ if [ -z "${MOUNT_OPTIONS}" ]; then
+ MOUNT_OPTIONS="${MOUNT_OPTIONS_DEFAULT}"
+ else
+ MOUNT_OPTIONS="${MOUNT_OPTIONS_DEFAULT},${MOUNT_OPTIONS}"
+ fi
+ fi
+ if $VERBOSE; then
+ echo "[INFO][${DEVNAME}] Mounting a ${FSTYPE}'s filesystem with options: ${MOUNT_OPTIONS}"
+ fi
+
+ if command -v udisksctl > /dev/null 2>&1; then
+ if [ -n "${MOUNT_OPTIONS}" ]; then
+ MOUNT_OPTIONS="-o ${MOUNT_OPTIONS}"
+ fi
+ udisksctl mount -t "${FSTYPE}" -b "${DEVNAME}" ${MOUNT_OPTIONS}
+ elif command -v udisks >/dev/null 2>&1; then
+ if [ -n "${MOUNT_OPTIONS}" ]; then
+ MOUNT_OPTIONS="--mount-options ${MOUNT_OPTIONS}"
+ fi
+ udisks --mount-fstype "${FSTYPE}" --mount "${DEVNAME}" ${MOUNT_OPTIONS}
+ else
+ echo "[ERROR] Unable to find binary for mounting ${DEVNAME}" >&2
+ return
+ fi
+ if [ "$?" -ne "0" ]; then
+ echo "[ERROR] Failed to mount the device ${DEVNAME} of type ${FSTYPE} with options ${MOUNT_OPTIONS}" >&2
+ fi
+}
+
+# At startup, remove empty directories that may exists
+rmdir /media/* > /dev/null 2>&1
+
+# Mount already plugged devices
+for DEVICE in $( lsblk -dn | cut -d' ' -f1 ); do
+ REMOVABLE=$( cat "/sys/block/${DEVICE}/removable" )
+ if [ "${REMOVABLE}" -eq "1" ]; then
+ for PART in "/dev/${DEVICE}"*; do
+ mount_device -n "${PART}"
+ done
+ fi
+done
+
+# Wait for plug events and mount devices
+stdbuf -oL -- udevadm monitor --udev -s block |
+while read -r -- _ _ EVENT DEVPATH _
+do
+ if [ "${EVENT}" = "add" ]; then
+ mount_device -p "/sys/${DEVPATH}"
+ fi
+done
diff --git a/recipes-support/udisks/udisks2_%.bbappend b/recipes-support/udisks/udisks2_%.bbappend
new file mode 100644
index 00000000..a36862b9
--- /dev/null
+++ b/recipes-support/udisks/udisks2_%.bbappend
@@ -0,0 +1 @@
+require ${@bb.utils.contains('AGL_FEATURES', 'agldemo', 'udisks2_agldemo.inc', '', d)}
diff --git a/recipes-support/udisks/udisks2_agldemo.inc b/recipes-support/udisks/udisks2_agldemo.inc
new file mode 100644
index 00000000..a3b2ac4d
--- /dev/null
+++ b/recipes-support/udisks/udisks2_agldemo.inc
@@ -0,0 +1,27 @@
+FILESEXTRAPATHS:prepend := "${THISDIR}/files:"
+
+SRC_URI:append = " file://automount.service \
+ file://automount.sh \
+ file://99-udisks2.rules \
+"
+
+SYSTEMD_AUTO_ENABLE = "enable"
+SYSTEMD_SERVICE:${PN}:append = " automount.service"
+
+do_install:append () {
+ sed -i 's/^WantedBy=.*/WantedBy=multi-user.target/' ${D}${systemd_unitdir}/system/udisks2.service
+
+ install -d ${D}${base_libdir}/systemd/system
+ install -m 0644 ${WORKDIR}/automount.service ${D}${systemd_unitdir}/system
+
+ install -d ${D}${libexecdir}
+ install -m 0755 ${WORKDIR}/automount.sh ${D}${libexecdir}/automount.sh
+
+ install -d ${D}${sysconfdir}/udev/rules.d
+ install -m 0644 ${WORKDIR}/99-udisks2.rules ${D}${sysconfdir}/udev/rules.d
+}
+
+FILES:${PN}:append = " \
+ ${base_libdir}/systemd/system/automount.service \
+ ${libexecdir}/automount.sh \
+"
diff --git a/recipes-support/vboxguestdrivers/vboxguestdrivers/Makefile.utils b/recipes-support/vboxguestdrivers/vboxguestdrivers/Makefile.utils
deleted file mode 100644
index 495601f0..00000000
--- a/recipes-support/vboxguestdrivers/vboxguestdrivers/Makefile.utils
+++ /dev/null
@@ -1,45 +0,0 @@
-## -----------------------------------------------------------------------
-##
-## Copyright 2001-2008 H. Peter Anvin - All Rights Reserved
-##
-## This program is free software; you can redistribute it and/or modify
-## it under the terms of the GNU General Public License as published by
-## the Free Software Foundation, Inc., 53 Temple Place Ste 330,
-## Boston MA 02111-1307, USA; either version 2 of the License, or
-## (at your option) any later version; incorporated herein by reference.
-##
-## -----------------------------------------------------------------------
-
-INCLUDES = -I. -I../vboxsf -I../vboxsf/include
-MOD_DEFS = -DRT_OS_LINUX -DIN_RING0 -DIN_RT_R0 \
- -DIN_SUP_R0 -DVBOX -DVBOX_WITH_HGCM -DIN_MODULE -DIN_GUEST_R0
-CFLAGS = ${INCLUDES} ${MOD_DEFS}
-LDFLAGS =
-
-SRCS = mount.vboxsf.c \
- vbsfmount.c
-
-OBJS = $(patsubst %.c,%.o,$(notdir $(SRCS)))
-
-.SUFFIXES: .c .o .i .s .S
-
-
-all: mount.vboxsf
-
-clean:
- -rm -f *.o mount.vboxsf
-
-spotless: clean
- -rm -f *~
-
-mount.vboxsf: $(OBJS)
- $(CC) $(LDFLAGS) -o $@ $^
-
-%.o: %.c
- $(CC) $(UMAKEDEPS) $(CFLAGS) -c -o $@ $<
-%.i: %.c
- $(CC) $(UMAKEDEPS) $(CFLAGS) -E -o $@ $<
-%.s: %.c
- $(CC) $(UMAKEDEPS) $(CFLAGS) -S -o $@ $<
-
--include .*.d *.tmp
diff --git a/recipes-support/vboxguestdrivers/vboxguestdrivers_6.1.2.bb b/recipes-support/vboxguestdrivers/vboxguestdrivers_6.1.2.bb
deleted file mode 100644
index 62c2b509..00000000
--- a/recipes-support/vboxguestdrivers/vboxguestdrivers_6.1.2.bb
+++ /dev/null
@@ -1,81 +0,0 @@
-SUMMARY = "VirtualBox Linux Guest Drivers"
-SECTION = "core"
-LICENSE = "GPL-2.0"
-LIC_FILES_CHKSUM = "file://${WORKDIR}/${VBOX_NAME}/COPYING;md5=e197d5641bb35b29d46ca8c4bf7f2660"
-
-DEPENDS = "virtual/kernel"
-
-inherit module kernel-module-split
-
-COMPATIBLE_MACHINE = "(qemux86|qemux86-64)"
-
-VBOX_NAME = "VirtualBox-${PV}"
-
-SRC_URI = "http://download.virtualbox.org/virtualbox/${PV}/${VBOX_NAME}.tar.bz2 \
- file://Makefile.utils \
-"
-SRC_URI[md5sum] = "f4f42fd09857556b04b803fb99cc6905"
-SRC_URI[sha256sum] = "4326576e8428ea3626194fc82646347576e94c61f11d412a669fc8a10c2a1e67"
-
-S = "${WORKDIR}/vbox_module"
-
-export BUILD_TARGET_ARCH="${ARCH}"
-export BUILD_TARGET_ARCH_x86-64="amd64"
-
-EXTRA_OEMAKE += "KERN_DIR='${WORKDIR}/${KERNEL_VERSION}/build' KBUILD_VERBOSE=1"
-
-# otherwise 5.2.22 builds just vboxguest
-MAKE_TARGETS = "all"
-
-addtask export_sources after do_patch before do_configure
-
-do_export_sources() {
- mkdir -p "${S}"
- ${WORKDIR}/${VBOX_NAME}/src/VBox/Additions/linux/export_modules.sh ${T}/vbox_modules.tar.gz
- tar -C "${S}" -xzf ${T}/vbox_modules.tar.gz
-
- # add a mount utility to use shared folder from VBox Addition Source Code
- mkdir -p "${S}/utils"
- install ${WORKDIR}/${VBOX_NAME}/src/VBox/Additions/linux/sharedfolders/mount.vboxsf.c ${S}/utils
- install ${WORKDIR}/${VBOX_NAME}/src/VBox/Additions/linux/sharedfolders/vbsfmount.c ${S}/utils
- install ${S}/../Makefile.utils ${S}/utils/Makefile
-
-}
-
-do_configure_prepend() {
- # vboxguestdrivers/5.2.6-r0/vbox_module/vboxguest/Makefile.include.header:99: *** The variable KERN_DIR must be a kernel build folder and end with /build without a trailing slash, or KERN_VER must be set. Stop.
- # vboxguestdrivers/5.2.6-r0/vbox_module/vboxguest/Makefile.include.header:108: *** The kernel build folder path must end in <version>/build, or the variable KERN_VER must be set. Stop.
- mkdir -p ${WORKDIR}/${KERNEL_VERSION}
- ln -snf ${STAGING_KERNEL_DIR} ${WORKDIR}/${KERNEL_VERSION}/build
-}
-
-# compile and install mount utility
-do_compile() {
- oe_runmake all
- oe_runmake 'LD=${CC}' 'LDFLAGS=${LDFLAGS}' -C ${S}/utils
- if ! [ -e vboxguest.ko -a -e vboxsf.ko -a -e vboxvideo.ko ] ; then
- echo "ERROR: One of vbox*.ko modules wasn't built"
- exit 1
- fi
-}
-
-module_do_install() {
- MODULE_DIR=${D}${nonarch_base_libdir}/modules/${KERNEL_VERSION}/kernel/misc
- install -d $MODULE_DIR
- install -m 644 vboxguest.ko $MODULE_DIR
- install -m 644 vboxsf.ko $MODULE_DIR
- install -m 644 vboxvideo.ko $MODULE_DIR
-}
-
-do_install_append() {
- install -d ${D}${base_sbindir}
- install -m 755 ${S}/utils/mount.vboxsf ${D}${base_sbindir}
-}
-
-PACKAGES += "kernel-module-vboxguest kernel-module-vboxsf kernel-module-vboxvideo"
-RRECOMMENDS_${PN} += "kernel-module-vboxguest kernel-module-vboxsf kernel-module-vboxvideo"
-
-FILES_${PN} = "${base_sbindir}"
-
-# autoload if installed
-KERNEL_MODULE_AUTOLOAD += "vboxguest vboxsf vboxvideo"