From b28284007838c5802930691f1bd0aa77627ae7a2 Mon Sep 17 00:00:00 2001 From: Andrew Tridgell Date: Sat, 5 Sep 1998 13:53:13 +0000 Subject: added a configuration summary at the end of ./configure. It also aborts if essential functions are not available. (This used to be commit 5c7717f033f670f587b4a250d0a663cad30824e5) --- source3/configure | 22 ++++++++++++++++++++++ source3/configure.in | 5 +++++ source3/tests/summary.c | 28 ++++++++++++++++++++++++++++ 3 files changed, 55 insertions(+) create mode 100644 source3/tests/summary.c diff --git a/source3/configure b/source3/configure index 91fbc65506..a57723f209 100755 --- a/source3/configure +++ b/source3/configure @@ -4892,6 +4892,28 @@ EOF fi fi +echo "checking configure summary" +if test "$cross_compiling" = yes; then + { echo "configure: error: can not run test program while cross compiling" 1>&2; exit 1; } +else + cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null +then + echo "configure OK"; +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -fr conftest* + echo ERROR - summary failure. Aborting config; exit 1 +fi +rm -fr conftest* +fi + + trap '' 1 2 15 cat > confcache <<\EOF diff --git a/source3/configure.in b/source3/configure.in index 98a5ad1498..d0e3448944 100644 --- a/source3/configure.in +++ b/source3/configure.in @@ -704,6 +704,11 @@ if test $space = no; then fi fi +echo "checking configure summary" +AC_TRY_RUN([#include "tests/summary.c"], + echo "configure OK";, + echo ERROR - summary failure. Aborting config; exit 1) + AC_OUTPUT(Makefile tests/dummy client/dummy lib/dummy ubiqx/dummy web/dummy param/dummy nmbd/dummy smbd/dummy rpc_server/dummy diff --git a/source3/tests/summary.c b/source3/tests/summary.c new file mode 100644 index 0000000000..8c0d3005af --- /dev/null +++ b/source3/tests/summary.c @@ -0,0 +1,28 @@ +#include + +main() +{ +#ifndef HAVE_FCNTL_LOCK + printf("ERROR: No locking available. Running Samba would be unsafe\n"); + exit(1); +#endif + +#if !(defined(HAVE_SYSV_IPC) || defined(HAVE_SHARED_MMAP)) + printf("WARNING: no shared memory. Running with slow locking code\n"); +#endif + +#ifdef HAVE_TRAPDOOR_UID + printf("WARNING: trapdoor uid system - Samba may not operate correctly\n"); +#endif + +#if !(defined(HAVE_NETMASK_IFCONF) || defined(HAVE_NETMASK_IFREQ) || defined(HAVE_NETMASK_AIX)) + printf("WARNING: No automated netmask determination - use an interfaces line\n"); +#endif + +#if !(defined(STAT_STATVFS) || defined(STAT_STATFS3_OSF1) || defined(STAT_STATFS2_BSIZE) || defined(STAT_STATFS4) || defined(STAT_STATFS2_FSIZE) || defined(STAT_STATFS2_FS_DATA)) + printf("ERROR: No disk free routine!\n"); + exit(1); +#endif + + exit(0); +} -- cgit