1dnl Process this file with autoconf to produce a configure script. 2AC_INIT(file, 4.26, christos@astron.com) 3AM_INIT_AUTOMAKE 4AM_CONFIG_HEADER(config.h) 5 6AC_MSG_CHECKING(for builtin ELF support) 7AC_ARG_ENABLE(elf, 8[ --disable-elf disable builtin ELF support], 9[if test "${enableval}" = yes; then 10 AC_MSG_RESULT(yes) 11 AC_DEFINE([BUILTIN_ELF], 1, [Define if built-in ELF support is used]) 12else 13 AC_MSG_RESULT(no) 14fi], [ 15 # enable by default 16 AC_MSG_RESULT(yes) 17 AC_DEFINE([BUILTIN_ELF], 1, [Define in built-in ELF support is used]) 18]) 19 20AC_MSG_CHECKING(for ELF core file support) 21AC_ARG_ENABLE(elf-core, 22[ --disable-elf-core disable ELF core file support], 23[if test "${enableval}" = yes; then 24 AC_MSG_RESULT(yes) 25 AC_DEFINE([ELFCORE], 1, [Define for ELF core file support]) 26else 27 AC_MSG_RESULT(no) 28fi], [ 29 # enable by default 30 AC_MSG_RESULT(yes) 31 AC_DEFINE([ELFCORE], 1, [Define for ELF core file support]) 32]) 33 34AC_MSG_CHECKING(for file formats in man section 5) 35AC_ARG_ENABLE(fsect-man5, 36[ --enable-fsect-man5 enable file formats in man section 5], 37[if test "${enableval}" = yes; then 38 AC_MSG_RESULT(yes) 39 fsect=5 40else 41 AC_MSG_RESULT(no) 42 fsect=4 43fi], [ 44 # disable by default 45 AC_MSG_RESULT(no) 46 fsect=4 47]) 48 49AC_SUBST(fsect) 50AM_CONDITIONAL(FSECT5, test x$fsect = x5) 51 52AC_SUBST(WARNINGS) 53AC_GNU_SOURCE 54 55dnl Checks for programs. 56AC_PROG_CC 57AM_PROG_CC_C_O 58AC_PROG_INSTALL 59AC_PROG_LN_S 60AC_PROG_LIBTOOL 61 62dnl Checks for headers 63AC_HEADER_STDC 64AC_HEADER_MAJOR 65AC_HEADER_SYS_WAIT 66AC_CHECK_HEADERS(stdint.h fcntl.h locale.h stdint.h inttypes.h unistd.h) 67AC_CHECK_HEADERS(utime.h wchar.h wctype.h limits.h) 68AC_CHECK_HEADERS(getopt.h err.h) 69AC_CHECK_HEADERS(sys/mman.h sys/stat.h sys/types.h sys/utime.h sys/time.h) 70AC_CHECK_HEADERS(zlib.h) 71 72dnl Checks for typedefs, structures, and compiler characteristics. 73AC_C_CONST 74AC_TYPE_OFF_T 75AC_TYPE_SIZE_T 76AC_CHECK_MEMBERS([struct stat.st_rdev]) 77 78AC_STRUCT_TIMEZONE_DAYLIGHT 79AC_SYS_LARGEFILE 80AC_FUNC_FSEEKO 81AC_TYPE_MBSTATE_T 82 83AC_CHECK_TYPES([uint8_t, uint16_t, uint32_t, int32_t, uint64_t, int64_t]) 84AC_CHECK_SIZEOF(long long) 85AH_BOTTOM([ 86#ifndef HAVE_UINT8_T 87typedef unsigned char uint8_t; 88#endif 89#ifndef HAVE_UINT16_T 90typedef unsigned short uint16_t; 91#endif 92#ifndef HAVE_UINT32_T 93typedef unsigned int uint32_t; 94#endif 95#ifndef HAVE_INT32_T 96typedef int int32_t; 97#endif 98#ifndef HAVE_UINT64_T 99#if SIZEOF_LONG_LONG == 8 100typedef unsigned long long uint64_t; 101#else 102typedef unsigned long uint64_t; 103#endif 104#endif 105#ifndef HAVE_INT64_T 106#if SIZEOF_LONG_LONG == 8 107typedef long long int64_t; 108#else 109typedef long int64_t; 110#endif 111#endif 112]) 113 114AC_MSG_CHECKING(for gcc compiler warnings) 115AC_ARG_ENABLE(warnings, 116[ --disable-warnings disable compiler warnings], 117[if test "${enableval}" = no -o $GCC = no; then 118 AC_MSG_RESULT(no) 119 WARNINGS= 120else 121 AC_MSG_RESULT(yes) 122 WARNINGS="-Wall -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith \ 123 -Wmissing-declarations -Wredundant-decls -Wnested-externs \ 124 -Wsign-compare -Wreturn-type -Wswitch -Wshadow \ 125 -Wcast-qual -Wwrite-strings -Wextra -Wunused-parameter" 126fi], [ 127if test $GCC = no; then 128 WARNINGS= 129 AC_MSG_RESULT(no) 130else 131 AC_MSG_RESULT(yes) 132 WARNINGS="-Wall -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith \ 133 -Wmissing-declarations -Wredundant-decls -Wnested-externs \ 134 -Wsign-compare -Wreturn-type -Wswitch -Wshadow \ 135 -Wcast-qual -Wwrite-strings -Wextra -Wunused-parameter" 136fi]) 137 138dnl Checks for functions 139AC_CHECK_FUNCS(mmap strerror strndup strtoul mbrtowc mkstemp utimes utime wcwidth strtof) 140 141dnl Provide implementation of some required functions if necessary 142AC_REPLACE_FUNCS(getopt_long asprintf vasprintf) 143 144dnl Checks for libraries 145AC_CHECK_LIB(z,gzopen) 146 147dnl See if we are cross-compiling 148AM_CONDITIONAL(IS_CROSS_COMPILE, test "$cross_compiling" = yes) 149 150AC_CONFIG_FILES([Makefile src/Makefile magic/Makefile tests/Makefile doc/Makefile python/Makefile]) 151AC_OUTPUT 152