mirror of
https://gitlab.alpinelinux.org/alpine/aports.git
synced 2025-12-25 03:12:08 +01:00
104 lines
3.3 KiB
Diff
104 lines
3.3 KiB
Diff
From: Jakub Jirutka <jakub@jirutka.cz>
|
|
Date: Mon, 20 Dec 2021 18:52:00 +0100
|
|
Subject: [PATCH] Add support for utmps
|
|
|
|
Allow to link programs that use utmpx.h with utmps by passing relevant -I
|
|
and -l flags via variable UTMPX_CFLAGS and UTMPX_LIBS, respectively.
|
|
The following programs use utmpx.h: last, login, lslogins, agetty, wall, write.
|
|
|
|
Programs 'su' and 'runuser' include utmpx.h, but use only btmp which is not
|
|
supported on Alpine.
|
|
|
|
'utmpdump' includes utmpx.h, but doesn't log anything, just parses utmp/wtmp
|
|
files, so doesn't need to be linked with utmps.
|
|
|
|
--- a/include/pathnames.h
|
|
+++ b/include/pathnames.h
|
|
@@ -214,5 +214,13 @@
|
|
#define _PATH_DEV_RFKILL "/dev/rfkill"
|
|
#define _PATH_SYS_RFKILL "/sys/class/rfkill"
|
|
|
|
+#ifdef UTMPS_UTMPX_H
|
|
+/* override stub paths from <paths.h> with ones for utmps */
|
|
+# undef _PATH_UTMP
|
|
+# define _PATH_UTMP UTMPX_FILE
|
|
+# undef _PATH_WTMP
|
|
+# define _PATH_WTMP "/var/log/wtmp"
|
|
+#endif
|
|
+
|
|
|
|
#endif /* PATHNAMES_H */
|
|
--- a/login-utils/Makemodule.am
|
|
+++ b/login-utils/Makemodule.am
|
|
@@ -5,7 +5,8 @@
|
|
dist_noinst_DATA += login-utils/last.1.adoc
|
|
MANLINKS += login-utils/lastb.1
|
|
last_SOURCES = login-utils/last.c lib/monotonic.c
|
|
-last_LDADD = $(LDADD) libcommon.la $(REALTIME_LIBS)
|
|
+last_CFLAGS = $(AM_CFLAGS) $(UTMPX_CFLAGS)
|
|
+last_LDADD = $(LDADD) libcommon.la $(UTMPX_LIBS) $(REALTIME_LIBS)
|
|
|
|
install-exec-hook-last:
|
|
cd $(DESTDIR)$(usrbin_execdir) && ln -sf last lastb
|
|
@@ -61,7 +62,9 @@
|
|
login-utils/login.c \
|
|
login-utils/logindefs.c \
|
|
login-utils/logindefs.h
|
|
-login_LDADD = $(LDADD) libcommon.la -lpam
|
|
+login_CFLAGS = $(AM_CFLAGS) $(UTMPX_CFLAGS)
|
|
+login_LDADD = $(LDADD) libcommon.la $(UTMPX_LIBS) -lpam
|
|
+
|
|
if HAVE_LINUXPAM
|
|
login_LDADD += -lpam_misc
|
|
endif
|
|
@@ -237,8 +242,8 @@
|
|
login-utils/lslogins.c \
|
|
login-utils/logindefs.c \
|
|
login-utils/logindefs.h
|
|
-lslogins_LDADD = $(LDADD) libcommon.la libsmartcols.la
|
|
-lslogins_CFLAGS = $(AM_CFLAGS) -I$(ul_libsmartcols_incdir)
|
|
+lslogins_LDADD = $(LDADD) libcommon.la libsmartcols.la $(UTMPX_LIBS)
|
|
+lslogins_CFLAGS = $(AM_CFLAGS) $(UTMPX_CFLAGS) -I$(ul_libsmartcols_incdir)
|
|
if HAVE_SELINUX
|
|
lslogins_LDADD += -lselinux
|
|
endif
|
|
--- a/term-utils/Makemodule.am
|
|
+++ b/term-utils/Makemodule.am
|
|
@@ -47,10 +47,11 @@
|
|
MANPAGES += term-utils/agetty.8
|
|
dist_noinst_DATA += term-utils/agetty.8.adoc
|
|
agetty_SOURCES = term-utils/agetty.c
|
|
+agetty_CFLAGS = $(AM_CFLAGS) $(UTMPX_CFLAGS)
|
|
if USE_PLYMOUTH_SUPPORT
|
|
agetty_SOURCES += lib/plymouth-ctrl.c
|
|
endif
|
|
-agetty_LDADD = $(LDADD) libcommon.la
|
|
+agetty_LDADD = $(LDADD) libcommon.la $(UTMPX_LIBS)
|
|
if BSD
|
|
agetty_LDADD += -lutil
|
|
endif
|
|
@@ -91,9 +92,9 @@
|
|
term-utils/ttymsg.h
|
|
MANPAGES += term-utils/wall.1
|
|
dist_noinst_DATA += term-utils/wall.1.adoc
|
|
-wall_CFLAGS = $(SUID_CFLAGS) $(AM_CFLAGS)
|
|
+wall_CFLAGS = $(SUID_CFLAGS) $(AM_CFLAGS) $(UTMPX_CFLAGS)
|
|
wall_LDFLAGS = $(SUID_LDFLAGS) $(AM_LDFLAGS)
|
|
-wall_LDADD = $(LDADD) libcommon.la
|
|
+wall_LDADD = $(LDADD) libcommon.la $(UTMPX_LIBS)
|
|
if USE_TTY_GROUP
|
|
if MAKEINSTALL_DO_CHOWN
|
|
install-exec-hook-wall::
|
|
@@ -111,9 +112,9 @@
|
|
MANPAGES += term-utils/write.1
|
|
dist_noinst_DATA += term-utils/write.1.adoc
|
|
write_SOURCES = term-utils/write.c
|
|
-write_CFLAGS = $(SUID_CFLAGS) $(AM_CFLAGS)
|
|
+write_CFLAGS = $(SUID_CFLAGS) $(AM_CFLAGS) $(UTMPX_CFLAGS)
|
|
write_LDFLAGS = $(SUID_LDFLAGS) $(AM_LDFLAGS)
|
|
-write_LDADD = $(LDADD) libcommon.la
|
|
+write_LDADD = $(LDADD) libcommon.la $(UTMPX_LIBS)
|
|
|
|
if USE_TTY_GROUP
|
|
if MAKEINSTALL_DO_CHOWN
|