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