From patchwork Wed Sep 6 13:41:58 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Adolf Belka X-Patchwork-Id: 7149 Return-Path: Received: from mail01.ipfire.org (mail01.haj.ipfire.org [172.28.1.202]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (secp384r1) client-signature ECDSA (secp384r1)) (Client CN "mail01.haj.ipfire.org", Issuer "R3" (verified OK)) by web04.haj.ipfire.org (Postfix) with ESMTPS id 4Rgk7d5jkvz3wk9 for ; Wed, 6 Sep 2023 13:42:05 +0000 (UTC) Received: from mail02.haj.ipfire.org (mail02.haj.ipfire.org [172.28.1.201]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (secp384r1) client-signature ECDSA (secp384r1)) (Client CN "mail02.haj.ipfire.org", Issuer "R3" (verified OK)) by mail01.ipfire.org (Postfix) with ESMTPS id 4Rgk7d0vSyzyP; Wed, 6 Sep 2023 13:42:05 +0000 (UTC) Received: from mail02.haj.ipfire.org (localhost [127.0.0.1]) by mail02.haj.ipfire.org (Postfix) with ESMTP id 4Rgk7d0LzVz2xX9; Wed, 6 Sep 2023 13:42:05 +0000 (UTC) Received: from mail01.ipfire.org (mail01.haj.ipfire.org [172.28.1.202]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-384) client-signature ECDSA (P-384)) (Client CN "mail01.haj.ipfire.org", Issuer "R3" (verified OK)) by mail02.haj.ipfire.org (Postfix) with ESMTPS id 4Rgk7c3MQ1z2xKQ for ; Wed, 6 Sep 2023 13:42:04 +0000 (UTC) Received: from [127.0.0.1] (localhost [127.0.0.1]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (secp384r1) server-digest SHA384) (No client certificate requested) by mail01.ipfire.org (Postfix) with ESMTPSA id 4Rgk7b50KhzXS; Wed, 6 Sep 2023 13:42:03 +0000 (UTC) DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=ipfire.org; s=202003ed25519; t=1694007723; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding; bh=JMoohCcN/86Y9q1VMafaCDf3ZK6VL5Nj1Ol6VzTeshI=; b=WVHGYFauDsrc3+yoo6ePw2Zh5BtbSFK5xlsYPMaSfhZzCvfBy2bACaYF7McuRKdQ1RhWm+ ZzHLyQ641s7IJtBw== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ipfire.org; s=202003rsa; t=1694007723; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding; bh=JMoohCcN/86Y9q1VMafaCDf3ZK6VL5Nj1Ol6VzTeshI=; b=Ly3uWJ7oNHNyLj+8GU3RO+lYG7UR1NaGsgKYkjob9qnz32I19uZ8T5inY1m6eJUa7elBIL i5b4XA+KniVAy8QHrbP0kNcyrSis7FqK7s9E1Qw5z1zTPoFbBQullsWitk8SWt7cih9AGK sSKKZQrvNxFiVywhsu/m6cPBo+bTnX+KAECemfvh1Mc26SeKQvCu93BJG5kPBbqcWER1+M upQG1pYoLJdKPwklk3El+uuiyUpTIF4PXIql9VE2dz8kdm1CSU/V0Xso7CzsRafnypLevG pxWey4wGCnVAdT122f10n9pbZWdIafBlDmwc2ye1aZul9+4uVTxKJFYX+KbYCQ== From: Adolf Belka To: development@lists.ipfire.org Subject: [PATCH 1/2] udev: Apply patches to update to version 251 and add dummies for current tags Date: Wed, 6 Sep 2023 15:41:58 +0200 Message-ID: <20230906134159.3430191-1-adolf.belka@ipfire.org> MIME-Version: 1.0 X-BeenThere: development@lists.ipfire.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: IPFire development talk List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: development-bounces@lists.ipfire.org Sender: "Development" - eudev-3.2.12 has udev version 243 and this causes the build of libgudev to fail as it requires a newer version of udev. - Just changing the version in eudev from 243 to 251 is insufficient as libgudev also expects to see current tags which have been introduced in a more recent version of systemd udev. - Two patches applied from the eudev github issue #249 covering this problem. - With the two patches applied libgudev built without any problems. - Update to rootfile not required. Signed-off-by: Adolf Belka --- lfs/udev | 3 +- ...udev-3.2.12_Bump_udev_version_to_251.patch | 11 +++ ...2.12_Export_dummies_for_current_tags.patch | 81 +++++++++++++++++++ 3 files changed, 94 insertions(+), 1 deletion(-) create mode 100644 src/patches/eudev-3.2.12_Bump_udev_version_to_251.patch create mode 100644 src/patches/eudev-3.2.12_Export_dummies_for_current_tags.patch diff --git a/lfs/udev b/lfs/udev index eb01ae848..300c77f7d 100644 --- a/lfs/udev +++ b/lfs/udev @@ -74,7 +74,8 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) @$(PREBUILD) @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar axf $(DIR_DL)/$(DL_FILE) cd $(DIR_APP) && tar axf $(DIR_DL)/udev-lfs-$(RULES_VER).tar.bz2 - + cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/eudev-3.2.12_Bump_udev_version_to_251.patch + cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/eudev-3.2.12_Export_dummies_for_current_tags.patch cd $(DIR_APP) && ./configure \ --prefix=/usr \ --bindir=/bin \ diff --git a/src/patches/eudev-3.2.12_Bump_udev_version_to_251.patch b/src/patches/eudev-3.2.12_Bump_udev_version_to_251.patch new file mode 100644 index 000000000..459d1b6df --- /dev/null +++ b/src/patches/eudev-3.2.12_Bump_udev_version_to_251.patch @@ -0,0 +1,11 @@ +--- eudev-3.2.12/configure.orig 2023-05-16 16:20:07.000000000 +0200 ++++ eudev-3.2.12/configure 2023-09-05 14:50:58.167510924 +0200 +@@ -3408,7 +3408,7 @@ + ac_compiler_gnu=$ac_cv_c_compiler_gnu + + +-UDEV_VERSION=243 ++UDEV_VERSION=251 + + + diff --git a/src/patches/eudev-3.2.12_Export_dummies_for_current_tags.patch b/src/patches/eudev-3.2.12_Export_dummies_for_current_tags.patch new file mode 100644 index 000000000..e0563ab17 --- /dev/null +++ b/src/patches/eudev-3.2.12_Export_dummies_for_current_tags.patch @@ -0,0 +1,81 @@ +From dacff83d872c1dcb563439f98c9b974e244fcd46 Mon Sep 17 00:00:00 2001 +From: Boian Bonev +Date: Fri, 11 Aug 2023 23:14:02 +0000 +Subject: [PATCH] Export dummies for + + - udev_device_has_current_tag + - udev_device_get_current_tags_list_entry + +since the current eudev device database does not support the concept of +current tags +--- + src/libudev/libudev-device.c | 11 +++++++++++ + src/libudev/libudev.h | 2 ++ + src/libudev/libudev.sym | 6 ++++++ + 3 files changed, 19 insertions(+) + +diff --git a/src/libudev/libudev-device.c b/src/libudev/libudev-device.c +index ac67ce846..7d7a6622e 100644 +--- a/src/libudev/libudev-device.c ++++ b/src/libudev/libudev-device.c +@@ -1819,6 +1819,12 @@ _public_ struct udev_list_entry *udev_device_get_tags_list_entry(struct udev_dev + return udev_list_get_entry(&udev_device->tags_list); + } + ++_public_ struct udev_list_entry *udev_device_get_current_tags_list_entry(struct udev_device *udev_device) ++{ ++ // TODO: eudev database does not support current tags ++ return udev_device_get_tags_list_entry(udev_device); ++} ++ + /** + * udev_device_has_tag: + * @udev_device: udev device +@@ -1842,6 +1848,11 @@ _public_ int udev_device_has_tag(struct udev_device *udev_device, const char *ta + return false; + } + ++_public_ int udev_device_has_current_tag(struct udev_device *udev_device, const char *tag) { ++ // TODO: eudev database does not support current tags ++ return udev_device_has_tag(udev_device, tag); ++} ++ + #define ENVP_SIZE 128 + #define MONITOR_BUF_SIZE 4096 + static int update_envp_monitor_buf(struct udev_device *udev_device) +diff --git a/src/libudev/libudev.h b/src/libudev/libudev.h +index 8491d2b81..0202964d6 100644 +--- a/src/libudev/libudev.h ++++ b/src/libudev/libudev.h +@@ -100,6 +100,7 @@ int udev_device_get_is_initialized(struct udev_device *udev_device); + struct udev_list_entry *udev_device_get_devlinks_list_entry(struct udev_device *udev_device); + struct udev_list_entry *udev_device_get_properties_list_entry(struct udev_device *udev_device); + struct udev_list_entry *udev_device_get_tags_list_entry(struct udev_device *udev_device); ++struct udev_list_entry *udev_device_get_current_tags_list_entry(struct udev_device *udev_device); + struct udev_list_entry *udev_device_get_sysattr_list_entry(struct udev_device *udev_device); + const char *udev_device_get_property_value(struct udev_device *udev_device, const char *key); + const char *udev_device_get_driver(struct udev_device *udev_device); +@@ -110,6 +111,7 @@ unsigned long long int udev_device_get_usec_since_initialized(struct udev_device + const char *udev_device_get_sysattr_value(struct udev_device *udev_device, const char *sysattr); + int udev_device_set_sysattr_value(struct udev_device *udev_device, const char *sysattr, char *value); + int udev_device_has_tag(struct udev_device *udev_device, const char *tag); ++int udev_device_has_current_tag(struct udev_device *udev_device, const char *tag); + + /* + * udev_monitor +diff --git a/src/libudev/libudev.sym b/src/libudev/libudev.sym +index 76726fca7..d56c2aeab 100644 +--- a/src/libudev/libudev.sym ++++ b/src/libudev/libudev.sym +@@ -118,3 +118,9 @@ global: + udev_queue_flush; + udev_queue_get_fd; + } LIBUDEV_199; ++ ++LIBUDEV_247 { ++global: ++ udev_device_has_current_tag; ++ udev_device_get_current_tags_list_entry; ++} LIBUDEV_215; + +