diff options
Diffstat (limited to 'meta/recipes-core/sysvinit/sysvinit')
10 files changed, 480 insertions, 113 deletions
diff --git a/meta/recipes-core/sysvinit/sysvinit/0001-This-fixes-an-issue-that-clang-reports-about-mutlipl.patch b/meta/recipes-core/sysvinit/sysvinit/0001-This-fixes-an-issue-that-clang-reports-about-mutlipl.patch deleted file mode 100644 index f35c15cb31..0000000000 --- a/meta/recipes-core/sysvinit/sysvinit/0001-This-fixes-an-issue-that-clang-reports-about-mutlipl.patch +++ /dev/null @@ -1,52 +0,0 @@ -From 36ac97bfe51797458442a6035219a504a42e703a Mon Sep 17 00:00:00 2001 -From: Khem Raj <raj.khem@gmail.com> -Date: Fri, 21 Aug 2015 10:56:40 -0700 -Subject: [PATCH] This fixes an issue that clang reports about mutliple output - files - -Issue is that we are passing .h file to link step as seen below. - -| arm-oe-linux-gnueabi-clang -march=armv7-a -mthumb -mfloat-abi=hard --mfpu=neon-vfpv4 -mtune=cortex-a7 -D__extern_always_inline=inline --no-integrated-as ---sysroot=/mnt/home/kraj/work/angstrom/sources/openembedded-core/build/tmp-glibc/sysroots/raspberrypi2 --Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed halt.o ifdown.o hddown.o -utmp.o reboot.h -o halt -| clang-3.7: error: cannot specify -o when generating multiple output -files - -Upstream-Status: Pending - -Signed-off-by: Khem Raj <raj.khem@gmail.com> ---- - src/Makefile | 6 +++--- - 1 file changed, 3 insertions(+), 3 deletions(-) - -diff --git a/src/Makefile b/src/Makefile -index e77ed5f..a6f9f40 100644 ---- a/src/Makefile -+++ b/src/Makefile -@@ -103,9 +103,9 @@ all: $(BIN) $(SBIN) $(USRBIN) - init: LDLIBS += $(INITLIBS) $(STATIC) - init: init.o init_utmp.o - --halt: halt.o ifdown.o hddown.o utmp.o reboot.h -+halt: halt.o ifdown.o hddown.o utmp.o - --last: last.o oldutmp.h -+last: last.o - - mesg: mesg.o - -@@ -120,7 +120,7 @@ sulogin: sulogin.o - - wall: dowall.o wall.o - --shutdown: dowall.o shutdown.o utmp.o reboot.h -+shutdown: dowall.o shutdown.o utmp.o - - bootlogd: LDLIBS += -lutil - bootlogd: bootlogd.o --- -2.1.4 - diff --git a/meta/recipes-core/sysvinit/sysvinit/0001-hddown-include-libgen.h-for-basename-API.patch b/meta/recipes-core/sysvinit/sysvinit/0001-hddown-include-libgen.h-for-basename-API.patch new file mode 100644 index 0000000000..5e4053bad1 --- /dev/null +++ b/meta/recipes-core/sysvinit/sysvinit/0001-hddown-include-libgen.h-for-basename-API.patch @@ -0,0 +1,38 @@ +From a07c1d94e79840c59563741b45e690e77d4f3dfa Mon Sep 17 00:00:00 2001 +From: Khem Raj <raj.khem@gmail.com> +Date: Sun, 3 Dec 2023 20:09:30 -0800 +Subject: [PATCH] hddown: include libgen.h for basename API + +musl has removed the non-prototype declaration of basename from string.h [1] which now results in build errors with clang-17+ compiler + +include libgen.h for using the posix declaration of the funciton. + +Fixes + +hddown.c:135:8: error: incompatible integer to pointer conversion assigning to 'char *' from 'int' [-Wint-conversion] + 135 | ptr = basename(lnk); + | ^ ~~~~~~~~~~~~~ + +[1] https://git.musl-libc.org/cgit/musl/commit/?id=725e17ed6dff4d0cd22487bb64470881e86a92e7 + +Upstream-Status: Submitted [https://github.com/slicer69/sysvinit/pull/21] +Signed-off-by: Khem Raj <raj.khem@gmail.com> +--- + src/hddown.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/src/hddown.c b/src/hddown.c +index 7a2cf28..3b31bc0 100644 +--- a/src/hddown.c ++++ b/src/hddown.c +@@ -24,6 +24,7 @@ char *v_hddown = "@(#)hddown.c 1.02 22-Apr-2003 miquels@cistron.nl"; + #ifndef _GNU_SOURCE + #define _GNU_SOURCE + #endif ++#include <libgen.h> + #include <stdio.h> + #include <stdlib.h> + #include <unistd.h> +-- +2.43.0 + diff --git a/meta/recipes-core/sysvinit/sysvinit/0001-include-sys-sysmacros.h-for-major-minor-defines-in-g.patch b/meta/recipes-core/sysvinit/sysvinit/0001-include-sys-sysmacros.h-for-major-minor-defines-in-g.patch new file mode 100644 index 0000000000..60fbd87534 --- /dev/null +++ b/meta/recipes-core/sysvinit/sysvinit/0001-include-sys-sysmacros.h-for-major-minor-defines-in-g.patch @@ -0,0 +1,50 @@ +From c710a3accd1fabdb671274e1a458405282d51e0c Mon Sep 17 00:00:00 2001 +From: Khem Raj <raj.khem@gmail.com> +Date: Mon, 6 Aug 2018 15:38:58 -0700 +Subject: [PATCH] include sys/sysmacros.h for major/minor definitions + +Signed-off-by: Khem Raj <raj.khem@gmail.com> +Upstream-Status: Pending + +--- + src/bootlogd.c | 1 + + src/mountpoint.c | 1 + + src/shutdown.c | 1 + + 3 files changed, 3 insertions(+) + +diff --git a/src/bootlogd.c b/src/bootlogd.c +index 787db87..8b07903 100644 +--- a/src/bootlogd.c ++++ b/src/bootlogd.c +@@ -29,6 +29,7 @@ + #include <sys/types.h> + #include <sys/time.h> + #include <sys/stat.h> ++#include <sys/sysmacros.h> + #include <sys/ioctl.h> + #include <sys/utsname.h> + #include <time.h> +diff --git a/src/mountpoint.c b/src/mountpoint.c +index 5f20522..94df7a1 100644 +--- a/src/mountpoint.c ++++ b/src/mountpoint.c +@@ -25,6 +25,7 @@ + + #include <sys/types.h> + #include <sys/stat.h> ++#include <sys/sysmacros.h> + #include <unistd.h> + #include <stdlib.h> + #include <string.h> +diff --git a/src/shutdown.c b/src/shutdown.c +index b744a2c..40b7faf 100644 +--- a/src/shutdown.c ++++ b/src/shutdown.c +@@ -40,6 +40,7 @@ + #endif + #include <sys/types.h> + #include <sys/stat.h> ++#include <sys/sysmacros.h> + #include <sys/wait.h> + #ifdef __linux__ + #include <sys/sysmacros.h> /* brought in my LFS patch */ diff --git a/meta/recipes-core/sysvinit/sysvinit/crypt-lib.patch b/meta/recipes-core/sysvinit/sysvinit/crypt-lib.patch new file mode 100644 index 0000000000..5c39fb001b --- /dev/null +++ b/meta/recipes-core/sysvinit/sysvinit/crypt-lib.patch @@ -0,0 +1,38 @@ +From c3a068cf24a22bea7349849ec111ae8d91a54db4 Mon Sep 17 00:00:00 2001 +From: Jeff Dike <jdike@x86_64.user-mode-linux.org> +Date: Wed, 14 Jul 2010 14:35:52 -0400 +Subject: [PATCH] sysvinit - Remove sulogin dependency on /usr/lib*/libcrypt.a + +Upstream-Status: Inappropriate [configuration] + +# The src Makefile was checking for libcrypt.a on the host, not in the +# build environment. This patch checks for $LCRYPT in the environment +# and uses it if it's there. +# - jdike@linux.intel.com + +--- + src/Makefile | 11 ++--------- + 1 file changed, 2 insertions(+), 9 deletions(-) + +diff --git a/src/Makefile b/src/Makefile +index 5b1a5a2..b686394 100644 +--- a/src/Makefile ++++ b/src/Makefile +@@ -97,15 +97,8 @@ else + endif + + # Additional libs for GNU libc. +-ifneq ($(wildcard $(ROOT)/usr/lib*/libcrypt.*),) +- SULOGINLIBS += -lcrypt +-endif +- +-# Additional libs for GNU libc / multiarch on Debian based systems. +-ifneq ($(wildcard $(ROOT)/usr/lib/*/libcrypt.*),) +-ifneq ($(findstring -lcrypt, $(SULOGINLIBS)), -lcrypt) +- SULOGINLIBS += -lcrypt +-endif ++ifneq ($(LCRYPT),) ++ SULOGINLIBS += $(LCRYPT) + endif + + all: $(BIN) $(SBIN) $(USRBIN) diff --git a/meta/recipes-core/sysvinit/sysvinit/install.patch b/meta/recipes-core/sysvinit/sysvinit/install.patch new file mode 100644 index 0000000000..bc6d493c2b --- /dev/null +++ b/meta/recipes-core/sysvinit/sysvinit/install.patch @@ -0,0 +1,97 @@ +From 5e35aa105e7a2e85db2a89fee4114090b1ac55be Mon Sep 17 00:00:00 2001 +From: Qing He <qing.he@intel.com> +Date: Fri, 18 Jun 2010 09:40:30 +0800 +Subject: [PATCH] sysvinit: upgrade to version 2.88dsf + +Upstream-Status: Submitted [https://github.com/slicer69/sysvinit/pull/13] + +--- + src/Makefile | 53 +++++++++++++++++++++++++++++----------------------- + 1 file changed, 30 insertions(+), 23 deletions(-) + +diff --git a/src/Makefile b/src/Makefile +index 1b368dc..5b1a5a2 100644 +--- a/src/Makefile ++++ b/src/Makefile +@@ -77,7 +77,14 @@ else + INSTALL_DATA = install -m 644 + endif + INSTALL_DIR = install -m 755 -d +-MANDIR = /usr/share/man ++ ++ROOT ?= ++base_bindir ?= /bin ++base_sbindir ?= /sbin ++bindir ?= /usr/bin ++sysconfdir ?= /etc ++includedir ?= /usr/include ++mandir ?= /usr/share/man + + ifeq ($(WITH_SELINUX),yes) + SELINUX_DEF = -DWITH_SELINUX +@@ -191,43 +198,43 @@ clobber: cleanobjs + distclean: clobber + + install: all +- $(INSTALL_DIR) $(ROOT)/bin/ $(ROOT)/sbin/ +- $(INSTALL_DIR) $(ROOT)/usr/bin/ ++ $(INSTALL_DIR) $(ROOT)$(base_bindir)/ $(ROOT)$(base_sbindir)/ ++ $(INSTALL_DIR) $(ROOT)$(bindir)/ + for i in $(BIN); do \ +- $(INSTALL_EXEC) $$i $(ROOT)/bin/ ; \ ++ $(INSTALL_EXEC) $$i $(ROOT)$(base_bindir)/ ; \ + done + for i in $(SBIN); do \ +- $(INSTALL_EXEC) $$i $(ROOT)/sbin/ ; \ ++ $(INSTALL_EXEC) $$i $(ROOT)$(base_sbindir)/ ; \ + done + for i in $(USRBIN); do \ +- $(INSTALL_EXEC) $$i $(ROOT)/usr/bin/ ; \ ++ $(INSTALL_EXEC) $$i $(ROOT)$(bindir)/ ; \ + done + # $(INSTALL_DIR) $(ROOT)/etc/ + $(INSTALL_DIR) $(ROOT)/etc/inittab.d + # $(INSTALL_EXEC) ../doc/initscript.sample $(ROOT)/etc/ +- ln -sf halt $(ROOT)/sbin/reboot +- ln -sf halt $(ROOT)/sbin/poweroff +- ln -sf init $(ROOT)/sbin/telinit +- ln -sf /sbin/killall5 $(ROOT)/bin/pidof +- if [ ! -f $(ROOT)/usr/bin/lastb ]; then \ +- ln -sf last $(ROOT)/usr/bin/lastb; \ ++ ln -sf halt $(ROOT)$(base_sbindir)/reboot ++ ln -sf halt $(ROOT)$(base_sbindir)/poweroff ++ ln -sf init $(ROOT)$(base_sbindir)/telinit ++ ln -sf $(base_sbindir)/killall5 $(ROOT)$(base_bindir)/pidof ++ if [ ! -f $(ROOT)$(bindir)/lastb ]; then \ ++ ln -sf last $(ROOT)$(bindir)/lastb; \ + fi +- $(INSTALL_DIR) $(ROOT)/usr/include/ +- $(INSTALL_DATA) initreq.h $(ROOT)/usr/include/ +- $(INSTALL_DIR) $(ROOT)$(MANDIR)/man1/ +- $(INSTALL_DIR) $(ROOT)$(MANDIR)/man5/ +- $(INSTALL_DIR) $(ROOT)$(MANDIR)/man8/ ++ $(INSTALL_DIR) $(ROOT)$(includedir)/ ++ $(INSTALL_DATA) initreq.h $(ROOT)$(includedir)/ ++ $(INSTALL_DIR) $(ROOT)$(mandir)/man1/ ++ $(INSTALL_DIR) $(ROOT)$(mandir)/man5/ ++ $(INSTALL_DIR) $(ROOT)$(mandir)/man8/ + for man in $(MAN1); do \ +- $(INSTALL_DATA) ../man/$$man $(ROOT)$(MANDIR)/man1/; \ +- sed -i "1{ $(MANDB); }" $(ROOT)$(MANDIR)/man1/$$man ; \ ++ $(INSTALL_DATA) ../man/$$man $(ROOT)$(mandir)/man1/; \ ++ sed -i "1{ $(MANDB); }" $(ROOT)$(mandir)/man1/$$man ; \ + done + for man in $(MAN5); do \ +- $(INSTALL_DATA) ../man/$$man $(ROOT)$(MANDIR)/man5/; \ +- sed -i "1{ $(MANDB); }" $(ROOT)$(MANDIR)/man5/$$man ; \ ++ $(INSTALL_DATA) ../man/$$man $(ROOT)$(mandir)/man5/; \ ++ sed -i "1{ $(MANDB); }" $(ROOT)$(mandir)/man5/$$man ; \ + done + for man in $(MAN8); do \ +- $(INSTALL_DATA) ../man/$$man $(ROOT)$(MANDIR)/man8/; \ +- sed -i "1{ $(MANDB); }" $(ROOT)$(MANDIR)/man8/$$man ; \ ++ $(INSTALL_DATA) ../man/$$man $(ROOT)$(mandir)/man8/; \ ++ sed -i "1{ $(MANDB); }" $(ROOT)$(mandir)/man8/$$man ; \ + done + ifeq ($(ROOT),) + # diff --git a/meta/recipes-core/sysvinit/sysvinit/pidof-add-m-option.patch b/meta/recipes-core/sysvinit/sysvinit/pidof-add-m-option.patch new file mode 100644 index 0000000000..8ef292ed12 --- /dev/null +++ b/meta/recipes-core/sysvinit/sysvinit/pidof-add-m-option.patch @@ -0,0 +1,191 @@ +From 0e441712d0e366a0384ff3fa879f5a2d2607c24f Mon Sep 17 00:00:00 2001 +From: Hongxu Jia <hongxu.jia@windriver.com> +Date: Wed, 24 Jul 2013 17:07:22 +0800 +Subject: [PATCH] pidof: add -m option + +When used with -o, will also omit any processes that have the same +argv[0] and argv[1] as any explicitly omitted process ids. This can be +used to avoid multiple shell scripts concurrently calling pidof returning +each other's pids. + +https://bugzilla.redhat.com/show_bug.cgi?id=883856 + +Upstream-Status: Backport +Imported patch from: https://bugzilla.redhat.com/attachment.cgi?id=658166 + +Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> + +--- + man/pidof.8 | 6 +++++ + src/killall5.c | 62 +++++++++++++++++++++++++++++++++++++++++++++++--- + 2 files changed, 65 insertions(+), 3 deletions(-) + +diff --git a/man/pidof.8 b/man/pidof.8 +index 6866cb3..a87d878 100644 +--- a/man/pidof.8 ++++ b/man/pidof.8 +@@ -25,6 +25,7 @@ pidof - find the process ID of a running program + .RB [ \-n ] + .RB [ \-x ] + .RB [ \-z ] ++.RB [ \-m ] + .RB [ \-o + .IR omitpid[,omitpid...] ] + .RB [ \-o +@@ -77,6 +78,11 @@ is shown. The default separator is a space. + Tells \fIpidof\fP to omit processes with that process id. The special + pid \fB%PPID\fP can be used to name the parent process of the \fBpidof\fP + program, in other words the calling shell or shell script. ++.IP -m ++When used with -o, will also omit any processes that have the same ++argv[0] and argv[1] as any explicitly omitted process ids. This can be ++used to avoid multiple shell scripts concurrently calling pidof returning ++each other's pids. + .SH "EXIT STATUS" + .TP + .B 0 +diff --git a/src/killall5.c b/src/killall5.c +index b0728fa..72289e3 100644 +--- a/src/killall5.c ++++ b/src/killall5.c +@@ -121,6 +121,7 @@ typedef struct _s_nfs + + /* List of processes. */ + PROC *plist; ++PROC *olist; + + /* List of processes to omit. */ + OMIT *omit; +@@ -356,6 +357,20 @@ static void clear_mnt(void) + } + } + ++static void clear_omit(void) ++{ ++ OMIT *o; ++ PROC *p; ++ for (o = omit; o; o = omit) { ++ omit = omit->next; ++ free(o); ++ } ++ for (p = olist; p; p = olist) { ++ olist = olist->next; ++ free(p); ++ } ++} ++ + /* + * Check if path is a shadow off a NFS partition. + */ +@@ -481,6 +496,7 @@ int readproc() + DIR *dir; + FILE *fp; + PROC *p, *n; ++ OMIT *o, *m; + struct dirent *d; + char path[PATH_MAX+1]; + char buf[PATH_MAX+1]; +@@ -670,6 +686,17 @@ int readproc() + p->next = plist; + plist = p; + p->pid = pid; ++ /* Could be smarter, but it's a small list. */ ++ m = omit; ++ for (o = omit; m; o = m) { ++ m = o->next; ++ if (o->pid == p->pid) { ++ n = (PROC*)xmalloc(sizeof(PROC)); ++ *n = *p; ++ n->next = olist; ++ olist = n; ++ } ++ } + } + closedir(dir); + +@@ -870,6 +897,26 @@ PIDQ_HEAD *pidof(char *prog) + return q; + } + ++int matches(PROC *o, PROC *p) ++{ ++ int ret = 0; ++ char *oargv1, *pargv1; ++ if ((o->argv0 && p->argv0 && !strcmp(o->argv0,p->argv0))) { ++ if (o->argv1 && p->argv1) { ++ if ((oargv1 = canonicalize_file_name(o->argv1)) == NULL) ++ oargv1 = strdup(o->argv1); ++ if ((pargv1 = canonicalize_file_name(p->argv1)) == NULL) ++ pargv1 = strdup(p->argv1); ++ if (! strcmp(oargv1, pargv1)) { ++ ret = 1; ++ } ++ free(oargv1); ++ free(pargv1); ++ } ++ } ++ return ret; ++} ++ + /* Give usage message and exit. */ + void usage(void) + { +@@ -920,6 +967,7 @@ void nsyslog(int pri, char *fmt, ...) + #define PIDOF_OMIT 0x02 + #define PIDOF_NETFS 0x04 + #define PIDOF_QUIET 0x08 ++#define PIDOF_OMIT_OMIT_MATCHES 0x08 + + /* + * Pidof functionality. +@@ -937,6 +985,7 @@ int main_pidof(int argc, char **argv) + char tmp[512]; + char sep = ' '; + ++ olist = (PROC*)0; + omit = (OMIT*)0; + nlist = (NFS*)0; + opterr = 0; +@@ -944,7 +993,7 @@ int main_pidof(int argc, char **argv) + if ((token = getenv("PIDOF_NETFS")) && (strcmp(token,"no") != 0)) + flags |= PIDOF_NETFS; + +- while ((opt = getopt(argc,argv,"qhco:d:sxzn")) != EOF) switch (opt) { ++ while ((opt = getopt(argc,argv,"qhcmo:d:sxzn")) != EOF) switch (opt) { + case '?': + nsyslog(LOG_ERR,"invalid options on command line!\n"); + closelog(); +@@ -995,6 +1044,9 @@ int main_pidof(int argc, char **argv) + case 'z': + list_dz_processes = TRUE; + break; ++ case 'm': ++ flags |= PIDOF_OMIT_OMIT_MATCHES; ++ break; + case 'n': + flags |= PIDOF_NETFS; + break; +@@ -1026,10 +1078,13 @@ int main_pidof(int argc, char **argv) + pid_t spid = 0; + while ((p = get_next_from_pid_q(q))) { + if ((flags & PIDOF_OMIT) && omit) { +- OMIT * optr; +- for (optr = omit; optr; optr = optr->next) { ++ PROC * optr; ++ for (optr = olist; optr; optr = optr->next) { + if (optr->pid == p->pid) + break; ++ if (flags & PIDOF_OMIT_OMIT_MATCHES) ++ if (matches(optr, p)) ++ break; + } + + /* +@@ -1071,6 +1126,7 @@ int main_pidof(int argc, char **argv) + printf("\n"); + } + ++ clear_omit(); + clear_mnt(); + + closelog(); diff --git a/meta/recipes-core/sysvinit/sysvinit/rc b/meta/recipes-core/sysvinit/sysvinit/rc index 7ca41ae1ae..41196ec90b 100755 --- a/meta/recipes-core/sysvinit/sysvinit/rc +++ b/meta/recipes-core/sysvinit/sysvinit/rc @@ -17,6 +17,7 @@ . /etc/default/rcS export VERBOSE +export PSPLASH_FIFO_DIR startup_progress() { step=$(($step + $step_change)) @@ -26,11 +27,8 @@ startup_progress() { progress=$progress_size fi #echo "PROGRESS is $progress $runlevel $first_step + ($step of $num_steps) $step_change $progress_size" - #if type psplash-write >/dev/null 2>&1; then - # TMPDIR=/mnt/.psplash psplash-write "PROGRESS $progress" || true - #fi - if [ -e /mnt/.psplash/psplash_fifo ]; then - echo "PROGRESS $progress" > /mnt/.psplash/psplash_fifo + if type psplash-write >/dev/null 2>&1; then + psplash-write "PROGRESS $progress" || true fi } @@ -66,7 +64,7 @@ startup() { stty onlcr 0>&1 # Limit stack size for startup scripts - [ "$STACK_SIZE" == "" ] || ulimit -S -s $STACK_SIZE + [ "$STACK_SIZE" = "" ] || ulimit -S -s $STACK_SIZE # Now find out what the current and what the previous runlevel are. @@ -162,6 +160,9 @@ startup() { # [ -f $previous_start ] && [ ! -f $stop ] && continue fi + if [ x"${PSPLASH_TEXT_UPDATES}" = x"yes" ]; then + psplash-write "MSG $(basename $i .sh | cut -c 4-)" || true + fi case "$runlevel" in 0|6) startup $i stop @@ -176,7 +177,6 @@ startup() { #Uncomment to cause psplash to exit manually, otherwise it exits when it sees a VC switch if [ "x$runlevel" != "xS" ] && [ ! -x /etc/rc${runlevel}.d/S??xserver-nodm ]; then if type psplash-write >/dev/null 2>&1; then - TMPDIR=/mnt/.psplash psplash-write "QUIT" || true - umount -l /mnt/.psplash + psplash-write "QUIT" || true fi fi diff --git a/meta/recipes-core/sysvinit/sysvinit/rcS-default b/meta/recipes-core/sysvinit/sysvinit/rcS-default index 709cdf6ec5..f7c4a2f841 100644 --- a/meta/recipes-core/sysvinit/sysvinit/rcS-default +++ b/meta/recipes-core/sysvinit/sysvinit/rcS-default @@ -27,3 +27,10 @@ VOLATILE_ENABLE_CACHE=yes # Setting ROOTFS_READ_ONLY to yes and rebooting will give you a read-only rootfs. # Normally you should not change this value. ROOTFS_READ_ONLY=no +# rcS is also used when using busybox init and shares initscripts, some initscripts +# need to have specific behavior depending on init system +INIT_SYSTEM=sysvinit +# set the psplash fifo directory +PSPLASH_FIFO_DIR=/mnt +# psplash textual updates knob +PSPLASH_TEXT_UPDATES=#PSPLASH_TEXT# diff --git a/meta/recipes-core/sysvinit/sysvinit/realpath.patch b/meta/recipes-core/sysvinit/sysvinit/realpath.patch index 5e0dca3bf1..b559aa3b49 100644 --- a/meta/recipes-core/sysvinit/sysvinit/realpath.patch +++ b/meta/recipes-core/sysvinit/sysvinit/realpath.patch @@ -1,58 +1,27 @@ -Fix build on musl use realpath() API its available on all libcs +From eb158c97f19d473d01befe96359a7f93ae834517 Mon Sep 17 00:00:00 2001 +From: Khem Raj <raj.khem@gmail.com> +Date: Thu, 19 Nov 2015 00:10:03 +0000 +Subject: [PATCH] Fix build on musl use realpath() API its available on all + libcs realpath() API doesnt work on systems with PATH_MAX set to be unlimited e.g. GNU/Hurd However for Linux it should always work -Upstream-Status: Inappropriate[Linux specific] +Upstream-Status: Inappropriate [Linux specific] Signed-off-by: Khem Raj <raj.khem@gmail.com> -Index: sysvinit-2.88dsf/src/ifdown.c -=================================================================== ---- sysvinit-2.88dsf.orig/src/ifdown.c 2010-03-23 07:37:01.000000000 -0700 -+++ sysvinit-2.88dsf/src/ifdown.c 2014-04-02 00:43:43.675437029 -0700 -@@ -26,11 +26,11 @@ - #include <unistd.h> - #include <time.h> - #include <string.h> -+#include <errno.h> - - #include <sys/ioctl.h> - #include <sys/socket.h> - #include <sys/time.h> --#include <sys/errno.h> - - #include <net/if.h> - #include <netinet/in.h> -Index: sysvinit-2.88dsf/src/init.c -=================================================================== ---- sysvinit-2.88dsf.orig/src/init.c 2014-04-02 00:42:10.488770162 -0700 -+++ sysvinit-2.88dsf/src/init.c 2014-04-02 00:42:59.432103823 -0700 -@@ -49,6 +49,7 @@ - #include <utmp.h> - #include <ctype.h> - #include <stdarg.h> -+#include <sys/ttydefaults.h> - #include <sys/syslog.h> - #include <sys/time.h> - -Index: sysvinit-2.88dsf/src/mountpoint.c -=================================================================== ---- sysvinit-2.88dsf.orig/src/mountpoint.c 2009-09-10 01:28:49.000000000 -0700 -+++ sysvinit-2.88dsf/src/mountpoint.c 2014-04-02 00:44:18.248770942 -0700 -@@ -23,6 +23,7 @@ - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - */ - -+#include <sys/types.h> - #include <sys/stat.h> - #include <unistd.h> - #include <stdlib.h> -Index: sysvinit-2.88dsf/src/killall5.c -=================================================================== ---- sysvinit-2.88dsf.orig/src/killall5.c 2014-03-26 00:49:52.982668074 -0700 -+++ sysvinit-2.88dsf/src/killall5.c 2014-04-02 00:46:45.838771653 -0700 -@@ -846,9 +846,9 @@ +--- + src/killall5.c | 4 ++-- + src/mountpoint.c | 1 + + src/wall.c | 1 + + 3 files changed, 4 insertions(+), 2 deletions(-) + +diff --git a/src/killall5.c b/src/killall5.c +index a664954..9798423 100644 +--- a/src/killall5.c ++++ b/src/killall5.c +@@ -977,9 +977,9 @@ int matches(PROC *o, PROC *p) char *oargv1, *pargv1; if ((o->argv0 && p->argv0 && !strcmp(o->argv0,p->argv0))) { if (o->argv1 && p->argv1) { @@ -64,14 +33,26 @@ Index: sysvinit-2.88dsf/src/killall5.c pargv1 = strdup(p->argv1); if (! strcmp(oargv1, pargv1)) { ret = 1; -Index: sysvinit-2.88dsf/src/wall.c -=================================================================== ---- sysvinit-2.88dsf.orig/src/wall.c 2009-11-22 14:05:53.000000000 -0800 -+++ sysvinit-2.88dsf/src/wall.c 2014-04-02 00:49:15.258772217 -0700 -@@ -29,6 +29,7 @@ +diff --git a/src/mountpoint.c b/src/mountpoint.c +index b24335e..5f20522 100644 +--- a/src/mountpoint.c ++++ b/src/mountpoint.c +@@ -23,6 +23,7 @@ + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + */ + ++#include <sys/types.h> + #include <sys/stat.h> #include <unistd.h> + #include <stdlib.h> +diff --git a/src/wall.c b/src/wall.c +index d3a2c70..00826e9 100644 +--- a/src/wall.c ++++ b/src/wall.c +@@ -30,6 +30,7 @@ #include <pwd.h> #include <syslog.h> + #include <sys/types.h> +#include <time.h> #include "init.h" diff --git a/meta/recipes-core/sysvinit/sysvinit/sysvinit_remove_linux_fs.patch b/meta/recipes-core/sysvinit/sysvinit/sysvinit_remove_linux_fs.patch new file mode 100644 index 0000000000..89d65c23b7 --- /dev/null +++ b/meta/recipes-core/sysvinit/sysvinit/sysvinit_remove_linux_fs.patch @@ -0,0 +1,17 @@ +# From glibc 2.36, <linux/mount.h> (included from <linux/fs.h>) and +# <sys/mount.h> (included from glibc) are no longer compatible: +# https://sourceware.org/glibc/wiki/Release/2.36#Usage_of_.3Clinux.2Fmount.h.3E_and_.3Csys.2Fmount.h.3E + +Upstream-Status: Pending +Signed-off-by: Khem Raj <raj.khem@gmail.com> + +--- sysvinit-3.04/src/sulogin.c.orig 2022-08-07 23:07:42.952576274 +0200 ++++ sysvinit-3.04/src/sulogin.c 2022-08-07 23:08:26.511470983 +0200 +@@ -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 |