Duane Ellis: fix warnings
[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
24 build_bitbang=no
25 build_bitq=no
26 is_cygwin=no
27 is_mingw=no
28 is_win32=no
29
30
31 AC_ARG_ENABLE(gccwarnings,
32 AS_HELP_STRING([--enable-gccwarnings], [Enable compiler warnings, default yes]),
33 [gcc_warnings=$enablevalue], [gcc_warnings=yes])
34
35
36 AC_ARG_ENABLE(parport,
37 AS_HELP_STRING([--enable-parport], [Enable building the pc parallel port driver]),
38 [build_parport=$enableval], [build_parport=no])
39
40 AC_ARG_ENABLE(dummy,
41 AS_HELP_STRING([--enable-dummy], [Enable building the dummy port driver]),
42 [build_dummy=$enableval], [build_dummy=no])
43
44 case "${host_cpu}" in
45 i?86|x86*)
46 AC_ARG_ENABLE(parport_ppdev,
47 AS_HELP_STRING([--enable-parport_ppdev], [Enable use of ppdev (/dev/parportN) for parport]),
48 [parport_use_ppdev=$enableval], [parport_use_ppdev=no])
49 ;;
50 *)
51 parport_use_ppdev=yes
52 ;;
53 esac
54
55 AC_ARG_ENABLE(ft2232_libftdi,
56 AS_HELP_STRING([--enable-ft2232_libftdi], [Enable building support for FT2232 based devices using the libftdi driver]),
57 [build_ft2232_libftdi=$enableval], [build_ft2232_libftdi=no])
58
59 AC_ARG_ENABLE(ft2232_ftd2xx,
60 AS_HELP_STRING([--enable-ft2232_ftd2xx], [Enable building support for FT2232 based devices using the FTD2XX driver]),
61 [build_ft2232_ftd2xx=$enableval], [build_ft2232_ftd2xx=no])
62
63 AC_ARG_ENABLE(amtjtagaccel,
64 AS_HELP_STRING([--enable-amtjtagaccel], [Enable building the Amontec JTAG-Accelerator driver]),
65 [build_amtjtagaccel=$enableval], [build_amtjtagaccel=no])
66
67 case "${host_cpu}" in
68 arm*)
69 AC_ARG_ENABLE(ep93xx,
70 AS_HELP_STRING([--enable-ep93xx], [Enable building support for EP93xx based SBCs]),
71 [build_ep93xx=$enableval], [build_ep93xx=no])
72
73 AC_ARG_ENABLE(ecosboard,
74 AS_HELP_STRING([--enable-ecosboard], [Enable building support for eCosBoard based JTAG debugger]),
75 [build_ecosboard=$enableval], [build_ecosboard=no])
76
77 AC_ARG_ENABLE(at91rm9200,
78 AS_HELP_STRING([--enable-at91rm9200], [Enable building support for AT91RM9200 based SBCs]),
79 [build_at91rm9200=$enableval], [build_at91rm9200=no])
80 ;;
81
82 *)
83 build_ep93xx=no
84 build_at91rm9200=no
85 build_ecosboard=no
86 ;;
87 esac
88
89 AC_ARG_ENABLE(gw16012,
90 AS_HELP_STRING([--enable-gw16012], [Enable building support for the Gateworks GW16012 JTAG Programmer]),
91 [build_gw16012=$enableval], [build_gw16012=no])
92
93 AC_ARG_ENABLE(presto_libftdi,
94 AS_HELP_STRING([--enable-presto_libftdi], [Enable building support for ASIX Presto Programmer using the libftdi driver]),
95 [build_presto_libftdi=$enableval], [build_presto_libftdi=no])
96
97 AC_ARG_ENABLE(presto_ftd2xx,
98 AS_HELP_STRING([--enable-presto_ftd2xx], [Enable building support for ASIX Presto Programmer using the FTD2XX driver]),
99 [build_presto_ftd2xx=$enableval], [build_presto_ftd2xx=no])
100
101 AC_ARG_ENABLE(usbprog,
102 AS_HELP_STRING([--enable-usbprog], [Enable building support for the usbprog JTAG Programmer]),
103 [build_usbprog=$enableval], [build_usbprog=no])
104
105 AC_ARG_ENABLE(oocd_trace,
106 AS_HELP_STRING([--enable-oocd_trace], [Enable building support for the OpenOCD+trace ETM capture device]),
107 [build_oocd_trace=$enableval], [build_oocd_trace=no])
108
109 AC_ARG_ENABLE(jlink,
110 AS_HELP_STRING([--enable-jlink], [Enable building support for the Segger J-Link JTAG Programmer]),
111 [build_jlink=$enableval], [build_jlink=no])
112
113 AC_ARG_WITH(ftd2xx,
114 [AS_HELP_STRING(--with-ftd2xx,
115 [Where libftd2xx can be found <default=search>])],
116 [],
117 with_ftd2xx=search)
118
119 case $host in
120 *-cygwin*)
121 is_win32=yes
122
123 AC_ARG_ENABLE(parport_giveio,
124 AS_HELP_STRING([--enable-parport_giveio], [Enable use of giveio for parport instead of ioperm]),
125 [parport_use_giveio=$enableval], [parport_use_giveio=no])
126
127 AC_COMPILE_IFELSE(AC_LANG_PROGRAM([],[return __MINGW32__;]),[is_mingw=yes],[is_mingw=no])
128 if test $is_mingw = yes; then
129 AC_DEFINE(IS_MINGW, 1, [1 if building for MinGW.])
130 parport_use_giveio=yes
131 is_cygwin=no
132 else
133 is_cygwin=yes
134 AC_DEFINE(IS_CYGWIN, 1, [1 if building for Cygwin.])
135 fi
136
137 AC_DEFINE(IS_WIN32, 1, [1 if building for Win32.])
138 ;;
139 *-mingw*)
140 is_mingw=yes
141 is_win32=yes
142
143 parport_use_giveio=yes
144
145 AC_DEFINE(IS_MINGW, 1, [1 if building for MinGW.])
146 AC_DEFINE(IS_WIN32, 1, [1 if building for Win32.])
147 ;;
148 *)
149 parport_use_giveio=no
150 AC_DEFINE(IS_CYGWIN, 0, [0 if not building for Cygwin.])
151 AC_DEFINE(IS_WIN32, 0, [0 if not building for Win32.])
152 ;;
153 esac
154
155 if test $build_parport = yes; then
156 build_bitbang=yes
157 AC_DEFINE(BUILD_PARPORT, 1, [1 if you want parport.])
158 else
159 AC_DEFINE(BUILD_PARPORT, 0, [0 if you don't want parport.])
160 fi
161
162 if test $build_dummy = yes; then
163 build_bitbang=yes
164 AC_DEFINE(BUILD_DUMMY, 1, [1 if you want dummy driver.])
165 else
166 AC_DEFINE(BUILD_DUMMY, 0, [0 if you don't want dummy driver.])
167 fi
168
169
170 if test $build_ep93xx = yes; then
171 build_bitbang=yes
172 AC_DEFINE(BUILD_EP93XX, 1, [1 if you want ep93xx.])
173 else
174 AC_DEFINE(BUILD_EP93XX, 0, [0 if you don't want ep93xx.])
175 fi
176
177 if test $build_ecosboard = yes; then
178 build_bitbang=yes
179 AC_DEFINE(BUILD_ECOSBOARD, 1, [1 if you want eCosBoard.])
180 else
181 AC_DEFINE(BUILD_ECOSBOARD, 0, [0 if you don't want eCosBoard.])
182 fi
183
184 if test $build_at91rm9200 = yes; then
185 build_bitbang=yes
186 AC_DEFINE(BUILD_AT91RM9200, 1, [1 if you want at91rm9200.])
187 else
188 AC_DEFINE(BUILD_AT91RM9200, 0, [0 if you don't want at91rm9200.])
189 fi
190
191 if test $parport_use_ppdev = yes; then
192 AC_DEFINE(PARPORT_USE_PPDEV, 1, [1 if you want parport to use ppdev.])
193 else
194 AC_DEFINE(PARPORT_USE_PPDEV, 0, [0 if you don't want parport to use ppdev.])
195 fi
196
197 if test $parport_use_giveio = yes; then
198 AC_DEFINE(PARPORT_USE_GIVEIO, 1, [1 if you want parport to use giveio.])
199 else
200 AC_DEFINE(PARPORT_USE_GIVEIO, 0, [0 if you don't want parport to use giveio.])
201 fi
202
203 if test $build_bitbang = yes; then
204 AC_DEFINE(BUILD_BITBANG, 1, [1 if you want a bitbang interface.])
205 else
206 AC_DEFINE(BUILD_BITBANG, 0, [0 if you don't want a bitbang interface.])
207 fi
208
209 if test $build_ft2232_libftdi = yes; then
210 AC_DEFINE(BUILD_FT2232_LIBFTDI, 1, [1 if you want libftdi ft2232.])
211 else
212 AC_DEFINE(BUILD_FT2232_LIBFTDI, 0, [0 if you don't want libftdi ft2232.])
213 fi
214
215 if test $build_ft2232_ftd2xx = yes; then
216 AC_DEFINE(BUILD_FT2232_FTD2XX, 1, [1 if you want ftd2xx ft2232.])
217 else
218 AC_DEFINE(BUILD_FT2232_FTD2XX, 0, [0 if you don't want ftd2xx ft2232.])
219 fi
220
221 if test $build_amtjtagaccel = yes; then
222 AC_DEFINE(BUILD_AMTJTAGACCEL, 1, [1 if you want the Amontec JTAG-Accelerator driver.])
223 else
224 AC_DEFINE(BUILD_AMTJTAGACCEL, 0, [0 if you don't want the Amontec JTAG-Accelerator driver.])
225 fi
226
227 if test $build_gw16012 = yes; then
228 AC_DEFINE(BUILD_GW16012, 1, [1 if you want the Gateworks GW16012 driver.])
229 else
230 AC_DEFINE(BUILD_GW16012, 0, [0 if you don't want the Gateworks GW16012 driver.])
231 fi
232
233 if test $build_presto_libftdi = yes; then
234 build_bitq=yes
235 AC_DEFINE(BUILD_PRESTO_LIBFTDI, 1, [1 if you want the ASIX PRESTO driver using libftdi.])
236 else
237 AC_DEFINE(BUILD_PRESTO_LIBFTDI, 0, [0 if you don't want the ASIX PRESTO driver using libftdi.])
238 fi
239
240 if test $build_presto_ftd2xx = yes; then
241 build_bitq=yes
242 AC_DEFINE(BUILD_PRESTO_FTD2XX, 1, [1 if you want the ASIX PRESTO driver using FTD2XX.])
243 else
244 AC_DEFINE(BUILD_PRESTO_FTD2XX, 0, [0 if you don't want the ASIX PRESTO driver using FTD2XX.])
245 fi
246
247 if test $build_bitq = yes; then
248 AC_DEFINE(BUILD_BITQ, 1, [1 if you want a bitq interface.])
249 else
250 AC_DEFINE(BUILD_BITQ, 0, [0 if you don't want a bitq interface.])
251 fi
252
253 if test $build_usbprog = yes; then
254 AC_DEFINE(BUILD_USBPROG, 1, [1 if you want the usbprog JTAG driver.])
255 else
256 AC_DEFINE(BUILD_USBPROG, 0, [0 if you don't want the usbprog JTAG driver.])
257 fi
258
259 if test $build_oocd_trace = yes; then
260 AC_DEFINE(BUILD_OOCD_TRACE, 1, [1 if you want the OpenOCD+trace ETM capture driver.])
261 else
262 AC_DEFINE(BUILD_OOCD_TRACE, 0, [0 if you don't want the OpenOCD+trace ETM capture driver.])
263 fi
264
265 if test $build_jlink = yes; then
266 AC_DEFINE(BUILD_JLINK, 1, [1 if you want the J-Link JTAG driver.])
267 else
268 AC_DEFINE(BUILD_JLINK, 0, [0 if you don't want the J-Link JTAG driver.])
269 fi
270
271 AM_CONFIG_HEADER(config.h)
272 AM_INIT_AUTOMAKE(openocd, 1.0)
273
274 AM_CONDITIONAL(PARPORT, test $build_parport = yes)
275 AM_CONDITIONAL(DUMMY, test $build_dummy = yes)
276 AM_CONDITIONAL(GIVEIO, test $parport_use_giveio = yes)
277 AM_CONDITIONAL(EP93XX, test $build_ep93xx = yes)
278 AM_CONDITIONAL(ECOSBOARD, test $build_ecosboard = yes)
279 AM_CONDITIONAL(AT91RM9200, test $build_at91rm9200 = yes)
280 AM_CONDITIONAL(BITBANG, test $build_bitbang = yes)
281 AM_CONDITIONAL(FT2232_LIBFTDI, test $build_ft2232_libftdi = yes)
282 AM_CONDITIONAL(FT2232_FTD2XX, test $build_ft2232_ftd2xx = yes)
283 AM_CONDITIONAL(AMTJTAGACCEL, test $build_amtjtagaccel = yes)
284 AM_CONDITIONAL(GW16012, test $build_gw16012 = yes)
285 AM_CONDITIONAL(PRESTO_LIBFTDI, test $build_presto_libftdi = yes)
286 AM_CONDITIONAL(PRESTO_FTD2XX, test $build_presto_ftd2xx = yes)
287 AM_CONDITIONAL(USBPROG, test $build_usbprog = yes)
288 AM_CONDITIONAL(OOCD_TRACE, test $build_oocd_trace = yes)
289 AM_CONDITIONAL(JLINK, test $build_jlink = yes)
290 AM_CONDITIONAL(IS_CYGWIN, test $is_cygwin = yes)
291 AM_CONDITIONAL(IS_MINGW, test $is_mingw = yes)
292 AM_CONDITIONAL(IS_WIN32, test $is_win32 = yes)
293 AM_CONDITIONAL(FTD2XXDIR, test $with_ftd2xx != search)
294 AM_CONDITIONAL(BITQ, test $build_bitq = yes)
295
296 AC_LANG_C
297 AC_PROG_CC
298 AC_PROG_RANLIB
299
300 # Setup for compiling build tools
301 AC_MSG_CHECKING([for a C compiler for build tools])
302 if test $cross_compiling = yes; then
303 AC_CHECK_PROGS(CC_FOR_BUILD, gcc cc)
304 CFLAGS_FOR_BUILD="-g -O2"
305 else
306 CC_FOR_BUILD=$CC
307 CFLAGS_FOR_BUILD="$CFLAGS $GCC_WARNINGS"
308 fi
309
310 if test $gcc_warnings = yes; then
311 CFLAGS_FOR_BUILD="$CFLAGS_FOR_BUILD -Wall -Wmissing-prototypes -Wstrict-prototypes"
312 fi
313
314 AC_MSG_RESULT([$CC_FOR_BUILD])
315 AC_SUBST(CC_FOR_BUILD)
316 AC_SUBST(CFLAGS_FOR_BUILD)
317 AC_MSG_NOTICE([CFLAGS_FOR_BUILD = $CFLAGS_FOR_BUILD])
318
319 AC_MSG_CHECKING([for suffix of executable build tools])
320 if test $cross_compiling = yes; then
321 cat >conftest.c <<\_______EOF
322 int main ()
323 {
324 exit (0);
325 }
326 _______EOF
327 for i in .exe ""; do
328 compile="$CC_FOR_BUILD conftest.c -o conftest$i"
329 if AC_TRY_EVAL(compile); then
330 if (./conftest) 2>&AC_FD_CC; then
331 EXEEXT_FOR_BUILD=$i
332 break
333 fi
334 fi
335 done
336 rm -f conftest*
337 if test "${EXEEXT_FOR_BUILD+set}" != set; then
338 AC_MSG_ERROR([Cannot determine suffix of executable build tools])
339 fi
340 else
341 EXEEXT_FOR_BUILD=$EXEEXT
342 fi
343 AC_MSG_RESULT([$EXEEXT_FOR_BUILD])
344 AC_SUBST(EXEEXT_FOR_BUILD)
345
346 AC_SUBST(WITH_FTD2XX, $with_ftd2xx)
347
348 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)