- docs patch from Thomas Kindler
[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.
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 AC_ARG_ENABLE(arm-jtag-ew,
277 AS_HELP_STRING([--enable-arm-jtag-ew], [Enable building support for the Olimex ARM-JTAG-EW Programmer]),
278 [build_armjtagew=$enableval], [build_armjtagew=no])
279
280 case $host in
281 *-cygwin*)
282 is_win32=yes
283
284 AC_ARG_ENABLE(parport_giveio,
285 AS_HELP_STRING([--enable-parport_giveio], [Enable use of giveio for parport instead of ioperm]),
286 [parport_use_giveio=$enableval], [parport_use_giveio=no])
287
288 AC_COMPILE_IFELSE(AC_LANG_PROGRAM([],[return __MINGW32__;]),[is_mingw=yes],[is_mingw=no])
289 if test $is_mingw = yes; then
290 AC_DEFINE(IS_MINGW, 1, [1 if building for MinGW.])
291 parport_use_giveio=yes
292 is_cygwin=no
293 else
294 is_cygwin=yes
295 AC_DEFINE(IS_CYGWIN, 1, [1 if building for Cygwin.])
296 fi
297
298 AC_DEFINE(IS_WIN32, 1, [1 if building for Win32.])
299 ;;
300 *-mingw*)
301 is_mingw=yes
302 is_win32=yes
303
304 parport_use_giveio=yes
305
306 AC_DEFINE(IS_MINGW, 1, [1 if building for MinGW.])
307 AC_DEFINE(IS_WIN32, 1, [1 if building for Win32.])
308 ;;
309 *)
310 parport_use_giveio=no
311 AC_DEFINE(IS_CYGWIN, 0, [0 if not building for Cygwin.])
312 AC_DEFINE(IS_WIN32, 0, [0 if not building for Win32.])
313 ;;
314 esac
315
316 if test $build_parport = yes; then
317 build_bitbang=yes
318 AC_DEFINE(BUILD_PARPORT, 1, [1 if you want parport.])
319 else
320 AC_DEFINE(BUILD_PARPORT, 0, [0 if you don't want parport.])
321 fi
322
323 if test $build_dummy = yes; then
324 build_bitbang=yes
325 AC_DEFINE(BUILD_DUMMY, 1, [1 if you want dummy driver.])
326 else
327 AC_DEFINE(BUILD_DUMMY, 0, [0 if you don't want dummy driver.])
328 fi
329
330 if test $build_ep93xx = yes; then
331 build_bitbang=yes
332 AC_DEFINE(BUILD_EP93XX, 1, [1 if you want ep93xx.])
333 else
334 AC_DEFINE(BUILD_EP93XX, 0, [0 if you don't want ep93xx.])
335 fi
336
337 if test $build_ecosboard = yes; then
338 build_bitbang=yes
339 AC_DEFINE(BUILD_ECOSBOARD, 1, [1 if you want eCosBoard.])
340 else
341 AC_DEFINE(BUILD_ECOSBOARD, 0, [0 if you don't want eCosBoard.])
342 fi
343
344 if test $build_ioutil = yes; then
345 AC_DEFINE(BUILD_IOUTIL, 1, [1 if you want ioutils.])
346 else
347 AC_DEFINE(BUILD_IOUTIL, 0, [0 if you don't want ioutils.])
348 fi
349
350 if test $build_httpd = yes; then
351 AC_DEFINE(BUILD_HTTPD, 1, [1 if you want httpd.])
352 else
353 AC_DEFINE(BUILD_HTTPD, 0, [0 if you don't want httpd.])
354 fi
355
356 if test $build_at91rm9200 = yes; then
357 build_bitbang=yes
358 AC_DEFINE(BUILD_AT91RM9200, 1, [1 if you want at91rm9200.])
359 else
360 AC_DEFINE(BUILD_AT91RM9200, 0, [0 if you don't want at91rm9200.])
361 fi
362
363 if test $parport_use_ppdev = yes; then
364 AC_DEFINE(PARPORT_USE_PPDEV, 1, [1 if you want parport to use ppdev.])
365 else
366 AC_DEFINE(PARPORT_USE_PPDEV, 0, [0 if you don't want parport to use ppdev.])
367 fi
368
369 if test $parport_use_giveio = yes; then
370 AC_DEFINE(PARPORT_USE_GIVEIO, 1, [1 if you want parport to use giveio.])
371 else
372 AC_DEFINE(PARPORT_USE_GIVEIO, 0, [0 if you don't want parport to use giveio.])
373 fi
374
375 if test $build_bitbang = yes; then
376 AC_DEFINE(BUILD_BITBANG, 1, [1 if you want a bitbang interface.])
377 else
378 AC_DEFINE(BUILD_BITBANG, 0, [0 if you don't want a bitbang interface.])
379 fi
380
381 if test $build_ft2232_libftdi = yes; then
382 AC_DEFINE(BUILD_FT2232_LIBFTDI, 1, [1 if you want libftdi ft2232.])
383 else
384 AC_DEFINE(BUILD_FT2232_LIBFTDI, 0, [0 if you don't want libftdi ft2232.])
385 fi
386
387 if test $build_ft2232_ftd2xx = yes; then
388 AC_DEFINE(BUILD_FT2232_FTD2XX, 1, [1 if you want ftd2xx ft2232.])
389 else
390 AC_DEFINE(BUILD_FT2232_FTD2XX, 0, [0 if you don't want ftd2xx ft2232.])
391 fi
392
393 if test $build_amtjtagaccel = yes; then
394 AC_DEFINE(BUILD_AMTJTAGACCEL, 1, [1 if you want the Amontec JTAG-Accelerator driver.])
395 else
396 AC_DEFINE(BUILD_AMTJTAGACCEL, 0, [0 if you don't want the Amontec JTAG-Accelerator driver.])
397 fi
398
399 if test $build_gw16012 = yes; then
400 AC_DEFINE(BUILD_GW16012, 1, [1 if you want the Gateworks GW16012 driver.])
401 else
402 AC_DEFINE(BUILD_GW16012, 0, [0 if you don't want the Gateworks GW16012 driver.])
403 fi
404
405 if test $build_presto_libftdi = yes; then
406 build_bitq=yes
407 AC_DEFINE(BUILD_PRESTO_LIBFTDI, 1, [1 if you want the ASIX PRESTO driver using libftdi.])
408 else
409 AC_DEFINE(BUILD_PRESTO_LIBFTDI, 0, [0 if you don't want the ASIX PRESTO driver using libftdi.])
410 fi
411
412 if test $build_presto_ftd2xx = yes; then
413 build_bitq=yes
414 AC_DEFINE(BUILD_PRESTO_FTD2XX, 1, [1 if you want the ASIX PRESTO driver using FTD2XX.])
415 else
416 AC_DEFINE(BUILD_PRESTO_FTD2XX, 0, [0 if you don't want the ASIX PRESTO driver using FTD2XX.])
417 fi
418
419 if test $build_bitq = yes; then
420 AC_DEFINE(BUILD_BITQ, 1, [1 if you want a bitq interface.])
421 else
422 AC_DEFINE(BUILD_BITQ, 0, [0 if you don't want a bitq interface.])
423 fi
424
425 if test $build_usbprog = yes; then
426 AC_DEFINE(BUILD_USBPROG, 1, [1 if you want the usbprog JTAG driver.])
427 else
428 AC_DEFINE(BUILD_USBPROG, 0, [0 if you don't want the usbprog JTAG driver.])
429 fi
430
431 if test $build_oocd_trace = yes; then
432 AC_DEFINE(BUILD_OOCD_TRACE, 1, [1 if you want the OpenOCD+trace ETM capture driver.])
433 else
434 AC_DEFINE(BUILD_OOCD_TRACE, 0, [0 if you don't want the OpenOCD+trace ETM capture driver.])
435 fi
436
437 if test $build_jlink = yes; then
438 AC_DEFINE(BUILD_JLINK, 1, [1 if you want the J-Link JTAG driver.])
439 else
440 AC_DEFINE(BUILD_JLINK, 0, [0 if you don't want the J-Link JTAG driver.])
441 fi
442
443 if test $build_vsllink = yes; then
444 AC_DEFINE(BUILD_VSLLINK, 1, [1 if you want the Versaloon-Link JTAG driver.])
445 else
446 AC_DEFINE(BUILD_VSLLINK, 0, [0 if you don't want the Versaloon-Link JTAG driver.])
447 fi
448
449 if test $build_rlink = yes; then
450 AC_DEFINE(BUILD_RLINK, 1, [1 if you want the RLink JTAG driver.])
451 else
452 AC_DEFINE(BUILD_RLINK, 0, [0 if you don't want the RLink JTAG driver.])
453 fi
454
455 if test $build_armjtagew = yes; then
456 AC_DEFINE(BUILD_ARMJTAGEW, 1, [1 if you want the ARM-JTAG-EW JTAG driver.])
457 else
458 AC_DEFINE(BUILD_ARMJTAGEW, 0, [0 if you don't want the ARM-JTAG-EW JTAG driver.])
459 fi
460
461 #-- Deal with MingW/Cygwin FTD2XX issues
462
463 if test $is_win32 = yes; then
464 if test "${with_ftd2xx_linux_tardir+set}" = set
465 then
466 AC_MSG_ERROR([The option: with_ftd2xx_linux_tardir is for LINUX only.])
467 fi
468
469 if test $build_ft2232_ftd2xx = yes ; then
470 AC_MSG_CHECKING([for ftd2xx.lib exists (win32)])
471
472 # if we are given a zipdir...
473 if test "${with_ftd2xx_win32_zipdir+set}" = set
474 then
475 # Set the CFLAGS for "ftd2xx.h"
476 f=$with_ftd2xx_win32_zipdir/ftd2xx.h
477 if test ! -f $f ; then
478 AC_MSG_ERROR([File: $f cannot be found])
479 fi
480 CFLAGS="$CFLAGS -I$with_ftd2xx_win32_zipdir"
481
482 # And calculate the LDFLAGS for the machine
483 case "$host_cpu" in
484 i?86|x86_*)
485 LDFLAGS="$LDFLAGS -L$with_ftd2xx_win32_zipdir/i386"
486 LIBS="$LIBS -lftd2xx"
487 f=$with_ftd2xx_win32_zipdir/i386/ftd2xx.lib
488 ;;
489 amd64)
490 LDFLAGS="$LDFLAGS -L$with_ftd2xx_win32_zipdir/amd64"
491 LIBS="$LIBS -lftd2xx"
492 f=$with_ftd2xx_win32_zipdir/amd64/ftd2xx.lib
493 ;;
494 *)
495 AC_MSG_ERROR([Unknown Win32 host cpu: $host_cpu])
496 ;;
497 esac
498 if test ! -f $f ; then
499 AC_MSG_ERROR([Library: $f not found])
500 fi
501 else
502 LIBS="$LIBS -lftd2xx"
503 AC_MSG_WARN([ASSUMPTION: The (win32) FTDICHIP.COM files: ftd2xx.h and ftd2xx.lib are in a proper place])
504 fi
505 fi
506 fi
507
508 if test $is_win32 = no; then
509
510 if test "${with_ftd2xx_win32_zipdir+set}" = set
511 then
512 AC_MSG_ERROR([The option: --with-ftd2xx-win32-zipdir is for win32 only])
513 fi
514
515 if test $build_ft2232_ftd2xx = yes ; then
516 AC_MSG_CHECKING([for libftd2xx.a (linux)])
517 # Must be linux -
518 # Cause FTDICHIP does not supply a MAC-OS version
519 if test $host_os != linux-gnu && test $host_os != linux ; then
520 AC_MSG_ERROR([The (linux) ftd2xx library from FTDICHIP.com is linux only. Try --enable-ft2232-libftdi instead])
521 fi
522 # Are we given a TAR directory?
523 if test "${with_ftd2xx_linux_tardir+set}" = set
524 then
525 # The .H file is simple..
526 f=$with_ftd2xx_linux_tardir/ftd2xx.h
527 if test ! -f $f ; then
528 AC_MSG_ERROR([Option: --with-ftd2xx-linux-tardir appears wrong, cannot find: $f])
529 fi
530 CFLAGS="$CFLAGS -I$with_ftd2xx_linux_tardir"
531 if test $with_ftd2xx_lib = shared
532 then
533 LDFLAGS="$LDFLAGS -L$with_ftd2xx_linux_tardir"
534 LIBS="$LIBS -lftd2xx"
535 AC_MSG_RESULT([ Assuming: -L$with_ftd2xx_linux_tardir -lftd2xx])
536 else
537 # Test #1 - Future proof - if/when ftdichip fixes their distro.
538 # Try it with the simple ".a" suffix.
539 f=$with_ftd2xx_linux_tardir/static_lib/libftd2xx.a
540 if test -f $f ; then
541 # Yea we are done
542 LDFLAGS="$LDFLAGS -L$with_ftd2xx_linux_tardir/static_lib"
543 LIBS="$LIBS -lftd2xx"
544 else
545 # Test Number2.
546 # Grr.. perhaps it exists as a version number?
547 f="$with_ftd2xx_linux_tardir/static_lib/libftd2xx.a.*.*.*"
548 count=`ls $f | wc -l`
549 if test $count -gt 1 ; then
550 AC_MSG_ERROR([Multiple libftd2xx.a files found in: $with_ftd2xx_linux_tardir/static_lib sorry cannot handle this yet])
551 fi
552 if test $count -ne 1 ; then
553 AC_MSG_ERROR([Not found: $f, option: --with-ftd2xx-linux-tardir appears to be wrong])
554 fi
555 # Because the "-l" rules do not understand version numbers...
556 # we will just stuff the absolute path onto the LIBS variable
557 f=`ls $f`
558 #
559 LIBS="$LIBS $f -lpthread"
560 # No need to bother with LDFLAGS...
561 fi
562 AC_MSG_RESULT([Found: $f])
563 fi
564 else
565 LIBS="$LIBS -lftd2xx"
566 AC_MSG_RESULT([Assumed: installed])
567 AC_MSG_WARN([The (linux) FTDICHIP.COM files ftd2xx.h and libftd2xx.so are assumed to be in a proper place])
568 fi
569 fi
570 fi
571
572 if test $build_ft2232_ftd2xx = yes; then
573
574 # Before we go any further - make sure we can *BUILD* and *RUN*
575 # a simple app with the "ftd2xx.lib" file - in what ever form we where given
576 # We should be able to compile, link and run this test program now
577 AC_MSG_CHECKING([Test: Build & Link with ftd2xx])
578
579 #
580 # Save the LDFLAGS for later..
581 LDFLAGS_SAVE=$LDFLAGS
582 CFLAGS_SAVE=$CFLAGS
583 _LDFLAGS=`eval echo $LDFLAGS`
584 _CFLAGS=`eval echo $CFLAGS`
585 LDFLAGS=$_LDFLAGS
586 CFLAGS=$_CFLAGS
587 AC_RUN_IFELSE(
588 [
589 #include "confdefs.h"
590 #if IS_WIN32
591 #include "windows.h"
592 #endif
593 #include <stdio.h>
594 #include <ftd2xx.h>
595
596 int
597 main( int argc, char **argv )
598 {
599 DWORD x;
600 FT_GetLibraryVersion( &x );
601 return 0;
602 }
603 ], [ AC_MSG_RESULT([Success!])] , [ AC_MSG_ERROR([Cannot build & run test program using ftd2xx.lib]) ] )
604 LDFLAGS=$LDFLAGS_SAVE
605 CFLAGS=$CFLAGS_SAVE
606 fi
607
608 if test $build_ft2232_libftdi = yes ; then
609 # We assume: the package is preinstalled in the proper place
610 # these present as 2 libraries..
611 LIBS="$LIBS -lftdi -lusb"
612 #
613 # Try to build a small program.
614 AC_MSG_CHECKING([Build & Link with libftdi...])
615
616 LDFLAGS_SAVE=$LDFLAGS
617 CFLAGS_SAVE=$CFLAGS
618 _LDFLAGS=`eval echo $LDFLAGS`
619 _CFLAGS=`eval echo $CFLAGS`
620 LDFLAGS=$_LDFLAGS
621 CFLAGS=$_CFLAGS
622
623 AC_RUN_IFELSE(
624 [
625 #include <stdio.h>
626 #include <ftdi.h>
627
628 int
629 main( int argc, char **argv )
630 {
631 struct ftdi_context *p;
632 p = ftdi_new();
633 if( p != NULL ){
634 return 0;
635 } else {
636 fprintf( stderr, "calling ftdi_new() failed\n");
637 return 1;
638 }
639 }
640 ]
641 ,
642 [ AC_MSG_RESULT([Success]) ]
643 ,
644 [ AC_MSG_ERROR([Cannot build & run test program using libftdi]) ] )
645 # Restore the 'unexpanded ldflags'
646 LDFLAGS=$LDFLAGS_SAVE
647 CFLAGS=$CFLAGS_SAVE
648 fi
649
650 AM_CONFIG_HEADER(config.h)
651 AM_INIT_AUTOMAKE(openocd, 1.0)
652
653 AM_CONDITIONAL(RELEASE, test $build_release = yes)
654 AM_CONDITIONAL(PARPORT, test $build_parport = yes)
655 AM_CONDITIONAL(DUMMY, test $build_dummy = yes)
656 AM_CONDITIONAL(GIVEIO, test $parport_use_giveio = yes)
657 AM_CONDITIONAL(EP93XX, test $build_ep93xx = yes)
658 AM_CONDITIONAL(ECOSBOARD, test $build_ecosboard = yes)
659 AM_CONDITIONAL(IOUTIL, test $build_ioutil = yes)
660 AM_CONDITIONAL(HTTPD, test $build_httpd = yes)
661 AM_CONDITIONAL(AT91RM9200, test $build_at91rm9200 = yes)
662 AM_CONDITIONAL(BITBANG, test $build_bitbang = yes)
663 AM_CONDITIONAL(FT2232_LIBFTDI, test $build_ft2232_libftdi = yes)
664 AM_CONDITIONAL(FT2232_FTD2XX, test $build_ft2232_ftd2xx = yes)
665 AM_CONDITIONAL(AMTJTAGACCEL, test $build_amtjtagaccel = yes)
666 AM_CONDITIONAL(GW16012, test $build_gw16012 = yes)
667 AM_CONDITIONAL(PRESTO_LIBFTDI, test $build_presto_libftdi = yes)
668 AM_CONDITIONAL(PRESTO_FTD2XX, test $build_presto_ftd2xx = yes)
669 AM_CONDITIONAL(USBPROG, test $build_usbprog = yes)
670 AM_CONDITIONAL(OOCD_TRACE, test $build_oocd_trace = yes)
671 AM_CONDITIONAL(JLINK, test $build_jlink = yes)
672 AM_CONDITIONAL(VSLLINK, test $build_vsllink = yes)
673 AM_CONDITIONAL(RLINK, test $build_rlink = yes)
674 AM_CONDITIONAL(ARMJTAGEW, test $build_armjtagew = yes)
675 AM_CONDITIONAL(IS_CYGWIN, test $is_cygwin = yes)
676 AM_CONDITIONAL(IS_MINGW, test $is_mingw = yes)
677 AM_CONDITIONAL(IS_WIN32, test $is_win32 = yes)
678 AM_CONDITIONAL(BITQ, test $build_bitq = yes)
679
680 AC_LANG_C
681 AC_PROG_CC
682 AC_PROG_RANLIB
683
684 # set default gcc warnings
685 GCC_WARNINGS="-Wall -Wstrict-prototypes"
686
687 # overide default gcc cflags
688 if test $gcc_warnings = yes; then
689 CFLAGS="$CFLAGS $GCC_WARNINGS"
690 fi
691
692 # Setup for compiling build tools
693 AC_MSG_CHECKING([for a C compiler for build tools])
694 if test $cross_compiling = yes; then
695 AC_CHECK_PROGS(CC_FOR_BUILD, gcc cc)
696 CFLAGS_FOR_BUILD="-g -O2 $GCC_WARNINGS"
697 else
698 CC_FOR_BUILD=$CC
699 CFLAGS_FOR_BUILD=$CFLAGS
700 fi
701
702 AC_MSG_RESULT([$CC_FOR_BUILD])
703 AC_SUBST(CC_FOR_BUILD)
704 AC_SUBST(CFLAGS_FOR_BUILD)
705
706 AC_MSG_CHECKING([for suffix of executable build tools])
707 if test $cross_compiling = yes; then
708 cat >conftest.c <<\_______EOF
709 int main ()
710 {
711 exit (0);
712 }
713 _______EOF
714 for i in .exe ""; do
715 compile="$CC_FOR_BUILD conftest.c -o conftest$i"
716 if AC_TRY_EVAL(compile); then
717 if (./conftest) 2>&AC_FD_CC; then
718 EXEEXT_FOR_BUILD=$i
719 break
720 fi
721 fi
722 done
723 rm -f conftest*
724 if test "${EXEEXT_FOR_BUILD+set}" != set; then
725 AC_MSG_ERROR([Cannot determine suffix of executable build tools])
726 fi
727 else
728 EXEEXT_FOR_BUILD=$EXEEXT
729 fi
730 AC_MSG_RESULT([$EXEEXT_FOR_BUILD])
731 AC_SUBST(EXEEXT_FOR_BUILD)
732
733 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)