Browse Source

Merge pull request #8486 from neheb/sc

screen: Replace patches with upstream backports
lilik-openwrt-22.03
Rosen Penev 6 years ago
committed by GitHub
parent
commit
5f186ab4c8
No known key found for this signature in database GPG Key ID: 4AEE18F83AFDEB23
10 changed files with 578 additions and 145 deletions
  1. +12
    -13
      utils/screen/Makefile
  2. +128
    -0
      utils/screen/patches/010-fix-configure-failed-while-build-dir-name-contains-y.patch
  3. +44
    -0
      utils/screen/patches/020-fix-configure-option-disable-use-locale-is-not-worki.patch
  4. +65
    -0
      utils/screen/patches/030-PATCH-1-4-Remove-redundant-compiler-sanity-checks.patch
  5. +137
    -0
      utils/screen/patches/040-PATCH-2-4-Provide-cross-compile-alternatives-for-AC_.patch
  6. +135
    -0
      utils/screen/patches/050-PATCH-3-4-Skip-host-file-system-checks-when-cross-co.patch
  7. +57
    -0
      utils/screen/patches/060-PATCH-4-4-Avoid-mis-identifying-systems-as-SVR4.patch
  8. +0
    -64
      utils/screen/patches/100-cross_compile_fix.patch
  9. +0
    -11
      utils/screen/patches/110-do_not_add_srcdir_to_include_path.patch
  10. +0
    -57
      utils/screen/patches/200-musl-compat.patch

+ 12
- 13
utils/screen/Makefile View File

@ -9,14 +9,19 @@ include $(TOPDIR)/rules.mk
PKG_NAME:=screen
PKG_VERSION:=4.6.2
PKG_RELEASE:=1
PKG_RELEASE:=2
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_HASH:=1b6922520e6a0ce5e28768d620b0f640a6631397f95ccb043b70b91bb503fa3a
PKG_SOURCE_URL:=@GNU/screen
PKG_HASH:=1b6922520e6a0ce5e28768d620b0f640a6631397f95ccb043b70b91bb503fa3a
PKG_MAINTAINER:=Etienne CHAMPETIER <champetier.etienne@gmail.com>
PKG_LICENSE:=GPL-3.0+
PKG_LICENSE_FILES:=
PKG_LICENSE_FILES:=COPYING
PKG_FIXUP:=autoreconf
PKG_BUILD_PARALLEL:=1
PKG_INSTALL:=1
include $(INCLUDE_DIR)/package.mk
@ -26,8 +31,7 @@ define Package/screen
SUBMENU:=Terminal
DEPENDS:=+libncurses
TITLE:=Full-screen terminal window manager
URL:=http://www.gnu.org/software/screen/
MAINTAINER:=Etienne CHAMPETIER <champetier.etienne@gmail.com>
URL:=https://www.gnu.org/software/screen/
endef
define Package/screen/description
@ -35,14 +39,9 @@ define Package/screen/description
terminal between several processes, typically interactive shells.
endef
define Build/Configure
$(call Build/Configure/Default,\
--with-sys-screenrc=/etc/screenrc \
--enable-colors256 \
)
# XXX: memmove() works well with overlapped memory areas
echo "#define USEMEMMOVE 1" >>$(PKG_BUILD_DIR)/config.h
endef
CONFIGURE_ARGS += \
--enable-colors256 \
--with-sys-screenrc=/etc/screenrc
define Package/screen/install
$(INSTALL_DIR) $(1)/usr/sbin


+ 128
- 0
utils/screen/patches/010-fix-configure-failed-while-build-dir-name-contains-y.patch View File

@ -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

+ 44
- 0
utils/screen/patches/020-fix-configure-option-disable-use-locale-is-not-worki.patch View File

@ -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

+ 65
- 0
utils/screen/patches/030-PATCH-1-4-Remove-redundant-compiler-sanity-checks.patch View File

@ -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

+ 137
- 0
utils/screen/patches/040-PATCH-2-4-Provide-cross-compile-alternatives-for-AC_.patch View File

@ -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

+ 135
- 0
utils/screen/patches/050-PATCH-3-4-Skip-host-file-system-checks-when-cross-co.patch View File

@ -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

+ 57
- 0
utils/screen/patches/060-PATCH-4-4-Avoid-mis-identifying-systems-as-SVR4.patch View File

@ -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

+ 0
- 64
utils/screen/patches/100-cross_compile_fix.patch View File

@ -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

+ 0
- 11
utils/screen/patches/110-do_not_add_srcdir_to_include_path.patch View File

@ -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

+ 0
- 57
utils/screen/patches/200-musl-compat.patch View File

@ -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>

Loading…
Cancel
Save