From 6c58dcd8aba2e8fae1354ad4ce134a9b74f78de6 Mon Sep 17 00:00:00 2001 From: "Ryan C. Gordon" Date: Thu, 25 Jul 2002 06:00:12 +0000 Subject: [PATCH] Changed cd detection stuff again. More robust. --- configure.in | 41 ++++++++++++++++++++++++----------------- 1 file changed, 24 insertions(+), 17 deletions(-) diff --git a/configure.in b/configure.in index bd551ab..7a600ef 100644 --- a/configure.in +++ b/configure.in @@ -194,28 +194,30 @@ if test x$have_llseek = xyes; then AC_DEFINE([PHYSFS_HAVE_LLSEEK], 1, [define if we have llseek]) fi -enable_cdrom=no + dnl determine if we should use the stubbed CD-ROM detection code. -dnl AC_ARG_ENABLE(cdrom, -dnl [ --enable-cdrom try standard CD-ROM support [default=yes]], -dnl , enable_cdrom=yes) +AC_ARG_ENABLE(cdrom, +[ --enable-cdrom include CD-ROM support [default=yes]], + , enable_cdrom=yes) +if test x$enable_cdrom = xyes; then + dnl reset this and let header detection reenable... + enable_cdrom=no + dnl BSD systems use sys/ucred.h for getting mounted volumes. + dnl Linux and others use mntent.h. + AC_CHECK_HEADER(sys/ucred.h, have_ucred_hdr=yes) + if test x$have_ucred_hdr = xyes; then + AC_DEFINE([PHYSFS_HAVE_SYS_UCRED_H], 1, [define if we have sys/ucred.h]) + enable_cdrom=yes + fi -dnl BSD systems use sys/ucred.h for getting mounted volumes. -dnl Linux and others use mntent.h. -AC_CHECK_HEADER(sys/ucred.h, have_ucred_hdr=yes) -if test x$have_ucred_hdr = xyes; then - AC_DEFINE([PHYSFS_HAVE_SYS_UCRED_H], 1, [define if we have sys/ucred.h]) - enable_cdrom=yes + AC_CHECK_HEADER(mntent.h, have_mntent_hdr=yes) + if test x$have_mntent_hdr = xyes; then + AC_DEFINE([PHYSFS_HAVE_MNTENT_H], 1, [define if we have mntent.h]) + enable_cdrom=yes + fi fi -AC_CHECK_HEADER(mntent.h, have_mntent_hdr=yes) -if test x$have_mntent_hdr = xyes; then - AC_DEFINE([PHYSFS_HAVE_MNTENT_H], 1, [define if we have mntent.h]) - enable_cdrom=yes -fi - - dnl AC_CHECK_HEADER(be/kernel/OS.h, this_is_beos=yes) AC_MSG_CHECKING([if this is BeOS]) if test x$build_os = xbeos; then @@ -288,6 +290,11 @@ fi dnl Some platform might disable this, so check this down here... if test x$enable_cdrom != xyes; then AC_DEFINE([PHYSFS_NO_CDROM_SUPPORT], 1, [define if we have no CD support]) + AC_MSG_WARN([***]) + AC_MSG_WARN([*** There is no CD-ROM support in this build!]) + AC_MSG_WARN([*** PhysicsFS will just pretend there are no discs!]) + AC_MSG_WARN([*** Is this what you really wanted?]) + AC_MSG_WARN([***]) fi