From 41cb4569e73a6420bd0a8990dc47ae6b08dcd979 Mon Sep 17 00:00:00 2001 From: mouring Date: Thu, 16 Aug 2001 00:09:49 +0000 Subject: [PATCH] - (bal) QNX resync. OK tim@ --- ChangeLog | 1 + acconfig.h | 9 +++++ configure.in | 101 ++++++++++++++++++++++++++++++++++++++++++--------- defines.h | 24 ++++++++++++ 4 files changed, 117 insertions(+), 18 deletions(-) diff --git a/ChangeLog b/ChangeLog index b9f8803b..ecc23626 100644 --- a/ChangeLog +++ b/ChangeLog @@ -30,6 +30,7 @@ [scp.1 sftp.1 ssh.1] consistent documentation and example of ``-o ssh_option'' for sftp and scp; document keyword=argument for ssh. + - (bal) QNX resync. OK tim@ 20010814 - (stevesk) sshpty.c, cray.[ch]: whitespace, formatting and cleanup diff --git a/acconfig.h b/acconfig.h index af6e586e..53f64220 100644 --- a/acconfig.h +++ b/acconfig.h @@ -323,6 +323,15 @@ /* Define if your getopt(3) defines and uses optreset */ #undef HAVE_GETOPT_OPTRESET +/* Define on *nto-qnx systems */ +#undef MISSING_NFDBITS + +/* Define on *nto-qnx systems */ +#undef MISSING_HOWMANY + +/* Define on *nto-qnx systems */ +#undef MISSING_FD_MASK + @BOTTOM@ /* ******************* Shouldn't need to edit below this line ************** */ diff --git a/configure.in b/configure.in index f94ed4a0..8f4a53e0 100644 --- a/configure.in +++ b/configure.in @@ -271,6 +271,14 @@ mips-sony-bsd|mips-sony-newsos4) fi fi ;; + +*-*-nto-qnx) + AC_DEFINE(USE_PIPES) + AC_DEFINE(NO_X11_UNIX_SOCKETS) + AC_DEFINE(MISSING_NFDBITS) + AC_DEFINE(MISSING_HOWMANY) + AC_DEFINE(MISSING_FD_MASK) + ;; esac # Allow user to specify flags @@ -365,7 +373,7 @@ AC_CHECK_FUNC(utimes, AC_FUNC_STRFTIME # Checks for header files. -AC_CHECK_HEADERS(bstring.h crypt.h endian.h floatingpoint.h getopt.h glob.h lastlog.h libgen.h limits.h login.h login_cap.h maillock.h netdb.h netgroup.h netinet/in_systm.h paths.h poll.h pty.h regex.h shadow.h security/pam_appl.h sys/bitypes.h sys/bsdtty.h sys/cdefs.h sys/poll.h sys/queue.h sys/select.h sys/stat.h sys/stropts.h sys/sysmacros.h sys/time.h sys/ttcompat.h sys/un.h stddef.h time.h ttyent.h usersec.h util.h utime.h utmp.h utmpx.h vis.h) +AC_CHECK_HEADERS(bstring.h crypt.h endian.h floatingpoint.h getopt.h glob.h lastlog.h libgen.h limits.h login.h login_cap.h maillock.h netdb.h netgroup.h netinet/in_systm.h paths.h poll.h pty.h regex.h shadow.h security/pam_appl.h stdint.h strings.h sys/bitypes.h sys/bsdtty.h sys/cdefs.h sys/poll.h sys/queue.h sys/select.h sys/stat.h sys/stropts.h sys/sysmacros.h sys/time.h sys/ttcompat.h sys/un.h stddef.h time.h ttyent.h usersec.h util.h utime.h utmp.h utmpx.h vis.h) # Check for ALTDIRFUNC glob() extension AC_MSG_CHECKING(for GLOB_ALTDIRFUNC support) @@ -770,7 +778,22 @@ if test "x$ac_cv_have_intxx_t" = "xyes" ; then AC_DEFINE(HAVE_INTXX_T) have_intxx_t=1 fi - + +if (test -z "$have_intxx_t" && \ + test "x$ac_cv_header_stdint_h" = "xyes") +then + AC_MSG_CHECKING([for intXX_t types in stdint.h]) + AC_TRY_COMPILE( + [ #include ], + [ int8_t a; int16_t b; int32_t c; a = b = c = 1;], + [ + AC_DEFINE(HAVE_INTXX_T) + AC_MSG_RESULT(yes) + ], + [ AC_MSG_RESULT(no) ] + ) +fi + AC_CACHE_CHECK([for int64_t type], ac_cv_have_int64_t, [ AC_TRY_COMPILE( [ #include ], @@ -784,6 +807,19 @@ if test "x$ac_cv_have_int64_t" = "xyes" ; then have_int64_t=1 fi +if test -z "$have_int64_t" ; then + AC_MSG_CHECKING([for int64_t type in sys/socket.h]) + AC_TRY_COMPILE( + [ #include ], + [ int64_t a; a = 1], + [ + AC_DEFINE(HAVE_INT64_T) + AC_MSG_RESULT(yes) + ], + [ AC_MSG_RESULT(no) ] + ) +fi + AC_CACHE_CHECK([for u_intXX_t types], ac_cv_have_u_intxx_t, [ AC_TRY_COMPILE( [ #include ], @@ -797,6 +833,19 @@ if test "x$ac_cv_have_u_intxx_t" = "xyes" ; then have_u_intxx_t=1 fi +if test -z "$have_u_intxx_t" ; then + AC_MSG_CHECKING([for u_intXX_t types in sys/socket.h]) + AC_TRY_COMPILE( + [ #include ], + [ u_int8_t a; u_int16_t b; u_int32_t c; a = b = c = 1;], + [ + AC_DEFINE(HAVE_U_INTXX_T) + AC_MSG_RESULT(yes) + ], + [ AC_MSG_RESULT(no) ] + ) +fi + AC_CACHE_CHECK([for u_int64_t types], ac_cv_have_u_int64_t, [ AC_TRY_COMPILE( [ #include ], @@ -810,6 +859,35 @@ if test "x$ac_cv_have_u_int64_t" = "xyes" ; then have_u_int64_t=1 fi +if test -z "$have_u_intxx_t" ; then + AC_CACHE_CHECK([for uintXX_t types], ac_cv_have_uintxx_t, [ + AC_TRY_COMPILE( + [ +#include + ], + [ uint8_t a; uint16_t b; uint32_t c; a = b = c = 1; ], + [ ac_cv_have_uintxx_t="yes" ], + [ ac_cv_have_uintxx_t="no" ] + ) + ]) + if test "x$ac_cv_have_uintxx_t" = "xyes" ; then + AC_DEFINE(HAVE_UINTXX_T) + fi +fi + +if test -z "$have_uintxx_t" ; then + AC_MSG_CHECKING([for uintXX_t types in stdint.h]) + AC_TRY_COMPILE( + [ #include ], + [ uint8_t a; uint16_t b; uint32_t c; a = b = c = 1;], + [ + AC_DEFINE(HAVE_UINTXX_T) + AC_MSG_RESULT(yes) + ], + [ AC_MSG_RESULT(no) ] + ) +fi + if (test -z "$have_u_intxx_t" || test -z "$have_intxx_t" && \ test "x$ac_cv_header_sys_bitypes_h" = "xyes") then @@ -832,22 +910,6 @@ then ) fi -if test -z "$have_u_intxx_t" ; then - AC_CACHE_CHECK([for uintXX_t types], ac_cv_have_uintxx_t, [ - AC_TRY_COMPILE( - [ -#include - ], - [ uint8_t a; uint16_t b; uint32_t c; a = b = c = 1; ], - [ ac_cv_have_uintxx_t="yes" ], - [ ac_cv_have_uintxx_t="no" ] - ) - ]) - if test "x$ac_cv_have_uintxx_t" = "xyes" ; then - AC_DEFINE(HAVE_UINTXX_T) - fi -fi - AC_CACHE_CHECK([for socklen_t], ac_cv_have_socklen_t, [ AC_TRY_COMPILE( [ @@ -1771,6 +1833,9 @@ AC_TRY_COMPILE([ #endif #ifdef HAVE_PATHS_H # include +#endif +#ifdef HAVE_LOGIN_H +# include #endif ], [ char *lastlog = LASTLOG_FILE; ], diff --git a/defines.h b/defines.h index fcc95fb4..0d745120 100644 --- a/defines.h +++ b/defines.h @@ -46,6 +46,15 @@ #include /* Struct winsize */ #include /* For O_NONBLOCK */ +/* *-*-nto-qnx needs these headers for strcasecmp and LASTLOG_FILE respectively */ +#ifdef HAVE_STRINGS_H +# include +#endif +#ifdef HAVE_LOGIN_H +# include +#endif + + /* Constants */ #ifndef SHUT_RDWR @@ -126,6 +135,11 @@ enum # define S_IRWXO 0000007 /* read, write, execute */ #endif /* S_IXUSR */ +/* *-*-nto-qnx doesn't define this constant in the system headers */ +#ifdef MISSING_NFDBITS +# define NFDBITS (8 * sizeof(unsigned long)) +#endif + /* Types */ /* If sys/types.h does not supply intXX_t, supply them ourselves */ @@ -280,6 +294,11 @@ struct winsize { }; #endif +/* *-*-nto-qnx does not define this type in the system headers */ +#ifdef MISSING_FD_MASK + typedef unsigned long int fd_mask; +#endif + /* Paths */ #ifndef _PATH_BSHELL @@ -386,6 +405,11 @@ struct winsize { (sizeof(*(su)) - sizeof((su)->sun_path) + strlen((su)->sun_path)) #endif /* SUN_LEN */ +/* *-*-nto-qnx doesn't define this macro in the system headers */ +#ifdef MISSING_HOWMANY +# define howmany(x,y) (((x)+((y)-1))/(y)) +#endif + /* Function replacement / compatibility hacks */ /* In older versions of libpam, pam_strerror takes a single argument */ -- 2.45.2