1 dnl Process this file with autoconf to produce a configure script.
4 dnl ---------------------------------------------------------------------------
6 dnl Top-level configure.in for wxWindows by Robert Roebling, Phil Blecker and
9 dnl This script is under the wxWindows licence.
12 dnl ////////////////////////////////////////////////////////////////////////
14 dnl ---------------------------------------------------------------------------
16 dnl ---------------------------------------------------------------------------
18 dnl the file passed to AC_INIT should be speicific to our package
22 AM_INIT_AUTOMAKE(wxWindows, 2.1.0)
24 WX_MAJOR_VERSION_NUMBER=2
25 WX_MINOR_VERSION_NUMBER=1
28 dnl FIXME this hack suppresses automake 1.4 warning about @LTLIBOBJS@ being
29 dnl never defined in configure.in (remove these lines to see what I'm
30 dnl speaking about) - Tom Tromey <tromey@cygnus.com> told me that it will
31 dnl be fixed in the next release.
33 LIBOBJS="$LIBOBJS common/extended.o"
35 dnl ------------------------------------------------------------------------
36 dnl Check platform (host system)
37 dnl ------------------------------------------------------------------------
60 dnl NB: these wxUSE_XXX constants have value of 0 or 1 unlike all the other ones
61 dnl which are either yes or no
76 if test "x$TMP" = "xalpha"; then
82 *-*-irix5* | *-*-irix6* )
94 AC_DEFINE(__SOLARIS__)
105 DEFAULT_wxUSE_MOTIF=1
107 *-*-freebsd* | *-*-netbsd*)
110 AC_DEFINE(__FREEBSD__)
119 DEFAULT_wxUSE_MOTIF=1
126 DEFAULT_wxUSE_MOTIF=1
133 DEFAULT_wxUSE_MOTIF=1
142 DEFAULT_wxUSE_MOTIF=1
145 AC_MSG_ERROR(unknown system type $(host).)
148 if test "$USE_UNIX" = 1 ; then
153 dnl Linux: test for libc5/glibc2: glibc2 has gettext() included
154 if test "$USE_LINUX" = 1; then
155 AC_CHECK_LIB(c,gettext,AC_DEFINE(wxHAVE_GLIBC2))
158 dnl TODO cross-compiling for Windows not yet supported
161 dnl if eval "test $USE_CYGWIN != 1 -a $USE_MINGW32 != 1"; then
162 dnl AC_DEFINE(__UNIX__)
164 dnl AC_DEFINE(__WINDOWS__)
165 dnl DEFAULT_wxUSE_MSW=1
168 dnl ---------------------------------------------------------------------------
169 dnl command line options for configure
170 dnl ---------------------------------------------------------------------------
172 dnl the default values for all options - we collect them all here to simplify
173 dnl modification of the default values (for example, if the defaults for some
174 dnl platform should be changed, it can be done here too)
176 dnl NB: see also DEFAULT_wxUSE<toolkit> variables defined above
178 dnl useful to test the compilation with minimum options, define as 0 for normal
181 if test $DEBUG_CONFIGURE = 1; then
182 DEFAULT_wxUSE_THREADS=yes
184 DEFAULT_wxUSE_OPTIMISE=no
185 DEFAULT_wxUSE_PROFILE=no
186 DEFAULT_wxUSE_DEBUG_FLAG=yes
187 DEFAULT_wxUSE_DEBUG_INFO=yes
188 DEFAULT_wxUSE_DEBUG_GDB=yes
189 DEFAULT_wxUSE_MEM_TRACING=no
190 DEFAULT_wxUSE_DMALLOC=no
191 DEFAULT_wxUSE_APPLE_IEEE=no
193 DEFAULT_wxUSE_LOG=yes
195 DEFAULT_wxUSE_GUI=yes
197 DEFAULT_wxUSE_ZLIB=no
198 DEFAULT_wxUSE_LIBPNG=no
199 DEFAULT_wxUSE_LIBGIF=no
200 DEFAULT_wxUSE_LIBJPEG=no
201 DEFAULT_wxUSE_ODBC=no
203 DEFAULT_wxUSE_FILE=no
204 DEFAULT_wxUSE_TEXTFILE=no
205 DEFAULT_wxUSE_TIMEDATE=no
206 DEFAULT_wxUSE_INTL=no
207 DEFAULT_wxUSE_CONFIG=no
208 DEFAULT_wxUSE_STREAMS=no
209 DEFAULT_wxUSE_SOCKETS=no
210 DEFAULT_wxUSE_SERIAL=no
211 DEFAULT_wxUSE_JOYSTICK=no
212 DEFAULT_wxUSE_DYNLIB_CLASS=no
213 DEFAULT_wxUSE_LONGLONG=no
215 DEFAULT_wxUSE_AFM_FOR_POSTSCRIPT=no
216 DEFAULT_wxUSE_NORMALIZED_PS_FONTS=no
217 DEFAULT_wxUSE_POSTSCRIPT=no
219 DEFAULT_wxUSE_X_RESOURCES=no
220 DEFAULT_wxUSE_CLIPBOARD=no
221 DEFAULT_wxUSE_TOOLTIPS=no
222 DEFAULT_wxUSE_DRAG_AND_DROP=no
223 DEFAULT_wxUSE_SPLINES=no
225 DEFAULT_wxUSE_MDI_ARCHITECTURE=no
226 DEFAULT_wxUSE_DOC_VIEW_ARCHITECTURE=no
227 DEFAULT_wxUSE_PRINTING_ARCHITECTURE=no
229 DEFAULT_wxUSE_PROLOGIO=no
230 DEFAULT_wxUSE_RESOURCES=no
231 DEFAULT_wxUSE_CONSTRAINTS=no
233 DEFAULT_wxUSE_HELP=no
234 DEFAULT_wxUSE_WXTREE=no
235 DEFAULT_wxUSE_METAFILE=no
237 DEFAULT_wxUSE_COMMONDLGS=no
238 DEFAULT_wxUSE_MINIFRAME=no
239 DEFAULT_wxUSE_VALIDATORS=yes
241 DEFAULT_wxUSE_ACCEL=no
242 DEFAULT_wxUSE_CARET=no
243 DEFAULT_wxUSE_BMPBUTTON=no
244 DEFAULT_wxUSE_CHECKBOX=no
245 DEFAULT_wxUSE_CHECKLST=no
246 DEFAULT_wxUSE_COMBOBOX=no
247 DEFAULT_wxUSE_GAUGE=no
248 DEFAULT_wxUSE_GRID=no
249 DEFAULT_wxUSE_IMAGLIST=no
250 DEFAULT_wxUSE_LISTBOX=no
251 DEFAULT_wxUSE_LISTCTRL=no
252 DEFAULT_wxUSE_NOTEBOOK=no
253 DEFAULT_wxUSE_RADIOBOX=no
254 DEFAULT_wxUSE_RADIOBTN=no
255 DEFAULT_wxUSE_SASHWINDOW=no
256 DEFAULT_wxUSE_SCROLLBAR=no
257 DEFAULT_wxUSE_SLIDER=no
258 DEFAULT_wxUSE_SPINBTN=no
259 DEFAULT_wxUSE_SPLITTER=no
260 DEFAULT_wxUSE_STATBMP=no
261 DEFAULT_wxUSE_STATBOX=no
262 DEFAULT_wxUSE_STATLINE=no
263 DEFAULT_wxUSE_STATUSBAR=yes
264 DEFAULT_wxUSE_TABDIALOG=no
265 DEFAULT_wxUSE_TOOLBAR=no
266 DEFAULT_wxUSE_TREECTRL=no
268 DEFAULT_wxUSE_UNICODE=no
269 DEFAULT_wxUSE_WCSRTOMBS=no
271 DEFAULT_wxUSE_THREADS=yes
273 DEFAULT_wxUSE_OPTIMISE=yes
274 DEFAULT_wxUSE_PROFILE=no
275 DEFAULT_wxUSE_DEBUG_FLAG=no
276 DEFAULT_wxUSE_DEBUG_INFO=no
277 DEFAULT_wxUSE_DEBUG_GDB=no
278 DEFAULT_wxUSE_MEM_TRACING=no
279 DEFAULT_wxUSE_DMALLOC=no
280 DEFAULT_wxUSE_APPLE_IEEE=yes
282 DEFAULT_wxUSE_LOG=yes
284 DEFAULT_wxUSE_GUI=yes
286 DEFAULT_wxUSE_ZLIB=yes
287 DEFAULT_wxUSE_LIBPNG=yes
288 DEFAULT_wxUSE_LIBGIF=yes
289 DEFAULT_wxUSE_LIBJPEG=yes
290 DEFAULT_wxUSE_ODBC=no
292 DEFAULT_wxUSE_FILE=yes
293 DEFAULT_wxUSE_TEXTFILE=yes
294 DEFAULT_wxUSE_TIMEDATE=yes
295 DEFAULT_wxUSE_INTL=yes
296 DEFAULT_wxUSE_CONFIG=yes
297 DEFAULT_wxUSE_STREAMS=yes
298 DEFAULT_wxUSE_SOCKETS=yes
299 DEFAULT_wxUSE_SERIAL=yes
300 DEFAULT_wxUSE_JOYSTICK=yes
301 DEFAULT_wxUSE_DYNLIB_CLASS=yes
302 DEFAULT_wxUSE_LONGLONG=no
304 DEFAULT_wxUSE_AFM_FOR_POSTSCRIPT=yes
305 DEFAULT_wxUSE_NORMALIZED_PS_FONTS=yes
306 DEFAULT_wxUSE_POSTSCRIPT=yes
308 DEFAULT_wxUSE_X_RESOURCES=no
309 DEFAULT_wxUSE_CLIPBOARD=yes
310 DEFAULT_wxUSE_TOOLTIPS=yes
311 DEFAULT_wxUSE_DRAG_AND_DROP=yes
312 DEFAULT_wxUSE_SPLINES=yes
314 DEFAULT_wxUSE_MDI_ARCHITECTURE=yes
315 DEFAULT_wxUSE_DOC_VIEW_ARCHITECTURE=yes
316 DEFAULT_wxUSE_PRINTING_ARCHITECTURE=yes
318 DEFAULT_wxUSE_PROLOGIO=yes
319 DEFAULT_wxUSE_RESOURCES=yes
320 DEFAULT_wxUSE_CONSTRAINTS=yes
321 DEFAULT_wxUSE_IPC=yes
322 DEFAULT_wxUSE_HELP=yes
323 DEFAULT_wxUSE_WXTREE=yes
324 DEFAULT_wxUSE_METAFILE=yes
326 DEFAULT_wxUSE_COMMONDLGS=yes
327 DEFAULT_wxUSE_MINIFRAME=yes
328 DEFAULT_wxUSE_VALIDATORS=yes
330 DEFAULT_wxUSE_ACCEL=yes
331 DEFAULT_wxUSE_CARET=yes
332 DEFAULT_wxUSE_BMPBUTTON=yes
333 DEFAULT_wxUSE_CHECKBOX=yes
334 DEFAULT_wxUSE_CHECKLST=yes
335 DEFAULT_wxUSE_COMBOBOX=yes
336 DEFAULT_wxUSE_GAUGE=yes
337 DEFAULT_wxUSE_GRID=yes
338 DEFAULT_wxUSE_IMAGLIST=yes
339 DEFAULT_wxUSE_LISTBOX=yes
340 DEFAULT_wxUSE_LISTCTRL=yes
341 DEFAULT_wxUSE_NOTEBOOK=yes
342 DEFAULT_wxUSE_RADIOBOX=yes
343 DEFAULT_wxUSE_RADIOBTN=yes
344 DEFAULT_wxUSE_SASHWINDOW=yes
345 DEFAULT_wxUSE_SCROLLBAR=yes
346 DEFAULT_wxUSE_SLIDER=yes
347 DEFAULT_wxUSE_SPINBTN=yes
348 DEFAULT_wxUSE_SPLITTER=yes
349 DEFAULT_wxUSE_STATBMP=yes
350 DEFAULT_wxUSE_STATBOX=yes
351 DEFAULT_wxUSE_STATLINE=yes
352 DEFAULT_wxUSE_STATUSBAR=yes
353 DEFAULT_wxUSE_TABDIALOG=no
354 DEFAULT_wxUSE_TOOLBAR=yes
355 DEFAULT_wxUSE_TREECTRL=yes
357 DEFAULT_wxUSE_UNICODE=no
358 DEFAULT_wxUSE_WCSRTOMBS=no
361 dnl AC_ARG_WITH should be used to select whether an external package will be
362 dnl used or not, to configure compile-time features of this package itself,
363 dnl use AC_ARG_ENABLE instead
365 dnl ============================
366 dnl external package dependecies
367 dnl ============================
369 AC_ARG_WITH(gtk-prefix, [ --with-gtk-prefix=PFX prefix where GTK is installed],
370 gtk_config_prefix="$withval", gtk_config_prefix="")
371 AC_ARG_WITH(gtk-exec-prefix, [ --with-gtk-exec-prefix=PFX exec prefix where GTK is installed],
372 gtk_config_exec_prefix="$withval", gtk_config_exec_prefix="")
373 AC_ARG_WITH(gtk, [ --with-gtk use GTK+],
374 wxUSE_GTK="$withval",wxUSE_GTK=0)
375 AC_ARG_WITH(motif, [ --with-motif use Motif/Lesstif],
376 wxUSE_MOTIF="$withval",wxUSE_MOTIF=0)
377 AC_ARG_WITH(cygwin, [ --with-cygwin use Cygwin for MS-Windows],
378 wxUSE_CYGWIN="$withval",wxUSE_CYGWIN=0)
379 AC_ARG_WITH(mingw, [ --with-mingw use GCC Minimal MS-Windows],
380 wxUSE_MINGW="$withval",wxUSE_MINGW=0)
382 AC_ARG_WITH(dmalloc, [ --with-dmalloc use dmalloc library (www.letters.com/dmalloc)],
383 wxUSE_DMALLOC="$withval",wxUSE_DMALLOC=$DEFAULT_wxUSE_DMALLOC)
384 AC_ARG_WITH(zlib, [ --with-zlib use zlib for LZW compression],
385 wxUSE_ZLIB="$withval",wxUSE_ZLIB=$DEFAULT_wxUSE_ZLIB)
386 AC_ARG_WITH(libpng, [ --with-libpng use libpng (PNG image format)],
387 wxUSE_LIBPNG="$withval",wxUSE_LIBPNG=$DEFAULT_wxUSE_LIBPNG)
388 AC_ARG_WITH(libgif, [ --with-libgif use libgif (GIF file format)],
389 wxUSE_LIBGIF="${withval}",wxUSE_LIBGIF=$DEFAULT_wxUSE_LIBGIF)
390 AC_ARG_WITH(libjpeg, [ --with-libjpeg use libjpeg (JPEG file format)],
391 wxUSE_LIBJPEG="${withval}",wxUSE_LIBJPEG=$DEFAULT_wxUSE_LIBJPEG)
392 AC_ARG_WITH(opengl, [ --with-opengl use OpenGL (or Mesa)],
393 wxUSE_OPENGL="$withval",wxUSE_OPENGL=$DEFAULT_wxUSE_OPENGL)
394 AC_ARG_WITH(odbc, [ --with-odbc use the IODBC and wxODBC classes],
395 wxUSE_ODBC="$withval",wxUSE_ODBC=$DEFAULT_wxUSE_ODBC)
397 dnl ====================
398 dnl compile-time options
399 dnl ====================
401 dnl ---------------------------------------------------------------------------
403 dnl ---------------------------------------------------------------------------
405 AC_ARG_ENABLE(optimise, [ --enable-optimise create optimised code],
406 wxUSE_OPTIMISE="$enableval",wxUSE_OPTIMISE=$DEFAULT_wxUSE_OPTIMISE)
407 AC_ARG_ENABLE(optimize, [ --enable-optimize create optimized code],
408 wxUSE_OPTIMISE="$enableval",wxUSE_OPTIMISE=$DEFAULT_wxUSE_OPTIMISE)
409 AC_ARG_ENABLE(debug_flag, [ --enable-debug_flag set __WXDEBUG__ flag (recommended for developers!)],
410 wxUSE_DEBUG_FLAG="$enableval",wxUSE_DEBUG_FLAG=$DEFAULT_wxUSE_DEBUG_FLAG)
411 AC_ARG_ENABLE(debug_info, [ --enable-debug_info create code with debugging information],
412 wxUSE_DEBUG_INFO="$enableval",wxUSE_DEBUG_INFO=$DEFAULT_wxUSE_DEBUG_INFO)
413 AC_ARG_ENABLE(debug_gdb, [ --enable-debug_gdb create code with extra GDB debugging information],
414 wxUSE_DEBUG_GDB="$enableval",wxUSE_DEBUG_GDB=$DEFAULT_wxUSE_DEBUG_GDB)
415 AC_ARG_ENABLE(debug_cntxt, [ --enable-debug_cntxt use wxDebugContext],
416 AC_DEFINE(wxUSE_DEBUG_CONTEXT))
417 AC_ARG_ENABLE(mem_tracing, [ --enable-mem_tracing create code with memory tracing],
418 wxUSE_MEM_TRACING="$enableval", wxUSE_MEM_TRACING=$DEFAULT_wxUSE_MEM_TRACING)
419 AC_ARG_ENABLE(profile, [ --enable-profile create code with profiling information],
420 wxUSE_PROFILE="$enableval",wxUSE_PROFILE=$DEFAULT_wxUSE_PROFILE)
422 dnl ---------------------------------------------------------------------------
423 dnl --disable-gui will build only non-GUI part of wxWindows
425 dnl NB: this is still in testing stage, don't use if you don't know what you're
427 dnl ---------------------------------------------------------------------------
429 AC_ARG_ENABLE(gui, [ --enable-gui use GUI classes],
430 wxUSE_GUI="$enableval",wxUSE_GUI=$DEFAULT_wxUSE_GUI)
432 dnl ---------------------------------------------------------------------------
433 dnl (small) optional non GUI classes
434 dnl ---------------------------------------------------------------------------
436 AC_ARG_ENABLE(intl, [ --enable-intl use internationalization system],
437 wxUSE_INTL="$enableval",wxUSE_INTL=$DEFAULT_wxUSE_INTL)
438 AC_ARG_ENABLE(config, [ --enable-config use wxConfig (and derived) classes],
439 wxUSE_CONFIG="$enableval",wxUSE_CONFIG=$DEFAULT_wxUSE_CONFIG)
440 AC_ARG_ENABLE(sockets, [ --enable-sockets use socket/network classes],
441 wxUSE_SOCKETS="$enableval",wxUSE_SOCKETS=$DEFAULT_wxUSE_SOCKETS)
442 AC_ARG_ENABLE(ipc, [ --enable-ipc use interprocess communication (wxSocket etc.)],
443 wxUSE_IPC="$enableval",wxUSE_IPC=$DEFAULT_wxUSE_IPC)
444 AC_ARG_ENABLE(apple_ieee, [ --enable-apple_ieee use the Apple IEEE codec],
445 wxUSE_APPLE_IEEE="$enableval",wxUSE_APPLE_IEEE=$DEFAULT_wxUSE_APPLE_IEEE)
446 AC_ARG_ENABLE(timedate, [ --enable-timedate use date/time classes],
447 wxUSE_TIMEDATE="$enableval",wxUSE_TIMEDATE=$DEFAULT_wxUSE_TIMEDATE)
448 AC_ARG_ENABLE(fraction, [ --enable-fraction use wxFraction class],
449 wxUSE_FRACTION="$enableval",wxUSE_FRACTION=$DEFAULT_wxUSE_FRACTION)
450 AC_ARG_ENABLE(dynlib, [ --enable-dynlib use wxLibrary class for DLL loading],
451 wxUSE_DYNLIB_CLASS="$enableval",wxUSE_DYNLIB_CLASS=$DEFAULT_wxUSE_DYNLIB_CLASS)
452 AC_ARG_ENABLE(longlong, [ --enable-longlong use wxLongLong class],
453 wxUSE_LONGLONG="${enableval}",wxUSE_LONGLONG=$DEFAULT_wxUSE_LONGLONG)
454 AC_ARG_ENABLE(log, [ --enable-log use logging system],
455 wxUSE_LOG="$enableval",wxUSE_LOG=$DEFAULT_wxUSE_LOG)
456 AC_ARG_ENABLE(streams, [ --enable-streams use wxStream etc classes],
457 wxUSE_STREAMS="$enableval",wxUSE_STREAMS=$DEFAULT_wxUSE_STREAMS)
458 AC_ARG_ENABLE(file, [ --enable-file use wxFile classes],
459 wxUSE_FILE="$enableval",wxUSE_FILE=$DEFAULT_wxUSE_FILE)
460 AC_ARG_ENABLE(textfile, [ --enable-textfile use wxTextFile classes],
461 wxUSE_TEXTFILE="$enableval",wxUSE_TEXTFILE=$DEFAULT_wxUSE_TEXTFILE)
462 AC_ARG_ENABLE(unicode, [ --enable-unicode compile wxString with Unicode support],
463 wxUSE_UNICODE="$enableval",wxUSE_UNICODE=$DEFAULT_wxUSE_UNICODE)
464 AC_ARG_ENABLE(wcsrtombs, [ --enable-wcsrtombs use wcsrtombs instead of buggy (GNU libc1/Linux libc5) wcstombs],
465 wxUSE_WCSRTOMBS="$enableval",wxUSE_WCSRTOMBS=$DEFAULT_wxUSE_WCSRTOMBS)
466 AC_ARG_ENABLE(joystick, [ --enable-joystick compile in joystick support (Linux only)],
467 wxUSE_JOYSTICK="$enableval", wxUSE_JOYSTICK=$DEFAULT_wxUSE_JOYSTICK)
469 dnl ---------------------------------------------------------------------------
470 dnl "big" options (i.e. those which change a lot of things throughout the library)
471 dnl ---------------------------------------------------------------------------
473 AC_ARG_ENABLE(threads, [ --enable-threads use threads],
474 wxUSE_THREADS="${enableval}",wxUSE_THREADS=$DEFAULT_wxUSE_THREADS)
475 AC_ARG_ENABLE(serial, [ --enable-serial use class serialization],
476 wxUSE_SERIAL="${enableval}",wxUSE_SERIAL=$DEFAULT_wxUSE_SERIAL)
478 dnl ---------------------------------------------------------------------------
479 dnl "big" GUI options
480 dnl ---------------------------------------------------------------------------
482 AC_ARG_ENABLE(docview, [ --enable-docview use document view architecture],
483 wxUSE_DOC_VIEW_ARCHITECTURE="$enableval",wxUSE_DOC_VIEW_ARCHITECTURE=$DEFAULT_wxUSE_DOC_VIEW_ARCHITECTURE)
484 AC_ARG_ENABLE(help, [ --enable-help use help (using external browser at present)],
485 wxUSE_HELP="$enableval",wxUSE_HELP=$DEFAULT_wxUSE_HELP)
486 AC_ARG_ENABLE(constraints, [ --enable-constraints use layout-constraints system],
487 wxUSE_CONSTRAINTS="$enableval",wxUSE_CONSTRAINTS=$DEFAULT_wxUSE_CONSTRAINTS)
488 AC_ARG_ENABLE(printarch, [ --enable-printarch use printing architecture],
489 wxUSE_PRINTING_ARCHITECTURE="${enableval}",wxUSE_PRINTING_ARCHITECTURE=$DEFAULT_wxUSE_PRINTING_ARCHITECTURE)
490 AC_ARG_ENABLE(mdi, [ --enable-mdi use multiple document interface architecture],
491 wxUSE_MDI_ARCHITECTURE="${enableval}",wxUSE_MDI_ARCHITECTURE=$DEFAULT_wxUSE_MDI_ARCHITECTURE)
493 dnl ---------------------------------------------------------------------------
494 dnl PostScript options
495 dnl ---------------------------------------------------------------------------
496 AC_ARG_ENABLE(postscript, [ --enable-postscript use wxPostscriptDC device context (default for gtk+)],
497 wxUSE_POSTSCRIPT="$enableval",wxUSE_POSTSCRIPT=$DEFAULT_wxUSE_POSTSCRIPT)
499 dnl VZ: these options seem to be always on, if someone wants to change it please do
500 dnl AC_ARG_ENABLE(PS-normalized, [ --enable-PS-normalized use normalized PS fonts],
501 dnl wxUSE_NORMALIZED_PS_FONTS="${enableval}",wxUSE_NORMALIZED_PS_FONTS=$DEFAULT_wxUSE_NORMALIZED_PS_FONTS)
502 dnl AC_ARG_ENABLE(afmfonts, [ --enable-afmfonts use Adobe Font Metric Font table],
503 dnl wxUSE_AFM_FOR_POSTSCRIPT="${enableval}",wxUSE_AFM_FOR_POSTSCRIPT=$DEFAULT_wxUSE_AFM_FOR_POSTSCRIPT)
505 dnl ---------------------------------------------------------------------------
507 dnl ---------------------------------------------------------------------------
508 AC_ARG_ENABLE(prologio, [ --enable-prologio use Prolog IO library],
509 wxUSE_PROLOGIO="${enableval}",wxUSE_PROLOGIO=$DEFAULT_wxUSE_PROLOGIO)
510 AC_ARG_ENABLE(resources, [ --enable-resources use wxWindows resources],
511 wxUSE_RESOURCES="${enableval}",wxUSE_RESOURCES=$DEFAULT_wxUSE_RESOURCES)
513 AC_ARG_ENABLE(xresources, [ --enable-xresources use X resources for save (default for gtk+)],
514 wxUSE_X_RESOURCES="${enableval}",wxUSE_X_RESOURCES=$DEFAULT_wxUSE_X_RESOURCES)
515 dnl ---------------------------------------------------------------------------
517 dnl ---------------------------------------------------------------------------
518 AC_ARG_ENABLE(clipboard, [ --enable-clipboard use wxClipboard classes],
519 wxUSE_CLIPBOARD="${enableval}",wxUSE_CLIPBOARD=$DEFAULT_wxUSE_CLIPBOARD)
520 AC_ARG_ENABLE(dnd, [ --enable-dnd use Drag'n'Drop classes],
521 wxUSE_DRAG_AND_DROP="${enableval}",wxUSE_DRAG_AND_DROP=$DEFAULT_wxUSE_DRAG_AND_DROP)
523 dnl ---------------------------------------------------------------------------
524 dnl options which don't work yet
525 dnl ---------------------------------------------------------------------------
526 AC_ARG_ENABLE(wxtree, [ --enable-wxtree make wxTree library],
527 wxUSE_WXTREE="${enableval}",wxUSE_WXTREE=$DEFAULT_wxUSE_WXTREE)
529 dnl ---------------------------------------------------------------------------
530 dnl optional GUI controls (in alphabetical order except the first one)
531 dnl ---------------------------------------------------------------------------
533 AC_ARG_ENABLE(controls, [ --enable-controls use all usual controls],
534 wxUSE_CONTROLS="${enableval}")
536 dnl even with --enable-controls, some may be disabled by giving
537 dnl --disable-<control> later on the command line - but by default all will be
538 dnl used (and vice versa)
539 if test "$wxUSE_CONTROLS" = "yes"; then
540 DEFAULT_wxUSE_ACCEL=yes
541 DEFAULT_wxUSE_CARET=yes
542 DEFAULT_wxUSE_COMBOBOX=yes
543 DEFAULT_wxUSE_BMPBUTTON=yes
544 DEFAULT_wxUSE_CHECKBOX=yes
545 DEFAULT_wxUSE_CHECKLISTBOX=yes
546 DEFAULT_wxUSE_GAUGE=yes
547 DEFAULT_wxUSE_GRID=yes
548 DEFAULT_wxUSE_IMAGLIST=yes
549 DEFAULT_wxUSE_LISTBOX=yes
550 DEFAULT_wxUSE_LISTCTRL=yes
551 DEFAULT_wxUSE_NOTEBOOK=yes
552 DEFAULT_wxUSE_RADIOBOX=yes
553 DEFAULT_wxUSE_RADIOBTN=yes
554 DEFAULT_wxUSE_SASH=yes
555 DEFAULT_wxUSE_SCROLLBAR=yes
556 DEFAULT_wxUSE_SLIDER=yes
557 DEFAULT_wxUSE_SPINBTN=yes
558 DEFAULT_wxUSE_SPLITTER=yes
559 DEFAULT_wxUSE_STATBMP=yes
560 DEFAULT_wxUSE_STATBOX=yes
561 DEFAULT_wxUSE_STATLINE=yes
562 DEFAULT_wxUSE_STATUSBAR=yes
563 DEFAULT_wxUSE_TAB_DIALOG=yes
564 DEFAULT_wxUSE_TOOLBAR=yes
565 DEFAULT_wxUSE_TOOLTIPS=yes
566 DEFAULT_wxUSE_TREECTRL=yes
567 elif test "$wxUSE_CONTROLS" = "no"; then
568 DEFAULT_wxUSE_ACCEL=no
569 DEFAULT_wxUSE_CARET=no
570 DEFAULT_wxUSE_COMBOBOX=no
571 DEFAULT_wxUSE_BMPBUTTON=no
572 DEFAULT_wxUSE_CHECKBOX=no
573 DEFAULT_wxUSE_CHECKLISTBOX=no
574 DEFAULT_wxUSE_GAUGE=no
575 DEFAULT_wxUSE_GRID=no
576 DEFAULT_wxUSE_IMAGLIST=no
577 DEFAULT_wxUSE_LISTBOX=no
578 DEFAULT_wxUSE_LISTCTRL=no
579 DEFAULT_wxUSE_NOTEBOOK=no
580 DEFAULT_wxUSE_RADIOBOX=no
581 DEFAULT_wxUSE_RADIOBTN=no
582 DEFAULT_wxUSE_SASH=no
583 DEFAULT_wxUSE_SCROLLBAR=no
584 DEFAULT_wxUSE_SLIDER=no
585 DEFAULT_wxUSE_SPINBTN=no
586 DEFAULT_wxUSE_SPLITTER=no
587 DEFAULT_wxUSE_STATBMP=no
588 DEFAULT_wxUSE_STATBOX=no
589 DEFAULT_wxUSE_STATLINE=no
590 DEFAULT_wxUSE_STATUSBAR=no
591 DEFAULT_wxUSE_TAB_DIALOG=no
592 DEFAULT_wxUSE_TOOLBAR=no
593 DEFAULT_wxUSE_TOOLTIPS=no
594 DEFAULT_wxUSE_TREECTRL=no
597 AC_ARG_ENABLE(accel, [ --enable-accel use accelerators],
598 wxUSE_ACCEL="${enableval}",wxUSE_ACCEL=$DEFAULT_wxUSE_ACCEL)
599 AC_ARG_ENABLE(caret, [ --enable-caret use wxCaret class],
600 wxUSE_CARET="${enableval}",wxUSE_CARET=$DEFAULT_wxUSE_CARET)
601 AC_ARG_ENABLE(bmpbutton, [ --enable-bmpbutton use wxBitmapButton class],
602 wxUSE_BMPBUTTON="${enableval}",wxUSE_BMPBUTTON=$DEFAULT_wxUSE_BMPBUTTON)
603 AC_ARG_ENABLE(checkbox, [ --enable-checkbox use wxCheckBox class],
604 wxUSE_CHECKBOX="${enableval}",wxUSE_CHECKBOX=$DEFAULT_wxUSE_CHECKBOX)
605 AC_ARG_ENABLE(checklst, [ --enable-checklst use wxCheckListBox (listbox with checkboxes) class],
606 wxUSE_CHECKLST="${enableval}",wxUSE_CHECKLST=$DEFAULT_wxUSE_CHECKLST)
607 AC_ARG_ENABLE(combobox, [ --enable-combobox use wxChoice and wxComboBox classes],
608 wxUSE_COMBOBOX="${enableval}",wxUSE_COMBOBOX=$DEFAULT_wxUSE_COMBOBOX)
609 AC_ARG_ENABLE(gauge, [ --enable-gauge use wxGauge class],
610 wxUSE_GAUGE="${enableval}",wxUSE_GAUGE=$DEFAULT_wxUSE_GAUGE)
611 AC_ARG_ENABLE(grid, [ --enable-grid use wxGrid class],
612 wxUSE_GRID="${enableval}",wxUSE_GRID=$DEFAULT_wxUSE_GRID)
613 AC_ARG_ENABLE(imaglist, [ --enable-imaglist use wxImageList class],
614 wxUSE_IMAGLIST="${enableval}",wxUSE_IMAGLIST=$DEFAULT_wxUSE_IMAGLIST)
615 AC_ARG_ENABLE(listbox, [ --enable-listbox use wxListBox class],
616 wxUSE_LISTBOX="${enableval}",wxUSE_LISTBOX=$DEFAULT_wxUSE_LISTBOX)
617 AC_ARG_ENABLE(listctrl, [ --enable-listctrl use wxListCtrl class],
618 wxUSE_LISTCTRL="${enableval}",wxUSE_LISTCTRL=$DEFAULT_wxUSE_LISTCTRL)
619 AC_ARG_ENABLE(notebook, [ --enable-notebook use wxNotebook class],
620 wxUSE_NOTEBOOK="${enableval}",wxUSE_NOTEBOOK=$DEFAULT_wxUSE_NOTEBOOK)
621 AC_ARG_ENABLE(radiobox, [ --enable-radiobox use wxRadioBox class],
622 wxUSE_RADIOBOX="${enableval}",wxUSE_RADIOBOX=$DEFAULT_wxUSE_RADIOBOX)
623 AC_ARG_ENABLE(radiobtn, [ --enable-radiobtn use wxRadioButton class],
624 wxUSE_RADIOBTN="${enableval}",wxUSE_RADIOBTN=$DEFAULT_wxUSE_RADIOBTN)
625 AC_ARG_ENABLE(sash, [ --enable-sash use wxSashWindow class],
626 wxUSE_SASH="${enableval}",wxUSE_SASH=$DEFAULT_wxUSE_SASH)
627 AC_ARG_ENABLE(scrollbar, [ --enable-scrollbar use wxScrollBar class and scrollable windows],
628 wxUSE_SCROLLBAR="${enableval}",wxUSE_SCROLLBAR=$DEFAULT_wxUSE_SCROLLBAR)
629 AC_ARG_ENABLE(slider, [ --enable-slider use wxSlider class],
630 wxUSE_SLIDER="${enableval}",wxUSE_SLIDER=$DEFAULT_wxUSE_SLIDER)
631 AC_ARG_ENABLE(spinbtn, [ --enable-spinbtn use wxSpinButton class],
632 wxUSE_SPINBTN="${enableval}",wxUSE_SPINBTN=$DEFAULT_wxUSE_SPINBTN)
633 AC_ARG_ENABLE(splitter, [ --enable-splitter use wxSplitterWindow class],
634 wxUSE_SPLITTER="${enableval}",wxUSE_SPLITTER=$DEFAULT_wxUSE_SPLITTER)
635 AC_ARG_ENABLE(statbmp, [ --enable-statbmp use wxStaticBitmap class],
636 wxUSE_STATBMP="${enableval}",wxUSE_STATBMP=$DEFAULT_wxUSE_STATBMP)
637 AC_ARG_ENABLE(statbox, [ --enable-statbox use wxStaticBox class],
638 wxUSE_STATBOX="${enableval}",wxUSE_STATBOX=$DEFAULT_wxUSE_STATBOX)
639 AC_ARG_ENABLE(statline, [ --enable-statline use wxStaticLine class],
640 wxUSE_STATLINE="${enableval}",wxUSE_STATLINE=$DEFAULT_wxUSE_STATLINE)
641 AC_ARG_ENABLE(statusbar, [ --enable-statusbar use wxStatusBar class],
642 wxUSE_STATUSBAR="${enableval}",wxUSE_STATUSBAR=$DEFAULT_wxUSE_STATUSBAR)
643 AC_ARG_ENABLE(tabdialog, [ --enable-tabdialog use wxTabControl class],
644 wxUSE_TABDIALOG="${enableval}",wxUSE_TABDIALOG=$DEFAULT_wxUSE_TABDIALOG)
645 AC_ARG_ENABLE(toolbar, [ --enable-toolbar use wxToolBar class],
646 wxUSE_TOOLBAR="${enableval}",wxUSE_TOOLBAR=$DEFAULT_wxUSE_TOOLBAR)
647 AC_ARG_ENABLE(treectrl, [ --enable-treectrl use wxTreeCtrl class],
648 wxUSE_TREECTRL="${enableval}",wxUSE_TREECTRL=$DEFAULT_wxUSE_TREECTRL)
650 dnl ---------------------------------------------------------------------------
652 dnl ---------------------------------------------------------------------------
654 AC_ARG_ENABLE(commondlg, [ --enable-commondlg use common dialogs (wxDirDialog, wxProgressDialog, wxTextDialog, ...)],
655 wxUSE_COMMONDLGS="${enableval}",wxUSE_COMMONDLGS=$DEFAULT_wxUSE_COMMONDLGS)
656 AC_ARG_ENABLE(miniframe, [ --enable-miniframe use wxMiniFrame class],
657 wxUSE_MINIFRAME="${enableval}",wxUSE_MINIFRAME=$DEFAULT_wxUSE_MINIFRAME)
658 AC_ARG_ENABLE(tooltips, [ --enable-tooltips use wxToolTip class],
659 wxUSE_TOOLTIPS="${enableval}",wxUSE_TOOLTIPS=$DEFAULT_wxUSE_TOOLTIPS)
660 AC_ARG_ENABLE(splines, [ --enable-splines use spline drawing code],
661 wxUSE_SPLINES="${enableval}",wxUSE_SPLINES=$DEFAULT_wxUSE_SPLINES)
662 AC_ARG_ENABLE(validators, [ --enable-validators use wxValidator and derived classes],
663 wxUSE_VALIDATORS="${enableval}",wxUSE_VALIDATORS=$DEFAULT_wxUSE_VALIDATORS)
665 dnl check that no more than one toolkit is given and that if none are given that
666 dnl we have a default one
668 dnl NB: this supposes that the shell is able to handle arithmetic expansion and
669 dnl the ${VAR:-VALUE} construction. It does simplify our life though...
670 NUM_TOOLKITS="$((${wxUSE_GTK:-0}+${wxUSE_MOTIF:-0}+${wxUSE_MSW:-0}))"
672 case "$NUM_TOOLKITS" in
676 if test "$((${DEFAULT_wxUSE_GTK:-0}+${DEFAULT_wxUSE_MOTIF:-0}+${DEFAULT_wxUSE_MSW:-0}))" = 0; then
677 AC_MSG_ERROR(Please specify a toolkit)
680 wxUSE_GTK=$DEFAULT_wxUSE_GTK
681 wxUSE_MOTIF=$DEFAULT_wxUSE_MOTIF
682 wxUSE_MSW=$DEFAULT_wxUSE_MSW
685 AC_MSG_ERROR(Please specify at most one toolkit)
688 dnl ---------------------------------------------------------------------------
689 dnl Checks for programs
690 dnl ---------------------------------------------------------------------------
692 dnl flush the cache because checking for programs might abort
695 dnl cross-compiling support: we're cross compiling if the build system is
696 dnl different from the target one (assume host and target be always the same)
697 if eval "test $host != $build"; then
698 if eval "test $build != NONE"; then
701 RANLIB="$build-ranlib"
706 dnl C-compiler checks
707 dnl defines CC with the compiler to use
708 dnl defines GCC with yes if using gcc
709 dnl defines GCC empty if not using gcc
713 CFLAGS=`echo "$CFLAGS" | sed 's/-g//g'`
715 dnl what is the c-preprocessor
716 dnl defines CPP with the c-preprocessor
719 dnl is -traditional needed for correct compilations
720 dnl adds -traditional for gcc if needed
721 AC_PROG_GCC_TRADITIONAL
726 dnl C++-compiler checks
727 dnl defines CXX with the compiler to use
728 dnl defines GXX with yes if using gxx
729 dnl defines GXX empty if not using gxx
733 dnl what is the C++-preprocessor
734 dnl defines CXXCPP with the C++-preprocessor
737 CXXFLAGS=`echo "$CXXFLAGS" | sed 's/-g//g'`
742 dnl defines RANLIB with the appropriate command
746 dnl defines AR with the appropriate command
747 AC_CHECK_PROG(AR, ar, ar, ar)
750 dnl defines INSTALL with the appropriate command
754 dnl defines LN_S with the appropriate command
758 dnl defines STRIP as strip or nothing if not found
759 AC_CHECK_PROG(STRIP, strip, strip, true)
761 dnl check if VPATH works
762 AC_MSG_CHECKING("make for VPATH support")
764 cat - << EOF > confMake
770 if test ! -d sub ; then
773 echo dummy > sub/file
774 ${MAKE-make} -f confMake VPATH=sub 2> config.log > /dev/null
776 rm -f sub/file check final_file confMake
778 if test "$RESULT" = 0; then
783 You need a make-utility that is able to use the variable
785 If your version of make does not support VPATH correctly,
786 please install GNU-make (possibly as gmake), and start
787 configure with the following command:
788 export MAKE=gmake; ./configure for sh-type shells
789 setenv MAKE gmake; ./configure for csh-type shells
790 Also please do remember to use gmake in this case every time
791 you are trying to compile.
796 dnl defines YACC with the appropriate command
800 dnl defines LEX with the appropriate command
801 dnl defines LEXLIB with the appropriate library
802 dnl this AM version (don't use AC_PROG_LEX!) also
803 dnl defines YYTEXT_POINTER if yytext is char*
804 dnl defines LEX_OUTPUT_ROOT as to the base of the
805 dnl filename output by the lexer
808 dnl libtool checks (disable static libs by default, this takes too much time...)
812 dnl ---------------------------------------------------------------------------
813 dnl Define search path for includes and libraries: all headers and libs will be
814 dnl looked for in all directories of this path
815 dnl ---------------------------------------------------------------------------
818 /usr/Motif-1.2/include \
819 /usr/Motif-2.1/include \
821 /usr/include/Motif1.2 \
822 /opt/xpm/include/X11 \
824 /usr/Motif1.2/include \
840 /usr/local/X11R6/include \
841 /usr/local/X11R5/include \
842 /usr/local/X11R4/include \
844 /usr/local/include/X11R6 \
845 /usr/local/include/X11R5 \
846 /usr/local/include/X11R4 \
850 /usr/local/X11/include \
851 /usr/local/include/X11 \
855 /usr/XFree86/include/X11 \
862 /usr/unsupported/include \
863 /usr/athena/include \
864 /usr/local/x11r5/include \
865 /usr/lpp/Xamples/include \
867 /usr/local/include/gtk \
868 /usr/local/include/qt \
871 /usr/openwin/include \
872 /usr/openwin/share/include \
875 SEARCH_LIB="`echo "$SEARCH_INCLUDE" | sed s/include/lib/g` "
877 dnl ------------------------------------------------------------------------
878 dnl Check for libraries
879 dnl ------------------------------------------------------------------------
881 dnl flush the cache because checking for libraries might abort
884 dnl find the X11 include and library files
885 dnl defines x_includes and x_libraries
888 if test "$no_x" = "yes"; then
889 AC_MSG_ERROR(X11 libraries not found, aborting)
892 CHECK_INCLUDE="-I/usr/include $X_CFLAGS"
893 CHECK_LIB="-L/lib -L/usr/lib $X_LIBS"
895 dnl ----------------------------------------------------------------
896 dnl search for toolkit (widget sets)
897 dnl ----------------------------------------------------------------
909 if test "$wxUSE_GTK" = 1; then
910 dnl avoid calling AM_PATH_GTK twice, so check first for the newer version and
911 dnl only then, if it wasn't found, for an older one
912 AM_PATH_GTK(1.2.0, WXGTK12=1)
913 if test "$WXGTK12" != 1; then
914 AM_PATH_GTK(1.0.0, , AC_MSG_ERROR(Is gtk-config in path and GTK+ is version 1.2.X or 1.0.X?))
917 TOOLKIT_INCLUDE="$GTK_CFLAGS"
918 GUI_TK_LIBRARY="$GTK_LIBS"
921 LTLIBOBJS="$LTLIBOBJS image.lo utilsgtk.lo win_gtk.lo"
924 if test "$wxUSE_MOTIF" = 1; then
925 AC_MSG_CHECKING(for Motif/Lesstif includes)
926 AC_PATH_FIND_INCLUDES($SEARCH_INCLUDE, Xm/Xm.h)
927 if test "$ac_find_includes" != "" ; then
928 AC_MSG_RESULT(found $ac_find_includes)
931 AC_MSG_ERROR(please set CFLAGS to contain the location of Xm/Xm.h)
934 AC_MSG_CHECKING(for Motif/Lesstif library)
935 AC_PATH_FIND_LIBRARIES($SEARCH_LIB, Xm)
936 if test "$ac_find_libraries" != "" ; then
937 AC_INCLUDE_PATH_EXIST($ac_find_includes, $CHECK_INCLUDE)
938 AC_LINK_PATH_EXIST($ac_find_libraries, $CHECK_LIB)
940 CHECK_LINK="$CHECK_LIB $ac_path_to_link"
941 CHECK_INCLUDE="$CHECK_INCLUDE $ac_path_to_include"
942 AC_MSG_RESULT(found at $ac_find_libraries)
945 AC_MSG_ERROR(please set LDFLAGS to contain the location of libXm)
948 AC_MSG_CHECKING(for Xt library)
949 AC_PATH_FIND_LIBRARIES($SEARCH_LIB,Xt)
950 if test "$ac_find_libraries" != "" ; then
951 AC_LINK_PATH_EXIST($ac_find_libraries,$CHECK_LIB)
952 CHECK_LINK="$CHECK_LIB $ac_path_to_link"
953 AC_MSG_RESULT(found at $ac_find_libraries)
956 AC_MSG_ERROR(please set LDFLAGS to contain the location of libXt)
960 AC_MSG_CHECKING(for Xpm library)
961 AC_PATH_FIND_LIBRARIES($SEARCH_LIB,Xpm)
962 if test "$ac_find_libraries" != "" ; then
963 AC_LINK_PATH_EXIST($ac_find_libraries,$CHECK_LIB)
964 CHECK_LINK="$CHECK_LIB $ac_path_to_link"
966 AC_DEFINE(wxHAVE_LIB_XPM)
967 AC_MSG_RESULT(found at $ac_find_libraries)
970 AC_MSG_WARN(library will be compiled without support for images in XPM format)
973 GUI_TK_LINK="-lXm $(XPM_LINK)-lXmu -lXt -lX11 -lm"
974 GUI_TK_LIBRARY="$CHECK_LIB $GUI_TK_LINK"
978 dnl the name of the directory where the files for this toolkit live
979 TOOLKIT_DIR=`echo ${TOOLKIT} | tr "A-Z" "a-z"`
981 dnl the symbol which allows conditional compilation for the given toolkit
982 TOOLKIT_DEF=-D__WX${TOOLKIT}__
984 dnl the name (without leading 'wx_') of the library
985 WX_LIBRARY=${TOOLKIT_DIR}2
987 dnl ------------------------------------------------------------------------
988 dnl Check for headers
989 dnl ------------------------------------------------------------------------
991 dnl defines HAVE_STRINGS_H (where some string functions live on AIX for example)
992 AC_CHECK_HEADERS(strings.h)
993 dnl defines HAVE_UNISTD_H
994 AC_CHECK_HEADERS(unistd.h)
995 dnl defines HAVE_WCHAR_H
996 AC_CHECK_HEADERS(wchar.h)
997 dnl defines HAVE_WCSTR_H
998 AC_CHECK_HEADERS(wcstr.h)
999 dnl defines HAVE_FNMATCH_H
1000 AC_CHECK_HEADERS(fnmatch.h)
1002 dnl ---------------------------------------------------------------------------
1003 dnl Checks for typedefs
1004 dnl ---------------------------------------------------------------------------
1006 dnl defines mode_t if not already defined
1008 dnl defines off_t if not already defined
1010 dnl defines pid_t if not already defined
1012 dnl defines size_t if not already defined
1014 dnl defines uid_t and gid_t if not already defined
1017 dnl ---------------------------------------------------------------------------
1018 dnl Checks for structures
1019 dnl ---------------------------------------------------------------------------
1021 dnl ---------------------------------------------------------------------------
1022 dnl Checks for compiler characteristics
1023 dnl ---------------------------------------------------------------------------
1025 dnl defines const to be empty if c-compiler does not support const fully
1027 dnl defines inline to a sensible value for the c-compiler
1030 dnl check the sizes of integral types (give some reasonable default values for
1031 dnl cross-compiling)
1032 dnl defines the size of certain types of variables in SIZEOF_<TYPE>
1033 AC_CHECK_SIZEOF(int *, 4)
1034 AC_CHECK_SIZEOF(int, 4)
1035 AC_CHECK_SIZEOF(long, 4)
1036 AC_CHECK_SIZEOF(long long, 0)
1038 dnl check for iostream (as opposed to iostream.h) standard header
1039 WX_CPP_NEW_HEADERS(, AC_DEFINE(wxUSE_IOSTREAMH))
1041 dnl check whether C++ compiler supports bool built-in type
1044 dnl check whether overloading on size_t/int parameter works
1045 WX_CPP_SIZE_T_IS_NOT_INT
1047 dnl ---------------------------------------------------------------------------
1048 dnl Check for functions
1049 dnl ---------------------------------------------------------------------------
1051 dnl check for wcslen
1052 AC_CHECK_LIB(c, wcslen, [
1053 AC_DEFINE(HAVE_WCSLEN)
1056 AC_CHECK_LIB(w, wcslen, [
1057 AC_DEFINE(HAVE_WCSLEN)
1062 dnl check for vprintf/vsprintf() which are GNU extensions
1065 dnl check for vsnprintf() - a safe version of vsprintf()
1066 AC_CHECK_FUNCS(vsnprintf,
1067 AC_DEFINE(HAVE_VSNPRINTF),
1068 AC_MSG_WARN(unsafe function sprintf will be used instead of snprintf)
1071 dnl check for vfork() (even if it's the same as fork() in modern Unices)
1072 AC_CHECK_FUNCS(vfork)
1075 AC_CHECK_FUNCS(nanosleep, AC_DEFINE(HAVE_NANOSLEEP), [
1076 AC_CHECK_LIB(posix4, nanosleep, [
1077 AC_DEFINE(HAVE_NANOSLEEP)
1078 POSIX4_LINK="-lposix4"
1080 AC_CHECK_FUNCS(usleep,
1081 AC_DEFINE(HAVE_USLEEP),
1082 AC_MSG_WARN([wxSleep() function will not work]))
1086 dnl check for uname (POSIX) and gethostname (BSD)
1087 AC_CHECK_FUNCS(uname gethostname, break)
1089 dnl ===========================================================================
1090 dnl Now we have all the info we need - use it!
1091 dnl ===========================================================================
1096 dnl ---------------------------------------------------------------------------
1098 dnl ---------------------------------------------------------------------------
1101 dnl defines THREADS_OBJ which contains the object files to build
1102 dnl defines THREADS_LINK which contains the thread library to link with
1103 dnl defines wxUSE_THREADS=1 if thread support is activated
1108 if test "$wxUSE_THREADS" = "yes"; then
1109 dnl find if POSIX threads are available
1111 dnl standard lib name is pthread
1112 dnl We no longer test for pthread-0.7 as it breaks compilation on some
1113 dnl glibc2 systems, especially for static linkage.
1114 AC_CHECK_LIB(pthread, pthread_create, [
1115 THREADS_OBJ="threadpsx.lo"
1116 THREADS_LINK="pthread"
1118 dnl thread functions are in libc_r under FreeBSD
1119 AC_CHECK_LIB(c_r, pthread_create, [
1120 THREADS_OBJ="threadpsx.lo"
1123 dnl VZ: SGI threads are not supported currently
1124 AC_CHECK_HEADER(sys/prctl.h, [
1125 THREADS_OBJ="threadsgi.lo"
1129 if test "$THREADS_LINK" != ""; then
1130 AC_DEFINE(wxUSE_THREADS)
1132 AC_MSG_WARN(No thread support on this system)
1136 if test -z "$THREADS_OBJ"; then
1140 dnl do other tests only if we are using threads
1141 if test "$wxUSE_THREADS" = "yes"; then
1142 dnl must define _REENTRANT for multithreaded code
1143 CFLAGS="${CFLAGS} -D_REENTRANT"
1144 CXXFLAGS="${CXXFLAGS} -D_REENTRANT"
1146 SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS thread"
1147 EXTRA_VPATH="$EXTRA_VPATH:\$(srcdir)/unix"
1148 LTLIBOBJS="$LTLIBOBJS $THREADS_OBJ"
1150 dnl define autoconf macro to check for given function in both pthread and
1151 dnl posix4 libraries
1152 dnl usage: AC_FUNC_THREAD(FUNCTION_NAME)
1154 dnl AC_DEFUN(AC_FUNC_THREAD,
1156 dnl AC_CHECK_LIB($THREADS_LINK, $1,
1157 dnl AC_DEFINE(HAVE_`'translit($1, `A-Z', 'a-z'),
1158 dnl [AC_CHECK_LIB("posix4", $1,
1159 dnl [AC_DEFINE(HAVE_`'translit($1, `A-Z', 'a-z'))
1160 dnl POSIX4_LINK="-lposix4"
1165 AC_CHECK_HEADERS(sched.h)
1167 AC_CHECK_LIB($THREADS_LINK, sched_yield,
1168 AC_DEFINE(HAVE_SCHED_YIELD),
1169 [AC_CHECK_LIB("posix4", sched_yield,
1170 [AC_DEFINE(HAVE_SCHED_YIELD) POSIX4_LINK="-lposix4"],
1171 AC_MSG_WARN(wxThread::Yield will not work properly)
1175 dnl VZ: we should be checking for all of the following functions instead:
1176 dnl 1. pthread_attr_getschedpolicy
1177 dnl 2. sched_get_priority_min and sched_get_priority_max
1178 dnl 3. pthread_attr_getschedparam and pthread_attr_setschedparam
1179 dnl but it seems that if the first one is there, the other ones are too (of
1180 dnl course the proper solution would be to implement AC_FUNC_THREAD above
1181 dnl and do test for them all - anyone?)
1182 AC_CHECK_LIB($THREADS_LINK, pthread_attr_getschedpolicy,
1183 AC_DEFINE(HAVE_THREAD_PRIORITY_FUNCTIONS),
1184 [AC_CHECK_LIB("posix4", pthread_attr_getschedpolicy,
1185 [AC_DEFINE(HAVE_THREAD_PRIORITY_FUNCTIONS) POSIX4_LINK="-lposix4"],
1186 AC_MSG_WARN(Setting thread priority will not work)
1190 AC_CHECK_LIB($THREADS_LINK, pthread_cancel,
1191 AC_DEFINE(HAVE_PTHREAD_CANCEL),
1192 AC_MSG_WARN([wxThread::Kill() will not work properly]))
1194 AC_CACHE_CHECK([for pthread_cleanup_push/pop], wx_cv_func_pthread_cleanup_push,
1196 AC_TRY_COMPILE([#include <pthread.h>],
1198 pthread_cleanup_push(NULL, NULL);
1199 pthread_cleanup_pop(0);
1201 wx_cv_func_pthread_cleanup_push=yes
1202 AC_DEFINE(HAVE_THREAD_CLEANUP_FUNCTIONS)
1204 wx_cv_func_pthread_cleanup_push=no
1208 THREADS_LINK="-l$THREADS_LINK"
1211 if test "$WXGTK12" = 1 ; then
1212 AC_DEFINE_UNQUOTED(__WXGTK12__,$WXGTK12)
1216 if test "$wxUSE_DEBUG_GDB" = "yes" ; then
1217 wxUSE_DEBUG_INFO=yes
1221 if test "$wxUSE_DEBUG_INFO" = "yes" ; then
1226 if test "$wxUSE_DEBUG_FLAG" = "yes" ; then
1228 WXDEBUG_DEFINE="-D__WXDEBUG__"
1230 WXDEBUG_DEFINE="-DGTK_NO_CHECK_CASTS"
1233 if test "$wxUSE_MEM_TRACING" = "yes" ; then
1234 AC_DEFINE(wxUSE_MEMORY_TRACING)
1235 AC_DEFINE(wxUSE_GLOBAL_MEMORY_OPERATORS)
1236 SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS memcheck"
1239 if test "$wxUSE_DMALLOC" = "yes" ; then
1240 DMALLOC_LINK="-ldmalloc"
1244 if test "$wxUSE_PROFILE" = "yes" ; then
1248 CXXFLAGS=`echo "${CXXFLAGS}" | sed "s/\-O.//g" `
1249 CFLAGS=`echo "${CFLAGS}" | sed "s/\-O.//g" `
1250 if test "$wxUSE_OPTIMISE" = "no" ; then
1253 if test "$GCC" = yes ; then
1257 OPTIMISE="${OPTIMISE} "
1265 dnl ---------------------------------------------------------------------------
1266 dnl Optional libraries
1267 dnl ---------------------------------------------------------------------------
1269 if test "$wxUSE_ZLIB" = "yes" ; then
1270 AC_DEFINE(wxUSE_ZLIB)
1271 EXTRA_VPATH="$EXTRA_VPATH:\$(srcdir)/zlib"
1272 LTLIBOBJS="$LTLIBOBJS adler32.lo compress.lo crc32.lo gzio.lo uncompr.lo deflate.lo trees.lo zutil.lo inflate.lo infblock.lo inftrees.lo infcodes.lo infutil.lo inffast.lo"
1273 if eval "test x$wxUSE_STREAMS = x1"; then
1274 LTLIBOBJS="$LTLIBOBJS zstream.lo"
1278 if test "$wxUSE_LIBPNG" = "yes" ; then
1279 AC_DEFINE(wxUSE_LIBPNG)
1280 LTLIBOBJS="$LTLIBOBJS imagpng.lo png.lo pngset.lo pngget.lo pngrutil.lo pngtrans.lo pngwutil.lo pngread.lo pngrio.lo pngwio.lo pngwrite.lo pngrtran.lo pngwtran.lo pngmem.lo pngerror.lo pngpread.lo"
1281 EXTRA_VPATH="$EXTRA_VPATH:\$(srcdir)/png"
1282 SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS png"
1285 if test "$wxUSE_LIBGIF" = "yes" ; then
1286 AC_DEFINE(wxUSE_LIBGIF)
1287 LTLIBOBJS="$LTLIBOBJS imaggif.lo"
1290 if test "$wxUSE_LIBJPEG" = "yes" ; then
1291 AC_DEFINE(wxUSE_LIBJPEG)
1292 EXTRA_VPATH="$EXTRA_VPATH:\${srcdir}/jpeg"
1293 LTLIBOBJS="$LTLIBOBJS imagjpeg.lo \
1294 jcomapi.lo jutils.lo jerror.lo jmemmgr.lo jmemnobs.lo \
1295 jcapimin.lo jcapistd.lo jctrans.lo jcparam.lo jdatadst.lo \
1296 jcinit.lo jcmaster.lo jcmarker.lo jcmainct.lo jcprepct.lo \
1297 jccoefct.lo jccolor.lo jcsample.lo jchuff.lo jcphuff.lo \
1298 jcdctmgr.lo jfdctfst.lo jfdctflt.lo jfdctint.lo \
1299 jdapimin.lo jdapistd.lo jdtrans.lo jdatasrc.lo \
1300 jdmaster.lo jdinput.lo jdmarker.lo jdhuff.lo jdphuff.lo \
1301 jdmainct.lo jdcoefct.lo jdpostct.lo jddctmgr.lo jidctfst.lo \
1302 jidctflt.lo jidctint.lo jidctred.lo jdsample.lo jdcolor.lo \
1303 jquant1.lo jquant2.lo jdmerge.lo"
1306 if test "$wxUSE_OPENGL" = "yes"; then
1307 AC_CHECK_HEADER(GL/gl.h, [
1308 AC_CHECK_LIB(GL, glInitNames, [
1310 AC_DEFINE(wxUSE_OPENGL)
1311 UTILS_SUBDIRS="$UTILS_SUBDIRS glcanvas/src"
1313 AC_CHECK_LIB(MesaGL, glInitNames, [
1314 OPENGL_LINK="-lMesaGL"
1315 AC_DEFINE(wxUSE_OPENGL)
1316 UTILS_SUBDIRS="$UTILS_SUBDIRS glcanvas/src"
1322 dnl ---------------------------------------------------------------------------
1323 dnl the library may be built without GUI classes at all
1324 dnl ---------------------------------------------------------------------------
1326 if test "$wxUSE_GUI" = "yes"; then
1327 AC_DEFINE(wxUSE_GUI)
1329 dnl the things we always pull in the GUI version of the library:
1330 dnl 1. basic things like wxApp, wxWindow, wxControl, wxFrame, wxDialog (the
1331 dnl library really can't be built without those)
1332 dnl 2. basic controls: wxButton, wxStaticText, wxTextCtrl (these are used in
1333 dnl almost any program and the first 2 are needed to show a message box
1334 dnl which want to be always able to do)
1335 dnl 3. GDI stuff: icon, cursors and all that. Although it would be very nice
1336 dnl to compile without them (if the app doesn't do any drawing, it doesn't
1337 dnl need the dcs, pens, brushes, ...), this just can't be done now
1338 dnl 4. menu stuff: wxMenu, wxMenuBar, wxMenuItem
1339 dnl 5. misc stuff: timers, settings, message box
1340 LTLIBOBJS="$LTLIBOBJS \
1341 main.lo app.lo event.lo wincmn.lo window.lo control.lo framecmn.lo frame.lo dialog.lo panelg.lo \
1342 button.lo stattext.lo textctrl.lo \
1343 bitmap.lo brush.lo colour.lo cursor.lo data.lo dc.lo dcbase.lo dcclient.lo \
1344 dcmemory.lo dcscreen.lo font.lo gdicmn.lo gdiobj.lo icon.lo palette.lo pen.lo region.lo \
1346 settings.lo timer.lo msgdlgg.lo"
1348 AC_DEFINE(wxUSE_NOGUI)
1351 dnl ---------------------------------------------------------------------------
1353 dnl ---------------------------------------------------------------------------
1355 if test "$wxUSE_UNIX" = "yes"; then
1356 AC_DEFINE(wxUSE_UNIX)
1357 LTLIBOBJS="$LTLIBOBJS utilsunx.lo"
1360 dnl ---------------------------------------------------------------------------
1361 dnl Register non-GUI class options for makefiles and setup.h
1362 dnl ---------------------------------------------------------------------------
1364 if test "$wxUSE_APPLE_IEEE" = "yes"; then
1365 AC_DEFINE(wxUSE_APPLE_IEEE)
1366 LTLIBOBJS="$LTLIBOBJS extended.lo"
1369 if test "$wxUSE_TIMEDATE" = "yes"; then
1370 AC_DEFINE(wxUSE_TIMEDATE)
1371 LTLIBOBJS="$LTLIBOBJS date.lo time.lo"
1372 SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS typetest"
1375 if test "$wxUSE_FILE" = "yes"; then
1376 AC_DEFINE(wxUSE_FILE)
1377 LTLIBOBJS="$LTLIBOBJS file.lo"
1380 if test "$wxUSE_TEXTFILE" = "yes"; then
1381 if test "$wxUSE_FILE" != "yes"; then
1382 AC_MSG_WARN(wxTextFile requires wxFile and it won't be compiled without it)
1384 AC_DEFINE(wxUSE_TEXTFILE)
1385 LTLIBOBJS="$LTLIBOBJS textfile.lo"
1389 if test "$wxUSE_CONFIG" = "yes" ; then
1390 if test "$wxUSE_TEXTFILE" != "yes"; then
1391 AC_MSG_WARN(wxConfig requires wxTextFile and it won't be compiled without it)
1393 AC_DEFINE(wxUSE_CONFIG)
1394 LTLIBOBJS="$LTLIBOBJS config.lo fileconf.lo"
1395 SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS config"
1399 if test "$wxUSE_INTL" = "yes" ; then
1400 if test "$wxUSE_FILE" != "yes"; then
1401 AC_MSG_WARN(I18n code requires wxFile and it won't be compiled without it)
1403 AC_DEFINE(wxUSE_INTL)
1404 LTLIBOBJS="$LTLIBOBJS intl.lo"
1405 SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS internat"
1409 if test "$wxUSE_LOG" = "yes"; then
1410 AC_DEFINE(wxUSE_LOG)
1411 LTLIBOBJS="$LTLIBOBJS log.lo"
1414 if test "$wxUSE_LONGLONG" = "yes"; then
1415 AC_DEFINE(wxUSE_LONGLONG)
1416 LTLIBOBJS="$LTLIBOBJS longlong.lo"
1419 if test "$wxUSE_SOCKETS" = "yes" ; then
1420 if test "$wxUSE_THREADS" = "yes" ; then
1421 AC_DEFINE(wxUSE_SOCKETS)
1422 LTLIBOBJS="$LTLIBOBJS sckint.lo socket.lo sckaddr.lo protocol.lo http.lo ftp.lo url.lo"
1423 SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS wxsocket"
1425 AC_MSG_WARN(socket classes require --with-threads and won't be compiled without it)
1430 if test "$wxUSE_STREAMS" = "yes" ; then
1431 AC_DEFINE(wxUSE_STREAMS)
1432 LTLIBOBJS="$LTLIBOBJS stream.lo wfstream.lo datstrm.lo mstream.lo objstrm.lo"
1433 if test "$wxUSE_SOCKETS" = "yes" ; then
1434 LTLIBOBJS="$LTLIBOBJS sckstrm.lo"
1438 if test "$wxUSE_SERIAL" = "yes" ; then
1439 AC_DEFINE(wxUSE_SERIAL)
1442 dnl ------------------------------------------------------------------------
1444 dnl ------------------------------------------------------------------------
1446 if test "$wxUSE_SOCKETS" = "yes"; then
1449 dnl determine the type of third argument for getsockname
1450 AC_MSG_CHECKING(the type of the third argument of getsockname)
1452 [#include <sys/socket.h>],
1453 [socklen_t len; getsockname(0, NULL, &len);],
1454 AC_DEFINE(SOCKLEN_T, socklen_t) AC_MSG_RESULT(socklen_t),
1456 [#include <sys/socket.h>],
1457 [size_t len; getsockname(0, NULL, &len);],
1458 AC_DEFINE(SOCKLEN_T, size_t) AC_MSG_RESULT(size_t),
1460 [#include <sys/socket.h>],
1461 [int len; getsockname(0, NULL, &len);],
1462 AC_DEFINE(SOCKLEN_T, int) AC_MSG_RESULT(int),
1463 AC_MSG_RESULT(unknown)
1470 dnl ---------------------------------------------------------------------------
1471 dnl Joystick support
1472 dnl ---------------------------------------------------------------------------
1474 if test "$wxUSE_JOYSTICK" = 1; then
1475 dnl joystick support is only for Linux 2.1.x or greater
1476 AC_CHECK_HEADERS(linux/joystick.h)
1477 if test "$ac_cv_header_linux_joystick_h" = "yes"; then
1478 AC_DEFINE(wxUSE_JOYSTICK)
1479 LTLIBOBJS="$LTLIBOBJS joystick.lo"
1480 SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS joytest"
1484 dnl ------------------------------------------------------------------------
1486 dnl ------------------------------------------------------------------------
1490 if test "$wxUSE_DYNLIB_CLASS" = "yes"; then
1491 dnl the test is a bit complicated because we check for dlopen() both with
1492 dnl and without -ldl
1493 AC_CHECK_FUNCS(dlopen,
1494 [AC_DEFINE(HAVE_DLOPEN) HAVE_DL_FUNCS=1],
1495 [AC_CHECK_LIB(dl, dlopen,
1496 [AC_DEFINE(HAVE_DLOPEN) HAVE_DL_FUNCS=1])])
1497 AC_CHECK_FUNCS( shl_load,
1498 [AC_DEFINE(HAVE_SHL_LOAD) HAVE_DL_FUNCS=1 HAVE_SHL_FUNCS=1])
1500 if test "$HAVE_DL_FUNCS" = 0; then
1501 AC_MSG_WARN("--with-dynlib and --with-odbc will be disabled due to missing shared library support")
1503 wxUSE_DYNLIB_CLASS=no
1507 if test "$wxUSE_DYNLIB_CLASS" = "yes" ; then
1508 AC_DEFINE(wxUSE_DYNLIB_CLASS)
1509 LTLIBOBJS="$LTLIBOBJS dynlib.lo"
1512 dnl ---------------------------------------------------------------------------
1514 dnl ---------------------------------------------------------------------------
1516 if test "$wxUSE_UNICODE" = "yes" ; then
1517 AC_DEFINE(wxUSE_UNICODE)
1520 if test "$wxUSE_WCSRTOMBS" = "yes" ; then
1521 AC_DEFINE(wxUSE_WCSRTOMBS)
1524 dnl ----------------------------------------------------------------
1526 dnl ----------------------------------------------------------------
1529 if test "$wxUSE_ODBC" = "yes" ; then
1530 AC_DEFINE(wxUSE_ODBC)
1531 EXTRA_VPATH="$EXTRA_VPATH:\$(srcdir)/iodbc"
1532 LTLIBOBJS="$LTLIBOBJS catalog.lo connect.lo dlf.lo dlproc.lo execute.lo fetch.lo hdbc.lo henv.lo herr.lo hstmt.lo info.lo itrace.lo misc.lo prepare.lo result.lo"
1533 SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS db"
1536 dnl ----------------------------------------------------------------
1537 dnl Register PostScript options for makefiles and setup.h
1538 dnl ----------------------------------------------------------------
1540 if test "$wxUSE_POSTSCRIPT" = "yes" ; then
1541 AC_DEFINE(wxUSE_POSTSCRIPT)
1542 LTLIBOBJS="$LTLIBOBJS printps.lo dcpsg.lo"
1545 AC_DEFINE(wxUSE_AFM_FOR_POSTSCRIPT)
1547 AC_DEFINE(wxUSE_NORMALIZED_PS_FONTS)
1549 dnl ---------------------------------------------------------------------------
1550 dnl big GUI components: MDI, doc/view, printing, help, ...
1551 dnl ---------------------------------------------------------------------------
1553 if test "$wxUSE_CONSTRAINTS" = "yes"; then
1554 AC_DEFINE(wxUSE_CONSTRAINTS)
1556 LTLIBOBJS="$LTLIBOBJS layout.lo laywin.lo"
1557 SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS layout"
1560 if test "$wxUSE_MDI_ARCHITECTURE" = "yes"; then
1561 AC_DEFINE(wxUSE_MDI_ARCHITECTURE)
1562 LTLIBOBJS="$LTLIBOBJS mdi.lo"
1563 SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS mdi"
1566 if test "$wxUSE_DOC_VIEW_ARCHITECTURE" = "yes" ; then
1567 AC_DEFINE(wxUSE_DOC_VIEW_ARCHITECTURE)
1568 LTLIBOBJS="$LTLIBOBJS docview.lo"
1569 SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS docview"
1570 if test "$wxUSE_MDI_ARCHITECTURE" = "yes"; then
1571 LTLIBOBJS="$LTLIBOBJS docmdi.lo"
1572 SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS docvwmdi"
1576 if test "$wxUSE_HELP" = "yes"; then
1577 AC_DEFINE(wxUSE_HELP)
1578 LTLIBOBJS="$LTLIBOBJS helpext.lo helphtml.lo helpbase.lo"
1579 SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS help"
1582 if test "$wxUSE_PRINTING_ARCHITECTURE" = "yes" ; then
1583 AC_DEFINE(wxUSE_PRINTING_ARCHITECTURE)
1584 LTLIBOBJS="$LTLIBOBJS prntbase.lo paper.lo"
1585 SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS printing"
1588 if test "$wxUSE_PROLOGIO" = "yes" ; then
1589 AC_DEFINE(wxUSE_PROLOGIO)
1590 LTLIBOBJS="$LTLIBOBJS wxexpr.lo parser.lo"
1593 if test "$wxUSE_RESOURCES" = "yes" ; then
1594 if test "$wxUSE_PROLOGIO" = "yes" ; then
1595 AC_DEFINE(wxUSE_RESOURCES)
1596 LTLIBOBJS="$LTLIBOBJS resource.lo"
1597 if test "$wxUSE_GTK" = 1; then
1598 LTLIBOBJS="$LTLIBOBJS utilsres.lo"
1600 SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS resource"
1602 AC_MSG_WARN([wxWindows ressource system requires PrologIO and can't be compiled without it.])
1606 if test "$wxUSE_X_RESOURCES" = "yes"; then
1607 AC_DEFINE(wxUSE_X_RESOURCES)
1610 dnl ---------------------------------------------------------------------------
1611 dnl IPC: IPC, d-n-d, clipboard, ...
1612 dnl ---------------------------------------------------------------------------
1614 if test "$wxUSE_IPC" = "yes"; then
1615 AC_DEFINE(wxUSE_IPC)
1616 LTLIBOBJS="$LTLIBOBJS ipcbase.lo sckipc.lo"
1619 if test "$wxUSE_CLIPBOARD" = "yes"; then
1620 AC_DEFINE(wxUSE_CLIPBOARD)
1621 LTLIBOBJS="$LTLIBOBJS clipbrd.lo dataobj.lo"
1624 if test "$wxUSE_DRAG_AND_DROP" = "yes"; then
1625 if test "$WXGTK12" = 1 ; then
1626 AC_DEFINE(wxUSE_DRAG_AND_DROP)
1627 LTLIBOBJS="$LTLIBOBJS dnd.lo"
1628 SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS dnd"
1629 if test "$wxUSE_CLIPBOARD" != "yes"; then
1630 LTLIBOBJS="$LTLIBOBJS dataobj.lo"
1633 AC_MSG_WARN(drag and drop is only supported under GTK 1.2)
1637 if test "$wxUSE_SPLINES" = "yes" ; then
1638 AC_DEFINE(wxUSE_SPLINES)
1641 dnl ---------------------------------------------------------------------------
1643 dnl ---------------------------------------------------------------------------
1645 if test "$wxUSE_ACCEL" = "yes"; then
1646 AC_DEFINE(wxUSE_ACCEL)
1647 LTLIBOBJS="$LTLIBOBJS accel.lo"
1650 if test "$wxUSE_CARET" = "yes"; then
1651 AC_DEFINE(wxUSE_CARET)
1652 LTLIBOBJS="$LTLIBOBJS caret.lo"
1653 SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS caret"
1656 if test "$wxUSE_COMBOBOX" = "yes"; then
1657 AC_DEFINE(wxUSE_COMBOBOX)
1658 LTLIBOBJS="$LTLIBOBJS choice.lo combobox.lo"
1661 if test "$wxUSE_BMPBUTTON" = "yes"; then
1662 AC_DEFINE(wxUSE_BMPBUTTON)
1663 LTLIBOBJS="$LTLIBOBJS bmpbuttn.lo"
1666 if test "$wxUSE_CHECKBOX" = "yes"; then
1667 AC_DEFINE(wxUSE_CHECKBOX)
1668 LTLIBOBJS="$LTLIBOBJS checkbox.lo"
1671 if test "$wxUSE_CHECKLST" = "yes"; then
1672 AC_DEFINE(wxUSE_CHECKLISTBOX)
1673 LTLIBOBJS="$LTLIBOBJS checklst.lo"
1674 SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS checklst"
1677 if test "$wxUSE_GAUGE" = "yes"; then
1678 AC_DEFINE(wxUSE_GAUGE)
1679 LTLIBOBJS="$LTLIBOBJS gauge.lo"
1682 if test "$wxUSE_GRID" = "yes"; then
1683 AC_DEFINE(wxUSE_GRID)
1684 LTLIBOBJS="$LTLIBOBJS gridg.lo"
1685 SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS grid"
1688 if test "$wxUSE_IMAGLIST" = "yes"; then
1689 AC_DEFINE(wxUSE_IMAGLIST)
1690 LTLIBOBJS="$LTLIBOBJS imaglist.lo"
1693 if test "$wxUSE_LISTBOX" = "yes"; then
1694 AC_DEFINE(wxUSE_LISTBOX)
1695 LTLIBOBJS="$LTLIBOBJS listbox.lo"
1698 if test "$wxUSE_LISTCTRL" = "yes"; then
1699 if test "$wxUSE_IMAGLIST" = "yes"; then
1700 AC_DEFINE(wxUSE_LISTCTRL)
1701 LTLIBOBJS="$LTLIBOBJS listctrl.lo"
1702 SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS listctrl"
1704 AC_MSG_WARN([wxListCtrl requires wxImageList and won't be compiled without it])
1708 if test "$wxUSE_NOTEBOOK" = "yes"; then
1709 AC_DEFINE(wxUSE_NOTEBOOK)
1710 LTLIBOBJS="$LTLIBOBJS notebook.lo"
1711 SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS notebook"
1714 if test "$wxUSE_RADIOBOX" = "yes"; then
1715 AC_DEFINE(wxUSE_RADIOBOX)
1716 LTLIBOBJS="$LTLIBOBJS radiobox.lo"
1719 if test "$wxUSE_RADIOBTN" = "yes"; then
1720 AC_DEFINE(wxUSE_RADIOBTN)
1721 LTLIBOBJS="$LTLIBOBJS radiobut.lo"
1724 if test "wxUSE_SASH" = 1; then
1725 AC_DEFINE(wxUSE_SASH)
1726 LTLIBOBJS="$LTLIBOBJS sashwin.lo"
1727 SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS sashtest"
1730 if test "$wxUSE_SCROLLBAR" = "yes"; then
1731 AC_DEFINE(wxUSE_SCROLLBAR)
1732 LTLIBOBJS="$LTLIBOBJS scrolbar.lo scrolwin.lo"
1733 SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS scroll"
1736 if test "$wxUSE_SLIDER" = "yes"; then
1737 AC_DEFINE(wxUSE_SLIDER)
1738 LTLIBOBJS="$LTLIBOBJS slider.lo"
1741 if test "$wxUSE_SPINBTN" = "yes"; then
1742 AC_DEFINE(wxUSE_SPINBTN)
1743 LTLIBOBJS="$LTLIBOBJS spinbutt.lo"
1746 if test "$wxUSE_SPLITTER" = "yes"; then
1747 AC_DEFINE(wxUSE_SPLITTER)
1748 LTLIBOBJS="$LTLIBOBJS splitter.lo"
1749 SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS splitter"
1752 if test "$wxUSE_STATBMP" = "yes"; then
1753 AC_DEFINE(wxUSE_STATBMP)
1754 LTLIBOBJS="$LTLIBOBJS statbmp.lo"
1757 if test "$wxUSE_STATBOX" = "yes"; then
1758 AC_DEFINE(wxUSE_STATBOX)
1759 LTLIBOBJS="$LTLIBOBJS statbox.lo"
1762 if test "$wxUSE_STATLINE" = "yes"; then
1763 AC_DEFINE(wxUSE_STATLINE)
1764 LTLIBOBJS="$LTLIBOBJS statline.lo"
1767 if test "$wxUSE_STATUSBAR" = "yes"; then
1768 AC_DEFINE(wxUSE_STATUSBAR)
1769 LTLIBOBJS="$LTLIBOBJS statusbr.lo"
1772 if test "$wxUSE_TABDIALOG" = "yes"; then
1773 AC_DEFINE(wxUSE_TAB_DIALOG)
1774 LTLIBOBJS="$LTLIBOBJS tabg.lo"
1775 SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS tab"
1778 if test "$wxUSE_TOOLBAR" = "yes"; then
1779 AC_DEFINE(wxUSE_TOOLBAR)
1780 LTLIBOBJS="$LTLIBOBJS tbarbase.lo tbargtk.lo"
1781 SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS toolbar"
1784 if test "$wxUSE_TOOLTIPS" = "yes" ; then
1785 if test "$wxUSE_MOTIF" = "yes"; then
1786 AC_MSG_WARN(tooltips are not supported yet under Motif)
1788 AC_DEFINE(wxUSE_TOOLTIPS)
1789 LTLIBOBJS="$LTLIBOBJS tooltip.lo"
1793 if test "$wxUSE_TREECTRL" = "yes"; then
1794 if test "$wxUSE_IMAGLIST" = "yes"; then
1795 AC_DEFINE(wxUSE_TREECTRL)
1796 LTLIBOBJS="$LTLIBOBJS treectrl.lo"
1797 SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS treectrl"
1799 AC_MSG_WARN([wxTreeCtrl requires wxImageList and won't be compiled without it])
1803 dnl ---------------------------------------------------------------------------
1805 dnl ---------------------------------------------------------------------------
1807 if test "$wxUSE_WXTREE" = "yes"; then
1808 AC_DEFINE(wxUSE_WXTREE)
1811 if test "$wxUSE_METAFILE" = "yes"; then
1812 AC_DEFINE(wxUSE_METAFILE)
1813 LTLIBOBJS="$LTLIBOBJS metafile.lo"
1816 if test "$wxUSE_COMMONDLGS" = "yes"; then
1817 dnl these classes don't depend on anything at all
1818 LTLIBOBJS="$LTLIBOBJS progdlgg.lo filedlg.lo fontdlgg.lo"
1820 if test "$wxUSE_CONSTRAINTS" != "yes"; then
1821 AC_MSG_WARN(many common dialogs cannot be used without constraints so they won't be compiled without them)
1823 AC_DEFINE(wxUSE_CONSTRAINTS)
1824 AC_DEFINE(wxUSE_TEXTDLG)
1825 LTLIBOBJS="$LTLIBOBJS colrdlgg.lo textdlgg.lo choicdgg.lo"
1827 if test "$wxUSE_TREECTRL" != "yes"; then
1828 AC_MSG_WARN(wxDirDialog cannot be used without wxTreeCtrl and it won't be compiled without it)
1830 AC_DEFINE(wxUSE_DIRDLG)
1831 LTLIBOBJS="$LTLIBOBJS dirdlgg.lo"
1835 if test "$wxUSE_PRINTING_ARCHITECTURE" = "yes"; then
1836 LTLIBOBJS="$LTLIBOBJS prntdlgg.lo"
1838 AC_MSG_WARN([wxPrintDialog class won't be compiled without printing support])
1842 if test "$wxUSE_MINIFRAME" = "yes"; then
1843 AC_DEFINE(wxUSE_MINIFRAME)
1844 LTLIBOBJS="$LTLIBOBJS minifram.lo"
1845 SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS minifram"
1848 if test "$wxUSE_VALIDATORS" = "yes"; then
1849 AC_DEFINE(wxUSE_VALIDATORS)
1850 LTLIBOBJS="$LTLIBOBJS valgen.lo validate.lo valtext.lo"
1851 SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS validate"
1854 dnl ---------------------------------------------------------------------------
1855 dnl Output the makefiles and such from the results found above
1856 dnl ---------------------------------------------------------------------------
1858 dnl if we add wxUSE_GUI in the future, it might be handy to separate the libs
1859 dnl into GUI and non-GUI parts
1860 GUILIBS="$GUI_TK_LIBRARY $OPENGL_LINK $LIBPNG_LINK $ZLIB_LINK $TOOLKIT_LINK"
1862 dnl all additional libraries (except wxWindows itself) we link with
1863 EXTRA_LIBS="$LIBS $POSIX4_LINK $WCHAR_LINK $THREADS_LINK $DMALLOC_LINK $GUILIBS"
1865 dnl all the libraries needed to link wxWindows programs (when the library is not
1867 LIBS="\${top_builddir}/src/libwx_${WX_LIBRARY}.la $EXTRA_LIBS"
1869 dnl all -I options we must pass to the compiler
1870 INCLUDES="$TOOLKIT_INCLUDE $ZLIB_INCLUDE $LIBPNG_INCLUDE -I. -I\${top_builddir}/include -I\${top_srcdir}/include"
1872 dnl C/C++ compiler options used to compile wxWindows
1873 if test "$ac_cv_prog_gcc" = "yes"; then
1874 dnl CXXWARNINGS="-Wall -W -Wcast-qual -Werror"
1876 dnl there is one weird warning in docview.h:71 which prevents me from doing
1878 dnl CXXWARNINGS="-Wall -Werror"
1880 EXTRA_CFLAGS="$WXDEBUG $PROFILE $OPTIMISE $INCLUDES"
1882 CFLAGS="$CFLAGS $EXTRA_CFLAGS"
1883 CXXFLAGS="$CXXFLAGS $EXTRA_CFLAGS $CXXWARNINGS"
1885 if test "$wxUSE_GUI" = "yes"; then
1886 dnl TODO add checks that these samples will really compile (i.e. all the
1887 dnl library features they need are present)
1889 dnl TODO some samples are never built so far:
1890 dnl mfc, nativdlg, oleauto, ownerdrw, proplist
1891 SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS bombs controls dialogs drawing dynamic \
1892 forty fractal image wxpoem"
1896 AC_SUBST(WX_MAJOR_VERSION_NUMBER)
1897 AC_SUBST(WX_MINOR_VERSION_NUMBER)
1898 AC_SUBST(WX_RELEASE_NUMBER)
1899 AC_SUBST(WX_LIBRARY)
1901 dnl suppress libtool's informational messages - they duplicate its command line
1902 LIBTOOL="$LIBTOOL --silent"
1905 dnl debugging options
1906 AC_SUBST(WXDEBUG_DEFINE)
1910 AC_SUBST(TOOLKIT_DEF)
1911 AC_SUBST(TOOLKIT_DIR)
1912 AC_SUBST(TOOLKIT_INCLUDE)
1914 dnl additional sources
1915 AC_SUBST(EXTRA_VPATH)
1918 dnl additional subdirectories where we will build
1919 AC_SUBST(UTILS_SUBDIRS)
1920 AC_SUBST(DOCS_SUBDIRS)
1921 AC_SUBST(SAMPLES_SUBDIRS)
1922 AC_SUBST(USER_SUBDIRS)
1924 dnl additional libraries
1925 AC_SUBST(EXTRA_LIBS)
1928 dnl create the configuration header file from the template
1929 SETUPH_DIR=include/wx/${TOOLKIT_DIR}
1930 mkdir -p ${SETUPH_DIR}
1931 AM_CONFIG_HEADER(${SETUPH_DIR}/setup.h:include/wx/unix/setup.h.in)
1933 dnl MAKE_SET will be replaced with "MAKE=..." or nothing if make sets MAKE
1934 dnl itself (this is macro is required if SUBDIRS variable is used in Makefile.am
1935 dnl - and we do use it)
1938 dnl create each of the files in the space separated list from the file.in
1939 dnl (the original file name may be overriden by appending another name after a
1942 Makefile src/Makefile wx-config
1944 samples/bombs/Makefile
1945 samples/caret/Makefile
1946 samples/checklst/Makefile
1947 samples/config/Makefile
1948 samples/controls/Makefile
1950 samples/dialogs/Makefile
1951 samples/dnd/Makefile
1952 samples/docview/Makefile
1953 samples/docvwmdi/Makefile
1954 samples/drawing/Makefile
1955 samples/dynamic/Makefile
1956 samples/forty/Makefile
1957 samples/fractal/Makefile
1958 samples/grid/Makefile
1959 samples/help/Makefile
1960 samples/image/Makefile
1961 samples/internat/Makefile
1962 samples/joytest/Makefile
1963 samples/layout/Makefile
1964 samples/listctrl/Makefile
1965 samples/mdi/Makefile
1966 samples/memcheck/Makefile
1967 samples/mfc/Makefile
1968 samples/minifram/Makefile
1969 samples/minimal/Makefile
1970 samples/nativdlg/Makefile
1971 samples/notebook/Makefile
1972 samples/oleauto/Makefile
1973 samples/ownerdrw/Makefile
1974 samples/png/Makefile
1975 samples/printing/Makefile
1976 samples/proplist/Makefile
1977 samples/regtest/Makefile
1978 samples/resource/Makefile
1979 samples/sashtest/Makefile
1980 samples/scroll/Makefile
1981 samples/splitter/Makefile
1982 samples/tab/Makefile
1983 samples/taskbar/Makefile
1984 samples/thread/Makefile
1985 samples/toolbar/Makefile
1986 samples/treectrl/Makefile
1987 samples/typetest/Makefile
1988 samples/validate/Makefile
1989 samples/wxpoem/Makefile
1990 samples/wxsocket/Makefile
1992 [chmod +x wx-config], [SETUPH_DIR=${SETUPH_DIR}])