add struct command_invocation for COMMAND_HANDLER
[openocd.git] / configure.in
1 AC_PREREQ(2.60)
2 AC_INIT([openocd], [0.4.0-dev],
3 [OpenOCD Mailing List <openocd-development@lists.berlios.de>])
4 AC_CONFIG_SRCDIR([src/openocd.c])
5
6 AM_INIT_AUTOMAKE([-Wall -Wno-portability dist-bzip2 dist-zip])
7 AM_MAINTAINER_MODE
8
9 AM_CONFIG_HEADER(config.h)
10 AH_BOTTOM([
11 #include "system.h"
12 #include "replacements.h"
13 ])
14
15 AC_LANG_C
16 AC_PROG_CC
17 AC_PROG_CC_C99
18 AM_PROG_CC_C_O
19 AC_PROG_RANLIB
20
21 dnl disable checks for C++, Fortran and GNU Java Compiler
22 m4_defun([_LT_AC_LANG_CXX_CONFIG], [:])
23 m4_defun([_LT_AC_LANG_F77_CONFIG], [:])
24 m4_defun([_LT_AC_LANG_GCJ_CONFIG], [:])
25 AC_DISABLE_SHARED
26 AC_PROG_LIBTOOL
27 AC_SUBST(LIBTOOL_DEPS)
28
29
30 dnl configure checks required for Jim files (these are obsolete w/ C99)
31 AC_C_CONST
32 AC_TYPE_LONG_LONG_INT
33
34
35 AC_SEARCH_LIBS([ioperm], [ioperm])
36 AC_SEARCH_LIBS([dlopen], [dl])
37
38 AC_CHECK_HEADERS(sys/socket.h)
39 AC_CHECK_HEADERS(arpa/inet.h, [], [], [dnl
40 #include <stdio.h>
41 #ifdef STDC_HEADERS
42 # include <stdlib.h>
43 # include <stddef.h>
44 #else
45 # ifdef HAVE_STDLIB_H
46 # include <stdlib.h>
47 # endif
48 #endif
49 #ifdef HAVE_SYS_SOCKET_H
50 # include <sys/socket.h>
51 #endif
52 ])
53 AC_CHECK_HEADERS(elf.h)
54 AC_CHECK_HEADERS(dirent.h)
55 AC_CHECK_HEADERS(fcntl.h)
56 AC_CHECK_HEADERS(ifaddrs.h, [], [], [dnl
57 #include <stdio.h>
58 #ifdef STDC_HEADERS
59 # include <stdlib.h>
60 # include <stddef.h>
61 #else
62 # ifdef HAVE_STDLIB_H
63 # include <stdlib.h>
64 # endif
65 #endif
66 #ifdef HAVE_SYS_SOCKET_H
67 # include <sys/socket.h>
68 #endif
69 ])
70 AC_CHECK_HEADERS(malloc.h)
71 AC_CHECK_HEADERS(netdb.h)
72 AC_CHECK_HEADERS([netinet/in.h], [], [], [dnl
73 #include <stdio.h>
74 #ifdef STDC_HEADERS
75 # include <stdlib.h>
76 # include <stddef.h>
77 #else
78 # ifdef HAVE_STDLIB_H
79 # include <stdlib.h>
80 # endif
81 #endif
82 #ifdef HAVE_SYS_SOCKET_H
83 # include <sys/socket.h>
84 #endif
85 ])
86 AC_CHECK_HEADERS(netinet/tcp.h, [], [], [dnl
87 #include <stdio.h>
88 #ifdef STDC_HEADERS
89 # include <stdlib.h>
90 # include <stddef.h>
91 #else
92 # ifdef HAVE_STDLIB_H
93 # include <stdlib.h>
94 # endif
95 #endif
96 #ifdef HAVE_SYS_SOCKET_H
97 # include <sys/socket.h>
98 #endif
99 ])
100 AC_CHECK_HEADERS(pthread.h)
101 AC_CHECK_HEADERS(strings.h)
102 AC_CHECK_HEADERS(sys/ioctl.h)
103 AC_CHECK_HEADERS(sys/param.h)
104 AC_CHECK_HEADERS(sys/poll.h)
105 AC_CHECK_HEADERS(sys/select.h)
106 AC_CHECK_HEADERS(sys/stat.h)
107 AC_CHECK_HEADERS(sys/time.h)
108 AC_CHECK_HEADERS(sys/types.h)
109 AC_CHECK_HEADERS(unistd.h)
110 AC_CHECK_HEADERS([net/if.h], [], [], [dnl
111 #include <stdio.h>
112 #ifdef STDC_HEADERS
113 # include <stdlib.h>
114 # include <stddef.h>
115 #else
116 # ifdef HAVE_STDLIB_H
117 # include <stdlib.h>
118 # endif
119 #endif
120 #ifdef HAVE_SYS_SOCKET_H
121 # include <sys/socket.h>
122 #endif
123 ])
124
125 AC_HEADER_ASSERT
126 AC_HEADER_STDBOOL
127 AC_HEADER_TIME
128
129 AC_C_BIGENDIAN
130
131 AC_CHECK_FUNCS(strndup)
132 AC_CHECK_FUNCS(strnlen)
133 AC_CHECK_FUNCS(gettimeofday)
134 AC_CHECK_FUNCS(usleep)
135 AC_CHECK_FUNCS(vasprintf)
136
137 build_bitbang=no
138 build_bitq=no
139 is_cygwin=no
140 is_mingw=no
141 is_win32=no
142 is_darwin=no
143
144 if test $cross_compiling = no; then
145 # guess-rev.sh only exists in the repository, not in the released archives
146 AC_CHECK_FILE("$srcdir/guess-rev.sh", has_guess_rev=yes, has_guess_rev=no)
147
148 AC_MSG_CHECKING([whether to build a release])
149 if test $has_guess_rev = no; then
150 build_release=yes
151 else
152 build_release=no
153 fi
154 AC_MSG_RESULT($build_release)
155 else
156 build_release=yes
157 fi
158
159 # We are not *ALWAYS* being installed in the standard place.
160 # We may be installed in a "tool-build" specific location.
161 # Normally with other packages - as part of a tool distro.
162 # Thus - we should search that 'libdir' also.
163 #
164 # And - if we are being installed there - the odds are
165 # The libraries unique to what we are are there too.
166 #
167
168 # Expand nd deal with NONE - just like configure will do later
169 OCDprefix=$prefix
170 OCDxprefix=$exec_prefix
171 test x"$OCDprefix" = xNONE && OCDprefix=$ac_default_prefix
172 # Let make expand exec_prefix.
173 test x"$OCDxprefix" = xNONE && OCDxprefix="$OCDprefix"
174
175 # what matters is the "exec-prefix"
176 if test "$OCDxprefix" != "$ac_default_prefix"
177 then
178 # We are installing in a non-standard place
179 # Nonstandard --prefix and/or --exec-prefix
180 # We have an override of some sort.
181 # use build specific install library dir
182
183 LDFLAGS="$LDFLAGS -L$OCDxprefix/lib"
184 # RPATH becomes an issue on Linux only
185 if test $host_os = linux-gnu || test $host_os = linux ; then
186 LDFLAGS="$LDFLAGS -Wl,-rpath,$OCDxprefix/lib"
187 fi
188 # The "INCDIR" is also usable
189 CFLAGS="$CFLAGS -I$includedir"
190 fi
191
192 AC_ARG_WITH(ftd2xx,
193 AS_HELP_STRING([--with-ftd2xx=<PATH>],[This option has been removed.]),
194 [
195 # Option Given.
196 cat << __EOF__
197
198 The option: --with-ftd2xx=<PATH> has been removed.
199 On Linux, the new option is:
200
201 --with-ftd2xx-linux-tardir=/path/to/files
202
203 Where <path> is the path the the directory where the "tar.gz" file
204 from FTDICHIP.COM was unpacked, for example:
205
206 --with-ftd2xx-linux-tardir=${HOME}/libftd2xx0.4.16
207
208 On Cygwin/MingW32, the new option is:
209
210 --with-ftd2xx-win32-zipdir=/path/to/files
211
212 Where <path> is the path to the directory where the "zip" file from
213 FTDICHIP.COM was unpacked, for example:
214
215 --with-ftd2xx-win32-zipdir=${HOME}/ftd2xx.cdm.files
216
217 __EOF__
218
219 AC_MSG_ERROR([Sorry Cannot continue])
220 ], [true])
221
222 #========================================
223 # FTD2XXX support comes in 4 forms.
224 # (1) win32 - via a zip file
225 # (2) linux - via a tar file
226 # (3) linux/cygwin/mingw - via libftdi
227 # (4) darwin - installed under /usr/local
228 #
229 # In case (1) and (2) we need to know where the package was unpacked.
230
231 AC_ARG_WITH(ftd2xx-win32-zipdir,
232 AS_HELP_STRING([--with-ftd2xx-win32-zipdir],[Where (CYGWIN/MINGW) the zip file from ftdichip.com was unpacked <default=search>]),
233 [
234 # option present
235 if test -d $with_ftd2xx_win32_zipdir
236 then
237 with_ftd2xx_win32_zipdir=`cd $with_ftd2xx_win32_zipdir && pwd`
238 AC_MSG_NOTICE([Using: ftdichip.com library: $with_ftd2xx_win32_zipdir])
239 else
240 AC_MSG_ERROR([Parameter to --with-ftd2xx-win32-zipdir is not a dir: $with_ftd2xx_win32_zipdir])
241 fi
242 ], [true])
243
244 AC_ARG_WITH(ftd2xx-linux-tardir,
245 AS_HELP_STRING([--with-ftd2xx-linux-tardir], [Where (Linux/Unix) the tar file from ftdichip.com was unpacked <default=search>]),
246 [
247 # Option present
248 if test $is_win32 = yes ; then
249 AC_MSG_ERROR([The option: --with-ftd2xx-linux-tardir is only usable on linux])
250 fi
251 if test -d $with_ftd2xx_linux_tardir
252 then
253 with_ftd2xx_linux_tardir=`cd $with_ftd2xx_linux_tardir && pwd`
254 AC_MSG_NOTICE([Using: ftdichip.com library: $with_ftd2xx_linux_tardir])
255 else
256 AC_MSG_ERROR([Parameter to --with-ftd2xx-linux-tardir is not a dir: $with_ftd2xx_linux_tardir])
257 fi
258 ], [true])
259
260 AC_ARG_WITH(ftd2xx-lib,
261 AS_HELP_STRING([--with-ftd2xx-lib],
262 [Use static or shared ftd2xx libs on default static]),
263 [
264 case "$withval" in
265 static)
266 with_ftd2xx_lib=$withval
267 ;;
268 shared)
269 with_ftd2xx_lib=$withval
270 ;;
271 *)
272 AC_MSG_ERROR([Option: --with-ftd2xx-lib=static or --with-ftd2xx-lib=shared not, $withval])
273 ;;
274 esac
275 ], [
276 # Default is static - it is simpler :-(
277 with_ftd2xx_lib=static
278 ])
279
280 AC_ARG_ENABLE(gccwarnings,
281 AS_HELP_STRING([--disable-gccwarnings], [Disable compiler warnings]),
282 [gcc_warnings=$enableval], [gcc_warnings=yes])
283
284 AC_ARG_ENABLE(wextra,
285 AS_HELP_STRING([--disable-wextra], [Disable extra compiler warnings]),
286 [gcc_wextra=$enableval], [gcc_wextra=$gcc_warnings])
287
288 AC_ARG_ENABLE(werror,
289 AS_HELP_STRING([--disable-werror], [Do not treat warnings as errors]),
290 [gcc_werror=$enableval], [gcc_werror=$gcc_warnings])
291
292 # set default verbose options, overridden by following options
293 debug_jtag_io=no
294 debug_usb_io=no
295 debug_usb_comms=no
296
297 AC_ARG_ENABLE(verbose,
298 AS_HELP_STRING([--enable-verbose],
299 [Enable verbose JTAG I/O messages (for debugging).]),
300 [
301 debug_jtag_io=$enableval
302 debug_usb_io=$enableval
303 debug_usb_comms=$enableval
304 ], [])
305
306 AC_ARG_ENABLE(verbose_jtag_io,
307 AS_HELP_STRING([--enable-verbose-jtag-io],
308 [Enable verbose JTAG I/O messages (for debugging).]),
309 [debug_jtag_io=$enableval], [])
310 AC_ARG_ENABLE(verbose_usb_io,
311 AS_HELP_STRING([--enable-verbose-usb-io],
312 [Enable verbose USB I/O messages (for debugging)]),
313 [debug_usb_io=$enableval], [])
314 AC_ARG_ENABLE(verbose_usb_comms,
315 AS_HELP_STRING([--enable-verbose-usb-comms],
316 [Enable verbose USB communication messages (for debugging)]),
317 [debug_usb_comms=$enableval], [])
318
319 AC_MSG_CHECKING([whether to enable verbose JTAG I/O messages]);
320 AC_MSG_RESULT($debug_jtag_io)
321 if test $debug_jtag_io = yes; then
322 AC_DEFINE([_DEBUG_JTAG_IO_],[1], [Print verbose JTAG I/O messages])
323 fi
324
325 AC_MSG_CHECKING([whether to enable verbose USB I/O messages]);
326 AC_MSG_RESULT($debug_usb_io)
327 if test $debug_usb_io = yes; then
328 AC_DEFINE([_DEBUG_USB_IO_],[1], [Print verbose USB I/O messages])
329 fi
330
331 AC_MSG_CHECKING([whether to enable verbose USB communication messages]);
332 AC_MSG_RESULT($debug_usb_comms)
333 if test $debug_usb_comms = yes; then
334 AC_DEFINE([_DEBUG_USB_COMMS_],[1], [Print verbose USB communication messages])
335 fi
336
337
338 debug_malloc=no
339 AC_ARG_ENABLE(malloc_logging,
340 AS_HELP_STRING([--enable-malloc-logging],
341 [Include free space in logging messages (requires malloc.h).]),
342 [debug_malloc=$enableval], [])
343
344 AC_MSG_CHECKING([whether to enable malloc free space logging]);
345 AC_MSG_RESULT($debug_malloc)
346 if test $debug_malloc = yes; then
347 AC_DEFINE([_DEBUG_FREE_SPACE_],[1], [Include malloc free space in logging])
348 fi
349
350
351 AC_ARG_ENABLE(dummy,
352 AS_HELP_STRING([--enable-dummy], [Enable building the dummy port driver]),
353 [build_dummy=$enableval], [build_dummy=no])
354
355 AC_ARG_ENABLE(parport,
356 AS_HELP_STRING([--enable-parport], [Enable building the pc parallel port driver]),
357 [build_parport=$enableval], [build_parport=no])
358
359 AC_ARG_ENABLE(parport_ppdev,
360 AS_HELP_STRING([--disable-parport-ppdev],
361 [Disable use of ppdev (/dev/parportN) for parport (for x86 only)]),
362 [parport_use_ppdev=$enableval], [parport_use_ppdev=yes])
363
364 AC_ARG_ENABLE(parport_giveio,
365 AS_HELP_STRING([--enable-parport-giveio],
366 [Enable use of giveio for parport (for CygWin only)]),
367 [parport_use_giveio=$enableval], [parport_use_giveio=])
368
369 AC_ARG_ENABLE(ft2232_libftdi,
370 AS_HELP_STRING([--enable-ft2232_libftdi], [Enable building support for FT2232 based devices using the libftdi driver, opensource alternate of FTD2XX]),
371 [build_ft2232_libftdi=$enableval], [build_ft2232_libftdi=no])
372
373 AC_ARG_ENABLE(ft2232_ftd2xx,
374 AS_HELP_STRING([--enable-ft2232_ftd2xx], [Enable building support for FT2232 based devices using the FTD2XX driver from ftdichip.com]),
375 [build_ft2232_ftd2xx=$enableval], [build_ft2232_ftd2xx=no])
376
377 AC_ARG_ENABLE(amtjtagaccel,
378 AS_HELP_STRING([--enable-amtjtagaccel], [Enable building the Amontec JTAG-Accelerator driver]),
379 [build_amtjtagaccel=$enableval], [build_amtjtagaccel=no])
380
381 AC_ARG_ENABLE(ecosboard,
382 AS_HELP_STRING([--enable-ecosboard], [Enable building support for eCos based JTAG debugger]),
383 [build_ecosboard=$enableval], [build_ecosboard=no])
384
385 AC_ARG_ENABLE(zy1000,
386 AS_HELP_STRING([--enable-zy1000], [Enable ZY1000 interface]),
387 [build_zy1000=$enableval], [build_zy1000=no])
388
389 AC_ARG_ENABLE(ioutil,
390 AS_HELP_STRING([--enable-ioutil], [Enable ioutil functions - useful for standalone OpenOCD implementations]),
391 [build_ioutil=$enableval], [build_ioutil=no])
392
393 AC_ARG_ENABLE(httpd,
394 AS_HELP_STRING([--enable-httpd], [Enable builtin httpd server - useful for standalone OpenOCD implementations]),
395 [build_httpd=$enableval], [build_httpd=no])
396
397 case "${host_cpu}" in
398 arm*)
399 AC_ARG_ENABLE(ep93xx,
400 AS_HELP_STRING([--enable-ep93xx], [Enable building support for EP93xx based SBCs]),
401 [build_ep93xx=$enableval], [build_ep93xx=no])
402
403 AC_ARG_ENABLE(at91rm9200,
404 AS_HELP_STRING([--enable-at91rm9200], [Enable building support for AT91RM9200 based SBCs]),
405 [build_at91rm9200=$enableval], [build_at91rm9200=no])
406 ;;
407
408 *)
409 build_ep93xx=no
410 build_at91rm9200=no
411 ;;
412 esac
413
414 AC_ARG_ENABLE(gw16012,
415 AS_HELP_STRING([--enable-gw16012], [Enable building support for the Gateworks GW16012 JTAG Programmer]),
416 [build_gw16012=$enableval], [build_gw16012=no])
417
418 AC_ARG_ENABLE(presto_libftdi,
419 AS_HELP_STRING([--enable-presto_libftdi], [Enable building support for ASIX Presto Programmer using the libftdi driver]),
420 [build_presto_libftdi=$enableval], [build_presto_libftdi=no])
421
422 AC_ARG_ENABLE(presto_ftd2xx,
423 AS_HELP_STRING([--enable-presto_ftd2xx], [Enable building support for ASIX Presto Programmer using the FTD2XX driver]),
424 [build_presto_ftd2xx=$enableval], [build_presto_ftd2xx=no])
425
426 AC_ARG_ENABLE(usbprog,
427 AS_HELP_STRING([--enable-usbprog], [Enable building support for the usbprog JTAG Programmer]),
428 [build_usbprog=$enableval], [build_usbprog=no])
429
430 AC_ARG_ENABLE(oocd_trace,
431 AS_HELP_STRING([--enable-oocd_trace],
432 [Enable building support for some prototype OpenOCD+trace ETM capture hardware]),
433 [build_oocd_trace=$enableval], [build_oocd_trace=no])
434
435 AC_ARG_ENABLE(jlink,
436 AS_HELP_STRING([--enable-jlink], [Enable building support for the Segger J-Link JTAG Programmer]),
437 [build_jlink=$enableval], [build_jlink=no])
438
439 AC_ARG_ENABLE(vsllink,
440 AS_HELP_STRING([--enable-vsllink], [Enable building support for the Versaloon-Link JTAG Programmer]),
441 [build_vsllink=$enableval], [build_vsllink=no])
442
443 AC_ARG_ENABLE(rlink,
444 AS_HELP_STRING([--enable-rlink], [Enable building support for the Raisonance RLink JTAG Programmer]),
445 [build_rlink=$enableval], [build_rlink=no])
446
447 AC_ARG_ENABLE(arm-jtag-ew,
448 AS_HELP_STRING([--enable-arm-jtag-ew], [Enable building support for the Olimex ARM-JTAG-EW Programmer]),
449 [build_armjtagew=$enableval], [build_armjtagew=no])
450
451 AC_ARG_ENABLE(minidriver_dummy,
452 AS_HELP_STRING([--enable-minidriver-dummy], [Enable the dummy minidriver.]),
453 [build_minidriver_dummy=$enableval], [build_minidriver_dummy=no])
454
455
456 build_minidriver=no
457 AC_MSG_CHECKING([whether to enable ZY1000 minidriver])
458 if test $build_zy1000 = yes; then
459 if test $build_minidriver = yes; then
460 AC_MSG_ERROR([Multiple minidriver options have been enabled.])
461 fi
462 AC_DEFINE(HAVE_JTAG_MINIDRIVER_H, 1,
463 [Define to 1 if you have the <jtag_minidriver.h> header file.])
464 build_minidriver=yes
465 fi
466 AC_MSG_RESULT($build_zy1000)
467
468
469 AC_MSG_CHECKING([whether to enable dummy minidriver])
470 if test $build_minidriver_dummy = yes; then
471 if test $build_minidriver = yes; then
472 AC_MSG_ERROR([Multiple minidriver options have been enabled.])
473 fi
474 build_minidriver=yes
475 AC_DEFINE(BUILD_MINIDRIVER_DUMMY, 1, [Use the dummy minidriver.])
476 AC_DEFINE(HAVE_JTAG_MINIDRIVER_H, 1,
477 [Define to 1 if you have the <jtag_minidriver.h> header file.])
478 fi
479 AC_MSG_RESULT($build_minidriver_dummy)
480
481 AC_MSG_CHECKING([whether standard drivers can be built])
482 if test "$build_minidriver" = yes; then
483 AC_MSG_RESULT([no])
484 AC_MSG_WARN([Using the minidriver disables all other drivers.])
485 sleep 2
486 else
487 AC_MSG_RESULT([yes])
488 fi
489
490 case "${host_cpu}" in
491 i?86|x86*)
492 ;;
493 *)
494 if test x$parport_use_ppdev = xno; then
495 AC_MSG_WARN([--disable-parport-ppdev is not supported by the host CPU])
496 fi
497 parport_use_ppdev=yes
498 ;;
499 esac
500
501 case $host in
502 *-cygwin*)
503 is_win32=yes
504 parport_use_ppdev=no
505
506 AC_COMPILE_IFELSE(AC_LANG_PROGRAM([],[return __MINGW32__;]),
507 [is_mingw=yes],[is_mingw=no])
508 if test $is_mingw = yes; then
509 AC_DEFINE(IS_MINGW, 1, [1 if building for MinGW.])
510 if test x$parport_use_giveio = xno; then
511 AC_MSG_WARN([--disable-parport-giveio is not supported by MinGW32 hosts])
512 fi
513 parport_use_giveio=yes
514 is_cygwin=no
515 else
516 is_cygwin=yes
517 AC_DEFINE(IS_CYGWIN, 1, [1 if building for Cygwin.])
518 # sys/io.h needed under cygwin for parport access
519 if test $build_parport = yes; then
520 AC_CHECK_HEADERS(sys/io.h,[],AC_MSG_ERROR([Please install the cygwin ioperm package]))
521 fi
522 fi
523
524 AC_DEFINE(IS_WIN32, 1, [1 if building for Win32.])
525 AC_DEFINE(IS_DARWIN, 0, [0 if not building for Darwin.])
526 ;;
527 *-mingw*)
528 is_mingw=yes
529 is_win32=yes
530 parport_use_ppdev=no
531
532 if test x$parport_use_giveio = xno; then
533 AC_MSG_WARN([--disable-parport-giveio is not supported by MinGW32 hosts])
534 fi
535 parport_use_giveio=yes
536
537 CFLAGS="$CFLAGS -D__USE_MINGW_ANSI_STDIO"
538
539 AC_DEFINE(IS_MINGW, 1, [1 if building for MinGW.])
540 AC_DEFINE(IS_WIN32, 1, [1 if building for Win32.])
541 AC_DEFINE(IS_DARWIN, 0, [0 if not building for Darwin.])
542 ;;
543 *darwin*)
544 is_darwin=yes
545
546 if test x$parport_use_giveio = xyes; then
547 AC_MSG_WARN([--enable-parport-giveio cannot be used by Darwin hosts])
548 fi
549 parport_use_giveio=no
550
551 AC_DEFINE(IS_CYGWIN, 0, [0 if not building for Cygwin.])
552 AC_DEFINE(IS_WIN32, 0, [0 if not building for Win32.])
553 AC_DEFINE(IS_DARWIN, 1, [1 if building for Darwin.])
554 ;;
555 *)
556 if test x$parport_use_giveio = xyes; then
557 AC_MSG_WARN([--enable-parport-giveio cannot be used by ]$host[ hosts])
558 fi
559 parport_use_giveio=no
560 AC_DEFINE(IS_CYGWIN, 0, [0 if not building for Cygwin.])
561 AC_DEFINE(IS_WIN32, 0, [0 if not building for Win32.])
562 AC_DEFINE(IS_DARWIN, 0, [0 if not building for Darwin.])
563 ;;
564 esac
565
566 if test $build_parport = yes; then
567 build_bitbang=yes
568 AC_DEFINE(BUILD_PARPORT, 1, [1 if you want parport.])
569 else
570 AC_DEFINE(BUILD_PARPORT, 0, [0 if you don't want parport.])
571 fi
572
573 if test $build_dummy = yes; then
574 build_bitbang=yes
575 AC_DEFINE(BUILD_DUMMY, 1, [1 if you want dummy driver.])
576 else
577 AC_DEFINE(BUILD_DUMMY, 0, [0 if you don't want dummy driver.])
578 fi
579
580 if test $build_ep93xx = yes; then
581 build_bitbang=yes
582 AC_DEFINE(BUILD_EP93XX, 1, [1 if you want ep93xx.])
583 else
584 AC_DEFINE(BUILD_EP93XX, 0, [0 if you don't want ep93xx.])
585 fi
586
587 if test $build_ecosboard = yes; then
588 AC_DEFINE(BUILD_ECOSBOARD, 1, [1 if you want eCosBoard.])
589 else
590 AC_DEFINE(BUILD_ECOSBOARD, 0, [0 if you don't want eCosBoard.])
591 fi
592
593 if test $build_zy1000 = yes; then
594 AC_DEFINE(BUILD_ZY1000, 1, [1 if you want ZY1000.])
595 else
596 AC_DEFINE(BUILD_ZY1000, 0, [0 if you don't want ZY1000.])
597 fi
598
599 if test $build_ioutil = yes; then
600 AC_DEFINE(BUILD_IOUTIL, 1, [1 if you want ioutils.])
601 else
602 AC_DEFINE(BUILD_IOUTIL, 0, [0 if you don't want ioutils.])
603 fi
604
605 if test $build_httpd = yes; then
606 AC_DEFINE(BUILD_HTTPD, 1, [1 if you want httpd.])
607 else
608 AC_DEFINE(BUILD_HTTPD, 0, [0 if you don't want httpd.])
609 fi
610
611 if test $build_at91rm9200 = yes; then
612 build_bitbang=yes
613 AC_DEFINE(BUILD_AT91RM9200, 1, [1 if you want at91rm9200.])
614 else
615 AC_DEFINE(BUILD_AT91RM9200, 0, [0 if you don't want at91rm9200.])
616 fi
617
618 if test x$parport_use_ppdev = xyes; then
619 AC_DEFINE(PARPORT_USE_PPDEV, 1, [1 if you want parport to use ppdev.])
620 else
621 AC_DEFINE(PARPORT_USE_PPDEV, 0, [0 if you don't want parport to use ppdev.])
622 fi
623
624 if test x$parport_use_giveio = xyes; then
625 AC_DEFINE(PARPORT_USE_GIVEIO, 1, [1 if you want parport to use giveio.])
626 else
627 AC_DEFINE(PARPORT_USE_GIVEIO, 0, [0 if you don't want parport to use giveio.])
628 fi
629
630 if test $build_bitbang = yes; then
631 AC_DEFINE(BUILD_BITBANG, 1, [1 if you want a bitbang interface.])
632 else
633 AC_DEFINE(BUILD_BITBANG, 0, [0 if you don't want a bitbang interface.])
634 fi
635
636 if test $build_ft2232_libftdi = yes; then
637 AC_DEFINE(BUILD_FT2232_LIBFTDI, 1, [1 if you want libftdi ft2232.])
638 else
639 AC_DEFINE(BUILD_FT2232_LIBFTDI, 0, [0 if you don't want libftdi ft2232.])
640 fi
641
642 if test $build_ft2232_ftd2xx = yes; then
643 AC_DEFINE(BUILD_FT2232_FTD2XX, 1, [1 if you want ftd2xx ft2232.])
644 else
645 AC_DEFINE(BUILD_FT2232_FTD2XX, 0, [0 if you don't want ftd2xx ft2232.])
646 fi
647
648 if test $build_amtjtagaccel = yes; then
649 AC_DEFINE(BUILD_AMTJTAGACCEL, 1, [1 if you want the Amontec JTAG-Accelerator driver.])
650 else
651 AC_DEFINE(BUILD_AMTJTAGACCEL, 0, [0 if you don't want the Amontec JTAG-Accelerator driver.])
652 fi
653
654 if test $build_gw16012 = yes; then
655 AC_DEFINE(BUILD_GW16012, 1, [1 if you want the Gateworks GW16012 driver.])
656 else
657 AC_DEFINE(BUILD_GW16012, 0, [0 if you don't want the Gateworks GW16012 driver.])
658 fi
659
660 if test $build_presto_libftdi = yes; then
661 build_bitq=yes
662 AC_DEFINE(BUILD_PRESTO_LIBFTDI, 1, [1 if you want the ASIX PRESTO driver using libftdi.])
663 else
664 AC_DEFINE(BUILD_PRESTO_LIBFTDI, 0, [0 if you don't want the ASIX PRESTO driver using libftdi.])
665 fi
666
667 if test $build_presto_ftd2xx = yes; then
668 build_bitq=yes
669 AC_DEFINE(BUILD_PRESTO_FTD2XX, 1, [1 if you want the ASIX PRESTO driver using FTD2XX.])
670 else
671 AC_DEFINE(BUILD_PRESTO_FTD2XX, 0, [0 if you don't want the ASIX PRESTO driver using FTD2XX.])
672 fi
673
674 if test $build_bitq = yes; then
675 AC_DEFINE(BUILD_BITQ, 1, [1 if you want a bitq interface.])
676 else
677 AC_DEFINE(BUILD_BITQ, 0, [0 if you don't want a bitq interface.])
678 fi
679
680 if test $build_usbprog = yes; then
681 AC_DEFINE(BUILD_USBPROG, 1, [1 if you want the usbprog JTAG driver.])
682 else
683 AC_DEFINE(BUILD_USBPROG, 0, [0 if you don't want the usbprog JTAG driver.])
684 fi
685
686 if test $build_oocd_trace = yes; then
687 AC_DEFINE(BUILD_OOCD_TRACE, 1, [1 if you want the OpenOCD+trace ETM capture driver.])
688 else
689 AC_DEFINE(BUILD_OOCD_TRACE, 0, [0 if you don't want the OpenOCD+trace ETM capture driver.])
690 fi
691
692 if test $build_jlink = yes; then
693 AC_DEFINE(BUILD_JLINK, 1, [1 if you want the J-Link JTAG driver.])
694 else
695 AC_DEFINE(BUILD_JLINK, 0, [0 if you don't want the J-Link JTAG driver.])
696 fi
697
698 if test $build_vsllink = yes; then
699 AC_DEFINE(BUILD_VSLLINK, 1, [1 if you want the Versaloon-Link JTAG driver.])
700 else
701 AC_DEFINE(BUILD_VSLLINK, 0, [0 if you don't want the Versaloon-Link JTAG driver.])
702 fi
703
704 if test $build_rlink = yes; then
705 AC_DEFINE(BUILD_RLINK, 1, [1 if you want the RLink JTAG driver.])
706 else
707 AC_DEFINE(BUILD_RLINK, 0, [0 if you don't want the RLink JTAG driver.])
708 fi
709
710 if test $build_armjtagew = yes; then
711 AC_DEFINE(BUILD_ARMJTAGEW, 1, [1 if you want the ARM-JTAG-EW JTAG driver.])
712 else
713 AC_DEFINE(BUILD_ARMJTAGEW, 0, [0 if you don't want the ARM-JTAG-EW JTAG driver.])
714 fi
715
716 #-- Deal with MingW/Cygwin FTD2XX issues
717
718 if test $is_win32 = yes; then
719 if test "${with_ftd2xx_linux_tardir+set}" = set
720 then
721 AC_MSG_ERROR([The option: with_ftd2xx_linux_tardir is for LINUX only.])
722 fi
723
724 if test $build_ft2232_ftd2xx = yes -o $build_presto_ftd2xx = yes ; then
725 AC_MSG_CHECKING([for ftd2xx.lib exists (win32)])
726
727 # if we are given a zipdir...
728 if test "${with_ftd2xx_win32_zipdir+set}" = set
729 then
730 # Set the CFLAGS for "ftd2xx.h"
731 f=$with_ftd2xx_win32_zipdir/ftd2xx.h
732 if test ! -f $f ; then
733 AC_MSG_ERROR([File: $f cannot be found])
734 fi
735 CFLAGS="$CFLAGS -I$with_ftd2xx_win32_zipdir"
736
737 # And calculate the LDFLAGS for the machine
738 case "$host_cpu" in
739 i?86|x86_32)
740 LDFLAGS="$LDFLAGS -L$with_ftd2xx_win32_zipdir/i386"
741 LIBS="$LIBS -lftd2xx"
742 f=$with_ftd2xx_win32_zipdir/i386/ftd2xx.lib
743 ;;
744 amd64|x86_64)
745 LDFLAGS="$LDFLAGS -L$with_ftd2xx_win32_zipdir/amd64"
746 LIBS="$LIBS -lftd2xx"
747 f=$with_ftd2xx_win32_zipdir/amd64/ftd2xx.lib
748 ;;
749 *)
750 AC_MSG_ERROR([Unknown Win32 host cpu: $host_cpu])
751 ;;
752 esac
753 if test ! -f $f ; then
754 AC_MSG_ERROR([Library: $f not found])
755 fi
756 else
757 LIBS="$LIBS -lftd2xx"
758 AC_MSG_WARN([ASSUMPTION: The (win32) FTDICHIP.COM files: ftd2xx.h and ftd2xx.lib are in a proper place])
759 fi
760 fi
761 fi # win32
762
763 if test $is_darwin = yes ; then
764 if test "${with_ftd2xx_win32_zipdir+set}" = set
765 then
766 AC_MSG_ERROR([The option: --with-ftd2xx-win32-zipdir is for win32 only])
767 fi
768 if test "${with_ftd2xx_linux_tardir+set}" = set
769 then
770 AC_MSG_ERROR([The option: with_ftd2xx_linux_tardir is for LINUX only.])
771 fi
772
773 if test $build_ft2232_ftd2xx = yes -o $build_presto_ftd2xx = yes ; then
774 AC_MSG_CHECKING([for libftd2xx.a (darwin)])
775
776 if test ! -f /usr/local/include/ftd2xx.h ; then
777 AC_MSG_ERROR([ftd2xx library from FTDICHIP.com seems to be missing, cannot find: /usr/local/include/ftd2xx.h])
778 fi
779
780 CFLAGS="$CFLAGS -I/usr/local/include"
781 LDFLAGS="$LDFLAGS -L/usr/local/lib"
782 LIBS="$LIBS -lftd2xx"
783 AC_MSG_RESULT([-L/usr/local/lib -lftd2xx])
784 fi
785 fi # darwin
786
787 if test $is_win32 = no && test $is_darwin = no ; then
788
789 if test "${with_ftd2xx_win32_zipdir+set}" = set
790 then
791 AC_MSG_ERROR([The option: --with-ftd2xx-win32-zipdir is for win32 only])
792 fi
793
794 if test $build_ft2232_ftd2xx = yes -o $build_presto_ftd2xx = yes ; then
795 # Must be linux
796 if test $host_os != linux-gnu && test $host_os != linux ; then
797 AC_MSG_ERROR([The (linux) ftd2xx library from FTDICHIP.com is linux only. Try --enable-ft2232-libftdi instead])
798 fi
799 # Are we given a TAR directory?
800 if test "${with_ftd2xx_linux_tardir+set}" = set
801 then
802 AC_MSG_CHECKING([uninstalled ftd2xx distribution])
803 # The .H file is simple..
804 FTD2XX_H=$with_ftd2xx_linux_tardir/ftd2xx.h
805 if test ! -f "${FTD2XX_H}"; then
806 AC_MSG_ERROR([Option: --with-ftd2xx-linux-tardir appears wrong, cannot find: ${FTD2XX_H}])
807 fi
808 CFLAGS="$CFLAGS -I$with_ftd2xx_linux_tardir"
809 FTD2XX_LDFLAGS="-L$with_ftd2xx_linux_tardir"
810 FTD2XX_LIB="-lftd2xx"
811 if test $with_ftd2xx_lib != shared; then
812 # Test #1 - Future proof - if/when ftdichip fixes their distro.
813 # Try it with the simple ".a" suffix.
814 FTD2XX_LIB="$with_ftd2xx_linux_tardir/static_lib/libftd2xx.a"
815 if test -f "${FTD2XX_LIB}"; then
816 FTD2XX_LDFLAGS="${FTD2XX_LDFLAGS}/static_lib"
817 else
818 # Test Number2.
819 # Grr.. perhaps it exists as a version number?
820 FTD2XX_LIB="$with_ftd2xx_linux_tardir/static_lib/libftd2xx.a.*.*.*"
821 count=`ls ${FTD2XX_LIB} | wc -l`
822 if test $count -gt 1 ; then
823 AC_MSG_ERROR([Multiple libftd2xx.a files found in: $with_ftd2xx_linux_tardir/static_lib sorry cannot handle this yet])
824 fi
825 if test $count -ne 1 ; then
826 AC_MSG_ERROR([Not found: $f, option: --with-ftd2xx-linux-tardir appears to be wrong])
827 fi
828 # Because the "-l" rules do not understand version numbers...
829 # we will just stuff the absolute path onto the LIBS variable
830 FTD2XX_LIB="`ls ${FTD2XX_LIB}` -lpthread"
831 FTD2XX_LDFLAGS=""
832 fi
833 fi
834 LDFLAGS="${LDFLAGS} ${FTD2XX_LDFLAGS}"
835 LIBS="${LIBS} ${FTD2XX_LIB}"
836 AC_MSG_RESULT([${FTD2XX_LDFLAGS} ${FTD2XX_LIB}])
837 else
838 AC_CHECK_HEADER([ftd2xx.h],[],[
839 AC_MSG_ERROR([You seem to be missing the FTD2xx driver header file.])
840 ])
841 AC_SEARCH_LIBS([FT_GetLibraryVersion],[ftd2xx],,[
842 AC_MSG_ERROR([You appear to be missing the FTD2xx driver library.])
843 ],[])
844 fi
845 fi
846 fi # linux
847
848 if test $build_ft2232_ftd2xx = yes -o $build_presto_ftd2xx = yes; then
849
850 # Before we go any further - make sure we can *BUILD* and *RUN*
851 # a simple app with the "ftd2xx.lib" file - in what ever form we where given
852 # We should be able to compile, link and run this test program now
853 AC_MSG_CHECKING([whether ftd2xx library works])
854
855 #
856 # Save the LDFLAGS for later..
857 LDFLAGS_SAVE=$LDFLAGS
858 CFLAGS_SAVE=$CFLAGS
859 _LDFLAGS=`eval echo $LDFLAGS`
860 _CFLAGS=`eval echo $CFLAGS`
861 LDFLAGS=$_LDFLAGS
862 CFLAGS=$_CFLAGS
863
864 AC_RUN_IFELSE([
865 #include "confdefs.h"
866 #if IS_WIN32
867 #include "windows.h"
868 #endif
869 #include <stdio.h>
870 #include <ftd2xx.h>
871
872 int
873 main( int argc, char **argv )
874 {
875 DWORD x;
876 FT_GetLibraryVersion( &x );
877 return 0;
878 }
879 ], [
880 AC_MSG_RESULT([Success!])
881 ], [
882 AC_MSG_ERROR([Cannot build & run test program using ftd2xx.lib])
883 ], [
884 AC_MSG_RESULT([Skipping as we are cross-compiling])
885 ])
886
887 AC_MSG_CHECKING([for ftd2xx highspeed device support])
888 AC_COMPILE_IFELSE([
889 #include "confdefs.h"
890 #if IS_WIN32
891 #include "windows.h"
892 #endif
893 #include <stdio.h>
894 #include <ftd2xx.h>
895 DWORD x = FT_DEVICE_4232H;
896 ], [
897 AC_DEFINE(BUILD_FT2232_HIGHSPEED, [1],
898 [Support FT2232H/FT4232HS with FTD2XX or libftdi.])
899 build_ft2232_highspeed=yes
900 ], [
901 build_ft2232_highspeed=no
902 ])
903 AC_MSG_RESULT([$build_ft2232_highspeed])
904
905 if test $build_ft2232_highspeed = no; then
906 AC_MSG_WARN([You need a newer FTD2XX driver (version 2.04.16 or later).])
907 fi
908
909 LDFLAGS=$LDFLAGS_SAVE
910 CFLAGS=$CFLAGS_SAVE
911 fi
912
913 if test $build_ft2232_libftdi = yes ; then
914 # We assume: the package is preinstalled in the proper place
915 # these present as 2 libraries..
916 LIBS="$LIBS -lftdi -lusb"
917 #
918 # Try to build a small program.
919 AC_MSG_CHECKING([Build & Link with libftdi...])
920
921 LDFLAGS_SAVE=$LDFLAGS
922 CFLAGS_SAVE=$CFLAGS
923 _LDFLAGS=`eval echo $LDFLAGS`
924 _CFLAGS=`eval echo $CFLAGS`
925 LDFLAGS=$_LDFLAGS
926 CFLAGS=$_CFLAGS
927
928 AC_RUN_IFELSE([
929 #include <stdio.h>
930 #include <ftdi.h>
931
932 int
933 main( int argc, char **argv )
934 {
935 struct ftdi_context *p;
936 p = ftdi_new();
937 if( p != NULL ){
938 return 0;
939 } else {
940 fprintf( stderr, "calling ftdi_new() failed\n");
941 return 1;
942 }
943 }
944 ], [
945 AC_MSG_RESULT([Success])
946 ], [
947 AC_MSG_ERROR([Cannot build & run test program using libftdi])
948 ], [
949 AC_MSG_RESULT([Skipping as we are cross-compiling])
950 ])
951
952 AC_MSG_CHECKING([for libftdi highspeed device support])
953 AC_COMPILE_IFELSE([
954 #include <stdio.h>
955 #include <ftdi.h>
956 enum ftdi_chip_type x = TYPE_2232H;
957 ], [
958 AC_DEFINE(BUILD_FT2232_HIGHSPEED, [1],
959 [Support FT2232H/FT4232HS with FTD2XX or libftdi.])
960 build_ft2232_highspeed=yes
961 ], [
962 build_ft2232_highspeed=no
963 ])
964 AC_MSG_RESULT([$build_ft2232_highspeed])
965
966 if test $build_ft2232_highspeed = no; then
967 AC_MSG_WARN([You need a newer libftdi version (0.16 or later).])
968 fi
969
970 # Restore the 'unexpanded ldflags'
971 LDFLAGS=$LDFLAGS_SAVE
972 CFLAGS=$CFLAGS_SAVE
973 fi
974
975 # check for usb.h when a driver will require it
976 if test $build_jlink = yes -o $build_vsllink = yes -o $build_usbprog = yes -o \
977 $build_rlink = yes -o $build_armjtagew = yes
978 then
979 AC_CHECK_HEADERS([usb.h],[],
980 [AC_MSG_ERROR([usb.h is required to build some OpenOCD driver(s)])])
981 fi
982
983 AM_CONDITIONAL(RELEASE, test $build_release = yes)
984 AM_CONDITIONAL(PARPORT, test $build_parport = yes)
985 AM_CONDITIONAL(DUMMY, test $build_dummy = yes)
986 AM_CONDITIONAL(GIVEIO, test x$parport_use_giveio = xyes)
987 AM_CONDITIONAL(EP93XX, test $build_ep93xx = yes)
988 AM_CONDITIONAL(ECOSBOARD, test $build_ecosboard = yes)
989 AM_CONDITIONAL(ZY1000, test $build_zy1000 = yes)
990 AM_CONDITIONAL(IOUTIL, test $build_ioutil = yes)
991 AM_CONDITIONAL(HTTPD, test $build_httpd = yes)
992 AM_CONDITIONAL(AT91RM9200, test $build_at91rm9200 = yes)
993 AM_CONDITIONAL(BITBANG, test $build_bitbang = yes)
994 AM_CONDITIONAL(FT2232_LIBFTDI, test $build_ft2232_libftdi = yes)
995 AM_CONDITIONAL(FT2232_DRIVER, test $build_ft2232_ftd2xx = yes -o $build_ft2232_libftdi = yes)
996 AM_CONDITIONAL(AMTJTAGACCEL, test $build_amtjtagaccel = yes)
997 AM_CONDITIONAL(GW16012, test $build_gw16012 = yes)
998 AM_CONDITIONAL(PRESTO_LIBFTDI, test $build_presto_libftdi = yes)
999 AM_CONDITIONAL(PRESTO_DRIVER, test $build_presto_ftd2xx = yes -o $build_presto_libftdi = yes)
1000 AM_CONDITIONAL(USBPROG, test $build_usbprog = yes)
1001 AM_CONDITIONAL(OOCD_TRACE, test $build_oocd_trace = yes)
1002 AM_CONDITIONAL(JLINK, test $build_jlink = yes)
1003 AM_CONDITIONAL(VSLLINK, test $build_vsllink = yes)
1004 AM_CONDITIONAL(RLINK, test $build_rlink = yes)
1005 AM_CONDITIONAL(ARMJTAGEW, test $build_armjtagew = yes)
1006 AM_CONDITIONAL(IS_CYGWIN, test $is_cygwin = yes)
1007 AM_CONDITIONAL(IS_MINGW, test $is_mingw = yes)
1008 AM_CONDITIONAL(IS_WIN32, test $is_win32 = yes)
1009 AM_CONDITIONAL(IS_DARWIN, test $is_darwin = yes)
1010 AM_CONDITIONAL(BITQ, test $build_bitq = yes)
1011
1012 AM_CONDITIONAL(MINIDRIVER, test $build_minidriver = yes)
1013 AM_CONDITIONAL(MINIDRIVER_DUMMY, test $build_minidriver_dummy = yes)
1014
1015 # Look for environ alternatives. Possibility #1: is environ in unistd.h or stdlib.h?
1016 AC_MSG_CHECKING([for environ in unistd.h and stdlib.h])
1017 AC_COMPILE_IFELSE([
1018 #define _GNU_SOURCE
1019 #include <unistd.h>
1020 #include <stdlib.h>
1021 int main(int argc, char **argv) { char **ep = environ; }
1022 ], [
1023 AC_MSG_RESULT([yes])
1024 has_environ=yes
1025 ], [
1026 AC_MSG_RESULT([no])
1027
1028 # Possibility #2: can environ be found in an available library?
1029 AC_MSG_CHECKING([for extern environ])
1030 AC_LINK_IFELSE([
1031 extern char **environ;
1032 int main(int argc, char **argv) { char **ep = environ; }
1033 ], [
1034 AC_DEFINE(NEED_ENVIRON_EXTERN, [1], [Must declare 'environ' to use it.])
1035 has_environ=yes
1036 ], [
1037 has_environ=no
1038 ])
1039 AC_MSG_RESULT([${has_environ}])
1040 ])
1041
1042 if test "${has_environ}" != "yes" ; then
1043 AC_MSG_FAILURE([Could not find 'environ' in unistd.h or available libraries.])
1044 fi
1045
1046 AC_DEFINE([_GNU_SOURCE],[1],[Use GNU C library extensions (e.g. stdndup).])
1047
1048 # set default gcc warnings
1049 GCC_WARNINGS="-Wall -Wstrict-prototypes -Wformat-security"
1050 if test "${gcc_wextra}" = yes; then
1051 GCC_WARNINGS="${GCC_WARNINGS} -Wextra -Wno-unused-parameter"
1052 GCC_WARNINGS="${GCC_WARNINGS} -Wbad-function-cast"
1053 GCC_WARNINGS="${GCC_WARNINGS} -Wcast-align"
1054 GCC_WARNINGS="${GCC_WARNINGS} -Wredundant-decls"
1055 fi
1056 if test "${gcc_werror}" = yes; then
1057 GCC_WARNINGS="${GCC_WARNINGS} -Werror"
1058 fi
1059
1060 # overide default gcc cflags
1061 if test $gcc_warnings = yes; then
1062 CFLAGS="$CFLAGS $GCC_WARNINGS"
1063 fi
1064
1065 # Setup for compiling build tools
1066 AC_MSG_CHECKING([for a C compiler for build tools])
1067 if test $cross_compiling = yes; then
1068 AC_CHECK_PROGS(CC_FOR_BUILD, gcc cc)
1069 CFLAGS_FOR_BUILD="-g -O2 $GCC_WARNINGS"
1070 else
1071 CC_FOR_BUILD=$CC
1072 CFLAGS_FOR_BUILD=$CFLAGS
1073 fi
1074
1075 AC_MSG_RESULT([$CC_FOR_BUILD])
1076 AC_SUBST(CC_FOR_BUILD)
1077 AC_SUBST(CFLAGS_FOR_BUILD)
1078
1079 AC_MSG_CHECKING([for suffix of executable build tools])
1080 if test $cross_compiling = yes; then
1081 cat >conftest.c <<\_______EOF
1082 int main ()
1083 {
1084 exit (0);
1085 }
1086 _______EOF
1087 for i in .exe ""; do
1088 compile="$CC_FOR_BUILD conftest.c -o conftest$i"
1089 if AC_TRY_EVAL(compile); then
1090 if (./conftest) 2>&AC_FD_CC; then
1091 EXEEXT_FOR_BUILD=$i
1092 break
1093 fi
1094 fi
1095 done
1096 rm -f conftest*
1097 if test "${EXEEXT_FOR_BUILD+set}" != set; then
1098 AC_MSG_ERROR([Cannot determine suffix of executable build tools])
1099 fi
1100 else
1101 EXEEXT_FOR_BUILD=$EXEEXT
1102 fi
1103 AC_MSG_RESULT([$EXEEXT_FOR_BUILD])
1104 AC_SUBST(EXEEXT_FOR_BUILD)
1105
1106 AC_OUTPUT(dnl
1107 Makefile dnl
1108 src/Makefile dnl
1109 src/helper/Makefile dnl
1110 src/jtag/Makefile dnl
1111 src/xsvf/Makefile dnl
1112 src/svf/Makefile dnl
1113 src/target/Makefile dnl
1114 src/server/Makefile dnl
1115 src/flash/Makefile dnl
1116 src/pld/Makefile dnl
1117 doc/Makefile dnl
1118 )

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)