X-Git-Url: https://review.openocd.org/gitweb?p=openocd.git;a=blobdiff_plain;f=configure.ac;h=d4338dfbd78d75e45715cd1bd35a7a4456adad04;hp=5fa5a639d00912ca779f6604d4d961f0f071c9b6;hb=79a92d467dae86eefee57ab7170f61cc51d9b0be;hpb=95de342a93445faa99b32d8dfecc947e3a5b49cb diff --git a/configure.ac b/configure.ac index 5fa5a639d0..d4338dfbd7 100644 --- a/configure.ac +++ b/configure.ac @@ -1,5 +1,5 @@ AC_PREREQ(2.64) -AC_INIT([openocd], [0.10.0-dev], +AC_INIT([openocd], [0.10.0+dev], [OpenOCD Mailing List ]) AC_CONFIG_SRCDIR([src/openocd.c]) @@ -45,67 +45,11 @@ AC_SEARCH_LIBS([ioperm], [ioperm]) AC_SEARCH_LIBS([dlopen], [dl]) AC_CHECK_HEADERS([sys/socket.h]) -AC_CHECK_HEADERS([arpa/inet.h], [], [], [dnl -#include -#ifdef STDC_HEADERS -# include -# include -#else -# ifdef HAVE_STDLIB_H -# include -# endif -#endif -#ifdef HAVE_SYS_SOCKET_H -# include -#endif -]) AC_CHECK_HEADERS([elf.h]) AC_CHECK_HEADERS([dirent.h]) AC_CHECK_HEADERS([fcntl.h]) -AC_CHECK_HEADERS([ifaddrs.h], [], [], [dnl -#include -#ifdef STDC_HEADERS -# include -# include -#else -# ifdef HAVE_STDLIB_H -# include -# endif -#endif -#ifdef HAVE_SYS_SOCKET_H -# include -#endif -]) AC_CHECK_HEADERS([malloc.h]) AC_CHECK_HEADERS([netdb.h]) -AC_CHECK_HEADERS([netinet/in.h], [], [], [dnl -#include -#ifdef STDC_HEADERS -# include -# include -#else -# ifdef HAVE_STDLIB_H -# include -# endif -#endif -#ifdef HAVE_SYS_SOCKET_H -# include -#endif -]) -AC_CHECK_HEADERS([netinet/tcp.h], [], [], [dnl -#include -#ifdef STDC_HEADERS -# include -# include -#else -# ifdef HAVE_STDLIB_H -# include -# endif -#endif -#ifdef HAVE_SYS_SOCKET_H -# include -#endif -]) AC_CHECK_HEADERS([poll.h]) AC_CHECK_HEADERS([pthread.h]) AC_CHECK_HEADERS([strings.h]) @@ -113,10 +57,11 @@ AC_CHECK_HEADERS([sys/ioctl.h]) AC_CHECK_HEADERS([sys/param.h]) AC_CHECK_HEADERS([sys/select.h]) AC_CHECK_HEADERS([sys/stat.h]) +AC_CHECK_HEADERS([sys/sysctl.h]) AC_CHECK_HEADERS([sys/time.h]) AC_CHECK_HEADERS([sys/types.h]) AC_CHECK_HEADERS([unistd.h]) -AC_CHECK_HEADERS([net/if.h], [], [], [dnl +AC_CHECK_HEADERS([arpa/inet.h ifaddrs.h netinet/in.h netinet/tcp.h net/if.h], [], [], [dnl #include #ifdef STDC_HEADERS # include @@ -142,6 +87,7 @@ AC_CHECK_FUNCS([strnlen]) AC_CHECK_FUNCS([gettimeofday]) AC_CHECK_FUNCS([usleep]) AC_CHECK_FUNCS([vasprintf]) +AC_CHECK_FUNCS([realpath]) # guess-rev.sh only exists in the repository, not in the released archives AC_MSG_CHECKING([whether to build a release]) @@ -168,7 +114,9 @@ m4_define([USB1_ADAPTERS], [[ti_icdi], [TI ICDI JTAG Programmer], [HLADAPTER_ICDI]], [[ulink], [Keil ULINK JTAG Programmer], [ULINK]], [[usb_blaster_2], [Altera USB-Blaster II Compatible], [USB_BLASTER_2]], - [[vsllink], [Versaloon-Link JTAG Programmer], [VSLLINK]]]) + [[ft232r], [Bitbang mode of FT232R based devices], [FT232R]], + [[vsllink], [Versaloon-Link JTAG Programmer], [VSLLINK]], + [[xds110], [TI XDS110 Debug Probe], [XDS110]]]) m4_define([USB_ADAPTERS], [[[osbdm], [OSBDM (JTAG only) Programmer], [OSBDM]], @@ -183,6 +131,9 @@ m4_define([USB0_ADAPTERS], m4_define([HIDAPI_ADAPTERS], [[[cmsis_dap], [CMSIS-DAP Compliant Debugger], [CMSIS_DAP]]]) +m4_define([HIDAPI_USB1_ADAPTERS], + [[[kitprog], [Cypress KitProg Programmer], [KITPROG]]]) + m4_define([LIBFTDI_ADAPTERS], [[[usb_blaster], [Altera USB-Blaster Compatible], [USB_BLASTER]], [[presto], [ASIX Presto Adapter], [PRESTO]], @@ -297,6 +248,7 @@ AC_ARG_ADAPTERS([ USB_ADAPTERS, USB0_ADAPTERS, HIDAPI_ADAPTERS, + HIDAPI_USB1_ADAPTERS, LIBFTDI_ADAPTERS, LIBJAYLINK_ADAPTERS ],[auto]) @@ -348,11 +300,15 @@ AS_CASE(["${host_cpu}"], AC_ARG_ENABLE([bcm2835gpio], AS_HELP_STRING([--enable-bcm2835gpio], [Enable building support for bitbanging on BCM2835 (as found in Raspberry Pi)]), [build_bcm2835gpio=$enableval], [build_bcm2835gpio=no]) + AC_ARG_ENABLE([imx_gpio], + AS_HELP_STRING([--enable-imx_gpio], [Enable building support for bitbanging on NXP IMX processors]), + [build_imx_gpio=$enableval], [build_imx_gpio=no]) ], [ build_ep93xx=no build_at91rm9200=no build_bcm2835gpio=no + build_imx_gpio=no ]) AC_ARG_ENABLE([gw16012], @@ -372,6 +328,14 @@ AC_ARG_ENABLE([sysfsgpio], AS_HELP_STRING([--enable-sysfsgpio], [Enable building support for programming driven via sysfs gpios.]), [build_sysfsgpio=$enableval], [build_sysfsgpio=no]) +AS_CASE([$host_os], + [linux*], [], + [ + AS_IF([test "x$build_sysfsgpio" = "xyes"], [ + AC_MSG_ERROR([sysfsgpio is only available on linux]) + ]) +]) + AC_ARG_ENABLE([minidriver_dummy], AS_HELP_STRING([--enable-minidriver-dummy], [Enable the dummy minidriver.]), [build_minidriver_dummy=$enableval], [build_minidriver_dummy=no]) @@ -385,6 +349,10 @@ AC_ARG_ENABLE([internal-libjaylink], [Disable building internal libjaylink]), [use_internal_libjaylink=$enableval], [use_internal_libjaylink=yes]) +AC_ARG_ENABLE([target64], + AS_HELP_STRING([--disable-target64], [Disable 64-bit target address]), + [build_target64=$enableval], [build_target64=yes]) + build_minidriver=no AC_MSG_CHECKING([whether to enable ZY1000 minidriver]) AS_IF([test "x$build_zy1000" = "xyes"], [ @@ -439,7 +407,6 @@ AS_CASE([$host], AC_COMPILE_IFELSE([AC_LANG_PROGRAM([], [[return __MINGW32__;]])], [is_mingw=yes],[is_mingw=no]) AS_IF([test "x$is_mingw" = "xyes"], [ - AC_DEFINE([IS_MINGW], [1], [1 if building for MinGW.]) AS_IF([test "x$parport_use_giveio" = "xno"], [ AC_MSG_WARN([--disable-parport-giveio is not supported by MinGW32 hosts]) ]) @@ -447,15 +414,11 @@ AS_CASE([$host], is_cygwin=no ], [ is_cygwin=yes - AC_DEFINE([IS_CYGWIN], [1], [1 if building for Cygwin.]) # sys/io.h needed under cygwin for parport access AS_IF([test "x$build_parport" = "xyes"], [ AC_CHECK_HEADERS([sys/io.h],[],AC_MSG_ERROR([Please install the cygwin ioperm package])) ]) ]) - - AC_DEFINE([IS_WIN32], [1], [1 if building for Win32.]) - AC_DEFINE([IS_DARWIN], [0], [0 if not building for Darwin.]) ], [*-mingw* | *-msys*], [ is_mingw=yes @@ -471,11 +434,7 @@ AS_CASE([$host], AC_MSG_ERROR([buspirate currently not supported by MinGW32 hosts]) ]) - CFLAGS="$CFLAGS -D__USE_MINGW_ANSI_STDIO" - - AC_DEFINE([IS_MINGW], [1], [1 if building for MinGW.]) - AC_DEFINE([IS_WIN32], [1], [1 if building for Win32.]) - AC_DEFINE([IS_DARWIN], [0], [0 if not building for Darwin.]) + AC_SUBST([HOST_CPPFLAGS], [-D__USE_MINGW_ANSI_STDIO]) ], [*darwin*], [ is_darwin=yes @@ -484,23 +443,36 @@ AS_CASE([$host], AC_MSG_WARN([--enable-parport-giveio cannot be used by Darwin hosts]) ]) parport_use_giveio=no - - AC_DEFINE([IS_CYGWIN], [0], [0 if not building for Cygwin.]) - AC_DEFINE([IS_WIN32], [0], [0 if not building for Win32.]) - AC_DEFINE([IS_DARWIN], [1], [1 if building for Darwin.]) ], [ AS_IF([test "x$parport_use_giveio" = "xyes"], [ AC_MSG_WARN([--enable-parport-giveio cannot be used by ]$host[ hosts]) ]) parport_use_giveio=no +]) + +AS_IF([test "x$is_cygwin" = "xyes"], [ + AC_DEFINE([IS_CYGWIN], [1], [1 if building for Cygwin.]) +], [ AC_DEFINE([IS_CYGWIN], [0], [0 if not building for Cygwin.]) - AC_DEFINE([IS_WIN32], [0], [0 if not building for Win32.]) - AC_DEFINE([IS_DARWIN], [0], [0 if not building for Darwin.]) +]) + +AS_IF([test "x$is_mingw" = "xyes"], [ + AC_DEFINE([IS_MINGW], [1], [1 if building for Mingw.]) +], [ + AC_DEFINE([IS_MINGW], [0], [0 if not building for Mingw.]) ]) AS_IF([test "x$is_win32" = "xyes"], [ - AC_DEFINE([WIN32_LEAN_AND_MEAN], [1], [1 to exclude old conflicting definitions when building on Windows]) + AC_DEFINE([IS_WIN32], [1], [1 if building for Win32.]) +], [ + AC_DEFINE([IS_WIN32], [0], [0 if not building for Win32.]) +]) + +AS_IF([test "x$is_darwin" = "xyes"], [ + AC_DEFINE([IS_DARWIN], [1], [1 if building for Darwin.]) +], [ + AC_DEFINE([IS_DARWIN], [0], [0 if not building for Darwin.]) ]) AS_IF([test "x$build_parport" = "xyes"], [ @@ -550,6 +522,13 @@ AS_IF([test "x$build_bcm2835gpio" = "xyes"], [ AC_DEFINE([BUILD_BCM2835GPIO], [0], [0 if you don't want bcm2835gpio.]) ]) +AS_IF([test "x$build_imx_gpio" = "xyes"], [ + build_bitbang=yes + AC_DEFINE([BUILD_IMX_GPIO], [1], [1 if you want imx_gpio.]) +], [ + AC_DEFINE([BUILD_IMX_GPIO], [0], [0 if you don't want imx_gpio.]) +]) + AS_IF([test "x$parport_use_ppdev" = "xyes"], [ AC_DEFINE([PARPORT_USE_PPDEV], [1], [1 if you want parport to use ppdev.]) ], [ @@ -614,6 +593,13 @@ AS_IF([test "x$build_sysfsgpio" = "xyes"], [ AC_DEFINE([BUILD_SYSFSGPIO], [0], [0 if you don't want SysfsGPIO driver.]) ]) +AS_IF([test "x$build_target64" = "xyes"], [ + AC_DEFINE([BUILD_TARGET64], [1], [1 if you want 64-bit addresses.]) +], [ + AC_DEFINE([BUILD_TARGET64], [0], [0 if you don't want 64-bit addresses.]) +]) + + PKG_CHECK_MODULES([LIBUSB1], [libusb-1.0], [ use_libusb1=yes AC_DEFINE([HAVE_LIBUSB1], [1], [Define if you have libusb-1.x]) @@ -644,11 +630,14 @@ PKG_CHECK_MODULES([LIBFTDI], [libftdi1], [use_libftdi=yes], [ PKG_CHECK_MODULES([LIBFTDI], [libftdi], [use_libftdi=yes], [use_libftdi=no]) ]) -PKG_CHECK_MODULES([LIBJAYLINK], [libjaylink >= 0.1], +PKG_CHECK_MODULES([LIBJAYLINK], [libjaylink >= 0.2], [use_libjaylink=yes], [use_libjaylink=no]) m4_define([PROCESS_ADAPTERS], [ m4_foreach([adapter], [$1], [ + AS_IF([test "x$build_zy1000" = "xyes"], [ + ADAPTER_VAR([adapter])=no + ]) AS_IF([test $2], [ AS_IF([test "x$ADAPTER_VAR([adapter])" != "xno"], [ AC_DEFINE([BUILD_]ADAPTER_SYM([adapter]), [1], [1 if you want the ]ADAPTER_DESC([adapter]).) @@ -669,8 +658,9 @@ PROCESS_ADAPTERS([USB1_ADAPTERS], ["x$use_libusb1" = "xyes"], [libusb-1.x]) PROCESS_ADAPTERS([USB_ADAPTERS], ["x$use_libusb1" = "xyes" -o "x$use_libusb0" = "xyes"], [libusb-1.x or libusb-0.1]) PROCESS_ADAPTERS([USB0_ADAPTERS], ["x$use_libusb0" = "xyes"], [libusb-0.1]) PROCESS_ADAPTERS([HIDAPI_ADAPTERS], ["x$use_hidapi" = "xyes"], [hidapi]) +PROCESS_ADAPTERS([HIDAPI_USB1_ADAPTERS], ["x$use_hidapi" = "xyes" -a "x$use_libusb1" = "xyes"], [hidapi and libusb-1.x]) PROCESS_ADAPTERS([LIBFTDI_ADAPTERS], ["x$use_libftdi" = "xyes"], [libftdi]) -PROCESS_ADAPTERS([LIBJAYLINK_ADAPTERS], ["x$use_libusb1" = "xyes" -a "x$use_internal_libjaylink" = "xyes" -o "x$use_libjaylink" = "xyes"], [libusb-1.x or libjaylink-0.1]) +PROCESS_ADAPTERS([LIBJAYLINK_ADAPTERS], ["x$use_internal_libjaylink" = "xyes" -o "x$use_libjaylink" = "xyes"], [libjaylink-0.2]) AS_IF([test "x$build_openjtag" = "xyes"], [ AS_IF([test "x$use_libusb1" != "xyes" -a "x$use_libusb0" != "xyes"], [ @@ -712,6 +702,7 @@ AM_CONDITIONAL([ZY1000_MASTER], [test "x$build_zy1000_master" = "xyes"]) AM_CONDITIONAL([IOUTIL], [test "x$build_ioutil" = "xyes"]) AM_CONDITIONAL([AT91RM9200], [test "x$build_at91rm9200" = "xyes"]) AM_CONDITIONAL([BCM2835GPIO], [test "x$build_bcm2835gpio" = "xyes"]) +AM_CONDITIONAL([IMX_GPIO], [test "x$build_imx_gpio" = "xyes"]) AM_CONDITIONAL([BITBANG], [test "x$build_bitbang" = "xyes"]) AM_CONDITIONAL([JTAG_VPI], [test "x$build_jtag_vpi" = "xyes" -o "x$build_jtag_vpi" = "xyes"]) AM_CONDITIONAL([USB_BLASTER_DRIVER], [test "x$enable_usb_blaster" != "xno" -o "x$enable_usb_blaster_2" != "xno"]) @@ -729,6 +720,9 @@ AM_CONDITIONAL([IS_WIN32], [test "x$is_win32" = "xyes"]) AM_CONDITIONAL([IS_DARWIN], [test "x$is_darwin" = "xyes"]) AM_CONDITIONAL([BITQ], [test "x$build_bitq" = "xyes"]) AM_CONDITIONAL([USE_LIBFTDI], [test "x$use_libftdi" = "xyes"]) +AM_CONDITIONAL([USE_HIDAPI], [test "x$use_hidapi" = "xyes"]) +AM_CONDITIONAL([USE_LIBJAYLINK], [test "x$use_libjaylink" = "xyes"]) +AM_CONDITIONAL([TARGET64], [test "x$build_target64" = "xyes"]) AM_CONDITIONAL([MINIDRIVER], [test "x$build_minidriver" = "xyes"]) AM_CONDITIONAL([MINIDRIVER_DUMMY], [test "x$build_minidriver_dummy" = "xyes"]) @@ -783,30 +777,11 @@ AS_IF([test "x${gcc_werror}" = "xyes"], [ # overide default gcc cflags AS_IF([test "x$gcc_warnings" = "xyes"], [ - CFLAGS="$CFLAGS $GCC_WARNINGS" + AC_SUBST([GCC_WARNINGS], [$GCC_WARNINGS]) ]) AC_CONFIG_FILES([ Makefile - src/Makefile - src/helper/Makefile - src/jtag/Makefile - src/jtag/drivers/Makefile - src/jtag/drivers/usb_blaster/Makefile - src/jtag/hla/Makefile - src/jtag/aice/Makefile - src/transport/Makefile - src/target/openrisc/Makefile - src/xsvf/Makefile - src/svf/Makefile - src/target/Makefile - src/rtos/Makefile - src/server/Makefile - src/flash/Makefile - src/flash/nor/Makefile - src/flash/nand/Makefile - src/pld/Makefile - doc/Makefile ]) AC_OUTPUT @@ -815,7 +790,8 @@ echo echo OpenOCD configuration summary echo -------------------------------------------------- m4_foreach([adapter], [USB1_ADAPTERS, USB_ADAPTERS, USB0_ADAPTERS, - HIDAPI_ADAPTERS, LIBFTDI_ADAPTERS, LIBJAYLINK_ADAPTERS], + HIDAPI_ADAPTERS, HIDAPI_USB1_ADAPTERS, LIBFTDI_ADAPTERS, + LIBJAYLINK_ADAPTERS], [s=m4_format(["%-40s"], ADAPTER_DESC([adapter])) AS_CASE([$ADAPTER_VAR([adapter])], [auto], [ @@ -829,3 +805,26 @@ m4_foreach([adapter], [USB1_ADAPTERS, USB_ADAPTERS, USB0_ADAPTERS, ]) ]) echo + +AS_IF([test "x$build_oocd_trace" = "xyes"], [ + echo 'WARNING! Deprecated configure option (--enable-oocd_trace)' + echo 'The oocd_trace driver is deprecated and will be removed in the next release.' + echo 'If you regularly use this driver, please report to the OpenOCD Mailing List.' + echo +]) + +AS_IF([test "x$build_zy1000" = "xyes" -o "x$build_zy1000_master" = "xyes"], [ + echo 'WARNING! Deprecated configure option (--enable-zy1000, --enable-zy1000-master)' + echo 'Support for the ZY1000 platform is deprecated and will be removed in the next' + echo 'release. If you regularly use this platform, please report to the OpenOCD' + echo 'Mailing List.' + echo +]) + +AS_IF([test "x$build_ioutil" = "xyes"], [ + echo 'WARNING! Deprecated configure option (--enable-ioutil)' + echo 'Support for the ioutil functions is deprecated and will be removed in the next' + echo 'release. If you regularly depend on this functionality, please report to the' + echo 'OpenOCD Mailing List.' + echo +])