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
151 EXTRA_VPATH="$EXTRA_VPATH:\$(srcdir)/unix"
152 INCLUDE_SUBDIRS="$INCLUDE_SUBDIRS unix"
155 dnl Linux: test for libc5/glibc2: glibc2 has gettext() included
156 if test "$USE_LINUX" = 1; then
157 AC_CHECK_LIB(c,gettext,AC_DEFINE(wxHAVE_GLIBC2))
160 dnl TODO cross-compiling for Windows not yet supported
163 dnl if eval "test $USE_CYGWIN != 1 -a $USE_MINGW32 != 1"; then
164 dnl AC_DEFINE(__UNIX__)
166 dnl AC_DEFINE(__WINDOWS__)
167 dnl DEFAULT_wxUSE_MSW=1
170 dnl ---------------------------------------------------------------------------
171 dnl command line options for configure
172 dnl ---------------------------------------------------------------------------
174 dnl the default values for all options - we collect them all here to simplify
175 dnl modification of the default values (for example, if the defaults for some
176 dnl platform should be changed, it can be done here too)
178 dnl NB: see also DEFAULT_wxUSE<toolkit> variables defined above
180 dnl useful to test the compilation with minimum options, define as 0 for normal
183 if test $DEBUG_CONFIGURE = 1; then
184 DEFAULT_wxUSE_THREADS=yes
186 DEFAULT_wxUSE_OPTIMISE=no
187 DEFAULT_wxUSE_PROFILE=no
188 DEFAULT_wxUSE_DEBUG_FLAG=yes
189 DEFAULT_wxUSE_DEBUG_INFO=yes
190 DEFAULT_wxUSE_DEBUG_GDB=yes
191 DEFAULT_wxUSE_MEM_TRACING=no
192 DEFAULT_wxUSE_DMALLOC=no
193 DEFAULT_wxUSE_APPLE_IEEE=no
195 DEFAULT_wxUSE_LOG=yes
197 DEFAULT_wxUSE_GUI=yes
199 DEFAULT_wxUSE_ZLIB=no
200 DEFAULT_wxUSE_LIBPNG=no
201 DEFAULT_wxUSE_LIBGIF=no
202 DEFAULT_wxUSE_LIBJPEG=no
203 DEFAULT_wxUSE_ODBC=no
205 DEFAULT_wxUSE_FILE=no
206 DEFAULT_wxUSE_TEXTFILE=no
207 DEFAULT_wxUSE_TIMEDATE=no
208 DEFAULT_wxUSE_INTL=no
209 DEFAULT_wxUSE_CONFIG=no
210 DEFAULT_wxUSE_STREAMS=no
211 DEFAULT_wxUSE_SOCKETS=no
212 DEFAULT_wxUSE_SERIAL=no
213 DEFAULT_wxUSE_JOYSTICK=no
214 DEFAULT_wxUSE_DYNLIB_CLASS=no
215 DEFAULT_wxUSE_LONGLONG=no
217 DEFAULT_wxUSE_AFM_FOR_POSTSCRIPT=no
218 DEFAULT_wxUSE_NORMALIZED_PS_FONTS=no
219 DEFAULT_wxUSE_POSTSCRIPT=no
221 DEFAULT_wxUSE_X_RESOURCES=no
222 DEFAULT_wxUSE_CLIPBOARD=no
223 DEFAULT_wxUSE_TOOLTIPS=no
224 DEFAULT_wxUSE_DRAG_AND_DROP=no
225 DEFAULT_wxUSE_SPLINES=no
227 DEFAULT_wxUSE_MDI_ARCHITECTURE=no
228 DEFAULT_wxUSE_DOC_VIEW_ARCHITECTURE=no
229 DEFAULT_wxUSE_PRINTING_ARCHITECTURE=no
231 DEFAULT_wxUSE_PROLOGIO=no
232 DEFAULT_wxUSE_RESOURCES=no
233 DEFAULT_wxUSE_CONSTRAINTS=no
235 DEFAULT_wxUSE_HELP=no
236 DEFAULT_wxUSE_WXTREE=no
237 DEFAULT_wxUSE_METAFILE=no
239 DEFAULT_wxUSE_COMMONDLGS=no
240 DEFAULT_wxUSE_MINIFRAME=no
241 DEFAULT_wxUSE_VALIDATORS=yes
243 DEFAULT_wxUSE_ACCEL=no
244 DEFAULT_wxUSE_CARET=no
245 DEFAULT_wxUSE_BMPBUTTON=no
246 DEFAULT_wxUSE_CHECKBOX=no
247 DEFAULT_wxUSE_CHECKLST=no
248 DEFAULT_wxUSE_COMBOBOX=no
249 DEFAULT_wxUSE_GAUGE=no
250 DEFAULT_wxUSE_GRID=no
251 DEFAULT_wxUSE_IMAGLIST=no
252 DEFAULT_wxUSE_LISTBOX=no
253 DEFAULT_wxUSE_LISTCTRL=no
254 DEFAULT_wxUSE_NOTEBOOK=no
255 DEFAULT_wxUSE_RADIOBOX=no
256 DEFAULT_wxUSE_RADIOBTN=no
257 DEFAULT_wxUSE_SASHWINDOW=no
258 DEFAULT_wxUSE_SCROLLBAR=no
259 DEFAULT_wxUSE_SLIDER=no
260 DEFAULT_wxUSE_SPINBTN=no
261 DEFAULT_wxUSE_SPLITTER=no
262 DEFAULT_wxUSE_STATBMP=no
263 DEFAULT_wxUSE_STATBOX=no
264 DEFAULT_wxUSE_STATLINE=no
265 DEFAULT_wxUSE_STATUSBAR=yes
266 DEFAULT_wxUSE_TABDIALOG=no
267 DEFAULT_wxUSE_TOOLBAR=no
268 DEFAULT_wxUSE_TREECTRL=no
270 DEFAULT_wxUSE_UNICODE=no
271 DEFAULT_wxUSE_WCSRTOMBS=no
273 DEFAULT_wxUSE_THREADS=yes
275 DEFAULT_wxUSE_OPTIMISE=yes
276 DEFAULT_wxUSE_PROFILE=no
277 DEFAULT_wxUSE_DEBUG_FLAG=no
278 DEFAULT_wxUSE_DEBUG_INFO=no
279 DEFAULT_wxUSE_DEBUG_GDB=no
280 DEFAULT_wxUSE_MEM_TRACING=no
281 DEFAULT_wxUSE_DMALLOC=no
282 DEFAULT_wxUSE_APPLE_IEEE=yes
284 DEFAULT_wxUSE_LOG=yes
286 DEFAULT_wxUSE_GUI=yes
288 DEFAULT_wxUSE_ZLIB=yes
289 DEFAULT_wxUSE_LIBPNG=yes
290 DEFAULT_wxUSE_LIBGIF=yes
291 DEFAULT_wxUSE_LIBJPEG=yes
292 DEFAULT_wxUSE_ODBC=no
294 DEFAULT_wxUSE_FILE=yes
295 DEFAULT_wxUSE_TEXTFILE=yes
296 DEFAULT_wxUSE_TIMEDATE=yes
297 DEFAULT_wxUSE_INTL=yes
298 DEFAULT_wxUSE_CONFIG=yes
299 DEFAULT_wxUSE_STREAMS=yes
300 DEFAULT_wxUSE_SOCKETS=yes
301 DEFAULT_wxUSE_SERIAL=yes
302 DEFAULT_wxUSE_JOYSTICK=yes
303 DEFAULT_wxUSE_DYNLIB_CLASS=yes
304 DEFAULT_wxUSE_LONGLONG=no
306 DEFAULT_wxUSE_AFM_FOR_POSTSCRIPT=yes
307 DEFAULT_wxUSE_NORMALIZED_PS_FONTS=yes
308 DEFAULT_wxUSE_POSTSCRIPT=yes
310 DEFAULT_wxUSE_X_RESOURCES=no
311 DEFAULT_wxUSE_CLIPBOARD=yes
312 DEFAULT_wxUSE_TOOLTIPS=yes
313 DEFAULT_wxUSE_DRAG_AND_DROP=yes
314 DEFAULT_wxUSE_SPLINES=yes
316 DEFAULT_wxUSE_MDI_ARCHITECTURE=yes
317 DEFAULT_wxUSE_DOC_VIEW_ARCHITECTURE=yes
318 DEFAULT_wxUSE_PRINTING_ARCHITECTURE=yes
320 DEFAULT_wxUSE_PROLOGIO=yes
321 DEFAULT_wxUSE_RESOURCES=yes
322 DEFAULT_wxUSE_CONSTRAINTS=yes
323 DEFAULT_wxUSE_IPC=yes
324 DEFAULT_wxUSE_HELP=yes
325 DEFAULT_wxUSE_WXTREE=yes
326 DEFAULT_wxUSE_METAFILE=yes
328 DEFAULT_wxUSE_COMMONDLGS=yes
329 DEFAULT_wxUSE_MINIFRAME=yes
330 DEFAULT_wxUSE_VALIDATORS=yes
332 DEFAULT_wxUSE_ACCEL=yes
333 DEFAULT_wxUSE_CARET=yes
334 DEFAULT_wxUSE_BMPBUTTON=yes
335 DEFAULT_wxUSE_CHECKBOX=yes
336 DEFAULT_wxUSE_CHECKLST=yes
337 DEFAULT_wxUSE_COMBOBOX=yes
338 DEFAULT_wxUSE_GAUGE=yes
339 DEFAULT_wxUSE_GRID=yes
340 DEFAULT_wxUSE_IMAGLIST=yes
341 DEFAULT_wxUSE_LISTBOX=yes
342 DEFAULT_wxUSE_LISTCTRL=yes
343 DEFAULT_wxUSE_NOTEBOOK=yes
344 DEFAULT_wxUSE_RADIOBOX=yes
345 DEFAULT_wxUSE_RADIOBTN=yes
346 DEFAULT_wxUSE_SASHWINDOW=yes
347 DEFAULT_wxUSE_SCROLLBAR=yes
348 DEFAULT_wxUSE_SLIDER=yes
349 DEFAULT_wxUSE_SPINBTN=yes
350 DEFAULT_wxUSE_SPLITTER=yes
351 DEFAULT_wxUSE_STATBMP=yes
352 DEFAULT_wxUSE_STATBOX=yes
353 DEFAULT_wxUSE_STATLINE=yes
354 DEFAULT_wxUSE_STATUSBAR=yes
355 DEFAULT_wxUSE_TABDIALOG=no
356 DEFAULT_wxUSE_TOOLBAR=yes
357 DEFAULT_wxUSE_TREECTRL=yes
359 DEFAULT_wxUSE_UNICODE=no
360 DEFAULT_wxUSE_WCSRTOMBS=no
363 dnl AC_ARG_WITH should be used to select whether an external package will be
364 dnl used or not, to configure compile-time features of this package itself,
365 dnl use AC_ARG_ENABLE instead
367 dnl ============================
368 dnl external package dependecies
369 dnl ============================
371 AC_ARG_WITH(gtk-prefix, [ --with-gtk-prefix=PFX prefix where GTK is installed],
372 gtk_config_prefix="$withval", gtk_config_prefix="")
373 AC_ARG_WITH(gtk-exec-prefix, [ --with-gtk-exec-prefix=PFX exec prefix where GTK is installed],
374 gtk_config_exec_prefix="$withval", gtk_config_exec_prefix="")
375 AC_ARG_WITH(gtk, [ --with-gtk use GTK+],
376 wxUSE_GTK="$withval",wxUSE_GTK=0)
377 AC_ARG_WITH(motif, [ --with-motif use Motif/Lesstif],
378 wxUSE_MOTIF="$withval",wxUSE_MOTIF=0)
379 AC_ARG_WITH(cygwin, [ --with-cygwin use Cygwin for MS-Windows],
380 wxUSE_CYGWIN="$withval",wxUSE_CYGWIN=0)
381 AC_ARG_WITH(mingw, [ --with-mingw use GCC Minimal MS-Windows],
382 wxUSE_MINGW="$withval",wxUSE_MINGW=0)
384 AC_ARG_WITH(dmalloc, [ --with-dmalloc use dmalloc library (www.letters.com/dmalloc)],
385 wxUSE_DMALLOC="$withval",wxUSE_DMALLOC=$DEFAULT_wxUSE_DMALLOC)
386 AC_ARG_WITH(zlib, [ --with-zlib use zlib for LZW compression],
387 wxUSE_ZLIB="$withval",wxUSE_ZLIB=$DEFAULT_wxUSE_ZLIB)
388 AC_ARG_WITH(libpng, [ --with-libpng use libpng (PNG image format)],
389 wxUSE_LIBPNG="$withval",wxUSE_LIBPNG=$DEFAULT_wxUSE_LIBPNG)
390 AC_ARG_WITH(libgif, [ --with-libgif use libgif (GIF file format)],
391 wxUSE_LIBGIF="${withval}",wxUSE_LIBGIF=$DEFAULT_wxUSE_LIBGIF)
392 AC_ARG_WITH(libjpeg, [ --with-libjpeg use libjpeg (JPEG file format)],
393 wxUSE_LIBJPEG="${withval}",wxUSE_LIBJPEG=$DEFAULT_wxUSE_LIBJPEG)
394 AC_ARG_WITH(opengl, [ --with-opengl use OpenGL (or Mesa)],
395 wxUSE_OPENGL="$withval",wxUSE_OPENGL=$DEFAULT_wxUSE_OPENGL)
396 AC_ARG_WITH(odbc, [ --with-odbc use the IODBC and wxODBC classes],
397 wxUSE_ODBC="$withval",wxUSE_ODBC=$DEFAULT_wxUSE_ODBC)
399 dnl ====================
400 dnl compile-time options
401 dnl ====================
403 dnl ---------------------------------------------------------------------------
405 dnl ---------------------------------------------------------------------------
407 AC_ARG_ENABLE(optimise, [ --enable-optimise create optimised code],
408 wxUSE_OPTIMISE="$enableval",wxUSE_OPTIMISE=$DEFAULT_wxUSE_OPTIMISE)
409 AC_ARG_ENABLE(optimize, [ --enable-optimize create optimized code],
410 wxUSE_OPTIMISE="$enableval",wxUSE_OPTIMISE=$DEFAULT_wxUSE_OPTIMISE)
411 AC_ARG_ENABLE(debug_flag, [ --enable-debug_flag set __WXDEBUG__ flag (recommended for developers!)],
412 wxUSE_DEBUG_FLAG="$enableval",wxUSE_DEBUG_FLAG=$DEFAULT_wxUSE_DEBUG_FLAG)
413 AC_ARG_ENABLE(debug_info, [ --enable-debug_info create code with debugging information],
414 wxUSE_DEBUG_INFO="$enableval",wxUSE_DEBUG_INFO=$DEFAULT_wxUSE_DEBUG_INFO)
415 AC_ARG_ENABLE(debug_gdb, [ --enable-debug_gdb create code with extra GDB debugging information],
416 wxUSE_DEBUG_GDB="$enableval",wxUSE_DEBUG_GDB=$DEFAULT_wxUSE_DEBUG_GDB)
417 AC_ARG_ENABLE(debug_cntxt, [ --enable-debug_cntxt use wxDebugContext],
418 AC_DEFINE(wxUSE_DEBUG_CONTEXT))
419 AC_ARG_ENABLE(mem_tracing, [ --enable-mem_tracing create code with memory tracing],
420 wxUSE_MEM_TRACING="$enableval", wxUSE_MEM_TRACING=$DEFAULT_wxUSE_MEM_TRACING)
421 AC_ARG_ENABLE(profile, [ --enable-profile create code with profiling information],
422 wxUSE_PROFILE="$enableval",wxUSE_PROFILE=$DEFAULT_wxUSE_PROFILE)
424 dnl ---------------------------------------------------------------------------
425 dnl --disable-gui will build only non-GUI part of wxWindows
427 dnl NB: this is still in testing stage, don't use if you don't know what you're
429 dnl ---------------------------------------------------------------------------
431 AC_ARG_ENABLE(gui, [ --enable-gui use GUI classes],
432 wxUSE_GUI="$enableval",wxUSE_GUI=$DEFAULT_wxUSE_GUI)
434 dnl ---------------------------------------------------------------------------
435 dnl (small) optional non GUI classes
436 dnl ---------------------------------------------------------------------------
438 AC_ARG_ENABLE(intl, [ --enable-intl use internationalization system],
439 wxUSE_INTL="$enableval",wxUSE_INTL=$DEFAULT_wxUSE_INTL)
440 AC_ARG_ENABLE(config, [ --enable-config use wxConfig (and derived) classes],
441 wxUSE_CONFIG="$enableval",wxUSE_CONFIG=$DEFAULT_wxUSE_CONFIG)
442 AC_ARG_ENABLE(sockets, [ --enable-sockets use socket/network classes],
443 wxUSE_SOCKETS="$enableval",wxUSE_SOCKETS=$DEFAULT_wxUSE_SOCKETS)
444 AC_ARG_ENABLE(ipc, [ --enable-ipc use interprocess communication (wxSocket etc.)],
445 wxUSE_IPC="$enableval",wxUSE_IPC=$DEFAULT_wxUSE_IPC)
446 AC_ARG_ENABLE(apple_ieee, [ --enable-apple_ieee use the Apple IEEE codec],
447 wxUSE_APPLE_IEEE="$enableval",wxUSE_APPLE_IEEE=$DEFAULT_wxUSE_APPLE_IEEE)
448 AC_ARG_ENABLE(timedate, [ --enable-timedate use date/time classes],
449 wxUSE_TIMEDATE="$enableval",wxUSE_TIMEDATE=$DEFAULT_wxUSE_TIMEDATE)
450 AC_ARG_ENABLE(fraction, [ --enable-fraction use wxFraction class],
451 wxUSE_FRACTION="$enableval",wxUSE_FRACTION=$DEFAULT_wxUSE_FRACTION)
452 AC_ARG_ENABLE(dynlib, [ --enable-dynlib use wxLibrary class for DLL loading],
453 wxUSE_DYNLIB_CLASS="$enableval",wxUSE_DYNLIB_CLASS=$DEFAULT_wxUSE_DYNLIB_CLASS)
454 AC_ARG_ENABLE(longlong, [ --enable-longlong use wxLongLong class],
455 wxUSE_LONGLONG="${enableval}",wxUSE_LONGLONG=$DEFAULT_wxUSE_LONGLONG)
456 AC_ARG_ENABLE(log, [ --enable-log use logging system],
457 wxUSE_LOG="$enableval",wxUSE_LOG=$DEFAULT_wxUSE_LOG)
458 AC_ARG_ENABLE(streams, [ --enable-streams use wxStream etc classes],
459 wxUSE_STREAMS="$enableval",wxUSE_STREAMS=$DEFAULT_wxUSE_STREAMS)
460 AC_ARG_ENABLE(file, [ --enable-file use wxFile classes],
461 wxUSE_FILE="$enableval",wxUSE_FILE=$DEFAULT_wxUSE_FILE)
462 AC_ARG_ENABLE(textfile, [ --enable-textfile use wxTextFile classes],
463 wxUSE_TEXTFILE="$enableval",wxUSE_TEXTFILE=$DEFAULT_wxUSE_TEXTFILE)
464 AC_ARG_ENABLE(unicode, [ --enable-unicode compile wxString with Unicode support],
465 wxUSE_UNICODE="$enableval",wxUSE_UNICODE=$DEFAULT_wxUSE_UNICODE)
466 AC_ARG_ENABLE(wcsrtombs, [ --enable-wcsrtombs use wcsrtombs instead of buggy (GNU libc1/Linux libc5) wcstombs],
467 wxUSE_WCSRTOMBS="$enableval",wxUSE_WCSRTOMBS=$DEFAULT_wxUSE_WCSRTOMBS)
468 AC_ARG_ENABLE(joystick, [ --enable-joystick compile in joystick support (Linux only)],
469 wxUSE_JOYSTICK="$enableval", wxUSE_JOYSTICK=$DEFAULT_wxUSE_JOYSTICK)
471 dnl ---------------------------------------------------------------------------
472 dnl "big" options (i.e. those which change a lot of things throughout the library)
473 dnl ---------------------------------------------------------------------------
475 AC_ARG_ENABLE(threads, [ --enable-threads use threads],
476 wxUSE_THREADS="${enableval}",wxUSE_THREADS=$DEFAULT_wxUSE_THREADS)
477 AC_ARG_ENABLE(serial, [ --enable-serial use class serialization],
478 wxUSE_SERIAL="${enableval}",wxUSE_SERIAL=$DEFAULT_wxUSE_SERIAL)
480 dnl ---------------------------------------------------------------------------
481 dnl "big" GUI options
482 dnl ---------------------------------------------------------------------------
484 AC_ARG_ENABLE(docview, [ --enable-docview use document view architecture],
485 wxUSE_DOC_VIEW_ARCHITECTURE="$enableval",wxUSE_DOC_VIEW_ARCHITECTURE=$DEFAULT_wxUSE_DOC_VIEW_ARCHITECTURE)
486 AC_ARG_ENABLE(help, [ --enable-help use help (using external browser at present)],
487 wxUSE_HELP="$enableval",wxUSE_HELP=$DEFAULT_wxUSE_HELP)
488 AC_ARG_ENABLE(constraints, [ --enable-constraints use layout-constraints system],
489 wxUSE_CONSTRAINTS="$enableval",wxUSE_CONSTRAINTS=$DEFAULT_wxUSE_CONSTRAINTS)
490 AC_ARG_ENABLE(printarch, [ --enable-printarch use printing architecture],
491 wxUSE_PRINTING_ARCHITECTURE="${enableval}",wxUSE_PRINTING_ARCHITECTURE=$DEFAULT_wxUSE_PRINTING_ARCHITECTURE)
492 AC_ARG_ENABLE(mdi, [ --enable-mdi use multiple document interface architecture],
493 wxUSE_MDI_ARCHITECTURE="${enableval}",wxUSE_MDI_ARCHITECTURE=$DEFAULT_wxUSE_MDI_ARCHITECTURE)
495 dnl ---------------------------------------------------------------------------
496 dnl PostScript options
497 dnl ---------------------------------------------------------------------------
498 AC_ARG_ENABLE(postscript, [ --enable-postscript use wxPostscriptDC device context (default for gtk+)],
499 wxUSE_POSTSCRIPT="$enableval",wxUSE_POSTSCRIPT=$DEFAULT_wxUSE_POSTSCRIPT)
501 dnl VZ: these options seem to be always on, if someone wants to change it please do
502 dnl AC_ARG_ENABLE(PS-normalized, [ --enable-PS-normalized use normalized PS fonts],
503 dnl wxUSE_NORMALIZED_PS_FONTS="${enableval}",wxUSE_NORMALIZED_PS_FONTS=$DEFAULT_wxUSE_NORMALIZED_PS_FONTS)
504 dnl AC_ARG_ENABLE(afmfonts, [ --enable-afmfonts use Adobe Font Metric Font table],
505 dnl wxUSE_AFM_FOR_POSTSCRIPT="${enableval}",wxUSE_AFM_FOR_POSTSCRIPT=$DEFAULT_wxUSE_AFM_FOR_POSTSCRIPT)
507 dnl ---------------------------------------------------------------------------
509 dnl ---------------------------------------------------------------------------
510 AC_ARG_ENABLE(prologio, [ --enable-prologio use Prolog IO library],
511 wxUSE_PROLOGIO="${enableval}",wxUSE_PROLOGIO=$DEFAULT_wxUSE_PROLOGIO)
512 AC_ARG_ENABLE(resources, [ --enable-resources use wxWindows resources],
513 wxUSE_RESOURCES="${enableval}",wxUSE_RESOURCES=$DEFAULT_wxUSE_RESOURCES)
515 AC_ARG_ENABLE(xresources, [ --enable-xresources use X resources for save (default for gtk+)],
516 wxUSE_X_RESOURCES="${enableval}",wxUSE_X_RESOURCES=$DEFAULT_wxUSE_X_RESOURCES)
517 dnl ---------------------------------------------------------------------------
519 dnl ---------------------------------------------------------------------------
520 AC_ARG_ENABLE(clipboard, [ --enable-clipboard use wxClipboard classes],
521 wxUSE_CLIPBOARD="${enableval}",wxUSE_CLIPBOARD=$DEFAULT_wxUSE_CLIPBOARD)
522 AC_ARG_ENABLE(dnd, [ --enable-dnd use Drag'n'Drop classes],
523 wxUSE_DRAG_AND_DROP="${enableval}",wxUSE_DRAG_AND_DROP=$DEFAULT_wxUSE_DRAG_AND_DROP)
525 dnl ---------------------------------------------------------------------------
526 dnl options which don't work yet
527 dnl ---------------------------------------------------------------------------
528 AC_ARG_ENABLE(wxtree, [ --enable-wxtree make wxTree library],
529 wxUSE_WXTREE="${enableval}",wxUSE_WXTREE=$DEFAULT_wxUSE_WXTREE)
531 dnl ---------------------------------------------------------------------------
532 dnl optional GUI controls (in alphabetical order except the first one)
533 dnl ---------------------------------------------------------------------------
535 AC_ARG_ENABLE(controls, [ --enable-controls use all usual controls],
536 wxUSE_CONTROLS="${enableval}")
538 dnl even with --enable-controls, some may be disabled by giving
539 dnl --disable-<control> later on the command line - but by default all will be
540 dnl used (and vice versa)
541 if test "$wxUSE_CONTROLS" = "yes"; then
542 DEFAULT_wxUSE_ACCEL=yes
543 DEFAULT_wxUSE_CARET=yes
544 DEFAULT_wxUSE_COMBOBOX=yes
545 DEFAULT_wxUSE_BMPBUTTON=yes
546 DEFAULT_wxUSE_CHECKBOX=yes
547 DEFAULT_wxUSE_CHECKLISTBOX=yes
548 DEFAULT_wxUSE_GAUGE=yes
549 DEFAULT_wxUSE_GRID=yes
550 DEFAULT_wxUSE_IMAGLIST=yes
551 DEFAULT_wxUSE_LISTBOX=yes
552 DEFAULT_wxUSE_LISTCTRL=yes
553 DEFAULT_wxUSE_NOTEBOOK=yes
554 DEFAULT_wxUSE_RADIOBOX=yes
555 DEFAULT_wxUSE_RADIOBTN=yes
556 DEFAULT_wxUSE_SASH=yes
557 DEFAULT_wxUSE_SCROLLBAR=yes
558 DEFAULT_wxUSE_SLIDER=yes
559 DEFAULT_wxUSE_SPINBTN=yes
560 DEFAULT_wxUSE_SPLITTER=yes
561 DEFAULT_wxUSE_STATBMP=yes
562 DEFAULT_wxUSE_STATBOX=yes
563 DEFAULT_wxUSE_STATLINE=yes
564 DEFAULT_wxUSE_STATUSBAR=yes
565 DEFAULT_wxUSE_TAB_DIALOG=yes
566 DEFAULT_wxUSE_TOOLBAR=yes
567 DEFAULT_wxUSE_TOOLTIPS=yes
568 DEFAULT_wxUSE_TREECTRL=yes
569 elif test "$wxUSE_CONTROLS" = "no"; then
570 DEFAULT_wxUSE_ACCEL=no
571 DEFAULT_wxUSE_CARET=no
572 DEFAULT_wxUSE_COMBOBOX=no
573 DEFAULT_wxUSE_BMPBUTTON=no
574 DEFAULT_wxUSE_CHECKBOX=no
575 DEFAULT_wxUSE_CHECKLISTBOX=no
576 DEFAULT_wxUSE_GAUGE=no
577 DEFAULT_wxUSE_GRID=no
578 DEFAULT_wxUSE_IMAGLIST=no
579 DEFAULT_wxUSE_LISTBOX=no
580 DEFAULT_wxUSE_LISTCTRL=no
581 DEFAULT_wxUSE_NOTEBOOK=no
582 DEFAULT_wxUSE_RADIOBOX=no
583 DEFAULT_wxUSE_RADIOBTN=no
584 DEFAULT_wxUSE_SASH=no
585 DEFAULT_wxUSE_SCROLLBAR=no
586 DEFAULT_wxUSE_SLIDER=no
587 DEFAULT_wxUSE_SPINBTN=no
588 DEFAULT_wxUSE_SPLITTER=no
589 DEFAULT_wxUSE_STATBMP=no
590 DEFAULT_wxUSE_STATBOX=no
591 DEFAULT_wxUSE_STATLINE=no
592 DEFAULT_wxUSE_STATUSBAR=no
593 DEFAULT_wxUSE_TAB_DIALOG=no
594 DEFAULT_wxUSE_TOOLBAR=no
595 DEFAULT_wxUSE_TOOLTIPS=no
596 DEFAULT_wxUSE_TREECTRL=no
599 AC_ARG_ENABLE(accel, [ --enable-accel use accelerators],
600 wxUSE_ACCEL="${enableval}",wxUSE_ACCEL=$DEFAULT_wxUSE_ACCEL)
601 AC_ARG_ENABLE(caret, [ --enable-caret use wxCaret class],
602 wxUSE_CARET="${enableval}",wxUSE_CARET=$DEFAULT_wxUSE_CARET)
603 AC_ARG_ENABLE(bmpbutton, [ --enable-bmpbutton use wxBitmapButton class],
604 wxUSE_BMPBUTTON="${enableval}",wxUSE_BMPBUTTON=$DEFAULT_wxUSE_BMPBUTTON)
605 AC_ARG_ENABLE(checkbox, [ --enable-checkbox use wxCheckBox class],
606 wxUSE_CHECKBOX="${enableval}",wxUSE_CHECKBOX=$DEFAULT_wxUSE_CHECKBOX)
607 AC_ARG_ENABLE(checklst, [ --enable-checklst use wxCheckListBox (listbox with checkboxes) class],
608 wxUSE_CHECKLST="${enableval}",wxUSE_CHECKLST=$DEFAULT_wxUSE_CHECKLST)
609 AC_ARG_ENABLE(combobox, [ --enable-combobox use wxChoice and wxComboBox classes],
610 wxUSE_COMBOBOX="${enableval}",wxUSE_COMBOBOX=$DEFAULT_wxUSE_COMBOBOX)
611 AC_ARG_ENABLE(gauge, [ --enable-gauge use wxGauge class],
612 wxUSE_GAUGE="${enableval}",wxUSE_GAUGE=$DEFAULT_wxUSE_GAUGE)
613 AC_ARG_ENABLE(grid, [ --enable-grid use wxGrid class],
614 wxUSE_GRID="${enableval}",wxUSE_GRID=$DEFAULT_wxUSE_GRID)
615 AC_ARG_ENABLE(imaglist, [ --enable-imaglist use wxImageList class],
616 wxUSE_IMAGLIST="${enableval}",wxUSE_IMAGLIST=$DEFAULT_wxUSE_IMAGLIST)
617 AC_ARG_ENABLE(listbox, [ --enable-listbox use wxListBox class],
618 wxUSE_LISTBOX="${enableval}",wxUSE_LISTBOX=$DEFAULT_wxUSE_LISTBOX)
619 AC_ARG_ENABLE(listctrl, [ --enable-listctrl use wxListCtrl class],
620 wxUSE_LISTCTRL="${enableval}",wxUSE_LISTCTRL=$DEFAULT_wxUSE_LISTCTRL)
621 AC_ARG_ENABLE(notebook, [ --enable-notebook use wxNotebook class],
622 wxUSE_NOTEBOOK="${enableval}",wxUSE_NOTEBOOK=$DEFAULT_wxUSE_NOTEBOOK)
623 AC_ARG_ENABLE(radiobox, [ --enable-radiobox use wxRadioBox class],
624 wxUSE_RADIOBOX="${enableval}",wxUSE_RADIOBOX=$DEFAULT_wxUSE_RADIOBOX)
625 AC_ARG_ENABLE(radiobtn, [ --enable-radiobtn use wxRadioButton class],
626 wxUSE_RADIOBTN="${enableval}",wxUSE_RADIOBTN=$DEFAULT_wxUSE_RADIOBTN)
627 AC_ARG_ENABLE(sash, [ --enable-sash use wxSashWindow class],
628 wxUSE_SASH="${enableval}",wxUSE_SASH=$DEFAULT_wxUSE_SASH)
629 AC_ARG_ENABLE(scrollbar, [ --enable-scrollbar use wxScrollBar class and scrollable windows],
630 wxUSE_SCROLLBAR="${enableval}",wxUSE_SCROLLBAR=$DEFAULT_wxUSE_SCROLLBAR)
631 AC_ARG_ENABLE(slider, [ --enable-slider use wxSlider class],
632 wxUSE_SLIDER="${enableval}",wxUSE_SLIDER=$DEFAULT_wxUSE_SLIDER)
633 AC_ARG_ENABLE(spinbtn, [ --enable-spinbtn use wxSpinButton class],
634 wxUSE_SPINBTN="${enableval}",wxUSE_SPINBTN=$DEFAULT_wxUSE_SPINBTN)
635 AC_ARG_ENABLE(splitter, [ --enable-splitter use wxSplitterWindow class],
636 wxUSE_SPLITTER="${enableval}",wxUSE_SPLITTER=$DEFAULT_wxUSE_SPLITTER)
637 AC_ARG_ENABLE(statbmp, [ --enable-statbmp use wxStaticBitmap class],
638 wxUSE_STATBMP="${enableval}",wxUSE_STATBMP=$DEFAULT_wxUSE_STATBMP)
639 AC_ARG_ENABLE(statbox, [ --enable-statbox use wxStaticBox class],
640 wxUSE_STATBOX="${enableval}",wxUSE_STATBOX=$DEFAULT_wxUSE_STATBOX)
641 AC_ARG_ENABLE(statline, [ --enable-statline use wxStaticLine class],
642 wxUSE_STATLINE="${enableval}",wxUSE_STATLINE=$DEFAULT_wxUSE_STATLINE)
643 AC_ARG_ENABLE(statusbar, [ --enable-statusbar use wxStatusBar class],
644 wxUSE_STATUSBAR="${enableval}",wxUSE_STATUSBAR=$DEFAULT_wxUSE_STATUSBAR)
645 AC_ARG_ENABLE(tabdialog, [ --enable-tabdialog use wxTabControl class],
646 wxUSE_TABDIALOG="${enableval}",wxUSE_TABDIALOG=$DEFAULT_wxUSE_TABDIALOG)
647 AC_ARG_ENABLE(toolbar, [ --enable-toolbar use wxToolBar class],
648 wxUSE_TOOLBAR="${enableval}",wxUSE_TOOLBAR=$DEFAULT_wxUSE_TOOLBAR)
649 AC_ARG_ENABLE(treectrl, [ --enable-treectrl use wxTreeCtrl class],
650 wxUSE_TREECTRL="${enableval}",wxUSE_TREECTRL=$DEFAULT_wxUSE_TREECTRL)
652 dnl ---------------------------------------------------------------------------
654 dnl ---------------------------------------------------------------------------
656 AC_ARG_ENABLE(commondlg, [ --enable-commondlg use common dialogs (wxDirDialog, wxProgressDialog, wxTextDialog, ...)],
657 wxUSE_COMMONDLGS="${enableval}",wxUSE_COMMONDLGS=$DEFAULT_wxUSE_COMMONDLGS)
658 AC_ARG_ENABLE(miniframe, [ --enable-miniframe use wxMiniFrame class],
659 wxUSE_MINIFRAME="${enableval}",wxUSE_MINIFRAME=$DEFAULT_wxUSE_MINIFRAME)
660 AC_ARG_ENABLE(tooltips, [ --enable-tooltips use wxToolTip class],
661 wxUSE_TOOLTIPS="${enableval}",wxUSE_TOOLTIPS=$DEFAULT_wxUSE_TOOLTIPS)
662 AC_ARG_ENABLE(splines, [ --enable-splines use spline drawing code],
663 wxUSE_SPLINES="${enableval}",wxUSE_SPLINES=$DEFAULT_wxUSE_SPLINES)
664 AC_ARG_ENABLE(validators, [ --enable-validators use wxValidator and derived classes],
665 wxUSE_VALIDATORS="${enableval}",wxUSE_VALIDATORS=$DEFAULT_wxUSE_VALIDATORS)
667 dnl check that no more than one toolkit is given and that if none are given that
668 dnl we have a default one
670 dnl NB: this supposes that the shell is able to handle arithmetic expansion and
671 dnl the ${VAR:-VALUE} construction. It does simplify our life though...
672 NUM_TOOLKITS="$((${wxUSE_GTK:-0}+${wxUSE_MOTIF:-0}+${wxUSE_MSW:-0}))"
674 case "$NUM_TOOLKITS" in
678 if test "$((${DEFAULT_wxUSE_GTK:-0}+${DEFAULT_wxUSE_MOTIF:-0}+${DEFAULT_wxUSE_MSW:-0}))" = 0; then
679 AC_MSG_ERROR(Please specify a toolkit)
682 wxUSE_GTK=$DEFAULT_wxUSE_GTK
683 wxUSE_MOTIF=$DEFAULT_wxUSE_MOTIF
684 wxUSE_MSW=$DEFAULT_wxUSE_MSW
687 AC_MSG_ERROR(Please specify at most one toolkit)
690 dnl ---------------------------------------------------------------------------
691 dnl Checks for programs
692 dnl ---------------------------------------------------------------------------
694 dnl flush the cache because checking for programs might abort
697 dnl cross-compiling support: we're cross compiling if the build system is
698 dnl different from the target one (assume host and target be always the same)
699 if eval "test $host != $build"; then
700 if eval "test $build != NONE"; then
703 RANLIB="$build-ranlib"
708 dnl C-compiler checks
709 dnl defines CC with the compiler to use
710 dnl defines GCC with yes if using gcc
711 dnl defines GCC empty if not using gcc
715 CFLAGS=`echo "$CFLAGS" | sed 's/-g//g'`
717 dnl what is the c-preprocessor
718 dnl defines CPP with the c-preprocessor
721 dnl is -traditional needed for correct compilations
722 dnl adds -traditional for gcc if needed
723 AC_PROG_GCC_TRADITIONAL
728 dnl C++-compiler checks
729 dnl defines CXX with the compiler to use
730 dnl defines GXX with yes if using gxx
731 dnl defines GXX empty if not using gxx
735 dnl what is the C++-preprocessor
736 dnl defines CXXCPP with the C++-preprocessor
739 CXXFLAGS=`echo "$CXXFLAGS" | sed 's/-g//g'`
744 dnl defines RANLIB with the appropriate command
748 dnl defines AR with the appropriate command
749 AC_CHECK_PROG(AR, ar, ar, ar)
752 dnl defines INSTALL with the appropriate command
756 dnl defines STRIP as strip or nothing if not found
757 AC_CHECK_PROG(STRIP, strip, strip, true)
759 dnl check if VPATH works
760 AC_MSG_CHECKING("make for VPATH support")
762 cat - << EOF > confMake
768 if test ! -d sub ; then
771 echo dummy > sub/file
772 ${MAKE-make} -f confMake VPATH=sub 2> config.log > /dev/null
774 rm -f sub/file check final_file confMake
776 if test "$RESULT" = 0; then
781 You need a make-utility that is able to use the variable
783 If your version of make does not support VPATH correctly,
784 please install GNU-make (possibly as gmake), and start
785 configure with the following command:
786 export MAKE=gmake; ./configure for sh-type shells
787 setenv MAKE gmake; ./configure for csh-type shells
788 Also please do remember to use gmake in this case every time
789 you are trying to compile.
794 dnl defines YACC with the appropriate command
798 dnl defines LEX with the appropriate command
799 dnl defines LEXLIB with the appropriate library
800 dnl this AM version (don't use AC_PROG_LEX!) also
801 dnl defines YYTEXT_POINTER if yytext is char*
802 dnl defines LEX_OUTPUT_ROOT as to the base of the
803 dnl filename output by the lexer
806 dnl needed for making link to setup.h
809 dnl libtool checks (disable static libs by default, this takes too much time...)
813 dnl ---------------------------------------------------------------------------
814 dnl Define search path for includes and libraries: all headers and libs will be
815 dnl looked for in all directories of this path
816 dnl ---------------------------------------------------------------------------
819 /usr/Motif-1.2/include \
820 /usr/Motif-2.1/include \
822 /usr/include/Motif1.2 \
823 /opt/xpm/include/X11 \
825 /usr/Motif1.2/include \
841 /usr/local/X11R6/include \
842 /usr/local/X11R5/include \
843 /usr/local/X11R4/include \
845 /usr/local/include/X11R6 \
846 /usr/local/include/X11R5 \
847 /usr/local/include/X11R4 \
851 /usr/local/X11/include \
852 /usr/local/include/X11 \
856 /usr/XFree86/include/X11 \
863 /usr/unsupported/include \
864 /usr/athena/include \
865 /usr/local/x11r5/include \
866 /usr/lpp/Xamples/include \
868 /usr/local/include/gtk \
869 /usr/local/include/qt \
872 /usr/openwin/include \
873 /usr/openwin/share/include \
876 SEARCH_LIB="`echo "$SEARCH_INCLUDE" | sed s/include/lib/g` "
878 dnl ------------------------------------------------------------------------
879 dnl Check for libraries
880 dnl ------------------------------------------------------------------------
882 dnl flush the cache because checking for libraries might abort
885 dnl find the X11 include and library files
886 dnl defines x_includes and x_libraries
889 if test "$no_x" = "yes"; then
890 AC_MSG_ERROR(X11 libraries not found, aborting)
893 CHECK_INCLUDE="-I/usr/include $X_CFLAGS"
894 CHECK_LIB="-L/lib -L/usr/lib $X_LIBS"
896 dnl ----------------------------------------------------------------
897 dnl search for toolkit (widget sets)
898 dnl ----------------------------------------------------------------
910 if test "$wxUSE_GTK" = 1; then
911 dnl avoid calling AM_PATH_GTK twice, so check first for the newer version and
912 dnl only then, if it wasn't found, for an older one
913 AM_PATH_GTK(1.2.0, WXGTK12=1)
914 if test "$WXGTK12" != 1; then
915 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?))
918 TOOLKIT_INCLUDE="$GTK_CFLAGS"
919 GUI_TK_LIBRARY="$GTK_LIBS"
922 LTLIBOBJS="$LTLIBOBJS image.lo utilsgtk.lo win_gtk.lo"
925 if test "$wxUSE_MOTIF" = 1; then
926 AC_MSG_CHECKING(for Motif/Lesstif includes)
927 AC_PATH_FIND_INCLUDES($SEARCH_INCLUDE, Xm/Xm.h)
928 if test "$ac_find_includes" != "" ; then
929 AC_MSG_RESULT(found $ac_find_includes)
932 AC_MSG_ERROR(please set CFLAGS to contain the location of Xm/Xm.h)
935 AC_MSG_CHECKING(for Motif/Lesstif library)
936 AC_PATH_FIND_LIBRARIES($SEARCH_LIB, Xm)
937 if test "$ac_find_libraries" != "" ; then
938 AC_INCLUDE_PATH_EXIST($ac_find_includes, $CHECK_INCLUDE)
939 AC_LINK_PATH_EXIST($ac_find_libraries, $CHECK_LIB)
941 CHECK_LINK="$CHECK_LIB $ac_path_to_link"
942 CHECK_INCLUDE="$CHECK_INCLUDE $ac_path_to_include"
943 AC_MSG_RESULT(found at $ac_find_libraries)
946 AC_MSG_ERROR(please set LDFLAGS to contain the location of libXm)
949 AC_MSG_CHECKING(for Xt library)
950 AC_PATH_FIND_LIBRARIES($SEARCH_LIB,Xt)
951 if test "$ac_find_libraries" != "" ; then
952 AC_LINK_PATH_EXIST($ac_find_libraries,$CHECK_LIB)
953 CHECK_LINK="$CHECK_LIB $ac_path_to_link"
954 AC_MSG_RESULT(found at $ac_find_libraries)
957 AC_MSG_ERROR(please set LDFLAGS to contain the location of libXt)
961 AC_MSG_CHECKING(for Xpm library)
962 AC_PATH_FIND_LIBRARIES($SEARCH_LIB,Xpm)
963 if test "$ac_find_libraries" != "" ; then
964 AC_LINK_PATH_EXIST($ac_find_libraries,$CHECK_LIB)
965 CHECK_LINK="$CHECK_LIB $ac_path_to_link"
967 AC_DEFINE(wxHAVE_LIB_XPM)
968 AC_MSG_RESULT(found at $ac_find_libraries)
971 AC_MSG_WARN(library will be compiled without support for images in XPM format)
974 GUI_TK_LINK="-lXm $(XPM_LINK)-lXmu -lXt -lX11 -lm"
975 GUI_TK_LIBRARY="$CHECK_LIB $GUI_TK_LINK"
979 dnl the name of the directory where the files for this toolkit live
980 TOOLKIT_DIR=`echo ${TOOLKIT} | tr "A-Z" "a-z"`
982 dnl the symbol which allows conditional compilation for the given toolkit
983 TOOLKIT_DEF=-D__WX${TOOLKIT}__
985 dnl the name (without leading 'wx_') of the library
986 WX_LIBRARY=${TOOLKIT_DIR}2
988 dnl ------------------------------------------------------------------------
989 dnl Check for headers
990 dnl ------------------------------------------------------------------------
992 dnl defines HAVE_STRINGS_H (where some string functions live on AIX for example)
993 AC_CHECK_HEADERS(strings.h)
994 dnl defines HAVE_UNISTD_H
995 AC_CHECK_HEADERS(unistd.h)
996 dnl defines HAVE_WCHAR_H
997 AC_CHECK_HEADERS(wchar.h)
998 dnl defines HAVE_WCSTR_H
999 AC_CHECK_HEADERS(wcstr.h)
1000 dnl defines HAVE_FNMATCH_H
1001 AC_CHECK_HEADERS(fnmatch.h)
1003 dnl ---------------------------------------------------------------------------
1004 dnl Checks for typedefs
1005 dnl ---------------------------------------------------------------------------
1007 dnl defines mode_t if not already defined
1009 dnl defines off_t if not already defined
1011 dnl defines pid_t if not already defined
1013 dnl defines size_t if not already defined
1015 dnl defines uid_t and gid_t if not already defined
1018 dnl ---------------------------------------------------------------------------
1019 dnl Checks for structures
1020 dnl ---------------------------------------------------------------------------
1022 dnl ---------------------------------------------------------------------------
1023 dnl Checks for compiler characteristics
1024 dnl ---------------------------------------------------------------------------
1026 dnl defines const to be empty if c-compiler does not support const fully
1028 dnl defines inline to a sensible value for the c-compiler
1031 dnl check the sizes of integral types (give some reasonable default values for
1032 dnl cross-compiling)
1033 dnl defines the size of certain types of variables in SIZEOF_<TYPE>
1034 AC_CHECK_SIZEOF(int *, 4)
1035 AC_CHECK_SIZEOF(int, 4)
1036 AC_CHECK_SIZEOF(long, 4)
1037 AC_CHECK_SIZEOF(long long, 0)
1039 dnl check for iostream (as opposed to iostream.h) standard header
1040 WX_CPP_NEW_HEADERS(, AC_DEFINE(wxUSE_IOSTREAMH))
1042 dnl check whether C++ compiler supports bool built-in type
1045 dnl check whether overloading on size_t/int parameter works
1046 WX_CPP_SIZE_T_IS_NOT_INT
1048 dnl ---------------------------------------------------------------------------
1049 dnl Check for functions
1050 dnl ---------------------------------------------------------------------------
1052 dnl check for wcslen
1053 AC_CHECK_LIB(c, wcslen, [
1054 AC_DEFINE(HAVE_WCSLEN)
1057 AC_CHECK_LIB(w, wcslen, [
1058 AC_DEFINE(HAVE_WCSLEN)
1063 dnl check for vprintf/vsprintf() which are GNU extensions
1066 dnl check for vsnprintf() - a safe version of vsprintf()
1067 AC_CHECK_FUNCS(vsnprintf,
1068 AC_DEFINE(HAVE_VSNPRINTF),
1069 AC_MSG_WARN(unsafe function sprintf will be used instead of snprintf)
1072 dnl check for vfork() (even if it's the same as fork() in modern Unices)
1073 AC_CHECK_FUNCS(vfork)
1076 AC_CHECK_FUNCS(nanosleep, AC_DEFINE(HAVE_NANOSLEEP), [
1077 AC_CHECK_LIB(posix4, nanosleep, [
1078 AC_DEFINE(HAVE_NANOSLEEP)
1079 POSIX4_LINK="-lposix4"
1081 AC_CHECK_FUNCS(usleep,
1082 AC_DEFINE(HAVE_USLEEP),
1083 AC_MSG_WARN([wxSleep() function will not work]))
1087 dnl check for uname (POSIX) and gethostname (BSD)
1088 AC_CHECK_FUNCS(uname gethostname, break)
1090 dnl ===========================================================================
1091 dnl Now we have all the info we need - use it!
1092 dnl ===========================================================================
1097 dnl ---------------------------------------------------------------------------
1099 dnl ---------------------------------------------------------------------------
1102 dnl defines THREADS_OBJ which contains the object files to build
1103 dnl defines THREADS_LINK which contains the thread library to link with
1104 dnl defines wxUSE_THREADS=1 if thread support is activated
1109 if test "$wxUSE_THREADS" = "yes"; then
1110 dnl find if POSIX threads are available
1112 dnl standard lib name is pthread
1113 dnl We no longer test for pthread-0.7 as it breaks compilation on some
1114 dnl glibc2 systems, especially for static linkage.
1115 AC_CHECK_LIB(pthread, pthread_create, [
1116 THREADS_OBJ="threadpsx.lo"
1117 THREADS_LINK="pthread"
1119 dnl thread functions are in libc_r under FreeBSD
1120 AC_CHECK_LIB(c_r, pthread_create, [
1121 THREADS_OBJ="threadpsx.lo"
1124 dnl VZ: SGI threads are not supported currently
1125 AC_CHECK_HEADER(sys/prctl.h, [
1126 THREADS_OBJ="threadsgi.lo"
1130 if test "$THREADS_LINK" != ""; then
1131 AC_DEFINE(wxUSE_THREADS)
1133 AC_MSG_WARN(No thread support on this system)
1137 if test -z "$THREADS_OBJ"; then
1141 dnl do other tests only if we are using threads
1142 if test "$wxUSE_THREADS" = "yes"; then
1143 dnl must define _REENTRANT for multithreaded code
1144 CFLAGS="${CFLAGS} -D_REENTRANT"
1145 CXXFLAGS="${CXXFLAGS} -D_REENTRANT"
1147 SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS thread"
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"
1424 INCLUDE_SUBDIRS="$INCLUDE_SUBDIRS protocol"
1426 AC_MSG_WARN(socket classes require --with-threads and won't be compiled without it)
1431 if test "$wxUSE_STREAMS" = "yes" ; then
1432 AC_DEFINE(wxUSE_STREAMS)
1433 LTLIBOBJS="$LTLIBOBJS stream.lo wfstream.lo datstrm.lo mstream.lo objstrm.lo"
1434 if test "$wxUSE_SOCKETS" = "yes" ; then
1435 LTLIBOBJS="$LTLIBOBJS sckstrm.lo"
1439 if test "$wxUSE_SERIAL" = "yes" ; then
1440 AC_DEFINE(wxUSE_SERIAL)
1443 dnl ------------------------------------------------------------------------
1445 dnl ------------------------------------------------------------------------
1447 if test "$wxUSE_SOCKETS" = "yes"; then
1450 dnl determine the type of third argument for getsockname
1451 AC_MSG_CHECKING(the type of the third argument of getsockname)
1453 [#include <sys/socket.h>],
1454 [socklen_t len; getsockname(0, NULL, &len);],
1455 AC_DEFINE(SOCKLEN_T, socklen_t) AC_MSG_RESULT(socklen_t),
1457 [#include <sys/socket.h>],
1458 [size_t len; getsockname(0, NULL, &len);],
1459 AC_DEFINE(SOCKLEN_T, size_t) AC_MSG_RESULT(size_t),
1461 [#include <sys/socket.h>],
1462 [int len; getsockname(0, NULL, &len);],
1463 AC_DEFINE(SOCKLEN_T, int) AC_MSG_RESULT(int),
1464 AC_MSG_RESULT(unknown)
1471 dnl ---------------------------------------------------------------------------
1472 dnl Joystick support
1473 dnl ---------------------------------------------------------------------------
1475 if test "$wxUSE_JOYSTICK" = 1; then
1476 dnl joystick support is only for Linux 2.1.x or greater
1477 AC_CHECK_HEADERS(linux/joystick.h)
1478 if test "$ac_cv_header_linux_joystick_h" = "yes"; then
1479 AC_DEFINE(wxUSE_JOYSTICK)
1480 LTLIBOBJS="$LTLIBOBJS joystick.lo"
1481 SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS joytest"
1485 dnl ------------------------------------------------------------------------
1487 dnl ------------------------------------------------------------------------
1491 if test "$wxUSE_DYNLIB_CLASS" = "yes"; then
1492 dnl the test is a bit complicated because we check for dlopen() both with
1493 dnl and without -ldl
1494 AC_CHECK_FUNCS(dlopen,
1495 [AC_DEFINE(HAVE_DLOPEN) HAVE_DL_FUNCS=1],
1496 [AC_CHECK_LIB(dl, dlopen,
1497 [AC_DEFINE(HAVE_DLOPEN) HAVE_DL_FUNCS=1])])
1498 AC_CHECK_FUNCS( shl_load,
1499 [AC_DEFINE(HAVE_SHL_LOAD) HAVE_DL_FUNCS=1 HAVE_SHL_FUNCS=1])
1501 if test "$HAVE_DL_FUNCS" = 0; then
1502 AC_MSG_WARN("--with-dynlib and --with-odbc will be disabled due to missing shared library support")
1504 wxUSE_DYNLIB_CLASS=no
1508 if test "$wxUSE_DYNLIB_CLASS" = "yes" ; then
1509 AC_DEFINE(wxUSE_DYNLIB_CLASS)
1510 LTLIBOBJS="$LTLIBOBJS dynlib.lo"
1513 dnl ---------------------------------------------------------------------------
1515 dnl ---------------------------------------------------------------------------
1517 if test "$wxUSE_UNICODE" = "yes" ; then
1518 AC_DEFINE(wxUSE_UNICODE)
1521 if test "$wxUSE_WCSRTOMBS" = "yes" ; then
1522 AC_DEFINE(wxUSE_WCSRTOMBS)
1525 dnl ----------------------------------------------------------------
1527 dnl ----------------------------------------------------------------
1530 if test "$wxUSE_ODBC" = "yes" ; then
1531 AC_DEFINE(wxUSE_ODBC)
1532 EXTRA_VPATH="$EXTRA_VPATH:\$(srcdir)/iodbc"
1533 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"
1534 SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS db"
1537 dnl ----------------------------------------------------------------
1538 dnl Register PostScript options for makefiles and setup.h
1539 dnl ----------------------------------------------------------------
1541 if test "$wxUSE_POSTSCRIPT" = "yes" ; then
1542 AC_DEFINE(wxUSE_POSTSCRIPT)
1543 LTLIBOBJS="$LTLIBOBJS printps.lo dcpsg.lo"
1546 AC_DEFINE(wxUSE_AFM_FOR_POSTSCRIPT)
1548 AC_DEFINE(wxUSE_NORMALIZED_PS_FONTS)
1550 dnl ---------------------------------------------------------------------------
1551 dnl big GUI components: MDI, doc/view, printing, help, ...
1552 dnl ---------------------------------------------------------------------------
1554 if test "$wxUSE_CONSTRAINTS" = "yes"; then
1555 AC_DEFINE(wxUSE_CONSTRAINTS)
1557 LTLIBOBJS="$LTLIBOBJS layout.lo laywin.lo"
1558 SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS layout"
1561 if test "$wxUSE_MDI_ARCHITECTURE" = "yes"; then
1562 AC_DEFINE(wxUSE_MDI_ARCHITECTURE)
1563 LTLIBOBJS="$LTLIBOBJS mdi.lo"
1564 SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS mdi"
1567 if test "$wxUSE_DOC_VIEW_ARCHITECTURE" = "yes" ; then
1568 AC_DEFINE(wxUSE_DOC_VIEW_ARCHITECTURE)
1569 LTLIBOBJS="$LTLIBOBJS docview.lo"
1570 SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS docview"
1571 if test "$wxUSE_MDI_ARCHITECTURE" = "yes"; then
1572 LTLIBOBJS="$LTLIBOBJS docmdi.lo"
1573 SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS docvwmdi"
1577 if test "$wxUSE_HELP" = "yes"; then
1578 AC_DEFINE(wxUSE_HELP)
1579 LTLIBOBJS="$LTLIBOBJS helpext.lo helphtml.lo helpbase.lo"
1580 SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS help"
1583 if test "$wxUSE_PRINTING_ARCHITECTURE" = "yes" ; then
1584 AC_DEFINE(wxUSE_PRINTING_ARCHITECTURE)
1585 LTLIBOBJS="$LTLIBOBJS prntbase.lo paper.lo"
1586 SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS printing"
1589 if test "$wxUSE_PROLOGIO" = "yes" ; then
1590 AC_DEFINE(wxUSE_PROLOGIO)
1591 LTLIBOBJS="$LTLIBOBJS wxexpr.lo parser.lo"
1594 if test "$wxUSE_RESOURCES" = "yes" ; then
1595 if test "$wxUSE_PROLOGIO" = "yes" ; then
1596 AC_DEFINE(wxUSE_RESOURCES)
1597 LTLIBOBJS="$LTLIBOBJS resource.lo"
1598 if test "$wxUSE_GTK" = 1; then
1599 LTLIBOBJS="$LTLIBOBJS utilsres.lo"
1601 SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS resource"
1603 AC_MSG_WARN([wxWindows ressource system requires PrologIO and can't be compiled without it.])
1607 if test "$wxUSE_X_RESOURCES" = "yes"; then
1608 AC_DEFINE(wxUSE_X_RESOURCES)
1611 dnl ---------------------------------------------------------------------------
1612 dnl IPC: IPC, d-n-d, clipboard, ...
1613 dnl ---------------------------------------------------------------------------
1615 if test "$wxUSE_IPC" = "yes"; then
1616 AC_DEFINE(wxUSE_IPC)
1617 LTLIBOBJS="$LTLIBOBJS ipcbase.lo sckipc.lo"
1620 if test "$wxUSE_CLIPBOARD" = "yes"; then
1621 AC_DEFINE(wxUSE_CLIPBOARD)
1622 LTLIBOBJS="$LTLIBOBJS clipbrd.lo dataobj.lo"
1625 if test "$wxUSE_DRAG_AND_DROP" = "yes"; then
1626 if test "$WXGTK12" = 1 ; then
1627 AC_DEFINE(wxUSE_DRAG_AND_DROP)
1628 LTLIBOBJS="$LTLIBOBJS dnd.lo"
1629 SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS dnd"
1630 if test "$wxUSE_CLIPBOARD" != "yes"; then
1631 LTLIBOBJS="$LTLIBOBJS dataobj.lo"
1634 AC_MSG_WARN(drag and drop is only supported under GTK 1.2)
1638 if test "$wxUSE_SPLINES" = "yes" ; then
1639 AC_DEFINE(wxUSE_SPLINES)
1642 dnl ---------------------------------------------------------------------------
1644 dnl ---------------------------------------------------------------------------
1646 if test "$wxUSE_ACCEL" = "yes"; then
1647 AC_DEFINE(wxUSE_ACCEL)
1648 LTLIBOBJS="$LTLIBOBJS accel.lo"
1651 if test "$wxUSE_CARET" = "yes"; then
1652 AC_DEFINE(wxUSE_CARET)
1653 LTLIBOBJS="$LTLIBOBJS caret.lo"
1654 SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS caret"
1657 if test "$wxUSE_COMBOBOX" = "yes"; then
1658 AC_DEFINE(wxUSE_COMBOBOX)
1659 LTLIBOBJS="$LTLIBOBJS choice.lo combobox.lo"
1662 if test "$wxUSE_BMPBUTTON" = "yes"; then
1663 AC_DEFINE(wxUSE_BMPBUTTON)
1664 LTLIBOBJS="$LTLIBOBJS bmpbuttn.lo"
1667 if test "$wxUSE_CHECKBOX" = "yes"; then
1668 AC_DEFINE(wxUSE_CHECKBOX)
1669 LTLIBOBJS="$LTLIBOBJS checkbox.lo"
1672 if test "$wxUSE_CHECKLST" = "yes"; then
1673 AC_DEFINE(wxUSE_CHECKLISTBOX)
1674 LTLIBOBJS="$LTLIBOBJS checklst.lo"
1675 SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS checklst"
1678 if test "$wxUSE_GAUGE" = "yes"; then
1679 AC_DEFINE(wxUSE_GAUGE)
1680 LTLIBOBJS="$LTLIBOBJS gauge.lo"
1683 if test "$wxUSE_GRID" = "yes"; then
1684 AC_DEFINE(wxUSE_GRID)
1685 LTLIBOBJS="$LTLIBOBJS gridg.lo"
1686 SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS grid"
1689 if test "$wxUSE_IMAGLIST" = "yes"; then
1690 AC_DEFINE(wxUSE_IMAGLIST)
1691 LTLIBOBJS="$LTLIBOBJS imaglist.lo"
1694 if test "$wxUSE_LISTBOX" = "yes"; then
1695 AC_DEFINE(wxUSE_LISTBOX)
1696 LTLIBOBJS="$LTLIBOBJS listbox.lo"
1699 if test "$wxUSE_LISTCTRL" = "yes"; then
1700 if test "$wxUSE_IMAGLIST" = "yes"; then
1701 AC_DEFINE(wxUSE_LISTCTRL)
1702 LTLIBOBJS="$LTLIBOBJS listctrl.lo"
1703 SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS listctrl"
1705 AC_MSG_WARN([wxListCtrl requires wxImageList and won't be compiled without it])
1709 if test "$wxUSE_NOTEBOOK" = "yes"; then
1710 AC_DEFINE(wxUSE_NOTEBOOK)
1711 LTLIBOBJS="$LTLIBOBJS notebook.lo"
1712 SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS notebook"
1715 if test "$wxUSE_RADIOBOX" = "yes"; then
1716 AC_DEFINE(wxUSE_RADIOBOX)
1717 LTLIBOBJS="$LTLIBOBJS radiobox.lo"
1720 if test "$wxUSE_RADIOBTN" = "yes"; then
1721 AC_DEFINE(wxUSE_RADIOBTN)
1722 LTLIBOBJS="$LTLIBOBJS radiobut.lo"
1725 if test "wxUSE_SASH" = 1; then
1726 AC_DEFINE(wxUSE_SASH)
1727 LTLIBOBJS="$LTLIBOBJS sashwin.lo"
1728 SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS sashtest"
1731 if test "$wxUSE_SCROLLBAR" = "yes"; then
1732 AC_DEFINE(wxUSE_SCROLLBAR)
1733 LTLIBOBJS="$LTLIBOBJS scrolbar.lo scrolwin.lo"
1734 SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS scroll"
1737 if test "$wxUSE_SLIDER" = "yes"; then
1738 AC_DEFINE(wxUSE_SLIDER)
1739 LTLIBOBJS="$LTLIBOBJS slider.lo"
1742 if test "$wxUSE_SPINBTN" = "yes"; then
1743 AC_DEFINE(wxUSE_SPINBTN)
1744 LTLIBOBJS="$LTLIBOBJS spinbutt.lo"
1747 if test "$wxUSE_SPLITTER" = "yes"; then
1748 AC_DEFINE(wxUSE_SPLITTER)
1749 LTLIBOBJS="$LTLIBOBJS splitter.lo"
1750 SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS splitter"
1753 if test "$wxUSE_STATBMP" = "yes"; then
1754 AC_DEFINE(wxUSE_STATBMP)
1755 LTLIBOBJS="$LTLIBOBJS statbmp.lo"
1758 if test "$wxUSE_STATBOX" = "yes"; then
1759 AC_DEFINE(wxUSE_STATBOX)
1760 LTLIBOBJS="$LTLIBOBJS statbox.lo"
1763 if test "$wxUSE_STATLINE" = "yes"; then
1764 AC_DEFINE(wxUSE_STATLINE)
1765 LTLIBOBJS="$LTLIBOBJS statline.lo"
1768 if test "$wxUSE_STATUSBAR" = "yes"; then
1769 AC_DEFINE(wxUSE_STATUSBAR)
1770 LTLIBOBJS="$LTLIBOBJS statusbr.lo"
1773 if test "$wxUSE_TABDIALOG" = "yes"; then
1774 AC_DEFINE(wxUSE_TAB_DIALOG)
1775 LTLIBOBJS="$LTLIBOBJS tabg.lo"
1776 SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS tab"
1779 if test "$wxUSE_TOOLBAR" = "yes"; then
1780 AC_DEFINE(wxUSE_TOOLBAR)
1781 LTLIBOBJS="$LTLIBOBJS tbarbase.lo tbargtk.lo"
1782 SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS toolbar"
1785 if test "$wxUSE_TOOLTIPS" = "yes" ; then
1786 if test "$wxUSE_MOTIF" = "yes"; then
1787 AC_MSG_WARN(tooltips are not supported yet under Motif)
1789 AC_DEFINE(wxUSE_TOOLTIPS)
1790 LTLIBOBJS="$LTLIBOBJS tooltip.lo"
1794 if test "$wxUSE_TREECTRL" = "yes"; then
1795 if test "$wxUSE_IMAGLIST" = "yes"; then
1796 AC_DEFINE(wxUSE_TREECTRL)
1797 LTLIBOBJS="$LTLIBOBJS treectrl.lo"
1798 SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS treectrl"
1800 AC_MSG_WARN([wxTreeCtrl requires wxImageList and won't be compiled without it])
1804 dnl ---------------------------------------------------------------------------
1806 dnl ---------------------------------------------------------------------------
1808 dnl TODO this is unused for now...
1809 dnl if test "$wxUSE_WXTREE" = "yes"; then
1810 dnl AC_DEFINE(wxUSE_WXTREE)
1813 if test "$wxUSE_METAFILE" = "yes"; then
1814 AC_DEFINE(wxUSE_METAFILE)
1815 LTLIBOBJS="$LTLIBOBJS metafile.lo"
1818 if test "$wxUSE_COMMONDLGS" = "yes"; then
1819 dnl these classes don't depend on anything at all
1820 LTLIBOBJS="$LTLIBOBJS progdlgg.lo filedlg.lo fontdlgg.lo"
1822 if test "$wxUSE_CONSTRAINTS" != "yes"; then
1823 AC_MSG_WARN(many common dialogs cannot be used without constraints so they won't be compiled without them)
1825 AC_DEFINE(wxUSE_CONSTRAINTS)
1826 AC_DEFINE(wxUSE_TEXTDLG)
1827 LTLIBOBJS="$LTLIBOBJS colrdlgg.lo textdlgg.lo choicdgg.lo"
1829 if test "$wxUSE_TREECTRL" != "yes"; then
1830 AC_MSG_WARN(wxDirDialog cannot be used without wxTreeCtrl and it won't be compiled without it)
1832 AC_DEFINE(wxUSE_DIRDLG)
1833 LTLIBOBJS="$LTLIBOBJS dirdlgg.lo"
1837 if test "$wxUSE_PRINTING_ARCHITECTURE" = "yes"; then
1838 LTLIBOBJS="$LTLIBOBJS prntdlgg.lo"
1840 AC_MSG_WARN([wxPrintDialog class won't be compiled without printing support])
1844 if test "$wxUSE_MINIFRAME" = "yes"; then
1845 AC_DEFINE(wxUSE_MINIFRAME)
1846 LTLIBOBJS="$LTLIBOBJS minifram.lo"
1847 SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS minifram"
1850 if test "$wxUSE_VALIDATORS" = "yes"; then
1851 AC_DEFINE(wxUSE_VALIDATORS)
1852 LTLIBOBJS="$LTLIBOBJS valgen.lo validate.lo valtext.lo"
1853 SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS validate"
1856 dnl ---------------------------------------------------------------------------
1857 dnl Output the makefiles and such from the results found above
1858 dnl ---------------------------------------------------------------------------
1860 dnl if we add wxUSE_GUI in the future, it might be handy to separate the libs
1861 dnl into GUI and non-GUI parts
1862 GUILIBS="$GUI_TK_LIBRARY $OPENGL_LINK $LIBPNG_LINK $ZLIB_LINK $TOOLKIT_LINK"
1864 dnl all additional libraries (except wxWindows itself) we link with
1865 EXTRA_LIBS="$LIBS $POSIX4_LINK $WCHAR_LINK $THREADS_LINK $DMALLOC_LINK $GUILIBS"
1867 dnl all the libraries needed to link wxWindows programs (when the library is not
1869 LIBS="\${top_builddir}/src/libwx_${WX_LIBRARY}.la $EXTRA_LIBS"
1871 dnl all -I options we must pass to the compiler
1872 INCLUDES="$TOOLKIT_INCLUDE $ZLIB_INCLUDE $LIBPNG_INCLUDE -I. -I\${top_builddir}/include -I\${top_srcdir}/include"
1874 dnl C/C++ compiler options used to compile wxWindows
1875 if test "$ac_cv_prog_gcc" = "yes"; then
1876 dnl CXXWARNINGS="-Wall -W -Wcast-qual -Werror"
1878 dnl there is one weird warning in docview.h:71 which prevents me from doing
1880 dnl CXXWARNINGS="-Wall -Werror"
1882 EXTRA_CFLAGS="$WXDEBUG $PROFILE $OPTIMISE $INCLUDES"
1884 CFLAGS="$CFLAGS $EXTRA_CFLAGS"
1885 CXXFLAGS="$CXXFLAGS $EXTRA_CFLAGS $CXXWARNINGS"
1887 if test "$wxUSE_GUI" = "yes"; then
1888 dnl TODO add checks that these samples will really compile (i.e. all the
1889 dnl library features they need are present)
1891 dnl TODO some samples are never built so far:
1892 dnl mfc, nativdlg, oleauto, ownerdrw, proplist
1893 SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS bombs controls dialogs drawing dynamic \
1894 forty fractal image wxpoem"
1898 AC_SUBST(WX_MAJOR_VERSION_NUMBER)
1899 AC_SUBST(WX_MINOR_VERSION_NUMBER)
1900 AC_SUBST(WX_RELEASE_NUMBER)
1901 AC_SUBST(WX_LIBRARY)
1903 dnl suppress libtool's informational messages - they duplicate its command line
1904 LIBTOOL="$LIBTOOL --silent"
1907 dnl debugging options
1908 AC_SUBST(WXDEBUG_DEFINE)
1912 AC_SUBST(TOOLKIT_DEF)
1913 AC_SUBST(TOOLKIT_DIR)
1914 AC_SUBST(TOOLKIT_INCLUDE)
1916 dnl additional sources
1917 AC_SUBST(EXTRA_VPATH)
1920 dnl additional subdirectories where we will build
1921 AC_SUBST(INCLUDE_SUBDIRS)
1922 AC_SUBST(UTILS_SUBDIRS)
1923 AC_SUBST(DOCS_SUBDIRS)
1924 AC_SUBST(SAMPLES_SUBDIRS)
1925 AC_SUBST(USER_SUBDIRS)
1927 dnl additional libraries
1928 AC_SUBST(EXTRA_LIBS)
1931 dnl create the configuration header file from the template
1933 dnl NB: automake can't work correctly if our header lives in a directory which
1934 dnl is only determined at configure time, so we create it on the top-level
1935 dnl and make a link to allow '#include "wx/setup.h"' to still work
1936 AM_CONFIG_HEADER(setup.h:include/wx/unix/setup.h.in)
1938 dnl MAKE_SET will be replaced with "MAKE=..." or nothing if make sets MAKE
1939 dnl itself (this is macro is required if SUBDIRS variable is used in Makefile.am
1940 dnl - and we do use it)
1943 dnl create each of the files in the space separated list from the file.in
1944 dnl (the original file name may be overriden by appending another name after a
1948 Makefile src/Makefile
1951 include/wx/generic/Makefile
1952 include/wx/gtk/Makefile
1953 include/wx/motif/Makefile
1954 include/wx/msw/Makefile
1955 include/wx/protocol/Makefile
1956 include/wx/unix/Makefile
1958 samples/bombs/Makefile
1959 samples/caret/Makefile
1960 samples/checklst/Makefile
1961 samples/config/Makefile
1962 samples/controls/Makefile
1964 samples/dialogs/Makefile
1965 samples/dnd/Makefile
1966 samples/docview/Makefile
1967 samples/docvwmdi/Makefile
1968 samples/drawing/Makefile
1969 samples/dynamic/Makefile
1970 samples/forty/Makefile
1971 samples/fractal/Makefile
1972 samples/grid/Makefile
1973 samples/help/Makefile
1974 samples/image/Makefile
1975 samples/internat/Makefile
1976 samples/joytest/Makefile
1977 samples/layout/Makefile
1978 samples/listctrl/Makefile
1979 samples/mdi/Makefile
1980 samples/memcheck/Makefile
1981 samples/mfc/Makefile
1982 samples/minifram/Makefile
1983 samples/minimal/Makefile
1984 samples/nativdlg/Makefile
1985 samples/notebook/Makefile
1986 samples/oleauto/Makefile
1987 samples/ownerdrw/Makefile
1988 samples/png/Makefile
1989 samples/printing/Makefile
1990 samples/proplist/Makefile
1991 samples/regtest/Makefile
1992 samples/resource/Makefile
1993 samples/sashtest/Makefile
1994 samples/scroll/Makefile
1995 samples/splitter/Makefile
1996 samples/tab/Makefile
1997 samples/taskbar/Makefile
1998 samples/thread/Makefile
1999 samples/toolbar/Makefile
2000 samples/treectrl/Makefile
2001 samples/typetest/Makefile
2002 samples/validate/Makefile
2003 samples/wxpoem/Makefile
2004 samples/wxsocket/Makefile
2008 if test ! -e include/wx/${TOOLKIT_DIR}/setup.h; then
2009 ${LN_S} `pwd`/setup.h include/wx/${TOOLKIT_DIR}/setup.h
2013 LN_S="${ac_cv_prog_LN_S}"
2014 TOOLKIT_DIR="${TOOLKIT_DIR}"