forked from brl/citadel
Upgrade GNOME to 42.1
* citadel-kernel 5.15.8 -> 5.18 * adwaita-icon-theme 42.0 * ell 0.44 -> 0.50 * libnma 1.8.30 -> 1.8.38 * iwd 1.17 -> 1.27 * modemmanager 1.16.8 -> 1.18.6 * networkmanager 1.32.10 -> 1.36.2 * networkmanager-openvpn 1.8.14 -> 1.8.18 * accountsservice 0.6.55 -> 22.08.8 * colord-gtk 0.1.26 -> 0.3.0 * polkit 0.118 -> 0.119 * gexiv2 0.12.1 -> 0.14.0 * gjs 1.70.0 -> 1.72.0 * gnome-autoar 0.4.1 -> 0.4.3 * gnome-backgrounds 0.41.0 -> 0.42.0 * gnome-bluetooth 0.34.3 -> 42.0 * gnome-control-center 41.1 -> 42.1 * gnome-desktop 41.1 -> 42.1 * gnome-disk-utility 41.0 -> 42.0 * gnome-screenshot 40.0 -> 41.0 * gnome-session 40.1.1 -> 42.0 * gnome-settings-daemon 41.0 -> 42.1 * gnome-shell 41.1 -> 42.1 * gnome-system-monitor 41.0 -> 42.0 * gnome-terminal 3.42.1 -> 3.42.2 * gtk4 4.4.1 -> 4.6.4 * gvfs 1.48.1 -> 1.50.0 * libgweather 40.0 -> libgweather4 4.0.0 * mutter 41.1 -> 42.1 * network-manager-applet 1.18.0 -> 1.26.0 * yelp 3.36 -> 42.1 * yelp-xsl 3.36 -> 42.0 * yelp-tools 3.32.2 -> 42.0 * zenity 3.30.0 -> 3.42.1
This commit is contained in:
parent
be34ea65f3
commit
f4f1f3b153
18
meta-citadel/recipes-citadel/bbappends/gdm_%.bbappend
Normal file
18
meta-citadel/recipes-citadel/bbappends/gdm_%.bbappend
Normal file
@ -0,0 +1,18 @@
|
||||
FILESEXTRAPATHS:prepend := "${THISDIR}/gdm:"
|
||||
|
||||
SRC_URI += "file://gdm.conf"
|
||||
DEPENDS += "plymouth"
|
||||
|
||||
do_install:append() {
|
||||
install -d ${D}${sysconfdir}/default/volatiles
|
||||
echo "d gdm gdm 755 ${localstatedir}/run/gdm/greeter none" > ${D}${sysconfdir}/default/volatiles/99_gdm
|
||||
rm ${D}${sysconfdir}/gdm/custom.conf
|
||||
rm ${D}${libdir}/udev/rules.d/61-gdm.rules
|
||||
install -m 644 ${WORKDIR}/gdm.conf ${D}${sysconfdir}/gdm/custom.conf
|
||||
}
|
||||
|
||||
EXTRA_OEMESON = " \
|
||||
-Dplymouth=enabled \
|
||||
-Ddefault-pam-config=openembedded \
|
||||
-Dpam-mod-dir=${base_libdir}/security \
|
||||
"
|
3
meta-citadel/recipes-citadel/bbappends/gvfs_%.bbappend
Normal file
3
meta-citadel/recipes-citadel/bbappends/gvfs_%.bbappend
Normal file
@ -0,0 +1,3 @@
|
||||
|
||||
PACKAGECONFIG:remove = "libgphoto2"
|
||||
EXTRA_OEMESON:append = " -Dlibusb=false"
|
@ -1,2 +1 @@
|
||||
PACKAGECONFIG = "odirect"
|
||||
PACKAGECONFIG:append:class-target = " udev"
|
||||
|
@ -1,5 +1,5 @@
|
||||
# Append recipe from meta-openembedded/meta-networking
|
||||
FILESEXTRAPATHS_prepend := "${THISDIR}/networkmanager:"
|
||||
FILESEXTRAPATHS:prepend := "${THISDIR}/networkmanager:"
|
||||
|
||||
SRC_URI += "\
|
||||
file://NetworkManager.conf \
|
||||
@ -7,17 +7,11 @@ SRC_URI += "\
|
||||
file://watch-resolvconf.service \
|
||||
"
|
||||
|
||||
SYSTEMD_SERVICE_${PN} += "watch-resolvconf.path"
|
||||
SYSTEMD_SERVICE:${PN} += "watch-resolvconf.path"
|
||||
|
||||
do_install_append() {
|
||||
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 \
|
||||
"
|
||||
PACKAGECONFIG = "nss systemd polkit wifi iwd vala"
|
||||
|
@ -5,7 +5,7 @@ CITADEL_IMAGE_VERSION_rootfs = "1"
|
||||
CITADEL_IMAGE_VERSION_extra = "1"
|
||||
CITADEL_IMAGE_VERSION_kernel = "1"
|
||||
|
||||
CITADEL_KERNEL_VERSION = "5.15.8"
|
||||
CITADEL_KERNEL_VERSION = "5.18.0"
|
||||
|
||||
CITADEL_KERNEL_CONFIG = "${COREBASE}/../meta-citadel/recipes-kernel/citadel-kernel/files/defconfig"
|
||||
|
||||
|
@ -98,9 +98,8 @@ install_resource_image() {
|
||||
version=$(printf "%03d" ${2})
|
||||
|
||||
if [ "${1}" = "kernel" ]; then
|
||||
kversion=$(cat ${DEPLOY_DIR_IMAGE}/kernel.version)
|
||||
src_fname="citadel-kernel-${kversion}-${CITADEL_IMAGE_CHANNEL}-${version}.img"
|
||||
dst_fname="citadel-kernel-${kversion}.img"
|
||||
src_fname="citadel-kernel-${CITADEL_KERNEL_VERSION}-${CITADEL_IMAGE_CHANNEL}-${version}.img"
|
||||
dst_fname="citadel-kernel-${CITADEL_KERNEL_VERSION}.img"
|
||||
else
|
||||
src_fname="citadel-${1}-${CITADEL_IMAGE_CHANNEL}-${version}.img"
|
||||
dst_fname="citadel-${1}.img"
|
||||
|
@ -5,7 +5,6 @@ inherit packagegroup
|
||||
RDEPENDS:${PN} = "\
|
||||
atk \
|
||||
at-spi2-atk \
|
||||
libgweather \
|
||||
zenity \
|
||||
gnome-desktop \
|
||||
gnome-bluetooth \
|
||||
|
@ -9,7 +9,7 @@ SRC_URI = "https://cdn.kernel.org/pub/linux/kernel/v5.x/linux-${PV}.tar.xz\
|
||||
file://defconfig \
|
||||
"
|
||||
|
||||
SRC_URI[sha256sum] = "d756527313ee09c8b0376975fb7890e2eddce9714967504093b2c0fab5c0f3bd"
|
||||
SRC_URI[sha256sum] = "51f3f1684a896e797182a0907299cc1f0ff5e5b51dd9a55478ae63a409855cee"
|
||||
|
||||
LINUX_VERSION ?= "${PV}"
|
||||
S = "${WORKDIR}/linux-${LINUX_VERSION}"
|
File diff suppressed because it is too large
Load Diff
@ -7,8 +7,8 @@ DEPENDS = "ell"
|
||||
|
||||
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] = "6f946f823b0dc3205e4e72becf8ad1915448d194f5b10d8003e4c8c5a18e4ef7"
|
||||
"
|
||||
SRC_URI[sha256sum] = "013b4a0a79629c20d915954fc3b5d0620ef6e0d6065db3c342f4b3f9111f46ec"
|
||||
|
||||
inherit autotools manpages pkgconfig python3native systemd
|
||||
|
@ -1,31 +0,0 @@
|
||||
From b8862e6af1c6d022b8c182098e7deddb874ece19 Mon Sep 17 00:00:00 2001
|
||||
From: Khem Raj <raj.khem@gmail.com>
|
||||
Date: Tue, 18 Dec 2018 23:10:44 -0800
|
||||
Subject: [PATCH] Do not pass null string to %s printf formatted string
|
||||
|
||||
Here the string is already decided to be NULL and passing
|
||||
a null pointer to %s will not work
|
||||
|
||||
Fixes
|
||||
error: '%s' directive argument is null
|
||||
|
||||
Upstream-Status: Submitted [https://gitlab.freedesktop.org/mobile-broadband/ModemManager/merge_requests/67]
|
||||
|
||||
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
||||
---
|
||||
plugins/mtk/mm-broadband-modem-mtk.c | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/plugins/mtk/mm-broadband-modem-mtk.c b/plugins/mtk/mm-broadband-modem-mtk.c
|
||||
index 475a63ac..541de4a5 100644
|
||||
--- a/plugins/mtk/mm-broadband-modem-mtk.c
|
||||
+++ b/plugins/mtk/mm-broadband-modem-mtk.c
|
||||
@@ -191,7 +191,7 @@ get_supported_modes_ready (MMBaseModem *self,
|
||||
|
||||
response = mm_base_modem_at_command_finish (MM_BASE_MODEM (self), res, &error);
|
||||
if (!response) {
|
||||
- mm_dbg ("Fail to get response %s", response);
|
||||
+ mm_dbg ("Fail to get response");
|
||||
g_task_return_error (task, error);
|
||||
g_object_unref (task);
|
||||
return;
|
@ -1,30 +0,0 @@
|
||||
From d4f73b037d11d20f080e74c05df28853fb833075 Mon Sep 17 00:00:00 2001
|
||||
From: Khem Raj <raj.khem@gmail.com>
|
||||
Date: Fri, 7 Dec 2018 22:59:47 -0800
|
||||
Subject: [PATCH] Do not set Wno-unused-but-set-variable
|
||||
|
||||
This is gcc specific warning, not implemented by pretending to be gcc
|
||||
like compilers e.g. clang.
|
||||
|
||||
We will pass this option from recipe
|
||||
|
||||
Upstream-Status: Inappropriate [OE-Specific]
|
||||
|
||||
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
||||
---
|
||||
m4/compiler_warnings.m4 | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/m4/compiler_warnings.m4 b/m4/compiler_warnings.m4
|
||||
index f498a28..e65e97f 100644
|
||||
--- a/m4/compiler_warnings.m4
|
||||
+++ b/m4/compiler_warnings.m4
|
||||
@@ -11,7 +11,7 @@ if test "$GCC" = "yes" -a "$set_more_warnings" != "no"; then
|
||||
-Wdeclaration-after-statement -Wstrict-prototypes \
|
||||
-Wno-unused-parameter -Wno-sign-compare \
|
||||
-Wno-deprecated-declarations \
|
||||
- -Wno-unused-but-set-variable -Wformat-security; do
|
||||
+ -Wno-unused -Wformat-security; do
|
||||
SAVE_CFLAGS="$CFLAGS"
|
||||
CFLAGS="$CFLAGS $option"
|
||||
AC_MSG_CHECKING([whether gcc understands $option])
|
@ -0,0 +1,68 @@
|
||||
From f7a3292c1c753b29384e216693f51a4213fea7d0 Mon Sep 17 00:00:00 2001
|
||||
From: "Bruce A. Johnson" <waterfordtrack@gmail.com>
|
||||
Date: Wed, 22 Dec 2021 14:24:02 -0500
|
||||
Subject: [PATCH 1/2] core: switch bash shell scripts to use /bin/sh for use
|
||||
w/Busybox.
|
||||
|
||||
Fixes https://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/issues/483
|
||||
---
|
||||
data/fcc-unlock/105b | 2 +-
|
||||
data/fcc-unlock/1199 | 2 +-
|
||||
data/fcc-unlock/1eac | 2 +-
|
||||
test/mmcli-test-sms | 2 +-
|
||||
tools/tests/test-wrapper.sh.in | 2 +-
|
||||
5 files changed, 5 insertions(+), 5 deletions(-)
|
||||
|
||||
diff --git a/data/fcc-unlock/105b b/data/fcc-unlock/105b
|
||||
index 21fe5329..f276050f 100644
|
||||
--- a/data/fcc-unlock/105b
|
||||
+++ b/data/fcc-unlock/105b
|
||||
@@ -1,4 +1,4 @@
|
||||
-#!/bin/bash
|
||||
+#!/bin/sh
|
||||
|
||||
# SPDX-License-Identifier: CC0-1.0
|
||||
# 2021 Aleksander Morgado <aleksander@aleksander.es>
|
||||
diff --git a/data/fcc-unlock/1199 b/data/fcc-unlock/1199
|
||||
index 0109c6ab..e1d3804c 100644
|
||||
--- a/data/fcc-unlock/1199
|
||||
+++ b/data/fcc-unlock/1199
|
||||
@@ -1,4 +1,4 @@
|
||||
-#!/bin/bash
|
||||
+#!/bin/sh
|
||||
|
||||
# SPDX-License-Identifier: CC0-1.0
|
||||
# 2021 Aleksander Morgado <aleksander@aleksander.es>
|
||||
diff --git a/data/fcc-unlock/1eac b/data/fcc-unlock/1eac
|
||||
index 1068d9c2..d9342852 100644
|
||||
--- a/data/fcc-unlock/1eac
|
||||
+++ b/data/fcc-unlock/1eac
|
||||
@@ -1,4 +1,4 @@
|
||||
-#!/bin/bash
|
||||
+#!/bin/sh
|
||||
|
||||
# SPDX-License-Identifier: CC0-1.0
|
||||
# 2021 Aleksander Morgado <aleksander@aleksander.es>
|
||||
diff --git a/test/mmcli-test-sms b/test/mmcli-test-sms
|
||||
index 18e0a7b4..7136ee0d 100755
|
||||
--- a/test/mmcli-test-sms
|
||||
+++ b/test/mmcli-test-sms
|
||||
@@ -1,4 +1,4 @@
|
||||
-#!/bin/bash
|
||||
+#!/bin/sh
|
||||
|
||||
print_usage () {
|
||||
echo "usage: $0 [MODEM INDEX] [all|ucs2|gsm7|data] [NUMBER]"
|
||||
diff --git a/tools/tests/test-wrapper.sh.in b/tools/tests/test-wrapper.sh.in
|
||||
index d64ea4cb..fcdb56de 100644
|
||||
--- a/tools/tests/test-wrapper.sh.in
|
||||
+++ b/tools/tests/test-wrapper.sh.in
|
||||
@@ -1,4 +1,4 @@
|
||||
-#!/bin/bash
|
||||
+#!/bin/sh
|
||||
|
||||
# For debugging behavior of test-modemmanager-service.py, you can modify
|
||||
# this line to add --log-file option
|
||||
--
|
||||
2.34.1
|
||||
|
@ -0,0 +1,100 @@
|
||||
From ddf634b92bf96b35f521db6da329628b4525c2eb Mon Sep 17 00:00:00 2001
|
||||
From: Sven Schwermer <sven.schwermer@disruptive-technologies.com>
|
||||
Date: Fri, 25 Feb 2022 21:37:13 +0100
|
||||
Subject: [PATCH 2/2] fcc-unlock: Make scripts POSIX shell compatible
|
||||
|
||||
This allows us to not rely on bash which may not be available on
|
||||
constrained systems, e.g. Yocto-built embedded systems. The scripts now
|
||||
pass shellcheck.
|
||||
|
||||
Signed-off-by: Sven Schwermer <sven.schwermer@disruptive-technologies.com>
|
||||
---
|
||||
data/fcc-unlock/105b | 8 ++++----
|
||||
data/fcc-unlock/1199 | 6 +++---
|
||||
data/fcc-unlock/1eac | 8 ++++----
|
||||
3 files changed, 11 insertions(+), 11 deletions(-)
|
||||
|
||||
diff --git a/data/fcc-unlock/105b b/data/fcc-unlock/105b
|
||||
index f276050f..772c90f4 100644
|
||||
--- a/data/fcc-unlock/105b
|
||||
+++ b/data/fcc-unlock/105b
|
||||
@@ -15,20 +15,20 @@ shift
|
||||
# second and next arguments are control port names
|
||||
for PORT in "$@"; do
|
||||
# match port type in Linux 5.14 and newer
|
||||
- grep -q MBIM /sys/class/wwan/${PORT}/type 2>/dev/null && {
|
||||
+ grep -q MBIM "/sys/class/wwan/$PORT/type" 2>/dev/null && {
|
||||
MBIM_PORT=$PORT
|
||||
break
|
||||
}
|
||||
# match port name in Linux 5.13
|
||||
- [[ $PORT == *"MBIM"* ]] && {
|
||||
+ echo "$PORT" | grep -q MBIM && {
|
||||
MBIM_PORT=$PORT
|
||||
break
|
||||
}
|
||||
done
|
||||
|
||||
# fail if no MBIM port exposed
|
||||
-[ -n "${MBIM_PORT}" ] || exit 2
|
||||
+[ -n "$MBIM_PORT" ] || exit 2
|
||||
|
||||
# run qmicli operation over MBIM
|
||||
-qmicli --device-open-proxy --device=/dev/${MBIM_PORT} --dms-foxconn-set-fcc-authentication=0
|
||||
+qmicli --device-open-proxy --device="/dev/$MBIM_PORT" --dms-foxconn-set-fcc-authentication=0
|
||||
exit $?
|
||||
diff --git a/data/fcc-unlock/1199 b/data/fcc-unlock/1199
|
||||
index e1d3804c..6dbf8d1b 100644
|
||||
--- a/data/fcc-unlock/1199
|
||||
+++ b/data/fcc-unlock/1199
|
||||
@@ -19,15 +19,15 @@ shift
|
||||
# second and next arguments are control port names
|
||||
for PORT in "$@"; do
|
||||
# match port name
|
||||
- [[ $PORT == *"cdc-wdm"* ]] && {
|
||||
+ echo "$PORT" | grep -q cdc-wdm && {
|
||||
CDC_WDM_PORT=$PORT
|
||||
break
|
||||
}
|
||||
done
|
||||
|
||||
# fail if no cdc-wdm port exposed
|
||||
-[ -n "${CDC_WDM_PORT}" ] || exit 2
|
||||
+[ -n "$CDC_WDM_PORT" ] || exit 2
|
||||
|
||||
# run qmicli operation
|
||||
-qmicli --device-open-proxy --device=/dev/${CDC_WDM_PORT} --dms-set-fcc-authentication
|
||||
+qmicli --device-open-proxy --device="/dev/$CDC_WDM_PORT" --dms-set-fcc-authentication
|
||||
exit $?
|
||||
diff --git a/data/fcc-unlock/1eac b/data/fcc-unlock/1eac
|
||||
index d9342852..44ce46d7 100644
|
||||
--- a/data/fcc-unlock/1eac
|
||||
+++ b/data/fcc-unlock/1eac
|
||||
@@ -15,20 +15,20 @@ shift
|
||||
# second and next arguments are control port names
|
||||
for PORT in "$@"; do
|
||||
# match port type in Linux 5.14 and newer
|
||||
- grep -q MBIM /sys/class/wwan/${PORT}/type 2>/dev/null && {
|
||||
+ grep -q MBIM "/sys/class/wwan/$PORT/type" 2>/dev/null && {
|
||||
MBIM_PORT=$PORT
|
||||
break
|
||||
}
|
||||
# match port name in Linux 5.13
|
||||
- [[ $PORT == *"MBIM"* ]] && {
|
||||
+ echo "$PORT" | grep -q MBIM && {
|
||||
MBIM_PORT=$PORT
|
||||
break
|
||||
}
|
||||
done
|
||||
|
||||
# fail if no MBIM port exposed
|
||||
-[ -n "${MBIM_PORT}" ] || exit 2
|
||||
+[ -n "$MBIM_PORT" ] || exit 2
|
||||
|
||||
# run mbimcli operation
|
||||
-mbimcli --device-open-proxy --device=/dev/${MBIM_PORT} --quectel-set-radio-state=on
|
||||
+mbimcli --device-open-proxy --device="/dev/$MBIM_PORT" --quectel-set-radio-state=on
|
||||
exit $?
|
||||
--
|
||||
2.34.1
|
||||
|
@ -1,53 +0,0 @@
|
||||
SUMMARY = "ModemManager is a daemon controlling broadband devices/connections"
|
||||
DESCRIPTION = "ModemManager is a DBus-activated daemon which controls mobile broadband (2G/3G/4G) devices and connections"
|
||||
HOMEPAGE = "http://www.freedesktop.org/wiki/Software/ModemManager/"
|
||||
LICENSE = "GPL-2.0-only & LGPL-2.1-only"
|
||||
LIC_FILES_CHKSUM = " \
|
||||
file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
|
||||
file://COPYING.LIB;md5=4fbd65380cdd255951079008b364516c \
|
||||
"
|
||||
|
||||
inherit gnomebase gettext systemd vala gobject-introspection bash-completion
|
||||
|
||||
DEPENDS = "glib-2.0 libgudev intltool-native libxslt-native"
|
||||
|
||||
SRC_URI = "http://www.freedesktop.org/software/ModemManager/ModemManager-${PV}.tar.xz"
|
||||
SRC_URI[sha256sum] = "21fdfaf94171261ad9d99771894f5ade4bc39ef3d1ff1d421054d14713e97880"
|
||||
S = "${WORKDIR}/ModemManager-${PV}"
|
||||
|
||||
PACKAGECONFIG ??= "mbim qmi \
|
||||
${@bb.utils.filter('DISTRO_FEATURES', 'systemd polkit', d)} \
|
||||
"
|
||||
|
||||
PACKAGECONFIG[at] = "--with-at-command-via-dbus"
|
||||
PACKAGECONFIG[systemd] = "--with-systemdsystemunitdir=${systemd_unitdir}/system/,,"
|
||||
PACKAGECONFIG[polkit] = "--with-polkit=yes,--with-polkit=no,polkit"
|
||||
# Support WWAN modems and devices which speak the Mobile Interface Broadband Model (MBIM) protocol.
|
||||
PACKAGECONFIG[mbim] = "--with-mbim,--without-mbim,libmbim"
|
||||
# Support WWAN modems and devices which speak the Qualcomm MSM Interface (QMI) protocol.
|
||||
PACKAGECONFIG[qmi] = "--with-qmi,--without-qmi,libqmi"
|
||||
|
||||
EXTRA_OECONF = " \
|
||||
--with-udev-base-dir=${nonarch_base_libdir}/udev \
|
||||
"
|
||||
|
||||
FILES:${PN} += " \
|
||||
${datadir}/icons \
|
||||
${datadir}/polkit-1 \
|
||||
${datadir}/dbus-1 \
|
||||
${datadir}/ModemManager \
|
||||
${libdir}/ModemManager \
|
||||
${systemd_unitdir}/system \
|
||||
"
|
||||
|
||||
FILES:${PN}-dev += " \
|
||||
${libdir}/ModemManager/*.la \
|
||||
"
|
||||
|
||||
FILES:${PN}-staticdev += " \
|
||||
${libdir}/ModemManager/*.a \
|
||||
"
|
||||
|
||||
FILES:${PN}-dbg += "${libdir}/ModemManager/.debug"
|
||||
|
||||
SYSTEMD_SERVICE:${PN} = "ModemManager.service"
|
@ -0,0 +1,62 @@
|
||||
SUMMARY = "ModemManager is a daemon controlling broadband devices/connections"
|
||||
DESCRIPTION = "ModemManager is a DBus-activated daemon which controls mobile broadband (2G/3G/4G) devices and connections"
|
||||
HOMEPAGE = "http://www.freedesktop.org/wiki/Software/ModemManager/"
|
||||
LICENSE = "GPL-2.0-or-later & LGPL-2.1-or-later"
|
||||
LIC_FILES_CHKSUM = " \
|
||||
file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
|
||||
file://COPYING.LIB;md5=4fbd65380cdd255951079008b364516c \
|
||||
"
|
||||
|
||||
GNOMEBASEBUILDCLASS = "meson"
|
||||
inherit gnomebase gettext systemd gobject-introspection bash-completion
|
||||
|
||||
DEPENDS = "glib-2.0 libgudev libxslt-native dbus"
|
||||
|
||||
SRCREV ?= "a7bcf2036b34d5043dbc33fee7d98bae5859c4d3"
|
||||
|
||||
# Patches 0001, 0002 will be in ModemManager > 1.18.6
|
||||
SRC_URI = " \
|
||||
git://gitlab.freedesktop.org/mobile-broadband/ModemManager.git;protocol=https;branch=mm-1-18 \
|
||||
file://0001-core-switch-bash-shell-scripts-to-use-bin-sh-for-use.patch \
|
||||
file://0002-fcc-unlock-Make-scripts-POSIX-shell-compatible.patch \
|
||||
"
|
||||
|
||||
S = "${WORKDIR}/git"
|
||||
|
||||
# strict, permissive
|
||||
MODEMMANAGER_POLKIT_TYPE ??= "permissive"
|
||||
|
||||
PACKAGECONFIG ??= "vala mbim qmi \
|
||||
${@bb.utils.filter('DISTRO_FEATURES', 'systemd polkit', d)} \
|
||||
"
|
||||
|
||||
PACKAGECONFIG[at] = "-Dat_command_via_dbus=true"
|
||||
PACKAGECONFIG[systemd] = " \
|
||||
-Dsystemdsystemunitdir=${systemd_unitdir}/system/, \
|
||||
-Dsystemdsystemunitdir=no -Dsystemd_journal=false -Dsystemd_suspend_resume=false \
|
||||
"
|
||||
PACKAGECONFIG[polkit] = "-Dpolkit=${MODEMMANAGER_POLKIT_TYPE},-Dpolkit=no,polkit"
|
||||
# Support WWAN modems and devices which speak the Mobile Interface Broadband Model (MBIM) protocol.
|
||||
PACKAGECONFIG[mbim] = "-Dmbim=true,-Dmbim=false -Dplugin_dell=disabled -Dplugin_foxconn=disabled,libmbim"
|
||||
# Support WWAN modems and devices which speak the Qualcomm MSM Interface (QMI) protocol.
|
||||
PACKAGECONFIG[qmi] = "-Dqmi=true,-Dqmi=false,libqmi"
|
||||
PACKAGECONFIG[qrtr] = "-Dqrtr=true,-Dqrtr=false,libqrtr-glib"
|
||||
PACKAGECONFIG[vala] = "-Dvapi=true,-Dvapi=false"
|
||||
|
||||
inherit ${@bb.utils.contains('PACKAGECONFIG', 'vala', 'vala', '', d)}
|
||||
|
||||
EXTRA_OEMESON = " \
|
||||
-Dudevdir=${nonarch_base_libdir}/udev \
|
||||
-Dqrtr=false \
|
||||
"
|
||||
|
||||
FILES:${PN} += " \
|
||||
${datadir}/icons \
|
||||
${datadir}/polkit-1 \
|
||||
${datadir}/dbus-1 \
|
||||
${datadir}/ModemManager \
|
||||
${libdir}/ModemManager \
|
||||
${systemd_unitdir}/system \
|
||||
"
|
||||
|
||||
SYSTEMD_SERVICE:${PN} = "ModemManager.service"
|
@ -10,8 +10,7 @@ inherit gnomebase useradd gettext systemd
|
||||
|
||||
SRC_URI = "${GNOME_MIRROR}/NetworkManager-openvpn/${@gnome_verdir("${PV}")}/NetworkManager-openvpn-${PV}.tar.xz"
|
||||
|
||||
SRC_URI[md5sum] = "bef67eca77bee68da703609b92f804a0"
|
||||
SRC_URI[sha256sum] = "e7419053fc3b5a7e25f1a7517c313ad4531b6ea280255524ebb85a70c76fdbeb"
|
||||
SRC_URI[sha256sum] = "53dfb0acf64478adc728074f162f62e60bff62a605bd897eb88b267e7057927a"
|
||||
|
||||
S = "${WORKDIR}/NetworkManager-openvpn-${PV}"
|
||||
|
@ -1,22 +0,0 @@
|
||||
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
|
@ -0,0 +1,24 @@
|
||||
From 37559b659e22886d5f55837d4f167ba5fda73e85 Mon Sep 17 00:00:00 2001
|
||||
From: Adrian Freihofer <adrian.freihofer@siemens.com>
|
||||
Date: Sun, 29 Aug 2021 15:50:35 +0200
|
||||
Subject: [PATCH] do-not-ask-host-for-ifcfg-defaults
|
||||
|
||||
---
|
||||
meson.build | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/meson.build b/meson.build
|
||||
index d0cec83..289aa1b 100644
|
||||
--- a/meson.build
|
||||
+++ b/meson.build
|
||||
@@ -304,8 +304,8 @@ else
|
||||
distro = 'unknown'
|
||||
endif
|
||||
|
||||
-enable_ifcfg_rh = get_option('ifcfg_rh') or (distro == 'redhat')
|
||||
-enable_ifupdown = get_option('ifupdown') or (distro == 'debian')
|
||||
+enable_ifcfg_rh = get_option('ifcfg_rh')
|
||||
+enable_ifupdown = get_option('ifupdown')
|
||||
|
||||
config_plugins_default = get_option('config_plugins_default')
|
||||
config_h.set_quoted('NM_CONFIG_DEFAULT_MAIN_PLUGINS', config_plugins_default)
|
@ -0,0 +1,34 @@
|
||||
From 7b5dc04e1fcc28dc653fb7bf0e9dda3700d93218 Mon Sep 17 00:00:00 2001
|
||||
From: Yi Zhao <yi.zhao@windriver.com>
|
||||
Date: Tue, 3 May 2022 15:30:37 +0800
|
||||
Subject: [PATCH] libnm-client-test: add dependency libnm_client_public_dep
|
||||
|
||||
Fix parallel build error:
|
||||
| In file included from ../NetworkManager-1.36.0/src/libnm-client-test/nm-test-utils-impl.c:10:
|
||||
| ../NetworkManager-1.36.0/src/libnm-client-public/NetworkManager.h:47:10: fatal error: nm-enum-types.h: No such file or directory
|
||||
| 47 | #include "nm-enum-types.h"
|
||||
| | ^~~~~~~~~~~~~~~~~
|
||||
|
||||
Upstream-Status: Submitted
|
||||
[https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/1206]
|
||||
|
||||
Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
|
||||
---
|
||||
src/libnm-client-test/meson.build | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
diff --git a/src/libnm-client-test/meson.build b/src/libnm-client-test/meson.build
|
||||
index 8e2fba1130..bcac437702 100644
|
||||
--- a/src/libnm-client-test/meson.build
|
||||
+++ b/src/libnm-client-test/meson.build
|
||||
@@ -13,6 +13,7 @@ libnm_client_test = static_library(
|
||||
],
|
||||
dependencies: [
|
||||
libnm_core_public_dep,
|
||||
+ libnm_client_public_dep,
|
||||
glib_dep,
|
||||
],
|
||||
)
|
||||
--
|
||||
2.25.1
|
||||
|
@ -1,60 +0,0 @@
|
||||
From d0dead0478a070b96f37bd3b310443eaa8c93a25 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com>
|
||||
Date: Mon, 5 Jul 2021 00:42:23 +0200
|
||||
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 | 5 -----
|
||||
configure.ac | 5 -----
|
||||
2 files changed, 10 deletions(-)
|
||||
|
||||
diff --git a/Makefile.am b/Makefile.am
|
||||
index 5a62070..3d0ebcd 100644
|
||||
--- a/Makefile.am
|
||||
+++ b/Makefile.am
|
||||
@@ -1860,15 +1860,10 @@ src/libnm-client-impl/libnm.typelib: src/libnm-client-impl/libnm.gir
|
||||
INTROSPECTION_GIRS += src/libnm-client-impl/NM-1.0.gir
|
||||
|
||||
libnm_noinst_data = \
|
||||
- src/nmcli/generate-docs-nm-settings-nmcli.xml \
|
||||
- man/nm-settings-docs-dbus.xml \
|
||||
- man/nm-settings-docs-nmcli.xml \
|
||||
src/libnm-client-impl/nm-property-infos-dbus.xml \
|
||||
src/libnm-client-impl/nm-property-infos-ifcfg-rh.xml \
|
||||
src/libnm-client-impl/nm-property-infos-keyfile.xml \
|
||||
src/libnm-client-impl/nm-property-infos-nmcli.xml \
|
||||
- src/libnm-client-impl/nm-settings-docs-gir.xml \
|
||||
- src/libnmc-setting/settings-docs-input.xml \
|
||||
$(NULL)
|
||||
|
||||
noinst_DATA += $(libnm_noinst_data)
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index 8fe23de..dc24850 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -1258,11 +1258,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.31.1
|
||||
|
@ -1,30 +0,0 @@
|
||||
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
|
||||
|
@ -0,0 +1,2 @@
|
||||
[main]
|
||||
dhcp=dhcpcd
|
@ -0,0 +1,3 @@
|
||||
[device]
|
||||
wifi.iwd.autoconnect=yes
|
||||
wifi.backend=iwd
|
@ -1,180 +0,0 @@
|
||||
SUMMARY = "NetworkManager"
|
||||
HOMEPAGE = "https://wiki.gnome.org/Projects/NetworkManager"
|
||||
SECTION = "net/misc"
|
||||
|
||||
LICENSE = "GPL-2.0-or-later & LGPL-2.1-or-later"
|
||||
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[sha256sum] = "3e5ccc66805659e3f11a718e3a599f9726b79a01d6ff14814be6ad8bc5da8bb8"
|
||||
|
||||
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}/src/libnm-client-impl/.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)} \
|
||||
${@bb.utils.contains('DISTRO_FEATURES', 'selinux', 'selinux audit', '', 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"
|
||||
PACKAGECONFIG[audit] = "--with-libaudit,--without-libaudit,audit"
|
||||
PACKAGECONFIG[selinux] = "--with-selinux,--without-selinux,libselinux"
|
||||
|
||||
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
|
||||
}
|
@ -0,0 +1,249 @@
|
||||
SUMMARY = "NetworkManager"
|
||||
HOMEPAGE = "https://wiki.gnome.org/Projects/NetworkManager"
|
||||
SECTION = "net/misc"
|
||||
|
||||
LICENSE = "GPL-2.0-or-later & LGPL-2.1-or-later"
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
|
||||
file://COPYING.LGPL;md5=4fbd65380cdd255951079008b364516c \
|
||||
"
|
||||
|
||||
DEPENDS = " \
|
||||
coreutils-native \
|
||||
intltool-native \
|
||||
libxslt-native \
|
||||
libnl \
|
||||
udev \
|
||||
util-linux \
|
||||
libndp \
|
||||
libnewt \
|
||||
curl \
|
||||
dbus \
|
||||
"
|
||||
|
||||
GNOMEBASEBUILDCLASS = "meson"
|
||||
inherit gnomebase gettext update-rc.d systemd 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://enable-dhcpcd.conf \
|
||||
file://enable-iwd.conf \
|
||||
file://0001-do-not-ask-host-for-ifcfg-defaults.patch \
|
||||
file://0001-libnm-client-test-add-dependency-libnm_client_public.patch \
|
||||
"
|
||||
SRC_URI[sha256sum] = "ab855cbe3b41832e9a3b003810e7c7313dfe19e630d29806d14d87fdd1470cab"
|
||||
|
||||
S = "${WORKDIR}/NetworkManager-${PV}"
|
||||
|
||||
# ['auto', 'symlink', 'file', 'netconfig', 'resolvconf']
|
||||
NETWORKMANAGER_DNS_RC_MANAGER_DEFAULT ??= "auto"
|
||||
|
||||
# ['dhcpcanon', 'dhclient', 'dhcpcd', 'internal', 'nettools']
|
||||
NETWORKMANAGER_DHCP_DEFAULT ??= "internal"
|
||||
|
||||
EXTRA_OEMESON = "\
|
||||
-Difcfg_rh=false \
|
||||
-Dtests=yes \
|
||||
-Dnmtui=true \
|
||||
-Dudev_dir=${nonarch_base_libdir}/udev \
|
||||
-Dlibpsl=false \
|
||||
-Dqt=false \
|
||||
-Dconfig_dns_rc_manager_default=${NETWORKMANAGER_DNS_RC_MANAGER_DEFAULT} \
|
||||
-Dconfig_dhcp_default=${NETWORKMANAGER_DHCP_DEFAULT} \
|
||||
-Ddhcpcanon=false \
|
||||
"
|
||||
|
||||
# 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 GI_TYPELIB_PATH="${B}}/src/libnm-client-impl${GI_TYPELIB_PATH:+:$GI_TYPELIB_PATH}"
|
||||
}
|
||||
|
||||
PACKAGECONFIG ??= "readline nss ifupdown dnsmasq nmcli vala \
|
||||
${@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)} \
|
||||
${@bb.utils.contains('DISTRO_FEATURES', 'selinux', 'selinux audit', '', d)} \
|
||||
"
|
||||
|
||||
inherit ${@bb.utils.contains('PACKAGECONFIG', 'nmcli', 'bash-completion', '', d)}
|
||||
inherit ${@bb.utils.contains('PACKAGECONFIG', 'vala', 'vala', '', d)}
|
||||
|
||||
PACKAGECONFIG[systemd] = "\
|
||||
-Dsystemdsystemunitdir=${systemd_unitdir}/system -Dsession_tracking=systemd,\
|
||||
-Dsystemdsystemunitdir=no -Dsystemd_journal=false -Dsession_tracking=no\
|
||||
"
|
||||
PACKAGECONFIG[polkit] = "-Dpolkit=true,-Dpolkit=false,polkit"
|
||||
PACKAGECONFIG[bluez5] = "-Dbluez5_dun=true,-Dbluez5_dun=false,bluez5"
|
||||
# consolekit is not picked by shlibs, so add it to RDEPENDS too
|
||||
PACKAGECONFIG[consolekit] = "-Dsession_tracking_consolekit=true,-Dsession_tracking_consolekit=false,consolekit,consolekit"
|
||||
PACKAGECONFIG[modemmanager] = "-Dmodem_manager=true,-Dmodem_manager=false,modemmanager mobile-broadband-provider-info"
|
||||
PACKAGECONFIG[ppp] = "-Dppp=true,-Dppp=false,ppp,ppp"
|
||||
PACKAGECONFIG[dnsmasq] = "-Ddnsmasq=${bindir}/dnsmasq"
|
||||
PACKAGECONFIG[nss] = "-Dcrypto=nss,,nss"
|
||||
PACKAGECONFIG[resolvconf] = "-Dresolvconf=${base_sbindir}/resolvconf,-Dresolvconf=no,,resolvconf"
|
||||
PACKAGECONFIG[gnutls] = "-Dcrypto=gnutls,,gnutls"
|
||||
PACKAGECONFIG[wifi] = "-Dwext=true -Dwifi=true,-Dwext=false -Dwifi=false"
|
||||
PACKAGECONFIG[iwd] = "-Diwd=true,-Diwd=false"
|
||||
PACKAGECONFIG[ifupdown] = "-Difupdown=true,-Difupdown=false"
|
||||
PACKAGECONFIG[cloud-setup] = "-Dnm_cloud_setup=true,-Dnm_cloud_setup=false"
|
||||
PACKAGECONFIG[nmcli] = "-Dnmcli=true,-Dnmcli=false"
|
||||
PACKAGECONFIG[readline] = "-Dreadline=libreadline,,readline"
|
||||
PACKAGECONFIG[libedit] = "-Dreadline=libedit,,libedit"
|
||||
PACKAGECONFIG[ovs] = "-Dovs=true,-Dovs=false,jansson"
|
||||
PACKAGECONFIG[audit] = "-Dlibaudit=yes,-Dlibaudit=no"
|
||||
PACKAGECONFIG[selinux] = "-Dselinux=true,-Dselinux=false,libselinux"
|
||||
PACKAGECONFIG[vala] = "-Dvapi=true,-Dvapi=false"
|
||||
PACKAGECONFIG[dhcpcd] = "-Ddhcpcd=yes,-Ddhcpcd=no,,dhcpcd"
|
||||
PACKAGECONFIG[dhclient] = "-Ddhclient=yes,-Ddhclient=no,,dhcp"
|
||||
PACKAGECONFIG[concheck] = "-Dconcheck=true,-Dconcheck=false"
|
||||
|
||||
|
||||
PACKAGES =+ " \
|
||||
${PN}-adsl \
|
||||
${PN}-bluetooth \
|
||||
${PN}-cloud-setup \
|
||||
${PN}-nmcli ${PN}-nmcli-doc \
|
||||
${PN}-nmtui ${PN}-nmtui-doc \
|
||||
${PN}-wifi \
|
||||
${PN}-wwan \
|
||||
${PN}-ovs ${PN}-ovs-doc \
|
||||
${PN}-ppp \
|
||||
"
|
||||
|
||||
SYSTEMD_PACKAGES = "${PN} ${PN}-cloud-setup"
|
||||
|
||||
NETWORKMANAGER_PLUGINDIR = "${libdir}/NetworkManager/${PV}"
|
||||
|
||||
FILES:${PN}-adsl = "${NETWORKMANAGER_PLUGINDIR}/libnm-device-plugin-adsl.so"
|
||||
|
||||
FILES:${PN}-bluetooth = "${NETWORKMANAGER_PLUGINDIR}/libnm-device-plugin-bluetooth.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}-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* \
|
||||
"
|
||||
|
||||
FILES:${PN}-wifi = "${NETWORKMANAGER_PLUGINDIR}/libnm-device-plugin-wifi.so"
|
||||
|
||||
FILES:${PN}-wwan = "\
|
||||
${NETWORKMANAGER_PLUGINDIR}/libnm-device-plugin-wwan.so \
|
||||
${NETWORKMANAGER_PLUGINDIR}/libnm-wwan.so \
|
||||
"
|
||||
|
||||
FILES:${PN}-ovs = "\
|
||||
${NETWORKMANAGER_PLUGINDIR}/libnm-device-plugin-ovs.so \
|
||||
${systemd_system_unitdir}/NetworkManager.service.d/NetworkManager-ovs.conf \
|
||||
"
|
||||
|
||||
FILES:${PN}-ovs-doc = "\
|
||||
${mandir}/man7/nm-openvswitch.7* \
|
||||
"
|
||||
|
||||
FILES:${PN}-ppp = "\
|
||||
${NETWORKMANAGER_PLUGINDIR}/libnm-ppp-plugin.so \
|
||||
${libdir}/pppd/*/nm-pppd-plugin.so \
|
||||
"
|
||||
|
||||
FILES:${PN}-dev += " \
|
||||
${libdir}/pppd/*/*.la \
|
||||
${libdir}/NetworkManager/*.la \
|
||||
${NETWORKMANAGER_PLUGINDIR}/*.la \
|
||||
"
|
||||
|
||||
FILES:${PN} += " \
|
||||
${libexecdir} \
|
||||
${libdir}/NetworkManager \
|
||||
${nonarch_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} \
|
||||
"
|
||||
|
||||
RRECOMMENDS:${PN} += "\
|
||||
iptables \
|
||||
${@bb.utils.filter('PACKAGECONFIG', 'dnsmasq', d)} \
|
||||
${@bb.utils.contains('PACKAGECONFIG','adsl','${PN}-adsl','',d)} \
|
||||
${@bb.utils.contains('PACKAGECONFIG','bluez5','${PN}-bluetooth','',d)} \
|
||||
${@bb.utils.contains('PACKAGECONFIG','cloud-setup','${PN}-cloud-setup','',d)} \
|
||||
${@bb.utils.contains('PACKAGECONFIG','nmcli','${PN}-nmcli','',d)} \
|
||||
${@bb.utils.contains('PACKAGECONFIG','nmtui','${PN}-nmtui','',d)} \
|
||||
${@bb.utils.contains('PACKAGECONFIG','wifi','${PN}-wifi','',d)} \
|
||||
${@bb.utils.contains('PACKAGECONFIG','wwan','${PN}-wwan','',d)} \
|
||||
${@bb.utils.contains('PACKAGECONFIG','ovs','${PN}-ovs','',d)} \
|
||||
${@bb.utils.contains('PACKAGECONFIG','ppp','${PN}-ppp','',d)} \
|
||||
"
|
||||
RCONFLICTS:${PN} = "connman"
|
||||
|
||||
|
||||
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
|
||||
|
||||
# Enable iwd if compiled
|
||||
if ${@bb.utils.contains('PACKAGECONFIG','iwd','true','false',d)}; then
|
||||
install -Dm 0644 ${WORKDIR}/enable-iwd.conf ${D}${libdir}/NetworkManager/conf.d/enable-iwd.conf
|
||||
fi
|
||||
|
||||
# Enable dhcpd if compiled
|
||||
if ${@bb.utils.contains('PACKAGECONFIG','dhcpcd','true','false',d)}; then
|
||||
install -Dm 0644 ${WORKDIR}/enable-dhcpcd.conf ${D}${libdir}/NetworkManager/conf.d/enable-dhcpcd.conf
|
||||
fi
|
||||
}
|
@ -0,0 +1,34 @@
|
||||
From ff0718174faf1167fb4765ebe4bd280bbe8d2ac6 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com>
|
||||
Date: Sun, 8 Dec 2019 23:42:00 +0100
|
||||
Subject: [PATCH] musl: Hack to fix configure
|
||||
|
||||
---
|
||||
meson.build | 11 ++++++++---
|
||||
1 file changed, 8 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/meson.build b/meson.build
|
||||
index 075776f..dfd7421 100644
|
||||
--- a/meson.build
|
||||
+++ b/meson.build
|
||||
@@ -101,9 +101,14 @@ elif cc.has_header_symbol('paths.h', '_PATH_WTMPX')
|
||||
|
||||
config_h.set('PATH_WTMP', '_PATH_WTMPX')
|
||||
else
|
||||
- path_wtmp = '/var/log/utx.log'
|
||||
- assert(run_command('test', '-e', path_wtmp).returncode() == 0, 'Do not know which filename to watch for wtmp changes')
|
||||
- config_h.set_quoted('PATH_WTMP', path_wtmp)
|
||||
+ # musl: This is just a build fix hack.
|
||||
+ # As usual they know better, consider all other projects crap and offer zero
|
||||
+ # alternatives: So wtmp is a dead stub only [1] (= /dev/null/wtmp - taken
|
||||
+ # from musl sources).
|
||||
+ # Maybe a hero comes along and adds utmps [2] to make accountsservice useful for musl
|
||||
+ # [1] https://wiki.musl-libc.org/faq.html#Q:-Why-is-the-utmp/wtmp-functionality-only-implemented-as-stubs?
|
||||
+ # [2] https://github.com/skarnet/utmps
|
||||
+ config_h.set_quoted('PATH_WTMP', '/dev/null/wtmp')
|
||||
endif
|
||||
|
||||
# compiler flags
|
||||
--
|
||||
2.34.1
|
||||
|
@ -0,0 +1,44 @@
|
||||
From 7401e682400df87f3258f795bb1d143f64a35a9f Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com>
|
||||
Date: Mon, 9 Dec 2019 00:12:08 +0100
|
||||
Subject: [PATCH] musl: add missing fgetspent_r
|
||||
|
||||
Stolen from void-linux
|
||||
|
||||
Upstream-Status: Inappropriate [musl-specific]
|
||||
|
||||
---
|
||||
src/daemon.c | 20 ++++++++++++++++++++
|
||||
1 file changed, 20 insertions(+)
|
||||
|
||||
diff --git a/src/daemon.c b/src/daemon.c
|
||||
index c52bda3..a7676fe 100644
|
||||
--- a/src/daemon.c
|
||||
+++ b/src/daemon.c
|
||||
@@ -164,6 +164,26 @@ remove_cache_files (const gchar *user_name)
|
||||
g_remove (icon_filename);
|
||||
}
|
||||
|
||||
+/* Musl libc does not support fgetspent_r(), write own
|
||||
+ * wrapper
|
||||
+ */
|
||||
+static int fgetspent_r(FILE *fp, struct spwd *spbuf, char *buf, size_t buflen, struct spwd **spbufp) {
|
||||
+ struct spwd *shadow_entry = fgetspent(fp);
|
||||
+ if(!shadow_entry)
|
||||
+ return -1;
|
||||
+ size_t namplen = strlen(shadow_entry->sp_namp);
|
||||
+ size_t pwdplen = strlen(shadow_entry->sp_pwdp);
|
||||
+
|
||||
+ if(namplen + pwdplen + 2 > buflen)
|
||||
+ return -1;
|
||||
+
|
||||
+ *spbufp = memcpy(spbuf, shadow_entry, sizeof(struct spwd));
|
||||
+ spbuf->sp_namp = strncpy(buf, shadow_entry->sp_namp, namplen + 1);
|
||||
+ spbuf->sp_pwdp = strncpy(buf + namplen + 1, shadow_entry->sp_pwdp, pwdplen + 1);
|
||||
+
|
||||
+ return 0;
|
||||
+}
|
||||
+
|
||||
static struct passwd *
|
||||
entry_generator_fgetpwent (Daemon *daemon,
|
||||
GHashTable *users,
|
@ -1,22 +0,0 @@
|
||||
SUMMARY = "D-Bus service for accessing the list of user accounts and information attached to those accounts."
|
||||
HOMEPAGE = "https://www.freedesktop.org/wiki/Software/AccountsService"
|
||||
|
||||
LICENSE = "GPL-3.0-only"
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
|
||||
|
||||
SRC_URI = "https://www.freedesktop.org/software/accountsservice/accountsservice-${PV}.tar.xz"
|
||||
SRC_URI[md5sum] = "6e4c6fbd490260cfe17de2e76f5d803a"
|
||||
SRC_URI[sha256sum] = "ff2b2419a7e06bd9cb335ffe391c7409b49a0f0130b890bd54692a3986699c9b"
|
||||
|
||||
DEPENDS = "glib-2.0 intltool-native polkit systemd glib-2.0-native dbus"
|
||||
|
||||
inherit meson pkgconfig gettext gobject-introspection
|
||||
|
||||
FILES:${PN} += "\
|
||||
${datadir}/dbus-1/interfaces/*.xml \
|
||||
${datadir}/dbus-1/system-services/org.freedesktop.Accounts.service \
|
||||
${datadir}/polkit-1/actions/org.freedesktop.accounts.policy \
|
||||
${systemd_system_unitdir} \
|
||||
"
|
||||
EXTRA_OEMESON = "-Dsystemd=true"
|
||||
|
@ -0,0 +1,32 @@
|
||||
DESCRIPTION = "D-Bus interfaces for querying and manipulating user account information"
|
||||
HOMEPAGE = "https://www.freedesktop.org/wiki/Software/AccountsService/"
|
||||
LICENSE = "GPL-3.0-only"
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
|
||||
|
||||
DEPENDS = " \
|
||||
dbus \
|
||||
polkit \
|
||||
"
|
||||
|
||||
inherit meson gobject-introspection gtk-doc features_check systemd vala
|
||||
|
||||
REQUIRED_DISTRO_FEATURES = "polkit"
|
||||
|
||||
SRC_URI = "https://www.freedesktop.org/software/${BPN}/${BPN}-${PV}.tar.xz"
|
||||
SRC_URI:append:libc-musl = " \
|
||||
file://0001-musl-Hack-to-fix-build.patch \
|
||||
file://0002-musl-add-missing-fgetspent_r.patch \
|
||||
"
|
||||
SRC_URI[sha256sum] = "909997a76919fe7dc138a9a01cea70bd622d5a932dbc9fb13010113023a7a391"
|
||||
|
||||
GTKDOC_MESON_OPTION = "gtk_doc"
|
||||
|
||||
PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'systemd', d)}"
|
||||
PACKAGECONFIG[systemd] = ", -Dsystemdsystemunitdir='no', systemd"
|
||||
|
||||
SYSTEMD_SERVICE:${PN} = "accounts-daemon.service"
|
||||
|
||||
FILES:${PN} += " \
|
||||
${datadir}/dbus-1 \
|
||||
${datadir}/polkit-1 \
|
||||
"
|
@ -1,16 +0,0 @@
|
||||
SUMMARY = "GTK support library for colord"
|
||||
HOMEPAGE = "https://www.freedesktop.org/software/colord/"
|
||||
|
||||
LICENSE = "LGPL-3.0-only"
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=e6a600fd5e1d9cbde2d983680233ad02"
|
||||
|
||||
SRC_URI = "https://www.freedesktop.org/software/colord/releases/colord-gtk-${PV}.tar.xz"
|
||||
SRC_URI[md5sum] = "bb9d6f3c037152ad791003375aa6c16c"
|
||||
SRC_URI[sha256sum] = "28d00b7f157ea3e2ea5315387b2660fde82faba16674861c50465e55d61a3e45"
|
||||
|
||||
DEPENDS = "lcms glib-2.0 intltool-native gtk+3 glib-2.0-native colord"
|
||||
|
||||
inherit pkgconfig gettext autotools
|
||||
|
||||
EXTRA_OECONF = "--enable-introspection=no --disable-gtk-doc"
|
||||
|
25
meta-gnome/recipes-freedesktop/colord/colord-gtk_0.3.0.bb
Normal file
25
meta-gnome/recipes-freedesktop/colord/colord-gtk_0.3.0.bb
Normal file
@ -0,0 +1,25 @@
|
||||
SUMMARY = "GTK support library for colord"
|
||||
HOMEPAGE = "https://www.freedesktop.org/software/colord/"
|
||||
LICENSE = "LGPL-3.0-only"
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=e6a600fd5e1d9cbde2d983680233ad02"
|
||||
|
||||
inherit meson gobject-introspection gettext gtk-doc features_check
|
||||
|
||||
DEPENDS = " \
|
||||
colord \
|
||||
"
|
||||
|
||||
SRC_URI = "http://www.freedesktop.org/software/colord/releases/${BPN}-${PV}.tar.xz"
|
||||
SRC_URI[sha256sum] = "b9466656d66d9a6ffbc2dd04fa91c8f6af516bf9efaacb69744eec0f56f3c1d0"
|
||||
|
||||
PACKAGECONFIG ??= "gtk3 gtk4"
|
||||
PACKAGECONFIG[gtk3] = "-Dgtk3=true, -Dgtk3=false, gtk+3"
|
||||
PACKAGECONFIG[gtk4] = "-Dgtk4=true, -Dgtk4=false, gtk4"
|
||||
|
||||
EXTRA_OEMESON = "-Dman=false"
|
||||
GIR_MESON_OPTION = ""
|
||||
# gobject-introspection is mandatory and cannot be configured
|
||||
REQUIRED_DISTRO_FEATURES = "gobject-introspection-data"
|
||||
|
||||
# colord
|
||||
REQUIRED_DISTRO_FEATURES += "polkit"
|
@ -1,93 +0,0 @@
|
||||
From 7d5e205aa58a10e7b1ccc2fa75b443508a5c3e18 Mon Sep 17 00:00:00 2001
|
||||
From: Khem Raj <raj.khem@gmail.com>
|
||||
Date: Wed, 20 Jan 2016 04:31:59 +0000
|
||||
Subject: [PATCH] make netgroup support configurable
|
||||
|
||||
Disable using innetgr and *netigrent function if not available
|
||||
|
||||
These functions are not available on all libc implementations e.g. musl
|
||||
doesnt have them.
|
||||
|
||||
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
||||
---
|
||||
Upstream-Status: Pending
|
||||
|
||||
Rebase to 0.115
|
||||
Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
|
||||
---
|
||||
configure.ac | 2 +-
|
||||
src/polkitbackend/polkitbackendinteractiveauthority.c | 6 +++++-
|
||||
src/polkitbackend/polkitbackendjsauthority.cpp | 2 ++
|
||||
3 files changed, 8 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index 8b3e1b1..1c392df 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -99,7 +99,7 @@ AC_CHECK_LIB(expat,XML_ParserCreate,[EXPAT_LIBS="-lexpat"],
|
||||
[AC_MSG_ERROR([Can't find expat library. Please install expat.])])
|
||||
AC_SUBST(EXPAT_LIBS)
|
||||
|
||||
-AC_CHECK_FUNCS(clearenv fdatasync)
|
||||
+AC_CHECK_FUNCS(clearenv fdatasync getnetgrent innetgr)
|
||||
|
||||
if test "x$GCC" = "xyes"; then
|
||||
LDFLAGS="-Wl,--as-needed $LDFLAGS"
|
||||
diff --git a/src/polkitbackend/polkitbackendinteractiveauthority.c b/src/polkitbackend/polkitbackendinteractiveauthority.c
|
||||
index cb6fdab..de3f752 100644
|
||||
--- a/src/polkitbackend/polkitbackendinteractiveauthority.c
|
||||
+++ b/src/polkitbackend/polkitbackendinteractiveauthority.c
|
||||
@@ -2224,7 +2224,7 @@ get_users_in_group (PolkitIdentity *group,
|
||||
out:
|
||||
return ret;
|
||||
}
|
||||
-
|
||||
+#if defined HAVE_GETNETGRENT
|
||||
static GList *
|
||||
get_users_in_net_group (PolkitIdentity *group,
|
||||
gboolean include_root)
|
||||
@@ -2285,6 +2285,8 @@ get_users_in_net_group (PolkitIdentity *group,
|
||||
return ret;
|
||||
}
|
||||
|
||||
+#endif
|
||||
+
|
||||
/* ---------------------------------------------------------------------------------------------------- */
|
||||
|
||||
static void
|
||||
@@ -2369,10 +2371,12 @@ authentication_agent_initiate_challenge (AuthenticationAgent *agent,
|
||||
{
|
||||
user_identities = g_list_concat (user_identities, get_users_in_group (identity, FALSE));
|
||||
}
|
||||
+#if defined HAVE_GETNETGRENT
|
||||
else if (POLKIT_IS_UNIX_NETGROUP (identity))
|
||||
{
|
||||
user_identities = g_list_concat (user_identities, get_users_in_net_group (identity, FALSE));
|
||||
}
|
||||
+#endif
|
||||
else
|
||||
{
|
||||
g_warning ("Unsupported identity");
|
||||
diff --git a/src/polkitbackend/polkitbackendjsauthority.cpp b/src/polkitbackend/polkitbackendjsauthority.cpp
|
||||
index 517f3c6..6042dd2 100644
|
||||
--- a/src/polkitbackend/polkitbackendjsauthority.cpp
|
||||
+++ b/src/polkitbackend/polkitbackendjsauthority.cpp
|
||||
@@ -1502,6 +1502,7 @@ js_polkit_user_is_in_netgroup (JSContext *cx,
|
||||
user = JS_EncodeString (cx, args[0].toString());
|
||||
netgroup = JS_EncodeString (cx, args[1].toString());
|
||||
|
||||
+#if defined HAVE_INNETGR
|
||||
if (innetgr (netgroup,
|
||||
NULL, /* host */
|
||||
user,
|
||||
@@ -1509,6 +1510,7 @@ js_polkit_user_is_in_netgroup (JSContext *cx,
|
||||
{
|
||||
is_in_netgroup = true;
|
||||
}
|
||||
+#endif
|
||||
|
||||
JS_free (cx, netgroup);
|
||||
JS_free (cx, user);
|
||||
--
|
||||
2.7.4
|
||||
|
@ -0,0 +1,84 @@
|
||||
From 85c2dd9275cdfb369f613089f22733c0f1ba2aec Mon Sep 17 00:00:00 2001
|
||||
From: Jan Rybar <jrybar@redhat.com>
|
||||
Date: Tue, 25 Jan 2022 17:21:46 +0000
|
||||
Subject: [PATCH 1/3] pkexec: local privilege escalation (CVE-2021-4034)
|
||||
|
||||
Signed-off-by: Mikko Rapeli <mikko.rapeli@bmw.de>
|
||||
|
||||
---
|
||||
src/programs/pkcheck.c | 5 +++++
|
||||
src/programs/pkexec.c | 23 ++++++++++++++++++++---
|
||||
2 files changed, 25 insertions(+), 3 deletions(-)
|
||||
|
||||
CVE: CVE-2021-4034
|
||||
Upstream-Status: Backport [a2bf5c9c83b6ae46cbd5c779d3055bff81ded683]
|
||||
|
||||
diff --git a/src/programs/pkcheck.c b/src/programs/pkcheck.c
|
||||
index f1bb4e1..768525c 100644
|
||||
--- a/src/programs/pkcheck.c
|
||||
+++ b/src/programs/pkcheck.c
|
||||
@@ -363,6 +363,11 @@ main (int argc, char *argv[])
|
||||
local_agent_handle = NULL;
|
||||
ret = 126;
|
||||
|
||||
+ if (argc < 1)
|
||||
+ {
|
||||
+ exit(126);
|
||||
+ }
|
||||
+
|
||||
/* Disable remote file access from GIO. */
|
||||
setenv ("GIO_USE_VFS", "local", 1);
|
||||
|
||||
diff --git a/src/programs/pkexec.c b/src/programs/pkexec.c
|
||||
index 7698c5c..84e5ef6 100644
|
||||
--- a/src/programs/pkexec.c
|
||||
+++ b/src/programs/pkexec.c
|
||||
@@ -488,6 +488,15 @@ main (int argc, char *argv[])
|
||||
pid_t pid_of_caller;
|
||||
gpointer local_agent_handle;
|
||||
|
||||
+
|
||||
+ /*
|
||||
+ * If 'pkexec' is called THIS wrong, someone's probably evil-doing. Don't be nice, just bail out.
|
||||
+ */
|
||||
+ if (argc<1)
|
||||
+ {
|
||||
+ exit(127);
|
||||
+ }
|
||||
+
|
||||
ret = 127;
|
||||
authority = NULL;
|
||||
subject = NULL;
|
||||
@@ -614,10 +623,10 @@ main (int argc, char *argv[])
|
||||
|
||||
path = g_strdup (pwstruct.pw_shell);
|
||||
if (!path)
|
||||
- {
|
||||
+ {
|
||||
g_printerr ("No shell configured or error retrieving pw_shell\n");
|
||||
goto out;
|
||||
- }
|
||||
+ }
|
||||
/* If you change this, be sure to change the if (!command_line)
|
||||
case below too */
|
||||
command_line = g_strdup (path);
|
||||
@@ -636,7 +645,15 @@ main (int argc, char *argv[])
|
||||
goto out;
|
||||
}
|
||||
g_free (path);
|
||||
- argv[n] = path = s;
|
||||
+ path = s;
|
||||
+
|
||||
+ /* argc<2 and pkexec runs just shell, argv is guaranteed to be null-terminated.
|
||||
+ * /-less shell shouldn't happen, but let's be defensive and don't write to null-termination
|
||||
+ */
|
||||
+ if (argv[n] != NULL)
|
||||
+ {
|
||||
+ argv[n] = path;
|
||||
+ }
|
||||
}
|
||||
if (access (path, F_OK) != 0)
|
||||
{
|
||||
--
|
||||
2.20.1
|
||||
|
@ -0,0 +1,88 @@
|
||||
From c86aea01a06ad4d6c428137e9cfe2f74b1ae7f01 Mon Sep 17 00:00:00 2001
|
||||
From: Jan Rybar <jrybar@redhat.com>
|
||||
Date: Mon, 21 Feb 2022 08:29:05 +0000
|
||||
Subject: [PATCH 2/3] CVE-2021-4115 (GHSL-2021-077) fix
|
||||
|
||||
Signed-off-by: Mikko Rapeli <mikko.rapeli@bmw.de>
|
||||
|
||||
---
|
||||
src/polkit/polkitsystembusname.c | 38 ++++++++++++++++++++++++++++----
|
||||
1 file changed, 34 insertions(+), 4 deletions(-)
|
||||
|
||||
CVE: CVE-2021-4115
|
||||
Upstream-Status: Backport [41cb093f554da8772362654a128a84dd8a5542a7]
|
||||
|
||||
diff --git a/src/polkit/polkitsystembusname.c b/src/polkit/polkitsystembusname.c
|
||||
index 8ed1363..2fbf5f1 100644
|
||||
--- a/src/polkit/polkitsystembusname.c
|
||||
+++ b/src/polkit/polkitsystembusname.c
|
||||
@@ -62,6 +62,10 @@ enum
|
||||
PROP_NAME,
|
||||
};
|
||||
|
||||
+
|
||||
+guint8 dbus_call_respond_fails; // has to be global because of callback
|
||||
+
|
||||
+
|
||||
static void subject_iface_init (PolkitSubjectIface *subject_iface);
|
||||
|
||||
G_DEFINE_TYPE_WITH_CODE (PolkitSystemBusName, polkit_system_bus_name, G_TYPE_OBJECT,
|
||||
@@ -364,6 +368,7 @@ on_retrieved_unix_uid_pid (GObject *src,
|
||||
if (!v)
|
||||
{
|
||||
data->caught_error = TRUE;
|
||||
+ dbus_call_respond_fails += 1;
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -405,6 +410,8 @@ polkit_system_bus_name_get_creds_sync (PolkitSystemBusName *system_bus
|
||||
tmp_context = g_main_context_new ();
|
||||
g_main_context_push_thread_default (tmp_context);
|
||||
|
||||
+ dbus_call_respond_fails = 0;
|
||||
+
|
||||
/* Do two async calls as it's basically as fast as one sync call.
|
||||
*/
|
||||
g_dbus_connection_call (connection,
|
||||
@@ -432,11 +439,34 @@ polkit_system_bus_name_get_creds_sync (PolkitSystemBusName *system_bus
|
||||
on_retrieved_unix_uid_pid,
|
||||
&data);
|
||||
|
||||
- while (!((data.retrieved_uid && data.retrieved_pid) || data.caught_error))
|
||||
- g_main_context_iteration (tmp_context, TRUE);
|
||||
+ while (TRUE)
|
||||
+ {
|
||||
+ /* If one dbus call returns error, we must wait until the other call
|
||||
+ * calls _call_finish(), otherwise fd leak is possible.
|
||||
+ * Resolves: GHSL-2021-077
|
||||
+ */
|
||||
|
||||
- if (data.caught_error)
|
||||
- goto out;
|
||||
+ if ( (dbus_call_respond_fails > 1) )
|
||||
+ {
|
||||
+ // we got two faults, we can leave
|
||||
+ goto out;
|
||||
+ }
|
||||
+
|
||||
+ if ((data.caught_error && (data.retrieved_pid || data.retrieved_uid)))
|
||||
+ {
|
||||
+ // we got one fault and the other call finally finished, we can leave
|
||||
+ goto out;
|
||||
+ }
|
||||
+
|
||||
+ if ( !(data.retrieved_uid && data.retrieved_pid) )
|
||||
+ {
|
||||
+ g_main_context_iteration (tmp_context, TRUE);
|
||||
+ }
|
||||
+ else
|
||||
+ {
|
||||
+ break;
|
||||
+ }
|
||||
+ }
|
||||
|
||||
if (out_uid)
|
||||
*out_uid = data.uid;
|
||||
--
|
||||
2.20.1
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -1,4 +1,4 @@
|
||||
From 21aa2747e8f0048759aab184b07dd6389666d5e6 Mon Sep 17 00:00:00 2001
|
||||
From 0c1debb380fee7f5b2bc62406e45856dc9c9e1a1 Mon Sep 17 00:00:00 2001
|
||||
From: Khem Raj <raj.khem@gmail.com>
|
||||
Date: Wed, 22 May 2019 13:18:55 -0700
|
||||
Subject: [PATCH] make netgroup support optional
|
||||
@ -17,20 +17,23 @@ Fixes bug 50145.
|
||||
Closes polkit/polkit#14.
|
||||
Signed-off-by: A. Wilcox <AWilcox@Wilcox-Tech.com>
|
||||
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
||||
|
||||
---
|
||||
configure.ac | 2 +-
|
||||
src/polkit/polkitidentity.c | 16 ++++++++++++++++
|
||||
src/polkit/polkitunixnetgroup.c | 3 +++
|
||||
.../polkitbackendinteractiveauthority.c | 14 ++++++++------
|
||||
src/polkitbackend/polkitbackendjsauthority.cpp | 2 ++
|
||||
src/polkitbackend/polkitbackendjsauthority.cpp | 3 +++
|
||||
test/polkit/polkitidentitytest.c | 9 ++++++++-
|
||||
test/polkit/polkitunixnetgrouptest.c | 3 +++
|
||||
.../test-polkitbackendjsauthority.c | 2 ++
|
||||
8 files changed, 43 insertions(+), 8 deletions(-)
|
||||
8 files changed, 44 insertions(+), 8 deletions(-)
|
||||
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index b625743..d807086 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -99,7 +99,7 @@ AC_CHECK_LIB(expat,XML_ParserCreate,[EXP
|
||||
@@ -100,7 +100,7 @@ AC_CHECK_LIB(expat,XML_ParserCreate,[EXPAT_LIBS="-lexpat"],
|
||||
[AC_MSG_ERROR([Can't find expat library. Please install expat.])])
|
||||
AC_SUBST(EXPAT_LIBS)
|
||||
|
||||
@ -39,9 +42,11 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
||||
|
||||
if test "x$GCC" = "xyes"; then
|
||||
LDFLAGS="-Wl,--as-needed $LDFLAGS"
|
||||
diff --git a/src/polkit/polkitidentity.c b/src/polkit/polkitidentity.c
|
||||
index 3aa1f7f..10e9c17 100644
|
||||
--- a/src/polkit/polkitidentity.c
|
||||
+++ b/src/polkit/polkitidentity.c
|
||||
@@ -182,7 +182,15 @@ polkit_identity_from_string (const gcha
|
||||
@@ -182,7 +182,15 @@ polkit_identity_from_string (const gchar *str,
|
||||
}
|
||||
else if (g_str_has_prefix (str, "unix-netgroup:"))
|
||||
{
|
||||
@ -57,7 +62,7 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
||||
}
|
||||
|
||||
if (identity == NULL && (error != NULL && *error == NULL))
|
||||
@@ -344,6 +352,13 @@ polkit_identity_new_for_gvariant (GVaria
|
||||
@@ -344,6 +352,13 @@ polkit_identity_new_for_gvariant (GVariant *variant,
|
||||
GVariant *v;
|
||||
const char *name;
|
||||
|
||||
@ -71,7 +76,7 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
||||
v = lookup_asv (details_gvariant, "name", G_VARIANT_TYPE_STRING, error);
|
||||
if (v == NULL)
|
||||
{
|
||||
@@ -353,6 +368,7 @@ polkit_identity_new_for_gvariant (GVaria
|
||||
@@ -353,6 +368,7 @@ polkit_identity_new_for_gvariant (GVariant *variant,
|
||||
name = g_variant_get_string (v, NULL);
|
||||
ret = polkit_unix_netgroup_new (name);
|
||||
g_variant_unref (v);
|
||||
@ -79,9 +84,11 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
||||
}
|
||||
else
|
||||
{
|
||||
diff --git a/src/polkit/polkitunixnetgroup.c b/src/polkit/polkitunixnetgroup.c
|
||||
index 8a2b369..83f8d4a 100644
|
||||
--- a/src/polkit/polkitunixnetgroup.c
|
||||
+++ b/src/polkit/polkitunixnetgroup.c
|
||||
@@ -194,6 +194,9 @@ polkit_unix_netgroup_set_name (PolkitUni
|
||||
@@ -194,6 +194,9 @@ polkit_unix_netgroup_set_name (PolkitUnixNetgroup *group,
|
||||
PolkitIdentity *
|
||||
polkit_unix_netgroup_new (const gchar *name)
|
||||
{
|
||||
@ -91,9 +98,11 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
||||
g_return_val_if_fail (name != NULL, NULL);
|
||||
return POLKIT_IDENTITY (g_object_new (POLKIT_TYPE_UNIX_NETGROUP,
|
||||
"name", name,
|
||||
diff --git a/src/polkitbackend/polkitbackendinteractiveauthority.c b/src/polkitbackend/polkitbackendinteractiveauthority.c
|
||||
index 056d9a8..36c2f3d 100644
|
||||
--- a/src/polkitbackend/polkitbackendinteractiveauthority.c
|
||||
+++ b/src/polkitbackend/polkitbackendinteractiveauthority.c
|
||||
@@ -2233,25 +2233,26 @@ get_users_in_net_group (PolkitIdentity
|
||||
@@ -2233,25 +2233,26 @@ get_users_in_net_group (PolkitIdentity *group,
|
||||
GList *ret;
|
||||
|
||||
ret = NULL;
|
||||
@ -126,7 +135,7 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
||||
PolkitIdentity *user;
|
||||
GError *error = NULL;
|
||||
|
||||
@@ -2282,6 +2283,7 @@ get_users_in_net_group (PolkitIdentity
|
||||
@@ -2282,6 +2283,7 @@ get_users_in_net_group (PolkitIdentity *group,
|
||||
|
||||
out:
|
||||
endnetgrent ();
|
||||
@ -134,9 +143,11 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
||||
return ret;
|
||||
}
|
||||
|
||||
diff --git a/src/polkitbackend/polkitbackendjsauthority.cpp b/src/polkitbackend/polkitbackendjsauthority.cpp
|
||||
index ca17108..41d8d5c 100644
|
||||
--- a/src/polkitbackend/polkitbackendjsauthority.cpp
|
||||
+++ b/src/polkitbackend/polkitbackendjsauthority.cpp
|
||||
@@ -1502,6 +1502,7 @@ js_polkit_user_is_in_netgroup (JSContext
|
||||
@@ -1520,6 +1520,7 @@ js_polkit_user_is_in_netgroup (JSContext *cx,
|
||||
|
||||
JS::CallArgs args = JS::CallArgsFromVp (argc, vp);
|
||||
|
||||
@ -144,14 +155,17 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
||||
JS::RootedString usrstr (authority->priv->cx);
|
||||
usrstr = args[0].toString();
|
||||
user = JS_EncodeStringToUTF8 (cx, usrstr);
|
||||
@@ -1519,6 +1520,7 @@ js_polkit_user_is_in_netgroup (JSContext
|
||||
@@ -1535,6 +1536,8 @@ js_polkit_user_is_in_netgroup (JSContext *cx,
|
||||
is_in_netgroup = true;
|
||||
}
|
||||
|
||||
JS_free (cx, netgroup);
|
||||
JS_free (cx, user);
|
||||
+#endif
|
||||
|
||||
+
|
||||
ret = true;
|
||||
|
||||
args.rval ().setBoolean (is_in_netgroup);
|
||||
diff --git a/test/polkit/polkitidentitytest.c b/test/polkit/polkitidentitytest.c
|
||||
index e91967b..e829aaa 100644
|
||||
--- a/test/polkit/polkitidentitytest.c
|
||||
+++ b/test/polkit/polkitidentitytest.c
|
||||
@@ -19,6 +19,7 @@
|
||||
@ -162,7 +176,7 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
||||
#include "glib.h"
|
||||
#include <polkit/polkit.h>
|
||||
#include <polkit/polkitprivate.h>
|
||||
@@ -145,11 +146,15 @@ struct ComparisonTestData comparison_tes
|
||||
@@ -145,11 +146,15 @@ struct ComparisonTestData comparison_test_data [] = {
|
||||
{"unix-group:root", "unix-group:jane", FALSE},
|
||||
{"unix-group:jane", "unix-group:jane", TRUE},
|
||||
|
||||
@ -193,6 +207,8 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
||||
|
||||
add_comparison_tests ();
|
||||
|
||||
diff --git a/test/polkit/polkitunixnetgrouptest.c b/test/polkit/polkitunixnetgrouptest.c
|
||||
index 3701ba1..e3352eb 100644
|
||||
--- a/test/polkit/polkitunixnetgrouptest.c
|
||||
+++ b/test/polkit/polkitunixnetgrouptest.c
|
||||
@@ -19,6 +19,7 @@
|
||||
@ -213,6 +229,8 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
||||
+#endif
|
||||
return g_test_run ();
|
||||
}
|
||||
diff --git a/test/polkitbackend/test-polkitbackendjsauthority.c b/test/polkitbackend/test-polkitbackendjsauthority.c
|
||||
index f97e0e0..fc52149 100644
|
||||
--- a/test/polkitbackend/test-polkitbackendjsauthority.c
|
||||
+++ b/test/polkitbackend/test-polkitbackendjsauthority.c
|
||||
@@ -137,12 +137,14 @@ test_get_admin_identities (void)
|
||||
|
@ -1,11 +1,11 @@
|
||||
SUMMARY = "PolicyKit Authorization Framework"
|
||||
DESCRIPTION = "The polkit package is an application-level toolkit for defining and handling the policy that allows unprivileged processes to speak to privileged processes."
|
||||
HOMEPAGE = "http://www.freedesktop.org/wiki/Software/polkit"
|
||||
LICENSE = "LGPLv2+"
|
||||
LICENSE = "LGPL-2.0-or-later"
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=155db86cdbafa7532b41f390409283eb \
|
||||
file://src/polkit/polkit.h;beginline=1;endline=20;md5=0a8630b0133176d0504c87a0ded39db4"
|
||||
|
||||
DEPENDS = "expat glib-2.0 intltool-native mozjs78"
|
||||
DEPENDS = "expat glib-2.0 intltool-native duktape"
|
||||
|
||||
inherit autotools gtk-doc pkgconfig useradd systemd gobject-introspection features_check
|
||||
|
||||
@ -24,27 +24,30 @@ PACKAGECONFIG[consolekit] = ",,,consolekit"
|
||||
PAM_SRC_URI = "file://polkit-1_pam.patch"
|
||||
SRC_URI = "http://www.freedesktop.org/software/polkit/releases/polkit-${PV}.tar.gz \
|
||||
${@bb.utils.contains('DISTRO_FEATURES', 'pam', '${PAM_SRC_URI}', '', d)} \
|
||||
file://0003-make-netgroup-support-optional.patch \
|
||||
file://0001-pkexec-local-privilege-escalation-CVE-2021-4034.patch \
|
||||
file://0002-CVE-2021-4115-GHSL-2021-077-fix.patch \
|
||||
file://0003-Added-support-for-duktape-as-JS-engine.patch \
|
||||
"
|
||||
SRC_URI[sha256sum] = "6d54e984e7072339f0d3147179e16e34e5fe0705158f259a765d772dcf78956b"
|
||||
SRC_URI[md5] = "ae3f2a742740069922589ad20ffd54d2"
|
||||
|
||||
SRC_URI[sha256sum] = "c8579fdb86e94295404211285fee0722ad04893f0213e571bd75c00972fd1f5c"
|
||||
|
||||
EXTRA_OECONF = "--with-os-type=moblin \
|
||||
--disable-man-pages \
|
||||
--disable-libelogind \
|
||||
--enable-libsystemd-login \
|
||||
--with-duktape \
|
||||
"
|
||||
|
||||
do_configure_prepend() {
|
||||
export LIBJS_CFLAGS="-include ${STAGING_INCDIR}/mozjs-78/js/RequiredDefines.h -isystem ${STAGING_INCDIR}/mozjs-78"
|
||||
do_configure:prepend () {
|
||||
rm -f ${S}/buildutil/lt*.m4 ${S}/buildutil/libtool.m4
|
||||
}
|
||||
do_compile_prepend () {
|
||||
|
||||
do_compile:prepend () {
|
||||
export GIR_EXTRA_LIBS_PATH="${B}/src/polkit/.libs"
|
||||
}
|
||||
|
||||
PACKAGES =+ "${PN}-examples"
|
||||
|
||||
FILES_${PN}_append = " \
|
||||
FILES:${PN}:append = " \
|
||||
${libdir}/${BPN}-1 \
|
||||
${nonarch_libdir}/${BPN}-1 \
|
||||
${datadir}/dbus-1 \
|
||||
@ -52,10 +55,10 @@ FILES_${PN}_append = " \
|
||||
${datadir}/gettext \
|
||||
"
|
||||
|
||||
FILES_${PN}-examples = "${bindir}/*example*"
|
||||
FILES:${PN}-examples = "${bindir}/*example*"
|
||||
|
||||
USERADD_PACKAGES = "${PN}"
|
||||
USERADD_PARAM_${PN} = "--system --no-create-home --user-group --home-dir ${sysconfdir}/${BPN}-1 polkitd"
|
||||
USERADD_PARAM:${PN} = "--system --no-create-home --user-group --home-dir ${sysconfdir}/${BPN}-1 polkitd"
|
||||
|
||||
SYSTEMD_SERVICE_${PN} = "${BPN}.service"
|
||||
SYSTEMD_SERVICE:${PN} = "${BPN}.service"
|
||||
SYSTEMD_AUTO_ENABLE = "disable"
|
@ -0,0 +1,27 @@
|
||||
From 63d97fefdbc90f5c68f67bdc30844776d9a1b720 Mon Sep 17 00:00:00 2001
|
||||
From: Jussi Kukkonen <jussi.kukkonen@intel.com>
|
||||
Date: Tue, 30 May 2017 14:55:49 +0300
|
||||
Subject: [PATCH] Don't use AC_CANONICAL_HOST
|
||||
|
||||
This won't work when building allarch (and is only used to find out if
|
||||
target is windows).
|
||||
|
||||
Upstream-Status: Inappropriate [embedded specific]
|
||||
Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com>
|
||||
|
||||
---
|
||||
configure.ac | 1 -
|
||||
1 file changed, 1 deletion(-)
|
||||
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index f2659a5..1e8b016 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -3,7 +3,6 @@ AC_PREREQ(2.53)
|
||||
|
||||
AC_INIT([adwaita-icon-theme], [41.0],
|
||||
[http://bugzilla.gnome.org/enter_bug.cgi?product=adwaita-icon-theme])
|
||||
-AC_CANONICAL_HOST
|
||||
AC_CONFIG_MACRO_DIR([m4])
|
||||
AC_CONFIG_SRCDIR([index.theme.in])
|
||||
|
@ -0,0 +1,84 @@
|
||||
From 79da031e9811f3eef34b14cce419be93fea34319 Mon Sep 17 00:00:00 2001
|
||||
From: Alexander Kanavin <alex.kanavin@gmail.com>
|
||||
Date: Tue, 13 Jun 2017 18:10:06 +0300
|
||||
Subject: [PATCH] Run installation commands as shell jobs
|
||||
|
||||
This greatly speeds up installation time on multi-core systems.
|
||||
|
||||
Upstream-Status: Submitted [https://gitlab.gnome.org/GNOME/adwaita-icon-theme/-/merge_requests/39]
|
||||
Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
|
||||
|
||||
---
|
||||
src/fullcolor/Makefile.am | 5 +++--
|
||||
src/spinner/Makefile.am | 7 ++++---
|
||||
src/symbolic/Makefile.am | 11 ++++++-----
|
||||
3 files changed, 13 insertions(+), 10 deletions(-)
|
||||
|
||||
diff --git a/src/fullcolor/Makefile.am b/src/fullcolor/Makefile.am
|
||||
index d73529b..b7d0808 100644
|
||||
--- a/src/fullcolor/Makefile.am
|
||||
+++ b/src/fullcolor/Makefile.am
|
||||
@@ -9,9 +9,10 @@ install-data-local:
|
||||
for file in `cd $(top_srcdir)/$(SVGOUTDIR)/$$size && find . -name "*.png"`; do \
|
||||
context="`dirname $$file`"; \
|
||||
$(mkdir_p) $(DESTDIR)$(themedir)/$$size/$$context; \
|
||||
- $(install_sh_DATA) $(top_srcdir)/$(SVGOUTDIR)/$$size/$$file $(DESTDIR)$(themedir)/$$size/$$file; \
|
||||
+ $(install_sh_DATA) $(top_srcdir)/$(SVGOUTDIR)/$$size/$$file $(DESTDIR)$(themedir)/$$size/$$file & \
|
||||
done; \
|
||||
- done;
|
||||
+ done; \
|
||||
+ wait
|
||||
|
||||
## FIXME we should add a way to remove links generated by icon mapping
|
||||
uninstall-local:
|
||||
diff --git a/src/spinner/Makefile.am b/src/spinner/Makefile.am
|
||||
index c14caf6..322dc0d 100644
|
||||
--- a/src/spinner/Makefile.am
|
||||
+++ b/src/spinner/Makefile.am
|
||||
@@ -24,13 +24,14 @@ install-data-local:
|
||||
for file in `cd $(top_srcdir)/$(SVGOUTDIR)/$$size; find . -name "*.png"`; do \
|
||||
context="`dirname $$file`"; \
|
||||
$(mkdir_p) $(DESTDIR)$(themedir)/$$size/$$context; \
|
||||
- $(install_sh_DATA) $(top_srcdir)/$(SVGOUTDIR)/$$size/$$file $(DESTDIR)$(themedir)/$$size/$$file; \
|
||||
+ $(install_sh_DATA) $(top_srcdir)/$(SVGOUTDIR)/$$size/$$file $(DESTDIR)$(themedir)/$$size/$$file & \
|
||||
done; \
|
||||
for file in `cd $(top_srcdir)/$(SVGOUTDIR)/scalable-up-to-32; find . -name "*.svg"`; do \
|
||||
context="`dirname $$file`"; \
|
||||
$(mkdir_p) $(DESTDIR)$(themedir)/scalable-up-to-32/$$context; \
|
||||
- $(install_sh_DATA) $(top_srcdir)/$(SVGOUTDIR)/scalable-up-to-32/$$file $(DESTDIR)$(themedir)/scalable-up-to-32/$$file; \
|
||||
- done
|
||||
+ $(install_sh_DATA) $(top_srcdir)/$(SVGOUTDIR)/scalable-up-to-32/$$file $(DESTDIR)$(themedir)/scalable-up-to-32/$$file & \
|
||||
+ done; \
|
||||
+ wait
|
||||
|
||||
uninstall-local:
|
||||
for file in `cd $(top_srcdir)/$(SVGOUTDIR)/scalable-up-to-32; find . -name "*.svg"`; do \
|
||||
diff --git a/src/symbolic/Makefile.am b/src/symbolic/Makefile.am
|
||||
index 957c0ee..e1f8818 100644
|
||||
--- a/src/symbolic/Makefile.am
|
||||
+++ b/src/symbolic/Makefile.am
|
||||
@@ -34,18 +34,19 @@ install-data-local:
|
||||
for file in `cd $(top_srcdir)/$(SVGOUTDIR)/$$size; find . -name "*.png"`; do \
|
||||
context="`dirname $$file`"; \
|
||||
$(mkdir_p) $(DESTDIR)$(themedir)/$$size/$$context; \
|
||||
- $(install_sh_DATA) $(top_srcdir)/$(SVGOUTDIR)/$$size/$$file $(DESTDIR)$(themedir)/$$size/$$file; \
|
||||
+ $(install_sh_DATA) $(top_srcdir)/$(SVGOUTDIR)/$$size/$$file $(DESTDIR)$(themedir)/$$size/$$file & \
|
||||
done; \
|
||||
- done
|
||||
+ done; \
|
||||
for file in `cd $(top_srcdir)/$(SVGOUTDIR)/scalable; find . -name "*.svg"`; do \
|
||||
context="`dirname $$file`"; \
|
||||
$(mkdir_p) $(DESTDIR)$(themedir)/scalable/$$context; \
|
||||
- $(install_sh_DATA) $(top_srcdir)/$(SVGOUTDIR)/scalable/$$file $(DESTDIR)$(themedir)/scalable/$$file; \
|
||||
+ $(install_sh_DATA) $(top_srcdir)/$(SVGOUTDIR)/scalable/$$file $(DESTDIR)$(themedir)/scalable/$$file & \
|
||||
for size in $(symbolic_encode_sizes); do \
|
||||
$(mkdir_p) $(DESTDIR)$(themedir)/$$size/$$context; \
|
||||
- $(GTK_ENCODE_SYMBOLIC_SVG) $(top_srcdir)/$(SVGOUTDIR)/scalable/$$file $$size -o $(DESTDIR)$(themedir)/$$size/$$context; \
|
||||
+ $(GTK_ENCODE_SYMBOLIC_SVG) $(top_srcdir)/$(SVGOUTDIR)/scalable/$$file $$size -o $(DESTDIR)$(themedir)/$$size/$$context & \
|
||||
done \
|
||||
- done
|
||||
+ done; \
|
||||
+ wait
|
||||
|
||||
uninstall-local:
|
||||
for file in `cd $(top_srcdir)/$(SVGOUTDIR)/scalable; find . -name "*.svg"`; do \
|
@ -0,0 +1,42 @@
|
||||
SUMMARY = "GTK+ icon theme"
|
||||
DESCRIPTION = "The Adwaita icon theme is the default icon theme of the GNOME desktop \
|
||||
This package package contains an icon theme for Gtk+ 3 applications."
|
||||
HOMEPAGE = "https://gitlab.gnome.org/GNOME/adwaita-icon-theme"
|
||||
BUGTRACKER = "https://gitlab.gnome.org/GNOME/adwaita-icon-theme/issues"
|
||||
SECTION = "x11/gnome"
|
||||
|
||||
LICENSE = "LGPL-3.0-only | CC-BY-SA-3.0"
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=c84cac88e46fc07647ea07e6c24eeb7c \
|
||||
file://COPYING_CCBYSA3;md5=96143d33de3a79321b1006c4e8ed07e7 \
|
||||
file://COPYING_LGPL;md5=e6a600fd5e1d9cbde2d983680233ad02"
|
||||
|
||||
inherit allarch autotools pkgconfig gettext gtk-icon-cache gnomebase
|
||||
|
||||
SRC_URI += " \
|
||||
file://0001-Don-t-use-AC_CANONICAL_HOST.patch \
|
||||
"
|
||||
|
||||
SRC_URI[archive.sha256sum] = "5e85b5adc8dee666900fcaf271ba717f7dcb9d0a03d96dae08f9cbd27e18b1e0"
|
||||
|
||||
DEPENDS += "librsvg-native"
|
||||
|
||||
PACKAGES = "${PN}-cursors ${PN}-symbolic-hires ${PN}-symbolic ${PN}-hires ${PN}"
|
||||
|
||||
RREPLACES:${PN} = "gnome-icon-theme"
|
||||
RCONFLICTS:${PN} = "gnome-icon-theme"
|
||||
RPROVIDES:${PN} = "gnome-icon-theme"
|
||||
|
||||
FILES:${PN}-cursors = "${prefix}/share/icons/Adwaita/cursors/"
|
||||
FILES:${PN}-symbolic-hires = "${prefix}/share/icons/Adwaita/96x96/*/*.symbolic.png \
|
||||
${prefix}/share/icons/Adwaita/64x64/*/*.symbolic.png \
|
||||
${prefix}/share/icons/Adwaita/48x48/*/*.symbolic.png \
|
||||
${prefix}/share/icons/Adwaita/32x32/*/*.symbolic.png"
|
||||
FILES:${PN}-symbolic = "${prefix}/share/icons/Adwaita/16x16/*/*.symbolic.png \
|
||||
${prefix}/share/icons/Adwaita/24x24/*/*.symbolic.png \
|
||||
${prefix}/share/icons/Adwaita/scalable/*/*-symbolic*.svg"
|
||||
FILES:${PN}-hires = "${prefix}/share/icons/Adwaita/256x256/ \
|
||||
${prefix}/share/icons/Adwaita/512x512/"
|
||||
FILES:${PN} = "${prefix}/share/icons/Adwaita/ \
|
||||
${prefix}/share/pkgconfig/adwaita-icon-theme.pc"
|
||||
|
||||
BBCLASSEXTEND = "native nativesdk"
|
@ -1,60 +0,0 @@
|
||||
SUMMARY = "GNOME Display Manager"
|
||||
LICENSE="GPL-2.0-only"
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
|
||||
|
||||
DEPENDS = " \
|
||||
dconf-native \
|
||||
itstool-native \
|
||||
gtk+3 \
|
||||
glib-2.0 \
|
||||
accountsservice \
|
||||
libcanberra \
|
||||
libxinerama \
|
||||
libpam \
|
||||
plymouth \
|
||||
"
|
||||
|
||||
REQUIRED_DISTRO_FEATURES = "x11 systemd pam"
|
||||
|
||||
GNOMEBASEBUILDCLASS = "meson"
|
||||
inherit gnomebase gsettings gobject-introspection gettext systemd useradd upstream-version-is-even features_check
|
||||
|
||||
SRC_URI[archive.sha256sum] = "5738c4293a9f5a80d4a6e9e06f4d0df3e9f313ca7b61bfb4d8afaba983e200dc"
|
||||
|
||||
SRC_URI += "file://gdm.conf"
|
||||
|
||||
GIR_MESON_OPTION = ""
|
||||
|
||||
FILES:${PN} += " \
|
||||
${libdir}/systemd/system/gdm.service \
|
||||
${libdir}/systemd/user \
|
||||
${base_libdir}/security/pam_gdm.so \
|
||||
${datadir}/gnome-session/sessions \
|
||||
${datadir}/dconf/profile \
|
||||
/run/gdm/greeter \
|
||||
"
|
||||
|
||||
do_install:append() {
|
||||
install -d ${D}${sysconfdir}/default/volatiles
|
||||
echo "d gdm gdm 755 ${localstatedir}/run/gdm/greeter none" > ${D}${sysconfdir}/default/volatiles/99_gdm
|
||||
rm ${D}${sysconfdir}/gdm/custom.conf
|
||||
rm -rf ${D}/run/gdm
|
||||
rm ${D}${libdir}/udev/rules.d/61-gdm.rules
|
||||
install -m 644 ${WORKDIR}/gdm.conf ${D}${sysconfdir}/gdm/custom.conf
|
||||
}
|
||||
|
||||
USERADD_PACKAGES = "${PN}"
|
||||
USERADD_PARAM:${PN} = "--system --home /var/lib/gdm -u 21 -s /bin/false --user-group gdm"
|
||||
|
||||
SYSTEMD_SERVICE:${PN} = "${BPN}.service"
|
||||
|
||||
EXTRA_OEMESON = "\
|
||||
-Dplymouth=enabled \
|
||||
-Dxdmcp=disabled \
|
||||
-Ddefault-pam-config=openembedded \
|
||||
-Dpam-mod-dir=${base_libdir}/security \
|
||||
-Dgdm-xsession=true\
|
||||
"
|
||||
|
||||
PACKAGES += "${PN}-help"
|
||||
FILES:${PN}-help = "${datadir}/help"
|
58
meta-gnome/recipes-gnome/gdm/gdm_42.0.bb
Normal file
58
meta-gnome/recipes-gnome/gdm/gdm_42.0.bb
Normal file
@ -0,0 +1,58 @@
|
||||
SUMMARY = "GNOME Display Manager"
|
||||
LICENSE="GPL-2.0-only"
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
|
||||
|
||||
DEPENDS = " \
|
||||
dconf-native \
|
||||
gtk+3 \
|
||||
accountsservice \
|
||||
libcanberra \
|
||||
libpam \
|
||||
libgudev \
|
||||
"
|
||||
|
||||
REQUIRED_DISTRO_FEATURES = "x11 systemd pam polkit gobject-introspection-data"
|
||||
GIR_MESON_OPTION = ""
|
||||
|
||||
GNOMEBASEBUILDCLASS = "meson"
|
||||
|
||||
inherit gnomebase gsettings gobject-introspection gettext systemd useradd itstool gnome-help features_check
|
||||
|
||||
SRC_URI[archive.sha256sum] = "a328ac976937bec179971ff07829a1246b98ce724181c128ae32a0ba47ad3855"
|
||||
|
||||
EXTRA_OEMESON = " \
|
||||
-Dplymouth=disabled \
|
||||
-Ddefault-pam-config=openembedded \
|
||||
-Dpam-mod-dir=${base_libdir}/security \
|
||||
"
|
||||
|
||||
do_install:append() {
|
||||
rm -rf ${D}/run ${D}${localstatedir}/run
|
||||
}
|
||||
|
||||
USERADD_PACKAGES = "${PN}"
|
||||
USERADD_PARAM:${PN} = "--system --no-create-home --home ${localstatedir}/lib/gdm --user-group gdm"
|
||||
|
||||
SYSTEMD_SERVICE:${PN} = "${BPN}.service"
|
||||
|
||||
# Some gnome components - as gnome-panel and gnome-shell (!!) - require gdm
|
||||
# components. To allow gnome-images using different display-manager, split them
|
||||
# out into a seperate package.
|
||||
PACKAGE_BEFORE_PN = "${PN}-base"
|
||||
FILES:${PN}-base = " \
|
||||
${datadir}/glib-2.0 \
|
||||
${datadir}/gnome-session \
|
||||
${libdir}/lib*${SOLIBS} \
|
||||
${libdir}/girepository-1.0 \
|
||||
"
|
||||
|
||||
CONFFILES:${PN} += "${sysconfdir}/gdm/custom.conf"
|
||||
FILES:${PN} += " \
|
||||
${datadir}/dconf \
|
||||
${base_libdir}/security/pam_gdm.so \
|
||||
${localstatedir} \
|
||||
${systemd_unitdir} ${systemd_user_unitdir} \
|
||||
"
|
||||
|
||||
RDEPENDS:${PN} += "${PN}-base"
|
||||
|
@ -1,19 +0,0 @@
|
||||
SUMMARY = "A GObject-based Exiv2 wrapper"
|
||||
LICENSE = "GPL-2.0-only"
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=625f055f41728f84a8d7938acc35bdc2"
|
||||
|
||||
DEPENDS = "exiv2"
|
||||
|
||||
GNOMEBASEBUILDCLASS = "meson"
|
||||
GTKDOC_MESON_OPTION = "gtk_doc"
|
||||
|
||||
inherit gnomebase gobject-introspection gtk-doc
|
||||
|
||||
SRC_URI[archive.md5sum] = "44a3cfeab1afd83a71e852835d24e656"
|
||||
SRC_URI[archive.sha256sum] = "8aeafd59653ea88f6b78cb03780ee9fd61a2f993070c5f0d0976bed93ac2bd77"
|
||||
|
||||
EXTRA_OEMESON = " \
|
||||
-Dvapi=false \
|
||||
-Dpython2_girdir=no \
|
||||
-Dpython3_girdir=no \
|
||||
"
|
21
meta-gnome/recipes-gnome/gexiv2/gexiv2_0.14.0.bb
Normal file
21
meta-gnome/recipes-gnome/gexiv2/gexiv2_0.14.0.bb
Normal file
@ -0,0 +1,21 @@
|
||||
SUMMARY = "A GObject-based Exiv2 wrapper"
|
||||
LICENSE = "GPL-2.0-only"
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=625f055f41728f84a8d7938acc35bdc2"
|
||||
|
||||
DEPENDS = "exiv2 python3-pygobject-native"
|
||||
|
||||
GNOMEBASEBUILDCLASS = "meson"
|
||||
GTKDOC_MESON_OPTION = "gtk_doc"
|
||||
|
||||
inherit gnomebase gobject-introspection gtk-doc python3native
|
||||
|
||||
SRC_URI[archive.sha256sum] = "e58279a6ff20b6f64fa499615da5e9b57cf65ba7850b72fafdf17221a9d6d69e"
|
||||
|
||||
EXTRA_OEMESON = " \
|
||||
-Dvapi=false \
|
||||
-Dpython3_girdir=${PYTHON_SITEPACKAGES_DIR}/gi/overrides \
|
||||
"
|
||||
|
||||
PACKAGES =+ "${PN}-python3"
|
||||
FILES:${PN}-python3 = "${PYTHON_SITEPACKAGES_DIR}"
|
||||
RDEPENDS:${PN}-python3 = "${PN}"
|
@ -1,55 +0,0 @@
|
||||
From a8011c5037a8807bb592b5d9e7e9f73be1e185e6 Mon Sep 17 00:00:00 2001
|
||||
From: Bruce Leidl <bruce@subgraph.com>
|
||||
Date: Tue, 5 Oct 2021 12:37:53 +0000
|
||||
Subject: [PATCH] Fix tests that cannot run
|
||||
|
||||
---
|
||||
meson.build | 28 ----------------------------
|
||||
1 file changed, 28 deletions(-)
|
||||
|
||||
diff --git a/meson.build b/meson.build
|
||||
index 6ded66c..3753b9f 100644
|
||||
--- a/meson.build
|
||||
+++ b/meson.build
|
||||
@@ -234,27 +234,6 @@ release builds of SpiderMonkey. Try configuring SpiderMonkey with
|
||||
--disable-debug.''')
|
||||
endif
|
||||
|
||||
-# Check if a minimal SpiderMonkey program compiles, links, and runs. If not,
|
||||
-# it's most likely the case that SpiderMonkey was configured incorrectly, for
|
||||
-# example by building mozglue as a shared library.
|
||||
-minimal_program = cxx.run('''
|
||||
-#include <js/Initialization.h>
|
||||
-int main(void) {
|
||||
- if (!JS_Init()) return 1;
|
||||
- JS_ShutDown();
|
||||
- return 0;
|
||||
-}
|
||||
-''',
|
||||
- args: debug_arg, dependencies: spidermonkey,
|
||||
- name: 'SpiderMonkey sanity check')
|
||||
-
|
||||
-if not minimal_program.compiled() or minimal_program.returncode() != 0
|
||||
- error('''A minimal SpiderMonkey program
|
||||
-could not be compiled, linked, or run. Most likely you should build it with a
|
||||
-different configuration. Check the recommended configuration:
|
||||
-https://github.com/spidermonkey-embedders/spidermonkey-embedding-examples/blob/esr78/docs/Building%20SpiderMonkey.md''')
|
||||
-endif
|
||||
-
|
||||
have_printf_alternative_int = cc.compiles('''
|
||||
#include <stdio.h>
|
||||
int main(void) {
|
||||
@@ -656,13 +635,6 @@ if not get_option('skip_gtk_tests')
|
||||
have_gtk4 = dependency('gtk4', required: false).found()
|
||||
endif
|
||||
|
||||
-subdir('installed-tests')
|
||||
-
|
||||
-# Note: The test program in test/ needs to be ported
|
||||
-# to Windows before we can build it on Windows.
|
||||
-if host_machine.system() != 'windows'
|
||||
- subdir('test')
|
||||
-endif
|
||||
|
||||
valgrind_environment = environment()
|
||||
valgrind_environment.set('G_SLICE', 'always-malloc,debug-blocks')
|
@ -1,50 +0,0 @@
|
||||
From cb34a340e47a2c85830346aa3ebeb7e2c278c6c4 Mon Sep 17 00:00:00 2001
|
||||
From: Bruce Leidl <bruce@subgraph.com>
|
||||
Date: Tue, 5 Oct 2021 11:58:42 +0000
|
||||
Subject: [PATCH] Fix tests that cannot run
|
||||
|
||||
---
|
||||
meson.build | 23 -----------------------
|
||||
1 file changed, 23 deletions(-)
|
||||
|
||||
diff --git a/meson.build b/meson.build
|
||||
index 6ded66c..3bd6142 100644
|
||||
--- a/meson.build
|
||||
+++ b/meson.build
|
||||
@@ -234,27 +234,6 @@ release builds of SpiderMonkey. Try configuring SpiderMonkey with
|
||||
--disable-debug.''')
|
||||
endif
|
||||
|
||||
-# Check if a minimal SpiderMonkey program compiles, links, and runs. If not,
|
||||
-# it's most likely the case that SpiderMonkey was configured incorrectly, for
|
||||
-# example by building mozglue as a shared library.
|
||||
-minimal_program = cxx.run('''
|
||||
-#include <js/Initialization.h>
|
||||
-int main(void) {
|
||||
- if (!JS_Init()) return 1;
|
||||
- JS_ShutDown();
|
||||
- return 0;
|
||||
-}
|
||||
-''',
|
||||
- args: debug_arg, dependencies: spidermonkey,
|
||||
- name: 'SpiderMonkey sanity check')
|
||||
-
|
||||
-if not minimal_program.compiled() or minimal_program.returncode() != 0
|
||||
- error('''A minimal SpiderMonkey program
|
||||
-could not be compiled, linked, or run. Most likely you should build it with a
|
||||
-different configuration. Check the recommended configuration:
|
||||
-https://github.com/spidermonkey-embedders/spidermonkey-embedding-examples/blob/esr78/docs/Building%20SpiderMonkey.md''')
|
||||
-endif
|
||||
-
|
||||
have_printf_alternative_int = cc.compiles('''
|
||||
#include <stdio.h>
|
||||
int main(void) {
|
||||
@@ -656,8 +635,6 @@ if not get_option('skip_gtk_tests')
|
||||
have_gtk4 = dependency('gtk4', required: false).found()
|
||||
endif
|
||||
|
||||
-subdir('installed-tests')
|
||||
-
|
||||
# Note: The test program in test/ needs to be ported
|
||||
# to Windows before we can build it on Windows.
|
||||
if host_machine.system() != 'windows'
|
@ -0,0 +1,47 @@
|
||||
From fa47185d9c8150a0dcb0ea12b92fcf139edbef35 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com>
|
||||
Date: Wed, 27 Oct 2021 20:18:47 +0200
|
||||
Subject: [PATCH] Support cross builds a bit better
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
* Do not build/run mozjs-linked program
|
||||
* Do not try to run test applications
|
||||
|
||||
Upstream-Status: Submitted[https://gitlab.gnome.org/GNOME/gjs/-/merge_requests/690]
|
||||
|
||||
Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
|
||||
---
|
||||
meson.build | 4 +++-
|
||||
1 file changed, 3 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/meson.build b/meson.build
|
||||
index 136e812..f5b91e0 100644
|
||||
--- a/meson.build
|
||||
+++ b/meson.build
|
||||
@@ -252,6 +252,7 @@ release builds of SpiderMonkey. Try configuring SpiderMonkey with
|
||||
--disable-debug.''')
|
||||
endif
|
||||
|
||||
+if not meson.is_cross_build()
|
||||
# Check if a minimal SpiderMonkey program compiles, links, and runs. If not,
|
||||
# it's most likely the case that SpiderMonkey was configured incorrectly, for
|
||||
# example by building mozglue as a shared library.
|
||||
@@ -282,6 +283,7 @@ elif minimal_program.returncode() != 0
|
||||
failed to execute. Most likely you should build it with a different
|
||||
configuration.''' + recommended_configuration)
|
||||
endif
|
||||
+endif # not meson.is_cross_build()
|
||||
|
||||
have_printf_alternative_int = cc.compiles('''
|
||||
#include <stdio.h>
|
||||
@@ -682,7 +684,7 @@ subdir('installed-tests')
|
||||
|
||||
# Note: The test program in test/ needs to be ported
|
||||
# to Windows before we can build it on Windows.
|
||||
-if host_machine.system() != 'windows'
|
||||
+if host_machine.system() != 'windows' and not meson.is_cross_build()
|
||||
subdir('test')
|
||||
endif
|
||||
|
@ -0,0 +1,31 @@
|
||||
From 2b8aa1ea4a4d1836164c934b1ab2556a32cb5af7 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com>
|
||||
Date: Wed, 27 Oct 2021 20:04:02 +0200
|
||||
Subject: [PATCH] meson.build: Do not add dir installed-tests when
|
||||
installed_tests is false
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
Upstream-Status: Submitted[https://gitlab.gnome.org/GNOME/gjs/-/merge_requests/690]
|
||||
|
||||
Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
|
||||
---
|
||||
meson.build | 4 +++-
|
||||
1 file changed, 3 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/meson.build b/meson.build
|
||||
index f5b91e0..3110530 100644
|
||||
--- a/meson.build
|
||||
+++ b/meson.build
|
||||
@@ -680,7 +680,9 @@ if not get_option('skip_gtk_tests')
|
||||
have_gtk4 = dependency('gtk4', required: false).found()
|
||||
endif
|
||||
|
||||
-subdir('installed-tests')
|
||||
+if get_option('installed_tests')
|
||||
+ subdir('installed-tests')
|
||||
+endif
|
||||
|
||||
# Note: The test program in test/ needs to be ported
|
||||
# to Windows before we can build it on Windows.
|
@ -1,21 +0,0 @@
|
||||
SUMMARY = "GNOME javascript bindings based on the Spidermonkey javascript engine"
|
||||
HOMEPAGE = "https://wiki.gnome.org/Projects/Gjs"
|
||||
|
||||
LICENSE = "MIT & LGPL-2.0-only"
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=8dcea832f6acf45d856abfeb2d51ec48"
|
||||
|
||||
inherit gnomebase gettext gobject-introspection meson
|
||||
|
||||
GIR_MESON_OPTION = ""
|
||||
|
||||
DEPENDS = "glib-2.0 gobject-introspection gobject-introspection-native cairo gtk+3 mozjs-91 glib-2.0-native"
|
||||
|
||||
EXTRA_OEMESON = " -Dskip_dbus_tests=true -Dskip_gtk_tests=true -Dinstalled_tests=false"
|
||||
CFLAGS:append = " -include ${STAGING_INCDIR}/mozjs-91/js/RequiredDefines.h"
|
||||
|
||||
SRC_URI += " file://0001-Fix-tests-that-cannot-run.patch"
|
||||
SRC_URI[archive.sha256sum] = "4b0629341a318a02374e113ab97f9a9f3325423269fc1e0b043a5ffb01861c5f"
|
||||
|
||||
RDEPENDS:${PN} += "libmozjs-91"
|
||||
|
||||
FILES:${PN}-dbg += "${datadir}/gjs-1.0/lsan ${datadir}/gjs-1.0/valgrind"
|
40
meta-gnome/recipes-gnome/gjs/gjs_1.72.0.bb
Normal file
40
meta-gnome/recipes-gnome/gjs/gjs_1.72.0.bb
Normal file
@ -0,0 +1,40 @@
|
||||
SUMMARY = "Javascript bindings for GNOME"
|
||||
LICENSE = "MIT & LGPL-2.0-or-later"
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=8dcea832f6acf45d856abfeb2d51ec48"
|
||||
|
||||
GNOMEBASEBUILDCLASS = "meson"
|
||||
|
||||
DEPENDS = "mozjs-91 cairo"
|
||||
|
||||
inherit gnomebase gsettings gobject-introspection vala gettext features_check upstream-version-is-even pkgconfig
|
||||
|
||||
SRC_URI[archive.sha256sum] = "3ef0caf716e3920dd61f7748f6d56e476cc0fc18351ad0548e7df1a0ab9bdcad"
|
||||
SRC_URI += " \
|
||||
file://0001-Support-cross-builds-a-bit-better.patch \
|
||||
file://0002-meson.build-Do-not-add-dir-installed-tests-when-inst.patch \
|
||||
"
|
||||
|
||||
# gobject-introspection is mandatory and cannot be configured
|
||||
REQUIRED_DISTRO_FEATURES = "gobject-introspection-data"
|
||||
GIR_MESON_OPTION = ""
|
||||
|
||||
EXTRA_OEMESON = " \
|
||||
-Dinstalled_tests=false \
|
||||
-Dskip_dbus_tests=true \
|
||||
-Dskip_gtk_tests=true \
|
||||
"
|
||||
|
||||
LDFLAGS:append:mipsarch = " -latomic"
|
||||
LDFLAGS:append:powerpc = " -latomic"
|
||||
LDFLAGS:append:powerpc64 = " -latomic"
|
||||
LDFLAGS:append:riscv32 = " -latomic"
|
||||
|
||||
FILES:${PN} += "${datadir}/gjs-1.0/lsan"
|
||||
|
||||
PACKAGES =+ "${PN}-valgrind"
|
||||
FILES:${PN}-valgrind = "${datadir}/gjs-1.0/valgrind"
|
||||
RDEPENDS:${PN}-valgrind += "valgrind"
|
||||
|
||||
# Valgrind not yet available on rv32/rv64
|
||||
RDEPENDS:${PN}-valgrind:remove:riscv32 = "valgrind"
|
||||
RDEPENDS:${PN}-valgrind:remove:riscv64 = "valgrind"
|
@ -8,11 +8,13 @@ DEPENDS = " \
|
||||
"
|
||||
|
||||
GNOMEBASEBUILDCLASS = "meson"
|
||||
GIR_MESON_ENABLE_FLAG = "enabled"
|
||||
GIR_MESON_ENABLE_FLAG = 'enabled'
|
||||
GIR_MESON_DISABLE_FLAG = 'disabled'
|
||||
GTKDOC_MESON_OPTION = "gtk_doc"
|
||||
|
||||
inherit gnomebase gobject-introspection gtk-doc vala
|
||||
|
||||
SRC_URI[archive.sha256sum] = "646bd50ebad92d91c1be89097a15364156157442cac1471ded7ecb27d9a9150e"
|
||||
SRC_URI[archive.sha256sum] = "7bdf0789553496abddc3c963b0ce7363805c0c02c025feddebcaacc787249e88"
|
||||
|
||||
do_compile:prepend() {
|
||||
export GIR_EXTRA_LIBS_PATH="${B}/gnome-autoar/.libs"
|
@ -1,20 +0,0 @@
|
||||
SUMMARY = "Default GNOME desktop background images"
|
||||
|
||||
LICENSE = "GPL-2.0-only"
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=75859989545e37968a99b631ef42722e"
|
||||
|
||||
GNOMEBASEBUILDCLASS = "meson"
|
||||
inherit gnomebase gettext
|
||||
|
||||
def gnome_verdir(v):
|
||||
return oe.utils.trim_version(v, 1)
|
||||
|
||||
SRC_URI = "${GNOME_MIRROR}/${GNOMEBN}/${@gnome_verdir("${PV}")}/${GNOMEBN}-${PV}.tar.${GNOME_COMPRESS_TYPE};name=archive"
|
||||
|
||||
SRC_URI[archive.sha256sum] = "1da1ac0d261bedf0fcd2c85b480bc65505e23cf51f1143126c0d37717e693145"
|
||||
|
||||
FILES:${PN} += "\
|
||||
${datadir}/backgrounds/gnome \
|
||||
${datadir}/gnome-background-properties \
|
||||
"
|
||||
|
@ -0,0 +1,16 @@
|
||||
SUMMARY = "GNOME wallpapers"
|
||||
LICENSE = "CC-BY-SA-3.0"
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=b52fb0a6df395efb7047cb6fc56bfd7e"
|
||||
|
||||
SECTION = "x11/gnome"
|
||||
|
||||
GNOMEBASEBUILDCLASS = "meson"
|
||||
|
||||
inherit gnomebase gettext allarch
|
||||
|
||||
SRC_URI[archive.sha256sum] = "4c7fe1a09f459c5f77189a5982524fce05d888944955d679910f234606c1295d"
|
||||
|
||||
FILES:${PN} += " \
|
||||
${datadir}/backgrounds \
|
||||
${datadir}/gnome-background-properties \
|
||||
"
|
@ -1,20 +0,0 @@
|
||||
SUMMARY = "Bluetooth integration with GNOME desktop"
|
||||
HOMEPAGE = "https://wiki.gnome.org/Projects/GnomeBluetooth"
|
||||
LICENSE = "GPL-2.0-only & LGPL-2.1-only"
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=eb723b61539feef013de476e68b5c50a \
|
||||
file://COPYING.LIB;md5=a6f89e2100d9b6cdffcea4f398e37343"
|
||||
|
||||
SRC_URI[archive.md5sum] = "c82f7df6a411c897d4d59337d5d9a789"
|
||||
SRC_URI[archive.sha256sum] = "0a068e3bddbbdab46991521e6624098579abe80da242398bdd579c4ca6926422"
|
||||
|
||||
|
||||
DEPENDS = "glib-2.0 glib-2.0-native gtk+3 libcanberra libnotify libxml2-native gobject-introspection"
|
||||
|
||||
|
||||
GNOMEBASEBUILDCLASS = "meson"
|
||||
GTKDOC_MESON_OPTION = "gtk_doc"
|
||||
|
||||
inherit gnomebase gobject-introspection gettext gtk-doc
|
||||
FILES:${PN} += "${datadir}/icons"
|
||||
|
||||
|
@ -0,0 +1,44 @@
|
||||
SUMMARY = "GNOME bluetooth manager"
|
||||
LICENSE = "GPL-2.0-only & LGPL-2.1-only"
|
||||
LIC_FILES_CHKSUM = " \
|
||||
file://COPYING;md5=eb723b61539feef013de476e68b5c50a \
|
||||
file://COPYING.LIB;md5=a6f89e2100d9b6cdffcea4f398e37343 \
|
||||
"
|
||||
|
||||
SECTION = "x11/gnome"
|
||||
|
||||
DEPENDS = " \
|
||||
udev \
|
||||
libnotify \
|
||||
libcanberra \
|
||||
bluez5 \
|
||||
upower \
|
||||
gtk4 \
|
||||
gsound \
|
||||
libadwaita \
|
||||
"
|
||||
|
||||
GNOMEBASEBUILDCLASS = "meson"
|
||||
GTKDOC_MESON_OPTION = "gtk_doc"
|
||||
GTKIC_VERSION = "4"
|
||||
|
||||
inherit features_check gnomebase gtk-icon-cache gtk-doc gobject-introspection
|
||||
|
||||
REQUIRED_DISTRO_FEATURES = "x11"
|
||||
|
||||
SRC_URI[archive.sha256sum] = "3d1e2720673bc9a242619dc5d231fd6e776c18a49da29f43cdc433055adb0170"
|
||||
|
||||
BT_PULSE_PACKS = " \
|
||||
pulseaudio-lib-bluez5-util \
|
||||
pulseaudio-module-bluetooth-discover \
|
||||
pulseaudio-module-bluetooth-policy \
|
||||
pulseaudio-module-bluez5-device \
|
||||
pulseaudio-module-bluez5-discover \
|
||||
"
|
||||
|
||||
PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'pulseaudio', d)}"
|
||||
PACKAGECONFIG[pulseaudio] = ",,,${BT_PULSE_PACKS}"
|
||||
|
||||
FILES:${PN} += "${datadir}/gnome-bluetooth-3.0"
|
||||
|
||||
RDEPENDS:${PN} += "bluez5"
|
@ -0,0 +1,45 @@
|
||||
From ba8aebe1259ae3f7f5a4827e5a47bb95c568b218 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com>
|
||||
Date: Tue, 21 May 2019 16:07:46 +0200
|
||||
Subject: [PATCH] Add meson option to pass sysroot
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
We need to pass this to meson to help it finding gdesktop-enums.h:
|
||||
|
||||
| panels/background/meson.build:38:0: ERROR: File /usr/include/gsettings-desktop-schemas/gdesktop-enums.h does not exist.
|
||||
|
||||
Upstream-Status: Inappropriate [OE specific]
|
||||
|
||||
Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
|
||||
---
|
||||
meson_options.txt | 1 +
|
||||
panels/background/meson.build | 2 +-
|
||||
2 files changed, 2 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/meson_options.txt b/meson_options.txt
|
||||
index dbca723..af0f871 100644
|
||||
--- a/meson_options.txt
|
||||
+++ b/meson_options.txt
|
||||
@@ -1,3 +1,4 @@
|
||||
+option('oe_sysroot', type: 'string', value: '', description: 'Directory for OE-sysroot')
|
||||
option('documentation', type: 'boolean', value: false, description: 'build documentation')
|
||||
option('ibus', type: 'boolean', value: true, description: 'build with IBus support')
|
||||
option('privileged_group', type: 'string', value: 'wheel', description: 'name of group that has elevated permissions')
|
||||
diff --git a/panels/background/meson.build b/panels/background/meson.build
|
||||
index 3634c47..459ccfe 100644
|
||||
--- a/panels/background/meson.build
|
||||
+++ b/panels/background/meson.build
|
||||
@@ -25,7 +25,7 @@ common_sources = []
|
||||
|
||||
enums = 'gdesktop-enums-types'
|
||||
enums_header = files(
|
||||
- gsettings_desktop_dep.get_pkgconfig_variable('prefix') + '/include/gsettings-desktop-schemas/gdesktop-enums.h',
|
||||
+ get_option('oe_sysroot') + gsettings_desktop_dep.get_pkgconfig_variable('prefix') + '/include/gsettings-desktop-schemas/gdesktop-enums.h',
|
||||
'cc-background-item.h'
|
||||
)
|
||||
|
||||
--
|
||||
2.34.1
|
||||
|
@ -1,6 +1,6 @@
|
||||
From 408e0ab8df0b7e98b642228a91ac1072196df36b Mon Sep 17 00:00:00 2001
|
||||
From 34269016c3d438e2f84119c779ebdcf032307ed4 Mon Sep 17 00:00:00 2001
|
||||
From: Bruce Leidl <bruce@subgraph.com>
|
||||
Date: Wed, 6 Oct 2021 14:28:02 -0400
|
||||
Date: Fri, 27 May 2022 15:06:26 -0400
|
||||
Subject: [PATCH] Add options for Citadel and disabling GOA/CUPS
|
||||
|
||||
---
|
||||
@ -14,12 +14,12 @@ Subject: [PATCH] Add options for Citadel and disabling GOA/CUPS
|
||||
7 files changed, 81 insertions(+), 9 deletions(-)
|
||||
|
||||
diff --git a/meson.build b/meson.build
|
||||
index 1ee69c5..a5a5243 100644
|
||||
index 09aa30f..7835bc7 100644
|
||||
--- a/meson.build
|
||||
+++ b/meson.build
|
||||
@@ -114,6 +114,15 @@ if not libhandy_dep.found()
|
||||
libhandy_dep = libhandy.get_variable('libhandy_dep')
|
||||
endif
|
||||
@@ -99,6 +99,15 @@ libgvc = subproject(
|
||||
)
|
||||
libgvc_dep = libgvc.get_variable('libgvc_dep')
|
||||
|
||||
+enable_goa = get_option('online_accounts')
|
||||
+enable_cups = get_option('cups')
|
||||
@ -33,18 +33,18 @@ index 1ee69c5..a5a5243 100644
|
||||
goa_req_version = '>= 3.25.3'
|
||||
pulse_req_version = '>= 2.0'
|
||||
|
||||
@@ -124,7 +133,9 @@ gio_dep = dependency('gio-2.0')
|
||||
glib_dep = dependency('glib-2.0', version: '>= 2.68.0')
|
||||
gnome_desktop_dep = dependency('gnome-desktop-3.0', version: '>= 3.33.4')
|
||||
gnome_settings_dep = dependency('gnome-settings-daemon', version: '>= 3.27.90')
|
||||
@@ -118,7 +127,9 @@ gnome_desktop_dep = dependency('gnome-desktop-4')
|
||||
gnome_bg_dep = dependency('gnome-bg-4')
|
||||
gnome_rr_dep = dependency('gnome-rr-4')
|
||||
gnome_settings_dep = dependency('gnome-settings-daemon', version: '>= 41.0')
|
||||
+if enable_goa
|
||||
goa_dep = dependency('goa-1.0', version: goa_req_version)
|
||||
+endif
|
||||
gsettings_desktop_dep = dependency('gsettings-desktop-schemas', version: '>= 40.alpha')
|
||||
gsettings_desktop_dep = dependency('gsettings-desktop-schemas', version: '>= 42.alpha')
|
||||
libxml_dep = dependency('libxml-2.0')
|
||||
polkit_gobject_dep = dependency('polkit-gobject-1', version: '>= 0.114')
|
||||
@@ -149,6 +160,8 @@ common_deps = [
|
||||
]
|
||||
pulse_dep = dependency('libpulse', version: pulse_req_version)
|
||||
@@ -153,6 +164,8 @@ foreach polkit_file: polkit_files
|
||||
endforeach
|
||||
|
||||
# Check for CUPS 1.4 or newer
|
||||
+
|
||||
@ -52,19 +52,19 @@ index 1ee69c5..a5a5243 100644
|
||||
cups_dep = dependency('cups', version : '>= 1.4', required: false)
|
||||
assert(cups_dep.found(), 'CUPS 1.4 or newer not found')
|
||||
|
||||
@@ -171,6 +184,7 @@ endforeach
|
||||
@@ -175,6 +188,7 @@ endforeach
|
||||
config_h.set10('HAVE_CUPS_HTTPCONNECT2',
|
||||
cc.has_function('httpConnect2', dependencies: cups_dep),
|
||||
description: 'Define if httpConnect2() is available in CUPS')
|
||||
+endif
|
||||
|
||||
# Optional dependency for the user accounts panel
|
||||
enable_cheese = get_option('cheese')
|
||||
# IBus support
|
||||
enable_ibus = get_option('ibus')
|
||||
diff --git a/meson_options.txt b/meson_options.txt
|
||||
index 1b7b548..8dd1b33 100644
|
||||
index dbca723..1f65b82 100644
|
||||
--- a/meson_options.txt
|
||||
+++ b/meson_options.txt
|
||||
@@ -8,3 +8,8 @@ option('tracing', type: 'boolean', value: false, description: 'add extra debuggi
|
||||
@@ -7,3 +7,8 @@ option('tracing', type: 'boolean', value: false, description: 'add extra debuggi
|
||||
option('wayland', type: 'boolean', value: true, description: 'build with Wayland support')
|
||||
option('profile', type: 'combo', choices: ['default','development'], value: 'default')
|
||||
option('malcontent', type: 'boolean', value: false, description: 'build with malcontent support')
|
||||
@ -73,25 +73,8 @@ index 1b7b548..8dd1b33 100644
|
||||
+option('cups', type: 'boolean', value: false, description: 'build with support for CUPS')
|
||||
+option('user_accounts', type: 'boolean', value: false, description: 'build with support for user accounts panel')
|
||||
+option('citadel', type: 'boolean', value: true, description: 'build with Citadel support, which removes unneeded components')
|
||||
diff --git a/panels/background/meson.build b/panels/background/meson.build
|
||||
index eb5e9ec..ee52d12 100644
|
||||
--- a/panels/background/meson.build
|
||||
+++ b/panels/background/meson.build
|
||||
@@ -34,9 +34,11 @@ install_data(
|
||||
|
||||
common_sources = []
|
||||
|
||||
+staging = get_option('staging_dir')
|
||||
+
|
||||
enums = 'gdesktop-enums-types'
|
||||
enums_header = files(
|
||||
- gsettings_desktop_dep.get_pkgconfig_variable('prefix') + '/include/gsettings-desktop-schemas/gdesktop-enums.h',
|
||||
+ staging + gsettings_desktop_dep.get_pkgconfig_variable('prefix') + '/include/gsettings-desktop-schemas/gdesktop-enums.h',
|
||||
'cc-background-item.h'
|
||||
)
|
||||
|
||||
diff --git a/panels/meson.build b/panels/meson.build
|
||||
index f603db9..943210f 100644
|
||||
index 75941ed..b3fe923 100644
|
||||
--- a/panels/meson.build
|
||||
+++ b/panels/meson.build
|
||||
@@ -1,12 +1,10 @@
|
||||
@ -122,7 +105,7 @@ index f603db9..943210f 100644
|
||||
'universal-access',
|
||||
'usage',
|
||||
- 'user-accounts',
|
||||
'wwan',
|
||||
'wwan',
|
||||
]
|
||||
|
||||
@@ -43,6 +36,22 @@ if host_is_linux_not_s390
|
||||
@ -149,10 +132,10 @@ index f603db9..943210f 100644
|
||||
panels_libs = []
|
||||
foreach cappletname: panels
|
||||
diff --git a/shell/cc-panel-list.c b/shell/cc-panel-list.c
|
||||
index c5532ba..75be10d 100644
|
||||
index 6cbc16b..41d6722 100644
|
||||
--- a/shell/cc-panel-list.c
|
||||
+++ b/shell/cc-panel-list.c
|
||||
@@ -388,10 +388,16 @@ static const gchar * const panel_order[] = {
|
||||
@@ -385,10 +385,16 @@ static const gchar * const panel_order[] = {
|
||||
"notifications",
|
||||
"search",
|
||||
"multitasking",
|
||||
@ -169,7 +152,7 @@ index c5532ba..75be10d 100644
|
||||
|
||||
/* Privacy page */
|
||||
"location",
|
||||
@@ -408,16 +414,24 @@ static const gchar * const panel_order[] = {
|
||||
@@ -405,16 +411,24 @@ static const gchar * const panel_order[] = {
|
||||
"display",
|
||||
"mouse",
|
||||
"keyboard",
|
||||
@ -195,7 +178,7 @@ index c5532ba..75be10d 100644
|
||||
"datetime",
|
||||
"info-overview",
|
||||
diff --git a/shell/cc-panel-loader.c b/shell/cc-panel-loader.c
|
||||
index 67f3f1b..4b595af 100644
|
||||
index 66c513e..97eea5b 100644
|
||||
--- a/shell/cc-panel-loader.c
|
||||
+++ b/shell/cc-panel-loader.c
|
||||
@@ -31,14 +31,18 @@
|
||||
|
@ -1,293 +0,0 @@
|
||||
From d7283acccea0a26c1236e757a186221cf9177cff Mon Sep 17 00:00:00 2001
|
||||
From: Bruce Leidl <bruce@subgraph.com>
|
||||
Date: Wed, 6 Oct 2021 14:19:27 -0400
|
||||
Subject: [PATCH] Add options for Citadel and disabling GOA/CUPS
|
||||
|
||||
---
|
||||
meson.build | 14 ++++++++++++++
|
||||
meson_options.txt | 5 +++++
|
||||
panels/meson.build | 23 ++++++++++++++++-------
|
||||
shell/cc-panel-list.c | 14 ++++++++++++++
|
||||
shell/cc-panel-loader.c | 28 ++++++++++++++++++++++++++++
|
||||
tests/meson.build | 2 +-
|
||||
6 files changed, 78 insertions(+), 8 deletions(-)
|
||||
|
||||
diff --git a/meson.build b/meson.build
|
||||
index 1ee69c5..a5a5243 100644
|
||||
--- a/meson.build
|
||||
+++ b/meson.build
|
||||
@@ -114,6 +114,15 @@ if not libhandy_dep.found()
|
||||
libhandy_dep = libhandy.get_variable('libhandy_dep')
|
||||
endif
|
||||
|
||||
+enable_goa = get_option('online_accounts')
|
||||
+enable_cups = get_option('cups')
|
||||
+enable_user_accounts = get_option('user_accounts')
|
||||
+enable_citadel = get_option('citadel')
|
||||
+config_h.set('WITH_GOA', enable_goa, description: 'Define to enable support for Gnome Online Accounts')
|
||||
+config_h.set('WITH_CUPS', enable_goa, description: 'Define to enable support for CUPS')
|
||||
+config_h.set('WITH_USER_ACCOUNTS', enable_user_accounts, description: 'Define to enable user accounts panel')
|
||||
+config_h.set('CITADEL', enable_citadel, description: 'Define to enable the removal of components unneeded in Citadel')
|
||||
+
|
||||
goa_req_version = '>= 3.25.3'
|
||||
pulse_req_version = '>= 2.0'
|
||||
|
||||
@@ -124,7 +133,9 @@ gio_dep = dependency('gio-2.0')
|
||||
glib_dep = dependency('glib-2.0', version: '>= 2.68.0')
|
||||
gnome_desktop_dep = dependency('gnome-desktop-3.0', version: '>= 3.33.4')
|
||||
gnome_settings_dep = dependency('gnome-settings-daemon', version: '>= 3.27.90')
|
||||
+if enable_goa
|
||||
goa_dep = dependency('goa-1.0', version: goa_req_version)
|
||||
+endif
|
||||
gsettings_desktop_dep = dependency('gsettings-desktop-schemas', version: '>= 40.alpha')
|
||||
libxml_dep = dependency('libxml-2.0')
|
||||
polkit_gobject_dep = dependency('polkit-gobject-1', version: '>= 0.114')
|
||||
@@ -149,6 +160,8 @@ common_deps = [
|
||||
]
|
||||
|
||||
# Check for CUPS 1.4 or newer
|
||||
+
|
||||
+if enable_cups
|
||||
cups_dep = dependency('cups', version : '>= 1.4', required: false)
|
||||
assert(cups_dep.found(), 'CUPS 1.4 or newer not found')
|
||||
|
||||
@@ -171,6 +184,7 @@ endforeach
|
||||
config_h.set10('HAVE_CUPS_HTTPCONNECT2',
|
||||
cc.has_function('httpConnect2', dependencies: cups_dep),
|
||||
description: 'Define if httpConnect2() is available in CUPS')
|
||||
+endif
|
||||
|
||||
# Optional dependency for the user accounts panel
|
||||
enable_cheese = get_option('cheese')
|
||||
diff --git a/meson_options.txt b/meson_options.txt
|
||||
index 1b7b548..8dd1b33 100644
|
||||
--- a/meson_options.txt
|
||||
+++ b/meson_options.txt
|
||||
@@ -8,3 +8,8 @@ option('tracing', type: 'boolean', value: false, description: 'add extra debuggi
|
||||
option('wayland', type: 'boolean', value: true, description: 'build with Wayland support')
|
||||
option('profile', type: 'combo', choices: ['default','development'], value: 'default')
|
||||
option('malcontent', type: 'boolean', value: false, description: 'build with malcontent support')
|
||||
+option('staging_dir', type: 'string', description: 'set staging directory for cross-compile')
|
||||
+option('online_accounts', type: 'boolean', value: false, description: 'build with support for gnome-online-accounts')
|
||||
+option('cups', type: 'boolean', value: false, description: 'build with support for CUPS')
|
||||
+option('user_accounts', type: 'boolean', value: false, description: 'build with support for user accounts panel')
|
||||
+option('citadel', type: 'boolean', value: true, description: 'build with Citadel support, which removes unneeded components')
|
||||
diff --git a/panels/meson.build b/panels/meson.build
|
||||
index f603db9..943210f 100644
|
||||
--- a/panels/meson.build
|
||||
+++ b/panels/meson.build
|
||||
@@ -1,12 +1,10 @@
|
||||
subdir('common')
|
||||
|
||||
panels = [
|
||||
- 'applications',
|
||||
'background',
|
||||
'camera',
|
||||
'color',
|
||||
'datetime',
|
||||
- 'default-apps',
|
||||
'diagnostics',
|
||||
'display',
|
||||
'info-overview',
|
||||
@@ -17,17 +15,12 @@ panels = [
|
||||
'mouse',
|
||||
'multitasking',
|
||||
'notifications',
|
||||
- 'online-accounts',
|
||||
'power',
|
||||
- 'printers',
|
||||
'region',
|
||||
- 'removable-media',
|
||||
'search',
|
||||
- 'sharing',
|
||||
'sound',
|
||||
'universal-access',
|
||||
'usage',
|
||||
- 'user-accounts',
|
||||
'wwan',
|
||||
]
|
||||
|
||||
@@ -43,6 +36,22 @@ if host_is_linux_not_s390
|
||||
]
|
||||
endif
|
||||
|
||||
+if enable_goa
|
||||
+ panels += ['online-accounts']
|
||||
+endif
|
||||
+
|
||||
+if enable_cups
|
||||
+ panels += ['printers']
|
||||
+endif
|
||||
+
|
||||
+if enable_user_accounts
|
||||
+ panels += ['user-accounts']
|
||||
+endif
|
||||
+
|
||||
+if not enable_citadel
|
||||
+ panel_names += ['applications', 'default-apps', 'removable-media', 'sharing']
|
||||
+endif
|
||||
+
|
||||
panels_list = []
|
||||
panels_libs = []
|
||||
foreach cappletname: panels
|
||||
diff --git a/shell/cc-panel-list.c b/shell/cc-panel-list.c
|
||||
index c5532ba..75be10d 100644
|
||||
--- a/shell/cc-panel-list.c
|
||||
+++ b/shell/cc-panel-list.c
|
||||
@@ -388,10 +388,16 @@ static const gchar * const panel_order[] = {
|
||||
"notifications",
|
||||
"search",
|
||||
"multitasking",
|
||||
+#ifndef CITADEL
|
||||
"applications",
|
||||
+#endif
|
||||
"privacy",
|
||||
+#ifndef WITH_GOA
|
||||
"online-accounts",
|
||||
+#endif
|
||||
++#ifndef CITADEL
|
||||
"sharing",
|
||||
+#endif
|
||||
|
||||
/* Privacy page */
|
||||
"location",
|
||||
@@ -408,16 +414,24 @@ static const gchar * const panel_order[] = {
|
||||
"display",
|
||||
"mouse",
|
||||
"keyboard",
|
||||
+#ifndef WITH_CUPS
|
||||
"printers",
|
||||
+#endif
|
||||
+#ifndef CITADEL
|
||||
"removable-media",
|
||||
+#endif
|
||||
"wacom",
|
||||
"color",
|
||||
|
||||
/* Details page */
|
||||
"region",
|
||||
"universal-access",
|
||||
+#ifndef WITH_USER_ACCOUNTS
|
||||
"user-accounts",
|
||||
+#endif
|
||||
+#ifndef CITADEL
|
||||
"default-apps",
|
||||
+#endif
|
||||
"reset-settings",
|
||||
"datetime",
|
||||
"info-overview",
|
||||
diff --git a/shell/cc-panel-loader.c b/shell/cc-panel-loader.c
|
||||
index 67f3f1b..4b595af 100644
|
||||
--- a/shell/cc-panel-loader.c
|
||||
+++ b/shell/cc-panel-loader.c
|
||||
@@ -31,14 +31,18 @@
|
||||
#ifndef CC_PANEL_LOADER_NO_GTYPES
|
||||
|
||||
/* Extension points */
|
||||
+#ifndef CITADEL
|
||||
extern GType cc_applications_panel_get_type (void);
|
||||
+#endif
|
||||
extern GType cc_background_panel_get_type (void);
|
||||
#ifdef BUILD_BLUETOOTH
|
||||
extern GType cc_bluetooth_panel_get_type (void);
|
||||
#endif /* BUILD_BLUETOOTH */
|
||||
extern GType cc_color_panel_get_type (void);
|
||||
extern GType cc_date_time_panel_get_type (void);
|
||||
+#ifndef CITADEL
|
||||
extern GType cc_default_apps_panel_get_type (void);
|
||||
+#endif
|
||||
extern GType cc_display_panel_get_type (void);
|
||||
extern GType cc_info_overview_panel_get_type (void);
|
||||
extern GType cc_keyboard_panel_get_type (void);
|
||||
@@ -49,19 +53,29 @@ extern GType cc_network_panel_get_type (void);
|
||||
extern GType cc_wifi_panel_get_type (void);
|
||||
#endif /* BUILD_NETWORK */
|
||||
extern GType cc_notifications_panel_get_type (void);
|
||||
+#ifdef WITH_GOA
|
||||
extern GType cc_goa_panel_get_type (void);
|
||||
+#endif
|
||||
extern GType cc_power_panel_get_type (void);
|
||||
+#ifdef WITH_CUPS
|
||||
extern GType cc_printers_panel_get_type (void);
|
||||
+#endif
|
||||
extern GType cc_region_panel_get_type (void);
|
||||
+#ifndef CITADEL
|
||||
extern GType cc_removable_media_panel_get_type (void);
|
||||
+#endif
|
||||
extern GType cc_search_panel_get_type (void);
|
||||
+#ifndef CITADEL
|
||||
extern GType cc_sharing_panel_get_type (void);
|
||||
+#endif
|
||||
extern GType cc_sound_panel_get_type (void);
|
||||
#ifdef BUILD_THUNDERBOLT
|
||||
extern GType cc_bolt_panel_get_type (void);
|
||||
#endif /* BUILD_THUNDERBOLT */
|
||||
extern GType cc_ua_panel_get_type (void);
|
||||
+#ifdef WITH_USER_ACCOUNTS
|
||||
extern GType cc_user_panel_get_type (void);
|
||||
+#endif
|
||||
#ifdef BUILD_WACOM
|
||||
extern GType cc_wacom_panel_get_type (void);
|
||||
#endif /* BUILD_WACOM */
|
||||
@@ -97,7 +111,9 @@ extern void cc_wwan_panel_static_init_func (void);
|
||||
|
||||
static CcPanelLoaderVtable default_panels[] =
|
||||
{
|
||||
+#ifndef CITADEL
|
||||
PANEL_TYPE("applications", cc_applications_panel_get_type, NULL),
|
||||
+#endif
|
||||
PANEL_TYPE("background", cc_background_panel_get_type, NULL),
|
||||
#ifdef BUILD_BLUETOOTH
|
||||
PANEL_TYPE("bluetooth", cc_bluetooth_panel_get_type, NULL),
|
||||
@@ -105,7 +121,9 @@ static CcPanelLoaderVtable default_panels[] =
|
||||
PANEL_TYPE("camera", cc_camera_panel_get_type, NULL),
|
||||
PANEL_TYPE("color", cc_color_panel_get_type, NULL),
|
||||
PANEL_TYPE("datetime", cc_date_time_panel_get_type, NULL),
|
||||
+#ifndef CITADEL
|
||||
PANEL_TYPE("default-apps", cc_default_apps_panel_get_type, NULL),
|
||||
+#endif
|
||||
PANEL_TYPE("diagnostics", cc_diagnostics_panel_get_type, cc_diagnostics_panel_static_init_func),
|
||||
PANEL_TYPE("display", cc_display_panel_get_type, NULL),
|
||||
PANEL_TYPE("info-overview", cc_info_overview_panel_get_type, NULL),
|
||||
@@ -120,20 +138,30 @@ static CcPanelLoaderVtable default_panels[] =
|
||||
PANEL_TYPE("wifi", cc_wifi_panel_get_type, cc_wifi_panel_static_init_func),
|
||||
#endif
|
||||
PANEL_TYPE("notifications", cc_notifications_panel_get_type, NULL),
|
||||
+#ifdef WITH_GOA
|
||||
PANEL_TYPE("online-accounts", cc_goa_panel_get_type, NULL),
|
||||
+#endif
|
||||
PANEL_TYPE("power", cc_power_panel_get_type, NULL),
|
||||
+#ifdef WITH_CUPS
|
||||
PANEL_TYPE("printers", cc_printers_panel_get_type, NULL),
|
||||
+#endif
|
||||
PANEL_TYPE("region", cc_region_panel_get_type, NULL),
|
||||
+#ifndef CITADEL
|
||||
PANEL_TYPE("removable-media", cc_removable_media_panel_get_type, NULL),
|
||||
+#endif
|
||||
PANEL_TYPE("search", cc_search_panel_get_type, NULL),
|
||||
+#ifndef CITADEL
|
||||
PANEL_TYPE("sharing", cc_sharing_panel_get_type, NULL),
|
||||
+#endif
|
||||
PANEL_TYPE("sound", cc_sound_panel_get_type, NULL),
|
||||
#ifdef BUILD_THUNDERBOLT
|
||||
PANEL_TYPE("thunderbolt", cc_bolt_panel_get_type, NULL),
|
||||
#endif
|
||||
PANEL_TYPE("universal-access", cc_ua_panel_get_type, NULL),
|
||||
PANEL_TYPE("usage", cc_usage_panel_get_type, NULL),
|
||||
+#ifdef WITH_USER_ACCOUNTS
|
||||
PANEL_TYPE("user-accounts", cc_user_panel_get_type, NULL),
|
||||
+#endif
|
||||
#ifdef BUILD_WACOM
|
||||
PANEL_TYPE("wacom", cc_wacom_panel_get_type, cc_wacom_panel_static_init_func),
|
||||
#endif
|
||||
diff --git a/tests/meson.build b/tests/meson.build
|
||||
index d4fe361..b879160 100644
|
||||
--- a/tests/meson.build
|
||||
+++ b/tests/meson.build
|
||||
@@ -6,5 +6,5 @@ endif
|
||||
|
||||
subdir('interactive-panels')
|
||||
|
||||
-subdir('printers')
|
||||
+#subdir('printers')
|
||||
subdir('info')
|
@ -22,22 +22,20 @@ DEPENDS = " \
|
||||
networkmanager \
|
||||
network-manager-applet \
|
||||
gnome-bluetooth \
|
||||
libnma \
|
||||
libgtop \
|
||||
libgudev \
|
||||
gsound \
|
||||
libpwquality \
|
||||
ibus \
|
||||
libhandy \
|
||||
libadwaita \
|
||||
"
|
||||
|
||||
REQUIRED_DISTRO_FEATURES += " pulseaudio systemd x11"
|
||||
|
||||
def gnome_verdir(v):
|
||||
return oe.utils.trim_version(v, 1)
|
||||
|
||||
SRC_URI = "${GNOME_MIRROR}/${GNOMEBN}/${@gnome_verdir("${PV}")}/${GNOMEBN}-${PV}.tar.${GNOME_COMPRESS_TYPE};name=archive"
|
||||
|
||||
SRC_URI[archive.sha256sum] = "ea0c71484c65ce2cc11376f9b01e6211fa4a7ffd334f4307fc52c93f0fddd4c7"
|
||||
SRC_URI += "file://0001-Add-meson-option-to-pass-sysroot.patch"
|
||||
SRC_URI += " file://0001-Add-options-for-Citadel-and-disabling-GOA-CUPS.patch"
|
||||
SRC_URI[archive.sha256sum] = "fb30aff90fbe1d2ad56107d6e9f5f8a4a3aaf3635bbd88920d75b568bb776785"
|
||||
|
||||
|
||||
#
|
||||
@ -69,8 +67,19 @@ SRC_URI[archive.sha256sum] = "ea0c71484c65ce2cc11376f9b01e6211fa4a7ffd334f4307fc
|
||||
# EXTRA_OEMESON += "-Dcitadel=false"
|
||||
#
|
||||
|
||||
SRC_URI += " file://0001-Add-options-for-Citadel-and-disabling-GOA-CUPS.patch"
|
||||
#SRC_URI += " file://0001-Add-options-for-Citadel-and-disabling-GOA-CUPS.patch"
|
||||
|
||||
EXTRA_OEMESON = " \
|
||||
-Doe_sysroot=${STAGING_DIR_HOST} \
|
||||
"
|
||||
|
||||
do_install:append() {
|
||||
# If polkit is setup fixup permissions and ownership
|
||||
if [ -d ${D}${datadir}/polkit-1/rules.d ]; then
|
||||
chmod 700 ${D}${datadir}/polkit-1/rules.d
|
||||
chown polkitd:root ${D}${datadir}/polkit-1/rules.d
|
||||
fi
|
||||
}
|
||||
FILES:${PN} += " \
|
||||
${datadir}/dbus-1 \
|
||||
${datadir}/gnome-shell \
|
||||
@ -80,5 +89,4 @@ FILES:${PN} += " \
|
||||
FILES:${PN}-dev += "${datadir}/gettext"
|
||||
|
||||
RDEPENDS:${PN} += "gsettings-desktop-schemas"
|
||||
EXTRA_OEMESON = "--buildtype=release -Dcheese=false -Ddocumentation=false -Dstaging_dir=${STAGING_DIR_TARGET}"
|
||||
|
@ -0,0 +1,40 @@
|
||||
From de0d33b068a5d8e61cc0c82d88d15b9a8aa97977 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com>
|
||||
Date: Sat, 6 Apr 2019 18:07:17 +0200
|
||||
Subject: [PATCH] meson.build: Disable libseccomp for all archs
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
It does not seem mandatory and can cause unsatisfied dependency [1].
|
||||
|
||||
[1] https://errors.yoctoproject.org/Errors/Details/235565/
|
||||
|
||||
Upstream-Status: Inappropriate [configuration]
|
||||
|
||||
Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
|
||||
---
|
||||
meson.build | 7 +------
|
||||
1 file changed, 1 insertion(+), 6 deletions(-)
|
||||
|
||||
diff --git a/meson.build b/meson.build
|
||||
index 1dc8a73..87d72fe 100644
|
||||
--- a/meson.build
|
||||
+++ b/meson.build
|
||||
@@ -65,12 +65,7 @@ udev_dep = dependency('libudev', required: get_option('udev'))
|
||||
host_os = host_machine.system()
|
||||
host_cpu = host_machine.cpu()
|
||||
supported_os = ['linux']
|
||||
-unsupported_cpus = ['alpha', 'ia64', 'm68k', 'sh4', 'sparc', 'sparc64']
|
||||
-if supported_os.contains(host_os) and not unsupported_cpus.contains(host_cpu)
|
||||
- seccomp_dep = dependency('libseccomp')
|
||||
-else
|
||||
- seccomp_dep = dependency('', required: false)
|
||||
-endif
|
||||
+seccomp_dep = dependency('', required: false)
|
||||
|
||||
fontconfig_cache_path = fontconfig_dep.get_variable(pkgconfig: 'cachedir')
|
||||
xkb_base = xkb_config_dep.get_variable(pkgconfig: 'xkb_base')
|
||||
--
|
||||
2.34.1
|
||||
|
@ -1,12 +0,0 @@
|
||||
diff --git a/libgnome-desktop/gnome-rr.h b/libgnome-desktop/gnome-rr.h
|
||||
index 111bab3f..f633a2d9 100644
|
||||
--- a/libgnome-desktop/gnome-rr.h
|
||||
+++ b/libgnome-desktop/gnome-rr.h
|
||||
@@ -30,6 +30,7 @@
|
||||
|
||||
#include <glib.h>
|
||||
#include <gdk/gdk.h>
|
||||
+#include <stdint.h>
|
||||
|
||||
typedef struct GnomeRRScreenPrivate GnomeRRScreenPrivate;
|
||||
typedef struct GnomeRROutput GnomeRROutput;
|
@ -0,0 +1,61 @@
|
||||
From 9048939b76b3bd10783adb79ed0aaf6cd13895cc Mon Sep 17 00:00:00 2001
|
||||
From: Christopher Larson <chris_larson@mentor.com>
|
||||
Date: Tue, 13 Dec 2016 20:39:51 -0700
|
||||
Subject: [PATCH 1/2] gnome-desktop-thumbnail: don't convert time_t to long
|
||||
|
||||
Explicitly use strftime+strptime rather than snprintf+atol. This fixes the
|
||||
build for X32, where long's size doesn't match that of time_t.
|
||||
|
||||
Upstream-Status: Pending
|
||||
Signed-off-by: Christopher Larson <chris_larson@mentor.com>
|
||||
|
||||
|
||||
Modify patch described above to eliminate replacement of
|
||||
|
||||
g_snprintf (mtime_str, 21, "%" G_GINT64_FORMAT, (gint64) mtime)
|
||||
|
||||
which is not necessary. Retain replacement of atol().
|
||||
|
||||
Signed-off-by: Joe Slater <joe.slater@windriver.com>
|
||||
|
||||
---
|
||||
libgnome-desktop/gnome-desktop-thumbnail.c | 16 ++++++++++++++--
|
||||
1 file changed, 14 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/libgnome-desktop/gnome-desktop-thumbnail.c b/libgnome-desktop/gnome-desktop-thumbnail.c
|
||||
index e56c3d7..5d96bf3 100644
|
||||
--- a/libgnome-desktop/gnome-desktop-thumbnail.c
|
||||
+++ b/libgnome-desktop/gnome-desktop-thumbnail.c
|
||||
@@ -120,6 +120,8 @@
|
||||
* Since: 2.2
|
||||
*/
|
||||
|
||||
+#define _XOPEN_SOURCE
|
||||
+
|
||||
#include <config.h>
|
||||
|
||||
#include <glib.h>
|
||||
@@ -1319,6 +1326,7 @@ gnome_desktop_thumbnail_is_valid (GdkPixbuf *pixbuf,
|
||||
{
|
||||
const char *thumb_uri, *thumb_mtime_str;
|
||||
time_t thumb_mtime;
|
||||
+ struct tm tmp_mtime;
|
||||
|
||||
thumb_uri = gdk_pixbuf_get_option (pixbuf, "tEXt::Thumb::URI");
|
||||
if (g_strcmp0 (uri, thumb_uri) != 0)
|
||||
@@ -1327,7 +1335,11 @@ gnome_desktop_thumbnail_is_valid (GdkPixbuf *pixbuf,
|
||||
thumb_mtime_str = gdk_pixbuf_get_option (pixbuf, "tEXt::Thumb::MTime");
|
||||
if (!thumb_mtime_str)
|
||||
return FALSE;
|
||||
- thumb_mtime = atol (thumb_mtime_str);
|
||||
+ if (!strptime (thumb_mtime_str, "%s", &tmp_mtime))
|
||||
+ return FALSE;
|
||||
+ thumb_mtime = mktime (&tmp_mtime);
|
||||
+ if (!thumb_mtime)
|
||||
+ return FALSE;
|
||||
if (mtime != thumb_mtime)
|
||||
return FALSE;
|
||||
|
||||
--
|
||||
2.14.1
|
||||
|
@ -1,26 +0,0 @@
|
||||
SUMMARY = "GNOME library which provides API shared by several components and applications"
|
||||
SECTION = "x11/gnome"
|
||||
LICENSE = "GPL-2.0-only & LGPL-2.0-only"
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
|
||||
file://COPYING.LIB;md5=5f30f0716dfdd0d91eb439ebec522ec2"
|
||||
|
||||
GNOMEBASEBUILDCLASS = "meson"
|
||||
inherit gnomebase gtk-icon-cache gconf mime pkgconfig upstream-version-is-even gobject-introspection gtk-doc
|
||||
|
||||
GIR_MESON_OPTION = ""
|
||||
GTKDOC_MESON_OPTION = "gtk_doc"
|
||||
|
||||
|
||||
SRC_URI += "file://0001-needs-stdint-include.patch"
|
||||
SRC_URI[archive.sha256sum] = "be8aafa64d7ba2fd31079eed639d39fda1ea77ef77d35a678f019c4d91d473c2"
|
||||
|
||||
DEPENDS += "itstool-native gsettings-desktop-schemas gconf virtual/libx11 gtk+3 glib-2.0 startup-notification xkeyboard-config iso-codes udev libseccomp"
|
||||
|
||||
EXTRA_OEMESON = "-Ddesktop_docs=false -Dgnome_distributor='Subgraph'"
|
||||
|
||||
PACKAGES =+ "libgnome-desktop"
|
||||
FILES:libgnome-desktop = "${libdir}/lib*${SOLIBS} ${datadir}/libgnome-desktop*/pnp.ids ${datadir}/gnome/*xml"
|
||||
|
||||
RRECOMMENDS:libgnome-desktop += "gsettings-desktop-schemas"
|
||||
|
||||
|
47
meta-gnome/recipes-gnome/gnome-desktop/gnome-desktop_42.1.bb
Normal file
47
meta-gnome/recipes-gnome/gnome-desktop/gnome-desktop_42.1.bb
Normal file
@ -0,0 +1,47 @@
|
||||
SUMMARY = "GNOME library for reading .desktop files"
|
||||
SECTION = "x11/gnome"
|
||||
LICENSE = "GPL-2.0-only & LGPL-2.0-only"
|
||||
LIC_FILES_CHKSUM = " \
|
||||
file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
|
||||
file://COPYING.LIB;md5=5f30f0716dfdd0d91eb439ebec522ec2 \
|
||||
"
|
||||
|
||||
GNOMEBASEBUILDCLASS = "meson"
|
||||
|
||||
inherit gnomebase itstool pkgconfig upstream-version-is-even gobject-introspection features_check gtk-doc
|
||||
|
||||
REQUIRED_DISTRO_FEATURES = "x11"
|
||||
# gobject-introspection is mandatory and cannot be configured
|
||||
REQUIRED_DISTRO_FEATURES += "gobject-introspection-data"
|
||||
|
||||
GIR_MESON_OPTION = ""
|
||||
|
||||
SRC_URI[archive.sha256sum] = "2433ab606d244c3524de5b812094db8a670fb11ed9ff7180c2d021ae1fc9fc05"
|
||||
SRC_URI += " \
|
||||
file://gnome-desktop-thumbnail-don-t-assume-time_t-is-long.patch \
|
||||
file://0001-meson.build-Disable-libseccomp-for-all-archs.patch \
|
||||
"
|
||||
|
||||
DEPENDS += " \
|
||||
gsettings-desktop-schemas \
|
||||
virtual/libx11 \
|
||||
gtk+3 \
|
||||
gtk4 \
|
||||
startup-notification \
|
||||
xkeyboard-config \
|
||||
iso-codes \
|
||||
udev \
|
||||
"
|
||||
|
||||
GTKDOC_MESON_OPTION = "gtk_doc"
|
||||
EXTRA_OEMESON = "-Ddesktop_docs=false"
|
||||
|
||||
PACKAGES =+ "libgnome-desktop"
|
||||
RDEPENDS:${PN} += "libgnome-desktop"
|
||||
FILES:libgnome-desktop = " \
|
||||
${libdir}/lib*${SOLIBS} \
|
||||
${datadir}/libgnome-desktop*/pnp.ids \
|
||||
${datadir}/gnome/*xml \
|
||||
"
|
||||
|
||||
RRECOMMENDS:libgnome-desktop += "gsettings-desktop-schemas"
|
@ -11,34 +11,28 @@ DEPENDS = " \
|
||||
libnotify \
|
||||
libsecret \
|
||||
libpwquality \
|
||||
libhandy \
|
||||
udisks2 \
|
||||
libxml2-native \
|
||||
libhandy \
|
||||
"
|
||||
|
||||
GNOMEBASEBUILDCLASS = "meson"
|
||||
|
||||
inherit gnomebase gsettings gtk-icon-cache gettext features_check upstream-version-is-even mime-xdg
|
||||
inherit gnomebase gsettings gtk-icon-cache gettext features_check mime-xdg
|
||||
|
||||
REQUIRED_DISTRO_FEATURES = "x11"
|
||||
REQUIRED_DISTRO_FEATURES = "x11 polkit"
|
||||
|
||||
PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'systemd', d)}"
|
||||
|
||||
# As soon as elogind is of interest this needs rework: meson option is combo
|
||||
PACKAGECONFIG[systemd] = "-Dlogind=libsystemd,-Dlogind=none,systemd"
|
||||
|
||||
EXTRA_OEMESON += "-Dman=false"
|
||||
SRC_URI += "file://0001-Don-t-display-ignored-disks.patch"
|
||||
|
||||
def gnome_verdir(v):
|
||||
return oe.utils.trim_version(v, 1)
|
||||
SRC_URI[archive.sha256sum] = "1b6564454d67426322cb3bfc5a5558653bfc7dfeea2ae0825b1d08629f01090b"
|
||||
|
||||
SRC_URI = "${GNOME_MIRROR}/${GNOMEBN}/${@gnome_verdir("${PV}")}/${GNOMEBN}-${PV}.tar.${GNOME_COMPRESS_TYPE};name=archive \
|
||||
file://0001-Don-t-display-ignored-disks.patch \
|
||||
"
|
||||
SRC_URI[archive.sha256sum] = "8743c98fd656062ef862933efe30c5be4c6b322ec02eee154ec70d08ed0895df"
|
||||
EXTRA_OEMESON = "-Dman=false"
|
||||
|
||||
FILES:${PN} += " \
|
||||
${datadir}/metainfo \
|
||||
${datadir}/dbus-1 \
|
||||
"
|
||||
|
@ -0,0 +1,36 @@
|
||||
From c38c604b06a63f690d67318d4ef97ac556264876 Mon Sep 17 00:00:00 2001
|
||||
From: Jack Hill <jackhill@jackhill.us>
|
||||
Date: Thu, 18 Nov 2021 00:46:58 -0500
|
||||
Subject: [PATCH] meson: remove extraneous positional argument
|
||||
|
||||
* data/meson.build (desktop_file)
|
||||
(metainfo_file): Remove extraneous positional argument.
|
||||
|
||||
Closes #186
|
||||
|
||||
Upstream-Status: Backport
|
||||
Signed-off-by: Alexander Kanavin <alex@linutronix.de>
|
||||
---
|
||||
data/meson.build | 2 --
|
||||
1 file changed, 2 deletions(-)
|
||||
|
||||
diff --git a/data/meson.build b/data/meson.build
|
||||
index fd570b3..4e2e2e8 100644
|
||||
--- a/data/meson.build
|
||||
+++ b/data/meson.build
|
||||
@@ -1,7 +1,6 @@
|
||||
gnome = import('gnome')
|
||||
|
||||
desktop_file = i18n.merge_file(
|
||||
- 'desktop',
|
||||
type: 'desktop',
|
||||
input: 'org.gnome.Screenshot.desktop.in',
|
||||
output: 'org.gnome.Screenshot.desktop',
|
||||
@@ -23,7 +22,6 @@ if desktop_file_validate.found()
|
||||
endif
|
||||
|
||||
metainfo_file = i18n.merge_file(
|
||||
- 'appdata',
|
||||
input: 'org.gnome.Screenshot.metainfo.xml.in',
|
||||
output: 'org.gnome.Screenshot.metainfo.xml',
|
||||
po_dir: join_paths(meson.current_source_dir(), '../po'),
|
@ -1,19 +0,0 @@
|
||||
SUMMARY = "GNOME Screenshot"
|
||||
LICENSE = "GPL-2.0-only"
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552"
|
||||
|
||||
GNOMEBASEBUILDCLASS = "meson"
|
||||
inherit gnomebase gettext
|
||||
|
||||
DEPENDS += "libx11 libxext glib-2.0 gtk+3 libcanberra glib-2.0-native libxml2-native libhandy"
|
||||
|
||||
def gnome_verdir(v):
|
||||
return oe.utils.trim_version(v, 1)
|
||||
|
||||
SRC_URI = "${GNOME_MIRROR}/${GNOMEBN}/${@gnome_verdir("${PV}")}/${GNOMEBN}-${PV}.tar.${GNOME_COMPRESS_TYPE};name=archive"
|
||||
|
||||
SRC_URI[archive.sha256sum] = "368ca95a39e39dc2406c849e8c4205e3f574acdd874c30741873455e3d21a5e2"
|
||||
|
||||
FILES:${PN} += "${datadir}/dbus-1/services"
|
||||
FILES:${PN}-dev += "${datadir}/metainfo"
|
||||
|
@ -0,0 +1,23 @@
|
||||
SUMMARY = "GNOME Screenshot"
|
||||
DESCRIPTION = "GNOME Screenshot is a small utility that takes a screenshot \
|
||||
of the whole desktop, the currently focused window, or an area of the screen."
|
||||
LICENSE = "GPL-2.0-only"
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552"
|
||||
|
||||
SECTION = "x11/gnome"
|
||||
|
||||
GNOMEBASEBUILDCLASS = "meson"
|
||||
|
||||
inherit features_check gnomebase gettext upstream-version-is-even pkgconfig
|
||||
|
||||
SRC_URI += " file://0001-meson-remove-extraneous-positional-argument.patch"
|
||||
SRC_URI[archive.sha256sum] = "4adb7dec926428f74263d5796673cf142e4720b6e768f5468a8d0933f98c9597"
|
||||
|
||||
DEPENDS += "glib-2.0 glib-2.0-native gtk+3 libhandy xext"
|
||||
|
||||
REQUIRED_DISTRO_FEATURES = "x11"
|
||||
|
||||
FILES:${PN} += " \
|
||||
${datadir}/dbus-1 \
|
||||
${datadir}/metainfo \
|
||||
"
|
@ -1,6 +1,6 @@
|
||||
From 77e6fdd36bdc562e42da57c5a753b885d57eea85 Mon Sep 17 00:00:00 2001
|
||||
From: David McKinney <mckinney@subgraph.com>
|
||||
Date: Fri, 12 Feb 2021 13:57:01 +0000
|
||||
From 87a40c18adf3305f8b82679cc80b544158b566f9 Mon Sep 17 00:00:00 2001
|
||||
From: Bruce Leidl <bruce@subgraph.com>
|
||||
Date: Fri, 27 May 2022 14:51:48 -0400
|
||||
Subject: [PATCH] Patch locking logout so it does not disable shutting down
|
||||
|
||||
---
|
||||
@ -8,10 +8,10 @@ Subject: [PATCH] Patch locking logout so it does not disable shutting down
|
||||
1 file changed, 7 insertions(+), 8 deletions(-)
|
||||
|
||||
diff --git a/gnome-session/gsm-manager.c b/gnome-session/gsm-manager.c
|
||||
index 6839a02..4c2e862 100644
|
||||
index 1b88b26..fb3f2ec 100644
|
||||
--- a/gnome-session/gsm-manager.c
|
||||
+++ b/gnome-session/gsm-manager.c
|
||||
@@ -553,10 +553,10 @@ end_phase (GsmManager *manager)
|
||||
@@ -560,10 +560,10 @@ end_phase (GsmManager *manager)
|
||||
case GSM_MANAGER_PHASE_APPLICATION:
|
||||
break;
|
||||
case GSM_MANAGER_PHASE_RUNNING:
|
||||
@ -24,7 +24,7 @@ index 6839a02..4c2e862 100644
|
||||
break;
|
||||
case GSM_MANAGER_PHASE_QUERY_END_SESSION:
|
||||
if (!do_query_end_session_exit (manager))
|
||||
@@ -2555,13 +2555,13 @@ gsm_manager_shutdown (GsmExportedManager *skeleton,
|
||||
@@ -2633,13 +2633,13 @@ gsm_manager_shutdown (GsmExportedManager *skeleton,
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
@ -38,9 +38,9 @@ index 6839a02..4c2e862 100644
|
||||
- }
|
||||
+ }*/
|
||||
|
||||
task = g_task_new (manager, manager->priv->end_session_cancellable, (GAsyncReadyCallback) complete_end_session_task, invocation);
|
||||
task = g_task_new (manager, priv->end_session_cancellable, (GAsyncReadyCallback) complete_end_session_task, invocation);
|
||||
|
||||
@@ -2590,13 +2590,13 @@ gsm_manager_reboot (GsmExportedManager *skeleton,
|
||||
@@ -2669,13 +2669,13 @@ gsm_manager_reboot (GsmExportedManager *skeleton,
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
@ -54,15 +54,15 @@ index 6839a02..4c2e862 100644
|
||||
- }
|
||||
+ }*/
|
||||
|
||||
task = g_task_new (manager, manager->priv->end_session_cancellable, (GAsyncReadyCallback) complete_end_session_task, invocation);
|
||||
task = g_task_new (manager, priv->end_session_cancellable, (GAsyncReadyCallback) complete_end_session_task, invocation);
|
||||
|
||||
@@ -2617,8 +2617,7 @@ gsm_manager_can_shutdown (GsmExportedManager *skeleton,
|
||||
@@ -2697,8 +2697,7 @@ gsm_manager_can_shutdown (GsmExportedManager *skeleton,
|
||||
|
||||
g_debug ("GsmManager: CanShutdown called");
|
||||
|
||||
- shutdown_available = !_log_out_is_locked_down (manager) &&
|
||||
- (gsm_system_can_stop (manager->priv->system)
|
||||
+ shutdown_available = (gsm_system_can_stop (manager->priv->system)
|
||||
|| gsm_system_can_restart (manager->priv->system)
|
||||
|| gsm_system_can_suspend (manager->priv->system)
|
||||
|| gsm_system_can_hibernate (manager->priv->system));
|
||||
- (gsm_system_can_stop (priv->system)
|
||||
+ shutdown_available = (gsm_system_can_stop (priv->system)
|
||||
|| gsm_system_can_restart (priv->system)
|
||||
|| gsm_system_can_suspend (priv->system)
|
||||
|| gsm_system_can_hibernate (priv->system));
|
||||
|
@ -1,30 +1,27 @@
|
||||
From a85ae8e4c464f0d4067ec86b4eba406917b4fd2e Mon Sep 17 00:00:00 2001
|
||||
From 5ec8ebdb6ffa4af30deee2c3a594a57f9f5a9b28 Mon Sep 17 00:00:00 2001
|
||||
From: Bruce Leidl <bruce@subgraph.com>
|
||||
Date: Wed, 28 Oct 2020 08:18:59 -0400
|
||||
Subject: [PATCH] Disable sharing and usb protection, add --systemd to desktops
|
||||
Date: Fri, 27 May 2022 14:55:58 -0400
|
||||
Subject: [PATCH] Add --systemd and --session to desktop files
|
||||
|
||||
---
|
||||
data/gnome-wayland.desktop.in.in | 4 +++-
|
||||
data/gnome-wayland.desktop.in.in | 2 +-
|
||||
data/gnome-xorg.desktop.in.in | 2 +-
|
||||
data/gnome.desktop.in.in | 2 +-
|
||||
data/meson.build | 2 --
|
||||
4 files changed, 5 insertions(+), 5 deletions(-)
|
||||
3 files changed, 3 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/data/gnome-wayland.desktop.in.in b/data/gnome-wayland.desktop.in.in
|
||||
index 516c211..14b5f5a 100644
|
||||
index b48eecd..18f5c7e 100644
|
||||
--- a/data/gnome-wayland.desktop.in.in
|
||||
+++ b/data/gnome-wayland.desktop.in.in
|
||||
@@ -1,7 +1,9 @@
|
||||
@@ -1,7 +1,7 @@
|
||||
[Desktop Entry]
|
||||
Name=GNOME
|
||||
Name=GNOME on Wayland
|
||||
Comment=This session logs you into GNOME
|
||||
-Exec=@bindir@/gnome-session
|
||||
+Exec=@bindir@/gnome-session --systemd --session=gnome
|
||||
TryExec=@bindir@/gnome-session
|
||||
Type=Application
|
||||
DesktopNames=GNOME
|
||||
+X-GDM-SessionRegisters=true
|
||||
+
|
||||
diff --git a/data/gnome-xorg.desktop.in.in b/data/gnome-xorg.desktop.in.in
|
||||
index 9a76fac..40ec660 100644
|
||||
--- a/data/gnome-xorg.desktop.in.in
|
@ -1,45 +0,0 @@
|
||||
SUMMARY = "GNOME session"
|
||||
LICENSE = "GPL-2.0-only"
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
|
||||
|
||||
DEPENDS = " \
|
||||
glib-2.0-native \
|
||||
libxslt-native \
|
||||
xmlto-native \
|
||||
xtrans \
|
||||
libice \
|
||||
libsm \
|
||||
virtual/libx11 \
|
||||
gtk+3 \
|
||||
gnome-desktop \
|
||||
gsettings-desktop-schemas \
|
||||
json-glib \
|
||||
"
|
||||
|
||||
GNOMEBASEBUILDCLASS = "meson"
|
||||
|
||||
inherit gnomebase gettext gsettings upstream-version-is-even features_check
|
||||
|
||||
REQUIRED_DISTRO_FEATURES = "x11 systemd pam gobject-introspection-data"
|
||||
|
||||
def gnome_verdir(v):
|
||||
return oe.utils.trim_version(v, 1)
|
||||
|
||||
SRC_URI = "${GNOME_MIRROR}/${GNOMEBN}/${@gnome_verdir("${PV}")}/${GNOMEBN}-${PV}.tar.${GNOME_COMPRESS_TYPE};name=archive"
|
||||
|
||||
SRC_URI[archive.sha256sum] = "9c787829ee32e13e1508b9aee2b1d9ba42a02c48e6c8094e34f3e7f92af4df82"
|
||||
SRC_URI += " \
|
||||
file://0001-Patch-locking-logout-so-it-does-not-disable-shutting.patch \
|
||||
file://0001-Disable-sharing-and-usb-protection-add-systemd-to-de.patch \
|
||||
"
|
||||
|
||||
EXTRA_OEMESON += "-Dsystemd=true -Dsystemd_journal=true -Ddocbook=false -Dman=false"
|
||||
FILES:${PN} += " \
|
||||
${bindir}/gnome-session \
|
||||
${libexecdir}/gnome-session-ctl \
|
||||
${datadir}/xsessions \
|
||||
${datadir}/wayland-sessions \
|
||||
${systemd_user_unitdir} \
|
||||
"
|
||||
|
||||
RDEPENDS:${PN} += "gnome-shell gnome-settings-daemon gsettings-desktop-schemas"
|
41
meta-gnome/recipes-gnome/gnome-session/gnome-session_42.0.bb
Normal file
41
meta-gnome/recipes-gnome/gnome-session/gnome-session_42.0.bb
Normal file
@ -0,0 +1,41 @@
|
||||
SUMMARY = "GNOME session"
|
||||
LICENSE = "GPL-2.0-only"
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
|
||||
|
||||
DEPENDS = " \
|
||||
glib-2.0-native \
|
||||
libxslt-native \
|
||||
xmlto-native \
|
||||
xtrans \
|
||||
libice \
|
||||
libsm \
|
||||
virtual/libx11 \
|
||||
gtk+3 \
|
||||
gnome-desktop \
|
||||
gsettings-desktop-schemas \
|
||||
json-glib \
|
||||
"
|
||||
|
||||
GNOMEBASEBUILDCLASS = "meson"
|
||||
|
||||
inherit gnomebase gettext gsettings upstream-version-is-even features_check
|
||||
|
||||
REQUIRED_DISTRO_FEATURES = "x11 polkit systemd pam gobject-introspection-data"
|
||||
|
||||
SRC_URI += "file://0001-Patch-locking-logout-so-it-does-not-disable-shutting.patch \
|
||||
file://0002-Add-systemd-and-session-to-desktop-files.patch \
|
||||
"
|
||||
SRC_URI[archive.sha256sum] = "3cca06053ab682926920951a7da95f8cc6d72da74c682c46d0a0653332969caa"
|
||||
|
||||
PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'systemd', 'consolekit',d)}"
|
||||
|
||||
PACKAGECONFIG[consolekit] = "-Dconsolekit=true, -Dconsolekit=false, consolekit"
|
||||
PACKAGECONFIG[systemd] = "-Dsystemd=true -Dsystemd_journal=true, -Dsystemd=false -Dsystemd_journal=false, systemd"
|
||||
|
||||
FILES:${PN} += " \
|
||||
${datadir}/xsessions \
|
||||
${datadir}/wayland-sessions \
|
||||
${systemd_user_unitdir} \
|
||||
"
|
||||
|
||||
RDEPENDS:${PN} += "gnome-shell gnome-settings-daemon gsettings-desktop-schemas"
|
@ -1,35 +0,0 @@
|
||||
|
||||
SUMMARY = "A set of daemons that manage and provide various parameters to applications"
|
||||
HOMEPAGE = "https://wiki.gnome.org/Initiatives/Wayland/gnome-settings-daemon"
|
||||
LICENSE = "GPL-2.0-only & LGPL-2.1-only"
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552 \
|
||||
file://COPYING.LIB;md5=fbc093901857fcd118f065f900982c24"
|
||||
|
||||
DEPENDS = "pango gnome-desktop xorgproto libnotify fontconfig libgudev libxext wayland glib-2.0 libxi libx11 libwacom libxtst gsettings-desktop-schemas intltool-native gtk+3 polkit upower lcms glib-2.0-native wayland colord geoclue libcanberra geocode-glib libgweather pulseaudio networkmanager"
|
||||
|
||||
FILES:${PN} += "\
|
||||
${systemd_user_unitdir} \
|
||||
${libdir}/gnome-settings-daemon-41 \
|
||||
"
|
||||
|
||||
FILES:${PN}-staticdev += "${libdir}/gnome-settings-daemon-3.0/libgsd.a"
|
||||
|
||||
|
||||
GNOMEBASEBUILDCLASS = "meson"
|
||||
|
||||
inherit gnomebase gobject-introspection gettext meson-exe-wrapper
|
||||
|
||||
GIR_MESON_OPTION = ""
|
||||
|
||||
SRC_URI[archive.sha256sum] = "e6ca6361fbd1deab2de1a1e390d4f14167cf47b1c547dbb8b65a5d89e9663884"
|
||||
SRC_URI += "file://0001-disable-power-tests-and-sharing.patch"
|
||||
|
||||
EXTRA_OEMESON += "\
|
||||
--buildtype=release \
|
||||
-Dcups=false \
|
||||
-Dsmartcard=false \
|
||||
-Dwwan=false \
|
||||
-Dusb-protection=false \
|
||||
-Dsystemd=true \
|
||||
"
|
||||
|
@ -0,0 +1,53 @@
|
||||
SUMMARY = "Window navigation construction toolkit"
|
||||
LICENSE = "LGPL-2.0-only"
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552"
|
||||
|
||||
GNOMEBASEBUILDCLASS = "meson"
|
||||
|
||||
inherit gnomebase gsettings gobject-introspection gettext features_check upstream-version-is-even
|
||||
|
||||
DEPENDS = " \
|
||||
colord \
|
||||
geocode-glib \
|
||||
gcr \
|
||||
gnome-desktop \
|
||||
libgweather4 \
|
||||
lcms \
|
||||
libcanberra \
|
||||
geoclue \
|
||||
libnotify \
|
||||
upower \
|
||||
libwacom \
|
||||
pulseaudio \
|
||||
virtual/libx11 \
|
||||
"
|
||||
|
||||
# all these are mandatory
|
||||
REQUIRED_DISTRO_FEATURES = "x11 polkit pulseaudio systemd gobject-introspection-data"
|
||||
GIR_MESON_OPTION = ""
|
||||
|
||||
SRC_URI[archive.sha256sum] = "ed65851ae54adcd58a24c86837d624fc6a14bd84ab22e94df40a3a4cfd19ffdb"
|
||||
SRC_URI += "file://0001-disable-power-tests-and-sharing.patch"
|
||||
|
||||
PACKAGECONFIG ??= " \
|
||||
nm \
|
||||
alsa gudev \
|
||||
${@bb.utils.filter('DISTRO_FEATURES', 'wayland', d)} \
|
||||
"
|
||||
PACKAGECONFIG[alsa] = "-Dalsa=true,-Dalsa=false,alsa-lib"
|
||||
PACKAGECONFIG[cups] = "-Dcups=true,-Dcups=false,cups"
|
||||
PACKAGECONFIG[gudev] = "-Dgudev=true,-Dgudev=false,libgudev"
|
||||
PACKAGECONFIG[nm] = "-Dnetwork_manager=true,-Dnetwork_manager=false,networkmanager"
|
||||
PACKAGECONFIG[smartcard] = "-Dsmartcard=true,-Dsmartcard=false,nss"
|
||||
PACKAGECONFIG[wayland] = "-Dwayland=true,-Dwayland=false,wayland"
|
||||
|
||||
FILES:${PN} += " \
|
||||
${systemd_user_unitdir} \
|
||||
${libdir}/gnome-settings-daemon-42/libgsd.so \
|
||||
"
|
||||
|
||||
EXTRA_OEMESON += "\
|
||||
-Dwwan=false \
|
||||
-Dusb-protection=false \
|
||||
-Dsystemd=true \
|
||||
"
|
@ -4,18 +4,15 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
|
||||
REQUIRED_DISTRO_FEATURES = "x11 systemd pam"
|
||||
|
||||
GIR_MESON_OPTION = ""
|
||||
GTKIC_VERSION = "4"
|
||||
|
||||
SRCREV = "d85bd654a3c830a8c3982286c1876321c96faf7d"
|
||||
SRCREV = "3f794cbe00f3947335a57c1139c8eb3fc617ffb7"
|
||||
|
||||
EXTERNAL_TREE_VAR="CITADEL_GNOME_SHELL_PATH"
|
||||
GIT_URI = "gitsm://github.com/brl/gnome-shell.git;branch=citadel;protocol=https"
|
||||
GIT_URI = "gitsm://github.com/brl/gnome-shell.git;branch=citadel-42.1;protocol=https"
|
||||
|
||||
GNOMEBASEBUILDCLASS = "meson"
|
||||
|
||||
inherit gnomebase gsettings gettext gobject-introspection gobject-introspection-data features_check bash-completion external-tree
|
||||
|
||||
|
||||
|
||||
DEPENDS = " \
|
||||
libxml2-native \
|
||||
sassc-native \
|
||||
@ -33,6 +30,8 @@ DEPENDS = " \
|
||||
gsettings-desktop-schemas \
|
||||
"
|
||||
|
||||
inherit gnomebase gsettings gettext gobject-introspection gtk-icon-cache features_check external-tree
|
||||
|
||||
RDEPENDS:${PN} = "gsettings-desktop-schemas librsvg-gtk"
|
||||
|
||||
FILES:${PN} += "\
|
@ -9,20 +9,20 @@ DEPENDS = " \
|
||||
gtkmm3 \
|
||||
libgtop \
|
||||
librsvg \
|
||||
libhandy \
|
||||
polkit \
|
||||
libhandy \
|
||||
"
|
||||
|
||||
GNOMEBASEBUILDCLASS = "meson"
|
||||
|
||||
inherit gnomebase gsettings gnome-help itstool gtk-icon-cache features_check gettext upstream-version-is-even
|
||||
inherit gnomebase gsettings gnome-help itstool gtk-icon-cache features_check gettext
|
||||
|
||||
REQUIRED_DISTRO_FEATURES = "x11 polkit"
|
||||
|
||||
def gnome_verdir(v):
|
||||
return oe.utils.trim_version(v, 1)
|
||||
|
||||
SRC_URI = "${GNOME_MIRROR}/${GNOMEBN}/${@gnome_verdir("${PV}")}/${GNOMEBN}-${PV}.tar.${GNOME_COMPRESS_TYPE};name=archive"
|
||||
|
||||
SRC_URI[archive.sha256sum] = "c7fc44c61949b794b0289968ebbbcc0c15f8cfc3d9e45bfaa81ed45c12139e5f"
|
||||
SRC_URI[archive.sha256sum] = "13239d22032201a22bd29833c575b684816700d2de168a1530223577c5c075dc"
|
||||
|
||||
PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'systemd', d)}"
|
||||
PACKAGECONFIG[systemd] = "-Dsystemd=true, -Dsystemd=false, systemd"
|
@ -0,0 +1,34 @@
|
||||
From f231cecc151930fd5b6309da317a8c5bc6001f38 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com>
|
||||
Date: Sat, 30 Oct 2021 15:10:28 +0200
|
||||
Subject: [PATCH] Add W_EXITCODE macro for non-glibc systems
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
Upstream-Status: Pending
|
||||
|
||||
Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
|
||||
---
|
||||
src/terminal.cc | 5 +++++
|
||||
1 file changed, 5 insertions(+)
|
||||
|
||||
diff --git a/src/terminal.cc b/src/terminal.cc
|
||||
index 27ee91e..5f4d880 100644
|
||||
--- a/src/terminal.cc
|
||||
+++ b/src/terminal.cc
|
||||
@@ -47,6 +47,11 @@
|
||||
GS_DEFINE_CLEANUP_FUNCTION0(TerminalOptions*, gs_local_options_free, terminal_options_free)
|
||||
#define gs_free_options __attribute__ ((cleanup(gs_local_options_free)))
|
||||
|
||||
+/* fix for musl */
|
||||
+#ifndef W_EXITCODE
|
||||
+#define W_EXITCODE(ret, sig) ((ret) << 8 | (sig))
|
||||
+#endif
|
||||
+
|
||||
/* Wait-for-exit helper */
|
||||
|
||||
typedef struct {
|
||||
--
|
||||
2.31.1
|
||||
|
@ -0,0 +1,46 @@
|
||||
From f88447850e162c8d514be367db574c6fa2fec2a5 Mon Sep 17 00:00:00 2001
|
||||
From: Christian Persch <chpe@src.gnome.org>
|
||||
Date: Fri, 14 Jan 2022 11:33:32 +0100
|
||||
Subject: [PATCH] build: Fix for newer meson
|
||||
|
||||
Upstream-Status: Backport
|
||||
Signed-off-by: Alexander Kanavin <alex@linutronix.de>
|
||||
---
|
||||
data/meson.build | 5 +----
|
||||
1 file changed, 1 insertion(+), 4 deletions(-)
|
||||
|
||||
diff --git a/data/meson.build b/data/meson.build
|
||||
index 79d97e5..e0bcbb9 100644
|
||||
--- a/data/meson.build
|
||||
+++ b/data/meson.build
|
||||
@@ -18,7 +18,6 @@
|
||||
metainfodir = gt_datadir / 'metainfo'
|
||||
|
||||
i18n.merge_file(
|
||||
- gt_dns_name + '.metainfo.xml',
|
||||
input: gt_dns_name + '.metainfo.xml.in',
|
||||
output: '@BASENAME@',
|
||||
po_dir: po_dir,
|
||||
@@ -27,7 +26,6 @@ i18n.merge_file(
|
||||
)
|
||||
|
||||
i18n.merge_file(
|
||||
- gt_dns_name + '.Nautilus.metainfo.xml',
|
||||
input: gt_dns_name + '.Nautilus.metainfo.xml.in',
|
||||
output: '@BASENAME@',
|
||||
po_dir: po_dir,
|
||||
@@ -40,7 +38,6 @@ i18n.merge_file(
|
||||
desktopdatadir = gt_datadir / 'applications'
|
||||
|
||||
i18n.merge_file(
|
||||
- gt_dns_name + '.desktop',
|
||||
input: gt_dns_name + '.desktop.in',
|
||||
output: '@BASENAME@',
|
||||
type: 'desktop',
|
||||
@@ -57,4 +54,4 @@ meson.add_install_script(
|
||||
|
||||
# Subdirs
|
||||
|
||||
-subdir('icons')
|
||||
\ No newline at end of file
|
||||
+subdir('icons')
|
@ -1,35 +0,0 @@
|
||||
SUMMARY = "GNOME terminal emulator"
|
||||
HOMEPAGE = "https://wiki.gnome.org/Apps/Terminal"
|
||||
LICENSE = "GPL-3.0-only"
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=f27defe1e96c2e1ecd4e0c9be8967949"
|
||||
|
||||
DEPENDS = " \
|
||||
glib-2.0-native \
|
||||
intltool-native \
|
||||
yelp-tools-native \
|
||||
desktop-file-utils-native \
|
||||
gtk+3 \
|
||||
gsettings-desktop-schemas \
|
||||
vte \
|
||||
dconf \
|
||||
libpcre2 \
|
||||
docbook-xsl-stylesheets-native \
|
||||
"
|
||||
|
||||
GNOMEBASEBUILDCLASS = "meson"
|
||||
inherit gnomebase gsettings gnome-help gettext itstool upstream-version-is-even
|
||||
|
||||
SRC_URI[archive.sha256sum] = "c319b1405501b8c7693e616f48eced41695d2e786148ca5f9e27bc7d98f4aeb1"
|
||||
|
||||
EXTRA_OEMESON = "-Ddocs=false -Dnautilus_extension=false -Dsearch_provider=false"
|
||||
|
||||
FILES:${PN} += "\
|
||||
${systemd_user_unitdir} \
|
||||
${datadir}/dbus-1/services \
|
||||
${datadir}/glib-2.0/schemas \
|
||||
${datadir}/metainfo \
|
||||
"
|
||||
|
||||
FILES:${PN}-doc += "\
|
||||
${datadir}/help \
|
||||
"
|
@ -0,0 +1,40 @@
|
||||
SUMMARY = "GNOME terminal"
|
||||
LICENSE = "GPL-3.0-only & GFDL-1.3"
|
||||
LIC_FILES_CHKSUM = " \
|
||||
file://COPYING;md5=f27defe1e96c2e1ecd4e0c9be8967949 \
|
||||
file://COPYING.GFDL;md5=a22d0be1ce2284b67950a4d1673dd1b0 \
|
||||
"
|
||||
|
||||
GNOMEBASEBUILDCLASS = "meson"
|
||||
|
||||
inherit gnomebase gsettings gnome-help gettext itstool upstream-version-is-even
|
||||
|
||||
DEPENDS = " \
|
||||
glib-2.0-native \
|
||||
intltool-native \
|
||||
yelp-tools-native \
|
||||
docbook-xsl-stylesheets-native libxslt-native \
|
||||
desktop-file-utils-native \
|
||||
gtk+3 \
|
||||
gsettings-desktop-schemas \
|
||||
vte \
|
||||
dconf \
|
||||
libpcre2 \
|
||||
"
|
||||
|
||||
SRC_URI[archive.sha256sum] = "8a9c8e5ef7a3a73b246a947e1190bb08ec98935af860cf0b3aa2fbf4606817a0"
|
||||
SRC_URI += "file://0001-Add-W_EXITCODE-macro-for-non-glibc-systems.patch"
|
||||
SRC_URI += " file://0001-build-Fix-for-newer-meson.patch"
|
||||
|
||||
EXTRA_OEMESON += " \
|
||||
-Dsearch_provider=false \
|
||||
-Dnautilus_extension=false \
|
||||
"
|
||||
|
||||
FILES:${PN} += " \
|
||||
${datadir}/metainfo \
|
||||
${datadir}/dbus-1 \
|
||||
${systemd_user_unitdir} \
|
||||
"
|
||||
|
||||
RRECOMMENDS:${PN} += "vte-prompt gsettings-desktop-schemas"
|
@ -1,76 +0,0 @@
|
||||
SUMMARY = "Multi-platform toolkit for creating GUIs"
|
||||
DESCRIPTION = "GTK+ is a multi-platform toolkit for creating graphical user interfaces. Offering a complete \
|
||||
set of widgets, GTK+ is suitable for projects ranging from small one-off projects to complete application suites."
|
||||
HOMEPAGE = "http://www.gtk.org"
|
||||
BUGTRACKER = "https://bugzilla.gnome.org/"
|
||||
SECTION = "libs"
|
||||
|
||||
DEPENDS = "glib-2.0 cairo pango atk jpeg libpng gdk-pixbuf libepoxy graphene libxcursor libxinerama libxi sassc-native \
|
||||
gdk-pixbuf-native wayland wayland-protocols libxkbcommon virtual/egl virtual/libgles2 wayland-native"
|
||||
|
||||
LICENSE = "LGPL-2.0-only & LGPL-2.0-or-later & LGPL-2.1-or-later"
|
||||
|
||||
|
||||
GNOMEBASEBUILDCLASS = "meson"
|
||||
GIR_MESON_ENABLE_FLAG = "enabled"
|
||||
GIR_MESON_DISABLE_FLAG = "disbled"
|
||||
GTKDOC_MESON_OPTION = "gtk_doc"
|
||||
|
||||
inherit gnomebase gettext pkgconfig gtk-doc update-alternatives gtk-immodules-cache gsettings features_check gobject-introspection
|
||||
|
||||
# versions >= 3.90 are development versions, otherwise like upstream-version-is-even
|
||||
UPSTREAM_CHECK_REGEX = "[^\d\.](?P<pver>3\.([1-8]?[02468])+(\.\d+)+)\.tar"
|
||||
|
||||
ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}"
|
||||
|
||||
# This should be in autotools.bbclass, but until something elses uses it putting
|
||||
# it here avoids rebuilding everything.
|
||||
export PKG_CONFIG_FOR_BUILD = "${STAGING_BINDIR_NATIVE}/pkg-config-native"
|
||||
|
||||
do_configure:prepend() {
|
||||
# Do this because the configure script is running ./libtool directly
|
||||
rm -f libtool
|
||||
ln -s ${TARGET_PREFIX}libtool libtool
|
||||
#delete a file that will get confused with generated one in ${B}
|
||||
rm -f ${S}/gtk/gtktypefuncs.c
|
||||
}
|
||||
|
||||
EXTRA_OEMESON += " \
|
||||
-Ddemos=false \
|
||||
-Dmedia-gstreamer=disabled \
|
||||
"
|
||||
|
||||
do_compile:prepend() {
|
||||
export GIR_EXTRA_LIBS_PATH="${B}/gdk/.libs"
|
||||
}
|
||||
|
||||
LIBV = "4.0.0"
|
||||
|
||||
|
||||
FILES:${PN}:append = " ${datadir}/gtk-4.0/emoji "
|
||||
|
||||
FILES:${PN}-dev += "\
|
||||
${datadir}/gtk-4.0/valgrind \
|
||||
${datadir}/gtk-4.0/gtk4builder.rng \
|
||||
${datadir}/gettext/its \
|
||||
"
|
||||
|
||||
RDEPENDS:${PN}-dev += "${@bb.utils.contains("PACKAGECONFIG", "wayland", "wayland-protocols", "", d)}"
|
||||
|
||||
|
||||
python populate_packages:prepend () {
|
||||
import os.path
|
||||
|
||||
gtk_libdir = d.expand('${libdir}/gtk-4.0/${LIBV}')
|
||||
immodules_root = os.path.join(gtk_libdir, 'immodules')
|
||||
printmodules_root = os.path.join(gtk_libdir, 'printbackends');
|
||||
|
||||
immodules = do_split_packages(d, immodules_root, r'^im-(.*)\.so$', 'gtk4-immodule-%s', 'GTK input module for %s')
|
||||
if immodules:
|
||||
d.setVar("GTKIMMODULES_PACKAGES", " ".join(immodules))
|
||||
|
||||
do_split_packages(d, printmodules_root, r'^libprintbackend-(.*)\.so$', 'gtk4-printbackend-%s', 'GTK printbackend module for %s')
|
||||
|
||||
if (d.getVar('DEBIAN_NAMES')):
|
||||
d.setVar(d.expand('PKG_${PN}'), '${MLPREFIX}libgtk-4.0')
|
||||
}
|
@ -1,47 +0,0 @@
|
||||
From 0ecaa5bab162abf0cb2057d77beeb7b89d5873b4 Mon Sep 17 00:00:00 2001
|
||||
From: Jussi Kukkonen <jussi.kukkonen@intel.com>
|
||||
Date: Tue, 21 Jun 2016 14:53:56 +0300
|
||||
Subject: [PATCH 1/4] Hardcoded libtool
|
||||
|
||||
Upstream-Status: Inappropriate [embedded specific]
|
||||
|
||||
Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
|
||||
Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com>
|
||||
---
|
||||
configure.ac | 6 +++---
|
||||
1 file changed, 3 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index 6628e21..f43ac09 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -617,7 +617,7 @@ AC_MSG_CHECKING([whether to write dependencies into .pc files])
|
||||
case $enable_explicit_deps in
|
||||
auto)
|
||||
export SED
|
||||
- deplibs_check_method=`(./libtool --config; echo 'eval echo \"$deplibs_check_method\"') | sh`
|
||||
+ deplibs_check_method=`(./$host_alias-libtool --config; echo 'eval echo \"$deplibs_check_method\"') | sh`
|
||||
if test "x$deplibs_check_method" != xpass_all || test "x$enable_static" = xyes ; then
|
||||
enable_explicit_deps=yes
|
||||
else
|
||||
@@ -895,7 +895,7 @@ else
|
||||
dnl Now we check to see if our libtool supports shared lib deps
|
||||
dnl (in a rather ugly way even)
|
||||
if $dynworks; then
|
||||
- module_libtool_config="${CONFIG_SHELL-/bin/sh} ./libtool --config"
|
||||
+ module_libtool_config="${CONFIG_SHELL-/bin/sh} ./$host_alias-libtool --config"
|
||||
module_deplibs_check=`$module_libtool_config | \
|
||||
grep '^[[a-z_]]*check[[a-z_]]*_method=[['\''"]]' | \
|
||||
sed 's/.*[['\''"]]\(.*\)[['\''"]]$/\1/'`
|
||||
@@ -1649,7 +1649,7 @@ AC_SUBST(GTK_PRINT_BACKENDS)
|
||||
# We are using gmodule-no-export now, but I'm leaving the stripping
|
||||
# code in place for now, since pango and atk still require gmodule.
|
||||
export SED
|
||||
-export_dynamic=`(./libtool --config; echo eval echo \\$export_dynamic_flag_spec) | sh`
|
||||
+export_dynamic=`(./$host_alias-libtool --config; echo eval echo \\$export_dynamic_flag_spec) | sh`
|
||||
if test -n "$export_dynamic"; then
|
||||
GDK_DEP_LIBS=`echo $GDK_DEP_LIBS | sed -e "s/$export_dynamic//"`
|
||||
GTK_DEP_LIBS=`echo $GTK_DEP_LIBS | sed -e "s/$export_dynamic//"`
|
||||
--
|
||||
2.12.0
|
||||
|
@ -1,57 +0,0 @@
|
||||
From 6575ab0f0e8c1bba033ad1616511e37a2ec995ff Mon Sep 17 00:00:00 2001
|
||||
From: Jussi Kukkonen <jussi.kukkonen@intel.com>
|
||||
Date: Fri, 16 Oct 2015 16:35:16 +0300
|
||||
Subject: [PATCH] Do not try to initialize GL without libGL
|
||||
|
||||
_gdk_x11_screen_update_visuals_for_gl() will end up calling epoxys
|
||||
GLX api which will exit() if libGL.so.1 is not present. We do not
|
||||
want that to happen and we don't want every app to have to set
|
||||
"GDK_GL=disabled" environment variable: so use #ifdef set based on
|
||||
opengl distro feature.
|
||||
|
||||
Upstream is not interested in the fix as it is: Either epoxy should be
|
||||
fixed (to not exit) or GTK+ possibly could do some additional probing
|
||||
before calling epoxy APIs.
|
||||
|
||||
Upstream-Status: Denied
|
||||
Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com>
|
||||
|
||||
---
|
||||
configure.ac | 6 ++++++
|
||||
gdk/x11/gdkvisual-x11.c | 5 +++++
|
||||
2 files changed, 11 insertions(+)
|
||||
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index e9f5583..bd651bb 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -346,6 +346,12 @@ AC_ARG_ENABLE(cloudproviders,
|
||||
[AS_HELP_STRING([--enable-cloudproviders],
|
||||
[enable libcloudproviders integration])],
|
||||
[cloudproviders_set=yes])
|
||||
+AC_ARG_ENABLE(glx,
|
||||
+ [AS_HELP_STRING([--enable-glx],
|
||||
+ [When enabled Gdk will try to initialize GLX])])
|
||||
+AS_IF([test "x$enable_glx" != "xno"], [
|
||||
+ AC_DEFINE([HAVE_GLX], [], [GLX will be available at runtime])
|
||||
+])
|
||||
|
||||
AC_ARG_ENABLE(profiler,
|
||||
[AS_HELP_STRING([--enable-profiler],
|
||||
diff --git a/gdk/x11/gdkvisual-x11.c b/gdk/x11/gdkvisual-x11.c
|
||||
index 81479d8..3c8c5c0 100644
|
||||
--- a/gdk/x11/gdkvisual-x11.c
|
||||
+++ b/gdk/x11/gdkvisual-x11.c
|
||||
@@ -306,7 +306,12 @@ _gdk_x11_screen_init_visuals (GdkScreen *screen)
|
||||
/* If GL is available we want to pick better default/rgba visuals,
|
||||
as we care about glx details such as alpha/depth/stencil depth,
|
||||
stereo and double buffering */
|
||||
+ /* update_visuals_for_gl() will end up calling epoxy GLX api which
|
||||
+ will exit if libgl is not there: so only do this if we know GL
|
||||
+ is available */
|
||||
+#ifdef HAVE_GLX
|
||||
_gdk_x11_screen_update_visuals_for_gl (screen);
|
||||
+#endif
|
||||
}
|
||||
|
||||
gint
|
@ -1,872 +0,0 @@
|
||||
From f83fcf1991afad6d9c15546b2ccd775dad4e314c Mon Sep 17 00:00:00 2001
|
||||
From: Jussi Kukkonen <jussi.kukkonen@intel.com>
|
||||
Date: Tue, 21 Jun 2016 15:11:39 +0300
|
||||
Subject: [PATCH] Add --disable-opengl configure option
|
||||
|
||||
--disable-opengl will remove the dependency on libepoxy and on the
|
||||
OpenGL APIs. This is useful for those who want to keep using gtk+3
|
||||
without the "opengl" distro feature.
|
||||
|
||||
GtkGLArea is still part of the API (it just doesn't work) even when
|
||||
OpenGL is disabled. GdkX11GLContext was removed from the Gtk API
|
||||
completely: that object exposes GL API elements so it had to be at
|
||||
the very least modified.
|
||||
|
||||
The patch is _not_ great from a maintenance point of view and
|
||||
modifying the library API is also a fairly nasty thing to do.
|
||||
Next long term release (4.0) will require alternative solutions
|
||||
as it actually will depend on OpenGL.
|
||||
|
||||
Upstream-Status: Inappropriate [Evil eye expected from upstream]
|
||||
Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com>
|
||||
|
||||
---
|
||||
configure.ac | 13 ++++-
|
||||
demos/gtk-demo/glarea.c | 14 ++++++
|
||||
docs/tools/Makefile.am | 9 +++-
|
||||
docs/tools/widgets.c | 4 +-
|
||||
gdk/Makefile.am | 8 ++-
|
||||
gdk/gdkdisplay.c | 4 +-
|
||||
gdk/gdkgl.c | 10 ++++
|
||||
gdk/gdkglcontext.c | 6 +++
|
||||
gdk/gdkwindow.c | 13 +++++
|
||||
gdk/x11/Makefile.am | 30 +++++++++--
|
||||
gdk/x11/gdkdisplay-x11.c | 6 ++-
|
||||
gdk/x11/gdkscreen-x11.c | 5 ++
|
||||
gdk/x11/gdkwindow-x11.c | 4 ++
|
||||
gdk/x11/gdkx-autocleanups.h | 2 +
|
||||
gdk/x11/{gdkx.h => gdkx-with-gl-context.h} | 1 -
|
||||
gdk/x11/gdkx-without-gl-context.h | 58 ++++++++++++++++++++++
|
||||
gtk/Makefile.am | 2 +-
|
||||
gtk/gtkglarea.c | 20 +++++++-
|
||||
gtk/inspector/general.c | 6 +++
|
||||
tests/Makefile.am | 10 ++--
|
||||
testsuite/gtk/objects-finalize.c | 2 +
|
||||
21 files changed, 208 insertions(+), 19 deletions(-)
|
||||
rename gdk/x11/{gdkx.h => gdkx-with-gl-context.h} (98%)
|
||||
create mode 100644 gdk/x11/gdkx-without-gl-context.h
|
||||
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index bd651bb..b4c061f 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -346,6 +346,15 @@ AC_ARG_ENABLE(cloudproviders,
|
||||
[AS_HELP_STRING([--enable-cloudproviders],
|
||||
[enable libcloudproviders integration])],
|
||||
[cloudproviders_set=yes])
|
||||
+AC_ARG_ENABLE(opengl,
|
||||
+ [AS_HELP_STRING([--enable-opengl],
|
||||
+ [When enabled, Gtk+ will use libepoxy and exposes GtkGLArea widget ])])
|
||||
+AS_IF([test "x$enable_opengl" != "xno"], [
|
||||
+ AC_DEFINE([HAVE_OPENGL], [1], [libepoxy and opengl APIs are available at buildtime])
|
||||
+ EPOXY_PACKAGES="epoxy >= epoxy_required_version"
|
||||
+])
|
||||
+AM_CONDITIONAL([HAVE_OPENGL],[test "x$enable_opengl" != "xno"])
|
||||
+
|
||||
AC_ARG_ENABLE(glx,
|
||||
[AS_HELP_STRING([--enable-glx],
|
||||
[When enabled Gdk will try to initialize GLX])])
|
||||
@@ -1345,7 +1354,7 @@ CFLAGS="$saved_cflags"
|
||||
LDFLAGS="$saved_ldflags"
|
||||
|
||||
GDK_PACKAGES="$PANGO_PACKAGES gdk-pixbuf-2.0 >= gdk_pixbuf_required_version cairo >= cairo_required_version cairo-gobject >= cairo_required_version"
|
||||
-GDK_PRIVATE_PACKAGES="$GDK_GIO_PACKAGE $X_PACKAGES $WAYLAND_PACKAGES $cairo_backends epoxy >= epoxy_required_version $CLOUDPROVIDER_PACKAGES $PROFILER_PACKAGES fribidi >= fribidi_required_version"
|
||||
+GDK_PRIVATE_PACKAGES="$GDK_GIO_PACKAGE $X_PACKAGES $WAYLAND_PACKAGES $cairo_backends $EPOXY_PACKAGES $CLOUDPROVIDER_PACKAGES $PROFILER_PACKAGES fribidi >= fribidi_required_version"
|
||||
|
||||
PKG_CHECK_MODULES(GDK_DEP, $GDK_PACKAGES $GDK_PRIVATE_PACKAGES)
|
||||
GDK_DEP_LIBS="$GDK_EXTRA_LIBS $GDK_DEP_LIBS $MATH_LIB"
|
||||
@@ -1379,7 +1388,7 @@ fi
|
||||
PKG_CHECK_MODULES(ATK, $ATK_PACKAGES)
|
||||
|
||||
GTK_PACKAGES="atk >= atk_required_version cairo >= cairo_required_version cairo-gobject >= cairo_required_version gdk-pixbuf-2.0 >= gdk_pixbuf_required_version gio-2.0 >= glib_required_version"
|
||||
-GTK_PRIVATE_PACKAGES="$ATK_PACKAGES $WAYLAND_PACKAGES epoxy >= epoxy_required_version fribidi >= fribidi_required_version"
|
||||
+GTK_PRIVATE_PACKAGES="$ATK_PACKAGES $WAYLAND_PACKAGES $EPOXY_PACKAGES fribidi >= fribidi_required_version"
|
||||
if test "x$enable_x11_backend" = xyes -o "x$enable_wayland_backend" = xyes; then
|
||||
GTK_PRIVATE_PACKAGES="$GTK_PRIVATE_PACKAGES pangoft2"
|
||||
fi
|
||||
diff --git a/demos/gtk-demo/glarea.c b/demos/gtk-demo/glarea.c
|
||||
index b51e4ae..82409c7 100644
|
||||
--- a/demos/gtk-demo/glarea.c
|
||||
+++ b/demos/gtk-demo/glarea.c
|
||||
@@ -3,9 +3,12 @@
|
||||
* GtkGLArea is a widget that allows custom drawing using OpenGL calls.
|
||||
*/
|
||||
|
||||
+#include "config.h"
|
||||
#include <math.h>
|
||||
#include <gtk/gtk.h>
|
||||
+#if HAVE_OPENGL
|
||||
#include <epoxy/gl.h>
|
||||
+#endif
|
||||
|
||||
static GtkWidget *demo_window = NULL;
|
||||
|
||||
@@ -23,6 +26,8 @@ enum {
|
||||
/* Rotation angles on each axis */
|
||||
static float rotation_angles[N_AXIS] = { 0.0 };
|
||||
|
||||
+#ifdef HAVE_OPENGL
|
||||
+
|
||||
/* The object we are drawing */
|
||||
static const GLfloat vertex_data[] = {
|
||||
0.f, 0.5f, 0.f, 1.f,
|
||||
@@ -215,6 +220,7 @@ compute_mvp (float *res,
|
||||
static GLuint position_buffer;
|
||||
static GLuint program;
|
||||
static GLuint mvp_location;
|
||||
+#endif
|
||||
|
||||
/* We need to set up our state when we realize the GtkGLArea widget */
|
||||
static void
|
||||
@@ -241,8 +247,10 @@ realize (GtkWidget *widget)
|
||||
fragment_path = "/glarea/glarea-gl.fs.glsl";
|
||||
}
|
||||
|
||||
+#ifdef HAVE_OPENGL
|
||||
init_buffers (&position_buffer, NULL);
|
||||
init_shaders (vertex_path, fragment_path, &program, &mvp_location);
|
||||
+#endif
|
||||
}
|
||||
|
||||
/* We should tear down the state when unrealizing */
|
||||
@@ -254,10 +262,13 @@ unrealize (GtkWidget *widget)
|
||||
if (gtk_gl_area_get_error (GTK_GL_AREA (widget)) != NULL)
|
||||
return;
|
||||
|
||||
+#ifdef HAVE_OPENGL
|
||||
glDeleteBuffers (1, &position_buffer);
|
||||
glDeleteProgram (program);
|
||||
+#endif
|
||||
}
|
||||
|
||||
+#ifdef HAVE_OPENGL
|
||||
static void
|
||||
draw_triangle (void)
|
||||
{
|
||||
@@ -290,6 +301,7 @@ draw_triangle (void)
|
||||
glBindBuffer (GL_ARRAY_BUFFER, 0);
|
||||
glUseProgram (0);
|
||||
}
|
||||
+#endif
|
||||
|
||||
static gboolean
|
||||
render (GtkGLArea *area,
|
||||
@@ -298,6 +310,7 @@ render (GtkGLArea *area,
|
||||
if (gtk_gl_area_get_error (area) != NULL)
|
||||
return FALSE;
|
||||
|
||||
+#ifdef HAVE_OPENGL
|
||||
/* Clear the viewport */
|
||||
glClearColor (0.5, 0.5, 0.5, 1.0);
|
||||
glClear (GL_COLOR_BUFFER_BIT);
|
||||
@@ -307,6 +320,7 @@ render (GtkGLArea *area,
|
||||
|
||||
/* Flush the contents of the pipeline */
|
||||
glFlush ();
|
||||
+#endif
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
diff --git a/docs/tools/Makefile.am b/docs/tools/Makefile.am
|
||||
index bec43e3..189e8fc 100644
|
||||
--- a/docs/tools/Makefile.am
|
||||
+++ b/docs/tools/Makefile.am
|
||||
@@ -9,13 +9,18 @@ AM_CPPFLAGS = \
|
||||
$(GTK_DEBUG_FLAGS) \
|
||||
$(GTK_DEP_CFLAGS)
|
||||
|
||||
+if HAVE_OPENGL
|
||||
+GEARS_LDADD = $(top_builddir)/tests/gtkgears.o
|
||||
+endif
|
||||
+
|
||||
DEPS = \
|
||||
- $(top_builddir)/gtk/libgtk-3.la
|
||||
+ $(top_builddir)/gtk/libgtk-3.la \
|
||||
+ $(GEARS_LDADD)
|
||||
|
||||
LDADDS = \
|
||||
$(top_builddir)/gtk/libgtk-3.la \
|
||||
$(top_builddir)/gdk/libgdk-3.la \
|
||||
- $(top_builddir)/tests/gtkgears.o \
|
||||
+ $(GEARS_LDADD) \
|
||||
$(GTK_DEP_LIBS) \
|
||||
$(GDK_DEP_LIBS) \
|
||||
-lm
|
||||
diff --git a/docs/tools/widgets.c b/docs/tools/widgets.c
|
||||
index 932daf1..54239d6 100644
|
||||
--- a/docs/tools/widgets.c
|
||||
+++ b/docs/tools/widgets.c
|
||||
@@ -1526,9 +1526,11 @@ create_gl_area (void)
|
||||
widget = gtk_frame_new (NULL);
|
||||
gtk_frame_set_shadow_type (GTK_FRAME (widget), GTK_SHADOW_IN);
|
||||
|
||||
+#ifdef HAVE_OPENGL
|
||||
gears = gtk_gears_new ();
|
||||
gtk_container_add (GTK_CONTAINER (widget), gears);
|
||||
-
|
||||
+#endif
|
||||
+
|
||||
info = new_widget_info ("glarea", widget, MEDIUM);
|
||||
|
||||
return info;
|
||||
diff --git a/gdk/Makefile.am b/gdk/Makefile.am
|
||||
index 479d6a1..7edbee8 100644
|
||||
--- a/gdk/Makefile.am
|
||||
+++ b/gdk/Makefile.am
|
||||
@@ -274,7 +274,6 @@ x11_introspection_files = \
|
||||
x11/gdkeventsource.c \
|
||||
x11/gdkeventtranslator.c \
|
||||
x11/gdkgeometry-x11.c \
|
||||
- x11/gdkglcontext-x11.c \
|
||||
x11/gdkkeys-x11.c \
|
||||
x11/gdkmain-x11.c \
|
||||
x11/gdkmonitor-x11.c \
|
||||
@@ -300,7 +299,6 @@ x11_introspection_files = \
|
||||
x11/gdkx11display.h \
|
||||
x11/gdkx11displaymanager.h \
|
||||
x11/gdkx11dnd.h \
|
||||
- x11/gdkx11glcontext.h \
|
||||
x11/gdkx11keys.h \
|
||||
x11/gdkx11monitor.h \
|
||||
x11/gdkx11property.h \
|
||||
@@ -310,6 +308,12 @@ x11_introspection_files = \
|
||||
x11/gdkx11visual.h \
|
||||
x11/gdkx11window.h
|
||||
|
||||
+if HAVE_OPENGL
|
||||
+x11_introspection_files += \
|
||||
+ x11/gdkglcontext-x11.c \
|
||||
+ x11/gdkx11glcontext.h
|
||||
+endif
|
||||
+
|
||||
GdkX11-3.0.gir: libgdk-3.la Gdk-3.0.gir Makefile
|
||||
GdkX11_3_0_gir_SCANNERFLAGS = \
|
||||
--identifier-prefix=Gdk \
|
||||
diff --git a/gdk/gdkdisplay.c b/gdk/gdkdisplay.c
|
||||
index 240c99f..9eb49bf 100644
|
||||
--- a/gdk/gdkdisplay.c
|
||||
+++ b/gdk/gdkdisplay.c
|
||||
@@ -2419,7 +2419,9 @@ gboolean
|
||||
gdk_display_make_gl_context_current (GdkDisplay *display,
|
||||
GdkGLContext *context)
|
||||
{
|
||||
- return GDK_DISPLAY_GET_CLASS (display)->make_gl_context_current (display, context);
|
||||
+ if (GDK_DISPLAY_GET_CLASS (display)->make_gl_context_current)
|
||||
+ return GDK_DISPLAY_GET_CLASS (display)->make_gl_context_current (display, context);
|
||||
+ return FALSE;
|
||||
}
|
||||
|
||||
GdkRenderingMode
|
||||
diff --git a/gdk/gdkgl.c b/gdk/gdkgl.c
|
||||
index 933e204..1767508 100644
|
||||
--- a/gdk/gdkgl.c
|
||||
+++ b/gdk/gdkgl.c
|
||||
@@ -26,7 +26,9 @@
|
||||
# include "win32/gdkwin32.h"
|
||||
#endif
|
||||
|
||||
+#ifdef HAVE_OPENGL
|
||||
#include <epoxy/gl.h>
|
||||
+#endif
|
||||
#include <math.h>
|
||||
#include <string.h>
|
||||
|
||||
@@ -40,6 +42,7 @@ gdk_cairo_surface_mark_as_direct (cairo_surface_t *surface,
|
||||
g_object_ref (window), g_object_unref);
|
||||
}
|
||||
|
||||
+#ifdef HAVE_OPENGL
|
||||
static const char *
|
||||
get_vertex_type_name (int type)
|
||||
{
|
||||
@@ -212,6 +215,7 @@ use_texture_rect_program (GdkGLContextPaintData *paint_data)
|
||||
glUseProgram (paint_data->current_program->program);
|
||||
}
|
||||
}
|
||||
+#endif
|
||||
|
||||
void
|
||||
gdk_gl_texture_quads (GdkGLContext *paint_context,
|
||||
@@ -220,6 +224,7 @@ gdk_gl_texture_quads (GdkGLContext *paint_context,
|
||||
GdkTexturedQuad *quads,
|
||||
gboolean flip_colors)
|
||||
{
|
||||
+#ifdef HAVE_OPENGL
|
||||
GdkGLContextPaintData *paint_data = gdk_gl_context_get_paint_data (paint_context);
|
||||
GdkGLContextProgram *program;
|
||||
GdkWindow *window = gdk_gl_context_get_window (paint_context);
|
||||
@@ -293,6 +298,7 @@ gdk_gl_texture_quads (GdkGLContext *paint_context,
|
||||
|
||||
glDisableVertexAttribArray (program->position_location);
|
||||
glDisableVertexAttribArray (program->uv_location);
|
||||
+#endif
|
||||
}
|
||||
|
||||
/* x,y,width,height describes a rectangle in the gl render buffer
|
||||
@@ -341,6 +347,7 @@ gdk_cairo_draw_from_gl (cairo_t *cr,
|
||||
int width,
|
||||
int height)
|
||||
{
|
||||
+#ifdef HAVE_OPENGL
|
||||
GdkGLContext *paint_context;
|
||||
cairo_surface_t *image;
|
||||
cairo_matrix_t matrix;
|
||||
@@ -718,6 +725,7 @@ out:
|
||||
if (clip_region)
|
||||
cairo_region_destroy (clip_region);
|
||||
|
||||
+#endif
|
||||
}
|
||||
|
||||
/* This is always called with the paint context current */
|
||||
@@ -725,6 +733,7 @@ void
|
||||
gdk_gl_texture_from_surface (cairo_surface_t *surface,
|
||||
cairo_region_t *region)
|
||||
{
|
||||
+#ifdef HAVE_OPENGL
|
||||
GdkGLContext *paint_context;
|
||||
cairo_surface_t *image;
|
||||
double device_x_offset, device_y_offset;
|
||||
@@ -825,4 +834,5 @@ gdk_gl_texture_from_surface (cairo_surface_t *surface,
|
||||
|
||||
glDisable (GL_SCISSOR_TEST);
|
||||
glDeleteTextures (1, &texture_id);
|
||||
+#endif
|
||||
}
|
||||
diff --git a/gdk/gdkglcontext.c b/gdk/gdkglcontext.c
|
||||
index dfbed63..556f0a3 100644
|
||||
--- a/gdk/gdkglcontext.c
|
||||
+++ b/gdk/gdkglcontext.c
|
||||
@@ -85,7 +85,9 @@
|
||||
#include "gdkintl.h"
|
||||
#include "gdk-private.h"
|
||||
|
||||
+#ifdef HAVE_OPENGL
|
||||
#include <epoxy/gl.h>
|
||||
+#endif
|
||||
|
||||
typedef struct {
|
||||
GdkDisplay *display;
|
||||
@@ -243,6 +245,7 @@ gdk_gl_context_upload_texture (GdkGLContext *context,
|
||||
int height,
|
||||
guint texture_target)
|
||||
{
|
||||
+#ifdef HAVE_OPENGL
|
||||
GdkGLContextPrivate *priv = gdk_gl_context_get_instance_private (context);
|
||||
|
||||
g_return_if_fail (GDK_IS_GL_CONTEXT (context));
|
||||
@@ -286,6 +289,7 @@ gdk_gl_context_upload_texture (GdkGLContext *context,
|
||||
glTexSubImage2D (texture_target, 0, 0, i, width, 1, GL_BGRA, GL_UNSIGNED_INT_8_8_8_8_REV, (unsigned char*) data + (i * stride));
|
||||
}
|
||||
}
|
||||
+#endif
|
||||
}
|
||||
|
||||
static gboolean
|
||||
@@ -774,6 +778,7 @@ gdk_gl_context_realize (GdkGLContext *context,
|
||||
static void
|
||||
gdk_gl_context_check_extensions (GdkGLContext *context)
|
||||
{
|
||||
+#ifdef HAVE_OPENGL
|
||||
GdkGLContextPrivate *priv = gdk_gl_context_get_instance_private (context);
|
||||
gboolean has_npot, has_texture_rectangle;
|
||||
|
||||
@@ -853,6 +858,7 @@ gdk_gl_context_check_extensions (GdkGLContext *context)
|
||||
priv->use_texture_rectangle ? "yes" : "no"));
|
||||
|
||||
priv->extensions_checked = TRUE;
|
||||
+#endif
|
||||
}
|
||||
|
||||
/**
|
||||
diff --git a/gdk/gdkwindow.c b/gdk/gdkwindow.c
|
||||
index 6ae0f86..4e48a2a 100644
|
||||
--- a/gdk/gdkwindow.c
|
||||
+++ b/gdk/gdkwindow.c
|
||||
@@ -45,7 +45,9 @@
|
||||
|
||||
#include <math.h>
|
||||
|
||||
+#ifdef HAVE_OPENGL
|
||||
#include <epoxy/gl.h>
|
||||
+#endif
|
||||
|
||||
/* for the use of round() */
|
||||
#include "fallback-c89.c"
|
||||
@@ -2844,6 +2846,13 @@ gdk_window_get_paint_gl_context (GdkWindow *window,
|
||||
{
|
||||
GError *internal_error = NULL;
|
||||
|
||||
+#ifndef HAVE_OPENGL
|
||||
+ g_set_error_literal (error, GDK_GL_ERROR,
|
||||
+ GDK_GL_ERROR_NOT_AVAILABLE,
|
||||
+ _("GL support disabled with --disable-opengl"));
|
||||
+ return NULL;
|
||||
+#endif
|
||||
+
|
||||
if (_gdk_gl_flags & GDK_GL_DISABLE)
|
||||
{
|
||||
g_set_error_literal (error, GDK_GL_ERROR,
|
||||
@@ -2979,6 +2988,7 @@ gdk_window_begin_paint_internal (GdkWindow *window,
|
||||
}
|
||||
else
|
||||
{
|
||||
+#ifdef HAVE_OPENGL
|
||||
gdk_gl_context_make_current (context);
|
||||
/* With gl we always need a surface to combine the gl
|
||||
drawing with the native drawing. */
|
||||
@@ -2993,6 +3003,7 @@ gdk_window_begin_paint_internal (GdkWindow *window,
|
||||
glBlendFunc (GL_ONE, GL_ONE_MINUS_SRC_ALPHA);
|
||||
|
||||
glViewport (0, 0, ww, wh);
|
||||
+#endif
|
||||
}
|
||||
}
|
||||
|
||||
@@ -3056,6 +3067,7 @@ gdk_window_end_paint_internal (GdkWindow *window)
|
||||
|
||||
gdk_gl_context_make_current (window->gl_paint_context);
|
||||
|
||||
+#ifdef HAVE_OPENGL
|
||||
if (!cairo_region_is_empty (opaque_region))
|
||||
gdk_gl_texture_from_surface (window->current_paint.surface,
|
||||
opaque_region);
|
||||
@@ -3066,6 +3078,7 @@ gdk_window_end_paint_internal (GdkWindow *window)
|
||||
window->current_paint.need_blend_region);
|
||||
glDisable(GL_BLEND);
|
||||
}
|
||||
+#endif
|
||||
|
||||
cairo_region_destroy (opaque_region);
|
||||
|
||||
diff --git a/gdk/x11/Makefile.am b/gdk/x11/Makefile.am
|
||||
index 32b1f24..6352313 100644
|
||||
--- a/gdk/x11/Makefile.am
|
||||
+++ b/gdk/x11/Makefile.am
|
||||
@@ -40,8 +40,6 @@ libgdk_x11_la_SOURCES = \
|
||||
gdkeventtranslator.c \
|
||||
gdkeventtranslator.h \
|
||||
gdkgeometry-x11.c \
|
||||
- gdkglcontext-x11.c \
|
||||
- gdkglcontext-x11.h \
|
||||
gdkkeys-x11.c \
|
||||
gdkmain-x11.c \
|
||||
gdkmonitor-x11.c \
|
||||
@@ -56,14 +54,32 @@ libgdk_x11_la_SOURCES = \
|
||||
gdkwindow-x11.h \
|
||||
gdkxftdefaults.c \
|
||||
gdkxid.c \
|
||||
- gdkx.h \
|
||||
gdkprivate-x11.h \
|
||||
xsettings-client.h \
|
||||
xsettings-client.c
|
||||
|
||||
+if HAVE_OPENGL
|
||||
+libgdk_x11_la_SOURCES += \
|
||||
+ gdkglcontext-x11.c \
|
||||
+ gdkglcontext-x11.h
|
||||
+endif
|
||||
+
|
||||
libgdkinclude_HEADERS = \
|
||||
gdkx.h
|
||||
|
||||
+if HAVE_OPENGL
|
||||
+GDKX_HEADER = gdkx-with-gl-context.h
|
||||
+else
|
||||
+GDKX_HEADER = gdkx-without-gl-context.h
|
||||
+endif
|
||||
+
|
||||
+BUILT_SOURCES = gdkx.h
|
||||
+
|
||||
+.PHONY: gdkx.h
|
||||
+gdkx.h:
|
||||
+ $(AM_V_GEN) cd $(srcdir) \
|
||||
+ && (cmp -s $(GDKX_HEADER) gdkx.h || cp $(GDKX_HEADER) gdkx.h )
|
||||
+
|
||||
libgdkx11include_HEADERS = \
|
||||
gdkx-autocleanups.h \
|
||||
gdkx11applaunchcontext.h \
|
||||
@@ -77,7 +93,6 @@ libgdkx11include_HEADERS = \
|
||||
gdkx11display.h \
|
||||
gdkx11displaymanager.h \
|
||||
gdkx11dnd.h \
|
||||
- gdkx11glcontext.h \
|
||||
gdkx11keys.h \
|
||||
gdkx11monitor.h \
|
||||
gdkx11property.h \
|
||||
@@ -87,10 +102,17 @@ libgdkx11include_HEADERS = \
|
||||
gdkx11visual.h \
|
||||
gdkx11window.h
|
||||
|
||||
+if HAVE_OPENGL
|
||||
+libgdkx11include_HEADERS += gdkx11glcontext.h
|
||||
+endif
|
||||
+
|
||||
# We need to include all these C files here since the conditionals
|
||||
# don't seem to be correctly expanded for the dist files.
|
||||
EXTRA_DIST += \
|
||||
+ gdkx.h \
|
||||
gdksettings.c \
|
||||
meson.build
|
||||
|
||||
+MAINTAINERCLEANFILES = gdkx.h
|
||||
+
|
||||
-include $(top_srcdir)/git.mk
|
||||
diff --git a/gdk/x11/gdkdisplay-x11.c b/gdk/x11/gdkdisplay-x11.c
|
||||
index 817944e..e7a2947 100644
|
||||
--- a/gdk/x11/gdkdisplay-x11.c
|
||||
+++ b/gdk/x11/gdkdisplay-x11.c
|
||||
@@ -37,7 +37,9 @@
|
||||
#include "gdkdisplay-x11.h"
|
||||
#include "gdkprivate-x11.h"
|
||||
#include "gdkscreen-x11.h"
|
||||
+#ifdef HAVE_OPENGL
|
||||
#include "gdkglcontext-x11.h"
|
||||
+#endif
|
||||
#include "gdk-private.h"
|
||||
#include "gdkprofilerprivate.h"
|
||||
|
||||
@@ -3188,7 +3190,9 @@ gdk_x11_display_class_init (GdkX11DisplayClass * class)
|
||||
display_class->text_property_to_utf8_list = _gdk_x11_display_text_property_to_utf8_list;
|
||||
display_class->utf8_to_string_target = _gdk_x11_display_utf8_to_string_target;
|
||||
|
||||
- display_class->make_gl_context_current = gdk_x11_display_make_gl_context_current;
|
||||
+#ifdef HAVE_OPENGL
|
||||
+ display_class->make_gl_context_current = gdk_x11_display_make_gl_context_current;
|
||||
+#endif
|
||||
|
||||
display_class->get_default_seat = gdk_x11_display_get_default_seat;
|
||||
|
||||
diff --git a/gdk/x11/gdkscreen-x11.c b/gdk/x11/gdkscreen-x11.c
|
||||
index 8939ae9..931bff9 100644
|
||||
--- a/gdk/x11/gdkscreen-x11.c
|
||||
+++ b/gdk/x11/gdkscreen-x11.c
|
||||
@@ -1723,3 +1723,8 @@ gdk_x11_screen_get_current_desktop (GdkScreen *screen)
|
||||
{
|
||||
return get_netwm_cardinal_property (screen, "_NET_CURRENT_DESKTOP");
|
||||
}
|
||||
+
|
||||
+#ifndef HAVE_OPENGL
|
||||
+/* Function from in gdk/x11/gdkglcontext-x11.c */
|
||||
+void _gdk_x11_screen_update_visuals_for_gl (GdkScreen *screen) {}
|
||||
+#endif
|
||||
diff --git a/gdk/x11/gdkwindow-x11.c b/gdk/x11/gdkwindow-x11.c
|
||||
index 1fe7b90..d23a347 100644
|
||||
--- a/gdk/x11/gdkwindow-x11.c
|
||||
+++ b/gdk/x11/gdkwindow-x11.c
|
||||
@@ -36,7 +36,9 @@
|
||||
#include "gdkasync.h"
|
||||
#include "gdkeventsource.h"
|
||||
#include "gdkdisplay-x11.h"
|
||||
+#ifdef HAVE_OPENGL
|
||||
#include "gdkglcontext-x11.h"
|
||||
+#endif
|
||||
#include "gdkprivate-x11.h"
|
||||
#include "gdk-private.h"
|
||||
|
||||
@@ -5861,7 +5863,9 @@ gdk_window_impl_x11_class_init (GdkWindowImplX11Class *klass)
|
||||
impl_class->set_opaque_region = gdk_x11_window_set_opaque_region;
|
||||
impl_class->set_shadow_width = gdk_x11_window_set_shadow_width;
|
||||
impl_class->show_window_menu = gdk_x11_window_show_window_menu;
|
||||
+#ifdef HAVE_OPENGL
|
||||
impl_class->create_gl_context = gdk_x11_window_create_gl_context;
|
||||
impl_class->invalidate_for_new_frame = gdk_x11_window_invalidate_for_new_frame;
|
||||
+#endif
|
||||
impl_class->get_unscaled_size = gdk_x11_window_get_unscaled_size;
|
||||
}
|
||||
diff --git a/gdk/x11/gdkx-autocleanups.h b/gdk/x11/gdkx-autocleanups.h
|
||||
index edb0ea7..a317d61 100644
|
||||
--- a/gdk/x11/gdkx-autocleanups.h
|
||||
+++ b/gdk/x11/gdkx-autocleanups.h
|
||||
@@ -30,7 +30,9 @@ G_DEFINE_AUTOPTR_CLEANUP_FUNC(GdkX11DeviceXI2, g_object_unref)
|
||||
G_DEFINE_AUTOPTR_CLEANUP_FUNC(GdkX11Display, g_object_unref)
|
||||
G_DEFINE_AUTOPTR_CLEANUP_FUNC(GdkX11DisplayManager, g_object_unref)
|
||||
G_DEFINE_AUTOPTR_CLEANUP_FUNC(GdkX11DragContext, g_object_unref)
|
||||
+#ifdef HAVE_OPENGL
|
||||
G_DEFINE_AUTOPTR_CLEANUP_FUNC(GdkX11GLContext, g_object_unref)
|
||||
+#endif
|
||||
G_DEFINE_AUTOPTR_CLEANUP_FUNC(GdkX11Keymap, g_object_unref)
|
||||
G_DEFINE_AUTOPTR_CLEANUP_FUNC(GdkX11Screen, g_object_unref)
|
||||
G_DEFINE_AUTOPTR_CLEANUP_FUNC(GdkX11Visual, g_object_unref)
|
||||
diff --git a/gdk/x11/gdkx.h b/gdk/x11/gdkx-with-gl-context.h
|
||||
similarity index 98%
|
||||
rename from gdk/x11/gdkx.h
|
||||
rename to gdk/x11/gdkx-with-gl-context.h
|
||||
index 1f64bcc..ae05fa6 100644
|
||||
--- a/gdk/x11/gdkx.h
|
||||
+++ b/gdk/x11/gdkx-with-gl-context.h
|
||||
@@ -45,7 +45,6 @@
|
||||
#include <gdk/x11/gdkx11dnd.h>
|
||||
#include <gdk/x11/gdkx11glcontext.h>
|
||||
#include <gdk/x11/gdkx11keys.h>
|
||||
-#include <gdk/x11/gdkx11monitor.h>
|
||||
#include <gdk/x11/gdkx11property.h>
|
||||
#include <gdk/x11/gdkx11screen.h>
|
||||
#include <gdk/x11/gdkx11selection.h>
|
||||
diff --git a/gdk/x11/gdkx-without-gl-context.h b/gdk/x11/gdkx-without-gl-context.h
|
||||
new file mode 100644
|
||||
index 0000000..c9e2617
|
||||
--- /dev/null
|
||||
+++ b/gdk/x11/gdkx-without-gl-context.h
|
||||
@@ -0,0 +1,58 @@
|
||||
+/* GDK - The GIMP Drawing Kit
|
||||
+ * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald
|
||||
+ *
|
||||
+ * This library is free software; you can redistribute it and/or
|
||||
+ * modify it under the terms of the GNU Lesser General Public
|
||||
+ * License as published by the Free Software Foundation; either
|
||||
+ * version 2 of the License, or (at your option) any later version.
|
||||
+ *
|
||||
+ * This library is distributed in the hope that it will be useful,
|
||||
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
+ * Lesser General Public License for more details.
|
||||
+ *
|
||||
+ * You should have received a copy of the GNU Lesser General Public
|
||||
+ * License along with this library. If not, see <http://www.gnu.org/licenses/>.
|
||||
+ */
|
||||
+
|
||||
+/*
|
||||
+ * Modified by the GTK+ Team and others 1997-2000. See the AUTHORS
|
||||
+ * file for a list of people on the GTK+ Team. See the ChangeLog
|
||||
+ * files for a list of changes. These files are distributed with
|
||||
+ * GTK+ at ftp://ftp.gtk.org/pub/gtk/.
|
||||
+ */
|
||||
+
|
||||
+#ifndef __GDK_X_H__
|
||||
+#define __GDK_X_H__
|
||||
+
|
||||
+#include <gdk/gdk.h>
|
||||
+
|
||||
+#include <X11/Xlib.h>
|
||||
+#include <X11/Xutil.h>
|
||||
+
|
||||
+#define __GDKX_H_INSIDE__
|
||||
+
|
||||
+#include <gdk/x11/gdkx11applaunchcontext.h>
|
||||
+#include <gdk/x11/gdkx11cursor.h>
|
||||
+#include <gdk/x11/gdkx11device.h>
|
||||
+#include <gdk/x11/gdkx11device-core.h>
|
||||
+#include <gdk/x11/gdkx11device-xi2.h>
|
||||
+#include <gdk/x11/gdkx11devicemanager.h>
|
||||
+#include <gdk/x11/gdkx11devicemanager-core.h>
|
||||
+#include <gdk/x11/gdkx11devicemanager-xi2.h>
|
||||
+#include <gdk/x11/gdkx11display.h>
|
||||
+#include <gdk/x11/gdkx11displaymanager.h>
|
||||
+#include <gdk/x11/gdkx11dnd.h>
|
||||
+#include <gdk/x11/gdkx11keys.h>
|
||||
+#include <gdk/x11/gdkx11property.h>
|
||||
+#include <gdk/x11/gdkx11screen.h>
|
||||
+#include <gdk/x11/gdkx11selection.h>
|
||||
+#include <gdk/x11/gdkx11utils.h>
|
||||
+#include <gdk/x11/gdkx11visual.h>
|
||||
+#include <gdk/x11/gdkx11window.h>
|
||||
+
|
||||
+#include <gdk/x11/gdkx-autocleanups.h>
|
||||
+
|
||||
+#undef __GDKX_H_INSIDE__
|
||||
+
|
||||
+#endif /* __GDK_X_H__ */
|
||||
diff --git a/gtk/Makefile.am b/gtk/Makefile.am
|
||||
index eaca473..99352d1 100644
|
||||
--- a/gtk/Makefile.am
|
||||
+++ b/gtk/Makefile.am
|
||||
@@ -1449,7 +1449,7 @@ gtktypefuncs.inc: stamp-gtktypebuiltins.h stamp-gtkprivatetypebuiltins.h $(top_s
|
||||
${CPP} $(DEFS) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) xgen-gtfsrc.c | \
|
||||
$(GREP) -o '\bg[td]k_[a-zA-Z0-9_]*_get_type\b' | \
|
||||
sort | uniq | \
|
||||
- $(SED) '{ s/^/*tp++ = /; s/$$/();/; s/^.*\(gdk_x11\|gtk_plug_\|gtk_socket_\).*$$/#ifdef GDK_WINDOWING_X11\n&\n#endif/; }' >> xgen-gtf \
|
||||
+ $(SED) '{ s/^/*tp++ = /; s/$$/();/; s/^.*\(gdk_x11\|gtk_plug_\|gtk_socket_\).*$$/#ifdef GDK_WINDOWING_X11\n&\n#endif/; s/^.*gdk_x11_gl.*$$/#ifdef HAVE_OPENGL\n&\n#endif/; }' >> xgen-gtf \
|
||||
&& cp xgen-gtf $@ && rm -f xgen-gtf
|
||||
$(srcdir)/gtktestutils.c: gtktypefuncs.inc
|
||||
|
||||
diff --git a/gtk/gtkglarea.c b/gtk/gtkglarea.c
|
||||
index 9a56443..7de0db2 100644
|
||||
--- a/gtk/gtkglarea.c
|
||||
+++ b/gtk/gtkglarea.c
|
||||
@@ -29,7 +29,9 @@
|
||||
#include "gtkprivate.h"
|
||||
#include "gtkrender.h"
|
||||
|
||||
+#ifdef HAVE_OPENGL
|
||||
#include <epoxy/gl.h>
|
||||
+#endif
|
||||
|
||||
/**
|
||||
* SECTION:gtkglarea
|
||||
@@ -369,9 +371,12 @@ gtk_gl_area_real_create_context (GtkGLArea *area)
|
||||
static void
|
||||
gtk_gl_area_resize (GtkGLArea *area, int width, int height)
|
||||
{
|
||||
+#ifdef HAVE_OPENGL
|
||||
glViewport (0, 0, width, height);
|
||||
+#endif
|
||||
}
|
||||
|
||||
+#ifdef HAVE_OPENGL
|
||||
/*
|
||||
* Creates all the buffer objects needed for rendering the scene
|
||||
*/
|
||||
@@ -483,6 +488,7 @@ gtk_gl_area_allocate_buffers (GtkGLArea *area)
|
||||
|
||||
priv->needs_render = TRUE;
|
||||
}
|
||||
+#endif
|
||||
|
||||
/**
|
||||
* gtk_gl_area_attach_buffers:
|
||||
@@ -501,6 +507,7 @@ gtk_gl_area_allocate_buffers (GtkGLArea *area)
|
||||
void
|
||||
gtk_gl_area_attach_buffers (GtkGLArea *area)
|
||||
{
|
||||
+#ifdef HAVE_OPENGL
|
||||
GtkGLAreaPrivate *priv = gtk_gl_area_get_instance_private (area);
|
||||
|
||||
g_return_if_fail (GTK_IS_GL_AREA (area));
|
||||
@@ -533,11 +540,13 @@ gtk_gl_area_attach_buffers (GtkGLArea *area)
|
||||
glFramebufferRenderbufferEXT (GL_FRAMEBUFFER_EXT, GL_STENCIL_ATTACHMENT_EXT,
|
||||
GL_RENDERBUFFER_EXT, priv->depth_stencil_buffer);
|
||||
}
|
||||
+#endif
|
||||
}
|
||||
|
||||
static void
|
||||
gtk_gl_area_delete_buffers (GtkGLArea *area)
|
||||
{
|
||||
+#ifdef HAVE_OPENGL
|
||||
GtkGLAreaPrivate *priv = gtk_gl_area_get_instance_private (area);
|
||||
|
||||
if (priv->context == NULL)
|
||||
@@ -569,6 +578,7 @@ gtk_gl_area_delete_buffers (GtkGLArea *area)
|
||||
glDeleteFramebuffersEXT (1, &priv->frame_buffer);
|
||||
priv->frame_buffer = 0;
|
||||
}
|
||||
+#endif
|
||||
}
|
||||
|
||||
static void
|
||||
@@ -679,6 +689,7 @@ gtk_gl_area_draw (GtkWidget *widget,
|
||||
GtkGLArea *area = GTK_GL_AREA (widget);
|
||||
GtkGLAreaPrivate *priv = gtk_gl_area_get_instance_private (area);
|
||||
gboolean unused;
|
||||
+#ifdef HAVE_OPENGL
|
||||
int w, h, scale;
|
||||
GLenum status;
|
||||
|
||||
@@ -690,7 +701,6 @@ gtk_gl_area_draw (GtkWidget *widget,
|
||||
gtk_widget_get_allocated_height (widget));
|
||||
return FALSE;
|
||||
}
|
||||
-
|
||||
if (priv->context == NULL)
|
||||
return FALSE;
|
||||
|
||||
@@ -736,6 +746,14 @@ gtk_gl_area_draw (GtkWidget *widget,
|
||||
}
|
||||
|
||||
return TRUE;
|
||||
+#else
|
||||
+ if (priv->error != NULL)
|
||||
+ gtk_gl_area_draw_error_screen (area,
|
||||
+ cr,
|
||||
+ gtk_widget_get_allocated_width (widget),
|
||||
+ gtk_widget_get_allocated_height (widget));
|
||||
+ return FALSE;
|
||||
+#endif
|
||||
}
|
||||
|
||||
static gboolean
|
||||
diff --git a/gtk/inspector/general.c b/gtk/inspector/general.c
|
||||
index c241ec8..24576dd 100644
|
||||
--- a/gtk/inspector/general.c
|
||||
+++ b/gtk/inspector/general.c
|
||||
@@ -33,8 +33,10 @@
|
||||
|
||||
#ifdef GDK_WINDOWING_X11
|
||||
#include "x11/gdkx.h"
|
||||
+#ifdef HAVE_OPENGL
|
||||
#include <epoxy/glx.h>
|
||||
#endif
|
||||
+#endif
|
||||
|
||||
#ifdef GDK_WINDOWING_WIN32
|
||||
#include "win32/gdkwin32.h"
|
||||
@@ -196,6 +198,7 @@ add_label_row (GtkInspectorGeneral *gen,
|
||||
gtk_size_group_add_widget (GTK_SIZE_GROUP (gen->priv->labels), label);
|
||||
}
|
||||
|
||||
+#ifdef HAVE_OPENGL
|
||||
#ifdef GDK_WINDOWING_X11
|
||||
static void
|
||||
append_glx_extension_row (GtkInspectorGeneral *gen,
|
||||
@@ -205,6 +208,7 @@ append_glx_extension_row (GtkInspectorGeneral *gen,
|
||||
add_check_row (gen, GTK_LIST_BOX (gen->priv->gl_box), ext, epoxy_has_glx_extension (dpy, 0, ext), 0);
|
||||
}
|
||||
#endif
|
||||
+#endif
|
||||
|
||||
#ifdef GDK_WINDOWING_WAYLAND
|
||||
static void
|
||||
@@ -254,6 +258,7 @@ wayland_get_display (struct wl_display *wl_display)
|
||||
static void
|
||||
init_gl (GtkInspectorGeneral *gen)
|
||||
{
|
||||
+#ifdef HAVE_OPENGL
|
||||
#ifdef GDK_WINDOWING_X11
|
||||
if (GDK_IS_X11_DISPLAY (gdk_display_get_default ()))
|
||||
{
|
||||
@@ -280,6 +285,7 @@ init_gl (GtkInspectorGeneral *gen)
|
||||
}
|
||||
else
|
||||
#endif
|
||||
+#endif
|
||||
#ifdef GDK_WINDOWING_WAYLAND
|
||||
if (GDK_IS_WAYLAND_DISPLAY (gdk_display_get_default ()))
|
||||
{
|
||||
diff --git a/tests/Makefile.am b/tests/Makefile.am
|
||||
index ee1e8b5..e6c6502 100644
|
||||
--- a/tests/Makefile.am
|
||||
+++ b/tests/Makefile.am
|
||||
@@ -80,8 +80,6 @@ noinst_PROGRAMS = $(TEST_PROGS) \
|
||||
testfullscreen \
|
||||
testgeometry \
|
||||
testgiconpixbuf \
|
||||
- testglarea \
|
||||
- testglblending \
|
||||
testgrid \
|
||||
testgtk \
|
||||
testheaderbar \
|
||||
@@ -172,12 +170,18 @@ noinst_PROGRAMS = $(TEST_PROGS) \
|
||||
testactionbar \
|
||||
testwindowsize \
|
||||
testpopover \
|
||||
- gdkgears \
|
||||
listmodel \
|
||||
testpopup \
|
||||
testpopupat \
|
||||
$(NULL)
|
||||
|
||||
+if HAVE_OPENGL
|
||||
+noinst_PROGRAMS +=
|
||||
+ testglarea \
|
||||
+ testglblending \
|
||||
+ gdkgears
|
||||
+endif
|
||||
+
|
||||
if USE_WAYLAND
|
||||
noinst_PROGRAMS += testforeign
|
||||
endif
|
||||
diff --git a/testsuite/gtk/objects-finalize.c b/testsuite/gtk/objects-finalize.c
|
||||
index 24540e3..e0f863a 100644
|
||||
--- a/testsuite/gtk/objects-finalize.c
|
||||
+++ b/testsuite/gtk/objects-finalize.c
|
||||
@@ -116,7 +116,9 @@ main (int argc, char **argv)
|
||||
all_types[i] != GDK_TYPE_X11_DEVICE_MANAGER_CORE &&
|
||||
all_types[i] != GDK_TYPE_X11_DEVICE_MANAGER_XI2 &&
|
||||
all_types[i] != GDK_TYPE_X11_DISPLAY_MANAGER &&
|
||||
+#ifdef HAVE_OPENGL
|
||||
all_types[i] != GDK_TYPE_X11_GL_CONTEXT &&
|
||||
+#endif
|
||||
#endif
|
||||
/* Not allowed to finalize a GdkPixbufLoader without calling gdk_pixbuf_loader_close() */
|
||||
all_types[i] != GDK_TYPE_PIXBUF_LOADER &&
|
@ -1,19 +0,0 @@
|
||||
Link with libfribidi, this is to avoid under linking where these functions are
|
||||
used but the library is not linked in, and they are marked undefined by BFD linker
|
||||
but gold linker refuses to link
|
||||
|
||||
| ./.libs/libgdk-3.so: error: undefined reference to 'fribidi_get_bidi_type'
|
||||
|
||||
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
||||
Upstream-Status: Pending
|
||||
|
||||
--- a/gdk/Makefile.am
|
||||
+++ b/gdk/Makefile.am
|
||||
@@ -55,6 +55,7 @@ LDADD = \
|
||||
-version-info $(LT_VERSION_INFO) \
|
||||
-export-dynamic \
|
||||
-rpath $(libdir) \
|
||||
+ -lfribidi \
|
||||
$(no_undefined)
|
||||
|
||||
#
|
@ -1,19 +0,0 @@
|
||||
If the resources file isn't sorted in some way then libgdk.so will differ
|
||||
depending on the inode order of the resource files.
|
||||
|
||||
Upstream-Status: Pending
|
||||
Signed-off-by: Ross Burton <ross.burton@intel.com>
|
||||
|
||||
diff --git a/gdk/Makefile.am b/gdk/Makefile.am
|
||||
index e25b57ba50..26f2d57c6e 100644
|
||||
--- a/gdk/Makefile.am
|
||||
+++ b/gdk/Makefile.am
|
||||
@@ -465,7 +465,7 @@ stamp-gc-h: $(top_builddir)/config.status
|
||||
# Resources
|
||||
#
|
||||
|
||||
-glsl_sources := $(wildcard $(srcdir)/resources/glsl/*.glsl)
|
||||
+glsl_sources := $(sort $(wildcard $(srcdir)/resources/glsl/*.glsl))
|
||||
|
||||
gdk.gresource.xml: Makefile.am
|
||||
$(AM_V_GEN) echo "<?xml version='1.0' encoding='UTF-8'?>" > $@; \
|
@ -1,15 +0,0 @@
|
||||
require gtk4.inc
|
||||
|
||||
MAJ_VER = "${@oe.utils.trim_version("${PV}", 2)}"
|
||||
|
||||
SRC_URI = "http://ftp.gnome.org/pub/gnome/sources/gtk/${MAJ_VER}/gtk-${PV}.tar.xz \
|
||||
"
|
||||
|
||||
SRC_URI[sha256sum] = "0faada983dc6b0bc409cb34c1713c1f3267e67c093f86b1e3b17db6100a3ddf4"
|
||||
|
||||
S = "${WORKDIR}/gtk-${PV}"
|
||||
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=5f30f0716dfdd0d91eb439ebec522ec2 \
|
||||
file://gtk/gtk.h;endline=25;md5=1d8dc0fccdbfa26287a271dce88af737 \
|
||||
file://gdk/gdk.h;endline=25;md5=c920ce39dc88c6f06d3e7c50e08086f2 \
|
||||
file://tests/testgtk.c;endline=25;md5=49d06770681b8322466b52ed19d29fb2"
|
142
meta-gnome/recipes-gnome/gtk4/gtk4_4.6.4.bb
Normal file
142
meta-gnome/recipes-gnome/gtk4/gtk4_4.6.4.bb
Normal file
@ -0,0 +1,142 @@
|
||||
SUMMARY = "Multi-platform toolkit for creating GUIs"
|
||||
DESCRIPTION = "GTK is a multi-platform toolkit for creating graphical user interfaces. Offering a complete \
|
||||
set of widgets, GTK is suitable for projects ranging from small one-off projects to complete application suites."
|
||||
HOMEPAGE = "http://www.gtk.org"
|
||||
BUGTRACKER = "https://bugzilla.gnome.org/"
|
||||
SECTION = "libs"
|
||||
|
||||
DEPENDS = " \
|
||||
sassc-native \
|
||||
glib-2.0 \
|
||||
libepoxy \
|
||||
graphene \
|
||||
cairo \
|
||||
pango \
|
||||
atk \
|
||||
jpeg \
|
||||
libpng \
|
||||
librsvg \
|
||||
tiff \
|
||||
gdk-pixbuf-native gdk-pixbuf \
|
||||
"
|
||||
|
||||
LICENSE = "LGPL-2.0-only & LGPL-2.0-or-later & LGPL-2.1-or-later"
|
||||
LIC_FILES_CHKSUM = " \
|
||||
file://COPYING;md5=5f30f0716dfdd0d91eb439ebec522ec2 \
|
||||
file://gtk/gtk.h;endline=25;md5=1d8dc0fccdbfa26287a271dce88af737 \
|
||||
file://gdk/gdk.h;endline=25;md5=c920ce39dc88c6f06d3e7c50e08086f2 \
|
||||
file://tests/testgtk.c;endline=25;md5=49d06770681b8322466b52ed19d29fb2 \
|
||||
"
|
||||
|
||||
MAJ_VER = "${@oe.utils.trim_version("${PV}", 2)}"
|
||||
|
||||
UPSTREAM_CHECK_REGEX = "gtk-(?P<pver>\d+\.(\d*[02468])+(\.\d+)+)\.tar.xz"
|
||||
|
||||
SRC_URI = "http://ftp.gnome.org/pub/gnome/sources/gtk/${MAJ_VER}/gtk-${PV}.tar.xz"
|
||||
SRC_URI[sha256sum] = "a79a2bbcc7931b703fc4fa1fcbe1b906e229a1522d854d522801766a79bcac9f"
|
||||
|
||||
S = "${WORKDIR}/gtk-${PV}"
|
||||
|
||||
inherit meson gettext pkgconfig gtk-doc update-alternatives gsettings features_check gobject-introspection
|
||||
|
||||
# TBD: nativesdk
|
||||
# gobject-introspection.bbclass pins introspection off for nativesk. As long as
|
||||
# we do not remove this wisdom or hack gtk4, it is not possible to build
|
||||
# nativesdk-gtk4
|
||||
BBCLASSEXTEND = "native"
|
||||
|
||||
GSETTINGS_PACKAGE:class-native = ""
|
||||
|
||||
ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}"
|
||||
REQUIRED_DISTRO_FEATURES = "opengl"
|
||||
|
||||
GIR_MESON_ENABLE_FLAG = 'enabled'
|
||||
GIR_MESON_DISABLE_FLAG = 'disabled'
|
||||
GTKDOC_MESON_OPTION = 'gtk_doc'
|
||||
|
||||
EXTRA_OEMESON = " -Dbuild-tests=false"
|
||||
|
||||
PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'wayland x11', d)}"
|
||||
PACKAGECONFIG:class-native = "${@bb.utils.filter('DISTRO_FEATURES', 'x11', d)}"
|
||||
PACKAGECONFIG:class-nativesdk = "${@bb.utils.filter('DISTRO_FEATURES', 'x11', d)}"
|
||||
|
||||
PACKAGECONFIG[x11] = "-Dx11-backend=true,-Dx11-backend=false,at-spi2-atk fontconfig libx11 libxext libxcursor libxi libxdamage libxrandr libxrender libxcomposite libxfixes xinerama"
|
||||
PACKAGECONFIG[wayland] = "-Dwayland-backend=true,-Dwayland-backend=false,wayland wayland-protocols libxkbcommon virtual/egl virtual/libgles2 wayland-native"
|
||||
PACKAGECONFIG[cups] = "-Dprint-cups=enabled,-Dprint-cups=disabled,cups"
|
||||
PACKAGECONFIG[colord] = "-Dcolord=enabled,-Dcolord=disabled,colord"
|
||||
# gtk4 wants gstreamer-player-1.0 -> gstreamer1.0-plugins-bad
|
||||
PACKAGECONFIG[gstreamer] = "-Dmedia-gstreamer=enabled,-Dmedia-gstreamer=disabled,gstreamer1.0-plugins-bad"
|
||||
PACKAGECONFIG[tracker] = "-Dtracker=enabled,-Dtracker=disabled,tracker"
|
||||
|
||||
|
||||
do_compile:prepend() {
|
||||
export GIR_EXTRA_LIBS_PATH="${B}/gdk/.libs"
|
||||
}
|
||||
|
||||
|
||||
PACKAGES =+ "${PN}-demo"
|
||||
LIBV = "4.0.0"
|
||||
|
||||
FILES:${PN}-demo = " \
|
||||
${datadir}/applications/org.gtk.Demo4.desktop \
|
||||
${datadir}/applications/org.gtk.IconBrowser4.desktop \
|
||||
${datadir}/applications/org.gtk.WidgetFactory4.desktop \
|
||||
${datadir}/icons/hicolor/*/apps/org.gtk.Demo4*.* \
|
||||
${datadir}/icons/hicolor/*/apps/org.gtk.IconBrowser4*.* \
|
||||
${datadir}/icons/hicolor/*/apps/org.gtk.WidgetFactory4*.* \
|
||||
${bindir}/gtk4-demo \
|
||||
${bindir}/gtk4-demo-application \
|
||||
${bindir}/gtk4-icon-browser \
|
||||
${bindir}/gtk4-widget-factory \
|
||||
"
|
||||
|
||||
FILES:${PN}:append = " \
|
||||
${datadir}/glib-2.0/schemas/ \
|
||||
${datadir}/gtk-4.0/emoji/ \
|
||||
${datadir}/metainfo/ \
|
||||
${datadir}/icons/hicolor/*/apps/org.gtk.PrintEditor4*.* \
|
||||
${libdir}/gtk-4.0/${LIBV}/printbackends \
|
||||
${bindir}/gtk4-update-icon-cache \
|
||||
${bindir}/gtk4-launch \
|
||||
"
|
||||
|
||||
FILES:${PN}-dev += " \
|
||||
${datadir}/gtk-4.0/gtk4builder.rng \
|
||||
${datadir}/gtk-4.0/include \
|
||||
${datadir}/gtk-4.0/valgrind \
|
||||
${datadir}/gettext/its \
|
||||
${bindir}/gtk4-builder-tool \
|
||||
${bindir}/gtk4-encode-symbolic-svg \
|
||||
${bindir}/gtk4-query-settings \
|
||||
"
|
||||
|
||||
GTKBASE_RRECOMMENDS ?= " \
|
||||
liberation-fonts \
|
||||
gdk-pixbuf-loader-png \
|
||||
gdk-pixbuf-loader-jpeg \
|
||||
gdk-pixbuf-loader-gif \
|
||||
gdk-pixbuf-loader-xpm \
|
||||
shared-mime-info \
|
||||
adwaita-icon-theme-symbolic \
|
||||
"
|
||||
|
||||
GTKBASE_RRECOMMENDS:class-native ?= ""
|
||||
|
||||
GTKGLIBC_RRECOMMENDS ?= "${GTKBASE_RRECOMMENDS} glibc-gconv-iso8859-1"
|
||||
|
||||
RRECOMMENDS:${PN} = "${GTKBASE_RRECOMMENDS}"
|
||||
RRECOMMENDS:${PN}:libc-glibc = "${GTKGLIBC_RRECOMMENDS}"
|
||||
RDEPENDS:${PN}-dev += "${@bb.utils.contains("PACKAGECONFIG", "wayland", "wayland-protocols", "", d)}"
|
||||
|
||||
PACKAGES_DYNAMIC += "^gtk4-printbackend-.*"
|
||||
python populate_packages:prepend () {
|
||||
import os.path
|
||||
|
||||
gtk_libdir = d.expand('${libdir}/gtk-3.0/${LIBV}')
|
||||
printmodules_root = os.path.join(gtk_libdir, 'printbackends');
|
||||
|
||||
do_split_packages(d, printmodules_root, r'^libprintbackend-(.*)\.so$', 'gtk4-printbackend-%s', 'GTK printbackend module for %s')
|
||||
|
||||
if (d.getVar('DEBIAN_NAMES')):
|
||||
d.setVar(d.expand('PKG:${PN}'), '${MLPREFIX}libgtk-4.0')
|
||||
}
|
@ -1,72 +0,0 @@
|
||||
DESCRIPTION = "gvfs is a userspace virtual filesystem"
|
||||
LICENSE = "LGPL-2.0-only"
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=05df38dd77c35ec8431f212410a3329e"
|
||||
|
||||
GNOMEBASEBUILDCLASS = "meson"
|
||||
inherit gnomebase gtk-icon-cache gconf mime bash-completion gettext upstream-version-is-even
|
||||
|
||||
DEPENDS += "libsecret glib-2.0 gconf libgudev udisks2 polkit shadow-native libusb1 gsettings-desktop-schemas"
|
||||
|
||||
SRC_URI = "https://download.gnome.org/sources/${BPN}/${@gnome_verdir("${PV}")}/${BPN}-${PV}.tar.xz;name=archive"
|
||||
|
||||
SRC_URI[archive.sha256sum] = "b2ea4f271aad2711f16b43c03151e2ec5a9874ff1a21142ef6d6406486a19dc2"
|
||||
|
||||
EXTRA_OEMESON = " \
|
||||
-Dadmin=false \
|
||||
-Dafc=false \
|
||||
-Dafp=false \
|
||||
-Darchive=false \
|
||||
-Dcdda=false \
|
||||
-Ddnssd=false \
|
||||
-Dgoa=false \
|
||||
-Dgoogle=false \
|
||||
-Dgphoto2=false \
|
||||
-Dhttp=false \
|
||||
-Dmtp=false \
|
||||
-Dhttp=false \
|
||||
-Dnfs=false \
|
||||
-Dsftp=false \
|
||||
-Dsmb=false \
|
||||
-Dbluray=false \
|
||||
-Dgcr=false \
|
||||
-Dkeyring=false \
|
||||
-Dudisks2=true \
|
||||
"
|
||||
|
||||
FILES:${PN} += " \
|
||||
${datadir}/glib-2.0 \
|
||||
${datadir}/GConf \
|
||||
${datadir}/dbus-1/services \
|
||||
${libdir}/gio/modules/*.so \
|
||||
${libdir}/tmpfiles.d \
|
||||
${systemd_user_unitdir} \
|
||||
"
|
||||
|
||||
RDEPENDS:${PN} = "udisks2"
|
||||
|
||||
FILES:${PN}-dbg += "${libdir}/gio/modules/.debug/*"
|
||||
FILES:${PN}-dev += "${libdir}/gio/modules/*.la"
|
||||
|
||||
PACKAGECONFIG[systemd] = "-Dsystemduserunitdir=${systemd_user_unitdir} -Dtmpfilesdir=${libdir}/tmpfiles.d, -Dsystemduserunitdir=no -Dtmpfilesdir=no, systemd"
|
||||
|
||||
# needs meta-filesystems
|
||||
PACKAGECONFIG[fuse] = "-Dfuse=true, -Dfuse=false, fuse"
|
||||
|
||||
do_install:append() {
|
||||
|
||||
# After rebuilds (not from scracth) it can happen that the executables in
|
||||
# libexec ar missing executable permission flag. Not sure but it came up
|
||||
# during transition to meson. Looked into build files and logs but could
|
||||
# not find suspicious
|
||||
for exe in `find ${D}/${libexec}`; do
|
||||
chmod +x $exe
|
||||
done
|
||||
|
||||
# Something sets user services executable - looks a bit as if meson
|
||||
# transition has room for enhancements...
|
||||
# Systemd warns with messages as:
|
||||
# Apr 07 01:00:33 raspberrypi3 systemd[348]: Configuration file /usr/lib/systemd/user/gvfs-mtp-volume-monitor.service is marked executable. Please remove executable permissio>
|
||||
for service in `find ${D}/${systemd_user_unitdir}`; do
|
||||
chmod -x $service
|
||||
done
|
||||
}
|
89
meta-gnome/recipes-gnome/gvfs/gvfs_1.50.0.bb
Normal file
89
meta-gnome/recipes-gnome/gvfs/gvfs_1.50.0.bb
Normal file
@ -0,0 +1,89 @@
|
||||
DESCRIPTION = "gvfs is a userspace virtual filesystem"
|
||||
LICENSE = "LGPL-2.0-only"
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=05df38dd77c35ec8431f212410a3329e"
|
||||
|
||||
GNOMEBASEBUILDCLASS = "meson"
|
||||
inherit gnomebase gsettings bash-completion gettext upstream-version-is-even features_check useradd
|
||||
|
||||
DEPENDS += "libsecret glib-2.0 glib-2.0-native libgudev shadow-native \
|
||||
gsettings-desktop-schemas dbus"
|
||||
|
||||
RDEPENDS:${PN} += "gsettings-desktop-schemas"
|
||||
|
||||
SRC_URI = "https://download.gnome.org/sources/${BPN}/${@gnome_verdir("${PV}")}/${BPN}-${PV}.tar.xz;name=archive"
|
||||
|
||||
SRC_URI[archive.sha256sum] = "cbc2f564d2e9f00c760673f42d6803bce3e081ab7ffb4456deffffba9339b4dd"
|
||||
|
||||
# depends on gsettings-desktop-schemas->gcr->gtk+3-> x11
|
||||
REQUIRED_DISTRO_FEATURES = "x11"
|
||||
|
||||
EXTRA_OEMESON = " \
|
||||
-Dbluray=false \
|
||||
-Dgoa=false \
|
||||
-Dgoogle=false \
|
||||
-Dnfs=false \
|
||||
"
|
||||
|
||||
PACKAGES =+ "gvfsd-ftp gvfsd-sftp gvfsd-trash"
|
||||
|
||||
FILES:${PN} += " \
|
||||
${datadir}/glib-2.0 \
|
||||
${datadir}/GConf \
|
||||
${datadir}/dbus-1/services \
|
||||
${libdir}/gio/modules/*.so \
|
||||
${libdir}/tmpfiles.d \
|
||||
${systemd_user_unitdir} \
|
||||
"
|
||||
|
||||
FILES:${PN}-dbg += "${libdir}/gio/modules/.debug/*"
|
||||
FILES:${PN}-dev += "${libdir}/gio/modules/*.la"
|
||||
|
||||
FILES:gvfsd-ftp = "${libexecdir}/gvfsd-ftp ${datadir}/gvfs/mounts/ftp.mount"
|
||||
FILES:gvfsd-sftp = "${libexecdir}/gvfsd-sftp ${datadir}/gvfs/mounts/sftp.mount"
|
||||
FILES:gvfsd-trash = "${libexecdir}/gvfsd-trash ${datadir}/gvfs/mounts/trash.mount"
|
||||
|
||||
RRECOMMENDS:gvfsd-ftp += "openssh-sftp openssh-ssh"
|
||||
|
||||
PACKAGECONFIG ?= "libgphoto2 \
|
||||
${@bb.utils.filter('DISTRO_FEATURES', 'systemd', d)} \
|
||||
${@bb.utils.contains('DISTRO_FEATURES','polkit','udisks2','',d)} \
|
||||
${@bb.utils.contains('DISTRO_FEATURES','polkit','admin','',d)} \
|
||||
"
|
||||
|
||||
PACKAGECONFIG[udisks2] = "-Dudisks2=true, -Dudisks2=false, udisks2, udisks2"
|
||||
PACKAGECONFIG[admin] = "-Dadmin=true, -Dadmin=false, libcap polkit"
|
||||
PACKAGECONFIG[afc] = "-Dafc=true, -Dafc=false, libimobiledevice libplist"
|
||||
PACKAGECONFIG[archive] = "-Darchive=true, -Darchive=false, libarchive"
|
||||
PACKAGECONFIG[dnssd] = "-Ddnssd=true, -Ddnssd=false, avahi"
|
||||
PACKAGECONFIG[gcr] = "-Dgcr=true, -Dgcr=false, gcr"
|
||||
PACKAGECONFIG[http] = "-Dhttp=true, -Dhttp=false, libsoup-2.4"
|
||||
PACKAGECONFIG[libmtp] = "-Dmtp=true, -Dmtp=false, libmtp"
|
||||
PACKAGECONFIG[logind] = "-Dlogind=true, -Dlogind=false, systemd"
|
||||
PACKAGECONFIG[libgphoto2] = "-Dgphoto2=true, -Dgphoto2=false, libgphoto2"
|
||||
PACKAGECONFIG[samba] = "-Dsmb=true, -Dsmb=false, samba"
|
||||
PACKAGECONFIG[systemd] = "-Dsystemduserunitdir=${systemd_user_unitdir} -Dtmpfilesdir=${libdir}/tmpfiles.d, -Dsystemduserunitdir=no -Dtmpfilesdir=no, systemd"
|
||||
|
||||
# needs meta-filesystems
|
||||
PACKAGECONFIG[fuse] = "-Dfuse=true, -Dfuse=false, fuse3"
|
||||
|
||||
# libcdio-paranoia recipe doesn't exist yet
|
||||
PACKAGECONFIG[cdda] = "-Dcdda=true, -Dcdda=false, libcdio-paranoia"
|
||||
|
||||
USERADD_PACKAGES = "${PN}"
|
||||
USERADD_PARAM:${PN} = "--system --no-create-home --user-group --home-dir ${sysconfdir}/${BPN}-1 polkitd"
|
||||
|
||||
do_install:append() {
|
||||
if ${@bb.utils.contains('DISTRO_FEATURES', 'polkit', 'true', 'false', d)}; then
|
||||
# Fix up permissions on polkit rules.d to work with rpm4 constraints
|
||||
chmod 700 ${D}/${datadir}/polkit-1/rules.d
|
||||
chown polkitd:root ${D}/${datadir}/polkit-1/rules.d
|
||||
fi
|
||||
|
||||
# After rebuilds (not from scracth) it can happen that the executables in
|
||||
# libexec ar missing executable permission flag. Not sure but it came up
|
||||
# during transition to meson. Looked into build files and logs but could
|
||||
# not find suspicious
|
||||
for exe in `find ${D}/${libexecdir}`; do
|
||||
chmod +x $exe
|
||||
done
|
||||
}
|
25
meta-gnome/recipes-gnome/libadwaita/libadwaita_1.1.1.bb
Normal file
25
meta-gnome/recipes-gnome/libadwaita/libadwaita_1.1.1.bb
Normal file
@ -0,0 +1,25 @@
|
||||
SUMMARY = "Building blocks for modern GNOME applications"
|
||||
LICENSE="LGPL-2.1-or-later"
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c"
|
||||
|
||||
GNOMEBASEBUILDCLASS = "meson"
|
||||
|
||||
DEPENDS = " \
|
||||
sassc-native \
|
||||
gtk4 \
|
||||
"
|
||||
|
||||
inherit gnomebase gobject-introspection gtk-doc vala features_check
|
||||
|
||||
SRC_URI[archive.sha256sum] = "491169d4f6a11765328996bc088272d05c7235453bc0ee73c20dfd4bd67b401c"
|
||||
|
||||
ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}"
|
||||
REQUIRED_DISTRO_FEATURES = "opengl"
|
||||
|
||||
GIR_MESON_ENABLE_FLAG = 'enabled'
|
||||
GIR_MESON_DISABLE_FLAG = 'disabled'
|
||||
GTKDOC_MESON_OPTION = 'gtk_doc'
|
||||
|
||||
PACKAGECONFIG[examples] = "-Dexamples=true,-Dexamples=false"
|
||||
|
||||
FILES:${PN} += "${datadir}/metainfo"
|
@ -0,0 +1,33 @@
|
||||
From 179102310e9a3729fb5b00f2a7bf24b12f4a7a83 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com>
|
||||
Date: Sat, 16 Apr 2022 20:04:14 +0200
|
||||
Subject: [PATCH] Allow building gir in cross environments
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
For us this works perfectly fine
|
||||
|
||||
Upstream-Status: Inappropriate [OE-specific]
|
||||
|
||||
Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
|
||||
---
|
||||
libgweather/meson.build | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/libgweather/meson.build b/libgweather/meson.build
|
||||
index 08311af..ef554f2 100644
|
||||
--- a/libgweather/meson.build
|
||||
+++ b/libgweather/meson.build
|
||||
@@ -208,7 +208,7 @@ lib_libgweather = library('gweather-4',
|
||||
)
|
||||
|
||||
g_ir_scanner = find_program('g-ir-scanner', required: get_option('introspection'))
|
||||
-build_gir = get_option('introspection') and g_ir_scanner.found() and not meson.is_cross_build()
|
||||
+build_gir = get_option('introspection') and g_ir_scanner.found()
|
||||
|
||||
enable_vala = get_option('enable_vala')
|
||||
vapigen = find_program('vapigen', required: enable_vala == 'true')
|
||||
--
|
||||
2.34.1
|
||||
|
28
meta-gnome/recipes-gnome/libgweather/libgweather4_4.0.0.bb
Normal file
28
meta-gnome/recipes-gnome/libgweather/libgweather4_4.0.0.bb
Normal file
@ -0,0 +1,28 @@
|
||||
SUMMARY = "A library to access weather information from online services"
|
||||
|
||||
LICENSE = "GPL-2.0-only"
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
|
||||
|
||||
GNOMEBASEBUILDCLASS = "meson"
|
||||
GNOMEBN = "libgweather"
|
||||
S = "${WORKDIR}/${GNOMEBN}-${PV}"
|
||||
|
||||
inherit gnomebase gsettings gobject-introspection gettext gtk-doc vala
|
||||
|
||||
SRC_URI += "file://0001-Allow-building-gir-in-cross-environments.patch"
|
||||
SRC_URI[archive.sha256sum] = "440d44801b6f72b48c676e5e37f9109cfee1394fd74cc92725e1b1ba4fae834c"
|
||||
|
||||
GTKDOC_MESON_OPTION = "gtk_doc"
|
||||
|
||||
DEPENDS = " \
|
||||
geocode-glib \
|
||||
gtk+3 \
|
||||
json-glib \
|
||||
libsoup-2.4 \
|
||||
python3-pygobject-native \
|
||||
"
|
||||
|
||||
FILES:${PN} += " \
|
||||
${datadir}/libgweather-4 \
|
||||
${libdir}/libgweather-4 \
|
||||
"
|
@ -1,43 +0,0 @@
|
||||
SUMMARY = "Location and timezone database and weather lookup library"
|
||||
HOMEPAGE = "https://wiki.gnome.org/Projects/LibGWeather"
|
||||
LICENSE = "GPL-2.0-only"
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
|
||||
|
||||
GNOMEBASEBUILDCLASS = "meson"
|
||||
|
||||
inherit gnomebase meson pkgconfig gobject-introspection gettext features_check
|
||||
|
||||
SRC_URI[archive.sha256sum] = "ca4e8f2a4baaa9fc6d75d8856adb57056ef1cd6e55c775ba878ae141b6276ee6"
|
||||
|
||||
DEPENDS = "gtk+3 libxml2 libsoup-2.4 glib-2.0 python3-pygobject-native itstool-native geocode-glib glib-2.0-native"
|
||||
|
||||
# gobject-introspection is mandatory and cannot be configured
|
||||
REQUIRED_DISTRO_FEATURES = "gobject-introspection-data"
|
||||
GIR_MESON_OPTION = ""
|
||||
|
||||
GTKDOC_MESON_OPTION = "gtk_doc"
|
||||
|
||||
FILES:${PN} += "${datadir}/glib-2.0/schemas"
|
||||
|
||||
|
||||
SECTION ?= "x11/gnome"
|
||||
|
||||
FILES:${PN} += "${datadir}/application-registry \
|
||||
${datadir}/mime-info \
|
||||
${datadir}/mime/packages \
|
||||
${datadir}/mime/application \
|
||||
${datadir}/gnome-2.0 \
|
||||
${datadir}/polkit* \
|
||||
${datadir}/GConf \
|
||||
${datadir}/glib-2.0/schemas \
|
||||
${datadir}/appdata \
|
||||
${datadir}/icons \
|
||||
"
|
||||
|
||||
FILES:${PN}-doc += "${datadir}/devhelp"
|
||||
|
||||
do_install:append() {
|
||||
rm -rf ${D}${localstatedir}/lib/scrollkeeper/*
|
||||
rm -rf ${D}${localstatedir}/scrollkeeper/*
|
||||
rm -f ${D}${datadir}/applications/*.cache
|
||||
}
|
@ -37,10 +37,10 @@ DEPENDS = " \
|
||||
|
||||
RDEPENDS:${PN} += " xwayland zenity"
|
||||
|
||||
SRCREV = "7cab502754edef977215bdfc9f8dfa0849a426f3"
|
||||
SRCREV = "56e7b774e9a2ea215d02cb1ac88a8cfa74b5a4a6"
|
||||
|
||||
EXTERNAL_TREE_VAR="CITADEL_MUTTER_PATH"
|
||||
GIT_URI = "git://github.com/brl/mutter.git;branch=citadel;protocol=https"
|
||||
GIT_URI = "git://github.com/brl/mutter.git;branch=citadel-42.1;protocol=https"
|
||||
|
||||
GNOMEBASEBUILDCLASS = "meson"
|
||||
|
||||
@ -65,7 +65,7 @@ EXTRA_OEMESON += " \
|
||||
-Dgles2_libname=libGLESv2.so.2 \
|
||||
"
|
||||
|
||||
MUTTER_API_NAME = "mutter-9"
|
||||
MUTTER_API_NAME = "mutter-10"
|
||||
|
||||
do_install:append() {
|
||||
# Add gir links in standard paths. That makes dependents life much easier
|
@ -9,14 +9,14 @@ inherit features_check gnomebase gsettings gtk-icon-cache gettext
|
||||
|
||||
REQUIRED_DISTRO_FEATURES = "x11"
|
||||
|
||||
SRC_URI[archive.sha256sum] = "ddbb400ace804b59cc513611ce9701f7ef3f00de151dbbfb96284c8c1ef2b18b"
|
||||
SRC_URI[archive.sha256sum] = "69611b29064adbd57395fe3e51a9ebde1ea794615f776900453a2bbe3d8cddfd"
|
||||
|
||||
# We don't not have ubuntu's appindicator (yet?)
|
||||
EXTRA_OEMESON = "-Dappindicator=no"
|
||||
# We currently don't build NetworkManager with libteamdctl support
|
||||
EXTRA_OEMESON += "-Dteam=false"
|
||||
|
||||
PACKAGECONFIG ??= ""
|
||||
PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'selinux', d)}"
|
||||
PACKAGECONFIG[modemmanager] = "-Dwwan=true, -Dwwan=false, modemmanager"
|
||||
PACKAGECONFIG[selinux] = "-Dselinux=true, -Dselinux=false, libselinux"
|
||||
|
@ -5,17 +5,19 @@ LIC_FILES_CHKSUM = " \
|
||||
file://COPYING.GPL;md5=eb723b61539feef013de476e68b5c50a \
|
||||
"
|
||||
|
||||
GNOMEBASEBUILDCLASS = "meson"
|
||||
|
||||
inherit gnomebase itstool
|
||||
|
||||
DEPENDS += " \
|
||||
libxslt-native \
|
||||
libxml2-native \
|
||||
python3-lxml-native \
|
||||
yelp-xsl \
|
||||
"
|
||||
|
||||
SRC_URI[archive.md5sum] = "7856f9ad0492aaf9adf097f5058bfc2e"
|
||||
SRC_URI[archive.sha256sum] = "183856b5ed0b0bb2c05dd1204af023946ed436943e35e789afb0295e5e71e8f9"
|
||||
SRC_URI[archive.sha256sum] = "2cd43063ffa7262df15dd8d379aa3ea3999d42661f07563f4802daa1149f7df4"
|
||||
|
||||
RDEPENDS:${PN} += "yelp-xsl"
|
||||
RDEPENDS:${PN} += "python3-core yelp-xsl"
|
||||
|
||||
BBCLASSEXTEND = "native"
|
@ -1,7 +1,7 @@
|
||||
SUMMARY = "XSL stylesheets for the yelp help browser"
|
||||
LICENSE = "LGPL-2.1-only & GPL-2.0-only"
|
||||
LICENSE = "LGPL-2.1-only & GPL-2.0-only & BSD-3-Clause"
|
||||
LIC_FILES_CHKSUM = " \
|
||||
file://COPYING;md5=3e2bad3c5e3990988f9fa1bc5785b147 \
|
||||
file://COPYING;md5=8ca13a5a6972ac1620a1e42a3dacd774 \
|
||||
file://COPYING.GPL;md5=eb723b61539feef013de476e68b5c50a \
|
||||
file://COPYING.LGPL;md5=a6f89e2100d9b6cdffcea4f398e37343 \
|
||||
"
|
||||
@ -10,8 +10,7 @@ inherit gnomebase gettext itstool
|
||||
|
||||
DEPENDS += "libxml2"
|
||||
|
||||
SRC_URI[archive.md5sum] = "7d71af68fff4a92bcb2b8989f126be6c"
|
||||
SRC_URI[archive.sha256sum] = "4fe51c0233b79a4c204c68498d45f09b342c30ed02c4e418506c0e35f0904ec3"
|
||||
SRC_URI[archive.sha256sum] = "29b273cc0bd16efb6e983443803f1e9fdc03511e5c4ff6348fd30a604d4dc846"
|
||||
|
||||
RDEPENDS:${PN}:append:class-target = " libxml2 itstool"
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user