You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
gentoo-overlay/app-misc/screen/files/screen-4.4.0-utmp-musl.patch

63 lines
1.7 KiB

From 74fdc8988b55633cd05f8625390cd3f6a8102003 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Amadeusz=20S=C5=82awi=C5=84ski?= <amade@asmblr.net>
Date: Sat, 13 Jun 2015 17:52:46 +0200
Subject: [PATCH] change checks for utmp/utmpx in header
linuxes should've working utmpx, so this check was bit weird
commit 2b1bdf96 mentions some "linux workaround", but nothing specific
fixes build with musl libc
---
os.h | 7 ++++---
utmp.c | 4 ++--
2 files changed, 6 insertions(+), 5 deletions(-)
diff --git a/os.h b/os.h
index 55de249..e827ac9 100644
--- a/os.h
+++ b/os.h
@@ -250,9 +250,11 @@ extern int errno;
#endif
#if defined(UTMPOK) || defined(BUGGYGETLOGIN)
-# if defined(SVR4) && !defined(DGUX) && !defined(__hpux) && !defined(linux)
+# if defined(SVR4) && !defined(DGUX) && !defined(__hpux)
# include <utmpx.h>
-# define UTMPFILE UTMPX_FILE
+# ifdef UTMPX_FILE /* GNU extension */
+# define UTMPFILE UTMPX_FILE
+# endif
# define utmp utmpx
# define getutent getutxent
# define getutid getutxid
@@ -260,7 +262,6 @@ extern int errno;
# define pututline pututxline
# define setutent setutxent
# define endutent endutxent
-# define ut_time ut_xtime
# else /* SVR4 */
# include <utmp.h>
# endif /* SVR4 */
diff --git a/utmp.c b/utmp.c
index fa8b87b..f5d7db8 100644
--- a/utmp.c
+++ b/utmp.c
@@ -631,7 +631,7 @@ int pid;
/* must use temp variable because of NetBSD/sparc64, where
* ut_xtime is long(64) but time_t is int(32) */
(void)time(&now);
- u->ut_time = now;
+ u->ut_tv.tv_sec = now;
}
static slot_t
@@ -743,7 +743,7 @@ int pid;
strncpy(u->ut_line, line, sizeof(u->ut_line));
strncpy(u->ut_name, user, sizeof(u->ut_name));
(void)time(&now);
- u->ut_time = now;
+ u->ut_tv.tv_sec = now;
}
static slot_t