diff options
Diffstat (limited to 'recipes-support')
-rw-r--r-- | recipes-support/icu/icu_74-1.bbappend | 1 | ||||
-rw-r--r-- | recipes-support/icu/icu_74-1_agldemo.inc | 27 | ||||
-rw-r--r-- | recipes-support/lin-config/lin-config_git.bb | 12 | ||||
-rw-r--r-- | recipes-support/qemu-set-display/qemu-set-display_git.bb | 14 | ||||
-rw-r--r-- | recipes-support/rng-tools/files/default | 1 | ||||
-rw-r--r-- | recipes-support/rng-tools/rng-tools_%.bbappend | 1 | ||||
-rw-r--r-- | recipes-support/rng-tools/rng-tools_agldemo.inc | 7 | ||||
-rw-r--r-- | recipes-support/udisks/files/99-udisks2.rules | 5 | ||||
-rw-r--r-- | recipes-support/udisks/files/automount.service | 9 | ||||
-rw-r--r-- | recipes-support/udisks/files/automount.sh | 93 | ||||
-rw-r--r-- | recipes-support/udisks/udisks2_%.bbappend | 1 | ||||
-rw-r--r-- | recipes-support/udisks/udisks2_agldemo.inc | 27 | ||||
-rw-r--r-- | recipes-support/vboxguestdrivers/vboxguestdrivers/Makefile.utils | 45 | ||||
-rw-r--r-- | recipes-support/vboxguestdrivers/vboxguestdrivers_6.1.2.bb | 81 |
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" |