improve DCC bulk write performance by using jtag_add_shift() + tweaked embedded ICE...
[openocd.git] / configure.in
1 AC_PREREQ(2.59)
2 AC_INIT(configure.in)
3
4 AC_SEARCH_LIBS([ioperm], [ioperm])
5
6 AC_CANONICAL_HOST
7
8 AC_CHECK_HEADERS(sys/param.h)
9 AC_CHECK_HEADERS(elf.h)
10
11 AC_C_BIGENDIAN
12
13 AC_CHECK_FUNCS(strndup)
14 AC_CHECK_FUNCS(strnlen)
15 AC_CHECK_FUNCS(gettimeofday)
16 AC_CHECK_FUNCS(usleep)
17
18 build_bitbang=no
19 build_bitq=no
20 is_cygwin=no
21 is_mingw=no
22 is_win32=no
23
24 AC_ARG_ENABLE(parport,
25 AS_HELP_STRING([--enable-parport], [Enable building the pc parallel port driver]),
26 [build_parport=$enableval], [build_parport=no])
27
28 case "${host_cpu}" in
29 i?86|x86*)
30 AC_ARG_ENABLE(parport_ppdev,
31 AS_HELP_STRING([--enable-parport_ppdev], [Enable use of ppdev (/dev/parportN) for parport]),
32 [parport_use_ppdev=$enableval], [parport_use_ppdev=no])
33 ;;
34 *)
35 parport_use_ppdev=yes
36 ;;
37 esac
38
39 AC_ARG_ENABLE(ft2232_libftdi,
40 AS_HELP_STRING([--enable-ft2232_libftdi], [Enable building support for FT2232 based devices using the libftdi driver]),
41 [build_ft2232_libftdi=$enableval], [build_ft2232_libftdi=no])
42
43 AC_ARG_ENABLE(ft2232_ftd2xx,
44 AS_HELP_STRING([--enable-ft2232_ftd2xx], [Enable building support for FT2232 based devices using the FTD2XX driver]),
45 [build_ft2232_ftd2xx=$enableval], [build_ft2232_ftd2xx=no])
46
47 AC_ARG_ENABLE(amtjtagaccel,
48 AS_HELP_STRING([--enable-amtjtagaccel], [Enable building the Amontec JTAG-Accelerator driver]),
49 [build_amtjtagaccel=$enableval], [build_amtjtagaccel=no])
50
51 case "${host_cpu}" in
52 arm*)
53 AC_ARG_ENABLE(ep93xx,
54 AS_HELP_STRING([--enable-ep93xx], [Enable building support for EP93xx based SBCs]),
55 [build_ep93xx=$enableval], [build_ep93xx=no])
56
57 AC_ARG_ENABLE(at91rm9200,
58 AS_HELP_STRING([--enable-at91rm9200], [Enable building support for AT91RM9200 based SBCs]),
59 [build_at91rm9200=$enableval], [build_at91rm9200=no])
60 ;;
61
62 *)
63 build_ep93xx=no
64 build_at91rm9200=no
65 ;;
66 esac
67
68 AC_ARG_ENABLE(gw16012,
69 AS_HELP_STRING([--enable-gw16012], [Enable building support for the Gateworks GW16012 JTAG Programmer]),
70 [build_gw16012=$enableval], [build_gw16012=no])
71
72 AC_ARG_ENABLE(presto_libftdi,
73 AS_HELP_STRING([--enable-presto_libftdi], [Enable building support for ASIX Presto Programmer using the libftdi driver]),
74 [build_presto_libftdi=$enableval], [build_presto_libftdi=no])
75
76 AC_ARG_ENABLE(presto_ftd2xx,
77 AS_HELP_STRING([--enable-presto_ftd2xx], [Enable building support for ASIX Presto Programmer using the FTD2XX driver]),
78 [build_presto_ftd2xx=$enableval], [build_presto_ftd2xx=no])
79
80 AC_ARG_ENABLE(usbprog,
81 AS_HELP_STRING([--enable-usbprog], [Enable building support for the usbprog JTAG Programmer]),
82 [build_usbprog=$enableval], [build_usbprog=no])
83
84 AC_ARG_ENABLE(oocd_trace,
85 AS_HELP_STRING([--enable-oocd_trace], [Enable building support for the OpenOCD+trace ETM capture device]),
86 [build_oocd_trace=$enableval], [build_oocd_trace=no])
87
88 AC_ARG_WITH(ftd2xx,
89 [AS_HELP_STRING(--with-ftd2xx,
90 [Where libftd2xx can be found <default=search>])],
91 [],
92 with_ftd2xx=search)
93
94 case $host in
95 *-cygwin*)
96 is_win32=yes
97
98 AC_ARG_ENABLE(parport_giveio,
99 AS_HELP_STRING([--enable-parport_giveio], [Enable use of giveio for parport instead of ioperm]),
100 [parport_use_giveio=$enableval], [parport_use_giveio=no])
101
102 AC_COMPILE_IFELSE(AC_LANG_PROGRAM([],[return __MINGW32__;]),[is_mingw=yes],[is_mingw=no])
103 if test $is_mingw = yes; then
104 AC_DEFINE(IS_MINGW, 1, [1 if building for MinGW.])
105 parport_use_giveio=yes
106 is_cygwin=no
107 else
108 is_cygwin=yes
109 AC_DEFINE(IS_CYGWIN, 1, [1 if building for Cygwin.])
110 fi
111
112 AC_DEFINE(IS_WIN32, 1, [1 if building for Win32.])
113 ;;
114 *-mingw*)
115 is_mingw=yes
116 is_win32=yes
117
118 parport_use_giveio=yes
119
120 AC_DEFINE(IS_MINGW, 1, [1 if building for MinGW.])
121 AC_DEFINE(IS_WIN32, 1, [1 if building for Win32.])
122 ;;
123 *)
124 parport_use_giveio=no
125 AC_DEFINE(IS_CYGWIN, 0, [0 if not building for Cygwin.])
126 AC_DEFINE(IS_WIN32, 0, [0 if not building for Win32.])
127 ;;
128 esac
129
130 if test $build_parport = yes; then
131 build_bitbang=yes
132 AC_DEFINE(BUILD_PARPORT, 1, [1 if you want parport.])
133 else
134 AC_DEFINE(BUILD_PARPORT, 0, [0 if you don't want parport.])
135 fi
136
137 if test $build_ep93xx = yes; then
138 build_bitbang=yes
139 AC_DEFINE(BUILD_EP93XX, 1, [1 if you want ep93xx.])
140 else
141 AC_DEFINE(BUILD_EP93XX, 0, [0 if you don't want ep93xx.])
142 fi
143
144 if test $build_at91rm9200 = yes; then
145 build_bitbang=yes
146 AC_DEFINE(BUILD_AT91RM9200, 1, [1 if you want at91rm9200.])
147 else
148 AC_DEFINE(BUILD_AT91RM9200, 0, [0 if you don't want at91rm9200.])
149 fi
150
151 if test $parport_use_ppdev = yes; then
152 AC_DEFINE(PARPORT_USE_PPDEV, 1, [1 if you want parport to use ppdev.])
153 else
154 AC_DEFINE(PARPORT_USE_PPDEV, 0, [0 if you don't want parport to use ppdev.])
155 fi
156
157 if test $parport_use_giveio = yes; then
158 AC_DEFINE(PARPORT_USE_GIVEIO, 1, [1 if you want parport to use giveio.])
159 else
160 AC_DEFINE(PARPORT_USE_GIVEIO, 0, [0 if you don't want parport to use giveio.])
161 fi
162
163 if test $build_bitbang = yes; then
164 AC_DEFINE(BUILD_BITBANG, 1, [1 if you want a bitbang interface.])
165 else
166 AC_DEFINE(BUILD_BITBANG, 0, [0 if you don't want a bitbang interface.])
167 fi
168
169 if test $build_ft2232_libftdi = yes; then
170 AC_DEFINE(BUILD_FT2232_LIBFTDI, 1, [1 if you want libftdi ft2232.])
171 else
172 AC_DEFINE(BUILD_FT2232_LIBFTDI, 0, [0 if you don't want libftdi ft2232.])
173 fi
174
175 if test $build_ft2232_ftd2xx = yes; then
176 AC_DEFINE(BUILD_FT2232_FTD2XX, 1, [1 if you want ftd2xx ft2232.])
177 else
178 AC_DEFINE(BUILD_FT2232_FTD2XX, 0, [0 if you don't want ftd2xx ft2232.])
179 fi
180
181 if test $build_amtjtagaccel = yes; then
182 AC_DEFINE(BUILD_AMTJTAGACCEL, 1, [1 if you want the Amontec JTAG-Accelerator driver.])
183 else
184 AC_DEFINE(BUILD_AMTJTAGACCEL, 0, [0 if you don't want the Amontec JTAG-Accelerator driver.])
185 fi
186
187 if test $build_gw16012 = yes; then
188 AC_DEFINE(BUILD_GW16012, 1, [1 if you want the Gateworks GW16012 driver.])
189 else
190 AC_DEFINE(BUILD_GW16012, 0, [0 if you don't want the Gateworks GW16012 driver.])
191 fi
192
193 if test $build_presto_libftdi = yes; then
194 build_bitq=yes
195 AC_DEFINE(BUILD_PRESTO_LIBFTDI, 1, [1 if you want the ASIX PRESTO driver using libftdi.])
196 else
197 AC_DEFINE(BUILD_PRESTO_LIBFTDI, 0, [0 if you don't want the ASIX PRESTO driver using libftdi.])
198 fi
199
200 if test $build_presto_ftd2xx = yes; then
201 build_bitq=yes
202 AC_DEFINE(BUILD_PRESTO_FTD2XX, 1, [1 if you want the ASIX PRESTO driver using FTD2XX.])
203 else
204 AC_DEFINE(BUILD_PRESTO_FTD2XX, 0, [0 if you don't want the ASIX PRESTO driver using FTD2XX.])
205 fi
206
207 if test $build_bitq = yes; then
208 AC_DEFINE(BUILD_BITQ, 1, [1 if you want a bitq interface.])
209 else
210 AC_DEFINE(BUILD_BITQ, 0, [0 if you don't want a bitq interface.])
211 fi
212
213 if test $build_usbprog = yes; then
214 AC_DEFINE(BUILD_USBPROG, 1, [1 if you want the usbprog JTAG driver.])
215 else
216 AC_DEFINE(BUILD_USBPROG, 0, [0 if you don't want the usbprog JTAG driver.])
217 fi
218
219 if test $build_oocd_trace = yes; then
220 AC_DEFINE(BUILD_OOCD_TRACE, 1, [1 if you want the OpenOCD+trace ETM capture driver.])
221 else
222 AC_DEFINE(BUILD_OOCD_TRACE, 0, [0 if you don't want the OpenOCD+trace ETM capture driver.])
223 fi
224
225 AM_CONFIG_HEADER(config.h)
226 AM_INIT_AUTOMAKE(openocd, 1.0)
227
228 AM_CONDITIONAL(PARPORT, test $build_parport = yes)
229 AM_CONDITIONAL(GIVEIO, test $parport_use_giveio = yes)
230 AM_CONDITIONAL(EP93XX, test $build_ep93xx = yes)
231 AM_CONDITIONAL(AT91RM9200, test $build_at91rm9200 = yes)
232 AM_CONDITIONAL(BITBANG, test $build_bitbang = yes)
233 AM_CONDITIONAL(FT2232_LIBFTDI, test $build_ft2232_libftdi = yes)
234 AM_CONDITIONAL(FT2232_FTD2XX, test $build_ft2232_ftd2xx = yes)
235 AM_CONDITIONAL(AMTJTAGACCEL, test $build_amtjtagaccel = yes)
236 AM_CONDITIONAL(GW16012, test $build_gw16012 = yes)
237 AM_CONDITIONAL(PRESTO_LIBFTDI, test $build_presto_libftdi = yes)
238 AM_CONDITIONAL(PRESTO_FTD2XX, test $build_presto_ftd2xx = yes)
239 AM_CONDITIONAL(USBPROG, test $build_usbprog = yes)
240 AM_CONDITIONAL(OOCD_TRACE, test $build_oocd_trace = yes)
241 AM_CONDITIONAL(IS_CYGWIN, test $is_cygwin = yes)
242 AM_CONDITIONAL(IS_MINGW, test $is_mingw = yes)
243 AM_CONDITIONAL(IS_WIN32, test $is_win32 = yes)
244 AM_CONDITIONAL(FTD2XXDIR, test $with_ftd2xx != search)
245 AM_CONDITIONAL(BITQ, test $build_bitq = yes)
246
247 AC_LANG_C
248 AC_PROG_CC
249 AC_PROG_RANLIB
250
251 AC_SUBST(WITH_FTD2XX, $with_ftd2xx)
252
253 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)