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