mirror of
https://github.com/gentoo-mirror/gentoo.git
synced 2026-09-24 04:59:14 -07:00
app-misc/screen: Fix building on musl libc, bug #639424
Closes: https://bugs.gentoo.org/639424 Package-Manager: Portage-2.3.14, Repoman-2.3.6
This commit is contained in:
62
app-misc/screen/files/screen-4.4.0-utmp-musl.patch
Normal file
62
app-misc/screen/files/screen-4.4.0-utmp-musl.patch
Normal file
@@ -0,0 +1,62 @@
|
||||
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
|
||||
@@ -1,4 +1,4 @@
|
||||
# Copyright 1999-2017 Gentoo Foundation
|
||||
# Copyright 1999-2018 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=5
|
||||
@@ -26,6 +26,7 @@ DEPEND="${CDEPEND}
|
||||
# - Don't use utempter even if it is found on the system.
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${PN}-4.3.0-no-utempter.patch
|
||||
"${FILESDIR}"/${P}-utmp-musl.patch
|
||||
)
|
||||
|
||||
pkg_setup() {
|
||||
|
||||
Reference in New Issue
Block a user