screen: Replace patches with upstream backportslilik-openwrt-22.03
@ -0,0 +1,128 @@ | |||||
From 8c2b4061d16756ee2ed37f08db063b8215656943 Mon Sep 17 00:00:00 2001 | |||||
From: Hongxu Jia <hongxu.jia@windriver.com> | |||||
Date: Thu, 2 Nov 2017 16:48:15 +0800 | |||||
Subject: [PATCH] fix configure failed while build dir name contains "yes" | |||||
While build dir name contained "yes", and compiled with | |||||
producing debugging information (-g), the configure failed. | |||||
The pattern of AC_EGREP_CPP (string "yes") mismatched with | |||||
dir name. It caused the test of AC_EGREP_CPP incorrect. | |||||
Use YES_IS_DEFINED to replace yes which is not often used | |||||
as dir name. | |||||
Bug: 52329 | |||||
(Fix release v.4.6.2 or above) | |||||
Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> | |||||
--- | |||||
configure.ac | 32 ++++++++++++++++---------------- | |||||
1 file changed, 16 insertions(+), 16 deletions(-) | |||||
diff --git a/src/configure.ac b/src/configure.ac | |||||
index 28237f5..34f9735 100644 | |||||
--- a/configure.ac | |||||
+++ b/configure.ac | |||||
@@ -151,9 +151,9 @@ fi | |||||
AC_CHECKING(for Ultrix) | |||||
-AC_EGREP_CPP(yes, | |||||
+AC_EGREP_CPP(YES_IS_DEFINED, | |||||
[#if defined(ultrix) || defined(__ultrix) | |||||
- yes; | |||||
+ YES_IS_DEFINED; | |||||
#endif | |||||
], ULTRIX=1) | |||||
@@ -168,9 +168,9 @@ dnl ghazi@caip.rutgers.edu (Kaveh R. Ghazi): | |||||
dnl BBN butterfly is not POSIX, but a MACH BSD system. | |||||
dnl Do not define POSIX and TERMIO. | |||||
AC_CHECKING(for butterfly) | |||||
-AC_EGREP_CPP(yes, | |||||
+AC_EGREP_CPP(YES_IS_DEFINED, | |||||
[#if defined(butterfly) | |||||
- yes; | |||||
+ YES_IS_DEFINED; | |||||
#endif | |||||
], butterfly=1) | |||||
@@ -179,12 +179,12 @@ if test -n "$ULTRIX"; then | |||||
test -z "$GCC" && CC="$CC -YBSD" | |||||
fi | |||||
AC_CHECKING(for POSIX.1) | |||||
-AC_EGREP_CPP(yes, | |||||
+AC_EGREP_CPP(YES_IS_DEFINED, | |||||
[#include <sys/types.h> | |||||
#include <unistd.h> | |||||
main () { | |||||
#ifdef _POSIX_VERSION | |||||
- yes; | |||||
+ YES_IS_DEFINED; | |||||
#endif | |||||
], AC_NOTE(- you have a POSIX system) AC_DEFINE(POSIX) posix=1) | |||||
fi | |||||
@@ -196,9 +196,9 @@ AC_TRY_COMPILE( | |||||
#include <fcntl.h>], [int x = SIGCHLD | FNDELAY;], , AC_DEFINE(SYSV)) | |||||
AC_CHECKING(for sequent/ptx) | |||||
-AC_EGREP_CPP(yes, | |||||
+AC_EGREP_CPP(YES_IS_DEFINED, | |||||
[#ifdef _SEQUENT_ | |||||
- yes; | |||||
+ YES_IS_DEFINED; | |||||
#endif | |||||
], LIBS="$LIBS -lsocket -linet";seqptx=1) | |||||
@@ -213,9 +213,9 @@ AC_TRY_LINK([#include <utmpx.h> | |||||
AC_CHECK_HEADERS([stropts.h string.h strings.h]) | |||||
AC_CHECKING(for Solaris 2.x) | |||||
-AC_EGREP_CPP(yes, | |||||
+AC_EGREP_CPP(YES_IS_DEFINED, | |||||
[#if defined(SVR4) && defined(sun) | |||||
- yes | |||||
+ YES_IS_DEFINED; | |||||
#endif | |||||
], LIBS="$LIBS -lsocket -lnsl -lkstat") | |||||
@@ -699,9 +699,9 @@ else | |||||
pdir='/dev' | |||||
fi | |||||
dnl SCO uses ptyp%d | |||||
-AC_EGREP_CPP(yes, | |||||
+AC_EGREP_CPP(YES_IS_DEFINED, | |||||
[#ifdef M_UNIX | |||||
- yes; | |||||
+ YES_IS_DEFINED; | |||||
#endif | |||||
], ptys=`echo /dev/ptyp??`, ptys=`echo $pdir/pty??`) | |||||
dnl if test -c /dev/ptyp19; then | |||||
@@ -878,9 +878,9 @@ fi | |||||
) | |||||
if test -z "$load" ; then | |||||
-AC_EGREP_CPP(yes, | |||||
+AC_EGREP_CPP(YES_IS_DEFINED, | |||||
[#if defined(NeXT) || defined(apollo) || defined(linux) | |||||
- yes; | |||||
+ YES_IS_DEFINED; | |||||
#endif | |||||
], load=1) | |||||
fi | |||||
@@ -1105,9 +1105,9 @@ AC_CHECKING(syslog in libbsd.a) | |||||
AC_TRY_LINK(, [closelog();], AC_NOTE(- found.), [LIBS="$oldlibs" | |||||
AC_NOTE(- bad news: syslog missing.) AC_DEFINE(NOSYSLOG)])]) | |||||
-AC_EGREP_CPP(yes, | |||||
+AC_EGREP_CPP(YES_IS_DEFINED, | |||||
[#ifdef M_UNIX | |||||
- yes; | |||||
+ YES_IS_DEFINED; | |||||
#endif | |||||
], LIBS="$LIBS -lsocket -lcrypt_i") | |||||
-- | |||||
2.17.1 | |||||
@ -0,0 +1,44 @@ | |||||
From 5c3643fb701cc380ceb02116526ef4f5885295d0 Mon Sep 17 00:00:00 2001 | |||||
From: =?UTF-8?q?Amadeusz=20S=C5=82awi=C5=84ski?= <amade@asmblr.net> | |||||
Date: Sat, 16 Dec 2017 15:09:57 +0100 | |||||
Subject: [PATCH] fix: configure option "--disable-use-locale" is not working | |||||
Bug: 52663 | |||||
--- | |||||
acconfig.h | 2 +- | |||||
configure.ac | 6 +++++- | |||||
2 files changed, 6 insertions(+), 2 deletions(-) | |||||
diff --git a/src/acconfig.h b/src/acconfig.h | |||||
index 4e5cda0..6ff2d32 100644 | |||||
--- a/acconfig.h | |||||
+++ b/acconfig.h | |||||
@@ -274,7 +274,7 @@ | |||||
* Define USE_LOCALE if you want screen to use the locale names | |||||
* for the name of the month and day of the week. | |||||
*/ | |||||
-#define USE_LOCALE | |||||
+#undef USE_LOCALE | |||||
/* | |||||
* Define USE_PAM if your system supports PAM (Pluggable Authentication | |||||
diff --git a/src/configure.ac b/src/configure.ac | |||||
index 34f9735..d1bc42c 100644 | |||||
--- a/configure.ac | |||||
+++ b/configure.ac | |||||
@@ -1246,7 +1246,11 @@ if test "$enable_pam" = "yes"; then | |||||
AC_MSG_RESULT(no);LIBS="$oldlibs") | |||||
fi | |||||
-AC_ARG_ENABLE(use_locale, [ --enable-use-locale use localized month/day names]) | |||||
+AC_ARG_ENABLE(use-locale, | |||||
+ [ --enable-use-locale use localized month/day names (default: yes)], | |||||
+ [], | |||||
+ [enable_use_locale=yes] | |||||
+) | |||||
if test "$enable_use_locale" = "yes"; then | |||||
AC_DEFINE(USE_LOCALE) | |||||
fi | |||||
-- | |||||
2.17.1 | |||||
@ -0,0 +1,65 @@ | |||||
From 6b320186db7df1e58fdd2c836af54c86cc596981 Mon Sep 17 00:00:00 2001 | |||||
From: Jussi Kukkonen <jussi.kukkonen@intel.com> | |||||
Date: Sat, 24 Feb 2018 15:09:10 +0100 | |||||
Subject: [PATCH] [PATCH 1/4] Remove redundant compiler sanity checks | |||||
AC_PROG_CC already performs sanity checks. And unlike the removed | |||||
checks, it does so in a way that supports cross compilation. | |||||
Modified from patch by Maarten ter Huurne. | |||||
Upstream-Status: Submitted [http://savannah.gnu.org/bugs/?43223] | |||||
Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com> | |||||
--- | |||||
configure.ac | 27 --------------------------- | |||||
1 file changed, 27 deletions(-) | |||||
diff --git a/src/configure.ac b/src/configure.ac | |||||
index d1bc42c..a8208ea 100644 | |||||
--- a/configure.ac | |||||
+++ b/configure.ac | |||||
@@ -48,31 +48,6 @@ AC_PROG_GCC_TRADITIONAL | |||||
AC_ISC_POSIX | |||||
AC_USE_SYSTEM_EXTENSIONS | |||||
-AC_TRY_RUN(main(){exit(0);},,[ | |||||
-if test $CC != cc ; then | |||||
-AC_NOTE(Your $CC failed - restarting with CC=cc) | |||||
-AC_NOTE() | |||||
-CC=cc | |||||
-export CC | |||||
-exec $0 $configure_args | |||||
-fi | |||||
-]) | |||||
- | |||||
-AC_TRY_RUN(main(){exit(0);},, | |||||
-exec 5>&2 | |||||
-eval $ac_link | |||||
-AC_NOTE(CC=$CC; CFLAGS=$CFLAGS; LIBS=$LIBS;) | |||||
-AC_NOTE($ac_compile) | |||||
-AC_MSG_ERROR(Can't run the compiler - sorry)) | |||||
- | |||||
-AC_TRY_RUN([ | |||||
-main() | |||||
-{ | |||||
- int __something_strange_(); | |||||
- __something_strange_(0); | |||||
-} | |||||
-],AC_MSG_ERROR(Your compiler does not set the exit status - sorry)) | |||||
- | |||||
AC_PROG_AWK | |||||
AC_PROG_INSTALL | |||||
@@ -1278,8 +1253,6 @@ fi | |||||
dnl Ptx bug workaround -- insert -lc after -ltermcap | |||||
test -n "$seqptx" && LIBS="-ltermcap -lc -lsocket -linet -lnsl -lsec -lseq" | |||||
-AC_TRY_RUN(main(){exit(0);},,AC_MSG_ERROR(Can't run the compiler - internal error. Sorry.)) | |||||
- | |||||
ETCSCREENRC= | |||||
AC_MSG_CHECKING(for the global screenrc file) | |||||
AC_ARG_WITH(sys-screenrc, [ --with-sys-screenrc=path to the global screenrc file], [ ETCSCREENRC="${withval}" ]) | |||||
-- | |||||
2.17.1 | |||||
@ -0,0 +1,137 @@ | |||||
From abba47ce4206506c49858d944e904fff86ae65cc Mon Sep 17 00:00:00 2001 | |||||
From: Jussi Kukkonen <jussi.kukkonen@intel.com> | |||||
Date: Sat, 24 Feb 2018 15:14:48 +0100 | |||||
Subject: [PATCH] [PATCH 2/4] Provide cross compile alternatives for AC_TRY_RUN | |||||
Modified from patch by Maarten ter Huurne. | |||||
Upstream-Status: Submitted [http://savannah.gnu.org/bugs/?43223] | |||||
Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com> | |||||
--- | |||||
configure.ac | 32 ++++++++++++++++++++------------ | |||||
1 file changed, 20 insertions(+), 12 deletions(-) | |||||
diff --git a/src/configure.ac b/src/configure.ac | |||||
index a8208ea..74be368 100644 | |||||
--- a/configure.ac | |||||
+++ b/configure.ac | |||||
@@ -348,7 +348,8 @@ main() | |||||
exit(0); | |||||
} | |||||
], AC_NOTE(- your fifos are usable) fifo=1, | |||||
-AC_NOTE(- your fifos are not usable)) | |||||
+AC_NOTE(- your fifos are not usable), | |||||
+AC_NOTE(- skipping check because we are cross compiling; assuming fifos are usable) fifo=1) | |||||
rm -f /tmp/conftest* | |||||
if test -n "$fifo"; then | |||||
@@ -396,7 +397,8 @@ main() | |||||
exit(0); | |||||
} | |||||
], AC_NOTE(- your implementation is ok), | |||||
-AC_NOTE(- you have a broken implementation) AC_DEFINE(BROKEN_PIPE) fifobr=1) | |||||
+AC_NOTE(- you have a broken implementation) AC_DEFINE(BROKEN_PIPE) fifobr=1, | |||||
+AC_NOTE(- skipping check because we are cross compiling; assuming fifo implementation is ok)) | |||||
rm -f /tmp/conftest* | |||||
fi | |||||
@@ -458,7 +460,8 @@ main() | |||||
exit(0); | |||||
} | |||||
], AC_NOTE(- your sockets are usable) sock=1, | |||||
-AC_NOTE(- your sockets are not usable)) | |||||
+AC_NOTE(- your sockets are not usable), | |||||
+AC_NOTE(- skipping check because we are cross compiling; assuming sockets are usable) sock=1) | |||||
rm -f /tmp/conftest* | |||||
if test -n "$sock"; then | |||||
@@ -497,7 +500,8 @@ main() | |||||
} | |||||
],AC_NOTE(- you are normal), | |||||
AC_NOTE(- unix domain sockets are not kept in the filesystem) | |||||
-AC_DEFINE(SOCK_NOT_IN_FS) socknofs=1) | |||||
+AC_DEFINE(SOCK_NOT_IN_FS) socknofs=1, | |||||
+AC_NOTE(- skipping check because we are cross compiling; assuming sockets are normal)) | |||||
rm -f /tmp/conftest* | |||||
fi | |||||
@@ -598,7 +602,8 @@ main() | |||||
exit(0); | |||||
} | |||||
],AC_NOTE(- select is ok), | |||||
-AC_NOTE(- select can't count) AC_DEFINE(SELECT_BROKEN)) | |||||
+AC_NOTE(- select can't count) AC_DEFINE(SELECT_BROKEN), | |||||
+AC_NOTE(- skipping check because we are cross compiling; assuming select is ok)) | |||||
dnl | |||||
dnl **** termcap or terminfo **** | |||||
@@ -640,7 +645,8 @@ main() | |||||
{ | |||||
exit(strcmp(tgoto("%p1%d", 0, 1), "1") ? 0 : 1); | |||||
}], AC_NOTE(- you use the termcap database), | |||||
-AC_NOTE(- you use the terminfo database) AC_DEFINE(TERMINFO)) | |||||
+AC_NOTE(- you use the terminfo database) AC_DEFINE(TERMINFO), | |||||
+AC_NOTE(- skipping check because we are cross compiling; assuming terminfo database is used) AC_DEFINE(TERMINFO)) | |||||
AC_CHECKING(ospeed) | |||||
AC_TRY_LINK(extern short ospeed;,ospeed=5;,,AC_DEFINE(NEED_OSPEED)) | |||||
@@ -775,7 +781,8 @@ main() | |||||
else | |||||
AC_NOTE(- can't determine - assume ptys are world accessable) | |||||
fi | |||||
- ] | |||||
+ ], | |||||
+ AC_NOTE(- skipping check because we are cross compiling; assuming ptys are world accessable) | |||||
) | |||||
rm -f conftest_grp | |||||
fi | |||||
@@ -859,7 +866,7 @@ AC_EGREP_CPP(YES_IS_DEFINED, | |||||
#endif | |||||
], load=1) | |||||
fi | |||||
-if test -z "$load" ; then | |||||
+if test -z "$load" && test "$cross_compiling" = no ; then | |||||
AC_CHECKING(for kernelfile) | |||||
for core in /unix /vmunix /dynix /hp-ux /xelos /dev/ksyms /kernel/unix /kernel/genunix /unicos /mach /netbsd /386bsd /dgux /bsd /stand/vmunix; do | |||||
if test -f $core || test -c $core; then | |||||
@@ -1052,7 +1059,7 @@ main() | |||||
#endif | |||||
exit(0); | |||||
} | |||||
-],,AC_DEFINE(SYSVSIGS)) | |||||
+],,AC_DEFINE(SYSVSIGS),:) | |||||
fi | |||||
@@ -1132,7 +1139,7 @@ main() { | |||||
if (strncmp(buf, "cdedef", 6)) | |||||
exit(1); | |||||
exit(0); /* libc version works properly. */ | |||||
-}], AC_DEFINE(USEBCOPY)) | |||||
+}], AC_DEFINE(USEBCOPY),,:) | |||||
AC_TRY_RUN([ | |||||
#define bcopy(s,d,l) memmove(d,s,l) | |||||
@@ -1147,7 +1154,8 @@ main() { | |||||
if (strncmp(buf, "cdedef", 6)) | |||||
exit(1); | |||||
exit(0); /* libc version works properly. */ | |||||
-}], AC_DEFINE(USEMEMMOVE)) | |||||
+}], AC_DEFINE(USEMEMMOVE),, | |||||
+ AC_NOTE(- skipping check because we are cross compiling; use memmove) AC_DEFINE(USEMEMMOVE)) | |||||
AC_TRY_RUN([ | |||||
@@ -1163,7 +1171,7 @@ main() { | |||||
if (strncmp(buf, "cdedef", 6)) | |||||
exit(1); | |||||
exit(0); /* libc version works properly. */ | |||||
-}], AC_DEFINE(USEMEMCPY)) | |||||
+}], AC_DEFINE(USEMEMCPY),,:) | |||||
AC_SYS_LONG_FILE_NAMES | |||||
-- | |||||
2.17.1 | |||||
@ -0,0 +1,135 @@ | |||||
From c573b89139e7a068f5573abd565605bed60f293f Mon Sep 17 00:00:00 2001 | |||||
From: Jussi Kukkonen <jussi.kukkonen@intel.com> | |||||
Date: Sat, 24 Feb 2018 15:18:33 +0100 | |||||
Subject: [PATCH] [PATCH 3/4] Skip host file system checks when cross-compiling | |||||
Modified from patch by Maarten ter Huurne. | |||||
Upstream-Status: Submitted [http://savannah.gnu.org/bugs/?43223] | |||||
Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com> | |||||
--- | |||||
configure.ac | 23 +++++++++++++++++++---- | |||||
1 file changed, 19 insertions(+), 4 deletions(-) | |||||
diff --git a/src/configure.ac b/src/configure.ac | |||||
index 74be368..bd748d9 100644 | |||||
--- a/configure.ac | |||||
+++ b/configure.ac | |||||
@@ -85,7 +85,7 @@ AC_ARG_ENABLE(socket-dir, | |||||
dnl | |||||
dnl **** special unix variants **** | |||||
dnl | |||||
-if test -n "$ISC"; then | |||||
+if test "$cross_compiling" = no && test -n "$ISC" ; then | |||||
AC_DEFINE(ISC) LIBS="$LIBS -linet" | |||||
fi | |||||
@@ -96,10 +96,11 @@ dnl AC_DEFINE(OSF1) # this disables MIPS again.... | |||||
dnl fi | |||||
dnl fi | |||||
-if test -f /sysV68 ; then | |||||
+if test "$cross_compiling" = no && test -f /sysV68 ; then | |||||
AC_DEFINE(sysV68) | |||||
fi | |||||
+if test "$cross_compiling" = no ; then | |||||
AC_CHECKING(for MIPS) | |||||
if test -f /lib/libmld.a || test -f /usr/lib/libmld.a || test -f /usr/lib/cmplrs/cc/libmld.a; then | |||||
oldlibs="$LIBS" | |||||
@@ -123,6 +124,7 @@ AC_DEFINE(USE_WAIT2) LIBS="$LIBS -lbsd" ; CC="$CC -I/usr/include/bsd" | |||||
)) | |||||
fi | |||||
fi | |||||
+fi | |||||
AC_CHECKING(for Ultrix) | |||||
@@ -132,7 +134,7 @@ AC_EGREP_CPP(YES_IS_DEFINED, | |||||
#endif | |||||
], ULTRIX=1) | |||||
-if test -f /usr/lib/libpyr.a ; then | |||||
+if test "$cross_compiling" = no && test -f /usr/lib/libpyr.a ; then | |||||
oldlibs="$LIBS" | |||||
LIBS="$LIBS -lpyr" | |||||
AC_CHECKING(Pyramid OSX) | |||||
@@ -653,17 +655,21 @@ AC_TRY_LINK(extern short ospeed;,ospeed=5;,,AC_DEFINE(NEED_OSPEED)) | |||||
dnl | |||||
dnl **** PTY specific things **** | |||||
dnl | |||||
+if test "$cross_compiling" = no ; then | |||||
AC_CHECKING(for /dev/ptc) | |||||
if test -r /dev/ptc; then | |||||
AC_DEFINE(HAVE_DEV_PTC) | |||||
fi | |||||
+fi | |||||
+if test "$cross_compiling" = no ; then | |||||
AC_CHECKING(for SVR4 ptys) | |||||
sysvr4ptys= | |||||
if test -c /dev/ptmx ; then | |||||
AC_TRY_LINK([],[ptsname(0);grantpt(0);unlockpt(0);],[AC_DEFINE(HAVE_SVR4_PTYS) | |||||
sysvr4ptys=1]) | |||||
fi | |||||
+fi | |||||
AC_CHECK_FUNCS(getpt) | |||||
@@ -673,6 +679,7 @@ AC_CHECK_FUNCS(openpty,, | |||||
[AC_CHECK_LIB(util,openpty, [AC_DEFINE(HAVE_OPENPTY)] [LIBS="$LIBS -lutil"])]) | |||||
fi | |||||
+if test "$cross_compiling" = no ; then | |||||
AC_CHECKING(for ptyranges) | |||||
if test -d /dev/ptym ; then | |||||
pdir='/dev/ptym' | |||||
@@ -696,6 +703,7 @@ p1=`echo $ptys | tr ' ' '\012' | sed -e 's/^.*\(.\)$/\1/g' | sort -u | tr -d '\ | |||||
AC_DEFINE_UNQUOTED(PTYRANGE0,"$p0") | |||||
AC_DEFINE_UNQUOTED(PTYRANGE1,"$p1") | |||||
fi | |||||
+fi | |||||
dnl **** pty mode/group handling **** | |||||
dnl | |||||
@@ -843,14 +851,16 @@ fi | |||||
dnl | |||||
dnl **** loadav **** | |||||
dnl | |||||
+if test "$cross_compiling" = no ; then | |||||
AC_CHECKING(for libutil(s)) | |||||
test -f /usr/lib/libutils.a && LIBS="$LIBS -lutils" | |||||
test -f /usr/lib/libutil.a && LIBS="$LIBS -lutil" | |||||
+fi | |||||
AC_CHECKING(getloadavg) | |||||
AC_TRY_LINK(,[getloadavg((double *)0, 0);], | |||||
AC_DEFINE(LOADAV_GETLOADAVG) load=1, | |||||
-if test -f /usr/lib/libkvm.a ; then | |||||
+if test "$cross_compiling" = no && test -f /usr/lib/libkvm.a ; then | |||||
olibs="$LIBS" | |||||
LIBS="$LIBS -lkvm" | |||||
AC_CHECKING(getloadavg with -lkvm) | |||||
@@ -1068,13 +1078,18 @@ dnl **** libraries **** | |||||
dnl | |||||
AC_CHECKING(for crypt and sec libraries) | |||||
+if test "$cross_compiling" = no ; then | |||||
test -f /lib/libcrypt_d.a || test -f /usr/lib/libcrypt_d.a && LIBS="$LIBS -lcrypt_d" | |||||
+fi | |||||
oldlibs="$LIBS" | |||||
LIBS="$LIBS -lcrypt" | |||||
AC_CHECKING(crypt) | |||||
AC_TRY_LINK(,,,LIBS="$oldlibs") | |||||
+if test "$cross_compiling" = no ; then | |||||
test -f /lib/libsec.a || test -f /usr/lib/libsec.a && LIBS="$LIBS -lsec" | |||||
test -f /lib/libshadow.a || test -f /usr/lib/libshadow.a && LIBS="$LIBS -lshadow" | |||||
+fi | |||||
+ | |||||
oldlibs="$LIBS" | |||||
LIBS="$LIBS -lsun" | |||||
AC_CHECKING(IRIX sun library) | |||||
-- | |||||
2.17.1 | |||||
@ -0,0 +1,57 @@ | |||||
From ec90292592dd2c9d5c108390841e3df24e377ed5 Mon Sep 17 00:00:00 2001 | |||||
From: Jussi Kukkonen <jussi.kukkonen@intel.com> | |||||
Date: Sat, 24 Feb 2018 15:22:05 +0100 | |||||
Subject: [PATCH] [PATCH 4/4] Avoid mis-identifying systems as SVR4 | |||||
Linux can be misdetected as SVR4 because it has | |||||
libelf installed. This leads to linking with libelf, even though no | |||||
symbols from that library were actually used, and to a workaround for | |||||
a buggy getlogin() being enabled. | |||||
It is not documented which exact SVR4 system had the bug that the | |||||
workaround was added for, so all I could do is make an educated guess | |||||
at the #defines its compiler would be likely to set. | |||||
Modified from patch by Maarten ter Huurne. | |||||
Upstream-Status: Submitted [http://savannah.gnu.org/bugs/?43223] | |||||
Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com> | |||||
--- | |||||
configure.ac | 14 ++++++++++++-- | |||||
1 file changed, 12 insertions(+), 2 deletions(-) | |||||
diff --git a/src/configure.ac b/src/configure.ac | |||||
index bd748d9..ab799d2 100644 | |||||
--- a/configure.ac | |||||
+++ b/configure.ac | |||||
@@ -179,14 +179,24 @@ AC_EGREP_CPP(YES_IS_DEFINED, | |||||
#endif | |||||
], LIBS="$LIBS -lsocket -linet";seqptx=1) | |||||
+AC_CHECKING(SVR4) | |||||
+AC_EGREP_CPP(yes, | |||||
+[main () { | |||||
+#if defined(SVR4) || defined(__SVR4) | |||||
+ yes; | |||||
+#endif | |||||
+], AC_NOTE(- you have a SVR4 system) AC_DEFINE(SVR4) svr4=1) | |||||
+if test -n "$svr4" ; then | |||||
oldlibs="$LIBS" | |||||
LIBS="$LIBS -lelf" | |||||
AC_CHECKING(SVR4) | |||||
AC_TRY_LINK([#include <utmpx.h> | |||||
],, | |||||
-[AC_CHECK_HEADER(dwarf.h, AC_DEFINE(SVR4) AC_DEFINE(BUGGYGETLOGIN), | |||||
-[AC_CHECK_HEADER(elf.h, AC_DEFINE(SVR4) AC_DEFINE(BUGGYGETLOGIN))])] | |||||
+[AC_CHECK_HEADER(dwarf.h, AC_DEFINE(BUGGYGETLOGIN), | |||||
+[AC_CHECK_HEADER(elf.h, AC_DEFINE(BUGGYGETLOGIN))])] | |||||
,LIBS="$oldlibs") | |||||
+fi | |||||
+ | |||||
AC_CHECK_HEADERS([stropts.h string.h strings.h]) | |||||
AC_CHECKING(for Solaris 2.x) | |||||
-- | |||||
2.17.1 | |||||
@ -1,64 +0,0 @@ | |||||
--- a/configure | |||||
+++ b/configure | |||||
@@ -414,7 +414,7 @@ as_fn_error () | |||||
$as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4 | |||||
fi | |||||
$as_echo "$as_me: error: $2" >&2 | |||||
- as_fn_exit $as_status | |||||
+ # as_fn_exit $as_status | |||||
} # as_fn_error | |||||
if expr a : '\(a\)' >/dev/null 2>&1 && | |||||
@@ -5909,8 +5909,6 @@ else | |||||
fi | |||||
rm -f core conftest.err conftest.$ac_objext \ | |||||
conftest$ac_exeext conftest.$ac_ext | |||||
-test -f /lib/libsec.a || test -f /usr/lib/libsec.a && LIBS="$LIBS -lsec" | |||||
-test -f /lib/libshadow.a || test -f /usr/lib/libshadow.a && LIBS="$LIBS -lshadow" | |||||
oldlibs="$LIBS" | |||||
LIBS="$LIBS -lsun" | |||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking IRIX sun library..." >&5 | |||||
@@ -6991,7 +6989,7 @@ as_fn_error () | |||||
$as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4 | |||||
fi | |||||
$as_echo "$as_me: error: $2" >&2 | |||||
- as_fn_exit $as_status | |||||
+ # as_fn_exit $as_status | |||||
} # as_fn_error | |||||
--- a/pty.c | |||||
+++ b/pty.c | |||||
@@ -39,9 +39,9 @@ | |||||
#endif | |||||
/* for solaris 2.1, Unixware (SVR4.2) and possibly others */ | |||||
-#ifdef HAVE_STROPTS_H | |||||
-# include <sys/stropts.h> | |||||
-#endif | |||||
+//#ifdef HAVE_STROPTS_H | |||||
+//# include <sys/stropts.h> | |||||
+//#endif | |||||
#if defined(sun) && defined(LOCKPTY) && !defined(TIOCEXCL) | |||||
# include <sys/ttold.h> | |||||
--- a/sched.h | |||||
+++ b/sched.h | |||||
@@ -27,6 +27,11 @@ | |||||
* $Id$ GNU | |||||
*/ | |||||
+#ifndef __SCHED_H | |||||
+#define __SCHED_H | |||||
+ | |||||
+#include <sys/time.h> | |||||
+ | |||||
struct event | |||||
{ | |||||
struct event *next; | |||||
@@ -46,3 +51,5 @@ struct event | |||||
#define EV_READ 1 | |||||
#define EV_WRITE 2 | |||||
#define EV_ALWAYS 3 | |||||
+ | |||||
+#endif |
@ -1,11 +0,0 @@ | |||||
--- a/Makefile.in | |||||
+++ b/Makefile.in | |||||
@@ -79,7 +79,7 @@ screen: $(OFILES) | |||||
$(CC) $(LDFLAGS) -o $@ $(OFILES) $(LIBS) | |||||
.c.o: | |||||
- $(CC) -c -I. -I$(srcdir) $(M_CFLAGS) $(CPPFLAGS) $(DEFS) \ | |||||
+ $(CC) -c $(M_CFLAGS) $(CPPFLAGS) $(DEFS) \ | |||||
$(OPTIONS) $(CFLAGS) $< | |||||
install_bin: .version screen installdirs |
@ -1,57 +0,0 @@ | |||||
--- a/configure | |||||
+++ b/configure | |||||
@@ -4155,44 +4155,6 @@ fi | |||||
rm -f conftest* | |||||
-oldlibs="$LIBS" | |||||
-LIBS="$LIBS -lelf" | |||||
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking SVR4..." >&5 | |||||
-$as_echo "$as_me: checking SVR4..." >&6;} | |||||
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext | |||||
-/* end confdefs.h. */ | |||||
-#include <utmpx.h> | |||||
- | |||||
-int | |||||
-main () | |||||
-{ | |||||
- | |||||
- ; | |||||
- return 0; | |||||
-} | |||||
-_ACEOF | |||||
-if ac_fn_c_try_link "$LINENO"; then : | |||||
- ac_fn_c_check_header_mongrel "$LINENO" "dwarf.h" "ac_cv_header_dwarf_h" "$ac_includes_default" | |||||
-if test "x$ac_cv_header_dwarf_h" = xyes; then : | |||||
- $as_echo "#define SVR4 1" >>confdefs.h | |||||
- $as_echo "#define BUGGYGETLOGIN 1" >>confdefs.h | |||||
- | |||||
-else | |||||
- ac_fn_c_check_header_mongrel "$LINENO" "elf.h" "ac_cv_header_elf_h" "$ac_includes_default" | |||||
-if test "x$ac_cv_header_elf_h" = xyes; then : | |||||
- $as_echo "#define SVR4 1" >>confdefs.h | |||||
- $as_echo "#define BUGGYGETLOGIN 1" >>confdefs.h | |||||
- | |||||
-fi | |||||
- | |||||
- | |||||
-fi | |||||
- | |||||
- | |||||
- | |||||
-else | |||||
- LIBS="$oldlibs" | |||||
-fi | |||||
rm -f core conftest.err conftest.$ac_objext \ | |||||
conftest$ac_exeext conftest.$ac_ext | |||||
for ac_header in stropts.h string.h strings.h | |||||
--- a/utmp.c | |||||
+++ b/utmp.c | |||||
@@ -33,6 +33,7 @@ | |||||
#include "config.h" | |||||
#include "screen.h" | |||||
#include "extern.h" | |||||
+#include "os.h" | |||||
#ifdef HAVE_UTEMPTER | |||||
#include <utempter.h> |