Use C89/C99/C++ compliant boolean types
[openocd.git] / configure.in
1 AC_PREREQ(2.59)
2 AC_INIT(configure.in)
3
4 AC_CANONICAL_HOST
5
6 AC_SEARCH_LIBS([ioperm], [ioperm])
7 AC_SEARCH_LIBS([dlopen], [dl])
8
9 AC_CHECK_HEADERS(jtag_minidriver.h)
10 AC_CHECK_HEADERS(sys/param.h)
11 AC_CHECK_HEADERS(sys/time.h)
12 AC_CHECK_HEADERS(elf.h)
13 AC_CHECK_HEADERS(strings.h)
14 AC_CHECK_HEADERS(stdbool.h)
15
16 AC_HEADER_TIME
17
18 AC_C_BIGENDIAN
19
20 AC_CHECK_FUNCS(strndup)
21 AC_CHECK_FUNCS(strnlen)
22 AC_CHECK_FUNCS(gettimeofday)
23 AC_CHECK_FUNCS(usleep)
24 AC_CHECK_FUNCS(vasprintf)
25
26 build_bitbang=no
27 build_bitq=no
28 is_cygwin=no
29 is_mingw=no
30 is_win32=no
31 build_release=yes
32
33 AC_ARG_ENABLE(release,
34 AS_HELP_STRING([--enable-release], [Enable Release Build, default no]),
35 [build_release=$enableval], [build_release=no])
36
37 if test $cross_compiling = no; then
38 if test $build_release = no; then
39 # check we can find guess-rev.sh
40 AC_CHECK_FILE("$srcdir/guess-rev.sh", build_release=no, build_release=yes)
41 fi
42 fi
43
44 # We are not *ALWAYS* being installed in the standard place.
45 # We may be installed in a "tool-build" specific location.
46 # Normally with other packages - as part of a tool distro.
47 # Thus - we should search that 'libdir' also.
48 #
49 # And - if we are being installed there - the odds are
50 # The libraries unique to what we are are there too.
51 #
52
53 # Expand nd deal with NONE - just like configure will do later
54 OCDprefix=$prefix
55 OCDxprefix=$exec_prefix
56 test x"$OCDprefix" = xNONE && OCDprefix=$ac_default_prefix
57 # Let make expand exec_prefix.
58 test x"$OCDxprefix" = xNONE && OCDxprefix="$OCDprefix"
59
60 # what matters is the "exec-prefix"
61 if test "$OCDxprefix" != "$ac_default_prefix"
62 then
63 # We are installing in a non-standard place
64 # Nonstandard --prefix and/or --exec-prefix
65 # We have an override of some sort.
66 # use build specific install library dir
67
68 LDFLAGS="$LDFLAGS -L$OCDxprefix/lib"
69 # RPATH becomes an issue on Linux only
70 if test $host_os = linux-gnu || test $host_os = linux ; then
71 LDFLAGS="$LDFLAGS -Wl,-rpath,$OCDxprefix/lib"
72 fi
73 # The "INCDIR" is also usable
74 CFLAGS="$CFLAGS -I$includedir"
75 fi
76
77 AC_ARG_WITH(ftd2xx,
78 AS_HELP_STRING([--with-ftd2xx=<PATH>],[This option has been removed.]),
79 [
80 # Option Given.
81 cat << __EOF__
82
83 The option: --with-ftd2xx=<PATH> has been removed replaced.
84 On Linux, the new option is:
85
86 --with-ftd2xx-linux-tardir=/path/to/files
87
88 Where <path> is the path the the directory where the "tar.gz" file
89 from FTDICHIP.COM was unpacked, for example:
90
91 --with-ftd2xx-linux-tardir=/home/duane/libftd2xx-linux-tardir=/home/duane/libftd2xx0.4.16
92
93 On Cygwin/MingW32, the new option is:
94
95 --with-ftd2xx-win32-zipdir=/path/to/files
96
97 Where <path> is the path to the directory where the "zip" file from
98 FTDICHIP.COM was unpacked, for example:
99
100 --with-ftd2xx-win32-zipdir=/home/duane/ftd2xx.cdm.files
101
102 __EOF__
103
104 AC_MSG_ERROR([Sorry Cannot continue])
105 ],
106 [
107 # Option not given
108 true
109 ]
110 )
111
112 #========================================
113 # FTD2XXX support comes in 3 forms.
114 # (1) win32 - via a zip file
115 # (2) linux - via a tar file
116 # (3) linux/cygwin/mingw - via libftdi
117 #
118 # In case (1) and (2) we need to know where the package was unpacked.
119
120 AC_ARG_WITH(ftd2xx-win32-zipdir,
121 AS_HELP_STRING([--with-ftd2xx-win32-zipdir],[Where (CYGWIN/MINGW) the zip file from ftdichip.com was unpacked <default=search>]),
122 [
123 # option present
124 if test -d $with_ftd2xx_win32_zipdir
125 then
126 with_ftd2xx_win32_zipdir=`cd $with_ftd2xx_win32_zipdir && pwd`
127 AC_MSG_NOTICE([Using: ftdichip.com library: $with_ftd2xx_win32_zipdir])
128 else
129 AC_MSG_ERROR([Parameter to --with-ftd2xx-win32-zipdir is not a dir: $with_ftd2xx_win32_zipdir])
130 fi
131 ],
132 [
133 # not given
134 true
135 ]
136 )
137
138 AC_ARG_WITH(ftd2xx-linux-tardir,
139 AS_HELP_STRING([--with-ftd2xx-linux-tardir], [Where (Linux/Unix) the tar file from ftdichip.com was unpacked <default=search>]),
140 [
141 # Option present
142 if test $is_win32 = yes ; then
143 AC_MSG_ERROR([The option: --with-ftd2xx-linux-tardir is only usable on linux])
144 fi
145 if test -d $with_ftd2xx_linux_tardir
146 then
147 with_ftd2xx_linux_tardir=`cd $with_ftd2xx_linux_tardir && pwd`
148 AC_MSG_NOTICE([Using: ftdichip.com library: $with_ftd2xx_linux_tardir])
149 else
150 AC_MSG_ERROR([Parameter to --with-ftd2xx-linux-tardir is not a dir: $with_ftd2xx_linux_tardir])
151 fi
152 ],
153 [
154 # Not given
155 true
156 ]
157 )
158
159 AC_ARG_WITH(ftd2xx-lib,
160 AS_HELP_STRING([--with-ftd2xx-lib], [Use static or shared ftd2xx libs on default static]),
161 [
162 case "$withval" in
163 static)
164 with_ftd2xx_lib=$withval
165 ;;
166 shared)
167 with_ftd2xx_lib=$withval
168 ;;
169 *)
170 AC_MSG_ERROR([Option: --with-ftd2xx-lib=static or --with-ftd2xx-lib=shared not, $withval])
171 ;;
172 esac
173 ],
174 [
175 # Default is static - it is simpler :-(
176 with_ftd2xx_lib=static
177 ]
178 )
179
180 AC_ARG_ENABLE(gccwarnings,
181 AS_HELP_STRING([--enable-gccwarnings], [Enable compiler warnings, default yes]),
182 [gcc_warnings=$enableval], [gcc_warnings=yes])
183
184 AC_ARG_ENABLE(parport,
185 AS_HELP_STRING([--enable-parport], [Enable building the pc parallel port driver]),
186 [build_parport=$enableval], [build_parport=no])
187
188 AC_ARG_ENABLE(dummy,
189 AS_HELP_STRING([--enable-dummy], [Enable building the dummy port driver]),
190 [build_dummy=$enableval], [build_dummy=no])
191
192 case "${host_cpu}" in
193 i?86|x86*)
194 AC_ARG_ENABLE(parport_ppdev,
195 AS_HELP_STRING([--enable-parport_ppdev], [Enable use of ppdev (/dev/parportN) for parport]),
196 [parport_use_ppdev=$enableval], [parport_use_ppdev=no])
197 ;;
198 *)
199 parport_use_ppdev=yes
200 ;;
201 esac
202
203 AC_ARG_ENABLE(ft2232_libftdi,
204 AS_HELP_STRING([--enable-ft2232_libftdi], [Enable building support for FT2232 based devices using the libftdi driver, opensource alternate of FTD2XX]),
205 [build_ft2232_libftdi=$enableval], [build_ft2232_libftdi=no])
206
207 AC_ARG_ENABLE(ft2232_ftd2xx,
208 AS_HELP_STRING([--enable-ft2232_ftd2xx], [Enable building support for FT2232 based devices using the FTD2XX driver from ftdichip.com]),
209 [build_ft2232_ftd2xx=$enableval], [build_ft2232_ftd2xx=no])
210
211 AC_ARG_ENABLE(amtjtagaccel,
212 AS_HELP_STRING([--enable-amtjtagaccel], [Enable building the Amontec JTAG-Accelerator driver]),
213 [build_amtjtagaccel=$enableval], [build_amtjtagaccel=no])
214
215 AC_ARG_ENABLE(ecosboard,
216 AS_HELP_STRING([--enable-ecosboard], [Enable building support for eCosBoard based JTAG debugger]),
217 [build_ecosboard=$enableval], [build_ecosboard=no])
218
219 AC_ARG_ENABLE(ioutil,
220 AS_HELP_STRING([--enable-ioutil], [Enable ioutil functions - useful for standalone OpenOCD implementations]),
221 [build_ioutil=$enableval], [build_ioutil=no])
222
223 AC_ARG_ENABLE(httpd,
224 AS_HELP_STRING([--enable-httpd], [Enable builtin httpd server - useful for standalone OpenOCD implementations]),
225 [build_httpd=$enableval], [build_httpd=no])
226
227 case "${host_cpu}" in
228 arm*)
229 AC_ARG_ENABLE(ep93xx,
230 AS_HELP_STRING([--enable-ep93xx], [Enable building support for EP93xx based SBCs]),
231 [build_ep93xx=$enableval], [build_ep93xx=no])
232
233 AC_ARG_ENABLE(at91rm9200,
234 AS_HELP_STRING([--enable-at91rm9200], [Enable building support for AT91RM9200 based SBCs]),
235 [build_at91rm9200=$enableval], [build_at91rm9200=no])
236 ;;
237
238 *)
239 build_ep93xx=no
240 build_at91rm9200=no
241 ;;
242 esac
243
244 AC_ARG_ENABLE(gw16012,
245 AS_HELP_STRING([--enable-gw16012], [Enable building support for the Gateworks GW16012 JTAG Programmer]),
246 [build_gw16012=$enableval], [build_gw16012=no])
247
248 AC_ARG_ENABLE(presto_libftdi,
249 AS_HELP_STRING([--enable-presto_libftdi], [Enable building support for ASIX Presto Programmer using the libftdi driver]),
250 [build_presto_libftdi=$enableval], [build_presto_libftdi=no])
251
252 AC_ARG_ENABLE(presto_ftd2xx,
253 AS_HELP_STRING([--enable-presto_ftd2xx], [Enable building support for ASIX Presto Programmer using the FTD2XX driver]),
254 [build_presto_ftd2xx=$enableval], [build_presto_ftd2xx=no])
255
256 AC_ARG_ENABLE(usbprog,
257 AS_HELP_STRING([--enable-usbprog], [Enable building support for the usbprog JTAG Programmer]),
258 [build_usbprog=$enableval], [build_usbprog=no])
259
260 AC_ARG_ENABLE(oocd_trace,
261 AS_HELP_STRING([--enable-oocd_trace], [Enable building support for the OpenOCD+trace ETM capture device]),
262 [build_oocd_trace=$enableval], [build_oocd_trace=no])
263
264 AC_ARG_ENABLE(jlink,
265 AS_HELP_STRING([--enable-jlink], [Enable building support for the Segger J-Link JTAG Programmer]),
266 [build_jlink=$enableval], [build_jlink=no])
267
268 AC_ARG_ENABLE(vsllink,
269 AS_HELP_STRING([--enable-vsllink], [Enable building support for the Versaloon-Link JTAG Programmer]),
270 [build_vsllink=$enableval], [build_vsllink=no])
271
272 AC_ARG_ENABLE(rlink,
273 AS_HELP_STRING([--enable-rlink], [Enable building support for the Raisonance RLink JTAG Programmer]),
274 [build_rlink=$enableval], [build_rlink=no])
275
276 case $host in
277 *-cygwin*)
278 is_win32=yes
279
280 AC_ARG_ENABLE(parport_giveio,
281 AS_HELP_STRING([--enable-parport_giveio], [Enable use of giveio for parport instead of ioperm]),
282 [parport_use_giveio=$enableval], [parport_use_giveio=no])
283
284 AC_COMPILE_IFELSE(AC_LANG_PROGRAM([],[return __MINGW32__;]),[is_mingw=yes],[is_mingw=no])
285 if test $is_mingw = yes; then
286 AC_DEFINE(IS_MINGW, 1, [1 if building for MinGW.])
287 parport_use_giveio=yes
288 is_cygwin=no
289 else
290 is_cygwin=yes
291 AC_DEFINE(IS_CYGWIN, 1, [1 if building for Cygwin.])
292 fi
293
294 AC_DEFINE(IS_WIN32, 1, [1 if building for Win32.])
295 ;;
296 *-mingw*)
297 is_mingw=yes
298 is_win32=yes
299
300 parport_use_giveio=yes
301
302 AC_DEFINE(IS_MINGW, 1, [1 if building for MinGW.])
303 AC_DEFINE(IS_WIN32, 1, [1 if building for Win32.])
304 ;;
305 *)
306 parport_use_giveio=no
307 AC_DEFINE(IS_CYGWIN, 0, [0 if not building for Cygwin.])
308 AC_DEFINE(IS_WIN32, 0, [0 if not building for Win32.])
309 ;;
310 esac
311
312 if test $build_parport = yes; then
313 build_bitbang=yes
314 AC_DEFINE(BUILD_PARPORT, 1, [1 if you want parport.])
315 else
316 AC_DEFINE(BUILD_PARPORT, 0, [0 if you don't want parport.])
317 fi
318
319 if test $build_dummy = yes; then
320 build_bitbang=yes
321 AC_DEFINE(BUILD_DUMMY, 1, [1 if you want dummy driver.])
322 else
323 AC_DEFINE(BUILD_DUMMY, 0, [0 if you don't want dummy driver.])
324 fi
325
326 if test $build_ep93xx = yes; then
327 build_bitbang=yes
328 AC_DEFINE(BUILD_EP93XX, 1, [1 if you want ep93xx.])
329 else
330 AC_DEFINE(BUILD_EP93XX, 0, [0 if you don't want ep93xx.])
331 fi
332
333 if test $build_ecosboard = yes; then
334 build_bitbang=yes
335 AC_DEFINE(BUILD_ECOSBOARD, 1, [1 if you want eCosBoard.])
336 else
337 AC_DEFINE(BUILD_ECOSBOARD, 0, [0 if you don't want eCosBoard.])
338 fi
339
340 if test $build_ioutil = yes; then
341 AC_DEFINE(BUILD_IOUTIL, 1, [1 if you want ioutils.])
342 else
343 AC_DEFINE(BUILD_IOUTIL, 0, [0 if you don't want ioutils.])
344 fi
345
346 if test $build_httpd = yes; then
347 AC_DEFINE(BUILD_HTTPD, 1, [1 if you want httpd.])
348 else
349 AC_DEFINE(BUILD_HTTPD, 0, [0 if you don't want httpd.])
350 fi
351
352 if test $build_at91rm9200 = yes; then
353 build_bitbang=yes
354 AC_DEFINE(BUILD_AT91RM9200, 1, [1 if you want at91rm9200.])
355 else
356 AC_DEFINE(BUILD_AT91RM9200, 0, [0 if you don't want at91rm9200.])
357 fi
358
359 if test $parport_use_ppdev = yes; then
360 AC_DEFINE(PARPORT_USE_PPDEV, 1, [1 if you want parport to use ppdev.])
361 else
362 AC_DEFINE(PARPORT_USE_PPDEV, 0, [0 if you don't want parport to use ppdev.])
363 fi
364
365 if test $parport_use_giveio = yes; then
366 AC_DEFINE(PARPORT_USE_GIVEIO, 1, [1 if you want parport to use giveio.])
367 else
368 AC_DEFINE(PARPORT_USE_GIVEIO, 0, [0 if you don't want parport to use giveio.])
369 fi
370
371 if test $build_bitbang = yes; then
372 AC_DEFINE(BUILD_BITBANG, 1, [1 if you want a bitbang interface.])
373 else
374 AC_DEFINE(BUILD_BITBANG, 0, [0 if you don't want a bitbang interface.])
375 fi
376
377 if test $build_ft2232_libftdi = yes; then
378 AC_DEFINE(BUILD_FT2232_LIBFTDI, 1, [1 if you want libftdi ft2232.])
379 else
380 AC_DEFINE(BUILD_FT2232_LIBFTDI, 0, [0 if you don't want libftdi ft2232.])
381 fi
382
383 if test $build_ft2232_ftd2xx = yes; then
384 AC_DEFINE(BUILD_FT2232_FTD2XX, 1, [1 if you want ftd2xx ft2232.])
385 else
386 AC_DEFINE(BUILD_FT2232_FTD2XX, 0, [0 if you don't want ftd2xx ft2232.])
387 fi
388
389 if test $build_amtjtagaccel = yes; then
390 AC_DEFINE(BUILD_AMTJTAGACCEL, 1, [1 if you want the Amontec JTAG-Accelerator driver.])
391 else
392 AC_DEFINE(BUILD_AMTJTAGACCEL, 0, [0 if you don't want the Amontec JTAG-Accelerator driver.])
393 fi
394
395 if test $build_gw16012 = yes; then
396 AC_DEFINE(BUILD_GW16012, 1, [1 if you want the Gateworks GW16012 driver.])
397 else
398 AC_DEFINE(BUILD_GW16012, 0, [0 if you don't want the Gateworks GW16012 driver.])
399 fi
400
401 if test $build_presto_libftdi = yes; then
402 build_bitq=yes
403 AC_DEFINE(BUILD_PRESTO_LIBFTDI, 1, [1 if you want the ASIX PRESTO driver using libftdi.])
404 else
405 AC_DEFINE(BUILD_PRESTO_LIBFTDI, 0, [0 if you don't want the ASIX PRESTO driver using libftdi.])
406 fi
407
408 if test $build_presto_ftd2xx = yes; then
409 build_bitq=yes
410 AC_DEFINE(BUILD_PRESTO_FTD2XX, 1, [1 if you want the ASIX PRESTO driver using FTD2XX.])
411 else
412 AC_DEFINE(BUILD_PRESTO_FTD2XX, 0, [0 if you don't want the ASIX PRESTO driver using FTD2XX.])
413 fi
414
415 if test $build_bitq = yes; then
416 AC_DEFINE(BUILD_BITQ, 1, [1 if you want a bitq interface.])
417 else
418 AC_DEFINE(BUILD_BITQ, 0, [0 if you don't want a bitq interface.])
419 fi
420
421 if test $build_usbprog = yes; then
422 AC_DEFINE(BUILD_USBPROG, 1, [1 if you want the usbprog JTAG driver.])
423 else
424 AC_DEFINE(BUILD_USBPROG, 0, [0 if you don't want the usbprog JTAG driver.])
425 fi
426
427 if test $build_oocd_trace = yes; then
428 AC_DEFINE(BUILD_OOCD_TRACE, 1, [1 if you want the OpenOCD+trace ETM capture driver.])
429 else
430 AC_DEFINE(BUILD_OOCD_TRACE, 0, [0 if you don't want the OpenOCD+trace ETM capture driver.])
431 fi
432
433 if test $build_jlink = yes; then
434 AC_DEFINE(BUILD_JLINK, 1, [1 if you want the J-Link JTAG driver.])
435 else
436 AC_DEFINE(BUILD_JLINK, 0, [0 if you don't want the J-Link JTAG driver.])
437 fi
438
439 if test $build_vsllink = yes; then
440 AC_DEFINE(BUILD_VSLLINK, 1, [1 if you want the Versaloon-Link JTAG driver.])
441 else
442 AC_DEFINE(BUILD_VSLLINK, 0, [0 if you don't want the Versaloon-Link JTAG driver.])
443 fi
444
445 if test $build_rlink = yes; then
446 AC_DEFINE(BUILD_RLINK, 1, [1 if you want the RLink JTAG driver.])
447 else
448 AC_DEFINE(BUILD_RLINK, 0, [0 if you don't want the RLink JTAG driver.])
449 fi
450
451 #-- Deal with MingW/Cygwin FTD2XX issues
452
453 if test $is_win32 = yes; then
454 if test "${with_ftd2xx_linux_tardir+set}" = set
455 then
456 AC_MSG_ERROR([The option: with_ftd2xx_linux_tardir is for LINUX only.])
457 fi
458
459 if test $build_ft2232_ftd2xx = yes ; then
460 AC_MSG_CHECKING([for ftd2xx.lib exists (win32)])
461
462 # if we are given a zipdir...
463 if test "${with_ftd2xx_win32_zipdir+set}" = set
464 then
465 # Set the CFLAGS for "ftd2xx.h"
466 f=$with_ftd2xx_win32_zipdir/ftd2xx.h
467 if test ! -f $f ; then
468 AC_MSG_ERROR([File: $f cannot be found])
469 fi
470 CFLAGS="$CFLAGS -I$with_ftd2xx_win32_zipdir"
471
472 # And calculate the LDFLAGS for the machine
473 case "$host_cpu" in
474 i?86|x86_*)
475 LDFLAGS="$LDFLAGS -L$with_ftd2xx_win32_zipdir/i386"
476 LIBS="$LIBS -lftd2xx"
477 f=$with_ftd2xx_win32_zipdir/i386/ftd2xx.lib
478 ;;
479 amd64)
480 LDFLAGS="$LDFLAGS -L$with_ftd2xx_win32_zipdir/amd64"
481 LIBS="$LIBS -lftd2xx"
482 f=$with_ftd2xx_win32_zipdir/amd64/ftd2xx.lib
483 ;;
484 *)
485 AC_MSG_ERROR([Unknown Win32 host cpu: $host_cpu])
486 ;;
487 esac
488 if test ! -f $f ; then
489 AC_MSG_ERROR([Library: $f not found])
490 fi
491 else
492 LIBS="$LIBS -lftd2xx"
493 AC_MSG_WARN([ASSUMPTION: The (win32) FTDICHIP.COM files: ftd2xx.h and ftd2xx.lib are in a proper place])
494 fi
495 fi
496 fi
497
498 if test $is_win32 = no; then
499
500 if test "${with_ftd2xx_win32_zipdir+set}" = set
501 then
502 AC_MSG_ERROR([The option: --with-ftd2xx-win32-zipdir is for win32 only])
503 fi
504
505 if test $build_ft2232_ftd2xx = yes ; then
506 AC_MSG_CHECKING([for libftd2xx.a (linux)])
507 # Must be linux -
508 # Cause FTDICHIP does not supply a MAC-OS version
509 if test $host_os != linux-gnu && test $host_os != linux ; then
510 AC_MSG_ERROR([The (linux) ftd2xx library from FTDICHIP.com is linux only. Try --enable-ft2232-libftdi instead])
511 fi
512 # Are we given a TAR directory?
513 if test "${with_ftd2xx_linux_tardir+set}" = set
514 then
515 # The .H file is simple..
516 f=$with_ftd2xx_linux_tardir/ftd2xx.h
517 if test ! -f $f ; then
518 AC_MSG_ERROR([Option: --with-ftd2xx-linux-tardir appears wrong, cannot find: $f])
519 fi
520 CFLAGS="$CFLAGS -I$with_ftd2xx_linux_tardir"
521 if test $with_ftd2xx_lib = shared
522 then
523 LDFLAGS="$LDFLAGS -L$with_ftd2xx_linux_tardir"
524 LIBS="$LIBS -lftd2xx"
525 AC_MSG_RESULT([ Assuming: -L$with_ftd2xx_linux_tardir -lftd2xx])
526 else
527 # Test #1 - Future proof - if/when ftdichip fixes their distro.
528 # Try it with the simple ".a" suffix.
529 f=$with_ftd2xx_linux_tardir/static_lib/libftd2xx.a
530 if test -f $f ; then
531 # Yea we are done
532 LDFLAGS="$LDFLAGS -L$with_ftd2xx_linux_tardir/static_lib"
533 LIBS="$LIBS -lftd2xx"
534 else
535 # Test Number2.
536 # Grr.. perhaps it exists as a version number?
537 f="$with_ftd2xx_linux_tardir/static_lib/libftd2xx.a.*.*.*"
538 count=`ls $f | wc -l`
539 if test $count -gt 1 ; then
540 AC_MSG_ERROR([Multiple libftd2xx.a files found in: $with_ftd2xx_linux_tardir/static_lib sorry cannot handle this yet])
541 fi
542 if test $count -ne 1 ; then
543 AC_MSG_ERROR([Not found: $f, option: --with-ftd2xx-linux-tardir appears to be wrong])
544 fi
545 # Because the "-l" rules do not understand version numbers...
546 # we will just stuff the absolute path onto the LIBS variable
547 f=`ls $f`
548 #
549 LIBS="$LIBS $f -lpthread"
550 # No need to bother with LDFLAGS...
551 fi
552 AC_MSG_RESULT([Found: $f])
553 fi
554 else
555 LIBS="$LIBS -lftd2xx"
556 AC_MSG_RESULT([Assumed: installed])
557 AC_MSG_WARN([The (linux) FTDICHIP.COM files ftd2xx.h and libftd2xx.so are assumed to be in a proper place])
558 fi
559 fi
560 fi
561
562 if test $build_ft2232_ftd2xx = yes; then
563
564 # Before we go any further - make sure we can *BUILD* and *RUN*
565 # a simple app with the "ftd2xx.lib" file - in what ever form we where given
566 # We should be able to compile, link and run this test program now
567 AC_MSG_CHECKING([Test: Build & Link with ftd2xx])
568
569 #
570 # Save the LDFLAGS for later..
571 LDFLAGS_SAVE=$LDFLAGS
572 CFLAGS_SAVE=$CFLAGS
573 _LDFLAGS=`eval echo $LDFLAGS`
574 _CFLAGS=`eval echo $CFLAGS`
575 LDFLAGS=$_LDFLAGS
576 CFLAGS=$_CFLAGS
577 AC_RUN_IFELSE(
578 [
579 #include "confdefs.h"
580 #if IS_WIN32
581 #include "windows.h"
582 #endif
583 #include <stdio.h>
584 #include <ftd2xx.h>
585
586 int
587 main( int argc, char **argv )
588 {
589 DWORD x;
590 FT_GetLibraryVersion( &x );
591 return 0;
592 }
593 ], [ AC_MSG_RESULT([Success!])] , [ AC_MSG_ERROR([Cannot build & run test program using ftd2xx.lib]) ] )
594 LDFLAGS=$LDFLAGS_SAVE
595 CFLAGS=$CFLAGS_SAVE
596 fi
597
598 if test $build_ft2232_libftdi = yes ; then
599 # We assume: the package is preinstalled in the proper place
600 # these present as 2 libraries..
601 LIBS="$LIBS -lftdi -lusb"
602 #
603 # Try to build a small program.
604 AC_MSG_CHECKING([Build & Link with libftdi...])
605
606 LDFLAGS_SAVE=$LDFLAGS
607 CFLAGS_SAVE=$CFLAGS
608 _LDFLAGS=`eval echo $LDFLAGS`
609 _CFLAGS=`eval echo $CFLAGS`
610 LDFLAGS=$_LDFLAGS
611 CFLAGS=$_CFLAGS
612
613 AC_RUN_IFELSE(
614 [
615 #include <stdio.h>
616 #include <ftdi.h>
617
618 int
619 main( int argc, char **argv )
620 {
621 struct ftdi_context *p;
622 p = ftdi_new();
623 if( p != NULL ){
624 return 0;
625 } else {
626 fprintf( stderr, "calling ftdi_new() failed\n");
627 return 1;
628 }
629 }
630 ]
631 ,
632 [ AC_MSG_RESULT([Success]) ]
633 ,
634 [ AC_MSG_ERROR([Cannot build & run test program using libftdi]) ] )
635 # Restore the 'unexpanded ldflags'
636 LDFLAGS=$LDFLAGS_SAVE
637 CFLAGS=$CFLAGS_SAVE
638 fi
639
640 AM_CONFIG_HEADER(config.h)
641 AM_INIT_AUTOMAKE(openocd, 1.0)
642
643 AM_CONDITIONAL(RELEASE, test $build_release = yes)
644 AM_CONDITIONAL(PARPORT, test $build_parport = yes)
645 AM_CONDITIONAL(DUMMY, test $build_dummy = yes)
646 AM_CONDITIONAL(GIVEIO, test $parport_use_giveio = yes)
647 AM_CONDITIONAL(EP93XX, test $build_ep93xx = yes)
648 AM_CONDITIONAL(ECOSBOARD, test $build_ecosboard = yes)
649 AM_CONDITIONAL(IOUTIL, test $build_ioutil = yes)
650 AM_CONDITIONAL(HTTPD, test $build_httpd = yes)
651 AM_CONDITIONAL(AT91RM9200, test $build_at91rm9200 = yes)
652 AM_CONDITIONAL(BITBANG, test $build_bitbang = yes)
653 AM_CONDITIONAL(FT2232_LIBFTDI, test $build_ft2232_libftdi = yes)
654 AM_CONDITIONAL(FT2232_FTD2XX, test $build_ft2232_ftd2xx = yes)
655 AM_CONDITIONAL(AMTJTAGACCEL, test $build_amtjtagaccel = yes)
656 AM_CONDITIONAL(GW16012, test $build_gw16012 = yes)
657 AM_CONDITIONAL(PRESTO_LIBFTDI, test $build_presto_libftdi = yes)
658 AM_CONDITIONAL(PRESTO_FTD2XX, test $build_presto_ftd2xx = yes)
659 AM_CONDITIONAL(USBPROG, test $build_usbprog = yes)
660 AM_CONDITIONAL(OOCD_TRACE, test $build_oocd_trace = yes)
661 AM_CONDITIONAL(JLINK, test $build_jlink = yes)
662 AM_CONDITIONAL(VSLLINK, test $build_vsllink = yes)
663 AM_CONDITIONAL(RLINK, test $build_rlink = yes)
664 AM_CONDITIONAL(IS_CYGWIN, test $is_cygwin = yes)
665 AM_CONDITIONAL(IS_MINGW, test $is_mingw = yes)
666 AM_CONDITIONAL(IS_WIN32, test $is_win32 = yes)
667 AM_CONDITIONAL(BITQ, test $build_bitq = yes)
668
669 AC_LANG_C
670 AC_PROG_CC
671 AC_PROG_RANLIB
672
673 # set default gcc warnings
674 GCC_WARNINGS="-Wall -Wstrict-prototypes"
675
676 # overide default gcc cflags
677 if test $gcc_warnings = yes; then
678 CFLAGS="$CFLAGS $GCC_WARNINGS"
679 fi
680
681 # Setup for compiling build tools
682 AC_MSG_CHECKING([for a C compiler for build tools])
683 if test $cross_compiling = yes; then
684 AC_CHECK_PROGS(CC_FOR_BUILD, gcc cc)
685 CFLAGS_FOR_BUILD="-g -O2 $GCC_WARNINGS"
686 else
687 CC_FOR_BUILD=$CC
688 CFLAGS_FOR_BUILD=$CFLAGS
689 fi
690
691 AC_MSG_RESULT([$CC_FOR_BUILD])
692 AC_SUBST(CC_FOR_BUILD)
693 AC_SUBST(CFLAGS_FOR_BUILD)
694
695 AC_MSG_CHECKING([for suffix of executable build tools])
696 if test $cross_compiling = yes; then
697 cat >conftest.c <<\_______EOF
698 int main ()
699 {
700 exit (0);
701 }
702 _______EOF
703 for i in .exe ""; do
704 compile="$CC_FOR_BUILD conftest.c -o conftest$i"
705 if AC_TRY_EVAL(compile); then
706 if (./conftest) 2>&AC_FD_CC; then
707 EXEEXT_FOR_BUILD=$i
708 break
709 fi
710 fi
711 done
712 rm -f conftest*
713 if test "${EXEEXT_FOR_BUILD+set}" != set; then
714 AC_MSG_ERROR([Cannot determine suffix of executable build tools])
715 fi
716 else
717 EXEEXT_FOR_BUILD=$EXEEXT
718 fi
719 AC_MSG_RESULT([$EXEEXT_FOR_BUILD])
720 AC_SUBST(EXEEXT_FOR_BUILD)
721
722 AC_OUTPUT(Makefile src/Makefile src/helper/Makefile src/jtag/Makefile src/xsvf/Makefile src/svf/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)