X-Git-Url: https://git.tokkee.org/?a=blobdiff_plain;f=configure.ac;h=3a1a830d9bc2099aaac9f0386ab87a53bfe99ffd;hb=refs%2Fheads%2Fmaster;hp=1aa56946493b62caf02010d8f9a0746418d5b184;hpb=1120116fabd742ce4a6e2eea085a9779729e1dc6;p=fusedav.git diff --git a/configure.ac b/configure.ac index 1aa5694..3a1a830 100644 --- a/configure.ac +++ b/configure.ac @@ -1,29 +1,33 @@ # -*- Autoconf -*- # Process this file with autoconf to produce a configure script. -# $Id$ - -# This file is part of fusedav. +# Copyright (c) 2004-2006 Lennart Poettering # -# fusedav is free software; you can redistribute it and/or modify it -# under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. +# Permission is hereby granted, free of charge, to any person +# obtaining a copy of this software and associated documentation files +# (the "Software"), to deal in the Software without restriction, +# including without limitation the rights to use, copy, modify, merge, +# publish, distribute, sublicense, and/or sell copies of the Software, +# and to permit persons to whom the Software is furnished to do so, +# subject to the following conditions: # -# fusedav is distributed in the hope that it will be useful, but -# WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# General Public License for more details. +# The above copyright notice and this permission notice shall be +# included in all copies or substantial portions of the Software. # -# You should have received a copy of the GNU General Public License -# along with fusedav; if not, write to the Free Software Foundation, -# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS +# BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN +# ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +# CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +# SOFTWARE. AC_PREREQ(2.59) -AC_INIT([fusedav],[0.1],[mzshfrqni (at) 0pointer (dot) de]) +AC_INIT([fusedav],[0.2],[mzshfrqni (at) 0pointer (dot) de]) AC_CONFIG_SRCDIR([src/fusedav.c]) AC_CONFIG_HEADERS([config.h]) -AM_INIT_AUTOMAKE([foreign -Wall]) +AM_INIT_AUTOMAKE([foreign 1.9 -Wall]) AC_REVISION($Id$) AC_SUBST(PACKAGE_URL, [http://0pointer.de/lennart/projects/fusedav/]) @@ -33,6 +37,8 @@ if type -p stow > /dev/null && test -d /usr/local/stow ; then ac_default_prefix="/usr/local/stow/${PACKAGE_NAME}-${PACKAGE_VERSION}" fi +AC_GNU_SOURCE + # Checks for programs. AC_PROG_CC AC_PROG_CPP @@ -40,9 +46,50 @@ AC_PROG_INSTALL AC_PROG_LN_S AC_PROG_MAKE_SET -# If using GCC specifiy some additional parameters +test_gcc_flag() { + AC_LANG_CONFTEST([int main() {}]) + $CC -c conftest.c $CFLAGS $@ > /dev/null 2> /dev/null + ret=$? + rm -f conftest.o + return $ret +} + +# If using GCC specify some additional parameters if test "x$GCC" = "xyes" ; then - CFLAGS="$CFLAGS -pipe -Wall -ansi" + + DESIRED_FLAGS="-Wall -W -Wextra -pedantic -pipe -Wformat -Wold-style-definition -Wdeclaration-after-statement -Wfloat-equal -Wmissing-declarations -Wmissing-prototypes -Wstrict-prototypes -Wredundant-decls -Wmissing-noreturn -Wshadow -Wendif-labels -Wpointer-arith -Wbad-function-cast -Wcast-qual -Wcast-align -Wwrite-strings -Winline" + + if test "x$HAVE_NETLINK" = "xyes" ; then + # Test whether rtnetlink.h can be included when compiled with -std=c99 + # some distributions (e.g. archlinux) have broken headers that dont + # define __u64 with -std=c99 + AC_MSG_CHECKING([checking whether rtnetlink.h can be included with -std=c99]) + OLDCFLAGS="$CFLAGS" + CFLAGS="-std=c99" + AC_TRY_COMPILE([#include ], [], + use_stdc99=yes, use_stdc99=no) + + if test x"$use_stdc99" = xyes; then + DESIRED_FLAGS="-std=c99 $DESIRED_FLAGS" + AC_MSG_RESULT([yes]) + else + AC_MSG_RESULT([no]) + fi + + CFLAGS="$OLDCFLAGS" + else + DESIRED_FLAGS="-std=c99 $DESIRED_FLAGS" + fi + + for flag in $DESIRED_FLAGS ; do + AC_MSG_CHECKING([whether $CC accepts $flag]) + if test_gcc_flag $flag ; then + CFLAGS="$CFLAGS $flag" + AC_MSG_RESULT([yes]) + else + AC_MSG_RESULT([no]) + fi + done fi # 64 Bit LFS support @@ -62,18 +109,12 @@ AC_STRUCT_ST_BLOCKS # Checks for library functions. AC_FUNC_MALLOC -AC_CHECK_FUNCS([ftruncate memset strdup strerror strrchr]) +AC_CHECK_FUNCS([ftruncate memset strdup strerror strrchr memchr strchr strcspn]) AC_CHECK_LIB([pthread], [pthread_create]) -NEON_REQUIRE(0,24) -NEON_LIBRARY -NEON_WARNINGS - -# FUSE -AC_CHECK_HEADER(fuse.h,, [AC_MSG_ERROR([ *** fuse.h not found *** ])]) -AC_CHECK_LIB(fuse,fuse_main, [FUSE_LIBS="-lfuse"], [AC_MSG_ERROR([ *** libfuse.a not found *** ])], -lpthread) -AC_SUBST(FUSE_LIBS) +PKG_CHECK_MODULES(NEON, [ neon >= 0.26 ]) +PKG_CHECK_MODULES(FUSE, [ fuse >= 2.5 ]) # LYNX documentation generation AC_ARG_ENABLE(lynx,