- Update from version 3.00 to 3.08 - Update of rootfile - All the other patches and sed modifications are now built mintyo the source tarball, except for the mountpoint patch which is stilol needed - Changelog 3.08 This release focuses on three changes which are basically imports of patches from Gentoo. Special thanks to floppym for supplying these. Applied a patch from floppm which adds kexec option to the halt command. This can be used as "halt -k". floppym provided patch which causes the halt command to call "shutdown -h -H" instead of "shutdown -h" when halt is invoked without parameters. This forces the shutdown command to set the INIT_HALT variable and assume, unless other conditions apply, that the "halt" call really wants to halt the machine and INIT_HALT should be set. In other words we assume halt wants to halt unless told otherwise. Addresses downstream Gentoo bug ID 911257. Updated halt documentation and help output to display parameters in alphabetical order. 3.07 The 3.07 release of SysV init mostly introduces fixes and improvements for the killall5 and pidof programs. (These are actually the same program, but are invoked with two different names, which result in different behaviour. The main highlights in this release are: Fixed killall5 so that processes in the omit list are not sent any signals, including SIGSTOP. Fixed usage message for killall5 to be more accurate. pidof was not returning PIDs of programs which were launched using a symbolic link. This has been fixed so programs run from a symbolic link show up in process lists. 3.06 Mark Hindley fixed typo in es.po Mark Hindley cleaned up translation code in src/Makefile. Drop sulogin from Debian build. Removed libcrypt-dev dependency. Fixed pt translation pages which were failing due to mis-matched open/close tags. Makefile now respects ROOT prefix when setting up pidof-to-killall5 symbolic link. Removed redundant translation files from man directory. Makefile now respects DESTDIR. User can specify either ROOT= or DESTDIR= to set install prefix. 3.05 This release (3.05) focuses on two things: Updating the translation framework. Fixing compiling issues on various systems. The second point, compiling, encompasses a few minor changes to get SysV init to build properly on GNU Hurd, systems without certain GNU assumptions, and systems running the latest glibc library (2.36 at time of writing). 3.04 This release contains one minor fix which allows the bootlogd code to properly compile on Debian's GNU Hurd branch. 3.03 This release includes two minor changes. One is fixing a typo in the init manual page (init.8). this fix was offered by Mark hindley. Mark, and a few other people, also pointed out that a fix in 3.02 for bootlogd introduced reliance on a defined PATH_MAX constant. This is used elsewhere in the code, but is not explicitly defined in bootlogd, which caused bootlogd to not build properly on GNU Hurd and musl C systems. This has been fixed. 3.02 Added q and Q flags to synopsis in shutdown manual page. Applied fixes for markup and spacing in manual pages. Patch provided by Mario Blattermann. Added translation framework (po4a) from Mario Blttermann. Added Makefile for man/ directory. Will handle translations and substitutions. Applied new translations for multiple languages from Mario Blattermann. Added ability to use "@" symbol in command named in the inittab file. This treats commands as literal and does not launch a shell to interpret them. Updated inittab manual page to include overview of symbols which trigger a shell interpretor and how to disable them using the @ symbol. Introduced change which adds error checking in bootlogd when performing chdir(). - Provided by Alexander Vickberg Add check for console using TIOCGDEV on Linux systems in bootlogd to make finding console more robust. - Provided by Alexander Vickberg 3.01 Default to showing processes in the uninterruptable state (D). The -z flag no longer affects whether processes in D state are shown. The -z flag does still toggle whether zombie (Z) processes are shown. Removed unnecessary check which is always true from init tab parsing.
Signed-off-by: Adolf Belka adolf.belka@ipfire.org --- config/rootfiles/common/sysvinit | 65 +++++++++++++++++++ lfs/sysvinit | 18 ++--- ...sysvinit-3.00-fix-glibc-2.36-headers.patch | 10 --- ...h => sysvinit-3.08_build_mountpoint.patch} | 0 4 files changed, 71 insertions(+), 22 deletions(-) delete mode 100644 src/patches/sysvinit-3.00-fix-glibc-2.36-headers.patch rename src/patches/{sysvinit-2.98_build_mountpoint.patch => sysvinit-3.08_build_mountpoint.patch} (100%)
diff --git a/config/rootfiles/common/sysvinit b/config/rootfiles/common/sysvinit index f97745760..d7a63e76a 100644 --- a/config/rootfiles/common/sysvinit +++ b/config/rootfiles/common/sysvinit @@ -20,6 +20,40 @@ usr/bin/mesg usr/bin/utmpdump usr/bin/wall #usr/include/initreq.h +#usr/share/man/de/man1/last.1 +#usr/share/man/de/man1/mesg.1 +#usr/share/man/de/man1/mountpoint.1 +#usr/share/man/de/man1/readbootlog.1 +#usr/share/man/de/man1/utmpdump.1 +#usr/share/man/de/man1/wall.1 +#usr/share/man/de/man5 +#usr/share/man/de/man5/initctl.5 +#usr/share/man/de/man5/initscript.5 +#usr/share/man/de/man5/inittab.5 +#usr/share/man/de/man8 +#usr/share/man/de/man8/bootlogd.8 +#usr/share/man/de/man8/fstab-decode.8 +#usr/share/man/de/man8/halt.8 +#usr/share/man/de/man8/init.8 +#usr/share/man/de/man8/killall5.8 +#usr/share/man/de/man8/logsave.8 +#usr/share/man/de/man8/pidof.8 +#usr/share/man/de/man8/runlevel.8 +#usr/share/man/de/man8/shutdown.8 +#usr/share/man/de/man8/sulogin.8 +#usr/share/man/es +#usr/share/man/es/man5 +#usr/share/man/es/man5/initscript.5 +#usr/share/man/es/man5/inittab.5 +#usr/share/man/fr/man5 +#usr/share/man/fr/man5/initscript.5 +#usr/share/man/fr/man5/inittab.5 +#usr/share/man/fr/man8 +#usr/share/man/fr/man8/bootlogd.8 +#usr/share/man/fr/man8/fstab-decode.8 +#usr/share/man/fr/man8/init.8 +#usr/share/man/fr/man8/killall5.8 +#usr/share/man/fr/man8/pidof.8 #usr/share/man/man1/last.1 #usr/share/man/man1/lastb.1 #usr/share/man/man1/mesg.1 @@ -43,3 +77,34 @@ usr/bin/wall #usr/share/man/man8/shutdown.8 #usr/share/man/man8/sulogin.8 #usr/share/man/man8/telinit.8 +#usr/share/man/pl +#usr/share/man/pl/man5 +#usr/share/man/pl/man5/initscript.5 +#usr/share/man/pl/man5/inittab.5 +#usr/share/man/pl/man8 +#usr/share/man/pl/man8/init.8 +#usr/share/man/pl/man8/killall5.8 +#usr/share/man/pl/man8/pidof.8 +#usr/share/man/pt +#usr/share/man/pt/man1 +#usr/share/man/pt/man1/last.1 +#usr/share/man/pt/man1/mesg.1 +#usr/share/man/pt/man1/mountpoint.1 +#usr/share/man/pt/man1/readbootlog.1 +#usr/share/man/pt/man1/utmpdump.1 +#usr/share/man/pt/man1/wall.1 +#usr/share/man/pt/man5 +#usr/share/man/pt/man5/initctl.5 +#usr/share/man/pt/man5/initscript.5 +#usr/share/man/pt/man5/inittab.5 +#usr/share/man/pt/man8 +#usr/share/man/pt/man8/bootlogd.8 +#usr/share/man/pt/man8/fstab-decode.8 +#usr/share/man/pt/man8/halt.8 +#usr/share/man/pt/man8/init.8 +#usr/share/man/pt/man8/killall5.8 +#usr/share/man/pt/man8/logsave.8 +#usr/share/man/pt/man8/pidof.8 +#usr/share/man/pt/man8/runlevel.8 +#usr/share/man/pt/man8/shutdown.8 +#usr/share/man/pt/man8/sulogin.8 diff --git a/lfs/sysvinit b/lfs/sysvinit index ec0a5c292..4da1b185e 100644 --- a/lfs/sysvinit +++ b/lfs/sysvinit @@ -1,7 +1,7 @@ ############################################################################### # # # IPFire.org - A linux based firewall # -# Copyright (C) 2007-2018 IPFire Team info@ipfire.org # +# Copyright (C) 2007-2023 IPFire Team info@ipfire.org # # # # This program is free software: you can redistribute it and/or modify # # it under the terms of the GNU General Public License as published by # @@ -24,7 +24,7 @@
include Config
-VER = 3.00 +VER = 3.08
THISAPP = sysvinit-$(VER) DL_FILE = $(THISAPP).tar.xz @@ -40,7 +40,7 @@ objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_BLAKE2 = d1c4e509d7c13cf0fb9da290f875e7c0ab0666d843d75d4dd6885112248a859dd077bdf9cc926c4af58473da99a5229bb879c7094afd648d5ebe72597a3ba6a7 +$(DL_FILE)_BLAKE2 = ec4a4ff3663ac7d67808b50b67631ff4fe1ab56d376df15868df0eb79cbc329b192af124380eec6a797d827c3c7c5586058310d803f42ee1934dcffbfbe876f7
install : $(TARGET)
@@ -70,14 +70,8 @@ $(subst %,%_BLAKE2,$(objects)) : $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) @$(PREBUILD) @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar axf $(DIR_DL)/$(DL_FILE) - # Newer C libraries omit this include from sys/types.h. - # https://lists.gnu.org/archive/html/bug-gnulib/2016-03/msg00018.html - cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/sysvinit-2.98_build_mountpoint.patch - cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/sysvinit-3.00-fix-glibc-2.36-headers.patch - cd $(DIR_APP) && sed -i src/mountpoint.c src/bootlogd.c \ - -e "/include.*sys/stat.h/a#include <sys/sysmacros.h>\n" - cd $(DIR_APP) && sed -e "s/libcrypt.a/libcrypt.so/g" -i src/Makefile - cd $(DIR_APP) && make $(MAKETUNING) -C src - cd $(DIR_APP) && make -C src install + cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/sysvinit-3.08_build_mountpoint.patch + cd $(DIR_APP) && make $(MAKETUNING) + cd $(DIR_APP) && make install @rm -rf $(DIR_APP) @$(POSTBUILD) diff --git a/src/patches/sysvinit-3.00-fix-glibc-2.36-headers.patch b/src/patches/sysvinit-3.00-fix-glibc-2.36-headers.patch deleted file mode 100644 index ee6f621b5..000000000 --- a/src/patches/sysvinit-3.00-fix-glibc-2.36-headers.patch +++ /dev/null @@ -1,10 +0,0 @@ ---- sysvinit-3.00/src/sulogin.c~ 2022-08-09 09:43:41.993484098 +0000 -+++ sysvinit-3.00/src/sulogin.c 2022-08-09 09:45:04.897252500 +0000 -@@ -51,7 +51,6 @@ - #ifdef __linux__ - # include <sys/statfs.h> - # include <sys/mount.h> --# include <linux/fs.h> - # include <linux/magic.h> - # include <linux/major.h> - # ifndef TMPFS_MAGIC diff --git a/src/patches/sysvinit-2.98_build_mountpoint.patch b/src/patches/sysvinit-3.08_build_mountpoint.patch similarity index 100% rename from src/patches/sysvinit-2.98_build_mountpoint.patch rename to src/patches/sysvinit-3.08_build_mountpoint.patch
- Update from version 3.2.12 to 3.2.14 - Update of rootfile not required - This version update includes the patches previously used to add the dummies for tags and to update to udev version 251 which is bugfix #253 - Changelog 3.2.14 Clear sysattr cache if a null pointer is passed by @NaofumiHonda in #255 Add /usr/local/lib/udev/rules.d by @bbonev in #260 Fix := not preventing further assignments to RUN by @bbonev in #257 Let libudev find hwdb.bin under UDEV_HWDB_BIN by @vivien-consider-dropping-github in #264 Add a generic --output argument to udevadm hwdb by @vivien-consider-dropping-github in #263 Dynamically get the udevadm hwdb files with a path variable by @vivien-consider-dropping-github in #262 More wording fixes for the manual page for udev by @vivien-consider-dropping-github in #265 Add missing API from 247 by @bbonev in #253 Ensure that standard file descriptors are open by @bbonev in #266
Signed-off-by: Adolf Belka adolf.belka@ipfire.org --- lfs/udev | 6 +- ...udev-3.2.12_Bump_udev_version_to_251.patch | 11 --- ...2.12_Export_dummies_for_current_tags.patch | 81 ------------------- 3 files changed, 2 insertions(+), 96 deletions(-) delete mode 100644 src/patches/eudev-3.2.12_Bump_udev_version_to_251.patch delete mode 100644 src/patches/eudev-3.2.12_Export_dummies_for_current_tags.patch
diff --git a/lfs/udev b/lfs/udev index 9cb310875..3a9c416b5 100644 --- a/lfs/udev +++ b/lfs/udev @@ -24,7 +24,7 @@
include Config
-VER = 3.2.12 +VER = 3.2.14 RULES_VER = 20171102
THISAPP = eudev-$(VER) @@ -42,7 +42,7 @@ objects = $(DL_FILE) udev-lfs-$(RULES_VER).tar.bz2 $(DL_FILE) = $(DL_FROM)/$(DL_FILE) udev-lfs-$(RULES_VER).tar.bz2 = $(DL_FROM)/udev-lfs-$(RULES_VER).tar.bz2
-$(DL_FILE)_BLAKE2 = 1d2dcc158432f722904f645749420cb44ff98f68b8b8fc11917e83750c95280d0dc2c4d9a322909a4acdb9455c6ec373eade77aacb1039096daa8e642076d3d1 +$(DL_FILE)_BLAKE2 = 7d68e77012288ecfac43be31f724224d371cb1084238fe045df248927eff854dbb391ad501e2a36d9b5ea4eb0a8cba3f9f21ea668908584a24c2a65df93ffdf8 udev-lfs-$(RULES_VER).tar.bz2_BLAKE2 = b5fb8177a87719e28adc976b83953024dbcfb8739b0c2e61da186cbc4df5e75e62c888da987d15c64db164002bb0a1e66ce0ff206b143dc953d7571b66d5d5c0
install : $(TARGET) @@ -74,8 +74,6 @@ $(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 deleted file mode 100644 index 459d1b6df..000000000 --- a/src/patches/eudev-3.2.12_Bump_udev_version_to_251.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- 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 deleted file mode 100644 index e0563ab17..000000000 --- a/src/patches/eudev-3.2.12_Export_dummies_for_current_tags.patch +++ /dev/null @@ -1,81 +0,0 @@ -From dacff83d872c1dcb563439f98c9b974e244fcd46 Mon Sep 17 00:00:00 2001 -From: Boian Bonev bbonev@ipacct.com -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; - -