| 1 | # -*- Autoconf -*- |
| 2 | # Process this file with autoconf to produce a configure script. |
| 3 | |
| 4 | AC_PREREQ(2.63) |
| 5 | AC_INIT([xburst-tools], [0.1]) |
| 6 | AC_CONFIG_AUX_DIR(m4) |
| 7 | AM_INIT_AUTOMAKE([foreign]) |
| 8 | AM_CONFIG_HEADER([config.h]) |
| 9 | |
| 10 | AM_MAINTAINER_MODE |
| 11 | |
| 12 | AC_ARG_ENABLE([firmware], |
| 13 | [AS_HELP_STRING([--disable-firmware], |
| 14 | [Do not build initialization code] |
| 15 | [(for example, because some other package contains it).])], |
| 16 | [AS_CASE([$enableval], [yes], [firmware=true], [no], [firmware=false], |
| 17 | [AC_MSG_ERROR([bad value $enableval for --enable-firmware])])], |
| 18 | [firmware=true]) |
| 19 | AM_CONDITIONAL([COND_FIRMWARE], [test "$firmware" = true]) |
| 20 | |
| 21 | AC_ARG_VAR([CROSS_COMPILE], |
| 22 | [Cross compiler prefix for building firmware, ] |
| 23 | [e.g. CROSS_COMPILE=mipsel-openwrt-linux-.]) |
| 24 | |
| 25 | AS_VAR_IF([firmware], [true], |
| 26 | [ |
| 27 | AS_VAR_IF([CROSS_COMPILE], [], |
| 28 | [AC_MSG_ERROR([CROSS_COMPILE prefix is not set, set to cross-prefix- use --disable-firmware])]) |
| 29 | AC_CHECK_PROG([CROSS_GCC], [${CROSS_COMPILE}gcc], [yes], [no]) |
| 30 | AS_VAR_IF([CROSS_GCC], [no], |
| 31 | [AC_MSG_ERROR([No cross compiler, check CROSS_COMPILE value])]) |
| 32 | ], |
| 33 | [CROSS_COMPILE="dummy-"] |
| 34 | ) |
| 35 | |
| 36 | # Checks for programs. |
| 37 | AC_PROG_CC |
| 38 | AC_PROG_CXX |
| 39 | |
| 40 | # Checks for libraries. |
| 41 | AC_CHECK_LIB([c], [main]) |
| 42 | AC_CHECK_LIB([confuse], [main], [], [ |
| 43 | echo "Error! You need to have libconfuse." |
| 44 | echo "Maybe run 'sudo apt-get install libconfuse-dev' under debian" |
| 45 | exit -1 ]) |
| 46 | AC_CHECK_LIB([gcc], [main]) |
| 47 | AC_CHECK_LIB([m], [main]) |
| 48 | AC_CHECK_LIB([usb], [main], [], [ |
| 49 | echo "Error! You need to have libusb. \n" |
| 50 | echo "Maybe run 'sudo apt-get install libusb-dev' under debian" |
| 51 | exit -1 ]) |
| 52 | |
| 53 | LIBS="$LIBS $USB_LIBS" |
| 54 | CFLAGS="$CFLAGS $USB_CFLAGS" |
| 55 | |
| 56 | # Checks for header files. |
| 57 | AC_HEADER_STDC |
| 58 | AC_CHECK_HEADERS([fcntl.h stdint.h stdlib.h string.h unistd.h]) |
| 59 | |
| 60 | # Checks for typedefs, structures, and compiler characteristics. |
| 61 | AC_C_INLINE |
| 62 | AC_TYPE_SIZE_T |
| 63 | AC_TYPE_UINT8_T |
| 64 | |
| 65 | # Checks for library functions. |
| 66 | AC_FUNC_MALLOC |
| 67 | AC_FUNC_MEMCMP |
| 68 | AC_CHECK_FUNCS([memset strerror]) |
| 69 | |
| 70 | AC_CONFIG_FILES(Makefile \ |
| 71 | usbboot/Makefile usbboot/src/Makefile \ |
| 72 | xbboot/Makefile xbboot/host-app/Makefile) |
| 73 | AC_OUTPUT |
| 74 | |