[PATCH] Build Options Autogen patch

Vance Lankhaar vance at vance.pcsscreston.ca
Sat Dec 29 21:08:03 GMT 2001


Here is my latest version of my build options patch. Apparently (as I knew
when I first made it) keeping smbd/build_options.c in sync with what's
going on in the configure script isn't easy, nor really done. So, thinking
out loud with the Andrews, I decided to write a little awk script to
automate the process. I can't say that I wrote the script very efficiently
since I'm not really AWKward, so any comments would be greatly
appreciated.

Also, I'm looking for ideas on a way to sort the (long) list of defines. I
think someone suggested seperating different sections into different
strings (using sprintf instead of printf) and outputing them at the end,
but the only thing that concerns me is that some older versions of awk
might not be able to handle really long strings (I have no idea where that
idea comes from - possible a dream). Any concerns in that matter? Or is
there a better method?

-- 
Vance Lankhaar
vance at pcsscreston.ca
vance at digital-host.net
vlankhaar at hotmail.com
-------------- next part --------------
? script/mkbuildenv.awk
Index: Makefile.in
===================================================================
RCS file: /cvsroot/samba/source/Makefile.in,v
retrieving revision 1.421
diff -u -r1.421 Makefile.in
--- Makefile.in	21 Dec 2001 20:04:22 -0000	1.421
+++ Makefile.in	30 Dec 2001 04:35:38 -0000
@@ -450,7 +450,7 @@
 ######################################################################
 # now the rules...
 ######################################################################
-all : SHOWFLAGS include/proto.h include/build_env.h $(SPROGS) $(PROGS) $(WINBIND_PROGS) $(WINBIND_SPROGS) $(LPROGS) $(SHLIBS)
+all : SHOWFLAGS smbd/build_options.c include/proto.h include/build_env.h $(SPROGS) $(PROGS) $(WINBIND_PROGS) $(WINBIND_SPROGS) $(LPROGS) $(SHLIBS)
 
 pam_smbpass : SHOWFLAGS bin/pam_smbpass. at SHLIBEXT@
 
@@ -800,8 +800,8 @@
 	  $(WINBINDD_OBJ1)
 
 delheaders:
-	@/bin/rm -f $(srcdir)/include/proto.h $(srcdir)/include/build_env.h
-	@/bin/rm -f include/proto.h include/build_env.h
+	@/bin/rm -f $(srcdir)/include/proto.h $(srcdir)/include/build_env.h $(srcdir)/smbd/build_options.c
+	@/bin/rm -f include/proto.h include/build_env.h smbd/build_options.c
 
 # we want our generated headers to be rebuilt if they don't exist, but not rebuilt every time
 .headers.stamp:
@@ -817,7 +817,11 @@
 	@echo rebuilding include/build_env.h
 	@cd $(srcdir) && $(SHELL) script/build_env.sh $(srcdir) $(builddir) $(CC) > $(builddir)/include/build_env.h
 
-headers: delheaders include/proto.h include/build_env.h .headers.stamp
+smbd/build_options.c:
+	@echo rebuilding smbd/build_options.c
+	@cd $(srcdir) && $(AWK) -f script/mkbuildenv.awk $(builddir)/include/config.h.in > $(builddir)/smbd/build_options.c
+
+headers: delheaders smbd/build_options.c include/proto.h include/build_env.h .headers.stamp
 
 proto: headers winbindd_proto
 
Index: smbd/build_options.c
===================================================================
RCS file: /cvsroot/samba/source/smbd/build_options.c,v
retrieving revision 1.8
diff -u -r1.8 build_options.c
--- smbd/build_options.c	22 Nov 2001 05:29:04 -0000	1.8
+++ smbd/build_options.c	30 Dec 2001 04:35:42 -0000
@@ -2,7 +2,7 @@
    Unix SMB/Netbios implementation.
    Version 2.2
    Build Options for Samba Suite
-   Copyright (C) Vance Lankhaar <vlankhaar at hotmail.com> 2001
+   Copyright (C) Vance Lankhaar <vance at pcsscreston.ca> 2001
    Copyright (C) Andrew Bartlett <abartlet at samba.org> 2001
    
    This program is free software; you can redistribute it and/or modify
@@ -26,9 +26,7 @@
 
 static void output(BOOL screen, char *format, ...) PRINTF_ATTRIBUTE(2,3);
 
-/*
-#define OUTPUT(x) snprintf(outstring,sizeof(outstring),x); output(screen,outstring);
-*/
+
 /****************************************************************************
 helper function for build_options
 ****************************************************************************/
@@ -70,12 +68,144 @@
        output(screen,"   SRCDIR:      %s\n",BUILD_ENV_SRCDIR);
        output(screen,"   BUILDDIR:    %s\n",BUILD_ENV_BUILDDIR);
 
-       
+     
+#endif
+
+       /* Output various paths to files and directories */
+       output(screen,"\nPaths:\n");
+       output(screen,"   CONFIGFILE: %s\n", dyn_CONFIGFILE);
+#ifdef PRIVATE_DIR
+       output(screen,"   PRIVATE_DIR: %s\n",PRIVATE_DIR);
+#endif
+#ifdef LMHOSTSFILE
+       output(screen,"   LMHOSTSFILE: %s\n",LMHOSTSFILE);
 #endif
+       output(screen,"   SBINDIR: %s\n", dyn_SBINDIR);
+       output(screen,"   BINDIR: %s\n", dyn_BINDIR);
+       output(screen,"   LOCKDIR: %s\n",dyn_LOCKDIR);
+       output(screen,"   DRIVERFILE: %s\n", dyn_DRIVERFILE);
+       output(screen,"   LOGFILEBASE: %s\n", dyn_LOGFILEBASE);
 
-       /* Output various options (most correspond to --with options) */ 
-       output(screen,"\nBuild options:\n");
-#ifdef WITH_SMBWRAPPER 
+/* Output various other options (map to defines in include/config.h) */
+       output(screen,"\nOther Build Options:\n");
+#ifdef _ALL_SOURCE
+       output(screen,"   _ALL_SOURCE\n");
+#endif
+#ifdef __CHAR_UNSIGNED__
+       output(screen,"   __CHAR_UNSIGNED__\n");
+#endif
+#ifdef const
+       output(screen,"   const\n");
+#endif
+#ifdef gid_t
+       output(screen,"   gid_t\n");
+#endif
+#ifdef HAVE_MMAP
+       output(screen,"   HAVE_MMAP\n");
+#endif
+#ifdef HAVE_ST_RDEV
+       output(screen,"   HAVE_ST_RDEV\n");
+#endif
+#ifdef HAVE_SYS_WAIT_H
+       output(screen,"   HAVE_SYS_WAIT_H\n");
+#endif
+#ifdef inline
+       output(screen,"   inline\n");
+#endif
+#ifdef mode_t
+       output(screen,"   mode_t\n");
+#endif
+#ifdef NO_MINUS_C_MINUS_O
+       output(screen,"   NO_MINUS_C_MINUS_O\n");
+#endif
+#ifdef off_t
+       output(screen,"   off_t\n");
+#endif
+#ifdef pid_t
+       output(screen,"   pid_t\n");
+#endif
+#ifdef _POSIX_SOURCE
+       output(screen,"   _POSIX_SOURCE\n");
+#endif
+#ifdef RETSIGTYPE
+       output(screen,"   RETSIGTYPE\n");
+#endif
+#ifdef size_t
+       output(screen,"   size_t\n");
+#endif
+#ifdef STDC_HEADERS
+       output(screen,"   STDC_HEADERS\n");
+#endif
+#ifdef TIME_WITH_SYS_TIME
+       output(screen,"   TIME_WITH_SYS_TIME\n");
+#endif
+#ifdef uid_t
+       output(screen,"   uid_t\n");
+#endif
+#ifdef WORDS_BIGENDIAN
+       output(screen,"   WORDS_BIGENDIAN\n");
+#endif
+#ifdef HAVE_VOLATILE
+       output(screen,"   HAVE_VOLATILE\n");
+#endif
+#ifdef HAVE_BROKEN_READDIR
+       output(screen,"   HAVE_BROKEN_READDIR\n");
+#endif
+#ifdef HAVE_C99_VSNPRINTF
+       output(screen,"   HAVE_C99_VSNPRINTF\n");
+#endif
+#ifdef HAVE_ERRNO_DECL
+       output(screen,"   HAVE_ERRNO_DECL\n");
+#endif
+#ifdef HAVE_LONGLONG
+       output(screen,"   HAVE_LONGLONG\n");
+#endif
+#ifdef HAVE_OFF64_T
+       output(screen,"   HAVE_OFF64_T\n");
+#endif
+#ifdef HAVE_REMSH
+       output(screen,"   HAVE_REMSH\n");
+#endif
+#ifdef HAVE_UNSIGNED_CHAR
+       output(screen,"   HAVE_UNSIGNED_CHAR\n");
+#endif
+#ifdef HAVE_UTIMBUF
+       output(screen,"   HAVE_UTIMBUF\n");
+#endif
+#ifdef HAVE_SIG_ATOMIC_T_TYPE
+       output(screen,"   HAVE_SIG_ATOMIC_T_TYPE\n");
+#endif
+#ifdef HAVE_SOCKLEN_T_TYPE
+       output(screen,"   HAVE_SOCKLEN_T_TYPE\n");
+#endif
+#ifdef ssize_t
+       output(screen,"   ssize_t\n");
+#endif
+#ifdef ino_t
+       output(screen,"   ino_t\n");
+#endif
+#ifdef ssize_t
+       output(screen,"   ssize_t\n");
+#endif
+#ifdef loff_t
+       output(screen,"   loff_t\n");
+#endif
+#ifdef offset_t
+       output(screen,"   offset_t\n");
+#endif
+#ifdef aclent_t
+       output(screen,"   aclent_t\n");
+#endif
+#ifdef wchar_t
+       output(screen,"   wchar_t\n");
+#endif
+#ifdef HAVE_CONNECT
+       output(screen,"   HAVE_CONNECT\n");
+#endif
+#ifdef HAVE_SHORT_INO_T
+       output(screen,"   HAVE_SHORT_INO_T\n");
+#endif
+#ifdef WITH_SMBWRAPPER
        output(screen,"   WITH_SMBWRAPPER\n");
 #endif
 #ifdef WITH_AFS
@@ -84,41 +214,110 @@
 #ifdef WITH_DFS
        output(screen,"   WITH_DFS\n");
 #endif
-#ifdef KRB4_AUTH
-       output(screen,"   KRB4_AUTH");
+#ifdef SUNOS5
+       output(screen,"   SUNOS5\n");
 #endif
-#ifdef HAVE_KRB5
-       output(screen,"   HAVE_KRB5");
+#ifdef SUNOS4
+       output(screen,"   SUNOS4\n");
 #endif
-#ifdef WITH_AUTOMOUNT
-       output(screen,"   WITH_AUTOMOUNT\n");
+#ifdef LINUX
+       output(screen,"   LINUX\n");
 #endif
-#ifdef WITH_SMBMOUNT
-       output(screen,"   WITH_SMBMOUNT\n");
+#ifdef AIX
+       output(screen,"   AIX\n");
 #endif
-#ifdef WITH_PAM
-       output(screen,"   WITH_PAM\n");
+#ifdef BSD
+       output(screen,"   BSD\n");
 #endif
-#ifdef WITH_TDB_SAM
-       output(screen,"   WITH_TDB_SAM\n");
+#ifdef IRIX
+       output(screen,"   IRIX\n");
 #endif
-#ifdef WITH_LDAP_SAM
-       output(screen,"   WITH_LDAP_SAM\n");
+#ifdef IRIX6
+       output(screen,"   IRIX6\n");
 #endif
-#ifdef WITH_SMBPASSWD_SAM
-       output(screen,"   WITH_SMBPASSWD_SAM\n");
+#ifdef HPUX
+       output(screen,"   HPUX\n");
 #endif
-#ifdef WITH_NISPLUS_SAM
-       output(screen,"   WITH_NISPLUS_SAM\n");
+#ifdef QNX
+       output(screen,"   QNX\n");
 #endif
-#ifdef WITH_NISPLUS_HOME
-       output(screen,"   WITH_NISPLUS_HOME\n");
+#ifdef SCO
+       output(screen,"   SCO\n");
 #endif
-#ifdef WITH_SSL
-       output(screen,"   WITH_SSL\n");
+#ifdef OSF1
+       output(screen,"   OSF1\n");
 #endif
-#ifdef SSL_DIR
-       output(screen,"   SSL_DIR: %s\n",SSL_DIR);
+#ifdef NEXT2
+       output(screen,"   NEXT2\n");
+#endif
+#ifdef RELIANTUNIX
+       output(screen,"   RELIANTUNIX\n");
+#endif
+#ifdef HAVE_MMAP
+       output(screen,"   HAVE_MMAP\n");
+#endif
+#ifdef HAVE_FCNTL_LOCK
+       output(screen,"   HAVE_FCNTL_LOCK\n");
+#endif
+#ifdef HAVE_FTRUNCATE_EXTEND
+       output(screen,"   HAVE_FTRUNCATE_EXTEND\n");
+#endif
+#ifdef FTRUNCATE_NEEDS_ROOT
+       output(screen,"   FTRUNCATE_NEEDS_ROOT\n");
+#endif
+#ifdef HAVE_TRAPDOOR_UID
+       output(screen,"   HAVE_TRAPDOOR_UID\n");
+#endif
+#ifdef HAVE_ROOT
+       output(screen,"   HAVE_ROOT\n");
+#endif
+#ifdef HAVE_GETTIMEOFDAY_TZ
+       output(screen,"   HAVE_GETTIMEOFDAY_TZ\n");
+#endif
+#ifdef HAVE_SOCK_SIN_LEN
+       output(screen,"   HAVE_SOCK_SIN_LEN\n");
+#endif
+#ifdef STAT_READ_FILSYS
+       output(screen,"   STAT_READ_FILSYS\n");
+#endif
+#ifdef STAT_STATFS2_BSIZE
+       output(screen,"   STAT_STATFS2_BSIZE\n");
+#endif
+#ifdef STAT_STATFS2_FSIZE
+       output(screen,"   STAT_STATFS2_FSIZE\n");
+#endif
+#ifdef STAT_STATFS2_FS_DATA
+       output(screen,"   STAT_STATFS2_FS_DATA\n");
+#endif
+#ifdef STAT_STATFS3_OSF1
+       output(screen,"   STAT_STATFS3_OSF1\n");
+#endif
+#ifdef STAT_STATFS4
+       output(screen,"   STAT_STATFS4\n");
+#endif
+#ifdef STAT_STATVFS
+       output(screen,"   STAT_STATVFS\n");
+#endif
+#ifdef STAT_STATVFS64
+       output(screen,"   STAT_STATVFS64\n");
+#endif
+#ifdef HAVE_IFACE_AIX
+       output(screen,"   HAVE_IFACE_AIX\n");
+#endif
+#ifdef HAVE_IFACE_IFCONF
+       output(screen,"   HAVE_IFACE_IFCONF\n");
+#endif
+#ifdef HAVE_IFACE_IFREQ
+       output(screen,"   HAVE_IFACE_IFREQ\n");
+#endif
+#ifdef HAVE_CRYPT
+       output(screen,"   HAVE_CRYPT\n");
+#endif
+#ifdef HAVE_PUTPRPWNAM
+       output(screen,"   HAVE_PUTPRPWNAM\n");
+#endif
+#ifdef HAVE_SET_AUTH_PARAMETERS
+       output(screen,"   HAVE_SET_AUTH_PARAMETERS\n");
 #endif
 #ifdef WITH_SYSLOG
        output(screen,"   WITH_SYSLOG\n");
@@ -126,94 +325,938 @@
 #ifdef WITH_PROFILE
        output(screen,"   WITH_PROFILE\n");
 #endif
+#ifdef WITH_SSL
+       output(screen,"   WITH_SSL\n");
+#endif
+#ifdef SSL_DIR
+       output(screen,"   SSL_DIR\n");
+#endif
+#ifdef WITH_LDAP
+       output(screen,"   WITH_LDAP\n");
+#endif
+#ifdef WITH_NISPLUS
+       output(screen,"   WITH_NISPLUS\n");
+#endif
+#ifdef WITH_TDBPWD
+       output(screen,"   WITH_TDBPWD\n");
+#endif
+#ifdef WITH_PAM
+       output(screen,"   WITH_PAM\n");
+#endif
+#ifdef WITH_NISPLUS_HOME
+       output(screen,"   WITH_NISPLUS_HOME\n");
+#endif
+#ifdef WITH_AUTOMOUNT
+       output(screen,"   WITH_AUTOMOUNT\n");
+#endif
+#ifdef WITH_SMBMOUNT
+       output(screen,"   WITH_SMBMOUNT\n");
+#endif
 #ifdef WITH_QUOTAS
        output(screen,"   WITH_QUOTAS\n");
 #endif
-#ifdef WITH_VFS
-       output(screen,"   WITH_VFS\n");
+#ifdef WITH_WINBIND
+       output(screen,"   WITH_WINBIND\n");
 #endif
-#ifdef USE_SPINLOCKS
-       output(screen,"   USE_SPINLOCKS\n");
+#ifdef HAVE_BROKEN_GETGROUPS
+       output(screen,"   HAVE_BROKEN_GETGROUPS\n");
 #endif
-#ifdef SPARC_SPINLOCKS
-       output(screen,"   SPARC_SPINLOCKS\n");
+#ifdef REPLACE_GETPASS
+       output(screen,"   REPLACE_GETPASS\n");
+#endif
+#ifdef REPLACE_INET_NTOA
+       output(screen,"   REPLACE_INET_NTOA\n");
+#endif
+#ifdef HAVE_FILE_MACRO
+       output(screen,"   HAVE_FILE_MACRO\n");
+#endif
+#ifdef HAVE_FUNCTION_MACRO
+       output(screen,"   HAVE_FUNCTION_MACRO\n");
+#endif
+#ifdef HAVE_SETRESUID_DECL
+       output(screen,"   HAVE_SETRESUID_DECL\n");
+#endif
+#ifdef HAVE_SETRESUID
+       output(screen,"   HAVE_SETRESUID\n");
+#endif
+#ifdef WITH_NETATALK
+       output(screen,"   WITH_NETATALK\n");
+#endif
+#ifdef WITH_UTMP
+       output(screen,"   WITH_UTMP\n");
+#endif
+#ifdef WITH_MSDFS
+       output(screen,"   WITH_MSDFS\n");
+#endif
+#ifdef WITH_LIBICONV
+       output(screen,"   WITH_LIBICONV\n");
+#endif
+#ifdef HAVE_INO64_T
+       output(screen,"   HAVE_INO64_T\n");
+#endif
+#ifdef HAVE_STRUCT_FLOCK64
+       output(screen,"   HAVE_STRUCT_FLOCK64\n");
+#endif
+#ifdef SIZEOF_INO_T
+       output(screen,"   SIZEOF_INO_T\n");
+#endif
+#ifdef SIZEOF_OFF_T
+       output(screen,"   SIZEOF_OFF_T\n");
+#endif
+#ifdef STAT_STATVFS64
+       output(screen,"   STAT_STATVFS64\n");
+#endif
+#ifdef HAVE_LIBREADLINE
+       output(screen,"   HAVE_LIBREADLINE\n");
+#endif
+#ifdef HAVE_KERNEL_SHARE_MODES
+       output(screen,"   HAVE_KERNEL_SHARE_MODES\n");
+#endif
+#ifdef HAVE_KERNEL_OPLOCKS_IRIX
+       output(screen,"   HAVE_KERNEL_OPLOCKS_IRIX\n");
+#endif
+#ifdef HAVE_KERNEL_OPLOCKS_LINUX
+       output(screen,"   HAVE_KERNEL_OPLOCKS_LINUX\n");
+#endif
+#ifdef HAVE_KERNEL_CHANGE_NOTIFY
+       output(screen,"   HAVE_KERNEL_CHANGE_NOTIFY\n");
+#endif
+#ifdef HAVE_IRIX_SPECIFIC_CAPABILITIES
+       output(screen,"   HAVE_IRIX_SPECIFIC_CAPABILITIES\n");
+#endif
+#ifdef HAVE_INT16_FROM_RPC_RPC_H
+       output(screen,"   HAVE_INT16_FROM_RPC_RPC_H\n");
+#endif
+#ifdef HAVE_UINT16_FROM_RPC_RPC_H
+       output(screen,"   HAVE_UINT16_FROM_RPC_RPC_H\n");
+#endif
+#ifdef HAVE_INT32_FROM_RPC_RPC_H
+       output(screen,"   HAVE_INT32_FROM_RPC_RPC_H\n");
+#endif
+#ifdef HAVE_UINT32_FROM_RPC_RPC_H
+       output(screen,"   HAVE_UINT32_FROM_RPC_RPC_H\n");
+#endif
+#ifdef KRB4_AUTH
+       output(screen,"   KRB4_AUTH\n");
+#endif
+#ifdef KRB5_AUTH
+       output(screen,"   KRB5_AUTH\n");
+#endif
+#ifdef KRB4_DIR
+       output(screen,"   KRB4_DIR\n");
+#endif
+#ifdef KRB5_DIR
+       output(screen,"   KRB5_DIR\n");
+#endif
+#ifdef SEEKDIR_RETURNS_VOID
+       output(screen,"   SEEKDIR_RETURNS_VOID\n");
+#endif
+#ifdef HAVE_DIRENT_D_OFF
+       output(screen,"   HAVE_DIRENT_D_OFF\n");
+#endif
+#ifdef HAVE_GETSPNAM
+       output(screen,"   HAVE_GETSPNAM\n");
+#endif
+#ifdef HAVE_BIGCRYPT
+       output(screen,"   HAVE_BIGCRYPT\n");
+#endif
+#ifdef HAVE_GETPRPWNAM
+       output(screen,"   HAVE_GETPRPWNAM\n");
+#endif
+#ifdef HAVE_FSTAT64
+       output(screen,"   HAVE_FSTAT64\n");
+#endif
+#ifdef HAVE_LSTAT64
+       output(screen,"   HAVE_LSTAT64\n");
+#endif
+#ifdef HAVE_STAT64
+       output(screen,"   HAVE_STAT64\n");
+#endif
+#ifdef HAVE_SETRESGID
+       output(screen,"   HAVE_SETRESGID\n");
+#endif
+#ifdef HAVE_SETRESGID_DECL
+       output(screen,"   HAVE_SETRESGID_DECL\n");
+#endif
+#ifdef HAVE_SHADOW_H
+       output(screen,"   HAVE_SHADOW_H\n");
+#endif
+#ifdef HAVE_CUPS
+       output(screen,"   HAVE_CUPS\n");
+#endif
+#ifdef HAVE_MEMSET
+       output(screen,"   HAVE_MEMSET\n");
+#endif
+#ifdef HAVE_STRCASECMP
+       output(screen,"   HAVE_STRCASECMP\n");
+#endif
+#ifdef HAVE_STRUCT_DIRENT64
+       output(screen,"   HAVE_STRUCT_DIRENT64\n");
+#endif
+#ifdef HAVE_TRUNCATED_SALT
+       output(screen,"   HAVE_TRUNCATED_SALT\n");
+#endif
+#ifdef BROKEN_NISPLUS_INCLUDE_FILES
+       output(screen,"   BROKEN_NISPLUS_INCLUDE_FILES\n");
+#endif
+#ifdef HAVE_RPC_AUTH_ERROR_CONFLICT
+       output(screen,"   HAVE_RPC_AUTH_ERROR_CONFLICT\n");
+#endif
+#ifdef HAVE_EXPLICIT_LARGEFILE_SUPPORT
+       output(screen,"   HAVE_EXPLICIT_LARGEFILE_SUPPORT\n");
+#endif
+#ifdef USE_BOTH_CRYPT_CALLS
+       output(screen,"   USE_BOTH_CRYPT_CALLS\n");
+#endif
+#ifdef HAVE_BROKEN_FCNTL64_LOCKS
+       output(screen,"   HAVE_BROKEN_FCNTL64_LOCKS\n");
+#endif
+#ifdef HAVE_SECURE_MKSTEMP
+       output(screen,"   HAVE_SECURE_MKSTEMP\n");
+#endif
+#ifdef HAVE_FNMATCH
+       output(screen,"   HAVE_FNMATCH\n");
+#endif
+#ifdef USE_SETEUID
+       output(screen,"   USE_SETEUID\n");
+#endif
+#ifdef USE_SETRESUID
+       output(screen,"   USE_SETRESUID\n");
+#endif
+#ifdef USE_SETREUID
+       output(screen,"   USE_SETREUID\n");
+#endif
+#ifdef USE_SETUIDX
+       output(screen,"   USE_SETUIDX\n");
+#endif
+#ifdef HAVE_LIBDL
+       output(screen,"   HAVE_LIBDL\n");
+#endif
+#ifdef SYSCONF_SC_NGROUPS_MAX
+       output(screen,"   SYSCONF_SC_NGROUPS_MAX\n");
+#endif
+#ifdef HAVE_UT_UT_NAME
+       output(screen,"   HAVE_UT_UT_NAME\n");
+#endif
+#ifdef HAVE_UT_UT_USER
+       output(screen,"   HAVE_UT_UT_USER\n");
+#endif
+#ifdef HAVE_UT_UT_ID
+       output(screen,"   HAVE_UT_UT_ID\n");
+#endif
+#ifdef HAVE_UT_UT_HOST
+       output(screen,"   HAVE_UT_UT_HOST\n");
+#endif
+#ifdef HAVE_UT_UT_TIME
+       output(screen,"   HAVE_UT_UT_TIME\n");
+#endif
+#ifdef HAVE_UT_UT_TV
+       output(screen,"   HAVE_UT_UT_TV\n");
+#endif
+#ifdef HAVE_UT_UT_TYPE
+       output(screen,"   HAVE_UT_UT_TYPE\n");
+#endif
+#ifdef HAVE_UT_UT_PID
+       output(screen,"   HAVE_UT_UT_PID\n");
+#endif
+#ifdef HAVE_UT_UT_EXIT
+       output(screen,"   HAVE_UT_UT_EXIT\n");
+#endif
+#ifdef HAVE_UT_UT_ADDR
+       output(screen,"   HAVE_UT_UT_ADDR\n");
+#endif
+#ifdef HAVE_UX_UT_SYSLEN
+       output(screen,"   HAVE_UX_UT_SYSLEN\n");
+#endif
+#ifdef PUTUTLINE_RETURNS_UTMP
+       output(screen,"   PUTUTLINE_RETURNS_UTMP\n");
+#endif
+#ifdef COMPILER_SUPPORTS_LL
+       output(screen,"   COMPILER_SUPPORTS_LL\n");
+#endif
+#ifdef HAVE_YP_GET_DEFAULT_DOMAIN
+       output(screen,"   HAVE_YP_GET_DEFAULT_DOMAIN\n");
+#endif
+#ifdef USE_SPINLOCKS
+       output(screen,"   USE_SPINLOCKS\n");
+#endif
+#ifdef SPARC_SPINLOCKS
+       output(screen,"   SPARC_SPINLOCKS\n");
+#endif
+#ifdef INTEL_SPINLOCKS
+       output(screen,"   INTEL_SPINLOCKS\n");
+#endif
+#ifdef MIPS_SPINLOCKS
+       output(screen,"   MIPS_SPINLOCKS\n");
+#endif
+#ifdef POWERPC_SPINLOCKS
+       output(screen,"   POWERPC_SPINLOCKS\n");
+#endif
+#ifdef HAVE_POSIX_ACLS
+       output(screen,"   HAVE_POSIX_ACLS\n");
+#endif
+#ifdef HAVE_ACL_GET_PERM_NP
+       output(screen,"   HAVE_ACL_GET_PERM_NP\n");
+#endif
+#ifdef HAVE_UNIXWARE_ACLS
+       output(screen,"   HAVE_UNIXWARE_ACLS\n");
+#endif
+#ifdef HAVE_SOLARIS_ACLS
+       output(screen,"   HAVE_SOLARIS_ACLS\n");
+#endif
+#ifdef HAVE_HPUX_ACLS
+       output(screen,"   HAVE_HPUX_ACLS\n");
+#endif
+#ifdef HAVE_IRIX_ACLS
+       output(screen,"   HAVE_IRIX_ACLS\n");
+#endif
+#ifdef HAVE_AIX_ACLS
+       output(screen,"   HAVE_AIX_ACLS\n");
+#endif
+#ifdef HAVE_TRU64_ACLS
+       output(screen,"   HAVE_TRU64_ACLS\n");
+#endif
+#ifdef HAVE_NO_ACLS
+       output(screen,"   HAVE_NO_ACLS\n");
+#endif
+#ifdef HAVE_LIBPAM
+       output(screen,"   HAVE_LIBPAM\n");
+#endif
+#ifdef HAVE_ASPRINTF_DECL
+       output(screen,"   HAVE_ASPRINTF_DECL\n");
+#endif
+#ifdef HAVE_VASPRINTF_DECL
+       output(screen,"   HAVE_VASPRINTF_DECL\n");
+#endif
+#ifdef HAVE_SNPRINTF_DECL
+       output(screen,"   HAVE_SNPRINTF_DECL\n");
+#endif
+#ifdef HAVE_VSNPRINTF_DECL
+       output(screen,"   HAVE_VSNPRINTF_DECL\n");
+#endif
+#ifdef HAVE_NATIVE_ICONV
+       output(screen,"   HAVE_NATIVE_ICONV\n");
+#endif
+#ifdef HAVE_UNIXSOCKET
+       output(screen,"   HAVE_UNIXSOCKET\n");
+#endif
+#ifdef MMAP_BLACKLIST
+       output(screen,"   MMAP_BLACKLIST\n");
+#endif
+#ifdef HAVE_IMMEDIATE_STRUCTURES
+       output(screen,"   HAVE_IMMEDIATE_STRUCTURES\n");
+#endif
+#ifdef HAVE_CUPS
+       output(screen,"   HAVE_CUPS\n");
+#endif
+#ifdef WITH_LDAP_SAM
+       output(screen,"   WITH_LDAP_SAM\n");
+#endif
+#ifdef WITH_NISPLUS_SAM
+       output(screen,"   WITH_NISPLUS_SAM\n");
+#endif
+#ifdef WITH_SMBPASSWD_SAM
+       output(screen,"   WITH_SMBPASSWD_SAM\n");
+#endif
+#ifdef WITH_TDB_SAM
+       output(screen,"   WITH_TDB_SAM\n");
+#endif
+#ifdef LINUX_QUOTAS_1
+       output(screen,"   LINUX_QUOTAS_1\n");
+#endif
+#ifdef LINUX_QUOTAS_2
+       output(screen,"   LINUX_QUOTAS_2\n");
+#endif
+#ifdef PACKAGE
+       output(screen,"   PACKAGE\n");
+#endif
+#ifdef VERSION
+       output(screen,"   VERSION\n");
+#endif
+#ifdef HAVE_LC_MESSAGES
+       output(screen,"   HAVE_LC_MESSAGES\n");
+#endif
+#ifdef ENABLE_NLS
+       output(screen,"   ENABLE_NLS\n");
+#endif
+#ifdef HAVE_CATGETS
+       output(screen,"   HAVE_CATGETS\n");
+#endif
+#ifdef HAVE_GETTEXT
+       output(screen,"   HAVE_GETTEXT\n");
+#endif
+#ifdef HAVE_STPCPY
+       output(screen,"   HAVE_STPCPY\n");
+#endif
+#ifdef I18N_SWAT
+       output(screen,"   I18N_SWAT\n");
+#endif
+#ifdef I18N_DEFAULT_PREF_LANG
+       output(screen,"   I18N_DEFAULT_PREF_LANG\n");
+#endif
+#ifdef HAVE_KRB5
+       output(screen,"   HAVE_KRB5\n");
+#endif
+#ifdef BROKEN_REDHAT_7_SYSTEM_HEADERS
+       output(screen,"   BROKEN_REDHAT_7_SYSTEM_HEADERS\n");
+#endif
+#ifdef HAVE_LDAP
+       output(screen,"   HAVE_LDAP\n");
+#endif
+#ifdef SIZEOF_INT
+       output(screen,"   SIZEOF_INT\n");
+#endif
+#ifdef SIZEOF_LONG
+       output(screen,"   SIZEOF_LONG\n");
+#endif
+#ifdef SIZEOF_SHORT
+       output(screen,"   SIZEOF_SHORT\n");
+#endif
+#ifdef HAVE___ACL
+       output(screen,"   HAVE___ACL\n");
+#endif
+#ifdef HAVE___CHDIR
+       output(screen,"   HAVE___CHDIR\n");
+#endif
+#ifdef HAVE___CLOSE
+       output(screen,"   HAVE___CLOSE\n");
+#endif
+#ifdef HAVE___CLOSEDIR
+       output(screen,"   HAVE___CLOSEDIR\n");
+#endif
+#ifdef HAVE___DUP
+       output(screen,"   HAVE___DUP\n");
+#endif
+#ifdef HAVE___DUP2
+       output(screen,"   HAVE___DUP2\n");
+#endif
+#ifdef HAVE___FACL
+       output(screen,"   HAVE___FACL\n");
+#endif
+#ifdef HAVE___FCHDIR
+       output(screen,"   HAVE___FCHDIR\n");
+#endif
+#ifdef HAVE___FCNTL
+       output(screen,"   HAVE___FCNTL\n");
+#endif
+#ifdef HAVE___FORK
+       output(screen,"   HAVE___FORK\n");
+#endif
+#ifdef HAVE___FSTAT
+       output(screen,"   HAVE___FSTAT\n");
+#endif
+#ifdef HAVE___FSTAT64
+       output(screen,"   HAVE___FSTAT64\n");
+#endif
+#ifdef HAVE___FXSTAT
+       output(screen,"   HAVE___FXSTAT\n");
+#endif
+#ifdef HAVE___GETCWD
+       output(screen,"   HAVE___GETCWD\n");
+#endif
+#ifdef HAVE___GETDENTS
+       output(screen,"   HAVE___GETDENTS\n");
+#endif
+#ifdef HAVE___LLSEEK
+       output(screen,"   HAVE___LLSEEK\n");
+#endif
+#ifdef HAVE___LSEEK
+       output(screen,"   HAVE___LSEEK\n");
+#endif
+#ifdef HAVE___LSTAT
+       output(screen,"   HAVE___LSTAT\n");
+#endif
+#ifdef HAVE___LSTAT64
+       output(screen,"   HAVE___LSTAT64\n");
+#endif
+#ifdef HAVE___LXSTAT
+       output(screen,"   HAVE___LXSTAT\n");
+#endif
+#ifdef HAVE___OPEN
+       output(screen,"   HAVE___OPEN\n");
+#endif
+#ifdef HAVE___OPEN64
+       output(screen,"   HAVE___OPEN64\n");
+#endif
+#ifdef HAVE___OPENDIR
+       output(screen,"   HAVE___OPENDIR\n");
+#endif
+#ifdef HAVE___PREAD
+       output(screen,"   HAVE___PREAD\n");
+#endif
+#ifdef HAVE___PREAD64
+       output(screen,"   HAVE___PREAD64\n");
+#endif
+#ifdef HAVE___PWRITE
+       output(screen,"   HAVE___PWRITE\n");
+#endif
+#ifdef HAVE___PWRITE64
+       output(screen,"   HAVE___PWRITE64\n");
+#endif
+#ifdef HAVE___READ
+       output(screen,"   HAVE___READ\n");
+#endif
+#ifdef HAVE___READDIR
+       output(screen,"   HAVE___READDIR\n");
+#endif
+#ifdef HAVE___READDIR64
+       output(screen,"   HAVE___READDIR64\n");
+#endif
+#ifdef HAVE___SEEKDIR
+       output(screen,"   HAVE___SEEKDIR\n");
+#endif
+#ifdef HAVE___STAT
+       output(screen,"   HAVE___STAT\n");
+#endif
+#ifdef HAVE___STAT64
+       output(screen,"   HAVE___STAT64\n");
+#endif
+#ifdef HAVE___SYS_LLSEEK
+       output(screen,"   HAVE___SYS_LLSEEK\n");
+#endif
+#ifdef HAVE___TELLDIR
+       output(screen,"   HAVE___TELLDIR\n");
+#endif
+#ifdef HAVE___WRITE
+       output(screen,"   HAVE___WRITE\n");
+#endif
+#ifdef HAVE___XSTAT
+       output(screen,"   HAVE___XSTAT\n");
+#endif
+#ifdef HAVE__ACL
+       output(screen,"   HAVE__ACL\n");
+#endif
+#ifdef HAVE__CHDIR
+       output(screen,"   HAVE__CHDIR\n");
+#endif
+#ifdef HAVE__CLOSE
+       output(screen,"   HAVE__CLOSE\n");
+#endif
+#ifdef HAVE__CLOSEDIR
+       output(screen,"   HAVE__CLOSEDIR\n");
+#endif
+#ifdef HAVE__DUP
+       output(screen,"   HAVE__DUP\n");
+#endif
+#ifdef HAVE__DUP2
+       output(screen,"   HAVE__DUP2\n");
+#endif
+#ifdef HAVE__FACL
+       output(screen,"   HAVE__FACL\n");
+#endif
+#ifdef HAVE__FCHDIR
+       output(screen,"   HAVE__FCHDIR\n");
+#endif
+#ifdef HAVE__FCNTL
+       output(screen,"   HAVE__FCNTL\n");
+#endif
+#ifdef HAVE__FORK
+       output(screen,"   HAVE__FORK\n");
+#endif
+#ifdef HAVE__FSTAT
+       output(screen,"   HAVE__FSTAT\n");
+#endif
+#ifdef HAVE__FSTAT64
+       output(screen,"   HAVE__FSTAT64\n");
+#endif
+#ifdef HAVE__GETCWD
+       output(screen,"   HAVE__GETCWD\n");
+#endif
+#ifdef HAVE__GETDENTS
+       output(screen,"   HAVE__GETDENTS\n");
+#endif
+#ifdef HAVE__LLSEEK
+       output(screen,"   HAVE__LLSEEK\n");
+#endif
+#ifdef HAVE__LSEEK
+       output(screen,"   HAVE__LSEEK\n");
+#endif
+#ifdef HAVE__LSTAT
+       output(screen,"   HAVE__LSTAT\n");
+#endif
+#ifdef HAVE__LSTAT64
+       output(screen,"   HAVE__LSTAT64\n");
+#endif
+#ifdef HAVE__OPEN
+       output(screen,"   HAVE__OPEN\n");
+#endif
+#ifdef HAVE__OPEN64
+       output(screen,"   HAVE__OPEN64\n");
+#endif
+#ifdef HAVE__OPENDIR
+       output(screen,"   HAVE__OPENDIR\n");
+#endif
+#ifdef HAVE__PREAD
+       output(screen,"   HAVE__PREAD\n");
+#endif
+#ifdef HAVE__PREAD64
+       output(screen,"   HAVE__PREAD64\n");
+#endif
+#ifdef HAVE__PWRITE
+       output(screen,"   HAVE__PWRITE\n");
+#endif
+#ifdef HAVE__PWRITE64
+       output(screen,"   HAVE__PWRITE64\n");
+#endif
+#ifdef HAVE__READ
+       output(screen,"   HAVE__READ\n");
+#endif
+#ifdef HAVE__READDIR
+       output(screen,"   HAVE__READDIR\n");
+#endif
+#ifdef HAVE__READDIR64
+       output(screen,"   HAVE__READDIR64\n");
+#endif
+#ifdef HAVE__SEEKDIR
+       output(screen,"   HAVE__SEEKDIR\n");
+#endif
+#ifdef HAVE__STAT
+       output(screen,"   HAVE__STAT\n");
+#endif
+#ifdef HAVE__STAT64
+       output(screen,"   HAVE__STAT64\n");
+#endif
+#ifdef HAVE__TELLDIR
+       output(screen,"   HAVE__TELLDIR\n");
+#endif
+#ifdef HAVE__WRITE
+       output(screen,"   HAVE__WRITE\n");
+#endif
+#ifdef HAVE_ASPRINTF
+       output(screen,"   HAVE_ASPRINTF\n");
+#endif
+#ifdef HAVE_ATEXIT
+       output(screen,"   HAVE_ATEXIT\n");
+#endif
+#ifdef HAVE_BIGCRYPT
+       output(screen,"   HAVE_BIGCRYPT\n");
+#endif
+#ifdef HAVE_BZERO
+       output(screen,"   HAVE_BZERO\n");
+#endif
+#ifdef HAVE_CHMOD
+       output(screen,"   HAVE_CHMOD\n");
+#endif
+#ifdef HAVE_CHOWN
+       output(screen,"   HAVE_CHOWN\n");
+#endif
+#ifdef HAVE_CHROOT
+       output(screen,"   HAVE_CHROOT\n");
+#endif
+#ifdef HAVE_CONNECT
+       output(screen,"   HAVE_CONNECT\n");
+#endif
+#ifdef HAVE_CREAT64
+       output(screen,"   HAVE_CREAT64\n");
+#endif
+#ifdef HAVE_CRYPT
+       output(screen,"   HAVE_CRYPT\n");
+#endif
+#ifdef HAVE_CRYPT16
+       output(screen,"   HAVE_CRYPT16\n");
+#endif
+#ifdef HAVE_DUP2
+       output(screen,"   HAVE_DUP2\n");
+#endif
+#ifdef HAVE_ENDNETGRENT
+       output(screen,"   HAVE_ENDNETGRENT\n");
+#endif
+#ifdef HAVE_EXECL
+       output(screen,"   HAVE_EXECL\n");
+#endif
+#ifdef HAVE_FCHMOD
+       output(screen,"   HAVE_FCHMOD\n");
+#endif
+#ifdef HAVE_FCHOWN
+       output(screen,"   HAVE_FCHOWN\n");
+#endif
+#ifdef HAVE_FCVT
+       output(screen,"   HAVE_FCVT\n");
+#endif
+#ifdef HAVE_FCVTL
+       output(screen,"   HAVE_FCVTL\n");
+#endif
+#ifdef HAVE_FOPEN64
+       output(screen,"   HAVE_FOPEN64\n");
+#endif
+#ifdef HAVE_FSEEK64
+       output(screen,"   HAVE_FSEEK64\n");
+#endif
+#ifdef HAVE_FSEEKO64
+       output(screen,"   HAVE_FSEEKO64\n");
+#endif
+#ifdef HAVE_FSTAT
+       output(screen,"   HAVE_FSTAT\n");
+#endif
+#ifdef HAVE_FSTAT64
+       output(screen,"   HAVE_FSTAT64\n");
+#endif
+#ifdef HAVE_FSYNC
+       output(screen,"   HAVE_FSYNC\n");
+#endif
+#ifdef HAVE_FTELL64
+       output(screen,"   HAVE_FTELL64\n");
+#endif
+#ifdef HAVE_FTELLO64
+       output(screen,"   HAVE_FTELLO64\n");
+#endif
+#ifdef HAVE_FTRUNCATE
+       output(screen,"   HAVE_FTRUNCATE\n");
+#endif
+#ifdef HAVE_FTRUNCATE64
+       output(screen,"   HAVE_FTRUNCATE64\n");
+#endif
+#ifdef HAVE_GETAUTHUID
+       output(screen,"   HAVE_GETAUTHUID\n");
+#endif
+#ifdef HAVE_GETCWD
+       output(screen,"   HAVE_GETCWD\n");
+#endif
+#ifdef HAVE_GETDENTS
+       output(screen,"   HAVE_GETDENTS\n");
+#endif
+#ifdef HAVE_GETGRENT
+       output(screen,"   HAVE_GETGRENT\n");
+#endif
+#ifdef HAVE_GETGRNAM
+       output(screen,"   HAVE_GETGRNAM\n");
+#endif
+#ifdef HAVE_GETNETGRENT
+       output(screen,"   HAVE_GETNETGRENT\n");
+#endif
+#ifdef HAVE_GETPRPWNAM
+       output(screen,"   HAVE_GETPRPWNAM\n");
+#endif
+#ifdef HAVE_GETPWANAM
+       output(screen,"   HAVE_GETPWANAM\n");
+#endif
+#ifdef HAVE_GETRLIMIT
+       output(screen,"   HAVE_GETRLIMIT\n");
+#endif
+#ifdef HAVE_GETSPNAM
+       output(screen,"   HAVE_GETSPNAM\n");
+#endif
+#ifdef HAVE_GETUTMPX
+       output(screen,"   HAVE_GETUTMPX\n");
+#endif
+#ifdef HAVE_GLOB
+       output(screen,"   HAVE_GLOB\n");
+#endif
+#ifdef HAVE_GRANTPT
+       output(screen,"   HAVE_GRANTPT\n");
+#endif
+#ifdef HAVE_INITGROUPS
+       output(screen,"   HAVE_INITGROUPS\n");
+#endif
+#ifdef HAVE_INNETGR
+       output(screen,"   HAVE_INNETGR\n");
+#endif
+#ifdef HAVE_LLSEEK
+       output(screen,"   HAVE_LLSEEK\n");
+#endif
+#ifdef HAVE_LSEEK64
+       output(screen,"   HAVE_LSEEK64\n");
+#endif
+#ifdef HAVE_LSTAT64
+       output(screen,"   HAVE_LSTAT64\n");
+#endif
+#ifdef HAVE_MEMMOVE
+       output(screen,"   HAVE_MEMMOVE\n");
+#endif
+#ifdef HAVE_MEMSET
+       output(screen,"   HAVE_MEMSET\n");
+#endif
+#ifdef HAVE_MKTIME
+       output(screen,"   HAVE_MKTIME\n");
+#endif
+#ifdef HAVE_OPEN64
+       output(screen,"   HAVE_OPEN64\n");
+#endif
+#ifdef HAVE_PATHCONF
+       output(screen,"   HAVE_PATHCONF\n");
+#endif
+#ifdef HAVE_PIPE
+       output(screen,"   HAVE_PIPE\n");
+#endif
+#ifdef HAVE_POLL
+       output(screen,"   HAVE_POLL\n");
+#endif
+#ifdef HAVE_PREAD
+       output(screen,"   HAVE_PREAD\n");
+#endif
+#ifdef HAVE_PREAD64
+       output(screen,"   HAVE_PREAD64\n");
+#endif
+#ifdef HAVE_PUTPRPWNAM
+       output(screen,"   HAVE_PUTPRPWNAM\n");
+#endif
+#ifdef HAVE_PUTUTLINE
+       output(screen,"   HAVE_PUTUTLINE\n");
+#endif
+#ifdef HAVE_PUTUTXLINE
+       output(screen,"   HAVE_PUTUTXLINE\n");
+#endif
+#ifdef HAVE_PWRITE
+       output(screen,"   HAVE_PWRITE\n");
+#endif
+#ifdef HAVE_PWRITE64
+       output(screen,"   HAVE_PWRITE64\n");
+#endif
+#ifdef HAVE_RAND
+       output(screen,"   HAVE_RAND\n");
+#endif
+#ifdef HAVE_RANDOM
+       output(screen,"   HAVE_RANDOM\n");
+#endif
+#ifdef HAVE_RDCHK
+       output(screen,"   HAVE_RDCHK\n");
+#endif
+#ifdef HAVE_READDIR64
+       output(screen,"   HAVE_READDIR64\n");
+#endif
+#ifdef HAVE_READLINK
+       output(screen,"   HAVE_READLINK\n");
+#endif
+#ifdef HAVE_RENAME
+       output(screen,"   HAVE_RENAME\n");
+#endif
+#ifdef HAVE_SELECT
+       output(screen,"   HAVE_SELECT\n");
+#endif
+#ifdef HAVE_SET_AUTH_PARAMETERS
+       output(screen,"   HAVE_SET_AUTH_PARAMETERS\n");
+#endif
+#ifdef HAVE_SETBUFFER
+       output(screen,"   HAVE_SETBUFFER\n");
+#endif
+#ifdef HAVE_SETENV
+       output(screen,"   HAVE_SETENV\n");
+#endif
+#ifdef HAVE_SETGIDX
+       output(screen,"   HAVE_SETGIDX\n");
+#endif
+#ifdef HAVE_SETGROUPS
+       output(screen,"   HAVE_SETGROUPS\n");
+#endif
+#ifdef HAVE_SETLINEBUF
+       output(screen,"   HAVE_SETLINEBUF\n");
+#endif
+#ifdef HAVE_SETLUID
+       output(screen,"   HAVE_SETLUID\n");
+#endif
+#ifdef HAVE_SETNETGRENT
+       output(screen,"   HAVE_SETNETGRENT\n");
+#endif
+#ifdef HAVE_SETPRIV
+       output(screen,"   HAVE_SETPRIV\n");
+#endif
+#ifdef HAVE_SETSID
+       output(screen,"   HAVE_SETSID\n");
+#endif
+#ifdef HAVE_SETUIDX
+       output(screen,"   HAVE_SETUIDX\n");
+#endif
+#ifdef HAVE_SIGACTION
+       output(screen,"   HAVE_SIGACTION\n");
+#endif
+#ifdef HAVE_SIGBLOCK
+       output(screen,"   HAVE_SIGBLOCK\n");
+#endif
+#ifdef HAVE_SIGPROCMASK
+       output(screen,"   HAVE_SIGPROCMASK\n");
+#endif
+#ifdef HAVE_SIGSET
+       output(screen,"   HAVE_SIGSET\n");
+#endif
+#ifdef HAVE_SNPRINTF
+       output(screen,"   HAVE_SNPRINTF\n");
+#endif
+#ifdef HAVE_SRAND
+       output(screen,"   HAVE_SRAND\n");
+#endif
+#ifdef HAVE_SRANDOM
+       output(screen,"   HAVE_SRANDOM\n");
+#endif
+#ifdef HAVE_STAT64
+       output(screen,"   HAVE_STAT64\n");
+#endif
+#ifdef HAVE_STRCASECMP
+       output(screen,"   HAVE_STRCASECMP\n");
+#endif
+#ifdef HAVE_STRCHR
+       output(screen,"   HAVE_STRCHR\n");
+#endif
+#ifdef HAVE_STRDUP
+       output(screen,"   HAVE_STRDUP\n");
+#endif
+#ifdef HAVE_STRERROR
+       output(screen,"   HAVE_STRERROR\n");
+#endif
+#ifdef HAVE_STRFTIME
+       output(screen,"   HAVE_STRFTIME\n");
 #endif
-#ifdef INTEL_SPINLOCKS
-       output(screen,"   INTEL_SPINLOCKS\n");
+#ifdef HAVE_STRLCAT
+       output(screen,"   HAVE_STRLCAT\n");
 #endif
-#ifdef MIPS_SPINLOCKS
-       output(screen,"   MIPS_SPINLOCKS\n");
+#ifdef HAVE_STRLCPY
+       output(screen,"   HAVE_STRLCPY\n");
 #endif
-#ifdef POWERPC_SPINLOCKS
-       output(screen,"   POWERPC_SPINLOCKS\n");
+#ifdef HAVE_STRPBRK
+       output(screen,"   HAVE_STRPBRK\n");
 #endif
-#ifdef HAVE_UNIXWARE_ACLS
-       output(screen,"   HAVE_UNIXWARE_ACLS\n");
+#ifdef HAVE_STRTOUL
+       output(screen,"   HAVE_STRTOUL\n");
 #endif
-#ifdef HAVE_SOLARIS_ACLS
-       output(screen,"   HAVE_SOLARIS_ACLS\n");
-#endif 
-#ifdef HAVE_IRIX_ACLS
-       output(screen,"   HAVE_IRIX_ACLS\n");
+#ifdef HAVE_SYMLINK
+       output(screen,"   HAVE_SYMLINK\n");
 #endif
-#ifdef HAVE_AIX_ACLS
-       output(screen,"   HAVE_AIX_ACLS\n");
+#ifdef HAVE_SYSCALL
+       output(screen,"   HAVE_SYSCALL\n");
 #endif
-#ifdef HAVE_POSIX_ACLS
-       output(screen,"   HAVE_POSIX_ACLS\n");
+#ifdef HAVE_SYSCONF
+       output(screen,"   HAVE_SYSCONF\n");
 #endif
-#ifdef HAVE_TRU64_ACLS
-       output(screen,"   HAVE_TRU64_ACLS\n");
+#ifdef HAVE_SYSLOG
+       output(screen,"   HAVE_SYSLOG\n");
 #endif
-
-#ifdef HAVE_ACL_GET_PERM_NP
-       output(screen,"   HAVE_ACL_GET_PERM_NP\n");
+#ifdef HAVE_UPDWTMP
+       output(screen,"   HAVE_UPDWTMP\n");
 #endif
-#ifdef HAVE_NO_ACLS
-       output(screen,"   HAVE_NO_ACLS\n");
+#ifdef HAVE_UPDWTMPX
+       output(screen,"   HAVE_UPDWTMPX\n");
 #endif
-#ifdef HAVE_LIBREADLINE
-       output(screen,"   HAVE_LIBREADLINE\n"); 
+#ifdef HAVE_USLEEP
+       output(screen,"   HAVE_USLEEP\n");
 #endif
-#ifdef WITH_LIBICONV
-       output(screen,"   WITH_LIBICONV: %s\n",WITH_LIBICONV);
+#ifdef HAVE_UTIME
+       output(screen,"   HAVE_UTIME\n");
 #endif
-
-
-       /* Output various paths to files and directories */
-       output(screen,"\nPaths:\n");
-       output(screen,"   CONFIGFILE: %s\n", dyn_CONFIGFILE);
-#ifdef PRIVATE_DIR
-       output(screen,"   PRIVATE_DIR: %s\n",PRIVATE_DIR);
+#ifdef HAVE_UTIMES
+       output(screen,"   HAVE_UTIMES\n");
 #endif
-#ifdef LMHOSTSFILE
-       output(screen,"   LMHOSTSFILE: %s\n",LMHOSTSFILE);
+#ifdef HAVE_VASPRINTF
+       output(screen,"   HAVE_VASPRINTF\n");
 #endif
-       output(screen,"   SBINDIR: %s\n", dyn_SBINDIR);
-       output(screen,"   BINDIR: %s\n", dyn_BINDIR);
-       output(screen,"   LOCKDIR: %s\n",dyn_LOCKDIR);
-       output(screen,"   DRIVERFILE: %s\n", dyn_DRIVERFILE);
-       output(screen,"   LOGFILEBASE: %s\n", dyn_LOGFILEBASE);
-
-       /*Output various other options (most map to defines in the configure script*/
-       output(screen,"\nOther Build Options:\n");
-#ifdef HAVE_VOLATILE
-       output(screen,"   HAVE_VOLATILE\n");
+#ifdef HAVE_VSNPRINTF
+       output(screen,"   HAVE_VSNPRINTF\n");
 #endif
-#ifdef HAVE_SHADOW_H
-       output(screen,"   HAVE_SHADOW_H\n");
+#ifdef HAVE_VSYSLOG
+       output(screen,"   HAVE_VSYSLOG\n");
 #endif
-#ifdef HAVE_CRYPT
-       output(screen,"   HAVE_CRYPT\n");
+#ifdef HAVE_WAITPID
+       output(screen,"   HAVE_WAITPID\n");
 #endif
-#ifdef USE_BOTH_CRYPT_CALLS
-       output(screen,"   USE_BOTH_CRYPT_CALLS\n");
+#ifdef HAVE_YP_GET_DEFAULT_DOMAIN
+       output(screen,"   HAVE_YP_GET_DEFAULT_DOMAIN\n");
 #endif
-#ifdef HAVE_TRUNCATED_SALT
-       output(screen,"   HAVE_TRUNCATED_SALT\n");
+#ifdef HAVE_ARPA_INET_H
+       output(screen,"   HAVE_ARPA_INET_H\n");
 #endif
-#ifdef HAVE_CUPS
-       output(screen,"   HAVE_CUPS\n");
+#ifdef HAVE_COMPAT_H
+       output(screen,"   HAVE_COMPAT_H\n");
+#endif
+#ifdef HAVE_CTYPE_H
+       output(screen,"   HAVE_CTYPE_H\n");
 #endif
 #ifdef HAVE_CUPS_CUPS_H
        output(screen,"   HAVE_CUPS_CUPS_H\n");
@@ -221,304 +1264,284 @@
 #ifdef HAVE_CUPS_LANGUAGE_H
        output(screen,"   HAVE_CUPS_LANGUAGE_H\n");
 #endif
-#ifdef HAVE_LIBDL
-       output(screen,"   HAVE_LIBDL\n");
-#endif
-#ifdef HAVE_UNIXSOCKET
-       output(screen,"   HAVE_UNIXSOCKET\n");
-#endif
-#ifdef HAVE_SOCKLEN_T_TYPE
-       output(screen,"   HAVE_SOCKLEN_T_TYPE\n");
-#endif
-#ifdef HAVE_SIG_ATOMIC_T_TYPE
-       output(screen,"   HAVE_SIG_ATOMIC_T_TYPE\n");
+#ifdef HAVE_DIRENT_H
+       output(screen,"   HAVE_DIRENT_H\n");
 #endif
-#ifdef HAVE_SETRESUID
-       output(screen,"   HAVE_SETRESUID\n");
+#ifdef HAVE_FCNTL_H
+       output(screen,"   HAVE_FCNTL_H\n");
 #endif
-#ifdef HAVE_SETRESGID
-       output(screen,"   HAVE_SETRESGID\n");
+#ifdef HAVE_GLOB_H
+       output(screen,"   HAVE_GLOB_H\n");
 #endif
-#ifdef HAVE_CONNECT
-       output(screen,"   HAVE_CONNECT\n");
+#ifdef HAVE_GRP_H
+       output(screen,"   HAVE_GRP_H\n");
 #endif
-#ifdef HAVE_YP_GET_DEFAULT_DOMAIN
-       output(screen,"   HAVE_YP_GET_DEFAULT_DOMAIN\n");
+#ifdef HAVE_GSSAPI_GSSAPI_H
+       output(screen,"   HAVE_GSSAPI_GSSAPI_H\n");
 #endif
-#ifdef HAVE_STAT64
-       output(screen,"   HAVE_STAT64\n");
+#ifdef HAVE_GSSAPI_GSSAPI_GENERIC_H
+       output(screen,"   HAVE_GSSAPI_GSSAPI_GENERIC_H\n");
 #endif
-#ifdef HAVE_LSTAT64
-       output(screen,"   HAVE_LSTAT64\n");
+#ifdef HAVE_HISTORY_H
+       output(screen,"   HAVE_HISTORY_H\n");
 #endif
-#ifdef HAVE_FSTAT64
-       output(screen,"   HAVE_FSTAT64\n");
+#ifdef HAVE_KRB5_H
+       output(screen,"   HAVE_KRB5_H\n");
 #endif
-#ifdef HAVE_STRCASECMP
-       output(screen,"   HAVE_STRCASECMP\n");
+#ifdef HAVE_LASTLOG_H
+       output(screen,"   HAVE_LASTLOG_H\n");
 #endif
-#ifdef HAVE_MEMSET
-       output(screen,"   HAVE_MEMSET\n");
+#ifdef HAVE_LDAP_H
+       output(screen,"   HAVE_LDAP_H\n");
 #endif
-#ifdef HAVE_LONGLONG
-       output(screen,"   HAVE_LONGLONG\n");
+#ifdef HAVE_LIMITS_H
+       output(screen,"   HAVE_LIMITS_H\n");
 #endif
-#ifdef COMPILER_SUPPORTS_LL
-       output(screen,"   COMPILER_SUPPORTS_LL\n");
+#ifdef HAVE_LINUX_XQM_H
+       output(screen,"   HAVE_LINUX_XQM_H\n");
 #endif
-#ifdef SIZEOF_OFF_T
-       output(screen,"   SIZEOF_OFF_T: %d\n",SIZEOF_OFF_T);
+#ifdef HAVE_MEMORY_H
+       output(screen,"   HAVE_MEMORY_H\n");
 #endif
-#ifdef HAVE_OFF64_T
-       output(screen,"   HAVE_OFF64_T\n");
+#ifdef HAVE_NDIR_H
+       output(screen,"   HAVE_NDIR_H\n");
 #endif
-#ifdef SIZEOF_INO_T
-       output(screen,"   SIZEOF_INO_T: %d\n",SIZEOF_INO_T);
+#ifdef HAVE_NET_IF_H
+       output(screen,"   HAVE_NET_IF_H\n");
 #endif
-#ifdef HAVE_INO64_T
-       output(screen,"   HAVE_INO64_T\n");
+#ifdef HAVE_NETINET_IN_IP_H
+       output(screen,"   HAVE_NETINET_IN_IP_H\n");
 #endif
-#ifdef HAVE_STRUCT_DIRENT64
-       output(screen,"   HAVE_STRUCT_DIRENT64\n");
+#ifdef HAVE_NETINET_IN_SYSTM_H
+       output(screen,"   HAVE_NETINET_IN_SYSTM_H\n");
 #endif
-#ifdef HAVE_UNSIGNED_CHAR
-       output(screen,"   HAVE_UNSIGNED_CHAR\n");
+#ifdef HAVE_NETINET_IP_H
+       output(screen,"   HAVE_NETINET_IP_H\n");
 #endif
-#ifdef HAVE_SOCK_SIN_LEN
-       output(screen,"   HAVE_SOCK_SIN_LEN\n");
+#ifdef HAVE_NETINET_TCP_H
+       output(screen,"   HAVE_NETINET_TCP_H\n");
 #endif
-#ifdef SEEKDIR_RETURNS_VOID
-       output(screen,"   SEEKDIR_RETURNS_VOID\n");
+#ifdef HAVE_NS_API_H
+       output(screen,"   HAVE_NS_API_H\n");
 #endif
-#ifdef HAVE_FILE_MACRO
-       output(screen,"   HAVE_FILE_MACRO\n");
+#ifdef HAVE_NSS_H
+       output(screen,"   HAVE_NSS_H\n");
 #endif
-#ifdef HAVE_FUNCTION_MACRO
-       output(screen,"   HAVE_FUNCTION_MACRO\n");
+#ifdef HAVE_NSS_COMMON_H
+       output(screen,"   HAVE_NSS_COMMON_H\n");
 #endif
-#ifdef HAVE_GETTIMEOFDAY
-       output(screen,"   HAVE_GETTIMEOFDAY\n");
+#ifdef HAVE_POLL_H
+       output(screen,"   HAVE_POLL_H\n");
 #endif
-#ifdef HAVE_C99_VSNPRINTF
-       output(screen,"   HAVE_C99_VSNPRINTF\n");
+#ifdef HAVE_READLINE_H
+       output(screen,"   HAVE_READLINE_H\n");
 #endif
-#ifdef HAVE_BROKEN_READDIR
-       output(screen,"   HAVE_BROKEN_READDIR\n");
+#ifdef HAVE_READLINE_HISTORY_H
+       output(screen,"   HAVE_READLINE_HISTORY_H\n");
 #endif
-#ifdef HAVE_NATIVE_ICONV
-       output(screen,"   HAVE_NATIVE_ICONV\n");
+#ifdef HAVE_READLINE_READLINE_H
+       output(screen,"   HAVE_READLINE_READLINE_H\n");
 #endif
-#ifdef HAVE_KERNEL_OPLOCKS_LINUX
-       output(screen,"   HAVE_KERNEL_OPLOCKS_LINUX\n");
+#ifdef HAVE_RPC_RPC_H
+       output(screen,"   HAVE_RPC_RPC_H\n");
 #endif
-#ifdef HAVE_KERNEL_CHANGE_NOTIFY
-       output(screen,"   HAVE_KERNEL_CHANGE_NOTIFY\n");
+#ifdef HAVE_RPCSVC_NIS_H
+       output(screen,"   HAVE_RPCSVC_NIS_H\n");
 #endif
-#ifdef HAVE_KERNEL_SHARE_MODES
-       output(screen,"   HAVE_KERNEL_SHARE_MODES\n");
+#ifdef HAVE_RPCSVC_YP_PROT_H
+       output(screen,"   HAVE_RPCSVC_YP_PROT_H\n");
 #endif
-#ifdef HAVE_KERNEL_OPLOCKS_IRIX
-       output(screen,"   HAVE_KERNEL_OPLOCKS_IRIX\n");
+#ifdef HAVE_RPCSVC_YPCLNT_H
+       output(screen,"   HAVE_RPCSVC_YPCLNT_H\n");
 #endif
-#ifdef HAVE_IRIX_SPECIFIC_CAPABILITIES
-       output(screen,"   HAVE_IRIX_SPECIFIC_CAPABILITIES\n");
+#ifdef HAVE_SECURITY__PAM_MACROS_H
+       output(screen,"   HAVE_SECURITY__PAM_MACROS_H\n");
 #endif
-#ifdef HAVE_INT16_FROM_RPC_RPC_H
-       output(screen,"   HAVE_INT16_FROM_RPC_RPC_H\n");
+#ifdef HAVE_SECURITY_PAM_APPL_H
+       output(screen,"   HAVE_SECURITY_PAM_APPL_H\n");
 #endif
-#ifdef HAVE_UINT16_FROM_RPC_RPC_H
-       output(screen,"   HAVE_UINT16_FROM_RPC_RPC_H\n");
+#ifdef HAVE_SECURITY_PAM_MODULES_H
+       output(screen,"   HAVE_SECURITY_PAM_MODULES_H\n");
 #endif
-#ifdef HAVE_INT32_FROM_RPC_RPC_H
-       output(screen,"   HAVE_INT16_FROM_RPC_RPC_H\n");
+#ifdef HAVE_SHADOW_H
+       output(screen,"   HAVE_SHADOW_H\n");
 #endif
-#ifdef HAVE_UINT32_FROM_RPC_RPC_H
-       output(screen,"   HAVE_UINT32_FROM_RPC_RPC_H\n");
+#ifdef HAVE_STDARG_H
+       output(screen,"   HAVE_STDARG_H\n");
 #endif
-#ifdef HAVE_RPC_AUTH_ERROR_CONFLICT
-       output(screen,"   HAVE_RPC_AUTH_ERROR_CONFLICT\n");
+#ifdef HAVE_STDLIB_H
+       output(screen,"   HAVE_STDLIB_H\n");
 #endif
-#ifdef HAVE_FTRUNCATE_EXTEND
-       output(screen,"   HAVE_FTRUNCATE_EXTEND\n");
+#ifdef HAVE_STRING_H
+       output(screen,"   HAVE_STRING_H\n");
 #endif
-#ifdef HAVE_WORKING_AF_LOCAL
-       output(screen,"   HAVE_WORKING_AF_LOCAL\n");
+#ifdef HAVE_STRINGS_H
+       output(screen,"   HAVE_STRINGS_H\n");
 #endif
-#ifdef HAVE_BROKEN_GETGROUPS
-       output(screen,"   HAVE_BROKEN_GETGROUPS\n");
+#ifdef HAVE_STROPTS_H
+       output(screen,"   HAVE_STROPTS_H\n");
 #endif
-#ifdef REPLACE_GETPASS
-       output(screen,"   REPLACE_GETPASS\n");
+#ifdef HAVE_SYS_ACL_H
+       output(screen,"   HAVE_SYS_ACL_H\n");
 #endif
-#ifdef REPLACE_INET_NTOA
-       output(screen,"   REPLACE_INET_NTOA\n");
+#ifdef HAVE_SYS_CAPABILITY_H
+       output(screen,"   HAVE_SYS_CAPABILITY_H\n");
 #endif
-#ifdef HAVE_SECURE_MKSTEMP
-       output(screen,"   HAVE_SECURE_MKSTEMP\n");
+#ifdef HAVE_SYS_CDEFS_H
+       output(screen,"   HAVE_SYS_CDEFS_H\n");
 #endif
-#ifdef SYSCONF_SC_NGROUPS_MAX
-       output(screen,"   SYSCONF_SC_NGROUPS_MAX\n");
+#ifdef HAVE_SYS_DIR_H
+       output(screen,"   HAVE_SYS_DIR_H\n");
 #endif
-#ifdef HAVE_IFACE_AIX
-       output(screen,"   HAVE_IFACE_AIX\n");
+#ifdef HAVE_SYS_DUSTAT_H
+       output(screen,"   HAVE_SYS_DUSTAT_H\n");
 #endif
-#ifdef HAVE_IFACE_IFCONF
-       output(screen,"   HAVE_IFACE_IFCONF\n");
+#ifdef HAVE_SYS_FCNTL_H
+       output(screen,"   HAVE_SYS_FCNTL_H\n");
 #endif
-#ifdef HAVE_IFACE_IFREQ
-       output(screen,"   HAVE_IFACE_IFREQ\n");
+#ifdef HAVE_SYS_FILIO_H
+       output(screen,"   HAVE_SYS_FILIO_H\n");
 #endif
-#ifdef USE_SETRESUID
-       output(screen,"   USE_SETRESUID\n");
+#ifdef HAVE_SYS_FILSYS_H
+       output(screen,"   HAVE_SYS_FILSYS_H\n");
 #endif
-#ifdef USE_SETRESGID
-       output(screen,"   USE_SETREUID\n");
+#ifdef HAVE_SYS_FS_S5PARAM_H
+       output(screen,"   HAVE_SYS_FS_S5PARAM_H\n");
 #endif
-#ifdef USE_SETEUID
-       output(screen,"   USE_SETEUID\n");
+#ifdef HAVE_SYS_FS_VX_QUOTA_H
+       output(screen,"   HAVE_SYS_FS_VX_QUOTA_H\n");
 #endif
-#ifdef USE_SETUIDX
-       output(screen,"   USE_SETUIDX\n");
+#ifdef HAVE_SYS_ID_H
+       output(screen,"   HAVE_SYS_ID_H\n");
 #endif
-#ifdef HAVE_MMAP
-       output(screen,"   HAVE_MMAP\n");
+#ifdef HAVE_SYS_IOCTL_H
+       output(screen,"   HAVE_SYS_IOCTL_H\n");
 #endif
-#ifdef MMAP_BLACKLIST
-       output(screen,"   MMAP_BLACKLIST\n");
+#ifdef HAVE_SYS_IPC_H
+       output(screen,"   HAVE_SYS_IPC_H\n");
 #endif
-#ifdef FTRUNCATE_NEEDS_ROOT
-       output(screen,"   FTRUNCATE_NEEDS_ROOT\n");
+#ifdef HAVE_SYS_MMAN_H
+       output(screen,"   HAVE_SYS_MMAN_H\n");
 #endif
-#ifdef HAVE_FCNTL_LOCK
-       output(screen,"   HAVE_FCNTL_LOCK\n");
+#ifdef HAVE_SYS_MODE_H
+       output(screen,"   HAVE_SYS_MODE_H\n");
 #endif
-#ifdef HAVE_BROKEN_FCNTL64_LOCKS
-       output(screen,"   HAVE_BROKEN_FCNTL64_LOCKS\n");
+#ifdef HAVE_SYS_MOUNT_H
+       output(screen,"   HAVE_SYS_MOUNT_H\n");
 #endif
-#ifdef HAVE_STRUCT_FLOCK64
-       output(screen,"   HAVE_STRUCT_FLOCK64\n");
+#ifdef HAVE_SYS_NDIR_H
+       output(screen,"   HAVE_SYS_NDIR_H\n");
 #endif
-#ifdef BROKEN_NISPLUS_INCLUDE_FILES
-       output(screen,"   BROKEN_NISPLUS_INCLUDE_FILES\n");
+#ifdef HAVE_SYS_PARAM_H
+       output(screen,"   HAVE_SYS_PARAM_H\n");
 #endif
-#ifdef HAVE_LIBPAM
-       output(screen,"   HAVE_LIBPAM\n");
+#ifdef HAVE_SYS_PRIV_H
+       output(screen,"   HAVE_SYS_PRIV_H\n");
 #endif
-#ifdef STAT_STATVFS64
-       output(screen,"   STAT_STATVFS64\n");
+#ifdef HAVE_SYS_RESOURCE_H
+       output(screen,"   HAVE_SYS_RESOURCE_H\n");
 #endif
-#ifdef STAT_STATVFS
-       output(screen,"   STAT_STATVFS\n");
+#ifdef HAVE_SYS_SECURITY_H
+       output(screen,"   HAVE_SYS_SECURITY_H\n");
 #endif
-#ifdef STAT_STATFS3_OSF1
-       output(screen,"   STAT_STATFS3_OSF1\n");
+#ifdef HAVE_SYS_SELECT_H
+       output(screen,"   HAVE_SYS_SELECT_H\n");
 #endif
-#ifdef STAT_STATFS2_BSIZE
-       output(screen,"   STAT_STATFS2_BSIZE\n");
+#ifdef HAVE_SYS_SHM_H
+       output(screen,"   HAVE_SYS_SHM_H\n");
 #endif
-#ifdef STAT_STATFS4
-       output(screen,"   STAT_STATFS4\n");
+#ifdef HAVE_SYS_SOCKET_H
+       output(screen,"   HAVE_SYS_SOCKET_H\n");
 #endif
-#ifdef STAT_STATFS2_FSIZE
-       output(screen,"   STAT_STATFS2_FSIZE\n");
+#ifdef HAVE_SYS_SOCKIO_H
+       output(screen,"   HAVE_SYS_SOCKIO_H\n");
 #endif
-#ifdef STAT_STATFS2_FS_DATA
-       output(screen,"   STAT_STATFS2_FS_DATA\n");
+#ifdef HAVE_SYS_STATFS_H
+       output(screen,"   HAVE_SYS_STATFS_H\n");
 #endif
-#ifdef HAVE_EXPLICIT_LARGEFILE_SUPPORT
-       output(screen,"   HAVE_EXPLICIT_LARGEFILE_SUPPORT\n");
+#ifdef HAVE_SYS_STATVFS_H
+       output(screen,"   HAVE_SYS_STATVFS_H\n");
 #endif
-
-#ifdef WITH_UTMP
-       /* Output UTMP Stuff */
-       output(screen,"\nUTMP Related:\n");
-       output(screen,"   WITH_UTMP\n");
-
-#ifdef HAVE_UTIMBUF
-       output(screen,"   HAVE_UTIMBUF\n");
+#ifdef HAVE_SYS_SYSCALL_H
+       output(screen,"   HAVE_SYS_SYSCALL_H\n");
 #endif
-#ifdef HAVE_UT_UT_NAME
-       output(screen,"   HAVE_UT_UT_NAME\n");
+#ifdef HAVE_SYS_TERMIO_H
+       output(screen,"   HAVE_SYS_TERMIO_H\n");
 #endif
-#ifdef HAVE_UT_UT_USER
-       output(screen,"   HAVE_UT_UT_USER\n");
+#ifdef HAVE_SYS_TIME_H
+       output(screen,"   HAVE_SYS_TIME_H\n");
 #endif
-#ifdef HAVE_UT_UT_ID
-       output(screen,"   HAVE_UT_UT_ID\n");
+#ifdef HAVE_SYS_UNISTD_H
+       output(screen,"   HAVE_SYS_UNISTD_H\n");
 #endif
-#ifdef HAVE_UT_UT_HOST
-       output(screen,"   HAVE_UT_UT_HOST\n");
+#ifdef HAVE_SYS_VFS_H
+       output(screen,"   HAVE_SYS_VFS_H\n");
 #endif
-#ifdef HAVE_UT_UT_TIME
-       output(screen,"   HAVE_UT_UT_TIME\n");
+#ifdef HAVE_SYS_WAIT_H
+       output(screen,"   HAVE_SYS_WAIT_H\n");
 #endif
-#ifdef HAVE_UT_UT_TV
-       output(screen,"   HAVE_UT_UT_TV\n");
+#ifdef HAVE_SYSCALL_H
+       output(screen,"   HAVE_SYSCALL_H\n");
 #endif
-#ifdef HAVE_UT_UT_TYPE
-       output(screen,"   HAVE_UT_UT_TYPE\n");
+#ifdef HAVE_TERMIO_H
+       output(screen,"   HAVE_TERMIO_H\n");
 #endif
-#ifdef HAVE_UT_UT_PID
-       output(screen,"   HAVE_UT_UT_PID\n");
+#ifdef HAVE_TERMIOS_H
+       output(screen,"   HAVE_TERMIOS_H\n");
 #endif
-#ifdef HAVE_UT_UT_EXIT
-       output(screen,"   HAVE_UT_UT_EXIT\n");
+#ifdef HAVE_UNISTD_H
+       output(screen,"   HAVE_UNISTD_H\n");
 #endif
-#ifdef HAVE_UT_UT_ADDR
-       output(screen,"   HAVE_UT_UT_ADDR\n");
+#ifdef HAVE_UTIME_H
+       output(screen,"   HAVE_UTIME_H\n");
 #endif
-#ifdef PUTUTLINE_RETURNS_UTMP
-       output(screen,"   PUTUTLINE_RETURNS_UTMP\n");
+#ifdef HAVE_UTMP_H
+       output(screen,"   HAVE_UTMP_H\n");
 #endif
-#ifdef HAVE_UX_UT_SYSLEN
-       output(screen,"   HAVE_UX_UT_SYSLEN\n");
+#ifdef HAVE_UTMPX_H
+       output(screen,"   HAVE_UTMPX_H\n");
 #endif
-#endif /* WITH_UTMP */
-
-       /* Output Build OS */
-       output(screen,"\nBuilt for host os:\n");
-#ifdef LINUX
-       output(screen,"   LINUX\n");
+#ifdef HAVE_LIBACL
+       output(screen,"   HAVE_LIBACL\n");
 #endif
-#ifdef SUNOS5
-       output(screen,"   SUNOS5\n");
+#ifdef HAVE_LIBCUPS
+       output(screen,"   HAVE_LIBCUPS\n");
 #endif
-#ifdef SUNOS4
-       output(screen,"   SUNOS4\n");
+#ifdef HAVE_LIBGEN
+       output(screen,"   HAVE_LIBGEN\n");
 #endif
-       /* BSD Isn't Defined in the configure script, but there is something about it in include/config.h.in (and I guess acconfig.h) */
-#ifdef BSD
-       output(screen,"   BSD\n");
+#ifdef HAVE_LIBICONV
+       output(screen,"   HAVE_LIBICONV\n");
 #endif
-#ifdef IRIX
-       output(screen,"   IRIX\n");
+#ifdef HAVE_LIBINET
+       output(screen,"   HAVE_LIBINET\n");
 #endif
-#ifdef IRIX6
-       output(screen,"   IRIX6\n");
+#ifdef HAVE_LIBNSL
+       output(screen,"   HAVE_LIBNSL\n");
 #endif
-#ifdef AIX
-       output(screen,"   AIX\n");
+#ifdef HAVE_LIBNSL_S
+       output(screen,"   HAVE_LIBNSL_S\n");
 #endif
-#ifdef HPUX
-       output(screen,"   HPUX\n");
+#ifdef HAVE_LIBRESOLV
+       output(screen,"   HAVE_LIBRESOLV\n");
 #endif
-#ifdef QNX
-       output(screen,"   QNX\n");
+#ifdef HAVE_LIBSEC
+       output(screen,"   HAVE_LIBSEC\n");
 #endif
-#ifdef OSF1
-       output(screen,"   OSF1\n");
+#ifdef HAVE_LIBSECURITY
+       output(screen,"   HAVE_LIBSECURITY\n");
 #endif
-#ifdef SCO
-       output(screen,"   SCO\n");
+#ifdef HAVE_LIBSOCKET
+       output(screen,"   HAVE_LIBSOCKET\n");
 #endif
-#ifdef UNIXWARE
-       output(screen,"   UNIXWARE\n");
+#ifdef ENABLE_DMALLOC
+       output(screen,"   ENABLE_DMALLOC\n");
 #endif
-#ifdef NEXT2
-       output(screen,"   NEXT2\n");
+#ifdef HAVE_NEW_LIBREADLINE
+       output(screen,"   HAVE_NEW_LIBREADLINE\n");
 #endif
-#ifdef RELIANTUNIX
-       output(screen,"   RELIANTUNIX\n");
+#ifdef HAVE_WORKING_AF_LOCAL
+       output(screen,"   HAVE_WORKING_AF_LOCAL\n");
 #endif
 
        /* Output the sizes of the various types */
@@ -532,6 +1555,3 @@
        output(screen,"   sizeof(short):   %d\n",sizeof(short));
        output(screen,"   sizeof(void*):   %d\n",sizeof(void*));
 }
-
-
-
--- /dev/null	Fri Aug 31 03:30:55 2001
+++ script/mkbuildenv.awk	Fri Dec 14 23:32:56 2001
@@ -0,0 +1,118 @@
+BEGIN {
+print "/* ";
+print "   Unix SMB/Netbios implementation.";
+print "   Version 2.2";
+print "   Build Options for Samba Suite";
+print "   Copyright (C) Vance Lankhaar <vance at pcsscreston.ca> 2001";
+print "   Copyright (C) Andrew Bartlett <abartlet at samba.org> 2001";
+print "   ";
+print "   This program is free software; you can redistribute it and/or modify";
+print "   it under the terms of the GNU General Public License as published by";
+print "   the Free Software Foundation; either version 2 of the License, or";
+print "   (at your option) any later version.";
+print "   ";
+print "   This program is distributed in the hope that it will be useful,";
+print "   but WITHOUT ANY WARRANTY; without even the implied warranty of";
+print "   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the";
+print "   GNU General Public License for more details.";
+print "   ";
+print "   You should have received a copy of the GNU General Public License";
+print "   along with this program; if not, write to the Free Software";
+print "   Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.";
+print "*/";
+print "";
+print "#include \"includes.h\"";
+print "#include \"build_env.h\"";
+print "#include \"dynconfig.h\"";
+print "";
+print "static void output(BOOL screen, char *format, ...) PRINTF_ATTRIBUTE(2,3);";
+print "";
+print "";
+print "/****************************************************************************";
+print "helper function for build_options";
+print "****************************************************************************/";
+print "static void output(BOOL screen, char *format, ...)";
+print "{";
+print "       char *ptr;";
+print "       va_list ap;";
+print "       ";
+print "       va_start(ap, format);";
+print "       vasprintf(&ptr,format,ap);";
+print "       va_end(ap);";
+print "";
+print "       if (screen) {";
+print "              d_printf(\"%s\", ptr);";
+print "       } else {";
+print "	       DEBUG(4,(\"%s\", ptr));";
+print "       }";
+print "       ";
+print "       SAFE_FREE(ptr);";
+print "}";
+print "";
+print "/****************************************************************************";
+print "options set at build time for the samba suite";
+print "****************************************************************************/";
+print "void build_options(BOOL screen)";
+print "{";
+print "       if ((DEBUGLEVEL < 4) && (!screen)) {";
+print "	       return;";
+print "       }";
+print "";
+print "#ifdef _BUILD_ENV_H";
+print "       /* Output information about the build environment */";
+print "       output(screen,\"Build environment:\\n\");";
+print "       output(screen,\"   Built by:    %s@%s\\n\",BUILD_ENV_USER,BUILD_ENV_HOST);";
+print "       output(screen,\"   Built on:    %s\\n\",BUILD_ENV_DATE);";
+print "";
+print "       output(screen,\"   Built using: %s\\n\",BUILD_ENV_COMPILER);";
+print "       output(screen,\"   Build host:  %s\\n\",BUILD_ENV_UNAME);";
+print "       output(screen,\"   SRCDIR:      %s\\n\",BUILD_ENV_SRCDIR);";
+print "       output(screen,\"   BUILDDIR:    %s\\n\",BUILD_ENV_BUILDDIR);";
+print "";
+print "     ";  
+print "#endif";
+print "";
+
+print "       /* Output various paths to files and directories */";
+print "       output(screen,\"\\nPaths:\\n\");";
+print "       output(screen,\"   CONFIGFILE: %s\\n\", dyn_CONFIGFILE);";
+print "#ifdef PRIVATE_DIR";
+print "       output(screen,\"   PRIVATE_DIR: %s\\n\",PRIVATE_DIR);";
+print "#endif";
+print "#ifdef LMHOSTSFILE";
+print "       output(screen,\"   LMHOSTSFILE: %s\\n\",LMHOSTSFILE);";
+print "#endif";
+print "       output(screen,\"   SBINDIR: %s\\n\", dyn_SBINDIR);";
+print "       output(screen,\"   BINDIR: %s\\n\", dyn_BINDIR);";
+print "       output(screen,\"   LOCKDIR: %s\\n\",dyn_LOCKDIR);";
+print "       output(screen,\"   DRIVERFILE: %s\\n\", dyn_DRIVERFILE);";
+print "       output(screen,\"   LOGFILEBASE: %s\\n\", dyn_LOGFILEBASE);";
+print "";
+print "/* Output various other options (map to defines in include/config.h) */";
+print "       output(screen,\"\\nOther Build Options:\\n\");";
+
+}
+
+END {
+print "";
+print "       /* Output the sizes of the various types */";
+print "       output(screen,\"\\nType sizes:\\n\");";
+print "       output(screen,\"   sizeof(char):    %d\\n\",sizeof(char));";
+print "       output(screen,\"   sizeof(int):     %d\\n\",sizeof(int));";
+print "       output(screen,\"   sizeof(long):    %d\\n\",sizeof(long));";
+print "       output(screen,\"   sizeof(uint8):   %d\\n\",sizeof(uint8));";
+print "       output(screen,\"   sizeof(uint16):  %d\\n\",sizeof(uint16));";
+print "       output(screen,\"   sizeof(uint32):  %d\\n\",sizeof(uint32));";
+print "       output(screen,\"   sizeof(short):   %d\\n\",sizeof(short));";
+print "       output(screen,\"   sizeof(void*):   %d\\n\",sizeof(void*));";
+print "}";
+
+}
+
+
+/^#undef/ {
+  split($0,a);
+  printf("#ifdef %s\n",a[2],/\s/);
+  printf("       output(screen,\"   %s\\n\");\n",a[2]);
+  printf("#endif\n");
+}


More information about the samba-technical mailing list