aboutsummaryrefslogtreecommitdiffstats
path: root/meta/recipes-extended/screen/screen-4.0.3/configure.patch
diff options
context:
space:
mode:
Diffstat (limited to 'meta/recipes-extended/screen/screen-4.0.3/configure.patch')
-rw-r--r--meta/recipes-extended/screen/screen-4.0.3/configure.patch979
1 files changed, 0 insertions, 979 deletions
diff --git a/meta/recipes-extended/screen/screen-4.0.3/configure.patch b/meta/recipes-extended/screen/screen-4.0.3/configure.patch
deleted file mode 100644
index e29bcc6639..0000000000
--- a/meta/recipes-extended/screen/screen-4.0.3/configure.patch
+++ /dev/null
@@ -1,979 +0,0 @@
-Upstream-Status: Inappropriate [embedded specific]
-
-# The patch is borrowed from OE:
-# http://cgit.openembedded.org/cgit.cgi/openembedded/commit/?id=4ee790cc6974bdfe1c9b06c0567b1c56f56d6615
-# and was rebased to screen-4.0.3's configure.in
-# by Dexuan Cui (dexuan.cui@intel.com).
-#
-# The description of the original patch is:
-#
-# Patch by Hannes Reich (hannes@skynet.ie) 22-Jul-2005
-# Resolves _some_ of the cross-compilation issues in screen's configure.in
-#
-diff --git a/configure.in b/configure.in
-index 34c9372..d5ed48a 100644
---- a/configure.in
-+++ b/configure.in
-@@ -37,6 +37,325 @@ pat=`sed < ${srcdir}/patchlevel.h -n -e '/#define PATCHLEVEL/s/#define PATCHLEVE
- VERSION="$rev.$vers.$pat"
- AC_NOTE(this is screen version $VERSION)
- AC_SUBST(VERSION)
-+
-+AH_TOP([
-+/* Copyright (c) 1993-2000
-+ * Juergen Weigert (jnweiger@immd4.informatik.uni-erlangen.de)
-+ * Michael Schroeder (mlschroe@immd4.informatik.uni-erlangen.de)
-+ * Copyright (c) 1987 Oliver Laumann
-+ *
-+ * This program is free software; you can redistribute it and/or modify
-+ * it under the terms of the GNU General Public License as published by
-+ * the Free Software Foundation; either version 2, or (at your option)
-+ * any later version.
-+ *
-+ * This program is distributed in the hope that it will be useful,
-+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-+ * GNU General Public License for more details.
-+ *
-+ * You should have received a copy of the GNU General Public License
-+ * along with this program (see the file COPYING); if not, write to the
-+ * Free Software Foundation, Inc.,
-+ * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
-+ *
-+ */
-+
-+
-+/**********************************************************************
-+ *
-+ * User Configuration Section
-+ */
-+
-+/*
-+ * Maximum of simultaneously allowed windows per screen session.
-+ */
-+#ifndef MAXWIN
-+# define MAXWIN 40
-+#endif
-+
-+/*
-+ * Define SOCKDIR to be the directory to contain the named sockets
-+ * screen creates. This should be in a common subdirectory, such as
-+ * /usr/local or /tmp. It makes things a little more secure if you
-+ * choose a directory which is not writable by everyone or where the
-+ * "sticky" bit is on, but this isn't required.
-+ * If SOCKDIR is not defined screen will put the named sockets in
-+ * the user's home directory. Notice that this can cause you problems
-+ * if some user's HOME directories are AFS- or NFS-mounted. Especially
-+ * AFS is unlikely to support named sockets.
-+ *
-+ * Screen will name the subdirectories "S-$USER" (e.g /tmp/S-davison).
-+ */
-+#undef SOCKDIR
-+
-+/*
-+ * Define this if the SOCKDIR is not shared between hosts.
-+ */
-+#define SOCKDIR_IS_LOCAL_TO_HOST
-+
-+/*
-+ * Screen sources two startup files. First a global file with a path
-+ * specified here, second your local $HOME/.screenrc
-+ * Don't define this, if you don't want it.
-+ */
-+#ifndef ETCSCREENRC
-+# define ETCSCREENRC "/usr/local/etc/screenrc"
-+#endif
-+
-+/*
-+ * Screen can look for the environment variable $SYSSCREENRC and -if it
-+ * exists- load the file specified in that variable as global screenrc.
-+ * If you want to enable this feature, define ALLOW_SYSSCREENRC to one (1).
-+ * Otherwise ETCSCREENRC is always loaded.
-+ */
-+#define ALLOW_SYSSCREENRC 1
-+
-+/*
-+ * Screen needs encoding files for the translation of utf8
-+ * into some encodings, e.g. JIS, BIG5.
-+ * Only needed if FONT, ENCODINGS and UTF8 are defined.
-+ */
-+#ifndef SCREENENCODINGS
-+# define SCREENENCODINGS "/usr/local/lib/screen/encodings"
-+#endif
-+/*
-+ * Define CHECKLOGIN to force Screen users to enter their Unix password
-+ * in addition to the screen password.
-+ *
-+ * Define NOSYSLOG if yo do not have logging facilities. Currently
-+ * syslog() will be used to trace ``su'' commands only.
-+ */
-+#define CHECKLOGIN 1
-+#undef NOSYSLOG
-+
-+
-+/*
-+ * define PTYMODE if you do not like the default of 0622, which allows
-+ * public write to your pty.
-+ * define PTYGROUP to some numerical group-id if you do not want the
-+ * tty to be in "your" group.
-+ * Note, screen is unable to change mode or group of the pty if it
-+ * is not installed with sufficient privilege. (e.g. set-uid-root)
-+ * define PTYROFS if the /dev/pty devices are mounted on a read-only
-+ * filesystem so screen should not even attempt to set mode or group
-+ * even if running as root (e.g. on TiVo).
-+ */
-+#undef PTYMODE
-+#undef PTYGROUP
-+#undef PTYROFS
-+
-+/*
-+ * If screen is NOT installed set-uid root, screen can provide tty
-+ * security by exclusively locking the ptys. While this keeps other
-+ * users from opening your ptys, it also keeps your own subprocesses
-+ * from being able to open /dev/tty. Define LOCKPTY to add this
-+ * exclusive locking.
-+ */
-+#undef LOCKPTY
-+
-+/*
-+ * If you'd rather see the status line on the first line of your
-+ * terminal rather than the last, define TOPSTAT.
-+ */
-+#undef TOPSTAT
-+
-+/*
-+ * define DETACH can detach a session. An absolute 'must'.
-+ */
-+#define DETACH
-+
-+/*
-+ * here come the erlangen extensions to screen:
-+ * define LOCK if you want to use a lock program for a screenlock.
-+ * define PASSWORD for secure reattach of your screen.
-+ * define COPY_PASTE to use the famous hacker's treasure zoo.
-+ * define POW_DETACH to have a detach_and_logout key (requires DETACH).
-+ * define REMOTE_DETACH (-d option) to move screen between terminals.
-+ * define AUTO_NUKE to enable Tim MacKenzies clear screen nuking
-+ * define PSEUDOS to allow window input/output filtering
-+ * define MULTI to allow multiple attaches.
-+ * define MULTIUSER to allow other users attach to your session
-+ * (if they are in the acl, of course)
-+ * define MAPKEYS to include input keyboard translation.
-+ * define FONT to support ISO2022/alternet charset support
-+ * define COLOR to include ansi color support. This may expose
-+ * a bug in x11r6-color-xterm.
-+ * define DW_CHARS to include support for double-width character
-+ * sets.
-+ * define ENCODINGS to include support for encodings like euc or big5.
-+ * Needs FONT to work.
-+ * define UTF8 if you want support for UTF-8 encoding.
-+ * Needs FONT and ENCODINGS to work.
-+ * define COLORS16 if you want 16 colors.
-+ * Needs COLOR to work.
-+ * define BUILTIN_TELNET to add telnet support to screen.
-+ * Syntax: screen //telnet host [port]
-+ * define RXVT_OSC if you want support for rxvts special
-+ * change fgcolor/bgcolor/bgpicture sequences
-+ */
-+#undef SIMPLESCREEN
-+#ifndef SIMPLESCREEN
-+# define LOCK
-+# define PASSWORD
-+# define COPY_PASTE
-+# define REMOTE_DETACH
-+# define POW_DETACH
-+# define AUTO_NUKE
-+# define PSEUDOS
-+# define MULTI
-+# define MULTIUSER
-+# define MAPKEYS
-+# define COLOR
-+# define FONT
-+# define DW_CHARS
-+# define ENCODINGS
-+# define UTF8
-+# define COLORS16
-+# define ZMODEM
-+# define BLANKER_PRG
-+#endif /* SIMPLESCREEN */
-+
-+#undef BUILTIN_TELNET
-+#undef RXVT_OSC
-+#undef COLORS256
-+
-+
-+/*
-+ * If you have a braille display you should define HAVE_BRAILLE.
-+ * The code inside #ifdef HAVE_BRAILLE was contributed by Hadi Bargi
-+ * Rangin (bargi@dots.physics.orst.edu).
-+ * WARNING: this is more or less unsupported code, it may be full of
-+ * bugs leading to security holes, enable at your own risk!
-+ */
-+#undef HAVE_BRAILLE
-+
-+
-+/*
-+ * As error messages are mostly meaningless to the user, we
-+ * try to throw out phrases that are somewhat more familiar
-+ * to ...well, at least familiar to us NetHack players.
-+ */
-+#ifndef NONETHACK
-+# define NETHACK
-+#endif /* NONETHACK */
-+
-+/*
-+ * If screen is installed with permissions to update /etc/utmp (such
-+ * as if it is installed set-uid root), define UTMPOK.
-+ */
-+#define UTMPOK
-+
-+/* Set LOGINDEFAULT to one (1)
-+ * if you want entries added to /etc/utmp by default, else set it to
-+ * zero (0).
-+ * LOGINDEFAULT will be one (1) whenever LOGOUTOK is undefined!
-+ */
-+#define LOGINDEFAULT 1
-+
-+/* Set LOGOUTOK to one (1)
-+ * if you want the user to be able to log her/his windows out.
-+ * (Meaning: They are there, but not visible in /etc/utmp).
-+ * Disabling this feature only makes sense if you have a secure /etc/utmp
-+ * database.
-+ * Negative examples: suns usually have a world writable utmp file,
-+ * xterm will run perfectly without s-bit.
-+ *
-+ * If LOGOUTOK is undefined and UTMPOK is defined, all windows are
-+ * initially and permanently logged in.
-+ *
-+ * Set CAREFULUTMP to one (1) if you want that users have at least one
-+ * window per screen session logged in.
-+ */
-+#define LOGOUTOK 1
-+#undef CAREFULUTMP
-+
-+
-+/*
-+ * If UTMPOK is defined and your system (incorrectly) counts logins by
-+ * counting non-null entries in /etc/utmp (instead of counting non-null
-+ * entries with no hostname that are not on a pseudo tty), define USRLIMIT
-+ * to have screen put an upper-limit on the number of entries to write
-+ * into /etc/utmp. This helps to keep you from exceeding a limited-user
-+ * license.
-+ */
-+#undef USRLIMIT
-+
-+/*
-+ * both must be defined if you want to favor tcsendbreak over
-+ * other calls to generate a break condition on serial lines.
-+ * (Do not bother, if you are not using plain tty windows.)
-+ */
-+#define POSIX_HAS_A_GOOD_TCSENDBREAK
-+#define SUNOS4_AND_WE_TRUST_TCSENDBREAK
-+
-+/*
-+ * to lower the interrupt load on the host machine, you may want to
-+ * adjust the VMIN and VTIME settings used for plain tty windows.
-+ * See the termio(4) manual page (Non-Canonical Mode Input Processing)
-+ * for details.
-+ * if undefined, VMIN=1, VTIME=0 is used as a default - this gives you
-+ * best user responsiveness, but highest interrupt frequency.
-+ * (Do not bother, if you are not using plain tty windows.)
-+ */
-+#define TTYVMIN 100
-+#define TTYVTIME 2
-+
-+/*
-+ * looks like the above values are ignored by setting FNDELAY.
-+ * This is default for all pty/ttys, you may disable it for
-+ * ttys here. After playing with it for a while, one may find out
-+ * that this feature may cause screen to lock up.
-+ */
-+#ifdef bsdi
-+# define TTY_DISABLE_FNBLOCK /* select barfs without it ... */
-+#endif
-+
-+
-+/*
-+ * Some terminals, e.g. Wyse 120, use a bitfield to select attributes.
-+ * This doesn't work with the standard so/ul/m? terminal entries,
-+ * because they will cancel each other out.
-+ * On TERMINFO machines, "sa" (sgr) may work. If you want screen
-+ * to switch attributes only with sgr, define USE_SGR.
-+ * This is *not* recomended, do this only if you must.
-+ */
-+#undef USE_SGR
-+
-+
-+/*
-+ * 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
-+
-+/*
-+ * Define USE_PAM if your system supports PAM (Pluggable Authentication
-+ * Modules) and you want screen to use it instead of calling crypt().
-+ * (You may also need to add -lpam to LIBS in the Makefile.)
-+ */
-+#undef USE_PAM
-+
-+/*
-+ * Define CHECK_SCREEN_W if you want screen to set TERM to screen-w
-+ * if the terminal width is greater than 131 columns. No longer needed
-+ * on modern systems which use $COLUMNS or the tty settings instead.
-+ */
-+#undef CHECK_SCREEN_W
-+
-+/**********************************************************************
-+ *
-+ * End of User Configuration Section
-+ *
-+ * Rest of this file is modified by 'configure'
-+ * Change at your own risk!
-+ *
-+ */
-+])
-+# end of AH_TOP
-+
-+AC_PREFIX_PROGRAM(screen)
-+AC_PREFIX_PROGRAM(gzip)
- AC_PREFIX_PROGRAM(screen)
- AC_PREFIX_PROGRAM(gzip)
-
-@@ -46,6 +365,7 @@ AC_PROG_CPP
- AC_PROG_GCC_TRADITIONAL
- AC_ISC_POSIX
-
-+AC_MSG_CHECKING([for compiler sanity])
- AC_TRY_RUN(main(){exit(0);},,[
- if test $CC != cc ; then
- AC_NOTE(Your $CC failed - restarting with CC=cc)
-@@ -54,14 +374,9 @@ CC=cc
- export CC
- exec $0 $configure_args
- fi
--])
-+],AC_MSG_WARN([skipping test due to crosscompilation]))
-
--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_MSG_CHECKING([if compiler sets exit status])
-
- AC_TRY_RUN([
- main()
-@@ -69,7 +384,8 @@ main()
- int __something_strange_();
- __something_strange_(0);
- }
--],AC_MSG_ERROR(Your compiler does not set the exit status - sorry))
-+],AC_MSG_ERROR(Your compiler does not set the exit status - sorry),,
-+AC_MSG_WARN(skipping test due to crosscompilation))
-
- AC_PROG_AWK
-
-@@ -103,6 +419,7 @@ AC_ARG_ENABLE(socket-dir,
- dnl
- dnl **** special unix variants ****
- dnl
-+AH_TEMPLATE(ISC,[])
- if test -n "$ISC"; then
- AC_DEFINE(ISC) LIBS="$LIBS -linet"
- fi
-@@ -114,11 +431,13 @@ dnl AC_DEFINE(OSF1) # this disables MIPS again....
- dnl fi
- dnl fi
-
-+AH_TEMPLATE([sysV68],[])
- if test -f /sysV68 ; then
- AC_DEFINE(sysV68)
- fi
-
- AC_CHECKING(for MIPS)
-+AH_TEMPLATE([MIPS],[])
- if test -f /lib/libmld.a || test -f /usr/lib/libmld.a || test -f /usr/lib/cmplrs/cc/libmld.a; then
- oldlibs="$LIBS"
- test -f /bin/mx || LIBS="$LIBS -lmld" # for nlist. But not on alpha.
-@@ -132,6 +451,8 @@ AC_DEFINE(MIPS)
- AC_CHECKING(wait3)
- AC_TRY_LINK(,[wait3();], ,
- AC_CHECKING(wait2)
-+AH_TEMPLATE([USE_WAIT2],[On RISCOS we prefer wait2() over wait3(). rouilj@sni-usa.com])
-+dnl TODO(Hannes) shipped config.h.in wraps the define in #ifdef BSDWAIT
- AC_TRY_LINK(,[wait2();],
- dnl John Rouillard (rouilj@sni-usa.com):
- dnl need -I/usr/include/bsd in RISCOS otherwise sockets are broken, no
-@@ -154,9 +475,11 @@ if test -f /usr/lib/libpyr.a ; then
- oldlibs="$LIBS"
- LIBS="$LIBS -lpyr"
- AC_CHECKING(Pyramid OSX)
-+AH_TEMPLATE([OSX], [Pyramid OSX])
- AC_TRY_LINK(,[open_controlling_pty("")], AC_DEFINE(OSX), LIBS="$oldlibs")
- fi
-
-+AH_TEMPLATE([POSIX],[Define POSIX if your system supports IEEE Std 1003.1-1988 (POSIX).])
- 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.
-@@ -183,6 +506,7 @@ main () {
- fi
-
- AC_CHECKING(for System V)
-+AH_TEMPLATE([SYSV], [Define SYSV if your machine is SYSV complient (Sys V, HPUX, A/UX)])
- AC_TRY_COMPILE(
- [#include <sys/types.h>
- #include <signal.h>
-@@ -198,6 +522,11 @@ AC_EGREP_CPP(yes,
- oldlibs="$LIBS"
- LIBS="$LIBS -lelf"
- AC_CHECKING(SVR4)
-+AH_TEMPLATE([SVR4],[])
-+AH_TEMPLATE([BUGGYGETLOGIN],
-+[If ttyslot() breaks getlogin() by returning indexes to utmp entries
-+ of type DEAD_PROCESS, then our getlogin() replacement should be
-+ selected by defining BUGGYGETLOGIN.])
- AC_TRY_LINK([#include <utmpx.h>
- ],,
- [AC_CHECK_HEADER(dwarf.h, AC_DEFINE(SVR4) AC_DEFINE(BUGGYGETLOGIN),
-@@ -235,6 +564,9 @@ dnl **** Job control ****
- dnl
-
- AC_CHECKING(BSD job jontrol)
-+AH_TEMPLATE([BSDJOBS],
-+[Define BSDJOBS if you have BSD-style job control (both process
-+ groups and a tty that deals correctly with them)])
- AC_TRY_LINK(
- [#include <sys/types.h>
- #include <sys/ioctl.h>
-@@ -255,6 +587,10 @@ dnl
- dnl **** setreuid(), seteuid() ****
- dnl
- AC_CHECKING(setreuid)
-+AH_TEMPLATE([HAVE_SETREUID],
-+[If your system has the calls setreuid() and setregid(),
-+ define HAVE_SETREUID. Otherwise screen will use a forked process to
-+ safely create output files without retaining any special privileges.])
- AC_TRY_LINK(,[
- #ifdef __hpux
- setresuid(0, 0, 0);
-@@ -269,6 +605,9 @@ dnl NeXT, AUX, ISC, and ultrix are still broken (no saved uid support)
- dnl Solaris seteuid doesn't change the saved uid, bad for
- dnl multiuser screen sessions
- AC_CHECKING(seteuid)
-+AH_TEMPLATE([HAVE_SETEUID],
-+[If your system supports BSD4.4's seteuid() and setegid(), define
-+ HAVE_SETEUID.])
- AC_TRY_LINK(,[
- #if defined(linux) || defined(NeXT) || defined(_AUX_SOURCE) || defined(AUX) || defined(ultrix) || (defined(sun) && defined(SVR4)) || defined(ISC) || defined(sony_news)
- seteuid_is_broken(0);
-@@ -292,7 +631,8 @@ dnl
- dnl **** FIFO tests ****
- dnl
-
--AC_CHECKING(fifos)
-+AC_CACHE_CHECK([usable fifos],
-+ [screen_cv_sys_fifo_usable],
- AC_TRY_RUN([
- #include <sys/types.h>
- #include <sys/stat.h>
-@@ -357,12 +697,14 @@ main()
- exit(1);
- exit(0);
- }
--], AC_NOTE(- your fifos are usable) fifo=1,
--AC_NOTE(- your fifos are not usable))
--rm -f /tmp/conftest*
--
--if test -n "$fifo"; then
--AC_CHECKING(for broken fifo implementation)
-+], screen_cv_sys_fifo_usable=yes, screen_cv_sys_fifo_usable=no))
-+
-+if test X"$screen_cv_sys_fifo_usable" = Xyes; then
-+AH_TEMPLATE([BROKEN_PIPE],
-+[Define this if your system exits select() immediatly if a pipe is
-+ opened read-only and no writer has opened it.])
-+AC_CACHE_CHECK([broken fifo implementation],
-+ [screen_cv_sys_fifo_broken_impl],
- AC_TRY_RUN([
- #include <sys/types.h>
- #include <fcntl.h>
-@@ -407,9 +749,11 @@ main()
- exit(1);
- exit(0);
- }
--], AC_NOTE(- your implementation is ok),
--AC_NOTE(- you have a broken implementation) AC_DEFINE(BROKEN_PIPE) fifobr=1)
--rm -f /tmp/conftest*
-+], screen_cv_sys_fifo_broken_impl=no,
-+screen_cv_sys_fifo_broken_impl=yes))
-+if test X"$screen_cv_sys_fifo_broken_impl" = Xyes; then
-+ AC_DEFINE(BROKEN_PIPE)
-+fi
- fi
-
- dnl
-@@ -418,7 +762,8 @@ dnl
- dnl may need LIBS="$LIBS -lsocket" here
- dnl
-
--AC_CHECKING(sockets)
-+AC_CACHE_CHECK([sockets are usable],
-+ [screen_cv_sys_sockets_usable],
- AC_TRY_RUN([
- #include <sys/types.h>
- #include <sys/socket.h>
-@@ -469,12 +814,16 @@ main()
- exit(1);
- exit(0);
- }
--], AC_NOTE(- your sockets are usable) sock=1,
--AC_NOTE(- your sockets are not usable))
--rm -f /tmp/conftest*
-+], screen_cv_sys_sockets_usable=yes,
-+screen_cv_sys_sockets_usable=no))
-
--if test -n "$sock"; then
-+if test X"$screen_cv_sys_sockets_usable" = Xyes; then
- AC_CHECKING(socket implementation)
-+AH_TEMPLATE([SOCK_NOT_IN_FS],
-+[Define this if the unix-domain socket implementation doesn't
-+ create a socket in the filesystem.])
-+AC_CACHE_CHECK([if sockets are not stored in the filesystem],
-+ [screen_cv_sys_sockets_nofs],
- AC_TRY_RUN([
- #include <sys/types.h>
- #include <sys/stat.h>
-@@ -500,22 +849,25 @@ main()
- close(s);
- exit(0);
- }
--],AC_NOTE(- you are normal),
--AC_NOTE(- unix domain sockets are not kept in the filesystem)
--AC_DEFINE(SOCK_NOT_IN_FS) socknofs=1)
--rm -f /tmp/conftest*
-+], screen_cv_sys_sockets_nofs=no,
-+screen_cv_sys_sockets_nofs=yes))
-+
-+if test X"$screen_cv_sys_sockets_nofs" = Xyes; then
-+ AC_DEFINE(SOCK_NOT_IN_FS)
-+fi
- fi
-
-
- dnl
- dnl **** choose sockets or fifos ****
- dnl
--if test -n "$fifo"; then
-- if test -n "$sock"; then
-- if test -n "$nore"; then
-+AH_TEMPLATE([NAMEDPIPE], [Define this if your system supports named pipes.])
-+if test X"$screen_cv_sys_fifo_usable" = Xyes; then
-+ if test X"$screen_cv_sys_sockets_usable" = Xyes; then
-+ if test X"$screen_cv_sys_sockets_nofs" = Xyes; then
- AC_NOTE(- hmmm... better take the fifos)
- AC_DEFINE(NAMEDPIPE)
-- elif test -n "$fifobr"; then
-+ elif test X"$screen_cv_sys_fifo_broken_impl" = Xyes; then
- AC_NOTE(- as your fifos are broken lets use the sockets.)
- else
- AC_NOTE(- both sockets and fifos usable. let's take fifos.)
-@@ -525,7 +877,7 @@ if test -n "$fifo"; then
- AC_NOTE(- using named pipes, of course)
- AC_DEFINE(NAMEDPIPE)
- fi
--elif test -n "$sock"; then
-+elif test X"$screen_cv_sys_sockets_usable" = Xyes; then
- AC_NOTE(- using unix-domain sockets, of course)
- else
- AC_MSG_ERROR(you have neither usable sockets nor usable pipes -> no screen)
-@@ -535,7 +887,11 @@ dnl
- dnl **** check the select implementation ****
- dnl
-
--AC_CHECKING(select return value)
-+AH_TEMPLATE([SELECT_BROKEN],
-+[If the select return value doesn't treat a descriptor that is
-+ usable for reading and writing as two hits, define SELECT_BROKEN.])
-+AC_CACHE_CHECK([for broken select return value],
-+ [screen_cv_sys_select_broken_retval],
- AC_TRY_RUN([
- #include <sys/types.h>
- #include <sys/stat.h>
-@@ -634,17 +990,26 @@ main()
- exit(1);
- exit(0);
- }
--],AC_NOTE(- select is ok),
--AC_NOTE(- select can't count) AC_DEFINE(SELECT_BROKEN))
-+], screen_cv_sys_select_broken_retval=no,
-+screen_cv_sys_select_broken_retval=yes))
-+if test X"$screen_cv_sys_select_broken_retval" = Xyes; then
-+ AC_DEFINE(SELECT_BROKEN)
-+fi
-
- dnl
- dnl **** termcap or terminfo ****
- dnl
-+AH_TEMPLATE([TERMINFO],
-+[Define TERMINFO if your machine emulates the termcap routines
-+ with the terminfo database.
-+ Thus the .screenrc file is parsed for
-+ the command 'terminfo' and not 'termcap'])
- AC_CHECKING(for tgetent)
- AC_TRY_LINK(,tgetent((char *)0, (char *)0);,,
- olibs="$LIBS"
- LIBS="-lcurses $olibs"
- AC_CHECKING(libcurses)
-+AC_CHECK_LIB(ncursesw,tgetent)
- AC_TRY_LINK(,[
- #ifdef __hpux
- __sorry_hpux_libcurses_is_totally_broken_in_10_10();
-@@ -662,25 +1027,39 @@ LIBS="-lncurses $olibs"
- AC_CHECKING(libncurses)
- AC_TRY_LINK(,tgetent((char *)0, (char *)0);,,
- AC_MSG_ERROR(!!! no tgetent - no screen))))))
--
--AC_TRY_RUN([
-+AC_CACHE_CHECK([using terminfo database],[screen_cv_sys_terminfo_used],
-+ AC_TRY_RUN([
- 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))
-+}
-+ ], screen_cv_sys_terminfo_used=no,
-+ screen_cv_sys_terminfo_used=yes)
-+)
-+
-+if test X"$screen_cv_sys_terminfo_used" = Xyes; then
-+ AC_DEFINE(TERMINFO)
-+fi
-+
- AC_CHECKING(ospeed)
-+AH_TEMPLATE([NEED_OSPEED],[If your library does not define ospeed, define this.])
- AC_TRY_LINK(extern short ospeed;,ospeed=5;,,AC_DEFINE(NEED_OSPEED))
-
- dnl
- dnl **** PTY specific things ****
- dnl
-+AH_TEMPLATE([HAVE_DEV_PTC],
-+[define HAVE_DEV_PTC if you have a /dev/ptc character special
-+ device.])
- AC_CHECKING(for /dev/ptc)
- if test -r /dev/ptc; then
- AC_DEFINE(HAVE_DEV_PTC)
- fi
-
- AC_CHECKING(for SVR4 ptys)
-+AH_TEMPLATE([HAVE_SVR4_PTYS],
-+[define HAVE_SVR4_PTYS if you have a /dev/ptmx character special
-+ device and support the ptsname(), grantpt(), unlockpt() functions.])
- sysvr4ptys=
- if test -c /dev/ptmx ; then
- AC_TRY_LINK([],[ptsname(0);grantpt(0);unlockpt(0);],[AC_DEFINE(HAVE_SVR4_PTYS)
-@@ -696,6 +1075,13 @@ AC_CHECK_FUNCS(openpty,,
- fi
-
- AC_CHECKING(for ptyranges)
-+AH_TEMPLATE([PTYRANGE0],
-+[define PTYRANGE0 and or PTYRANGE1 if you want to adapt screen
-+ to unusual environments. E.g. For SunOs the defaults are "qpr" and
-+ "0123456789abcdef". For SunOs 4.1.2
-+ #define PTYRANGE0 "pqrstuvwxyzPQRST"
-+ is recommended by Dan Jacobson.])
-+AH_TEMPLATE([PTYRANGE1],[])
- if test -d /dev/ptym ; then
- pdir='/dev/ptym'
- else
-@@ -812,6 +1198,9 @@ dnl
- dnl **** utmp handling ****
- dnl
- AC_CHECKING(getutent)
-+AH_TEMPLATE([GETUTENT],
-+[If your system has getutent(), pututline(), etc. to write to the
-+ utmp file, define GETUTENT.])
- AC_TRY_LINK([
- #include <time.h> /* to get time_t on SCO */
- #include <sys/types.h>
-@@ -845,6 +1234,7 @@ AC_TRY_LINK([
- [int x = DEAD_PROCESS; pututline((struct utmp *)0); getutent();], AC_DEFINE(GETUTENT), LIBS="$olibs")
- )
- AC_CHECKING(ut_host)
-+AH_TEMPLATE([UTHOST],[Define UTHOST if the utmp file has a host field.])
- AC_TRY_COMPILE([
- #include <time.h>
- #include <sys/types.h>
-@@ -855,8 +1245,9 @@ AC_TRY_COMPILE([
- #include <utmp.h>
- #endif
- ],[struct utmp u; u.ut_host[0] = 0;], AC_DEFINE(UTHOST))
-+AH_TEMPLATE([HAVE_UTEMPTER],[Define if you have the utempter utmp helper program])
- AC_CHECK_HEADER(utempter.h, have_utempter=yes, have_utempter=no)
--if test "$have_utempter" = yes; then
-+if test X"$have_utempter" = Xyes; then
- AC_DEFINE(HAVE_UTEMPTER)
- LIBS="$LIBS -lutempter"
- fi
-@@ -864,20 +1255,39 @@ fi
- dnl
- dnl **** loadav ****
- dnl
-+
-+AH_TEMPLATE([LOADAV],
-+[If you want the "time" command to display the current load average
-+ define LOADAV. Maybe you must install screen with the needed
-+ privileges to read /dev/kmem.
-+ Note that NLIST_ stuff is only checked, when getloadavg() is not available.
-+])
-+AH_TEMPLATE([LOADAV_NUM])
-+AH_TEMPLATE([LOADAV_TYPE])
-+AH_TEMPLATE([LOADAV_SCALE])
-+AH_TEMPLATE([LOADAV_GETLOADAVG])
-+AH_TEMPLATE([LOADAV_UNIX])
-+AH_TEMPLATE([LOADAV_AVENRUN])
-+AH_TEMPLATE([LOADAV_USE_NLIST64])
-+
-+AH_TEMPLATE([NLIST_DECLARED])
-+AH_TEMPLATE([NLIST_STRUCT])
-+AH_TEMPLATE([NLIST_NAME_UNION])
-+
- AC_CHECKING(for libutil(s))
--test -f /usr/lib/libutils.a && LIBS="$LIBS -lutils"
--test -f /usr/lib/libutil.a && LIBS="$LIBS -lutil"
-+dnl I have no idea whether "login" is an appropriate symbol to check for here - Hannes
-+AC_CHECK_LIB(utils,login)
-+AC_CHECK_LIB(util,login)
-
- AC_CHECKING(getloadavg)
- AC_TRY_LINK(,[getloadavg((double *)0, 0);],
- AC_DEFINE(LOADAV_GETLOADAVG) load=1,
--if test -f /usr/lib/libkvm.a ; then
- olibs="$LIBS"
--LIBS="$LIBS -lkvm"
-+AC_CHECK_LIB(kvm,kvm_open,
- AC_CHECKING(getloadavg with -lkvm)
- AC_TRY_LINK(,[getloadavg((double *)0, 0);],
- AC_DEFINE(LOADAV_GETLOADAVG) load=1, LIBS="$olibs")
--fi
-+)
- )
-
- if test -z "$load" ; then
-@@ -1019,6 +1429,12 @@ if test -n "$loadscale" ; then AC_DEFINE_UNQUOTED(LOADAV_SCALE,$loadscale) fi
- dnl
- dnl **** signal handling ****
- dnl
-+
-+AH_TEMPLATE([SIGVOID],
-+[Define SIGVOID if your signal handlers return void. On older
-+ systems, signal returns int, but on newer ones, it returns void.])
-+
-+
- if test -n "$posix" ; then
-
- dnl POSIX has reliable signals with void return type.
-@@ -1036,6 +1452,7 @@ AC_TRY_COMPILE(
- #endif
- extern void (*signal ()) ();], [int i;], AC_DEFINE(SIGVOID))
- AC_CHECKING(sigset)
-+AH_TEMPLATE([USESIGSET], [Define USESIGSET if you have sigset for BSD 4.1 reliable signals.])
- AC_TRY_LINK([
- #include <sys/types.h>
- #include <signal.h>
-@@ -1047,6 +1464,9 @@ sigset(0, (int (*)())0);
- #endif
- ], AC_DEFINE(USESIGSET))
- AC_CHECKING(signal implementation)
-+AH_TEMPLATE([SYSVSIGS],
-+[Define SYSVSIGS if signal handlers must be reinstalled after
-+ they have been called.])
- AC_TRY_RUN([
- #include <sys/types.h>
- #include <signal.h>
-@@ -1089,13 +1509,14 @@ dnl **** libraries ****
- dnl
-
- AC_CHECKING(for crypt and sec libraries)
--test -f /lib/libcrypt_d.a || test -f /usr/lib/libcrypt_d.a && LIBS="$LIBS -lcrypt_d"
-+dnl I have no idea whether "crypt" is an appropriate symbol to check for here - Hannes
-+AC_CHECK_LIB(crypt_d,crypt)
- oldlibs="$LIBS"
--LIBS="$LIBS -lcrypt"
- AC_CHECKING(crypt)
- AC_TRY_LINK(,,,LIBS="$oldlibs")
--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"
-+AC_CHECK_LIB(crypt,crypt)
-+AC_CHECK_LIB(sec,crypt)
-+AC_CHECK_LIB(shadow,getspnam)
- oldlibs="$LIBS"
- LIBS="$LIBS -lsun"
- AC_CHECKING(IRIX sun library)
-@@ -1118,6 +1539,13 @@ dnl
- dnl **** misc things ****
- dnl
- AC_CHECKING(wait union)
-+AH_TEMPLATE([BSDWAIT],
-+[Define BSDWAIT if your system defines a 'union wait' in <sys/wait.h>
-+
-+ Only allow BSDWAIT i.e. wait3 on nonposix systems, since
-+ posix implies wait(3) and waitpid(3). vdlinden@fwi.uva.nl
-+ TODO(Hannes) shipped config.h.in does that with a #ifdef
-+])
- AC_TRY_COMPILE([#include <sys/types.h>
- #include <sys/wait.h>
- ],[
-@@ -1128,6 +1556,12 @@ AC_TRY_COMPILE([#include <sys/types.h>
- #endif
- ],AC_DEFINE(BSDWAIT))
-
-+AH_TEMPLATE([TERMIO],
-+[Define TERMIO if you have struct termio instead of struct sgttyb.
-+ This is usually the case for SVID systems, where BSD uses sgttyb.
-+ POSIX systems should define this anyway, even though they use
-+ struct termios.])
-+
- if test -z "$butterfly"; then
- AC_CHECKING(for termio or termios)
- AC_TRY_CPP([#include <termio.h>], AC_DEFINE(TERMIO),
-@@ -1137,17 +1571,34 @@ fi
- )
- fi
-
-+AH_TEMPLATE([CYTERMIO], [Define CYTERMIO if you have cyrillic termio modes.])
- dnl AC_CHECK_HEADER(shadow.h, AC_DEFINE(SHADOWPW))
- AC_CHECKING(getspnam)
-+AH_TEMPLATE([SHADOWPW],
-+[If the passwords are stored in a shadow file and you want the
-+ builtin lock to work properly, define SHADOWPW.])
- AC_TRY_LINK([#include <shadow.h>], [getspnam("x");],AC_DEFINE(SHADOWPW))
-
- AC_CHECKING(getttyent)
-+AH_TEMPLATE([GETTTYENT],
-+[If your system has the new format /etc/ttys (like 4.3 BSD) and the
-+ getttyent(3) library functions, define GETTTYENT.])
- AC_TRY_LINK(,[getttyent();], AC_DEFINE(GETTTYENT))
-
- AC_CHECKING(fdwalk)
-+AH_TEMPLATE([HAVE_FDWALK],
-+[Newer versions of Solaris include fdwalk, which can greatly improve
-+ the startup time of screen; otherwise screen spends a lot of time
-+ closing file descriptors.])
- AC_TRY_LINK([#include <stdlib.h>], [fdwalk(NULL, NULL);],AC_DEFINE(HAVE_FDWALK))
-
--AC_CHECKING(whether memcpy/memmove/bcopy handles overlapping arguments)
-+AH_TEMPLATE([USEBCOPY],
-+[Define USEBCOPY if the bcopy/memcpy from your system's C library
-+ supports the overlapping of source and destination blocks. When
-+ undefined, screen uses its own (probably slower) version of bcopy().])
-+
-+AC_CACHE_CHECK([if bcopy handles overlap],
-+ [screen_cv_sys_bcopy_overlap],
- AC_TRY_RUN([
- main() {
- char buf[10];
-@@ -1160,8 +1611,21 @@ main() {
- if (strncmp(buf, "cdedef", 6))
- exit(1);
- exit(0); /* libc version works properly. */
--}], AC_DEFINE(USEBCOPY))
-+}], screen_cv_sys_bcopy_overlap=yes,
-+screen_cv_sys_bcopy_overlap=no))
-+if test X"$screen_cv_sys_bcopy_overlap" = Xyes; then
-+ AC_DEFINE(USEBCOPY)
-+fi
-
-+AH_TEMPLATE([USEMEMMOVE],
-+[SYSV machines may have a working memcpy() -- Oh, this is
-+ quite unlikely. Tell me if you see one.
-+ "But then, memmove() should work, if at all available" he thought...
-+ Boing, never say "works everywhere" unless you checked SCO UNIX.
-+ Their memove fails the test in the configure script. Sigh. (Juergen)
-+])
-+AC_CACHE_CHECK([if memmove handles overlap],
-+ [screen_cv_sys_memmove_overlap],
- AC_TRY_RUN([
- #define bcopy(s,d,l) memmove(d,s,l)
- main() {
-@@ -1175,9 +1639,15 @@ main() {
- if (strncmp(buf, "cdedef", 6))
- exit(1);
- exit(0); /* libc version works properly. */
--}], AC_DEFINE(USEMEMMOVE))
--
-+}], screen_cv_sys_memmove_overlap=yes,
-+screen_cv_sys_memmove_overlap=no))
-+if test X"$screen_cv_sys_memmove_overlap" = Xyes; then
-+ AC_DEFINE(USEMEMMOVE)
-+fi
-
-+AH_TEMPLATE([USEMEMCPY],[])
-+AC_CACHE_CHECK([if memcpy handles overlap],
-+ [screen_cv_sys_memcpy_overlap],
- AC_TRY_RUN([
- #define bcopy(s,d,l) memcpy(d,s,l)
- main() {
-@@ -1191,9 +1661,19 @@ main() {
- if (strncmp(buf, "cdedef", 6))
- exit(1);
- exit(0); /* libc version works properly. */
--}], AC_DEFINE(USEMEMCPY))
-+}], screen_cv_sys_memcpy_overlap=yes,
-+screen_cv_sys_memcpy_overlap=no))
-+if test X"$screen_cv_sys_memcpy_overlap" = Xyes; then
-+ AC_DEFINE(USEMEMCPY)
-+fi
-
- AC_MSG_CHECKING(long file names)
-+AH_TEMPLATE([NAME_MAX],
-+[If you are on a SYS V machine that restricts filename length to 14
-+ characters, you may need to enforce that by setting NAME_MAX to 14])
-+dnl TODO(Hannes) shipped config.h.in has
-+dnl #undef NAME_MAX /* KEEP_UNDEF_HERE override system value */
-+dnl ahead of this
- (echo 1 > /tmp/conftest9012345) 2>/dev/null
- (echo 2 > /tmp/conftest9012346) 2>/dev/null
- val=`cat /tmp/conftest9012345 2>/dev/null`
-@@ -1206,17 +1686,28 @@ fi
- rm -f /tmp/conftest*
-
- AC_MSG_CHECKING(for vsprintf)
-+AH_TEMPLATE([USEVARARGS],
-+[If your system has vsprintf() and requires the use of the macros in
-+ "varargs.h" to use functions with variable arguments,
-+ define USEVARARGS.])
- AC_TRY_LINK(,[vsprintf(0,0,0);], AC_MSG_RESULT(yes);AC_DEFINE(USEVARARGS), AC_MSG_RESULT(no))
-
- AC_HEADER_DIRENT
-
- AC_MSG_CHECKING(for setenv)
-+AH_TEMPLATE([USESETENV], [If your system has setenv() and unsetenv() define USESETENV])
- AC_TRY_LINK(,[setenv((char *)0,(char *)0);unsetenv((char *)0);], AC_MSG_RESULT(yes);AC_DEFINE(USESETENV),
- AC_MSG_RESULT(no)
- AC_MSG_CHECKING(for putenv)
-+AH_TEMPLATE([NEEDPUTENV],
-+[If your system does not come with a setenv()/putenv()/getenv()
-+ functions, you may bring in our own code by defining NEEDPUTENV.])
- AC_TRY_LINK(,[putenv((char *)0);unsetenv((char *)0);], AC_MSG_RESULT(yes) , AC_MSG_RESULT(no);AC_DEFINE(NEEDPUTENV)
- ))
- AC_MSG_CHECKING([for nl_langinfo(CODESET)])
-+AH_TEMPLATE([HAVE_NL_LANGINFO],
-+[define HAVE_NL_LANGINFO if your system has the nl_langinfo() call
-+ and <langinfo.h> defines CODESET.])
- AC_TRY_LINK([
- #include <langinfo.h>
- ],[nl_langinfo(CODESET);], AC_MSG_RESULT(yes);AC_DEFINE(HAVE_NL_LANGINFO), AC_MSG_RESULT(no))
-@@ -1266,7 +1757,8 @@ 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.))
-+AC_MSG_CHECKING(compiler sanity)
-+AC_TRY_RUN(main(){exit(0);},,AC_MSG_ERROR(Can't run the compiler - internal error. Sorry.), AC_MSG_WARN(Skipping test due to crosscompilation))
-
- ETCSCREENRC="\"/usr/local/etc/screenrc\""
- if test -n "$prefix"; then