- removed "starting point" for ngw100, will add it again if it is working
[openocd.git] / configure.in
index db378068d5c1083e16b46ac643d0eab65e5ddb05..fd2584bbf80bc40d95dd9f911aa22f81c5ab5297 100644 (file)
@@ -1,35 +1,89 @@
+AC_PREREQ(2.59)
 AC_INIT(configure.in)
 
 AC_SEARCH_LIBS([ioperm], [ioperm])
 
 AC_CANONICAL_HOST
 
+AC_CHECK_HEADERS(sys/param.h)
+AC_CHECK_HEADERS(elf.h)
+
+AC_C_BIGENDIAN
+
+AC_CHECK_FUNCS(strndup)
+AC_CHECK_FUNCS(strnlen)
+AC_CHECK_FUNCS(gettimeofday)
+AC_CHECK_FUNCS(usleep)
+
 build_bitbang=no
+build_bitq=no
 is_cygwin=no
+is_mingw=no
+is_win32=no
 
 AC_ARG_ENABLE(parport,
   AS_HELP_STRING([--enable-parport], [Enable building the pc parallel port driver]), 
   [build_parport=$enableval], [build_parport=no])
 
-AC_ARG_ENABLE(parport_ppdev,
-  AS_HELP_STRING([--enable-parport_ppdev], [Enable use of ppdev (/dev/parportN) for parport]), 
-  [parport_use_ppdev=$enableval], [parport_use_ppdev=no])
+case "${host_cpu}" in 
+  i?86|x86*)
+    AC_ARG_ENABLE(parport_ppdev,
+      AS_HELP_STRING([--enable-parport_ppdev], [Enable use of ppdev (/dev/parportN) for parport]), 
+      [parport_use_ppdev=$enableval], [parport_use_ppdev=no])
+    ;;
+  *) 
+    parport_use_ppdev=yes
+    ;;
+esac
 
-AC_ARG_ENABLE(ftdi2232,
-  AS_HELP_STRING([--enable-ftdi2232], [Enable building the libftdi ft2232c driver]), 
-  [build_ftdi2232=$enableval], [build_ftdi2232=no])
+AC_ARG_ENABLE(ft2232_libftdi,
+  AS_HELP_STRING([--enable-ft2232_libftdi], [Enable building support for FT2232 based devices using the libftdi driver]), 
+  [build_ft2232_libftdi=$enableval], [build_ft2232_libftdi=no])
 
-AC_ARG_ENABLE(ftd2xx,
-  AS_HELP_STRING([--enable-ftd2xx], [Enable building the ftd2xx ft2232c driver]), 
-  [build_ftd2xx=$enableval], [build_ftd2xx=no])
+AC_ARG_ENABLE(ft2232_ftd2xx,
+  AS_HELP_STRING([--enable-ft2232_ftd2xx], [Enable building support for FT2232 based devices using the FTD2XX driver]), 
+  [build_ft2232_ftd2xx=$enableval], [build_ft2232_ftd2xx=no])
  
 AC_ARG_ENABLE(amtjtagaccel,
   AS_HELP_STRING([--enable-amtjtagaccel], [Enable building the Amontec JTAG-Accelerator driver]), 
   [build_amtjtagaccel=$enableval], [build_amtjtagaccel=no])
 
-AC_ARG_ENABLE(ep93xx,
-  AS_HELP_STRING([--enable-ep93xx], [Enable building support for EP93xx based SBCs]), 
-  [build_ep93xx=$enableval], [build_ep93xx=no])
+case "${host_cpu}" in 
+  arm*)
+    AC_ARG_ENABLE(ep93xx,
+      AS_HELP_STRING([--enable-ep93xx], [Enable building support for EP93xx based SBCs]), 
+      [build_ep93xx=$enableval], [build_ep93xx=no])
+
+    AC_ARG_ENABLE(at91rm9200,
+      AS_HELP_STRING([--enable-at91rm9200], [Enable building support for AT91RM9200 based SBCs]),
+      [build_at91rm9200=$enableval], [build_at91rm9200=no])
+    ;;
+    
+  *) 
+    build_ep93xx=no
+    build_at91rm9200=no
+    ;;
+esac
+
+AC_ARG_ENABLE(gw16012,
+  AS_HELP_STRING([--enable-gw16012], [Enable building support for the Gateworks GW16012 JTAG Programmer]),
+  [build_gw16012=$enableval], [build_gw16012=no])
+
+AC_ARG_ENABLE(presto_libftdi,
+  AS_HELP_STRING([--enable-presto_libftdi], [Enable building support for ASIX Presto Programmer using the libftdi driver]),
+  [build_presto_libftdi=$enableval], [build_presto_libftdi=no])
+
+AC_ARG_ENABLE(presto_ftd2xx,
+  AS_HELP_STRING([--enable-presto_ftd2xx], [Enable building support for ASIX Presto Programmer using the FTD2XX driver]),
+  [build_presto_ftd2xx=$enableval], [build_presto_ftd2xx=no])
+
+AC_ARG_ENABLE(usbprog,
+  AS_HELP_STRING([--enable-usbprog], [Enable building support for the usbprog JTAG Programmer]),
+  [build_usbprog=$enableval], [build_usbprog=no])
+
+AC_ARG_ENABLE(oocd_trace,
+  AS_HELP_STRING([--enable-oocd_trace], [Enable building support for the OpenOCD+trace ETM capture device]),
+  [build_oocd_trace=$enableval], [build_oocd_trace=no])
 
 AC_ARG_WITH(ftd2xx,
         [AS_HELP_STRING(--with-ftd2xx,
@@ -37,6 +91,42 @@ AC_ARG_WITH(ftd2xx,
         [],
         with_ftd2xx=search)
 
+case $host in 
+  *-cygwin*) 
+    is_win32=yes
+
+    AC_ARG_ENABLE(parport_giveio,
+    AS_HELP_STRING([--enable-parport_giveio], [Enable use of giveio for parport instead of ioperm]), 
+    [parport_use_giveio=$enableval], [parport_use_giveio=no])
+       
+       AC_COMPILE_IFELSE(AC_LANG_PROGRAM([],[return __MINGW32__;]),[is_mingw=yes],[is_mingw=no])
+       if test $is_mingw = yes; then
+               AC_DEFINE(IS_MINGW, 1, [1 if building for MinGW.])
+               parport_use_giveio=yes
+               is_cygwin=no
+       else
+               is_cygwin=yes
+               AC_DEFINE(IS_CYGWIN, 1, [1 if building for Cygwin.])
+       fi
+       
+    AC_DEFINE(IS_WIN32, 1, [1 if building for Win32.])
+    ;; 
+  *-mingw*) 
+    is_mingw=yes
+    is_win32=yes
+
+    parport_use_giveio=yes
+
+    AC_DEFINE(IS_MINGW, 1, [1 if building for MinGW.])
+    AC_DEFINE(IS_WIN32, 1, [1 if building for Win32.])
+    ;; 
+  *) 
+       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.])
+    ;;
+esac
+
 if test $build_parport = yes; then
   build_bitbang=yes
   AC_DEFINE(BUILD_PARPORT, 1, [1 if you want parport.])
@@ -51,28 +141,41 @@ else
   AC_DEFINE(BUILD_EP93XX, 0, [0 if you don't want ep93xx.])
 fi
 
+if test $build_at91rm9200 = yes; then
+  build_bitbang=yes
+  AC_DEFINE(BUILD_AT91RM9200, 1, [1 if you want at91rm9200.])
+else
+  AC_DEFINE(BUILD_AT91RM9200, 0, [0 if you don't want at91rm9200.])
+fi
+
 if test $parport_use_ppdev = yes; then
   AC_DEFINE(PARPORT_USE_PPDEV, 1, [1 if you want parport to use ppdev.])
 else
   AC_DEFINE(PARPORT_USE_PPDEV, 0, [0 if you don't want parport to use ppdev.])
 fi
 
+if test $parport_use_giveio = yes; then
+  AC_DEFINE(PARPORT_USE_GIVEIO, 1, [1 if you want parport to use giveio.])
+else
+  AC_DEFINE(PARPORT_USE_GIVEIO, 0, [0 if you don't want parport to use giveio.])
+fi
+
 if test $build_bitbang = yes; then
   AC_DEFINE(BUILD_BITBANG, 1, [1 if you want a bitbang interface.])
 else
   AC_DEFINE(BUILD_BITBANG, 0, [0 if you don't want a bitbang interface.])
 fi
 
-if test $build_ftdi2232 = yes; then
-  AC_DEFINE(BUILD_FTDI2232, 1, [1 if you want libftdi ft2232.])
+if test $build_ft2232_libftdi = yes; then
+  AC_DEFINE(BUILD_FT2232_LIBFTDI, 1, [1 if you want libftdi ft2232.])
 else
-  AC_DEFINE(BUILD_FTDI2232, 0, [0 if you don't want libftdi ft2232.])
+  AC_DEFINE(BUILD_FT2232_LIBFTDI, 0, [0 if you don't want libftdi ft2232.])
 fi
 
-if test $build_ftd2xx = yes; then
-  AC_DEFINE(BUILD_FTD2XX, 1, [1 if you want ftd2xx ft2232.])
+if test $build_ft2232_ftd2xx = yes; then
+  AC_DEFINE(BUILD_FT2232_FTD2XX, 1, [1 if you want ftd2xx ft2232.])
 else
-  AC_DEFINE(BUILD_FTD2XX, 0, [0 if you don't want ftd2xx ft2232.])
+  AC_DEFINE(BUILD_FT2232_FTD2XX, 0, [0 if you don't want ftd2xx ft2232.])
 fi
 
 if test $build_amtjtagaccel = yes; then
@@ -81,27 +184,65 @@ else
   AC_DEFINE(BUILD_AMTJTAGACCEL, 0, [0 if you don't want the Amontec JTAG-Accelerator driver.])
 fi
 
-case $host in 
-  *-*-cygwin*) 
-    is_cygwin=yes
-    AC_DEFINE(IS_CYGWIN, 1, [1 if building for Cygwin.])
-    ;; 
-  *) 
-    AC_DEFINE(IS_CYGWIN, 0, [0 if not building for Cygwin.])
-    ;;
-esac
+if test $build_gw16012 = yes; then
+  AC_DEFINE(BUILD_GW16012, 1, [1 if you want the Gateworks GW16012 driver.])
+else
+  AC_DEFINE(BUILD_GW16012, 0, [0 if you don't want the Gateworks GW16012 driver.])
+fi
+
+if test $build_presto_libftdi = yes; then
+  build_bitq=yes
+  AC_DEFINE(BUILD_PRESTO_LIBFTDI, 1, [1 if you want the ASIX PRESTO driver using libftdi.])
+else
+  AC_DEFINE(BUILD_PRESTO_LIBFTDI, 0, [0 if you don't want the ASIX PRESTO driver using libftdi.])
+fi
+
+if test $build_presto_ftd2xx = yes; then
+  build_bitq=yes
+  AC_DEFINE(BUILD_PRESTO_FTD2XX, 1, [1 if you want the ASIX PRESTO driver using FTD2XX.])
+else
+  AC_DEFINE(BUILD_PRESTO_FTD2XX, 0, [0 if you don't want the ASIX PRESTO driver using FTD2XX.])
+fi
+
+if test $build_bitq = yes; then
+  AC_DEFINE(BUILD_BITQ, 1, [1 if you want a bitq interface.])
+else
+  AC_DEFINE(BUILD_BITQ, 0, [0 if you don't want a bitq interface.])
+fi
+
+if test $build_usbprog = yes; then
+  AC_DEFINE(BUILD_USBPROG, 1, [1 if you want the usbprog JTAG driver.])
+else
+  AC_DEFINE(BUILD_USBPROG, 0, [0 if you don't want the usbprog JTAG driver.])
+fi
+
+if test $build_oocd_trace = yes; then
+  AC_DEFINE(BUILD_OOCD_TRACE, 1, [1 if you want the OpenOCD+trace ETM capture driver.])
+else
+  AC_DEFINE(BUILD_OOCD_TRACE, 0, [0 if you don't want the OpenOCD+trace ETM capture driver.])
+fi
 
 AM_CONFIG_HEADER(config.h)
-AM_INIT_AUTOMAKE(openocd, 0.1)
+AM_INIT_AUTOMAKE(openocd, 1.0)
 
 AM_CONDITIONAL(PARPORT, test $build_parport = yes)
+AM_CONDITIONAL(GIVEIO, test $parport_use_giveio = yes)
 AM_CONDITIONAL(EP93XX, test $build_ep93xx = yes)
+AM_CONDITIONAL(AT91RM9200, test $build_at91rm9200 = yes)
 AM_CONDITIONAL(BITBANG, test $build_bitbang = yes)
-AM_CONDITIONAL(FTDI2232, test $build_ftdi2232 = yes)
-AM_CONDITIONAL(FTD2XX, test $build_ftd2xx = yes)
+AM_CONDITIONAL(FT2232_LIBFTDI, test $build_ft2232_libftdi = yes)
+AM_CONDITIONAL(FT2232_FTD2XX, test $build_ft2232_ftd2xx = yes)
 AM_CONDITIONAL(AMTJTAGACCEL, test $build_amtjtagaccel = yes)
+AM_CONDITIONAL(GW16012, test $build_gw16012 = yes)
+AM_CONDITIONAL(PRESTO_LIBFTDI, test $build_presto_libftdi = yes)
+AM_CONDITIONAL(PRESTO_FTD2XX, test $build_presto_ftd2xx = yes)
+AM_CONDITIONAL(USBPROG, test $build_usbprog = yes)
+AM_CONDITIONAL(OOCD_TRACE, test $build_oocd_trace = yes)
 AM_CONDITIONAL(IS_CYGWIN, test $is_cygwin = yes)
+AM_CONDITIONAL(IS_MINGW, test $is_mingw = yes)
+AM_CONDITIONAL(IS_WIN32, test $is_win32 = yes)
 AM_CONDITIONAL(FTD2XXDIR, test $with_ftd2xx != search)
+AM_CONDITIONAL(BITQ, test $build_bitq = yes)
 
 AC_LANG_C
 AC_PROG_CC
@@ -109,4 +250,4 @@ AC_PROG_RANLIB
 
 AC_SUBST(WITH_FTD2XX, $with_ftd2xx)
 
-AC_OUTPUT(Makefile src/Makefile src/helper/Makefile src/jtag/Makefile src/xsvf/Makefile src/target/Makefile src/server/Makefile src/flash/Makefile)
+AC_OUTPUT(Makefile src/Makefile src/helper/Makefile src/jtag/Makefile src/xsvf/Makefile src/target/Makefile src/server/Makefile src/flash/Makefile src/pld/Makefile doc/Makefile)

Linking to existing account procedure

If you already have an account and want to add another login method you MUST first sign in with your existing account and then change URL to read https://review.openocd.org/login/?link to get to this page again but this time it'll work for linking. Thank you.

SSH host keys fingerprints

1024 SHA256:YKx8b7u5ZWdcbp7/4AeXNaqElP49m6QrwfXaqQGJAOk gerrit-code-review@openocd.zylin.com (DSA)
384 SHA256:jHIbSQa4REvwCFG4cq5LBlBLxmxSqelQPem/EXIrxjk gerrit-code-review@openocd.org (ECDSA)
521 SHA256:UAOPYkU9Fjtcao0Ul/Rrlnj/OsQvt+pgdYSZ4jOYdgs gerrit-code-review@openocd.org (ECDSA)
256 SHA256:A13M5QlnozFOvTllybRZH6vm7iSt0XLxbA48yfc2yfY gerrit-code-review@openocd.org (ECDSA)
256 SHA256:spYMBqEYoAOtK7yZBrcwE8ZpYt6b68Cfh9yEVetvbXg gerrit-code-review@openocd.org (ED25519)
+--[ED25519 256]--+
|=..              |
|+o..   .         |
|*.o   . .        |
|+B . . .         |
|Bo. = o S        |
|Oo.+ + =         |
|oB=.* = . o      |
| =+=.+   + E     |
|. .=o   . o      |
+----[SHA256]-----+
2048 SHA256:0Onrb7/PHjpo6iVZ7xQX2riKN83FJ3KGU0TvI0TaFG4 gerrit-code-review@openocd.zylin.com (RSA)