From: Nathan Scott Date: Thu, 11 Aug 2005 06:02:16 +0000 (+0000) Subject: Fix builds for FreeBSD, thanks to Craig Rodrigues. X-Git-Tag: v2.7.0~5 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=cfe6e3f0665855e3d4777acaf39f77f9baeeb906;p=thirdparty%2Fxfsprogs-dev.git Fix builds for FreeBSD, thanks to Craig Rodrigues. Merge of master-melb:xfs-cmds:23478a by kenmcd. --- diff --git a/VERSION b/VERSION index 5fe9ef9fa..1835aa477 100644 --- a/VERSION +++ b/VERSION @@ -3,5 +3,5 @@ # PKG_MAJOR=2 PKG_MINOR=6 -PKG_REVISION=36 +PKG_REVISION=37 PKG_BUILD=1 diff --git a/aclocal.m4 b/aclocal.m4 index 104738b53..e96d0cc6c 100644 --- a/aclocal.m4 +++ b/aclocal.m4 @@ -1,6 +1,6 @@ -# generated automatically by aclocal 1.7.9 -*- Autoconf -*- +# generated automatically by aclocal 1.8.3 -*- Autoconf -*- -# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002 +# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004 # Free Software Foundation, Inc. # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -11,361 +11,10 @@ # even the implied warranty of MERCHANTABILITY or FITNESS FOR A # PARTICULAR PURPOSE. -# -# Generic macro, sets up all of the global packaging variables. -# The following environment variables may be set to override defaults: -# DEBUG OPTIMIZER MALLOCLIB PLATFORM DISTRIBUTION INSTALL_USER INSTALL_GROUP -# BUILD_VERSION -# -AC_DEFUN([AC_PACKAGE_GLOBALS], - [ pkg_name="$1" - AC_SUBST(pkg_name) - - . ./VERSION - pkg_version=${PKG_MAJOR}.${PKG_MINOR}.${PKG_REVISION} - AC_SUBST(pkg_version) - pkg_release=$PKG_BUILD - test -z "$BUILD_VERSION" || pkg_release="$BUILD_VERSION" - AC_SUBST(pkg_release) - - DEBUG=${DEBUG:-'-DDEBUG'} dnl -DNDEBUG - debug_build="$DEBUG" - AC_SUBST(debug_build) - - OPTIMIZER=${OPTIMIZER:-'-g'} dnl -O2 - opt_build="$OPTIMIZER" - AC_SUBST(opt_build) - - MALLOCLIB=${MALLOCLIB:-''} dnl /usr/lib/libefence.a - malloc_lib="$MALLOCLIB" - AC_SUBST(malloc_lib) - - PKG_USER=${INSTALL_USER:-'root'} - pkg_user="$PKG_USER" - AC_SUBST(pkg_user) - - PKG_GROUP=${INSTALL_GROUP:-'root'} - pkg_group="$PKG_GROUP" - AC_SUBST(pkg_group) - - pkg_distribution=`uname -s` - test -z "$DISTRIBUTION" || pkg_distribution="$DISTRIBUTION" - AC_SUBST(pkg_distribution) - - pkg_platform=`uname -s | tr 'A-Z' 'a-z' | sed -e 's/irix64/irix/'` - test -z "$PLATFORM" || pkg_platform="$PLATFORM" - AC_SUBST(pkg_platform) - ]) - -# -# Check for specified utility (env var) - if unset, fail. -# -AC_DEFUN([AC_PACKAGE_NEED_UTILITY], - [ if test -z "$2"; then - echo - echo FATAL ERROR: $3 does not seem to be installed. - echo $1 cannot be built without a working $4 installation. - exit 1 - fi - ]) - -# -# Generic macro, sets up all of the global build variables. -# The following environment variables may be set to override defaults: -# CC MAKE LIBTOOL TAR ZIP MAKEDEPEND AWK SED ECHO SORT -# MSGFMT MSGMERGE RPM -# -AC_DEFUN([AC_PACKAGE_UTILITIES], - [ AC_PROG_CC - cc="$CC" - AC_SUBST(cc) - AC_PACKAGE_NEED_UTILITY($1, "$cc", cc, [C compiler]) - - if test -z "$MAKE"; then - AC_PATH_PROG(MAKE, gmake,, /usr/bin:/usr/local/bin:/usr/freeware/bin) - fi - if test -z "$MAKE"; then - AC_PATH_PROG(MAKE, make,, /usr/bin) - fi - make=$MAKE - AC_SUBST(make) - AC_PACKAGE_NEED_UTILITY($1, "$make", make, [GNU make]) - - if test -z "$LIBTOOL"; then - AC_PATH_PROG(LIBTOOL, glibtool,, /usr/bin) - fi - if test -z "$LIBTOOL"; then - AC_PATH_PROG(LIBTOOL, libtool,, /usr/bin:/usr/local/bin:/usr/freeware/bin) - fi - libtool=$LIBTOOL - AC_SUBST(libtool) - AC_PACKAGE_NEED_UTILITY($1, "$libtool", libtool, [GNU libtool]) - - if test -z "$TAR"; then - AC_PATH_PROG(TAR, tar,, /usr/freeware/bin:/bin:/usr/local/bin:/usr/bin) - fi - tar=$TAR - AC_SUBST(tar) - if test -z "$ZIP"; then - AC_PATH_PROG(ZIP, gzip,, /bin:/usr/bin:/usr/local/bin:/usr/freeware/bin) - fi - - zip=$ZIP - AC_SUBST(zip) - - if test -z "$MAKEDEPEND"; then - AC_PATH_PROG(MAKEDEPEND, makedepend, /bin/true) - fi - makedepend=$MAKEDEPEND - AC_SUBST(makedepend) - - if test -z "$AWK"; then - AC_PATH_PROG(AWK, awk,, /bin:/usr/bin) - fi - awk=$AWK - AC_SUBST(awk) - - if test -z "$SED"; then - AC_PATH_PROG(SED, sed,, /bin:/usr/bin) - fi - sed=$SED - AC_SUBST(sed) - - if test -z "$ECHO"; then - AC_PATH_PROG(ECHO, echo,, /bin:/usr/bin) - fi - echo=$ECHO - AC_SUBST(echo) - - if test -z "$SORT"; then - AC_PATH_PROG(SORT, sort,, /bin:/usr/bin) - fi - sort=$SORT - AC_SUBST(sort) - - dnl check if symbolic links are supported - AC_PROG_LN_S - - if test "$enable_gettext" = yes; then - if test -z "$MSGFMT"; then - AC_PATH_PROG(MSGFMT, msgfmt,, /usr/bin:/usr/local/bin:/usr/freeware/bin) - fi - msgfmt=$MSGFMT - AC_SUBST(msgfmt) - AC_PACKAGE_NEED_UTILITY($1, "$msgfmt", msgfmt, gettext) - - if test -z "$MSGMERGE"; then - AC_PATH_PROG(MSGMERGE, msgmerge,, /usr/bin:/usr/local/bin:/usr/freeware/bin) - fi - msgmerge=$MSGMERGE - AC_SUBST(msgmerge) - AC_PACKAGE_NEED_UTILITY($1, "$msgmerge", msgmerge, gettext) - fi - - if test -z "$RPM"; then - AC_PATH_PROG(RPM, rpm,, /bin:/usr/bin:/usr/freeware/bin) - fi - rpm=$RPM - AC_SUBST(rpm) - - dnl .. and what version is rpm - rpm_version=0 - test -n "$RPM" && test -x "$RPM" && rpm_version=`$RPM --version \ - | awk '{print $NF}' | awk -F. '{V=1; print $V}'` - AC_SUBST(rpm_version) - dnl At some point in rpm 4.0, rpm can no longer build rpms, and - dnl rpmbuild is needed (rpmbuild may go way back; not sure) - dnl So, if rpm version >= 4.0, look for rpmbuild. Otherwise build w/ rpm - if test $rpm_version -ge 4; then - AC_PATH_PROG(RPMBUILD, rpmbuild) - rpmbuild=$RPMBUILD - else - rpmbuild=$RPM - fi - AC_SUBST(rpmbuild) - ]) - -AC_DEFUN([AC_PACKAGE_NEED_UUID_H], - [ AC_CHECK_HEADERS([uuid.h sys/uuid.h uuid/uuid.h]) - if test $ac_cv_header_uuid_h = no -a \ - $ac_cv_header_sys_uuid_h = no -a \ - $ac_cv_header_uuid_uuid_h = no; then - echo - echo 'FATAL ERROR: could not find a valid UUID header.' - echo 'Install the Universally Unique Identifiers development package.' - exit 1 - fi - ]) - -AC_DEFUN([AC_PACKAGE_NEED_UUIDCOMPARE], - [ AC_CHECK_FUNCS(uuid_compare) - if test $ac_cv_func_uuid_compare = yes; then - libuuid="" - else - AC_CHECK_LIB(uuid, uuid_compare,, [ - echo - echo 'FATAL ERROR: could not find a valid UUID library.' - echo 'Install the Universally Unique Identifiers library package.' - exit 1]) - libuuid="-luuid" - fi - AC_SUBST(libuuid) - ]) - -AC_DEFUN([AC_PACKAGE_NEED_PTHREAD_H], - [ AC_CHECK_HEADERS(pthread.h) - if test $ac_cv_header_pthread_h = no; then - AC_CHECK_HEADERS(pthread.h,, [ - echo - echo 'FATAL ERROR: could not find a valid pthread header.' - exit 1]) - fi - ]) - -AC_DEFUN([AC_PACKAGE_NEED_PTHREADMUTEXINIT], - [ AC_CHECK_LIB(pthread, pthread_mutex_init,, [ - echo - echo 'FATAL ERROR: could not find a valid pthread library.' - exit 1 - ]) - libpthread=-lpthread - AC_SUBST(libpthread) - ]) - -# -# Check if we have a working fadvise system call -# -AC_DEFUN([AC_HAVE_FADVISE], - [ AC_MSG_CHECKING([for fadvise ]) - AC_TRY_COMPILE([ -#define _GNU_SOURCE -#define _FILE_OFFSET_BITS 64 -#include - ], [ - posix_fadvise(0, 1, 0, POSIX_FADV_NORMAL); - ], have_fadvise=yes - AC_MSG_RESULT(yes), - AC_MSG_RESULT(no)) - AC_SUBST(have_fadvise) - ]) - -# -# Check if we have a working madvise system call -# -AC_DEFUN([AC_HAVE_MADVISE], - [ AC_MSG_CHECKING([for madvise ]) - AC_TRY_COMPILE([ -#define _GNU_SOURCE -#define _FILE_OFFSET_BITS 64 -#include - ], [ - posix_madvise(0, 0, MADV_NORMAL); - ], have_madvise=yes - AC_MSG_RESULT(yes), - AC_MSG_RESULT(no)) - AC_SUBST(have_madvise) - ]) - -# -# Check if we have a working mincore system call -# -AC_DEFUN([AC_HAVE_MINCORE], - [ AC_MSG_CHECKING([for mincore ]) - AC_TRY_COMPILE([ -#define _GNU_SOURCE -#define _FILE_OFFSET_BITS 64 -#include - ], [ - mincore(0, 0, 0); - ], have_mincore=yes - AC_MSG_RESULT(yes), - AC_MSG_RESULT(no)) - AC_SUBST(have_mincore) - ]) - -# -# Check if we have a working sendfile system call -# -AC_DEFUN([AC_HAVE_SENDFILE], - [ AC_MSG_CHECKING([for sendfile ]) - AC_TRY_COMPILE([ -#define _GNU_SOURCE -#define _FILE_OFFSET_BITS 64 -#include - ], [ - sendfile(0, 0, 0, 0); - ], have_sendfile=yes - AC_MSG_RESULT(yes), - AC_MSG_RESULT(no)) - AC_SUBST(have_sendfile) - ]) - -# -# Check if we have a type for the pointer's size integer (__psint_t) -# -AC_DEFUN([AC_TYPE_PSINT], - [ AC_MSG_CHECKING([for __psint_t ]) - AC_TRY_COMPILE([ -#include -#include -#include - ], [ - __psint_t psint; - ], AC_DEFINE(HAVE___PSINT_T) AC_MSG_RESULT(yes) , AC_MSG_RESULT(no)) - ]) - -# -# Check if we have a type for the pointer's size unsigned (__psunsigned_t) -# -AC_DEFUN([AC_TYPE_PSUNSIGNED], - [ AC_MSG_CHECKING([for __psunsigned_t ]) - AC_TRY_COMPILE([ -#include -#include -#include - ], [ - __psunsigned_t psuint; - ], AC_DEFINE(HAVE___PSUNSIGNED_T) AC_MSG_RESULT(yes) , AC_MSG_RESULT(no)) - ]) - -# -# Check type sizes -# -AC_DEFUN([AC_SIZEOF_POINTERS_AND_LONG], - [ if test "$cross_compiling" = yes -a -z "$ac_cv_sizeof_long"; then - AC_MSG_WARN([Cross compiling; assuming 32bit long and 32bit pointers]) - fi - AC_CHECK_SIZEOF(long, 4) - AC_CHECK_SIZEOF(char *, 4) - if test $ac_cv_sizeof_long -eq 4 -o $ac_cv_sizeof_long -eq 0; then - AC_DEFINE(HAVE_32BIT_LONG) - fi - if test $ac_cv_sizeof_long -eq 8; then - AC_DEFINE(HAVE_64BIT_LONG) - fi - if test $ac_cv_sizeof_char_p -eq 4 -o $ac_cv_sizeof_char_p -eq 0; then - AC_DEFINE(HAVE_32BIT_PTR) - fi - if test $ac_cv_sizeof_char_p -eq 8; then - AC_DEFINE(HAVE_64BIT_PTR) - fi - ]) - -# -# Find format of installed man pages. -# Always gzipped on Debian, but not Redhat pre-7.0. -# We don't deal with bzip2'd man pages, which Mandrake uses, -# someone will send us a patch sometime hopefully. :-) -# -AC_DEFUN([AC_MANUAL_FORMAT], - [ have_zipped_manpages=false - for d in ${prefix}/share/man ${prefix}/man ; do - if test -f $d/man1/man.1.gz - then - have_zipped_manpages=true - break - fi - done - AC_SUBST(have_zipped_manpages) - ]) - +m4_include([./m4/manual_format.m4]) +m4_include([./m4/package_globals.m4]) +m4_include([./m4/package_libcdev.m4]) +m4_include([./m4/package_pthread.m4]) +m4_include([./m4/package_types.m4]) +m4_include([./m4/package_utilies.m4]) +m4_include([./m4/package_uuiddev.m4]) diff --git a/configure.in b/configure.in index c39e5bdd1..392f354bf 100644 --- a/configure.in +++ b/configure.in @@ -43,6 +43,8 @@ AC_HAVE_FADVISE AC_HAVE_MADVISE AC_HAVE_MINCORE AC_HAVE_SENDFILE +AC_HAVE_GETMNTENT +AC_HAVE_GETMNTINFO AC_TYPE_PSINT AC_TYPE_PSUNSIGNED diff --git a/debian/changelog b/debian/changelog index 5aa78f3ea..fde8003c1 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,9 @@ +xfsprogs (2.6.37-1) unstable; urgency=low + + * New upstream release. + + -- Nathan Scott Thu, 11 Aug 2005 13:25:07 +1000 + xfsprogs (2.6.36-1) unstable; urgency=low * New upstream release. diff --git a/doc/CHANGES b/doc/CHANGES index 0e7a5dc0f..69fe2bd99 100644 --- a/doc/CHANGES +++ b/doc/CHANGES @@ -1,3 +1,6 @@ +xfsprogs-2.6.37 (11 August 2005) + - Fix FreeBSD builds (getmntinfo), thanks to Craig Rodrigues. + xfsprogs-2.6.36 (28 July 2005) - Fix mkfs stripe unit alignment checks for external logs - Fix running xfs_db on non-XFS devices (was segfaulting) diff --git a/include/builddefs.in b/include/builddefs.in index ac5780a01..27ea52a74 100644 --- a/include/builddefs.in +++ b/include/builddefs.in @@ -100,6 +100,8 @@ HAVE_FADVISE = @have_fadvise@ HAVE_MADVISE = @have_madvise@ HAVE_MINCORE = @have_mincore@ HAVE_SENDFILE = @have_sendfile@ +HAVE_GETMNTENT = @have_getmntent@ +HAVE_GETMNTINFO = @have_getmntinfo@ ifeq ($(PKG_PLATFORM),linux) PCFLAGS = -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 diff --git a/libxcmd/Makefile b/libxcmd/Makefile index d989a23e2..bca9eae94 100644 --- a/libxcmd/Makefile +++ b/libxcmd/Makefile @@ -40,6 +40,14 @@ LT_AGE = 0 CFILES = command.c input.c paths.c projects.c help.c quit.c +ifeq ($(HAVE_GETMNTENT),yes) +LCFLAGS += -DHAVE_GETMNTENT +endif + +ifeq ($(HAVE_GETMNTINFO),yes) +LCFLAGS += -DHAVE_GETMNTINFO +endif + default: $(LTLIBRARY) include $(BUILDRULES) diff --git a/libxcmd/paths.c b/libxcmd/paths.c index 8ff96d5cb..7cb31b853 100644 --- a/libxcmd/paths.c +++ b/libxcmd/paths.c @@ -42,8 +42,6 @@ #include #include -#define HAVE_MNTENT_H 1 /* TODO - configure me (+HAVE_GETMNTINFO) */ - int fs_count; struct fs_path *fs_table; struct fs_path *fs_path; @@ -141,7 +139,7 @@ fs_table_destroy(void) } -#if defined(HAVE_MNTENT_H) +#if defined(HAVE_GETMNTENT) #include static void @@ -256,7 +254,7 @@ fs_table_initialise_mounts( } /* TODO: external log and realtime device? */ if ((error = fs_table_insert(dir, 0, FS_MOUNT_POINT, - fsname, fslog, fsrt); + fsname, fslog, fsrt))) break; } if (!error && path && !found) diff --git a/m4/package_libcdev.m4 b/m4/package_libcdev.m4 index a66ae4791..5156ced65 100644 --- a/m4/package_libcdev.m4 +++ b/m4/package_libcdev.m4 @@ -65,3 +65,36 @@ AC_DEFUN([AC_HAVE_SENDFILE], AC_MSG_RESULT(no)) AC_SUBST(have_sendfile) ]) + +# +# Check if we have a getmntent libc call (IRIX, Linux) +# +AC_DEFUN([AC_HAVE_GETMNTENT], + [ AC_MSG_CHECKING([for getmntent ]) + AC_TRY_COMPILE([ +#include +#include + ], [ + getmntent(0); + ], have_getmntent=yes + AC_MSG_RESULT(yes), + AC_MSG_RESULT(no)) + AC_SUBST(have_getmntent) + ]) + +# +# Check if we have a getmntinfo libc call (FreeBSD, Mac OS X) +# +AC_DEFUN([AC_HAVE_GETMNTINFO], + [ AC_MSG_CHECKING([for getmntinfo ]) + AC_TRY_COMPILE([ +#include +#include +#include + ], [ + getmntinfo(0, 0); + ], have_getmntinfo=yes + AC_MSG_RESULT(yes), + AC_MSG_RESULT(no)) + AC_SUBST(have_getmntinfo) + ]) diff --git a/quota/freebsd.c b/quota/freebsd.c index e8c10dcb7..c6ed9fa35 100644 --- a/quota/freebsd.c +++ b/quota/freebsd.c @@ -31,7 +31,6 @@ */ #include "quota.h" -#include int xfsquotactl( diff --git a/quota/util.c b/quota/util.c index 3113b1788..704a49003 100644 --- a/quota/util.c +++ b/quota/util.c @@ -30,6 +30,7 @@ * http://oss.sgi.com/projects/GenInfo/SGIGPLNoticeExplan/ */ +#include #include #include #include