1
0
forked from brl/citadel

Big Upgrade: GNOME 40 Yocto 3.3 meta-rust meta-clang meta-intel

Updated Recipes

  * colord 1.4.5
  * dconf 0.40.0
  * gdm 40.0
  * geoclue 2.5.7
  * geocode-glib 3.26.2
  * gevix2_ 0.12.1
  * gjs 1.68.0
  * glib2 2.68.0
  * gnome-autoar 0.3.1
  * gnome-backgrounds 40.0
  * gnome-control-center 40.0
  * gnome-desktop 40.0
  * gnome-disk-utility 40.1
  * gnome-keyring 40.0
  * gnome-screenshot 40.0
  * gnome-session 40.1.1
  * gnome-settings-daemon 40.0.1
  * gnome-shell 40.0
  * gnome-system-monitor 40.1
  * gnome-terminal 3.40.1
  * gsettings-desktop-schemas 40.0
  * ibus 1.5.23
  * iwd 1.13
  * kernel 5.12.1
  * keyutils 1.6.1
  * libgee 0.20.4
  * libgit2  1.1.0
  * libgweather 40.0
  * libhandy 1.2.0 (poky)
  * libseccomp 2.5.1
  * libssh2 1.9.0 (poky)
  * lvm2 2.03.11
  * meson 0.57.1 (poky)
  * mutter 40.0
  * nano 5.6
  * NetworkManager 1.30.2
  * network-manager-applet 1.18.0
  * nspr 4.29
  * pango 1.48.2 (poky)
  * plymouth 0.9.5+git
  * udisks 2.9.2
  * upower 0.99.11
  * vte 0.64.0
  * yelp-tools 3.32.2
  * yelp-xsl 3.36.0
This commit is contained in:
Bruce Leidl 2021-05-05 08:45:55 -04:00
parent 5da375fbfc
commit 64d91cb68c
187 changed files with 2148 additions and 2342 deletions

View File

@ -2,7 +2,7 @@ DISTRO = "citadel-distro"
DISTRO_NAME = "Subgraph OS Citadel"
DISTRO_VERSION = "1.0"
CITADEL_DEFAULT_DISTRO_FEATURES = "acl alsa argp bluetooth ext2 largefile systemd usbhost wifi xattr pci x11 usrmerge wayland opengl pam"
CITADEL_DEFAULT_DISTRO_FEATURES = "acl alsa argp bluetooth ext2 largefile systemd usbhost wifi xattr pci x11 usrmerge wayland opengl pam polkit seccomp"
DISTRO_FEATURES ?= "${DISTRO_FEATURES_LIBC} ${CITADEL_DEFAULT_DISTRO_FEATURES}"
@ -37,6 +37,8 @@ BUILD_REPRODUCIBLE_BINARIES = "1"
INHERIT += "reproducible_build"
PREFERRED_RPROVIDER_libdevmapper-native = "libdevmapper-native"
# Override meta-rust dependencies.
#
# Instead of bringing in all of openembedded, we imported the two recipes
@ -48,4 +50,5 @@ INHERIT += "reproducible_build"
LAYERDEPENDS_rust-layer = "core"
require conf/distro/include/security_flags.inc
require conf/distro/include/rust_versions.inc

View File

@ -15,7 +15,7 @@ BBFILE_COLLECTIONS += "citadel"
BBFILE_PATTERN_citadel = "^${LAYERDIR}/"
BBFILE_PRIORITY_citadel = "5"
LAYERSERIES_COMPAT_citadel = "dunfell"
LAYERSERIES_COMPAT_citadel = "hardknott"
# This should only be incremented on significant changes that will
# cause compatibility issues with other layers

View File

@ -1,20 +0,0 @@
# headers needed to compile gcc plugins, needed for grsec gcc plugins during kernel build
do_install_append () {
cp ${S}/include/libiberty.h ${D}${libdir}/gcc/${TARGET_SYS}/${BINV}/plugin/include/
cp ${S}/gcc/mem-stats-traits.h ${D}${libdir}/gcc/${TARGET_SYS}/${BINV}/plugin/include/
cp ${S}/gcc/hash-traits.h ${D}${libdir}/gcc/${TARGET_SYS}/${BINV}/plugin/include/
cp ${S}/gcc/hash-map-traits.h ${D}${libdir}/gcc/${TARGET_SYS}/${BINV}/plugin/include/
cp ${S}/gcc/mem-stats.h ${D}${libdir}/gcc/${TARGET_SYS}/${BINV}/plugin/include/
cp ${S}/gcc/memory-block.h ${D}${libdir}/gcc/${TARGET_SYS}/${BINV}/plugin/include/
cp ${S}/gcc/config/i386/linux64.h ${D}${libdir}/gcc/${TARGET_SYS}/${BINV}/plugin/include/config/i386
cp ${S}/gcc/brig-builtins.def ${D}${libdir}/gcc/${TARGET_SYS}/${BINV}/plugin/include/
cp ${S}/gcc/expr.h ${D}${libdir}/gcc/${TARGET_SYS}/${BINV}/plugin/include/
cp ${S}/gcc/tree-vrp.h ${D}${libdir}/gcc/${TARGET_SYS}/${BINV}/plugin/include/
cp ${S}/gcc/builtins.h ${D}${libdir}/gcc/${TARGET_SYS}/${BINV}/plugin/include/
cp ${S}/gcc/backend.h ${D}${libdir}/gcc/${TARGET_SYS}/${BINV}/plugin/include/
cp ${S}/gcc/poly-int.h ${D}${libdir}/gcc/${TARGET_SYS}/${BINV}/plugin/include/
cp ${S}/gcc/poly-int-types.h ${D}${libdir}/gcc/${TARGET_SYS}/${BINV}/plugin/include/
cp ${S}/gcc/wide-int-bitmask.h ${D}${libdir}/gcc/${TARGET_SYS}/${BINV}/plugin/include/
}

View File

@ -0,0 +1 @@
PACKAGECONFIG = "lib"

View File

@ -4,5 +4,6 @@
:OUTPUT DROP [0:0]
-A INPUT -m state --state ESTABLISHED -j ACCEPT
-A OUTPUT -p udp -m udp --sport 68 --dport 67 -j ACCEPT
-A OUTPUT -p udp -m owner --uid-owner 996 -j ACCEPT
-A OUTPUT -j LOG --log-uid --log-prefix 'iptables'
COMMIT

View File

@ -1 +1 @@
PACKAGECONFIG = ""
#PACKAGECONFIG = ""

View File

@ -1,7 +1,2 @@
PACKAGECONFIG = "odirect udev"
# files/lvm.conf is customized to prevent writing to /etc
FILESEXTRAPATHS_prepend := "${THISDIR}/lvm2:"
#FILES_${PN}-dev += "${libdir}/liblvm2cmd.so*"

View File

@ -1 +0,0 @@
PACKAGECONFIG_append = " gallium "

View File

@ -2,7 +2,6 @@
Description=Watch /run/NetworkManager
[Path]
PathExists=/run/NetworkManager/resolv.conf
PathChanged=/run/NetworkManager
MakeDirectory=true

View File

@ -1,6 +1,8 @@
# Append recipe from meta-openembedded/meta-networking
FILESEXTRAPATHS_prepend := "${THISDIR}/networkmanager:"
SRC_URI += "\
file://NetworkManager.conf \
file://watch-resolvconf.path \
file://watch-resolvconf.service \
"
@ -8,6 +10,14 @@ SRC_URI += "\
SYSTEMD_SERVICE_${PN} += "watch-resolvconf.path"
do_install_append() {
install -m 0644 ${WORKDIR}/NetworkManager.conf ${D}${sysconfdir}/NetworkManager/
install -m 644 ${WORKDIR}/watch-resolvconf.path ${D}${systemd_system_unitdir}
install -m 644 ${WORKDIR}/watch-resolvconf.service ${D}${systemd_system_unitdir}
}
PACKAGECONFIG = "nss systemd polkit"
PACKAGECONFIG[wifi] = ""
EXTRA_OECONF = "\
--with-iwd \
--enable-wifi=yes \
--without-iptables \
"

View File

@ -1,46 +0,0 @@
From 64a1a0c2b29860e9e2d5afdbcb2336f38fba5909 Mon Sep 17 00:00:00 2001
From: Cole Robinson <crobinso@redhat.com>
Date: Tue, 4 Aug 2020 17:04:50 -0400
Subject: [PATCH] BaseTools: fix ucs-2 lookup on python 3.9
python3.9 changed/fixed codec.register behavior to always replace
hyphen with underscore for passed in codec names:
https://bugs.python.org/issue37751
So the custom Ucs2Search needs to be adapted to handle 'ucs_2' in
addition to existing 'ucs-2' for back compat.
This fixes test failures on python3.9, example:
======================================================================
FAIL: testUtf16InUniFile (CheckUnicodeSourceFiles.Tests)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/builddir/build/BUILD/edk2-edk2-stable202002/BaseTools/Source/Python/AutoGen/UniClassObject.py", line 375, in PreProcess
FileIn = UniFileClassObject.OpenUniFile(LongFilePath(File.Path))
File "/builddir/build/BUILD/edk2-edk2-stable202002/BaseTools/Source/Python/AutoGen/UniClassObject.py", line 303, in OpenUniFile
UniFileClassObject.VerifyUcs2Data(FileIn, FileName, Encoding)
File "/builddir/build/BUILD/edk2-edk2-stable202002/BaseTools/Source/Python/AutoGen/UniClassObject.py", line 312, in VerifyUcs2Data
Ucs2Info = codecs.lookup('ucs-2')
LookupError: unknown encoding: ucs-2
Signed-off-by: Cole Robinson <crobinso@redhat.com>
---
BaseTools/Source/Python/AutoGen/UniClassObject.py | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/BaseTools/Source/Python/AutoGen/UniClassObject.py b/BaseTools/Source/Python/AutoGen/UniClassObject.py
index b2895f7e5c6..883c2356e0c 100644
--- a/BaseTools/Source/Python/AutoGen/UniClassObject.py
+++ b/BaseTools/Source/Python/AutoGen/UniClassObject.py
@@ -152,7 +152,7 @@ def encode(self, input, errors='strict'):
TheUcs2Codec = Ucs2Codec()
def Ucs2Search(name):
- if name == 'ucs-2':
+ if name in ['ucs-2', 'ucs_2']:
return codecs.CodecInfo(
name=name,
encode=TheUcs2Codec.encode,

View File

@ -1,47 +0,0 @@
From 43bec9ea3d56f3662ede78023baa2a791b66acac Mon Sep 17 00:00:00 2001
From: Cole Robinson <crobinso@redhat.com>
Date: Wed, 12 Aug 2020 01:28:18 +0800
Subject: [PATCH] BaseTools: Work around array.array.tostring() removal in
python 3.9
In python3, array.array.tostring() was a compat alias for tobytes().
tostring() was removed in python 3.9.
Convert this to use tolist() which should be valid for all python
versions.
This fixes this build error on python3.9:
(Python 3.9.0b5 on linux) Traceback (most recent call last):
File "/root/edk2/edk2-edk2-stable202002/BaseTools/BinWrappers/PosixLike/../../Source/Python/Trim/Trim.py", line 593, in Main
GenerateVfrBinSec(CommandOptions.ModuleName, CommandOptions.DebugDir, CommandOptions.OutputFile)
File "/root/edk2/edk2-edk2-stable202002/BaseTools/BinWrappers/PosixLike/../../Source/Python/Trim/Trim.py", line 449, in GenerateVfrBinSec
VfrUniOffsetList = GetVariableOffset(MapFileName, EfiFileName, VfrNameList)
File "/root/edk2/edk2-edk2-stable202002/BaseTools/Source/Python/Common/Misc.py", line 88, in GetVariableOffset
return _parseForGCC(lines, efifilepath, varnames)
File "/root/edk2/edk2-edk2-stable202002/BaseTools/Source/Python/Common/Misc.py", line 151, in _parseForGCC
efisecs = PeImageClass(efifilepath).SectionHeaderList
File "/root/edk2/edk2-edk2-stable202002/BaseTools/Source/Python/Common/Misc.py", line 1638, in __init__
if ByteArray.tostring() != b'PE\0\0':
AttributeError: 'array.array' object has no attribute 'tostring'
Signed-off-by: Cole Robinson <crobinso@redhat.com>
Reviewed-by: Yuwei Chen <yuwei.chen@intel.com>
Reviewed-by: Bob Feng <bob.c.feng@intel.com>
---
BaseTools/Source/Python/Common/Misc.py | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/BaseTools/Source/Python/Common/Misc.py b/BaseTools/Source/Python/Common/Misc.py
index ad556710802..4be7957138a 100755
--- a/BaseTools/Source/Python/Common/Misc.py
+++ b/BaseTools/Source/Python/Common/Misc.py
@@ -1635,7 +1635,7 @@ def __init__(self, PeFile):
ByteArray = array.array('B')
ByteArray.fromfile(PeObject, 4)
# PE signature should be 'PE\0\0'
- if ByteArray.tostring() != b'PE\0\0':
+ if ByteArray.tolist() != [ord('P'), ord('E'), 0, 0]:
self.ErrorInfo = self.FileName + ' has no valid PE signature PE00'
return

View File

@ -1,9 +0,0 @@
FILESEXTRAPATHS_prepend := "${THISDIR}/ovmf:"
# Fixes build failure when host Python updated to 3.9
SRC_URI += "\
file://python3.9-fix-ucs2-lookup.patch \
file://python3.9-workaround-array-tostring-removal.patch \
"

View File

@ -0,0 +1,2 @@
PACKAGECONFIG = "pango drm"

View File

@ -1,4 +1,4 @@
CONFFILES_${PN} += "${sysconfdir}/machine-id"
FILES_${PN} += "${sysconfdir}/machine-id"
do_install_append() {
install -d ${D}${sysconfdir}

View File

@ -6,7 +6,7 @@ RDEPENDS_${PN}_remove = "update-rc.d"
ALTERNATIVE_${PN}_remove = "resolv-conf"
GROUPADD_PARAM_${PN} += "; -r kvm"
GROUPADD_PARAM_${PN} += "-r wheel; -r kvm; -r render"
PACKAGECONFIG = "\
efi acl ldconfig pam usrmerge rfkill backlight binfmt hostnamed localed logind machined myhostname \
nss polkit randomseed seccomp timedated utmp timesyncd kmod sysusers gshadow cryptsetup \

View File

@ -26,12 +26,11 @@ do_compile() {
do_install() {
install -d ${D}${datadir}/glib-2.0/schemas
install -d ${D}${sysconfdir}/skel/.config/dconf
install -m 0755 -d ${D}${datadir}/factory/skel
install -m 0755 -d ${D}${datadir}/factory/skel/.config/dconf
install -m 0755 -d ${D}${datadir}/factory/storage/citadel-state/citadel-dconf
install -m 644 ${S}/gsettings/90_citadel.gschema.override ${D}${datadir}/glib-2.0/schemas
install -m 644 ${WORKDIR}/dconf-output/user ${D}${sysconfdir}/skel/.config/dconf
install -m 644 ${WORKDIR}/dconf-output/citadel ${D}${datadir}/factory/skel/.config/dconf/user
install -m 644 ${WORKDIR}/dconf-output/citadel ${D}${datadir}/factory/storage/citadel-state/citadel-dconf/user
}
FILES_${PN} = "/"

View File

@ -25,7 +25,6 @@ SYSCTL_CONFIG = "\
UDEV_RULES = "\
file://udev/citadel-network.rules \
file://udev/pci-pm.rules \
file://udev/scsi-alpm.rules \
"
DEFAULT_PASSWORD = "\
file://citadel-setpassword.sh \
@ -60,6 +59,7 @@ SRC_URI = "\
file://apt-cacher-ng/acng.conf \
file://apt-cacher-ng/security.conf \
file://iwd/main.conf \
file://pulse/cookie \
${DEFAULT_REALM_UNITS} \
${MODPROBE_CONFIG} \
${SYSCTL_CONFIG} \
@ -89,12 +89,14 @@ do_install() {
install -m 0755 -d ${D}${sysconfdir}/skel/.config/nvim
install -m 0755 -d ${D}${sysconfdir}/tmpfiles.d
install -m 0755 -d ${D}${sysconfdir}/udev/rules.d
# install -m 0755 -d ${D}${sysconfdir}/NetworkManager
install -m 0755 -d ${D}${sysconfdir}/polkit-1/rules.d
install -m 0755 -d ${D}${sysconfdir}/modprobe.d
install -m 0755 -d ${D}${sysconfdir}/sudoers.d
install -m 0755 -d ${D}${sysconfdir}/iwd
install -m 0755 -d ${D}${datadir}/factory/skel
install -m 0755 -d ${D}${datadir}/factory/home/root
install -m 0755 -d ${D}${datadir}/factory/home/citadel
install -m 0755 -d ${D}${datadir}/factory/home/citadel/.local/share/applications
install -m 0755 -d ${D}${datadir}/factory/home/citadel/.config/pulse
install -m 0700 -d ${D}${localstatedir}/lib/NetworkManager
install -m 0700 -d ${D}${localstatedir}/lib/NetworkManager/system-connections
install -m 0755 -d ${D}${datadir}/citadel
@ -141,16 +143,28 @@ do_install() {
install -m 0755 ${WORKDIR}/citadel-ifconfig.sh ${D}${libexecdir}
install -m 0644 ${WORKDIR}/udev/pci-pm.rules ${D}${sysconfdir}/udev/rules.d/
install -m 0644 ${WORKDIR}/udev/scsi-alpm.rules ${D}${sysconfdir}/udev/rules.d/
install -m 0644 ${WORKDIR}/citadel-installer.session ${D}${datadir}/gnome-session/sessions/
install -m 0644 ${WORKDIR}/citadel-installer.json ${D}${datadir}/gnome-shell/modes/
install -m 0644 ${WORKDIR}/citadel-installer-ui.desktop ${D}${datadir}/applications/
install -m 0644 ${WORKDIR}/citadel-installer.desktop ${D}${datadir}/wayland-sessions/
install -m 0644 ${WORKDIR}/share/dot.bashrc ${D}${datadir}/factory/skel/.bashrc
install -m 0644 ${WORKDIR}/share/dot.profile ${D}${datadir}/factory/skel/.profile
install -m 0644 ${WORKDIR}/share/dot.vimrc ${D}${datadir}/factory/skel/.vimrc
install -m 0644 ${WORKDIR}/share/dot.bashrc ${D}${datadir}/factory/home/root/.bashrc
install -m 0644 ${WORKDIR}/share/dot.profile ${D}${datadir}/factory/home/root/.profile
install -m 0644 ${WORKDIR}/share/dot.vimrc ${D}${datadir}/factory/home/root/.vimrc
install -m 0644 ${WORKDIR}/share/dot.bashrc ${D}${datadir}/factory/home/citadel/.bashrc
install -m 0644 ${WORKDIR}/share/dot.profile ${D}${datadir}/factory/home/citadel/.profile
install -m 0644 ${WORKDIR}/share/dot.vimrc ${D}${datadir}/factory/home/citadel/.vimrc
# To avoid these warnings:
#
# [pulseaudio] authkey.c: Failed to open cookie file '/home/citadel/.config/pulse/cookie': No such file or directory
#
install -m 0600 ${WORKDIR}/pulse/cookie ${D}${datadir}/factory/home/citadel/.config/pulse/cookie
install -m 0644 ${WORKDIR}/polkit/citadel.rules ${D}${sysconfdir}/polkit-1/rules.d/

View File

@ -1,19 +1,14 @@
C /var/cache - - - -
C /var/lib/AccountsService - - - -
C /var/lib/NetworkManager - - - -
C /var/lib/colord - - - -
C /var/lib/dbus - - - -
C /var/lib/dhcp - - - -
C /var/lib/gdm - - - -
C /var/lib/plymouth - - - -
C /var/lib/upower - - - -
C /var/log - - - -
C /var/spool - - - -
C /home - - - -
C /home/citadel - - - -
C /home/root - - - -
d /storage/citadel-state/citadel-dconf 0755 citadel citadel
d /home/citadel/.config 0755 citadel citadel
L /home/citadel/.config/dconf - - - - /storage/citadel-state/citadel-dconf
f /storage/citadel-state/resolv.conf 0644 root root
C /var/lib/AccountsService
C /var/lib/NetworkManager
C /var/lib/plymouth
C /var/lib/upower
d /storage/citadel-state 0755 root root
f /storage/citadel-state/resolv.conf 0644 root root
C /storage/citadel-state/citadel-dconf
Z /storage/citadel-state/citadel-dconf - citadel citadel
C /home
L /home/citadel/.config/dconf - - - - /storage/citadel-state/citadel-dconf
Z /home/citadel - citadel citadel

View File

@ -3,7 +3,7 @@ natural-scroll=true
tap-to-click=true
[org.gnome.desktop.background]
picture-uri='file:///usr/share/backgrounds/gnome/Icetwigs.jpg'
picture-uri='file:///usr/share/backgrounds/gnome/Loveles.jpg'
[org.gnome.desktop.screensaver]
picture-uri='file:////usr/share/gnome-control-center/pixmaps/noise-texture-light.png'
@ -41,7 +41,6 @@ antialiasing='rgba'
[org.gnome.settings-daemon.plugins.power]
sleep-inactive-ac-timeout=0
[org.gnome.desktop.input-sources]
xkb-options=['ctrl:nocaps']

View File

@ -1,5 +0,0 @@
#
# Only needed until this is fixed: https://lkml.org/lkml/2020/10/14/1101
#
[General]
ControlPortOverNL80211=False

View File

@ -2,4 +2,4 @@
Description=Wait for creation of /run/user/1000/pulse/native
[Path]
PathExists=/run/user/1000/pulse/native
PathChanged=/run/user/1000/pulse/native

View File

@ -4,7 +4,7 @@ After=run-user-1000.mount
Requires=run-user-1000.mount
[Path]
PathExists=/run/user/1000
PathChanged=/run/user/1000
[Install]
WantedBy=multi-user.target

View File

@ -4,3 +4,4 @@ Description=Watch run-user service
[Service]
Type=oneshot
ExecStart=/usr/bin/systemctl --no-block start launch-default-realm.path
RemainAfterExit=yes

View File

@ -1 +0,0 @@
ACTION=="add", SUBSYSTEM=="scsi_host", KERNEL=="host*", ATTR{link_power_management_policy}="med_power_with_dipm"

View File

@ -5,7 +5,7 @@ CITADEL_IMAGE_VERSION_rootfs = "1"
CITADEL_IMAGE_VERSION_extra = "1"
CITADEL_IMAGE_VERSION_kernel = "1"
CITADEL_KERNEL_VERSION = "5.10.11"
CITADEL_KERNEL_VERSION = "5.12.1"
CITADEL_KERNEL_CONFIG = "${COREBASE}/../meta-citadel/recipes-kernel/citadel-kernel/files/defconfig"

View File

@ -3,7 +3,7 @@ HOMEPAGE = ""
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
SECTION = ""
DEPENDS = "mtools-native syslinux-native dosfstools-native coreutils-native parted-native"
DEPENDS = "mtools-native syslinux syslinux-native dosfstools-native coreutils-native parted-native"
PACKAGE_ARCH = "${MACHINE_ARCH}"
@ -47,7 +47,7 @@ install_syslinux_files() {
install -d ${IMAGE_ROOTFS}/syslinux
make_syslinux_conf > ${IMAGE_ROOTFS}/syslinux/syslinux.cfg
for m in ${SYSLINUX_MODULES}; do
install ${RECIPE_SYSROOT_NATIVE}/usr/share/syslinux/$m ${IMAGE_ROOTFS}/syslinux
install ${RECIPE_SYSROOT}/usr/share/syslinux/$m ${IMAGE_ROOTFS}/syslinux
done
}
@ -170,7 +170,7 @@ write_installer_image() {
bbdebug 1 dd if=${BOOT_IMAGE} of=${INSTALLER_IMAGE} seek=${offset} count=${BOOT_IMAGE_SECTORS} conv=sparse,nocreat,notrunc
dd if=${BOOT_IMAGE} of=${INSTALLER_IMAGE} seek=${offset} count=${BOOT_IMAGE_SECTORS} conv=sparse,nocreat,notrunc
dd bs=440 count=1 conv=notrunc if=${RECIPE_SYSROOT_NATIVE}/usr/share/syslinux/mbr.bin of=${INSTALLER_IMAGE}
dd bs=440 count=1 conv=notrunc if=${RECIPE_SYSROOT}/usr/share/syslinux/mbr.bin of=${INSTALLER_IMAGE}
parted -s ${INSTALLER_IMAGE} unit s print
}

View File

@ -32,10 +32,6 @@ set_disable_root_password() {
setup_var() {
install -m 0755 -d ${IMAGE_ROOTFS}/usr/share/factory/var
install -m 0755 -d ${IMAGE_ROOTFS}/usr/share/factory/home
install -m 0755 -d ${IMAGE_ROOTFS}/home/citadel/.local/share/applications
chown -R 1000:1000 ${IMAGE_ROOTFS}/home/citadel/.local
rmdir ${IMAGE_ROOTFS}/var/log/journal
@ -46,12 +42,6 @@ setup_var() {
mv ${IMAGE_ROOTFS}/var/run ${IMAGE_ROOTFS}/usr/share/factory/var
mv ${IMAGE_ROOTFS}/var/lock ${IMAGE_ROOTFS}/usr/share/factory/var
cp -r ${IMAGE_ROOTFS}/usr/share/factory/skel/.??* ${IMAGE_ROOTFS}/home/citadel
cp -r ${IMAGE_ROOTFS}/usr/share/factory/skel/.??* ${IMAGE_ROOTFS}/home/root
mv ${IMAGE_ROOTFS}/home/citadel ${IMAGE_ROOTFS}/usr/share/factory/home
mv ${IMAGE_ROOTFS}/home/root ${IMAGE_ROOTFS}/usr/share/factory/home
ln -sf /opt/share/icons/Paper ${IMAGE_ROOTFS}/usr/share/icons/Paper
ln -sf /opt/share/icons/Adwaita ${IMAGE_ROOTFS}/usr/share/icons/Adwaita
ln -sf /opt/share/backgrounds/gnome ${IMAGE_ROOTFS}/usr/share/backgrounds/gnome

View File

@ -18,7 +18,6 @@ RDEPENDS_${PN} = "\
mutter \
gjs \
gvfs \
gnome-keyring \
gnome-session \
gnome-shell \
hicolor-icon-theme \

View File

@ -7,7 +7,7 @@ inherit cargo systemd
#
# Update this when changes are pushed to github
#
SRCREV = "ee7d0ef16655fbd518f84e220b081d9f4e86da85"
SRCREV = "f665490a4d8bce26c2b70fba94731c60c581ddbd"
GIT_URI = "git://github.com/brl/citadel-tools.git;protocol=https"
@ -227,26 +227,26 @@ do_install() {
install -d ${D}${systemd_system_unitdir}
# Services desktop sync
install -m 644 ${B}/systemd/citadel-desktop-watcher.path ${D}${systemd_system_unitdir}
install -m 644 ${B}/systemd/citadel-desktop-watcher.service ${D}${systemd_system_unitdir}
install -m 644 ${B}/systemd/citadel-current-watcher.path ${D}${systemd_system_unitdir}
install -m 644 ${B}/systemd/citadel-current-watcher.service ${D}${systemd_system_unitdir}
install -m 644 ${S}/systemd/citadel-desktop-watcher.path ${D}${systemd_system_unitdir}
install -m 644 ${S}/systemd/citadel-desktop-watcher.service ${D}${systemd_system_unitdir}
install -m 644 ${S}/systemd/citadel-current-watcher.path ${D}${systemd_system_unitdir}
install -m 644 ${S}/systemd/citadel-current-watcher.service ${D}${systemd_system_unitdir}
# Unit to run: citadel-boot boot-automount
install -m 644 ${B}/systemd/citadel-boot-automount.service ${D}${systemd_system_unitdir}
install -m 644 ${S}/systemd/citadel-boot-automount.service ${D}${systemd_system_unitdir}
# realmsd
install -m 644 ${B}/data/citadel-realmsd.service ${D}${systemd_system_unitdir}
install -m 644 ${S}/data/citadel-realmsd.service ${D}${systemd_system_unitdir}
install -m 755 -T ${TARGET_BIN}/realmsd ${D}${libexecdir}/citadel-realmsd
install -d ${D}${sysconfdir}/dbus-1/system.d
install -m 644 ${B}/data/com.subgraph.realms.Manager.conf ${D}${sysconfdir}/dbus-1/system.d
install -m 644 ${S}/data/com.subgraph.realms.Manager.conf ${D}${sysconfdir}/dbus-1/system.d
# citadel-realms-ui
install -m 755 ${TARGET_BIN}/citadel-realms-ui ${D}${libexecdir}
# citadel-installer-ui
install -m 755 ${TARGET_BIN}/citadel-installer-ui ${D}${libexecdir}
install -m 644 ${B}/data/com.subgraph.installer.Manager.conf ${D}${sysconfdir}/dbus-1/system.d
install -m 644 ${S}/data/com.subgraph.installer.Manager.conf ${D}${sysconfdir}/dbus-1/system.d
# /usr/libexec/citadel-tool
install -m 755 ${TARGET_BIN}/citadel-tool ${D}${libexecdir}

View File

@ -76,7 +76,6 @@ PACKAGE_INSTALL = "\
kernel-module-hid-sensor-hub \
kernel-module-hid-speedlink \
kernel-module-hid-uclogic \
kernel-module-i2c-hid \
kernel-module-intel-hid \
kernel-module-intel-ish-ipc \
kernel-module-intel-ishtp \

View File

@ -9,7 +9,7 @@ SRC_URI = "https://cdn.kernel.org/pub/linux/kernel/v5.x/linux-${PV}.tar.xz\
file://defconfig \
"
SRC_URI[sha256sum] = "02ef2b56b00fc5145701c603a5235e1265772e40d488a936b27ba65fe78e710f"
SRC_URI[sha256sum] = "c0fc1cf5b8c90cde68d7d4361afd3b37422c0b590773ea67861b8b092efe5f37"
LINUX_VERSION ?= "${PV}"
S = "${WORKDIR}/linux-${LINUX_VERSION}"

File diff suppressed because it is too large Load Diff

View File

@ -13,7 +13,7 @@ DEPENDS = " \
json-c \
libdevmapper \
popt \
util-linux \
util-linux-libuuid \
"
RDEPENDS_${PN} = " \
@ -21,8 +21,8 @@ RDEPENDS_${PN} = " \
"
SRC_URI = "${KERNELORG_MIRROR}/linux/utils/${BPN}/v${@d.getVar('PV').split('.')[0]}.${@d.getVar('PV').split('.')[1]}/${BP}.tar.xz"
SRC_URI[md5sum] = "911272e73181fdc850bb4d25103a9f83"
SRC_URI[sha256sum] = "9d16eebb96b53b514778e813019b8dd15fea9fec5aafde9fae5febf59df83773"
SRC_URI[md5sum] = "408620e0df577ec04108ec0bc2b91dee"
SRC_URI[sha256sum] = "ced9946f444d132536daf92fc8aca4277638a3c2d96e20540b2bae4d36fd70c1"
inherit autotools gettext pkgconfig

View File

@ -0,0 +1,28 @@
From b0355cc205543ffd33752874295139d57c4fbc3e Mon Sep 17 00:00:00 2001
From: Wenzong Fan <wenzong.fan@windriver.com>
Date: Tue, 26 Sep 2017 07:59:51 +0000
Subject: [PATCH] Subject: [PATCH] keyutils: use relative path for link
The absolute path of the symlink will be invalid
when populated in sysroot, so use relative path instead.
Upstream-Status: Pending
Signed-off-by: Jackie Huang <jackie.huang@windriver.com>
Signed-off-by: Wenzong Fan <wenzong.fan@windriver.com>
{rebased for 1.6]
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Index: keyutils-1.6/Makefile
===================================================================
--- keyutils-1.6.orig/Makefile
+++ keyutils-1.6/Makefile
@@ -184,7 +184,7 @@ ifeq ($(NO_SOLIB),0)
$(INSTALL) -D $(LIBNAME) $(DESTDIR)$(LIBDIR)/$(LIBNAME)
$(LNS) $(LIBNAME) $(DESTDIR)$(LIBDIR)/$(SONAME)
mkdir -p $(DESTDIR)$(USRLIBDIR)
- $(LNS) $(LIBDIR)/$(SONAME) $(DESTDIR)$(USRLIBDIR)/$(DEVELLIB)
+ $(LNS) $(SONAME) $(DESTDIR)$(USRLIBDIR)/$(DEVELLIB)
sed \
-e 's,@VERSION\@,$(VERSION),g' \
-e 's,@prefix\@,$(PREFIX),g' \

View File

@ -1,28 +0,0 @@
Subject: [PATCH] keyutils: use relative path for link
The absolute path of the symlink will be invalid
when populated in sysroot, so use relative path instead.
Upstream-Status: Pending
Signed-off-by: Jackie Huang <jackie.huang@windriver.com>
---
Makefile | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/Makefile b/Makefile
index 824bbbf..8ce3a13 100644
--- a/Makefile
+++ b/Makefile
@@ -167,7 +167,7 @@ ifeq ($(NO_SOLIB),0)
$(INSTALL) -D $(LIBNAME) $(DESTDIR)$(LIBDIR)/$(LIBNAME)
$(LNS) $(LIBNAME) $(DESTDIR)$(LIBDIR)/$(SONAME)
mkdir -p $(DESTDIR)$(USRLIBDIR)
- $(LNS) $(LIBDIR)/$(SONAME) $(DESTDIR)$(USRLIBDIR)/$(DEVELLIB)
+ $(LNS) $(SONAME) $(DESTDIR)$(USRLIBDIR)/$(DEVELLIB)
endif
$(INSTALL) -D keyctl $(DESTDIR)$(BINDIR)/keyctl
$(INSTALL) -D request-key $(DESTDIR)$(SBINDIR)/request-key
--
2.11.0

View File

@ -12,36 +12,54 @@ LICENSE = "LGPLv2.1+ & GPLv2.0+"
LIC_FILES_CHKSUM = "file://LICENCE.GPL;md5=5f6e72824f5da505c1f4a7197f004b45 \
file://LICENCE.LGPL;md5=7d1cacaa3ea752b72ea5e525df54a21f"
inherit siteinfo ptest
inherit siteinfo autotools-brokensep ptest
SRC_URI = "http://people.redhat.com/dhowells/keyutils/${BP}.tar.bz2 \
file://keyutils-use-relative-path-for-link.patch \
file://keyutils-test-fix-output-format.patch \
file://keyutils-fix-error-report-by-adding-default-message.patch \
file://run-ptest \
file://fix_library_install_path.patch \
"
SRC_URI[md5sum] = "3771676319bc7b84b1549b5c63ff5243"
SRC_URI[sha256sum] = "115c3deae7f181778fd0e0ffaa2dad1bf1fe2f5677cf2e0e348cdb7a1c93afb6"
SRC_URI[md5sum] = "919af7f33576816b423d537f8a8692e8"
SRC_URI[sha256sum] = "c8b15722ae51d95b9ad76cc6d49a4c2cc19b0c60f72f61fb9bf43eea7cbd64ce"
EXTRA_OEMAKE = "'CFLAGS=${CFLAGS} -Wall' \
NO_ARLIB=1 \
BINDIR=${base_bindir} \
SBINDIR=${base_sbindir} \
LIBDIR=${base_libdir} \
USRLIBDIR=${base_libdir} \
LIBDIR=${libdir} \
USRLIBDIR=${libdir} \
INCLUDEDIR=${includedir} \
BUILDFOR=${SITEINFO_BITS}-bit \
NO_GLIBC_KEYERR=1 \
"
do_install () {
install -d ${D}/${libdir}/pkgconfig
oe_runmake DESTDIR=${D} install
}
do_install_append_class-nativesdk() {
install -d ${D}${datadir}
src_dir="${D}${target_datadir}"
mv $src_dir/* ${D}${datadir}
par_dir=`dirname $src_dir`
rmdir $src_dir $par_dir
install -d ${D}${sysconfdir}
mv ${D}/etc/* ${D}${sysconfdir}/
rmdir ${D}/etc
}
do_install_ptest () {
cp -r ${S}/tests ${D}${PTEST_PATH}/
sed -i -e 's/OSDIST=Unknown/OSDIST=${DISTRO}/' ${D}${PTEST_PATH}/tests/prepare.inc.sh
}
RDEPENDS_${PN}-ptest += "glibc-utils"
RDEPENDS_${PN}-ptest += "lsb-release"
RDEPENDS_${PN}-ptest_append_libc-glibc = " glibc-utils"
RDEPENDS_${PN}-ptest_append_libc-musl = " musl-utils"
BBCLASSEXTEND = "native nativesdk"

View File

@ -11,7 +11,7 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=c07cb499d259452f324bb90c3067d85c"
inherit autotools gobject-introspection
SRC_URI = "git://github.com/storaged-project/libblockdev;branch=2.x-branch"
SRCREV = "f5a4ba8bb298f8cbc435707d0b19b4b2ff836a8e"
SRCREV = "c50869272b54bf4b4bc3825e8c3332a54678b43f"
S = "${WORKDIR}/git"
FILES_${PN} += "${libdir}/python2.7/dist-packages ${libdir}/python3.*/site-packages"
@ -37,4 +37,3 @@ PACKAGECONFIG[kbd] = "--with-kbd,--without-kbd,libbytesize"
PACKAGECONFIG[mpath] = "--with-mpath,--without-mpath, multipath-tools, lvm2"
export GIR_EXTRA_LIBS_PATH="${B}/src/utils/.libs"

View File

@ -1,24 +0,0 @@
SUMMARY = "the Git linkable library"
HOMEPAGE = "http://libgit2.github.com/"
LICENSE = "GPL-2.0-with-GCC-exception & MIT"
LIC_FILES_CHKSUM = "file://COPYING;md5=3f2cd5d3cccd71d62066ba619614592b"
DEPENDS = "curl openssl zlib libssh2 libgcrypt"
SRC_URI = "git://github.com/libgit2/libgit2.git;branch=maint/v0.27"
#v0.27.5
SRCREV = "8e0b172981a046d19f1d9efa5acd6186bccbd3ce"
S = "${WORKDIR}/git"
inherit cmake
EXTRA_OECMAKE = "\
-DTHREADSAFE=ON \
-DBUILD_CLAR=OFF \
-DSHA1_TYPE="builtin" \
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
-DBUILD_EXAMPLES=OFF \
"
BBCLASSEXTEND = "native"

View File

@ -0,0 +1,4 @@
#!/bin/sh
cd tests
./regression -a

View File

@ -1,12 +0,0 @@
LICENSE = "LGPLv2.1"
LIC_FILES_CHKSUM = "file://LICENSE;md5=7c13b3376cea0ce68d2d2da0a1b3a72c"
SRCREV = "74b190e1aa05f07da0c61fb9a30dbc9c18ce2c9d"
SRC_URI = "git://github.com/seccomp/libseccomp.git;protocol=https;branch=release-2.3"
S = "${WORKDIR}/git"
inherit autotools
EXTRA_OECONF = ""

View File

@ -0,0 +1,54 @@
SUMMARY = "interface to seccomp filtering mechanism"
DESCRIPTION = "The libseccomp library provides and easy to use, platform independent,interface to the Linux Kernel's syscall filtering mechanism: seccomp."
HOMEPAGE = "https://github.com/seccomp/libseccomp"
SECTION = "security"
LICENSE = "LGPL-2.1"
LIC_FILES_CHKSUM = "file://LICENSE;beginline=0;endline=1;md5=8eac08d22113880357ceb8e7c37f989f"
DEPENDS += "gperf-native"
SRCREV = "4bf70431a339a2886ab8c82e9a45378f30c6e6c7"
SRC_URI = "git://github.com/seccomp/libseccomp.git;branch=release-2.5 \
file://run-ptest \
"
COMPATIBLE_HOST_riscv32 = "null"
S = "${WORKDIR}/git"
inherit autotools-brokensep pkgconfig ptest features_check
REQUIRED_DISTRO_FEATURES = "seccomp"
PACKAGECONFIG ??= ""
PACKAGECONFIG[python] = "--enable-python, --disable-python, python3"
DISABLE_STATIC = ""
do_compile_ptest() {
oe_runmake -C tests check-build
}
do_install_ptest() {
install -d ${D}${PTEST_PATH}/tests
install -d ${D}${PTEST_PATH}/tools
for file in $(find tests/* -executable -type f); do
install -m 744 ${S}/${file} ${D}/${PTEST_PATH}/tests
done
for file in $(find tests/*.tests -type f); do
install -m 744 ${S}/${file} ${D}/${PTEST_PATH}/tests
done
for file in $(find tools/* -executable -type f); do
install -m 744 ${S}/${file} ${D}/${PTEST_PATH}/tools
done
# Overwrite libtool wrappers with real executables
for file in $(find tools/.libs/* -executable -type f); do
install -m 744 ${S}/${file} ${D}/${PTEST_PATH}/tools
done
}
FILES_${PN} = "${bindir} ${libdir}/${BPN}.so*"
FILES_${PN}-dbg += "${libdir}/${PN}/tests/.debug/* ${libdir}/${PN}/tools/.debug"
RDEPENDS_${PN}-ptest = "coreutils bash"

View File

@ -1,26 +0,0 @@
SUMMARY = "A client-side C library implementing the SSH2 protocol"
HOMEPAGE = "http://www.libssh2.org/"
SECTION = "libs"
DEPENDS = "zlib"
LICENSE = "BSD"
LIC_FILES_CHKSUM = "file://COPYING;md5=c5cf34fc0acb44b082ef50ef5e4354ca"
SRC_URI = "http://www.libssh2.org/download/${BP}.tar.gz"
SRC_URI[md5sum] = "3d1147cae66e2959ea5441b183de1b1c"
SRC_URI[sha256sum] = "39f34e2f6835f4b992cafe8625073a88e5a28ba78f83e8099610a7b3af4676d4"
inherit autotools pkgconfig
EXTRA_OECONF += "\
--with-libz \
--with-libz-prefix=${STAGING_LIBDIR} \
"
# only one of openssl and gcrypt could be set
PACKAGECONFIG ??= "openssl"
PACKAGECONFIG[openssl] = "--with-openssl --with-libssl-prefix=${STAGING_LIBDIR},--without-openssl,openssl"
PACKAGECONFIG[gcrypt] = "--with-libgcrypt --with-libgcrypt-prefix=${STAGING_EXECPREFIXDIR},--without-libgcrypt,libgcrypt"
BBCLASSEXTEND = "native"

View File

@ -7,7 +7,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=12713b4d9386533feeb07d6e4831765a \
DEPENDS += "libaio"
SRC_URI = "git://sourceware.org/git/lvm2.git \
SRC_URI = "git://sourceware.org/git/lvm2.git;branch=main \
file://lvm.conf \
file://0001-implement-libc-specific-reopen_stream.patch \
file://0002-Guard-use-of-mallinfo-with-__GLIBC__.patch \
@ -18,15 +18,14 @@ SRC_URI = "git://sourceware.org/git/lvm2.git \
file://reproducible-build.patch \
"
SRCREV = "b9391b1b9f0b73303fa21f8f92574d17ce4c2b02"
SRCREV = "3e8bd8d1bd70691f09a170785836aeb4f83154e6"
S = "${WORKDIR}/git"
inherit autotools-brokensep pkgconfig systemd license
inherit autotools-brokensep pkgconfig systemd
LVM2_PACKAGECONFIG = "dmeventd"
LVM2_PACKAGECONFIG_append_class-target = " \
${@bb.utils.filter('DISTRO_FEATURES', 'selinux', d)} \
${@incompatible_license_contains('GPLv3', '', 'thin-provisioning-tools', d)} \
"
# odirect is always enabled because there currently is a bug in
@ -39,6 +38,7 @@ PACKAGECONFIG[dmeventd] = "--enable-dmeventd,--disable-dmeventd"
PACKAGECONFIG[odirect] = "--enable-o_direct,--disable-o_direct"
PACKAGECONFIG[readline] = "--enable-readline,--disable-readline,readline"
PACKAGECONFIG[selinux] = "--enable-selinux,--disable-selinux,libselinux"
# NOTE: Add thin-provisioning-tools only if your distro policy allows GPL-3.0 license
PACKAGECONFIG[thin-provisioning-tools] = "--with-thin=internal,--with-thin=none,,thin-provisioning-tools"
# Unset user/group to unbreak install.
@ -55,4 +55,3 @@ EXTRA_OECONF = "--with-user= \
--with-thin-repair=${sbindir}/thin_repair \
--with-thin-restore=${sbindir}/thin_restore \
"

View File

@ -1,32 +0,0 @@
From 93c93e3b85492e58f9451841e6079d00c497efa4 Mon Sep 17 00:00:00 2001
From: Jiping Ma <jiping.ma2@windriver.com>
Date: Mon, 25 Feb 2019 13:29:12 +0800
Subject: [PATCH] "/dev/hdc: open failed: No medium found" will print out in
lvmdiskscan.
commit [57bb46c5e7f8] introduce this issue.
"/dev/hdc: open failed: No medium found" will be print out
after run lvmdiskscan. change dev_open_readonly()
to dev_open_readonly_quiet() in fuction _dev_get_size_dev().
Signed-off-by: Jiping Ma <jiping.ma2@windriver.com>
---
lib/device/dev-io.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/lib/device/dev-io.c b/lib/device/dev-io.c
index dc95131..81a66b0 100644
--- a/lib/device/dev-io.c
+++ b/lib/device/dev-io.c
@@ -338,7 +338,7 @@ static int _dev_get_size_dev(struct device *dev, uint64_t *size)
}
if (fd <= 0) {
- if (!dev_open_readonly(dev))
+ if (!dev_open_readonly_quiet(dev))
return_0;
fd = dev_fd(dev);
do_close = 1;
--
1.9.1

View File

@ -1,6 +1,6 @@
From 27b56cb6b5dfc75ea8ddb395dc9ef41fb7a09c93 Mon Sep 17 00:00:00 2001
From ddf36613f3408ce42f15b03b4e9c6ad8478b97f8 Mon Sep 17 00:00:00 2001
From: Hongxu Jia <hongxu.jia@windriver.com>
Date: Mon, 2 Sep 2019 23:04:50 -0400
Date: Tue, 2 Mar 2021 01:33:05 -0800
Subject: [PATCH] fix command /bin/findmnt, /bin/lsblk, /bin/sort not found
In oe-core (util-linux and coreutils), the commands locates in
@ -15,10 +15,10 @@ Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
2 files changed, 7 insertions(+), 3 deletions(-)
diff --git a/configure.ac b/configure.ac
index d1431e2..54e5a7b 100644
index 4811d4a3d..137b31a82 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1495,6 +1495,8 @@ fi
@@ -1611,6 +1611,8 @@ fi
SYSCONFDIR="$(eval echo $(eval echo $sysconfdir))"
@ -27,7 +27,7 @@ index d1431e2..54e5a7b 100644
SBINDIR="$(eval echo $(eval echo $sbindir))"
LVM_PATH="$SBINDIR/lvm"
AC_DEFINE_UNQUOTED(LVM_PATH, ["$LVM_PATH"], [Path to lvm binary.])
@@ -1721,6 +1723,7 @@ AC_SUBST(SACKPT_CFLAGS)
@@ -1829,6 +1831,7 @@ AC_SUBST(SACKPT_CFLAGS)
AC_SUBST(SACKPT_LIBS)
AC_SUBST(SALCK_CFLAGS)
AC_SUBST(SALCK_LIBS)
@ -36,10 +36,10 @@ index d1431e2..54e5a7b 100644
AC_SUBST(SELINUX_LIBS)
AC_SUBST(SELINUX_PC)
diff --git a/scripts/blkdeactivate.sh.in b/scripts/blkdeactivate.sh.in
index a4b8a8f..3db4226 100644
index 7c517b87b..7ef1bb766 100644
--- a/scripts/blkdeactivate.sh.in
+++ b/scripts/blkdeactivate.sh.in
@@ -41,13 +41,14 @@ UMOUNT="/bin/umount"
@@ -42,13 +42,14 @@ VDO="/bin/vdo"
sbindir="@SBINDIR@"
DMSETUP="$sbindir/dmsetup"
@ -55,9 +55,9 @@ index a4b8a8f..3db4226 100644
FINDMNT_READ="read -r mnt"
fi
DMSETUP_OPTS=""
@@ -55,10 +56,10 @@ LVM_OPTS=""
MDADM_OPTS=""
@@ -57,10 +58,10 @@ MDADM_OPTS=""
MPATHD_OPTS=""
VDO_OPTS=""
-LSBLK="/bin/lsblk -r --noheadings -o TYPE,KNAME,NAME,MOUNTPOINT"
+LSBLK="$bindir/lsblk -r --noheadings -o TYPE,KNAME,NAME,MOUNTPOINT"
@ -69,5 +69,5 @@ index a4b8a8f..3db4226 100644
# Do not show tool errors by default (only done/skipping summary
# message provided by this script) and no verbose mode by default.
--
2.8.1
2.29.2

View File

@ -1,7 +1,6 @@
require lvm2.inc
SRC_URI += " \
file://0001-dev-hdc-open-failed-No-medium-found-will-print-out-i.patch \
file://0001-fix-command-bin-findmnt-bin-lsblk-bin-sort-not-found.patch \
"

View File

@ -2,18 +2,19 @@ DESCRIPTION = "GNU nano (Nano's ANOther editor, or \
Not ANOther editor) is an enhanced clone of the \
Pico text editor."
HOMEPAGE = "http://www.nano-editor.org/"
SECTION = "console/utils"
LICENSE = "GPLv3"
LIC_FILES_CHKSUM = "file://COPYING;md5=f27defe1e96c2e1ecd4e0c9be8967949"
SECTION = "console/utils"
DEPENDS = "ncurses file"
RDEPENDS_${PN} = "ncurses-terminfo-base"
PV_MAJOR = "${@d.getVar('PV').split('.')[0]}"
SRC_URI = "https://nano-editor.org/dist/v${PV_MAJOR}/nano-${PV}.tar.xz"
SRC_URI[sha256sum] = "fce183e4a7034d07d219c79aa2f579005d1fd49f156db6e50f53543a87637a32"
SRC_URI[md5sum] = "74196427a09ec2f82a88facd220d2787"
SRC_URI[sha256sum] = "e0a5bca354514e64762c987c200a8758b05e7bcced3b00b3e48ea0a2d383c8a0"
UPSTREAM_CHECK_URI = "https://ftp.gnu.org/gnu/nano"
inherit autotools gettext pkgconfig

View File

@ -23,8 +23,8 @@ CACHED_CONFIGUREVARS_append_libc-musl = " CFLAGS='${CFLAGS} -D_PR_POLL_AVAILABLE
UPSTREAM_CHECK_URI = "http://ftp.mozilla.org/pub/nspr/releases/"
UPSTREAM_CHECK_REGEX = "v(?P<pver>\d+(\.\d+)+)/"
SRC_URI[md5sum] = "615695d57eaafa1fca085d3891befd68"
SRC_URI[sha256sum] = "fc9d142d85b74ffd2e6374a0c9016f3f2dac074225e24df3070e5a72d31b773d"
SRC_URI[md5sum] = "a546926d3c8e887be02c668c1293da92"
SRC_URI[sha256sum] = "22286bdb8059d74632cc7c2865c139e63953ecfb33bf4362ab58827e86e92582"
CVE_PRODUCT = "netscape_portable_runtime"

View File

@ -10,22 +10,24 @@ Upstream-Status: Pending
Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
---
nss/lib/freebl/Makefile | 4 ++++
nss/lib/freebl/Makefile | 3 +++
nss/lib/freebl/gcm.c | 2 ++
2 files changed, 6 insertions(+)
2 files changed, 5 insertions(+)
diff --git a/nss/lib/freebl/Makefile b/nss/lib/freebl/Makefile
index fe8c526..922f67c 100644
--- a/nss/lib/freebl/Makefile
+++ b/nss/lib/freebl/Makefile
@@ -126,6 +126,8 @@ else
@@ -125,6 +125,8 @@ else
DEFINES += -DNSS_X86
endif
endif
ifdef NS_USE_GCC
+ifdef NSS_USE_ARM_HW_CRYPTO
+ DEFINES += -DNSS_USE_ARM_HW_CRYPTO
ifeq ($(CPU_ARCH),aarch64)
DEFINES += -DUSE_HW_AES -DUSE_HW_SHA1 -DUSE_HW_SHA2
EXTRA_SRCS += aes-armv8.c gcm-aarch64.c sha1-armv8.c sha256-armv8.c
@@ -150,6 +152,7 @@ endif
ifdef CC_IS_CLANG
DEFINES += -DUSE_HW_AES -DUSE_HW_SHA1 -DUSE_HW_SHA2
@@ -166,6 +168,7 @@ endif
endif
endif
endif
@ -33,15 +35,23 @@ Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
ifeq ($(OS_TARGET),OSF1)
DEFINES += -DMP_ASSEMBLY_MULTIPLY -DMP_NO_MP_WORD
diff --git a/nss/lib/freebl/gcm.c b/nss/lib/freebl/gcm.c
index c2cc18d..b77f573 100644
--- a/nss/lib/freebl/gcm.c
+++ b/nss/lib/freebl/gcm.c
@@ -21,7 +21,9 @@
@@ -18,6 +18,7 @@
#include <limits.h>
+#ifdef NSS_USE_ARM_HW_CRYPTO
/* old gcc doesn't support some poly64x2_t intrinsic */
#if defined(__aarch64__) && defined(IS_LITTLE_ENDIAN) && \
(defined(__clang__) || defined(__GNUC__) && __GNUC__ > 6)
+# ifdef NSS_USE_ARM_HW_CRYPTO
#define USE_ARM_GCM
+# endif
#elif defined(__arm__) && defined(IS_LITTLE_ENDIAN) && \
!defined(NSS_DISABLE_ARM32_NEON)
@@ -27,6 +28,7 @@
/* We don't test on big endian platform, so disable this on big endian. */
#define USE_ARM_GCM
#endif
+#endif
/* Forward declarations */
SECStatus gcm_HashInit_hw(gcmHashContext *ghash);

View File

@ -1,46 +0,0 @@
From 1136cad77c2dc7d8e1daa317877676733e805f29 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Wed, 26 Aug 2020 17:30:40 -0700
Subject: [PATCH] pkix: Do not use NULL where 0 is needed
Clang finds this error
pkix_logger.c:316:32: error: cast to smaller integer type 'PKIX_ERRORCLASS' from 'void *' [-Werror,-Wvoid-pointer-to-enum-cast]
logger->logComponent = (PKIX_ERRORCLASS)NULL;
^~~~~~~~~~~~~~~~~~~~~
pkix_logger.c:617:32: error: cast to smaller integer type 'PKIX_ERRORCLASS' from 'void *' [-Werror,-Wvoid-pointer-to-enum-cast]
logger->logComponent = (PKIX_ERRORCLASS)NULL;
^~~~~~~~~~~~~~~~~~~~~
2 errors generated.
Upstream-Status: Submitted [https://bugzilla.mozilla.org/show_bug.cgi?id=1661378]
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
nss/lib/libpkix/pkix/util/pkix_logger.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/nss/lib/libpkix/pkix/util/pkix_logger.c b/nss/lib/libpkix/pkix/util/pkix_logger.c
index a916e6e..10f537a 100644
--- a/nss/lib/libpkix/pkix/util/pkix_logger.c
+++ b/nss/lib/libpkix/pkix/util/pkix_logger.c
@@ -313,7 +313,7 @@ pkix_Logger_Destroy(
logger->callback = NULL;
PKIX_DECREF(logger->context);
- logger->logComponent = (PKIX_ERRORCLASS)NULL;
+ logger->logComponent = (PKIX_ERRORCLASS)0;
cleanup:
@@ -614,7 +614,7 @@ PKIX_Logger_Create(
logger->callback = callback;
logger->maxLevel = 0;
- logger->logComponent = (PKIX_ERRORCLASS)NULL;
+ logger->logComponent = (PKIX_ERRORCLASS)0;
PKIX_INCREF(loggerContext);
logger->context = loggerContext;
--
2.28.0

View File

@ -15,7 +15,7 @@ on host to install built files, it doesn't need any cross-compling or
multilib build options. Just clean the ARCHFLAG and LDFLAGS to fix this
error.
Upstream-Status: Pending
Upstream-Status: Inappropriate [configuration]
Signed-off-by: Wenzong Fan <wenzong.fan@windriver.com>
===================================================

View File

@ -11,11 +11,12 @@ SECTION = "libs"
DEPENDS = "sqlite3 nspr zlib nss-native"
DEPENDS_class-native = "sqlite3-native nspr-native zlib-native"
LICENSE = "MPL-2.0 | (MPL-2.0 & GPL-2.0+) | (MPL-2.0 & LGPL-2.1+)"
LICENSE = "(MPL-2.0 & MIT) | (MPL-2.0 & GPL-2.0+ & MIT) | (MPL-2.0 & LGPL-2.1+ & MIT)"
LIC_FILES_CHKSUM = "file://nss/COPYING;md5=3b1e88e1b9c0b5a4b2881d46cce06a18 \
file://nss/lib/freebl/mpi/doc/LICENSE;md5=491f158d09d948466afce85d6f1fe18f \
file://nss/lib/freebl/mpi/doc/LICENSE-MPL;md5=5d425c8f3157dbf212db2ec53d9e5132"
file://nss/lib/freebl/mpi/doc/LICENSE-MPL;md5=5d425c8f3157dbf212db2ec53d9e5132 \
file://nss/lib/freebl/verified/Hacl_Poly1305_256.c;beginline=1;endline=22;md5=d4096c1e4421ee56e9e0f441a8161f78"
VERSION_DIR = "${@d.getVar('BP').upper().replace('-', '_').replace('.', '_') + '_RTM'}"
@ -31,9 +32,8 @@ SRC_URI = "http://ftp.mozilla.org/pub/mozilla.org/security/nss/releases/${VERSIO
file://system-pkcs11.txt \
file://nss-fix-nsinstall-build.patch \
file://0001-freebl-add-a-configure-option-to-disable-ARM-HW-cryp.patch \
file://0001-pkix-Do-not-use-NULL-where-0-is-needed.patch \
"
SRC_URI[sha256sum] = "f875e0e8ed3b5ce92d675be4a55aa25a8c1199789a4a01f69b5f2327e2048e9c"
SRC_URI[sha256sum] = "d3175427172e9c3a6f1ebc74452cb791590f28191c6a1a443dbc0d87c9df1126"
UPSTREAM_CHECK_URI = "https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/NSS_Releases"
UPSTREAM_CHECK_REGEX = "NSS_(?P<pver>.+)_release_notes"
@ -53,6 +53,14 @@ do_configure_prepend_libc-musl () {
sed -i -e '/-DHAVE_SYS_CDEFS_H/d' ${S}/nss/lib/dbm/config/config.mk
}
do_configure_prepend_powerpc64le_toolchain-clang () {
sed -i -e 's/\-std=c99/\-std=gnu99/g' ${S}/nss/coreconf/command.mk
}
do_configure_prepend_powerpc64_toolchain-clang () {
sed -i -e 's/\-std=c99/\-std=gnu99/g' ${S}/nss/coreconf/command.mk
}
do_compile_prepend_class-native() {
export NSPR_INCLUDE_DIR=${STAGING_INCDIR_NATIVE}/nspr
export NSPR_LIB_DIR=${STAGING_LIBDIR_NATIVE}
@ -69,7 +77,6 @@ do_compile_prepend_class-native() {
do_compile() {
export NSPR_INCLUDE_DIR=${STAGING_INCDIR}/nspr
export NSS_ENABLE_WERROR=0
export CROSS_COMPILE=1
export NATIVE_CC="${BUILD_CC}"
@ -77,6 +84,10 @@ do_compile() {
export NATIVE_FLAGS="${BUILD_CFLAGS} -DLINUX -Dlinux"
export BUILD_OPT=1
# POSIX.1-2001 states that the behaviour of getcwd() when passing a null
# pointer as the buf argument, is unspecified.
export NATIVE_FLAGS="${NATIVE_FLAGS} -DGETCWD_CANT_MALLOC"
export FREEBL_NO_DEPEND=1
export FREEBL_LOWHASH=1
@ -94,7 +105,7 @@ do_compile() {
if [ "${TARGET_ARCH}" = "powerpc" ]; then
OS_TEST=ppc
elif [ "${TARGET_ARCH}" = "powerpc64" ]; then
elif [ "${TARGET_ARCH}" = "powerpc64" -o "${TARGET_ARCH}" = "powerpc64le" ]; then
OS_TEST=ppc64
elif [ "${TARGET_ARCH}" = "mips" -o "${TARGET_ARCH}" = "mipsel" -o "${TARGET_ARCH}" = "mips64" -o "${TARGET_ARCH}" = "mips64el" ]; then
OS_TEST=mips
@ -111,7 +122,6 @@ do_compile() {
fi
export NSS_DISABLE_GTESTS=1
# We can modify CC in the environment, but if we set it via an
# argument to make, nsinstall, a host program, will also build with it!
#
@ -152,7 +162,7 @@ do_install() {
if [ "${TARGET_ARCH}" = "powerpc" ]; then
OS_TEST=ppc
elif [ "${TARGET_ARCH}" = "powerpc64" ]; then
elif [ "${TARGET_ARCH}" = "powerpc64" -o "${TARGET_ARCH}" = "powerpc64le" ]; then
OS_TEST=ppc64
elif [ "${TARGET_ARCH}" = "mips" -o "${TARGET_ARCH}" = "mipsel" -o "${TARGET_ARCH}" = "mips64" -o "${TARGET_ARCH}" = "mips64el" ]; then
OS_TEST=mips

View File

@ -1,26 +0,0 @@
musl does not define __GNUC_PREREQ therefore check for C library being glibc
if not then define the macro
Upstream-Status: Pending
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Index: udisks-2.1.7/udisks/udisksclient.c
===================================================================
--- udisks-2.1.7.orig/udisks/udisksclient.c
+++ udisks-2.1.7/udisks/udisksclient.c
@@ -27,8 +27,15 @@
#include "udisksobjectinfo.h"
/* For __GNUC_PREREQ usage below */
-#ifdef __GNUC__
+#ifdef __GLIBC__
# include <features.h>
+#else
+#if defined(__GNUC__)
+#define __GNUC_PREREQ(__maj, __min) \
+ (__GNUC__ > (__maj) || __GNUC__ == (__maj) && __GNUC_MINOR__ >= (__min))
+#else
+#define __GNUC_PREREQ(__maj, __min) 0
+#endif
#endif
/**

View File

@ -3,30 +3,29 @@ LICENSE = "GPLv2+ & LGPLv2+"
LIC_FILES_CHKSUM = "file://COPYING;md5=dd79f6dbbffdbc8e86b086a8f0c0ef43"
DEPENDS = " \
glib-2.0-native \
libxslt-native \
acl \
libatasmart \
polkit \
libgudev \
dbus-glib \
glib-2.0 \
dbus-glib \
libblockdev \
libxslt-native \
"
DEPENDS += "${@bb.utils.filter('DISTRO_FEATURES', 'systemd', d)}"
RDEPENDS_${PN} = "acl"
SRC_URI = " \
git://github.com/storaged-project/udisks.git;branch=master \
"
PV = "2.8.4+git${SRCREV}"
SRCREV = "db5f487345da2eaa87976450ea51c2c465d9b82e"
SRC_URI = "git://github.com/storaged-project/udisks.git;branch=master"
SRCREV = "da6d9480fefeb0ffdf8a84626b5096827d8d7030"
S = "${WORKDIR}/git"
CVE_PRODUCT = "udisks"
inherit autotools systemd gtk-doc gobject-introspection gettext
inherit autotools-brokensep systemd gtk-doc gobject-introspection gettext features_check
REQUIRED_DISTRO_FEATURES = "polkit"
EXTRA_OECONF = "--disable-man --disable-gtk-doc"

View File

@ -1,34 +0,0 @@
require wireguard-tools.inc
inherit bash-completion systemd pkgconfig
DEPENDS = "libmnl"
do_compile_prepend () {
cd ${S}/tools
}
do_unpack () {
tar -xvf ${DL_DIR}/WireGuard-0.0.20180708.tar.xz -C ${WORKDIR}/
# Remove symlink pointing to non-existent file as this causes the
# reproducible_build .bbclass to fail
rm ${WORKDIR}/WireGuard-0.0.20180708/src/tools/wg-quick/wg
}
do_install () {
cd ${S}/tools
oe_runmake DESTDIR="${D}" PREFIX="${prefix}" SYSCONFDIR="${sysconfdir}" \
SYSTEMDUNITDIR="${systemd_unitdir}" \
WITH_SYSTEMDUNITS=${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'yes', '', d)} \
WITH_BASHCOMPLETION=yes \
WITH_WGQUICK=yes \
install
}
FILES_${PN} = " \
${sysconfdir} \
${systemd_unitdir} \
${bindir} \
"
RDEPENDS_${PN} = "bash"

View File

@ -1,27 +0,0 @@
require wireguard.inc
inherit bash-completion systemd pkgconfig
DEPENDS = "libmnl"
do_compile_prepend () {
cd ${S}
}
do_install () {
cd ${S}
oe_runmake DESTDIR="${D}" PREFIX="${prefix}" SYSCONFDIR="${sysconfdir}" \
SYSTEMDUNITDIR="${systemd_unitdir}" \
WITH_SYSTEMDUNITS=${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'yes', '', d)} \
WITH_BASHCOMPLETION=yes \
WITH_WGQUICK=yes \
install
}
FILES_${PN} = " \
${sysconfdir} \
${systemd_unitdir} \
${bindir} \
"
RDEPENDS_${PN} = "bash"

View File

@ -1,16 +0,0 @@
SUMMARY = "WireGuard is an extremely simple yet fast and modern VPN"
DESCRIPTION="WireGuard is a secure network tunnel, operating at layer 3, \
implemented as a kernel virtual network interface for Linux, which aims to \
replace both IPsec for most use cases, as well as popular user space and/or \
TLS-based solutions like OpenVPN, while being more secure, more performant, \
and easier to use."
SECTION = "networking"
HOMEPAGE = "https://www.wireguard.io/"
LICENSE = "GPLv2"
LIC_FILES_CHKSUM = "file://../COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
SRC_URI = "https://git.zx2c4.com/wireguard-tools/snapshot/wireguard-tools-${PV}.tar.xz"
SRC_URI[md5sum] = "36cd9411f56bc5dcaac29bbab6fd9c67"
SRC_URI[sha256sum] = "757ed31d4d48d5fd7853bfd9bfa6a3a1b53c24a94fe617439948784a2c0ed987"
S = "${WORKDIR}/wireguard-tools-${PV}/src/"

View File

@ -0,0 +1,34 @@
require wireguard.inc
SRCREV = "122f06bfd8fc7b06a0899fa9adc4ce8e06900d98"
SRC_URI = "git://git.zx2c4.com/wireguard-linux-compat"
inherit module kernel-module-split
DEPENDS = "virtual/kernel libmnl"
# This module requires Linux 3.10 higher and several networking related
# configuration options. For exact kernel requirements visit:
# https://www.wireguard.io/install/#kernel-requirements
EXTRA_OEMAKE_append = " \
KERNELDIR=${STAGING_KERNEL_DIR} \
"
MAKE_TARGETS = "module"
RRECOMMENDS_${PN} = "kernel-module-xt-hashlimit"
MODULE_NAME = "wireguard"
module_do_install() {
install -d ${D}${nonarch_base_libdir}/modules/${KERNEL_VERSION}/kernel/${MODULE_NAME}
install -m 0644 ${MODULE_NAME}.ko \
${D}${nonarch_base_libdir}/modules/${KERNEL_VERSION}/kernel/${MODULE_NAME}/${MODULE_NAME}.ko
}
# WireGuard has been merged into Linux kernel >= 5.6 and therefore this compatibility module is no longer required.
# OE-core post dunfell has moved to use kernel 5.8 which now means we cant build this module in world builds
# for reference machines e.g. qemu
EXCLUDE_FROM_WORLD = "1"

View File

@ -1,17 +1,15 @@
require wireguard.inc
SRCREV = "622408872fd6f3a58e98e88d39d30e98968314fa"
SRC_URI = "git://git.zx2c4.com/wireguard-tools"
inherit bash-completion systemd pkgconfig
DEPENDS = "libmnl"
do_compile_prepend () {
cd ${S}/tools
}
DEPENDS += "libmnl"
do_install () {
cd ${S}/tools
oe_runmake DESTDIR="${D}" PREFIX="${prefix}" SYSCONFDIR="${sysconfdir}" \
SYSTEMDUNITDIR="${systemd_unitdir}" \
SYSTEMDUNITDIR="${systemd_system_unitdir}" \
WITH_SYSTEMDUNITS=${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'yes', '', d)} \
WITH_BASHCOMPLETION=yes \
WITH_WGQUICK=yes \
@ -20,8 +18,9 @@ do_install () {
FILES_${PN} = " \
${sysconfdir} \
${systemd_unitdir} \
${systemd_system_unitdir} \
${bindir} \
"
RDEPENDS_${PN} = "bash"
RRECOMMENDS_${PN} = "kernel-module-wireguard"

View File

@ -10,8 +10,4 @@ LICENSE = "GPLv2"
LIC_FILES_CHKSUM = "file://../COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
SRC_URI = "https://git.zx2c4.com/WireGuard/snapshot/WireGuard-${PV}.tar.xz"
SRC_URI[md5sum] = "2294b97a3aa8ceaff90f516912631c8b"
SRC_URI[sha256sum] = "5e38d554f7d1e3a64e3a5319ca1a3b790c84ed89c896586c490a93ac1f953a91"
S = "${WORKDIR}/WireGuard-${PV}/src/"
S = "${WORKDIR}/git/src"

View File

@ -9,6 +9,7 @@ LIC_FILES_CHKSUM = "file://LICENSE_LGPL.txt;md5=3000208d539ec061b899bce1d9ce9404
SRC_URI = "git://github.com/wmww/gtk-layer-shell;protocol=https"
ERROR_QA_remove = "unknown-configure-option"
SRCREV = "3b3b935b1643eb58e6cf5a9432b4470d568bfbc2"
UPSTREAM_CHECK_COMMITS = "1"

View File

@ -7,7 +7,7 @@ LIC_FILES_CHKSUM = "file://LICENSES/MIT.txt;md5=38aa75cf4c4c87f018227d5ec9638d75
file://LICENSES/CC0-1.0.txt;md5=6fd064768b8d61c31ddd0540570fbd33 \
file://LICENSES/CC-BY-SA-4.0.txt;md5=4b39cb11ffa11c92d3f7a3431390e0d9"
SRC_URI = "git://github.com/cyclopsian/wdisplays;protocol=https"
SRC_URI = "git://github.com/luispabon/wdisplays;protocol=https"
SRC_URI += "file://use_correct_versions.patch"
PV = "1.0+git${SRCPV}"

@ -1 +1 @@
Subproject commit ee1dcdfbb8d31f168b26c2e3e5be97efea6537df
Subproject commit 9d276740bd10695e628abdbd49bc4cf36afddf60

View File

@ -1,7 +1,7 @@
# We have a conf and classes directory, add to BBPATH
BBPATH .= ":${LAYERDIR}"
LAYERSERIES_COMPAT_meta-gnome = "dunfell"
LAYERSERIES_COMPAT_meta-gnome = "hardknott"
# We have recipes-* directories, add to BBFILES
BBFILES += "${LAYERDIR}/recipes-*/*/*.bb \

View File

@ -1,21 +0,0 @@
From b8687182b9103a1209a6cb553821bb4e4cda5591 Mon Sep 17 00:00:00 2001
From: David McKinney <mckinney@subgraph.com>
Date: Thu, 2 Jul 2020 15:46:40 +0000
Subject: [PATCH] Remove config dir from unit file
---
src/iwd.service.in | 1 -
1 file changed, 1 deletion(-)
diff --git a/src/iwd.service.in b/src/iwd.service.in
index 77819eaf..e33b2f0b 100644
--- a/src/iwd.service.in
+++ b/src/iwd.service.in
@@ -19,7 +19,6 @@ ProtectHome=yes
ProtectSystem=strict
ProtectControlGroups=yes
ProtectKernelModules=yes
-ConfigurationDirectory=iwd
StateDirectory=iwd
StateDirectoryMode=0700

View File

@ -0,0 +1,35 @@
From 0532cddcec9c3abff1f3bc22d2fa50df03d55d17 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Mon, 5 Apr 2021 14:11:40 -0700
Subject: [PATCH] build: Use abs_top_srcdir instead of abs_srcdir for ell sources
this makes it build when build dir is outside of sources dir
Upstream-Status: Submitted [https://lists.01.org/hyperkitty/list/iwd@lists.01.org/message/SYX6Z7SUQHU7UWM6ECZTTJ6SPODIS6KB/]
---
Makefile.am | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
--- a/Makefile.am
+++ b/Makefile.am
@@ -625,9 +625,10 @@ unit/tls-settings.8021x: unit/cert-ca.pe
BUILT_SOURCES = $(ell_built_sources) src/builtin.h
ell/shared: Makefile
+ $(AM_V_at)$(MKDIR_P) ell
$(AM_V_GEN)for f in $(ell_shared) ; do \
if [ ! -f $$f ] ; then \
- $(LN_S) -t ell -f $(abs_srcdir)/../ell/$$f ; \
+ $(LN_S) -t ell -f $(abs_top_srcdir)/ell/$$f ; \
fi \
done > $@
@@ -635,7 +636,7 @@ ell/internal: Makefile
$(AM_V_at)$(MKDIR_P) ell
$(AM_V_GEN)for f in $(ell_headers) $(ell_sources) ; do \
if [ ! -f $$f ] ; then \
- $(LN_S) -t ell -f $(abs_srcdir)/../ell/$$f ; \
+ $(LN_S) -t ell -f $(abs_top_srcdir)/ell/$$f ; \
fi \
done > $@

View File

@ -1,147 +0,0 @@
Newer version of ell in poky has removed ARC4, but iwd 1.7 still requires it.
Backported commit of internal implementation that was added to iwd. This patch
will not be needed when iwd is upgraded to 1.9
However, iwd 1.9 (and 1.8) has another problem:
https://bugzilla.kernel.org/show_bug.cgi?id=208599
---
diff --git a/src/crypto.c b/src/crypto.c
index 696b5990..f5f8e24d 100644
--- a/src/crypto.c
+++ b/src/crypto.c
@@ -18,6 +18,8 @@
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
*
+ * (contains ARC4 implementation copyright (c) 2001 Niels Möller)
+ *
*/
#ifdef HAVE_CONFIG_H
@@ -34,6 +36,16 @@
#include "src/missing.h"
#include "src/crypto.h"
+#define ARC4_MIN_KEY_SIZE 1
+#define ARC4_MAX_KEY_SIZE 256
+#define ARC4_KEY_SIZE 16
+
+struct arc4_ctx {
+ uint8_t S[256];
+ uint8_t i;
+ uint8_t j;
+};
+
/* RFC 3526, Section 2 */
const unsigned char crypto_dh5_prime[] = {
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc9, 0x0f, 0xda, 0xa2,
@@ -415,44 +427,54 @@ free_ctr:
return false;
}
-bool arc4_skip(const uint8_t *key, size_t key_len, size_t skip,
- const uint8_t *in, size_t len, uint8_t *out)
-{
- char skip_buf[1024];
- struct l_cipher *cipher;
- struct iovec in_vec[2];
- struct iovec out_vec[2];
- bool r;
-
- cipher = l_cipher_new(L_CIPHER_ARC4, key, key_len);
- if (!cipher)
- return false;
+#define SWAP(a,b) do { int _t = a; a = b; b = _t; } while (0)
- /* This is not strictly necessary, but keeps valgrind happy */
- memset(skip_buf, 0, sizeof(skip_buf));
+static void arc4_set_key(struct arc4_ctx *ctx, unsigned length,
+ const uint8_t *key)
+{
+ unsigned int i, j, k;
- while (skip > sizeof(skip_buf)) {
- size_t to_skip =
- skip > sizeof(skip_buf) ? sizeof(skip_buf) : skip;
+ /* Initialize context */
+ for (i = 0; i < 256; i++)
+ ctx->S[i] = i;
- l_cipher_decrypt(cipher, skip_buf, skip_buf, to_skip);
- skip -= to_skip;
+ for (i = j = k = 0; i < 256; i++) {
+ j += ctx->S[i] + key[k]; j &= 0xff;
+ SWAP(ctx->S[i], ctx->S[j]);
+ /* Repeat key as needed */
+ k = (k + 1) % length;
}
+ ctx->i = ctx->j = 0;
+}
- in_vec[0].iov_base = skip_buf;
- in_vec[0].iov_len = skip;
- in_vec[1].iov_base = (void *) in;
- in_vec[1].iov_len = len;
+static void arc4_crypt(struct arc4_ctx *ctx, unsigned length, uint8_t *dst,
+ const uint8_t *src)
+{
+ uint8_t i, j;
+
+ i = ctx->i; j = ctx->j;
+ while (length--) {
+ i++; i &= 0xff;
+ j += ctx->S[i]; j &= 0xff;
+ SWAP(ctx->S[i], ctx->S[j]);
+ if (!dst || !src)
+ continue;
+ *dst++ = *src++ ^ ctx->S[ (ctx->S[i] + ctx->S[j]) & 0xff ];
+ }
+ ctx->i = i; ctx->j = j;
+}
- out_vec[0].iov_base = skip_buf;
- out_vec[0].iov_len = skip;
- out_vec[1].iov_base = out;
- out_vec[1].iov_len = len;
+bool arc4_skip(const uint8_t *key, size_t key_len, size_t skip,
+ const uint8_t *in, size_t len, uint8_t *out)
+{
+ struct arc4_ctx cipher;
- r = l_cipher_decryptv(cipher, in_vec, 2, out_vec, 2);
- l_cipher_free(cipher);
+ arc4_set_key(&cipher, key_len, key);
+ arc4_crypt(&cipher, skip, NULL, NULL);
+ arc4_crypt(&cipher, len, out, in);
+ explicit_bzero(&cipher, sizeof(cipher));
- return r;
+ return true;
}
/* 802.11, Section 11.6.2, Table 11-4 */
diff --git a/src/main.c b/src/main.c
index 8bcbb6a7..105de3e1 100644
--- a/src/main.c
+++ b/src/main.c
@@ -271,15 +271,6 @@ static int check_crypto()
l_hashmap_insert(optional, "CONFIG_CRYPTO_SHA512_SSSE3", &r);
}
- if (!l_cipher_is_supported(L_CIPHER_ARC4)) {
- r = -ENOTSUP;
- l_error("RC4 support not found");
- l_hashmap_insert(options,
- "CONFIG_CRYPTO_USER_API_SKCIPHER", &r);
- l_hashmap_insert(options, "CONFIG_CRYPTO_ARC4", &r);
- l_hashmap_insert(options, "CONFIG_CRYPTO_ECB", &r);
- }
-
if (!l_cipher_is_supported(L_CIPHER_DES) ||
!l_cipher_is_supported(L_CIPHER_DES3_EDE_CBC)) {
r = -ENOTSUP;

View File

@ -5,13 +5,10 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=fb504b67c50331fc78734fed90fb0e09"
DEPENDS = "ell"
SRC_URI = "git://git.kernel.org/pub/scm/network/wireless/iwd.git \
file://0001-Remove-config-dir-from-unit-file.patch \
file://0002-arc4-implementation.patch \
"
SRCREV = "ef6084dcb4fe2e00327bb9c7b113ece204042c22"
S = "${WORKDIR}/git"
SRC_URI = "https://www.kernel.org/pub/linux/network/wireless/${BP}.tar.xz \
file://0001-build-Use-abs_top_srcdir-instead-of-abs_srcdir-for-e.patch \
"
SRC_URI[sha256sum] = "b005f7ed0f0a96a2c6181c44560fc868533a18e7034bd4cb43ea0d40c21b4e7a"
inherit autotools manpages pkgconfig python3native systemd

View File

@ -10,12 +10,23 @@ inherit gnomebase useradd gettext systemd
SRC_URI = "${GNOME_MIRROR}/NetworkManager-openvpn/${@gnome_verdir("${PV}")}/NetworkManager-openvpn-${PV}.tar.xz"
SRC_URI[md5sum] = "f118226ed2bfbacfd64ac4d1e0bd0383"
SRC_URI[sha256sum] = "ac86a7a539d78df90095676e9183f2d422fb93dbfe4b3afef22f81825d303d61"
SRC_URI[md5sum] = "bef67eca77bee68da703609b92f804a0"
SRC_URI[sha256sum] = "e7419053fc3b5a7e25f1a7517c313ad4531b6ea280255524ebb85a70c76fdbeb"
S = "${WORKDIR}/NetworkManager-openvpn-${PV}"
PACKAGECONFIG[gnome] = "--with-gnome,--without-gnome"
# meta-gnome in layers is required using gnome:
PACKAGECONFIG[gnome] = "--with-gnome,--without-gnome,gtk+3 libnma libsecret"
do_configure_append() {
# network-manager-openvpn.metainfo.xml is created in source folder but
# compile expects it in build folder. As long as nobody comes up with a
# better solution just support build:
if [ -e ${S}/appdata/network-manager-openvpn.metainfo.xml ]; then
mkdir -p ${B}/appdata
cp -f ${S}/appdata/network-manager-openvpn.metainfo.xml ${B}/appdata/
fi
}
do_install_append () {
rm -rf ${D}${libdir}/NetworkManager/*.la
@ -26,6 +37,8 @@ USERADD_PACKAGES = "${PN}"
USERADD_PARAM_${PN} = "--system nm-openvpn"
FILES_${PN} += " \
${datadir}/dbus-1 \
${datadir}/metainfo \
${libdir}/NetworkManager/*.so \
${nonarch_libdir}/NetworkManager/VPN/nm-openvpn-service.name \
"

View File

@ -0,0 +1,22 @@
From 9bcf4c81a559d1e7deac47b2e510d7f1e5837a02 Mon Sep 17 00:00:00 2001
From: Pablo Saavedra <psaavedra@igalia.com>
Date: Tue, 13 Mar 2018 17:36:20 +0100
Subject: [PATCH] Fixed configure.ac: Fix pkgconfig sysroot locations
---
configure.ac | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/configure.ac b/configure.ac
index 65ceffb..ad4b0fc 100644
--- a/configure.ac
+++ b/configure.ac
@@ -561,7 +561,7 @@ if test "$have_jansson" = "yes"; then
AC_DEFINE(WITH_JANSSON, 1, [Define if JANSSON is enabled])
AC_CHECK_TOOLS(READELF, [eu-readelf readelf])
- JANSSON_LIBDIR=`$PKG_CONFIG --variable=libdir jansson`
+ JANSSON_LIBDIR=${PKG_CONFIG_SYSROOT_DIR}`$PKG_CONFIG --variable=libdir jansson`
JANSSON_SONAME=`$READELF -d $JANSSON_LIBDIR/libjansson.so |sed -n 's/.*SONAME.*\[[\([^]]*\)]]/\1/p'`
if test "$JANSSON_SONAME" = ""; then

View File

@ -1,40 +0,0 @@
From 0ec98dd65d3133514175968b19c01eed9b1d9b0c Mon Sep 17 00:00:00 2001
From: Bruce Leidl <bruce@subgraph.com>
Date: Tue, 27 Oct 2020 16:14:07 -0400
Subject: [PATCH] Generator fails to build in cross-compile environment.
It's not needed because it's for (re-)creating generate-docs-nm-settings-nmcli.xml
which already exists in the source archive.
---
clients/cli/meson.build | 21 ---------------------
1 file changed, 21 deletions(-)
diff --git a/clients/cli/meson.build b/clients/cli/meson.build
index 517deff..d3b249c 100644
--- a/clients/cli/meson.build
+++ b/clients/cli/meson.build
@@ -35,24 +35,3 @@ executable(
endif
-generate_docs_nm_settings_nmcli = executable(
- 'generate-docs-nm-settings-nmcli',
- files(
- 'generate-docs-nm-settings-nmcli.c',
- ),
- dependencies: [
- libnmc_base_dep,
- libnmc_dep,
- libnm_libnm_aux_dep,
- ],
- c_args: clients_c_flags + ['-DG_LOG_DOMAIN="@0@"'.format('nmcli')],
- link_args: ldflags_linker_script_binary,
- link_depends: linker_script_binary,
-)
-
-generate_docs_nm_settings_nmcli_xml = custom_target(
- 'generate-docs-nm-settings-nmcli.xml',
- output: 'generate-docs-nm-settings-nmcli.xml',
- command: [ generate_docs_nm_settings_nmcli ],
- capture: true,
-)

View File

@ -0,0 +1,59 @@
From d0dead0478a070b96f37bd3b310443eaa8c93a25 Mon Sep 17 00:00:00 2001
From: Vinicius Aquino <voa.aquino@gmail.com>
Date: Thu, 1 Apr 2021 14:13:07 -0300
Subject: [PATCH] Do not create settings settings/property documentation
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
It was tried to get this work by adding python3-pygobject-native to DEPENDS but
compile could not find (configure passed) python module gi.
Anyway it is not necessary for us to have the settings/property docs.
Upstream-Status: Inappropriate [OE specific]
Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
Signed-off-by: Vinicius Aquino <voa.aquino@gmail.com>
---
Makefile.am | 4 ----
configure.ac | 5 -----
2 files changed, 9 deletions(-)
diff --git a/Makefile.am b/Makefile.am
index 9279672c1..2e52acbb2 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -1686,14 +1686,10 @@ libnm/libnm.typelib: libnm/libnm.gir
INTROSPECTION_GIRS += libnm/NM-1.0.gir
libnm_noinst_data = \
- clients/cli/generate-docs-nm-settings-nmcli.xml \
libnm/nm-property-infos-dbus.xml \
libnm/nm-property-infos-ifcfg-rh.xml \
libnm/nm-property-infos-keyfile.xml \
libnm/nm-property-infos-nmcli.xml \
- libnm/nm-settings-docs-gir.xml \
- man/nm-settings-docs-dbus.xml \
- man/nm-settings-docs-nmcli.xml \
$(NULL)
noinst_DATA += $(libnm_noinst_data)
diff --git a/configure.ac b/configure.ac
index 784ac4695..681e6cb32 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1241,11 +1241,6 @@ GTK_DOC_CHECK(1.0)
# check if we can build setting property documentation
build_docs=no
if test -n "$INTROSPECTION_MAKEFILE"; then
- # If g-i is installed we know we have python, but we might not have pygobject
- if ! "$PYTHON" -c 'from gi.repository import GObject' > /dev/null 2>&1; then
- AC_MSG_ERROR(["--enable-introspection aims to build the settings documentation. This requires GObject introspection for python (pygobject)])
- fi
-
AC_PATH_PROG(PERL, perl)
if test -z "$PERL"; then
AC_MSG_ERROR([--enable-introspection requires perl])
--
2.20.1

View File

@ -0,0 +1,30 @@
From 6388b16b93ba805f8877a94f47509f701250812f Mon Sep 17 00:00:00 2001
From: Hongxu Jia <hongxu.jia@windriver.com>
Date: Mon, 6 Jul 2020 19:33:54 -0700
Subject: [PATCH] install firewalld to var-libdir rather than hardcod lib
The oe install firewalld (split packages) to ${libdir}/firewalld/zones
Upstream-Status: Inappropriate [oe specific]
Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
---
Makefile.am | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/Makefile.am b/Makefile.am
index 358b01a..5745339 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -4778,7 +4778,7 @@ data/server.conf: $(srcdir)/data/server.conf.in
$(AM_V_GEN) $(data_edit) $< >$@
if WITH_FIREWALLD_ZONE
-firewalldzonedir = $(prefix)/lib/firewalld/zones
+firewalldzonedir = $(libdir)/firewalld/zones
firewalldzone_DATA = data/nm-shared.xml
endif
--
2.21.0

View File

@ -0,0 +1,154 @@
From 44884c7e7655b889f41cb02ffc8ab72a29b52ebf Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com>
Date: Tue, 2 Apr 2019 01:34:35 +0200
Subject: [PATCH 1/2] Fix build with musl - systemd specific
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Networkmanager imported some code from systemd. This requires some adjustments
for musl.
Upstream-Status: Pending
Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
Signed-off-by: Vinicius Aquino <voa.aquino@gmail.com>
---
shared/systemd/src/basic/in-addr-util.c | 1 +
shared/systemd/src/basic/process-util.c | 9 +++++++++
shared/systemd/src/basic/socket-util.h | 6 ++++++
shared/systemd/src/basic/sort-util.h | 13 ++++---------
shared/systemd/src/basic/stdio-util.h | 2 ++
shared/systemd/src/basic/string-util.h | 5 +++++
6 files changed, 27 insertions(+), 9 deletions(-)
diff --git a/shared/systemd/src/basic/in-addr-util.c b/shared/systemd/src/basic/in-addr-util.c
index c315dcbb8..5b7e04eb7 100644
--- a/shared/systemd/src/basic/in-addr-util.c
+++ b/shared/systemd/src/basic/in-addr-util.c
@@ -15,6 +15,7 @@
#include "in-addr-util.h"
#include "macro.h"
#include "parse-util.h"
+#include "string-util.h"
#include "random-util.h"
#include "string-util.h"
#include "strxcpyx.h"
diff --git a/shared/systemd/src/basic/process-util.c b/shared/systemd/src/basic/process-util.c
index 0e25b0200..ea2c0fbb4 100644
--- a/shared/systemd/src/basic/process-util.c
+++ b/shared/systemd/src/basic/process-util.c
@@ -17,6 +17,9 @@
#include <sys/wait.h>
#include <syslog.h>
#include <unistd.h>
+#ifndef __GLIBC__
+#include <pthread.h>
+#endif
#if 0 /* NM_IGNORED */
#if HAVE_VALGRIND_VALGRIND_H
#include <valgrind/valgrind.h>
@@ -1152,11 +1155,13 @@ void reset_cached_pid(void) {
cached_pid = CACHED_PID_UNSET;
}
+#ifdef __GLIBC__
/* We use glibc __register_atfork() + __dso_handle directly here, as they are not included in the glibc
* headers. __register_atfork() is mostly equivalent to pthread_atfork(), but doesn't require us to link against
* libpthread, as it is part of glibc anyway. */
extern int __register_atfork(void (*prepare) (void), void (*parent) (void), void (*child) (void), void *dso_handle);
extern void* __dso_handle _weak_;
+#endif
pid_t getpid_cached(void) {
static bool installed = false;
@@ -1185,7 +1190,11 @@ pid_t getpid_cached(void) {
* only half-documented (glibc doesn't document it but LSB does — though only superficially)
* we'll check for errors only in the most generic fashion possible. */
+#ifdef __GLIBC__
if (__register_atfork(NULL, NULL, reset_cached_pid, __dso_handle) != 0) {
+#else
+ if (pthread_atfork(NULL, NULL, reset_cached_pid) != 0) {
+#endif
/* OOM? Let's try again later */
cached_pid = CACHED_PID_UNSET;
return new_pid;
diff --git a/shared/systemd/src/basic/socket-util.h b/shared/systemd/src/basic/socket-util.h
index 1de069476..f6834fbd2 100644
--- a/shared/systemd/src/basic/socket-util.h
+++ b/shared/systemd/src/basic/socket-util.h
@@ -14,6 +14,12 @@
#include <sys/types.h>
#include <sys/un.h>
+#if !defined(__GLIBC__)
+/* SIOCGSTAMPNS from linux/asm-generic.h
+ * for src/systemd/src/libsystemd-network/sd-lldp.c */
+#include <linux/sockios.h>
+#endif
+
#include "macro.h"
#include "missing_network.h"
#include "missing_socket.h"
diff --git a/shared/systemd/src/basic/sort-util.h b/shared/systemd/src/basic/sort-util.h
index a8984fc16..5fb90f8c5 100644
--- a/shared/systemd/src/basic/sort-util.h
+++ b/shared/systemd/src/basic/sort-util.h
@@ -5,15 +5,10 @@
#include "macro.h"
-void *xbsearch_r(const void *key, const void *base, size_t nmemb, size_t size,
- __compar_d_fn_t compar, void *arg);
-
-#define typesafe_bsearch_r(k, b, n, func, userdata) \
- ({ \
- const typeof(b[0]) *_k = k; \
- int (*_func_)(const typeof(b[0])*, const typeof(b[0])*, typeof(userdata)) = func; \
- xbsearch_r((const void*) _k, (b), (n), sizeof((b)[0]), (__compar_d_fn_t) _func_, userdata); \
- })
+#if !defined(__GLIBC__)
+typedef int (*__compar_fn_t) (const void*, const void*);
+typedef __compar_fn_t comparison_fn_t;
+#endif
/**
* Normal bsearch requires base to be nonnull. Here were require
diff --git a/shared/systemd/src/basic/stdio-util.h b/shared/systemd/src/basic/stdio-util.h
index d45d3c1a6..fee1a57ca 100644
--- a/shared/systemd/src/basic/stdio-util.h
+++ b/shared/systemd/src/basic/stdio-util.h
@@ -2,7 +2,9 @@
#pragma once
#if 0 /* NM_IGNORED */
+#if defined(__GLIBC__)
#include <printf.h>
+#endif
#endif /* NM_IGNORED */
#include <stdarg.h>
#include <stdio.h>
diff --git a/shared/systemd/src/basic/string-util.h b/shared/systemd/src/basic/string-util.h
index 593cf04ae..541c393f6 100644
--- a/shared/systemd/src/basic/string-util.h
+++ b/shared/systemd/src/basic/string-util.h
@@ -26,6 +26,11 @@
#define strcaseeq(a,b) (strcasecmp((a),(b)) == 0)
#define strncaseeq(a, b, n) (strncasecmp((a), (b), (n)) == 0)
+/* musl does not know strndupa */
+#if !defined(__GLIBC__)
+#define strndupa(x,s) strncpy(alloca(strlen(x)+1),x,s)
+#endif
+
int strcmp_ptr(const char *a, const char *b) _pure_;
int strcasecmp_ptr(const char *a, const char *b) _pure_;
--
2.20.1

View File

@ -0,0 +1,26 @@
From 7d9a11a17da425d106791ada7100d7a6559e6065 Mon Sep 17 00:00:00 2001
From: Adrian Freihofer <adrian.freihofer@siemens.com>
Date: Sat, 7 Mar 2020 14:24:01 +0100
Subject: [PATCH 2/2] Fix build with musl - systemd specific
---
src/core/systemd/src/libsystemd-network/sd-dhcp6-client.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/src/core/systemd/src/libsystemd-network/sd-dhcp6-client.c b/src/core/systemd/src/libsystemd-network/sd-dhcp6-client.c
index 3fafd3c0e..79d6096c2 100644
--- a/src/core/systemd/src/libsystemd-network/sd-dhcp6-client.c
+++ b/src/core/systemd/src/libsystemd-network/sd-dhcp6-client.c
@@ -8,7 +8,9 @@
#include <errno.h>
#include <sys/ioctl.h>
#if 0 /* NM_IGNORED */
+#ifdef __GLIBC__ /* musl supplies full set of userspace headers */
#include <linux/if_arp.h>
+#endif
#else /* NM_IGNORED */
#include <net/if_arp.h>
#endif /* NM_IGNORED */
--
2.20.1

View File

@ -1,143 +0,0 @@
SUMMARY = "NetworkManager"
HOMEPAGE = "https://wiki.gnome.org/Projects/NetworkManager"
SECTION = "net/misc"
LICENSE = "GPLv2+ & LGPLv2.1+"
LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
file://COPYING.LGPL;md5=4fbd65380cdd255951079008b364516c \
"
DEPENDS = " \
intltool-native \
libxslt-native \
libnl \
libgudev \
util-linux \
libndp \
libnewt \
curl \
dbus \
nss \
iwd \
coreutils-native \
python3-pygobject-native \
"
GNOMEBASEBUILDCLASS = "meson"
inherit gnomebase gettext update-rc.d systemd bash-completion vala gobject-introspection gtk-doc update-alternatives upstream-version-is-even
SRC_URI = "${GNOME_MIRROR}/NetworkManager/${@gnome_verdir("${PV}")}/NetworkManager-${PV}.tar.xz \
file://${BPN}.initd \
file://NetworkManager.conf \
file://watch-resolvconf.path \
file://watch-resolvconf.service \
file://0001-Generator-fails-to-build-in-cross-compile-environmen.patch \
"
SRC_URI[sha256sum] = "7995802c67e54fc58be4c0e3d2095d943f53f4300a93bde7ff48822a0b1f62ea"
S = "${WORKDIR}/NetworkManager-${PV}"
EXTRA_OEMESON = "\
-Diwd=true \
-Dnmtui=false \
-Djson_validation=false \
-Dselinux=false \
-Dlibaudit=no \
-Dpolkit=false \
-Dppp=false \
-Dmodem_manager=false \
-Dovs=false \
-Dlibpsl=false \
-Dqt=false \
-Dfirewalld_zone=false \
-Dsession_tracking_consolekit=false \
-Ddhclient=${base_sbindir}/dhclient \
"
do_compile_prepend() {
export GIR_EXTRA_LIBS_PATH="${B}/libnm/.libs:${B}/libnm-glib/.libs:${B}/libnm-util/.libs"
}
PACKAGES =+ " \
${PN}-nmtui ${PN}-nmtui-doc \
${PN}-adsl ${PN}-cloud-setup \
"
SYSTEMD_PACKAGES = "${PN} ${PN}-cloud-setup"
FILES_${PN}-adsl = "${libdir}/NetworkManager/${PV}/libnm-device-plugin-adsl.so"
FILES_${PN}-cloud-setup = " \
${libexecdir}/nm-cloud-setup \
${systemd_system_unitdir}/nm-cloud-setup.service \
${systemd_system_unitdir}/nm-cloud-setup.timer \
${libdir}/NetworkManager/dispatcher.d/90-nm-cloud-setup.sh \
${libdir}/NetworkManager/dispatcher.d/no-wait.d/90-nm-cloud-setup.sh \
"
ALLOW_EMPTY_${PN}-cloud-setup = "1"
FILES_${PN} += " \
${libexecdir} \
${libdir}/NetworkManager/${PV}/*.so \
${libdir}/NetworkManager \
${nonarch_libdir}/NetworkManager/conf.d \
${nonarch_libdir}/NetworkManager/dispatcher.d \
${nonarch_libdir}/NetworkManager/dispatcher.d/pre-down.d \
${nonarch_libdir}/NetworkManager/dispatcher.d/pre-up.d \
${nonarch_libdir}/NetworkManager/dispatcher.d/no-wait.d \
${nonarch_libdir}/NetworkManager/VPN \
${nonarch_libdir}/NetworkManager/system-connections \
${datadir}/polkit-1 \
${datadir}/dbus-1 \
${nonarch_base_libdir}/udev/* \
${systemd_system_unitdir} \
${libdir}/pppd \
"
RRECOMMENDS_${PN} += "iptables \
${@bb.utils.filter('PACKAGECONFIG', 'dnsmasq', d)} \
"
RCONFLICTS_${PN} = "connman"
FILES_${PN}-dev += " \
${datadir}/NetworkManager/gdb-cmd \
${libdir}/pppd/*/*.la \
${libdir}/NetworkManager/*.la \
${libdir}/NetworkManager/${PV}/*.la \
"
FILES_${PN}-nmtui = " \
${bindir}/nmtui \
${bindir}/nmtui-edit \
${bindir}/nmtui-connect \
${bindir}/nmtui-hostname \
"
FILES_${PN}-nmtui-doc = " \
${mandir}/man1/nmtui* \
"
INITSCRIPT_NAME = "network-manager"
SYSTEMD_SERVICE_${PN} = "NetworkManager.service NetworkManager-dispatcher.service"
ALTERNATIVE_PRIORITY = "100"
ALTERNATIVE_${PN} = "${@bb.utils.contains('DISTRO_FEATURES','systemd','resolv-conf','',d)}"
ALTERNATIVE_TARGET[resolv-conf] = "${@bb.utils.contains('DISTRO_FEATURES','systemd','${sysconfdir}/resolv-conf.NetworkManager','',d)}"
ALTERNATIVE_LINK_NAME[resolv-conf] = "${@bb.utils.contains('DISTRO_FEATURES','systemd','${sysconfdir}/resolv.conf','',d)}"
do_install_append() {
install -Dm 0755 ${WORKDIR}/${BPN}.initd ${D}${sysconfdir}/init.d/network-manager
rm -rf ${D}/run ${D}${localstatedir}/run
if ${@bb.utils.contains('DISTRO_FEATURES','systemd','true','false',d)}; then
# For read-only filesystem, do not create links during bootup
ln -sf ../run/NetworkManager/resolv.conf ${D}${sysconfdir}/resolv-conf.NetworkManager
# systemd v210 and newer do not need this rule file
rm ${D}/${nonarch_base_libdir}/udev/rules.d/84-nm-drivers.rules
fi
install -d ${D}${sysconfdir}/NetworkManager/
install -m 0644 ${WORKDIR}/NetworkManager.conf ${D}${sysconfdir}/NetworkManager/
}

View File

@ -0,0 +1,181 @@
SUMMARY = "NetworkManager"
HOMEPAGE = "https://wiki.gnome.org/Projects/NetworkManager"
SECTION = "net/misc"
LICENSE = "GPLv2+ & LGPLv2.1+"
LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
file://COPYING.LGPL;md5=4fbd65380cdd255951079008b364516c \
"
DEPENDS = " \
intltool-native \
libxslt-native \
libnl \
udev \
util-linux \
libndp \
libnewt \
curl \
"
inherit gnomebase gettext update-rc.d systemd vala gobject-introspection gtk-doc update-alternatives upstream-version-is-even
SRC_URI = " \
${GNOME_MIRROR}/NetworkManager/${@gnome_verdir("${PV}")}/NetworkManager-${PV}.tar.xz \
file://${BPN}.initd \
file://0001-Fixed-configure.ac-Fix-pkgconfig-sysroot-locations.patch \
file://0002-Do-not-create-settings-settings-property-documentati.patch \
file://0003-install-firewalld-to-var-libdir-rather-than-hardcod-.patch \
"
SRC_URI_append_libc-musl = " \
file://musl/0001-Fix-build-with-musl-systemd-specific.patch \
file://musl/0002-Fix-build-with-musl-systemd-specific.patch \
"
SRC_URI[sha256sum] = "0c8e80e77877860e4a4e6ab4a0f7cdc1186e356b65b042a751897188b88944d2"
S = "${WORKDIR}/NetworkManager-${PV}"
EXTRA_OECONF = " \
--disable-ifcfg-rh \
--disable-more-warnings \
--with-iptables=${sbindir}/iptables \
--with-tests \
--with-nmtui=yes \
--with-udev-dir=${nonarch_base_libdir}/udev \
--with-dhclient=no \
--with-dhcpcd=no \
--with-dhcpcanon=no \
--with-netconfig=no \
"
# stolen from https://github.com/void-linux/void-packages/blob/master/srcpkgs/NetworkManager/template
# avoids:
# | ../NetworkManager-1.16.0/libnm-core/nm-json.c:106:50: error: 'RTLD_DEEPBIND' undeclared (first use in this function); did you mean 'RTLD_DEFAULT'?
CFLAGS_append_libc-musl = " \
-DRTLD_DEEPBIND=0 \
"
do_compile_prepend() {
export GIR_EXTRA_LIBS_PATH="${B}/libnm/.libs:${B}/libnm-glib/.libs:${B}/libnm-util/.libs"
}
PACKAGECONFIG ??= "nss ifupdown dnsmasq nmcli \
${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'systemd', bb.utils.contains('DISTRO_FEATURES', 'x11', 'consolekit', '', d), d)} \
${@bb.utils.contains('DISTRO_FEATURES', 'bluetooth', 'bluez5', '', d)} \
${@bb.utils.filter('DISTRO_FEATURES', 'wifi polkit', d)} \
"
inherit ${@bb.utils.contains('PACKAGECONFIG', 'nmcli', 'bash-completion', '', d)}
PACKAGECONFIG[systemd] = " \
--with-systemdsystemunitdir=${systemd_unitdir}/system --with-session-tracking=systemd, \
--without-systemdsystemunitdir, \
"
PACKAGECONFIG[polkit] = "--enable-polkit,--disable-polkit,polkit"
PACKAGECONFIG[bluez5] = "--enable-bluez5-dun,--disable-bluez5-dun,bluez5"
# consolekit is not picked by shlibs, so add it to RDEPENDS too
PACKAGECONFIG[consolekit] = "--with-session-tracking=consolekit,,consolekit,consolekit"
PACKAGECONFIG[modemmanager] = "--with-modem-manager-1=yes,--with-modem-manager-1=no,modemmanager"
PACKAGECONFIG[ppp] = "--enable-ppp,--disable-ppp,ppp,ppp"
PACKAGECONFIG[dnsmasq] = "--with-dnsmasq=${bindir}/dnsmasq"
PACKAGECONFIG[nss] = "--with-crypto=nss,,nss"
PACKAGECONFIG[resolvconf] = "--with-resolvconf=${base_sbindir}/resolvconf,,,resolvconf"
PACKAGECONFIG[gnutls] = "--with-crypto=gnutls,,gnutls"
PACKAGECONFIG[wifi] = "--with-wext=yes --enable-wifi=yes,--with-wext=no --enable-wifi=no,,wpa-supplicant"
PACKAGECONFIG[ifupdown] = "--enable-ifupdown,--disable-ifupdown"
PACKAGECONFIG[qt4-x11-free] = "--enable-qt,--disable-qt,qt4-x11-free"
PACKAGECONFIG[cloud-setup] = "--with-nm-cloud-setup=yes,--with-nm-cloud-setup=no"
PACKAGECONFIG[nmcli] = "--with-nmcli=yes,--with-nmcli=no,readline"
PACKAGECONFIG[ovs] = "--enable-ovs,--disable-ovs,jansson"
PACKAGES =+ " \
${PN}-nmcli ${PN}-nmcli-doc \
${PN}-nmtui ${PN}-nmtui-doc \
${PN}-adsl ${PN}-cloud-setup \
"
SYSTEMD_PACKAGES = "${PN} ${PN}-cloud-setup"
FILES_${PN}-adsl = "${libdir}/NetworkManager/${PV}/libnm-device-plugin-adsl.so"
FILES_${PN}-cloud-setup = " \
${libexecdir}/nm-cloud-setup \
${systemd_system_unitdir}/nm-cloud-setup.service \
${systemd_system_unitdir}/nm-cloud-setup.timer \
${libdir}/NetworkManager/dispatcher.d/90-nm-cloud-setup.sh \
${libdir}/NetworkManager/dispatcher.d/no-wait.d/90-nm-cloud-setup.sh \
"
ALLOW_EMPTY_${PN}-cloud-setup = "1"
SYSTEMD_SERVICE_${PN}-cloud-setup = "${@bb.utils.contains('PACKAGECONFIG', 'cloud-setup', 'nm-cloud-setup.service nm-cloud-setup.timer', '', d)}"
FILES_${PN} += " \
${libexecdir} \
${libdir}/NetworkManager/${PV}/*.so \
${libdir}/NetworkManager \
${libdir}/firewalld/zones \
${nonarch_libdir}/NetworkManager/conf.d \
${nonarch_libdir}/NetworkManager/dispatcher.d \
${nonarch_libdir}/NetworkManager/dispatcher.d/pre-down.d \
${nonarch_libdir}/NetworkManager/dispatcher.d/pre-up.d \
${nonarch_libdir}/NetworkManager/dispatcher.d/no-wait.d \
${nonarch_libdir}/NetworkManager/VPN \
${nonarch_libdir}/NetworkManager/system-connections \
${datadir}/polkit-1 \
${datadir}/dbus-1 \
${nonarch_base_libdir}/udev/* \
${systemd_system_unitdir} \
${libdir}/pppd \
"
RRECOMMENDS_${PN} += "iptables \
${@bb.utils.filter('PACKAGECONFIG', 'dnsmasq', d)} \
"
RCONFLICTS_${PN} = "connman"
FILES_${PN}-dev += " \
${datadir}/NetworkManager/gdb-cmd \
${libdir}/pppd/*/*.la \
${libdir}/NetworkManager/*.la \
${libdir}/NetworkManager/${PV}/*.la \
"
FILES_${PN}-nmcli = " \
${bindir}/nmcli \
"
FILES_${PN}-nmcli-doc = " \
${mandir}/man1/nmcli* \
"
FILES_${PN}-nmtui = " \
${bindir}/nmtui \
${bindir}/nmtui-edit \
${bindir}/nmtui-connect \
${bindir}/nmtui-hostname \
"
FILES_${PN}-nmtui-doc = " \
${mandir}/man1/nmtui* \
"
INITSCRIPT_NAME = "network-manager"
SYSTEMD_SERVICE_${PN} = "${@bb.utils.contains('PACKAGECONFIG', 'systemd', 'NetworkManager.service NetworkManager-dispatcher.service', '', d)}"
ALTERNATIVE_PRIORITY = "100"
ALTERNATIVE_${PN} = "${@bb.utils.contains('DISTRO_FEATURES','systemd','resolv-conf','',d)}"
ALTERNATIVE_TARGET[resolv-conf] = "${@bb.utils.contains('DISTRO_FEATURES','systemd','${sysconfdir}/resolv-conf.NetworkManager','',d)}"
ALTERNATIVE_LINK_NAME[resolv-conf] = "${@bb.utils.contains('DISTRO_FEATURES','systemd','${sysconfdir}/resolv.conf','',d)}"
do_install_append() {
install -Dm 0755 ${WORKDIR}/${BPN}.initd ${D}${sysconfdir}/init.d/network-manager
rm -rf ${D}/run ${D}${localstatedir}/run
if ${@bb.utils.contains('DISTRO_FEATURES','systemd','true','false',d)}; then
# For read-only filesystem, do not create links during bootup
ln -sf ../run/NetworkManager/resolv.conf ${D}${sysconfdir}/resolv-conf.NetworkManager
# systemd v210 and newer do not need this rule file
rm ${D}/${nonarch_base_libdir}/udev/rules.d/84-nm-drivers.rules
fi
}

View File

@ -1,33 +0,0 @@
HOMEPAGE = "http://mesonbuild.com"
SUMMARY = "A high performance build system"
DESCRIPTION = "Meson is a build system designed to increase programmer \
productivity. It does this by providing a fast, simple and easy to use \
interface for modern software development tools and practices."
LICENSE = "Apache-2.0"
LIC_FILES_CHKSUM = "file://COPYING;md5=3b83ef96387f14655fc854ddc3c6bd57"
SRC_URI = "https://github.com/mesonbuild/meson/releases/download/${PV}/meson-${PV}.tar.gz \
file://0001-gtkdoc-fix-issues-that-arise-when-cross-compiling.patch \
file://0003-native_bindir.patch \
file://0001-python-module-do-not-manipulate-the-environment-when.patch \
file://disable-rpath-handling.patch \
file://cross-prop-default.patch \
file://0001-modules-python.py-do-not-substitute-python-s-install.patch \
file://0001-gnome.py-prefix-g-i-paths-with-PKG_CONFIG_SYSROOT_DI.patch \
"
SRC_URI[sha256sum] = "3b5741f884e04928bdfa1947467ff06afa6c98e623c25cef75adf71ca39ce080"
SRC_URI_append_class-native = " \
file://0001-Make-CPU-family-warnings-fatal.patch \
file://0002-Support-building-allarch-recipes-again.patch \
"
UPSTREAM_CHECK_URI = "https://github.com/mesonbuild/meson/releases"
UPSTREAM_CHECK_REGEX = "meson-(?P<pver>\d+(\.\d+)+)\.tar"
inherit setuptools3
RDEPENDS_${PN} = "ninja python3-modules python3-pkg-resources"
FILES_${PN} += "${datadir}/polkit-1"

View File

@ -1,41 +0,0 @@
From 9311844b6c422479556e83b89a8e675ebcb2056c Mon Sep 17 00:00:00 2001
From: Ross Burton <ross.burton@intel.com>
Date: Tue, 3 Jul 2018 13:59:09 +0100
Subject: [PATCH] Make CPU family warnings fatal
Upstream-Status: Inappropriate [OE specific]
Signed-off-by: Ross Burton <ross.burton@intel.com>
---
mesonbuild/envconfig.py | 2 +-
mesonbuild/environment.py | 4 +---
2 files changed, 2 insertions(+), 4 deletions(-)
diff --git a/mesonbuild/envconfig.py b/mesonbuild/envconfig.py
index 219b62e..d1be65b 100644
--- a/mesonbuild/envconfig.py
+++ b/mesonbuild/envconfig.py
@@ -199,7 +199,7 @@ class MachineInfo:
cpu_family = literal['cpu_family']
if cpu_family not in known_cpu_families:
- mlog.warning('Unknown CPU family {}, please report this at https://github.com/mesonbuild/meson/issues/new'.format(cpu_family))
+ raise EnvironmentException('Unknown CPU family {}, see https://wiki.yoctoproject.org/wiki/Meson/UnknownCPU for directions.'.format(cpu_family))
endian = literal['endian']
if endian not in ('little', 'big'):
diff --git a/mesonbuild/environment.py b/mesonbuild/environment.py
index bf09a88..8eabe78 100644
--- a/mesonbuild/environment.py
+++ b/mesonbuild/environment.py
@@ -375,9 +375,7 @@ def detect_cpu_family(compilers: CompilersDict) -> str:
trial = 'parisc'
if trial not in known_cpu_families:
- mlog.warning('Unknown CPU family {!r}, please report this at '
- 'https://github.com/mesonbuild/meson/issues/new with the '
- 'output of `uname -a` and `cat /proc/cpuinfo`'.format(trial))
+ raise EnvironmentException('Unknown CPU family %s, see https://wiki.yoctoproject.org/wiki/Meson/UnknownCPU for directions.' % trial)
return trial

View File

@ -1,37 +0,0 @@
From 64aa6718c290e150dafd8da83f31cb08af00af0e Mon Sep 17 00:00:00 2001
From: Alexander Kanavin <alex.kanavin@gmail.com>
Date: Wed, 27 May 2020 16:43:05 +0000
Subject: [PATCH] gnome.py: prefix g-i paths with PKG_CONFIG_SYSROOT_DIR
When using sysroots for builds, the standard target paths for the
tools need to be prefixed (pkg-config is not clever enough to
determine when a custom variable is a path)
Upstream-Status: Pending
Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
---
mesonbuild/modules/gnome.py | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/mesonbuild/modules/gnome.py b/mesonbuild/modules/gnome.py
index 52016f4..2b72ee4 100644
--- a/mesonbuild/modules/gnome.py
+++ b/mesonbuild/modules/gnome.py
@@ -410,14 +410,14 @@ class GnomeModule(ExtensionModule):
if giscanner is not None:
self.giscanner = ExternalProgram.from_entry('g-ir-scanner', giscanner)
elif self.gir_dep.type_name == 'pkgconfig':
- self.giscanner = ExternalProgram('g_ir_scanner', self.gir_dep.get_pkgconfig_variable('g_ir_scanner', {}))
+ self.giscanner = ExternalProgram('g_ir_scanner', os.environ['PKG_CONFIG_SYSROOT_DIR'] + self.gir_dep.get_pkgconfig_variable('g_ir_scanner', {}))
else:
self.giscanner = self.interpreter.find_program_impl('g-ir-scanner')
gicompiler = state.environment.lookup_binary_entry(MachineChoice.HOST, 'g-ir-compiler')
if gicompiler is not None:
self.gicompiler = ExternalProgram.from_entry('g-ir-compiler', gicompiler)
elif self.gir_dep.type_name == 'pkgconfig':
- self.gicompiler = ExternalProgram('g_ir_compiler', self.gir_dep.get_pkgconfig_variable('g_ir_compiler', {}))
+ self.gicompiler = ExternalProgram('g_ir_compiler', os.environ['PKG_CONFIG_SYSROOT_DIR'] + self.gir_dep.get_pkgconfig_variable('g_ir_compiler', {}))
else:
self.gicompiler = self.interpreter.find_program_impl('g-ir-compiler')
return self.gir_dep, self.giscanner, self.gicompiler

View File

@ -1,36 +0,0 @@
From d3ef01a4208a801acad380a4aaceb6a21f8fa603 Mon Sep 17 00:00:00 2001
From: Alexander Kanavin <alex.kanavin@gmail.com>
Date: Fri, 4 Aug 2017 16:16:41 +0300
Subject: [PATCH] gtkdoc: fix issues that arise when cross-compiling
Specifically:
1) Make it possible to specify a wrapper for executing binaries
(usually, some kind of target hardware emulator, such as qemu)
2) Explicitly provide CC and LD via command line, as otherwise gtk-doc will
try to guess them, incorrectly.
3) If things break down, print the full command with arguments,
not just the binary name.
4) Correctly determine the compiler/linker executables and cross-options when cross-compiling
Upstream-Status: Pending
Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
---
mesonbuild/modules/gnome.py | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/mesonbuild/modules/gnome.py b/mesonbuild/modules/gnome.py
index bcf77b9..6a4b472 100644
--- a/mesonbuild/modules/gnome.py
+++ b/mesonbuild/modules/gnome.py
@@ -974,6 +974,10 @@ This will become a hard error in the future.''')
args.append('--{}={}'.format(program_name, path))
if namespace:
args.append('--namespace=' + namespace)
+ gtkdoc_exe_wrapper = state.environment.properties.host.get('gtkdoc_exe_wrapper', None)
+ if gtkdoc_exe_wrapper is not None:
+ args.append('--run=' + gtkdoc_exe_wrapper)
+
args += self._unpack_args('--htmlargs=', 'html_args', kwargs)
args += self._unpack_args('--scanargs=', 'scan_args', kwargs)
args += self._unpack_args('--scanobjsargs=', 'scanobjs_args', kwargs)

View File

@ -1,45 +0,0 @@
From 214e559d394491b1376e4cc370f75151117a3f83 Mon Sep 17 00:00:00 2001
From: Alexander Kanavin <alex.kanavin@gmail.com>
Date: Thu, 18 Apr 2019 17:36:11 +0200
Subject: [PATCH] modules/python.py: do not substitute python's install prefix
with meson's
Not sure why this is being done, but it
a) relies on Python's internal variable substitution which may break in the future
b) shouldn't be necessary as Python's prefix ought to be correct in the first place
Upstream-Status: Pending
Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
---
mesonbuild/modules/python.py | 7 +++----
1 file changed, 3 insertions(+), 4 deletions(-)
diff --git a/mesonbuild/modules/python.py b/mesonbuild/modules/python.py
index 2f0c644..d2aa565 100644
--- a/mesonbuild/modules/python.py
+++ b/mesonbuild/modules/python.py
@@ -251,7 +251,7 @@ INTROSPECT_COMMAND = '''import sysconfig
import json
import sys
-install_paths = sysconfig.get_paths(scheme='posix_prefix', vars={'base': '', 'platbase': '', 'installed_base': ''})
+install_paths = sysconfig.get_paths(scheme='posix_prefix')
def links_against_libpython():
from distutils.core import Distribution, Extension
@@ -276,12 +276,11 @@ class PythonInstallation(ExternalProgramHolder):
ExternalProgramHolder.__init__(self, python, interpreter.subproject)
self.interpreter = interpreter
self.subproject = self.interpreter.subproject
- prefix = self.interpreter.environment.coredata.get_builtin_option('prefix')
self.variables = info['variables']
self.paths = info['paths']
install_paths = info['install_paths']
- self.platlib_install_path = os.path.join(prefix, install_paths['platlib'][1:])
- self.purelib_install_path = os.path.join(prefix, install_paths['purelib'][1:])
+ self.platlib_install_path = install_paths['platlib']
+ self.purelib_install_path = install_paths['purelib']
self.version = info['version']
self.platform = info['platform']
self.is_pypy = info['is_pypy']

View File

@ -1,43 +0,0 @@
From 689e28c49b85311f93f39df70cbee702fc44afb6 Mon Sep 17 00:00:00 2001
From: Alexander Kanavin <alex.kanavin@gmail.com>
Date: Mon, 19 Nov 2018 14:24:26 +0100
Subject: [PATCH] python module: do not manipulate the environment when calling
pkg-config
Upstream-Status: Inappropriate [oe-core specific]
Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
---
mesonbuild/modules/python.py | 12 ------------
1 file changed, 12 deletions(-)
diff --git a/mesonbuild/modules/python.py b/mesonbuild/modules/python.py
index 07be318..b770603 100644
--- a/mesonbuild/modules/python.py
+++ b/mesonbuild/modules/python.py
@@ -71,11 +71,6 @@ class PythonDependency(ExternalDependency):
old_pkg_libdir = os.environ.get('PKG_CONFIG_LIBDIR')
old_pkg_path = os.environ.get('PKG_CONFIG_PATH')
- os.environ.pop('PKG_CONFIG_PATH', None)
-
- if pkg_libdir:
- os.environ['PKG_CONFIG_LIBDIR'] = pkg_libdir
-
try:
self.pkgdep = PkgConfigDependency(pkg_name, environment, kwargs)
mlog.debug('Found "{}" via pkgconfig lookup in LIBPC ({})'.format(pkg_name, pkg_libdir))
@@ -84,13 +79,6 @@ class PythonDependency(ExternalDependency):
mlog.debug('"{}" could not be found in LIBPC ({})'.format(pkg_name, pkg_libdir))
mlog.debug(e)
- if old_pkg_path is not None:
- os.environ['PKG_CONFIG_PATH'] = old_pkg_path
-
- if old_pkg_libdir is not None:
- os.environ['PKG_CONFIG_LIBDIR'] = old_pkg_libdir
- else:
- os.environ.pop('PKG_CONFIG_LIBDIR', None)
else:
mlog.debug('"{}" could not be found in LIBPC ({}), this is likely due to a relocated python installation'.format(pkg_name, pkg_libdir))

View File

@ -1,26 +0,0 @@
From 38f59e256f760aa959c13f4c5713f87ff7addee5 Mon Sep 17 00:00:00 2001
From: Peter Kjellerstedt <pkj@axis.com>
Date: Thu, 26 Jul 2018 16:32:49 +0200
Subject: [PATCH] Support building allarch recipes again
This registers "allarch" as a known CPU family.
Upstream-Status: Inappropriate [OE specific]
Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
---
mesonbuild/envconfig.py | 1 +
1 file changed, 1 insertion(+)
diff --git a/mesonbuild/envconfig.py b/mesonbuild/envconfig.py
index d1be65b..90f3573 100644
--- a/mesonbuild/envconfig.py
+++ b/mesonbuild/envconfig.py
@@ -36,6 +36,7 @@ _T = T.TypeVar('_T')
known_cpu_families = (
+ 'allarch',
'aarch64',
'alpha',
'arc',

View File

@ -1,125 +0,0 @@
From f06c89939d0d006090a8a8728b2a13d532b83047 Mon Sep 17 00:00:00 2001
From: Ricardo Ribalda Delgado <ricardo.ribalda@gmail.com>
Date: Wed, 15 Nov 2017 15:05:01 +0100
Subject: [PATCH] native_bindir
Some libraries, like QT, have pre-processors that convert their input
files into something that the cross-compiler can process. We find the
path of those pre-processors via pkg-config-native instead of
pkg-config.
This path forces the use of pkg-config-native for host_bins arguments.
There are some discussions upstream to merge this patch, but I presonaly believe
that is is OE only. https://github.com/mesonbuild/meson/issues/1849#issuecomment-303730323
Upstream-Status: Inappropriate [OE specific]
Signed-off-by: Ricardo Ribalda Delgado <ricardo.ribalda@gmail.com>
---
mesonbuild/dependencies/base.py | 19 +++++++++++--------
mesonbuild/dependencies/ui.py | 6 +++---
2 files changed, 14 insertions(+), 11 deletions(-)
diff --git a/mesonbuild/dependencies/base.py b/mesonbuild/dependencies/base.py
index 368a4bc..9fc398e 100644
--- a/mesonbuild/dependencies/base.py
+++ b/mesonbuild/dependencies/base.py
@@ -183,7 +183,7 @@ class Dependency:
def get_exe_args(self, compiler):
return []
- def get_pkgconfig_variable(self, variable_name, kwargs):
+ def get_pkgconfig_variable(self, variable_name, kwargs, use_native=False):
raise DependencyException('{!r} is not a pkgconfig dependency'.format(self.name))
def get_configtool_variable(self, variable_name):
@@ -261,7 +261,7 @@ class InternalDependency(Dependency):
setattr(result, k, copy.deepcopy(v, memo))
return result
- def get_pkgconfig_variable(self, variable_name, kwargs):
+ def get_pkgconfig_variable(self, variable_name, kwargs, use_native=False):
raise DependencyException('Method "get_pkgconfig_variable()" is '
'invalid for an internal dependency')
@@ -634,15 +634,18 @@ class PkgConfigDependency(ExternalDependency):
return s.format(self.__class__.__name__, self.name, self.is_found,
self.version_reqs)
- def _call_pkgbin_real(self, args, env):
- cmd = self.pkgbin.get_command() + args
+ def _call_pkgbin_real(self, args, env, use_native=False):
+ if use_native:
+ cmd = [self.pkgbin.get_command()[0] + "-native"] + args
+ else:
+ cmd = self.pkgbin.get_command() + args
p, out, err = Popen_safe(cmd, env=env)
rc, out, err = p.returncode, out.strip(), err.strip()
call = ' '.join(cmd)
mlog.debug("Called `{}` -> {}\n{}".format(call, rc, out))
return rc, out, err
- def _call_pkgbin(self, args, env=None):
+ def _call_pkgbin(self, args, env=None, use_native=False):
# Always copy the environment since we're going to modify it
# with pkg-config variables
if env is None:
@@ -668,7 +671,7 @@ class PkgConfigDependency(ExternalDependency):
targs = tuple(args)
cache = PkgConfigDependency.pkgbin_cache
if (self.pkgbin, targs, fenv) not in cache:
- cache[(self.pkgbin, targs, fenv)] = self._call_pkgbin_real(args, env)
+ cache[(self.pkgbin, targs, fenv)] = self._call_pkgbin_real(args, env, use_native)
return cache[(self.pkgbin, targs, fenv)]
def _convert_mingw_paths(self, args: T.List[str]) -> T.List[str]:
@@ -877,7 +880,7 @@ class PkgConfigDependency(ExternalDependency):
(self.name, out_raw))
self.link_args, self.raw_link_args = self._search_libs(out, out_raw)
- def get_pkgconfig_variable(self, variable_name, kwargs):
+ def get_pkgconfig_variable(self, variable_name, kwargs, use_native=False):
options = ['--variable=' + variable_name, self.name]
if 'define_variable' in kwargs:
@@ -890,7 +893,7 @@ class PkgConfigDependency(ExternalDependency):
options = ['--define-variable=' + '='.join(definition)] + options
- ret, out, err = self._call_pkgbin(options)
+ ret, out, err = self._call_pkgbin(options, use_native=use_native)
variable = ''
if ret != 0:
if self.required:
diff --git a/mesonbuild/dependencies/ui.py b/mesonbuild/dependencies/ui.py
index 95dfe2b..5f82890 100644
--- a/mesonbuild/dependencies/ui.py
+++ b/mesonbuild/dependencies/ui.py
@@ -325,7 +325,7 @@ class QtBaseDependency(ExternalDependency):
self.bindir = self.get_pkgconfig_host_bins(core)
if not self.bindir:
# If exec_prefix is not defined, the pkg-config file is broken
- prefix = core.get_pkgconfig_variable('exec_prefix', {})
+ prefix = core.get_pkgconfig_variable('exec_prefix', {}, use_native=True)
if prefix:
self.bindir = os.path.join(prefix, 'bin')
@@ -528,7 +528,7 @@ class Qt4Dependency(QtBaseDependency):
applications = ['moc', 'uic', 'rcc', 'lupdate', 'lrelease']
for application in applications:
try:
- return os.path.dirname(core.get_pkgconfig_variable('%s_location' % application, {}))
+ return os.path.dirname(core.get_pkgconfig_variable('%s_location' % application, {}, use_native=True))
except MesonException:
pass
@@ -538,7 +538,7 @@ class Qt5Dependency(QtBaseDependency):
QtBaseDependency.__init__(self, 'qt5', env, kwargs)
def get_pkgconfig_host_bins(self, core):
- return core.get_pkgconfig_variable('host_bins', {})
+ return core.get_pkgconfig_variable('host_bins', {}, use_native=True)
def get_private_includes(self, mod_inc_dir, module):
return _qt_get_private_includes(mod_inc_dir, module, self.version)

View File

@ -1,23 +0,0 @@
meson.build files that use cc.run() in native builds can silently fallback to
meson.get_cross_property() in cross builds without an exe-wrapper, but there's
no way to know that this is happening.
As the defaults may be pessimistic (for example, disabling the support for a
feature that should be enabled) emit a warning when the default is used, so that
the recipe can explicitly set the cross property as relevant.
Upstream-Status: Submitted [https://github.com/mesonbuild/meson/pull/5071]
Signed-off-by: Ross Burton <ross.burton@intel.com>
diff --git a/mesonbuild/interpreter.py b/mesonbuild/interpreter.py
index 3c3cfae0..10e741ae 100644
--- a/mesonbuild/interpreter.py
+++ b/mesonbuild/interpreter.py
@@ -1890,6 +1890,7 @@ class MesonMain(InterpreterObject):
return props[propname]
except Exception:
if len(args) == 2:
+ mlog.warning('Cross property %s is using default value %s' % (propname, args[1]))
return args[1]
raise InterpreterException('Unknown cross property: %s.' % propname)

View File

@ -1,35 +0,0 @@
From 9e3fcf192c1ca068d310c648c311f9d850214421 Mon Sep 17 00:00:00 2001
From: Richard Purdie <richard.purdie@linuxfoundation.org>
Date: Fri, 23 Nov 2018 15:28:28 +0000
Subject: [PATCH] meson: Disable rpath stripping at install time
We need to allow our rpaths generated through the compiler flags to make it into
our binaries. Therefore disable the meson manipulations of these unless there
is a specific directive to do something differently in the project.
RP 2018/11/23
Upstream-Status: Submitted [https://github.com/mesonbuild/meson/issues/2567]
---
mesonbuild/minstall.py | 7 +++++--
1 file changed, 5 insertions(+), 2 deletions(-)
diff --git a/mesonbuild/minstall.py b/mesonbuild/minstall.py
index 0be01fe..5406cab 100644
--- a/mesonbuild/minstall.py
+++ b/mesonbuild/minstall.py
@@ -512,8 +512,11 @@ class Installer:
if file_copied:
self.did_install_something = True
try:
- depfixer.fix_rpath(outname, t.rpath_dirs_to_remove, install_rpath, final_path,
- install_name_mappings, verbose=False)
+ if install_rpath:
+ depfixer.fix_rpath(outname, t.rpath_dirs_to_remove, install_rpath, final_path,
+ install_name_mappings, verbose=False)
+ else:
+ print("RPATH changes at install time disabled")
except SystemExit as e:
if isinstance(e.code, int) and e.code == 0:
pass

View File

@ -1,31 +0,0 @@
#!/usr/bin/env python3
import os
import string
import sys
class Template(string.Template):
delimiter = "@"
class Environ():
def __getitem__(self, name):
val = os.environ[name]
val = ["'%s'" % x for x in val.split()]
val = ', '.join(val)
val = '[%s]' % val
return val
try:
sysroot = os.environ['OECORE_NATIVE_SYSROOT']
except KeyError:
print("Not in environment setup, bailing")
sys.exit(1)
template_file = os.path.join(sysroot, 'usr/share/meson/meson.cross.template')
cross_file = os.path.join(sysroot, 'usr/share/meson/%smeson.cross' % os.environ["TARGET_PREFIX"])
with open(template_file) as in_file:
template = in_file.read()
output = Template(template).substitute(Environ())
with open(cross_file, "w") as out_file:
out_file.write(output)

View File

@ -1,14 +0,0 @@
#!/bin/sh
if [ -z "$OECORE_NATIVE_SYSROOT" ]; then
echo "OECORE_NATIVE_SYSROOT not set; are you in a Yocto SDK environment?" >&2
fi
# If these are set to a cross-compile path, meson will get confused and try to
# use them as native tools. Unset them to prevent this, as all the cross-compile
# config is already in meson.cross.
unset CC CXX CPP LD AR NM STRIP
exec "$OECORE_NATIVE_SYSROOT/usr/bin/meson.real" \
--cross-file "${OECORE_NATIVE_SYSROOT}/usr/share/meson/${TARGET_PREFIX}meson.cross" \
"$@"

View File

@ -1,4 +0,0 @@
include meson.inc
BBCLASSEXTEND = "native"

View File

@ -1,65 +0,0 @@
include meson.inc
inherit nativesdk
inherit siteinfo
SRC_URI += "file://meson-setup.py \
file://meson-wrapper"
def meson_endian(prefix, d):
arch, os = d.getVar(prefix + "_ARCH"), d.getVar(prefix + "_OS")
sitedata = siteinfo_data_for_machine(arch, os, d)
if "endian-little" in sitedata:
return "little"
elif "endian-big" in sitedata:
return "big"
else:
bb.fatal("Cannot determine endianism for %s-%s" % (arch, os))
# The cross file logic is similar but not identical to that in meson.bbclass,
# since it's generating for an SDK rather than a cross-compile. Important
# differences are:
# - We can't set vars like CC, CXX, etc. yet because they will be filled in with
# real paths by meson-setup.sh when the SDK is extracted.
# - Some overrides aren't needed, since the SDK injects paths that take care of
# them.
do_install_append() {
install -d ${D}${datadir}/meson
cat >${D}${datadir}/meson/meson.cross.template <<EOF
[binaries]
c = @CC
cpp = @CXX
ar = @AR
nm = @NM
strip = @STRIP
pkgconfig = 'pkg-config'
[properties]
needs_exe_wrapper = true
c_args = @CFLAGS
c_link_args = @LDFLAGS
cpp_args = @CPPFLAGS
cpp_link_args = @LDFLAGS
[host_machine]
system = '${SDK_OS}'
cpu_family = '${SDK_ARCH}'
cpu = '${SDK_ARCH}'
endian = '${@meson_endian("SDK", d)}'
EOF
install -d ${D}${SDKPATHNATIVE}/post-relocate-setup.d
install -m 0755 ${WORKDIR}/meson-setup.py ${D}${SDKPATHNATIVE}/post-relocate-setup.d/
# We need to wrap the real meson with a thin env setup wrapper.
mv ${D}${bindir}/meson ${D}${bindir}/meson.real
install -m 0755 ${WORKDIR}/meson-wrapper ${D}${bindir}/meson
}
RDEPENDS_${PN} += "\
nativesdk-ninja \
nativesdk-python3 \
nativesdk-python3-setuptools \
"
FILES_${PN} += "${datadir}/meson ${SDKPATHNATIVE}"

View File

@ -0,0 +1,39 @@
From 6b1cbe8b4dcc45103d69bc7337e5eb33d1fd21f3 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Wed, 3 Feb 2021 14:22:51 -0800
Subject: [PATCH] Do not use AC_HEADER_STDC
This macro is removed in autotools 2.70+ and it can be expected that C90
headers are always available [1]
Upstream-Status: Pending
[1] https://www.gnu.org/software/autoconf/manual/autoconf-2.70/autoconf.html#index-AC_005fHEADER_005fSTDC
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
configure.ac | 6 ------
1 file changed, 6 deletions(-)
diff --git a/configure.ac b/configure.ac
index 01b61097..2823ecd7 100644
--- a/configure.ac
+++ b/configure.ac
@@ -101,14 +101,8 @@ AM_WITH_DMALLOC
#
# Checks for header files.
#
-AC_HEADER_STDC
AC_CHECK_HEADERS([strings.h libgen.h unistd.h direct.h sys/stat.h])
-# REQUIRE standard C headers
-if test "$ac_cv_header_stdc" != yes; then
- AC_MSG_ERROR([Standard (ANSI/ISO C89) header files are required.])
-fi
-
#
# Checks for typedefs, structures, and compiler characteristics.
#
--
2.30.0

View File

@ -9,7 +9,9 @@ DEPENDS += "flex-native bison-native xmlto-native"
PV = "1.3.0+git${SRCPV}"
# v1.3.0
SRCREV = "ba463d3c26c0ece2e797b8d6381b161633b5971a"
SRC_URI = "git://github.com/yasm/yasm.git"
SRC_URI = "git://github.com/yasm/yasm.git \
file://0001-Do-not-use-AC_HEADER_STDC.patch \
"
S = "${WORKDIR}/git"

Some files were not shown because too many files have changed in this diff Show More