1# +------------------------------------------------------------------+ 2# | madwimax: configure.ac | 3# +------------------------------------------------------------------+ 4 5# madwimax version number is defined here and *only* here 6AC_INIT(madwimax, 0.1.1, [http://code.google.com/p/madwimax/issues/list]) 7echo "madWiMAX version ${PACKAGE_VERSION}" 8AC_CANONICAL_SYSTEM 9AC_CONFIG_SRCDIR([src/wimax.c]) 10AC_CONFIG_HEADERS([include/config.h]) 11AC_PREFIX_DEFAULT(/usr/local/madwimax) 12AM_INIT_AUTOMAKE([-Wall -Werror]) 13 14# Use "./configure --enable-maintainer-mode" to keep Makefile.in and Makefile 15# in sync after SVN updates. 16AM_MAINTAINER_MODE 17 18# Fix this early so we can expand with eval later 19test "${prefix}" = "NONE" && prefix="${ac_default_prefix}" 20test "${exec_prefix}" = "NONE" && exec_prefix='${prefix}' 21 22# Set defaults 23udevdir='/etc/udev' 24if test ! -d "${udevdir}"; then 25 udevdir='' 26fi 27 28PIDPATH="/var/run" 29script="generic" 30manpages="yes" 31 32# Checks for programs. 33AC_PROG_CC 34AC_PROG_INSTALL 35 36# Checks for header files. 37AC_HEADER_STDC 38AC_HEADER_SYS_WAIT 39AC_CHECK_HEADERS([fcntl.h stdlib.h string.h syslog.h sys/ioctl.h sys/socket.h sys/time.h unistd.h]) 40 41# Checks for typedefs, structures, and compiler characteristics. 42AC_C_CONST 43AC_C_INLINE 44AC_HEADER_TIME 45 46# Checks for library functions. 47AC_FUNC_FORK 48AC_PROG_GCC_TRADITIONAL 49AC_FUNC_VPRINTF 50AC_FUNC_WAIT3 51AC_CHECK_FUNCS([gettimeofday memset socket strchr strerror strtoul]) 52 53# Check for pkg-config 54PKG_PROG_PKG_CONFIG 55if test -z "${PKG_CONFIG}"; then 56 AC_MSG_ERROR(["pkg-config not found"]) 57fi 58 59# Check for libusb-1.0 60PKG_CHECK_MODULES([libusb1], libusb-1.0,,AC_MSG_ERROR([libusb-1.0 not found])) 61 62CFLAGS="$CFLAGS $libusb1_CFLAGS" 63 64# Only use these when compiling with gcc 65if ( test "${GCC}" = "yes" ) 66then 67 CFLAGS="${CFLAGS} -Wall -Wsign-compare" 68fi 69 70# Check whether to install udev rules 71AC_MSG_CHECKING(whether to install udev rules) 72AC_ARG_WITH(udev-dir, 73 AC_HELP_STRING([--with-udev-dir=PATH], [where to install udev rules (/etc/udev)]), 74 [ 75 case "${withval}" in 76 yes) 77 if test -z "${udevdir}"; then 78 AC_MSG_RESULT(no) 79 AC_MSG_ERROR(["udev directory requested but not found"]) 80 fi 81 ;; 82 auto) 83 ;; 84 no) 85 udevdir="" 86 ;; 87 *) 88 udevdir="${withval}" 89 ;; 90 esac 91 ]) 92if test -n "${udevdir}"; then 93 AC_MSG_RESULT(using ${udevdir}) 94else 95 AC_MSG_RESULT(no) 96fi 97AM_CONDITIONAL(WITH_UDEV, test -n "${udevdir}") 98 99# Check which event script to use 100AC_MSG_CHECKING(which event script to use) 101AC_ARG_WITH(script, 102 AC_HELP_STRING([--with-script=NAME], [which event script to use (generic)]), 103 [ 104 case "${withval}" in 105 yes) 106 ;; 107 auto) 108 ;; 109 no) 110 script="" 111 ;; 112 *) 113 script="${withval}" 114 ;; 115 esac 116 ]) 117if test -n "${script}"; then 118 AC_MSG_RESULT(using ${script}) 119 scriptfile="scripts/events/event.sh.${script}" 120else 121 AC_MSG_RESULT(no) 122 scriptfile="" 123fi 124AM_CONDITIONAL(WITH_SCRIPT, test -n "${script}") 125 126# Check whether to generate man pages 127AC_MSG_CHECKING(whether to generate man pages) 128AC_ARG_WITH(man-pages, 129 AC_HELP_STRING([--without-man-pages], [don't generate man pages (default is to generate them)]), 130 [ 131 case "${withval}" in 132 yes) 133 ;; 134 auto) 135 ;; 136 no) 137 manpages="no" 138 ;; 139 *) 140 ;; 141 esac 142 ]) 143AC_MSG_RESULT(${manpages}) 144if test "${manpages}" = "yes"; then 145 # Check for asciidoc 146 AC_MSG_CHECKING(for asciidoc) 147 if asciidoc --help >/dev/null 2>&1; then 148 AC_MSG_RESULT(yes) 149 else 150 AC_MSG_RESULT(no) 151 AC_MSG_ERROR(["asciidoc not found"]) 152 fi 153 154 # Check for docbook2x-man 155 db2xman="" 156 AC_MSG_CHECKING(for docbook2x-man) 157 for name in docbook2x-man db2x_docbook2man; do 158 if "$name" --help >/dev/null 2>&1; then 159 db2xman="$name" 160 break; 161 fi 162 done 163 if test -n "${db2xman}"; then 164 AC_MSG_RESULT(${db2xman}) 165 else 166 AC_MSG_RESULT(no) 167 AC_MSG_ERROR(["docbook2x-man not found"]) 168 fi 169 170 AC_SUBST(db2xman) 171fi 172AM_CONDITIONAL(WITH_MAN_PAGES, test "${manpages}" = "yes") 173 174 175# Expand ${sbindir} and write it out 176conftemp="${sbindir}" 177eval conftemp=\"${conftemp}\" 178eval conftemp=\"${conftemp}\" 179 180SBINDIR=${conftemp} 181AC_DEFINE_UNQUOTED(SBINDIR, "${conftemp}", 182 [Default sbin path]) 183 184# expand ${sysconfdir} and write it out 185sysconfdir="${sysconfdir}"/madwimax 186conftemp="${sysconfdir}" 187eval conftemp=\"${conftemp}\" 188eval conftemp=\"${conftemp}\" 189 190SYSCONFDIR=${conftemp} 191AC_DEFINE_UNQUOTED(SYSCONFDIR, "${conftemp}", 192 [Default sysconf path]) 193 194 195AC_SUBST(SBINDIR) 196AC_SUBST(SYSCONFDIR) 197AC_SUBST(udevdir) 198AC_SUBST(script) 199 200 201AC_CONFIG_FILES([ 202 Makefile 203 include/Makefile 204 man/Makefile 205 src/Makefile 206 scripts/events/Makefile 207 ${scriptfile} 208 scripts/udev/Makefile 209 scripts/udev/z60_madwimax.rules 210 scripts/Makefile 211]) 212AC_OUTPUT 213