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=$DEFAULT_wxUSE_GTK)
377 AC_ARG_WITH(motif, [ --with-motif use Motif/Lesstif],
378 wxUSE_MOTIF="$withval",wxUSE_MOTIF=$DEFAULT_wxUSE_MOTIF)
379 AC_ARG_WITH(cygwin, [ --with-cygwin use Cygwin for MS-Windows],
380 wxUSE_CYGWIN="$withval",wxUSE_CYGWIN=$DEFAULT_wxUSE_CYGWIN)
381 AC_ARG_WITH(mingw, [ --with-mingw use GCC Minimal MS-Windows],
382 wxUSE_MINGW="$withval",wxUSE_MINGW=$DEFAULT_wxUSE_MINGW)
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 convert "yes" to 1 and "no" to 0
671 wxUSE_GTK=`echo $wxUSE_GTK | sed -e 's/yes/1/' -e 's/no/0/'`
672 wxUSE_MOTIF=`echo $wxUSE_MOTIF | sed -e 's/yes/1/' -e 's/no/0/'`
673 wxUSE_MSW=`echo $wxUSE_MSW | sed -e 's/yes/1/' -e 's/no/0/'`
675 dnl NB: this supposes that the shell is able to handle arithmetic expansion and
676 dnl the ${VAR:-VALUE} construction. It does simplify our life though...
677 NUM_TOOLKITS="$((${wxUSE_GTK:-0}+${wxUSE_MOTIF:-0}+${wxUSE_MSW:-0}))"
679 case "$NUM_TOOLKITS" in
683 AC_MSG_ERROR(Please specify a toolkit)
686 AC_MSG_ERROR(Please specify at most one toolkit)
689 dnl ---------------------------------------------------------------------------
690 dnl Checks for programs
691 dnl ---------------------------------------------------------------------------
693 dnl flush the cache because checking for programs might abort
696 dnl cross-compiling support: we're cross compiling if the build system is
697 dnl different from the target one (assume host and target be always the same)
698 if eval "test $host != $build"; then
699 if eval "test $build != NONE"; then
702 RANLIB="$build-ranlib"
707 dnl C-compiler checks
708 dnl defines CC with the compiler to use
709 dnl defines GCC with yes if using gcc
710 dnl defines GCC empty if not using gcc
714 CFLAGS=`echo "$CFLAGS" | sed 's/-g//g'`
716 dnl what is the c-preprocessor
717 dnl defines CPP with the c-preprocessor
720 dnl is -traditional needed for correct compilations
721 dnl adds -traditional for gcc if needed
722 AC_PROG_GCC_TRADITIONAL
727 dnl C++-compiler checks
728 dnl defines CXX with the compiler to use
729 dnl defines GXX with yes if using gxx
730 dnl defines GXX empty if not using gxx
734 dnl what is the C++-preprocessor
735 dnl defines CXXCPP with the C++-preprocessor
738 CXXFLAGS=`echo "$CXXFLAGS" | sed 's/-g//g'`
743 dnl defines RANLIB with the appropriate command
747 dnl defines AR with the appropriate command
748 AC_CHECK_PROG(AR, ar, ar, ar)
751 dnl defines INSTALL with the appropriate command
755 dnl defines STRIP as strip or nothing if not found
756 AC_CHECK_PROG(STRIP, strip, strip, true)
758 dnl check if VPATH works
759 AC_MSG_CHECKING("make for VPATH support")
761 cat - << EOF > confMake
767 if test ! -d sub ; then
770 echo dummy > sub/file
771 ${MAKE-make} -f confMake VPATH=sub 2> config.log > /dev/null
773 rm -f sub/file check final_file confMake
775 if test "$RESULT" = 0; then
780 You need a make-utility that is able to use the variable
782 If your version of make does not support VPATH correctly,
783 please install GNU-make (possibly as gmake), and start
784 configure with the following command:
785 export MAKE=gmake; ./configure for sh-type shells
786 setenv MAKE gmake; ./configure for csh-type shells
787 Also please do remember to use gmake in this case every time
788 you are trying to compile.
793 dnl defines YACC with the appropriate command
797 dnl defines LEX with the appropriate command
798 dnl defines LEXLIB with the appropriate library
799 dnl this AM version (don't use AC_PROG_LEX!) also
800 dnl defines YYTEXT_POINTER if yytext is char*
801 dnl defines LEX_OUTPUT_ROOT as to the base of the
802 dnl filename output by the lexer
805 dnl needed for making link to setup.h
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 LTLIBOBJS="$LTLIBOBJS $THREADS_OBJ"
1149 dnl define autoconf macro to check for given function in both pthread and
1150 dnl posix4 libraries
1151 dnl usage: AC_FUNC_THREAD(FUNCTION_NAME)
1153 dnl AC_DEFUN(AC_FUNC_THREAD,
1155 dnl AC_CHECK_LIB($THREADS_LINK, $1,
1156 dnl AC_DEFINE(HAVE_`'translit($1, `A-Z', 'a-z'),
1157 dnl [AC_CHECK_LIB("posix4", $1,
1158 dnl [AC_DEFINE(HAVE_`'translit($1, `A-Z', 'a-z'))
1159 dnl POSIX4_LINK="-lposix4"
1164 AC_CHECK_HEADERS(sched.h)
1166 AC_CHECK_LIB($THREADS_LINK, sched_yield,
1167 AC_DEFINE(HAVE_SCHED_YIELD),
1168 [AC_CHECK_LIB("posix4", sched_yield,
1169 [AC_DEFINE(HAVE_SCHED_YIELD) POSIX4_LINK="-lposix4"],
1170 AC_MSG_WARN(wxThread::Yield will not work properly)
1174 dnl VZ: we should be checking for all of the following functions instead:
1175 dnl 1. pthread_attr_getschedpolicy
1176 dnl 2. sched_get_priority_min and sched_get_priority_max
1177 dnl 3. pthread_attr_getschedparam and pthread_attr_setschedparam
1178 dnl but it seems that if the first one is there, the other ones are too (of
1179 dnl course the proper solution would be to implement AC_FUNC_THREAD above
1180 dnl and do test for them all - anyone?)
1181 AC_CHECK_LIB($THREADS_LINK, pthread_attr_getschedpolicy,
1182 AC_DEFINE(HAVE_THREAD_PRIORITY_FUNCTIONS),
1183 [AC_CHECK_LIB("posix4", pthread_attr_getschedpolicy,
1184 [AC_DEFINE(HAVE_THREAD_PRIORITY_FUNCTIONS) POSIX4_LINK="-lposix4"],
1185 AC_MSG_WARN(Setting thread priority will not work)
1189 AC_CHECK_LIB($THREADS_LINK, pthread_cancel,
1190 AC_DEFINE(HAVE_PTHREAD_CANCEL),
1191 AC_MSG_WARN([wxThread::Kill() will not work properly]))
1193 AC_CACHE_CHECK([for pthread_cleanup_push/pop], wx_cv_func_pthread_cleanup_push,
1195 AC_TRY_COMPILE([#include <pthread.h>],
1197 pthread_cleanup_push(NULL, NULL);
1198 pthread_cleanup_pop(0);
1200 wx_cv_func_pthread_cleanup_push=yes
1201 AC_DEFINE(HAVE_THREAD_CLEANUP_FUNCTIONS)
1203 wx_cv_func_pthread_cleanup_push=no
1207 THREADS_LINK="-l$THREADS_LINK"
1210 if test "$WXGTK12" = 1 ; then
1211 AC_DEFINE_UNQUOTED(__WXGTK12__,$WXGTK12)
1215 if test "$wxUSE_DEBUG_GDB" = "yes" ; then
1216 wxUSE_DEBUG_INFO=yes
1220 if test "$wxUSE_DEBUG_INFO" = "yes" ; then
1225 if test "$wxUSE_DEBUG_FLAG" = "yes" ; then
1227 WXDEBUG_DEFINE="-D__WXDEBUG__"
1229 WXDEBUG_DEFINE="-DGTK_NO_CHECK_CASTS"
1232 if test "$wxUSE_MEM_TRACING" = "yes" ; then
1233 AC_DEFINE(wxUSE_MEMORY_TRACING)
1234 AC_DEFINE(wxUSE_GLOBAL_MEMORY_OPERATORS)
1235 SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS memcheck"
1238 if test "$wxUSE_DMALLOC" = "yes" ; then
1239 DMALLOC_LINK="-ldmalloc"
1243 if test "$wxUSE_PROFILE" = "yes" ; then
1247 CXXFLAGS=`echo "${CXXFLAGS}" | sed "s/\-O.//g" `
1248 CFLAGS=`echo "${CFLAGS}" | sed "s/\-O.//g" `
1249 if test "$wxUSE_OPTIMISE" = "no" ; then
1252 if test "$GCC" = yes ; then
1256 OPTIMISE="${OPTIMISE} "
1264 dnl ---------------------------------------------------------------------------
1265 dnl Optional libraries
1266 dnl ---------------------------------------------------------------------------
1268 if test "$wxUSE_ZLIB" = "yes" ; then
1269 AC_DEFINE(wxUSE_ZLIB)
1270 EXTRA_VPATH="$EXTRA_VPATH:\$(srcdir)/zlib"
1271 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"
1272 if eval "test x$wxUSE_STREAMS = x1"; then
1273 LTLIBOBJS="$LTLIBOBJS zstream.lo"
1277 if test "$wxUSE_LIBPNG" = "yes" ; then
1278 AC_DEFINE(wxUSE_LIBPNG)
1279 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"
1280 EXTRA_VPATH="$EXTRA_VPATH:\$(srcdir)/png"
1281 SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS png"
1284 if test "$wxUSE_LIBGIF" = "yes" ; then
1285 AC_DEFINE(wxUSE_LIBGIF)
1286 LTLIBOBJS="$LTLIBOBJS imaggif.lo"
1289 if test "$wxUSE_LIBJPEG" = "yes" ; then
1290 AC_DEFINE(wxUSE_LIBJPEG)
1291 EXTRA_VPATH="$EXTRA_VPATH:\${srcdir}/jpeg"
1292 LTLIBOBJS="$LTLIBOBJS imagjpeg.lo \
1293 jcomapi.lo jutils.lo jerror.lo jmemmgr.lo jmemnobs.lo \
1294 jcapimin.lo jcapistd.lo jctrans.lo jcparam.lo jdatadst.lo \
1295 jcinit.lo jcmaster.lo jcmarker.lo jcmainct.lo jcprepct.lo \
1296 jccoefct.lo jccolor.lo jcsample.lo jchuff.lo jcphuff.lo \
1297 jcdctmgr.lo jfdctfst.lo jfdctflt.lo jfdctint.lo \
1298 jdapimin.lo jdapistd.lo jdtrans.lo jdatasrc.lo \
1299 jdmaster.lo jdinput.lo jdmarker.lo jdhuff.lo jdphuff.lo \
1300 jdmainct.lo jdcoefct.lo jdpostct.lo jddctmgr.lo jidctfst.lo \
1301 jidctflt.lo jidctint.lo jidctred.lo jdsample.lo jdcolor.lo \
1302 jquant1.lo jquant2.lo jdmerge.lo"
1305 if test "$wxUSE_OPENGL" = "yes"; then
1306 AC_CHECK_HEADER(GL/gl.h, [
1307 AC_CHECK_LIB(GL, glInitNames, [
1309 AC_DEFINE(wxUSE_OPENGL)
1310 UTILS_SUBDIRS="$UTILS_SUBDIRS glcanvas/src"
1312 AC_CHECK_LIB(MesaGL, glInitNames, [
1313 OPENGL_LINK="-lMesaGL"
1314 AC_DEFINE(wxUSE_OPENGL)
1315 UTILS_SUBDIRS="$UTILS_SUBDIRS glcanvas/src"
1321 dnl ---------------------------------------------------------------------------
1322 dnl the library may be built without GUI classes at all
1323 dnl ---------------------------------------------------------------------------
1325 if test "$wxUSE_GUI" = "yes"; then
1326 AC_DEFINE(wxUSE_GUI)
1328 dnl the things we always pull in the GUI version of the library:
1329 dnl 1. basic things like wxApp, wxWindow, wxControl, wxFrame, wxDialog (the
1330 dnl library really can't be built without those)
1331 dnl 2. basic controls: wxButton, wxStaticText, wxTextCtrl (these are used in
1332 dnl almost any program and the first 2 are needed to show a message box
1333 dnl which want to be always able to do)
1334 dnl 3. GDI stuff: icon, cursors and all that. Although it would be very nice
1335 dnl to compile without them (if the app doesn't do any drawing, it doesn't
1336 dnl need the dcs, pens, brushes, ...), this just can't be done now
1337 dnl 4. menu stuff: wxMenu, wxMenuBar, wxMenuItem
1338 dnl 5. misc stuff: timers, settings, message box
1339 LTLIBOBJS="$LTLIBOBJS \
1340 main.lo app.lo event.lo wincmn.lo window.lo control.lo framecmn.lo frame.lo dialog.lo panelg.lo \
1341 button.lo stattext.lo textctrl.lo \
1342 bitmap.lo brush.lo colour.lo cursor.lo data.lo dc.lo dcbase.lo dcclient.lo \
1343 dcmemory.lo dcscreen.lo font.lo gdicmn.lo gdiobj.lo icon.lo palette.lo pen.lo region.lo \
1345 settings.lo timer.lo msgdlgg.lo"
1347 AC_DEFINE(wxUSE_NOGUI)
1350 dnl ---------------------------------------------------------------------------
1352 dnl ---------------------------------------------------------------------------
1354 if test "$wxUSE_UNIX" = "yes"; then
1355 AC_DEFINE(wxUSE_UNIX)
1356 LTLIBOBJS="$LTLIBOBJS utilsunx.lo"
1359 dnl ---------------------------------------------------------------------------
1360 dnl Register non-GUI class options for makefiles and setup.h
1361 dnl ---------------------------------------------------------------------------
1363 if test "$wxUSE_APPLE_IEEE" = "yes"; then
1364 AC_DEFINE(wxUSE_APPLE_IEEE)
1365 LTLIBOBJS="$LTLIBOBJS extended.lo"
1368 if test "$wxUSE_TIMEDATE" = "yes"; then
1369 AC_DEFINE(wxUSE_TIMEDATE)
1370 LTLIBOBJS="$LTLIBOBJS date.lo time.lo"
1371 SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS typetest"
1374 if test "$wxUSE_FILE" = "yes"; then
1375 AC_DEFINE(wxUSE_FILE)
1376 LTLIBOBJS="$LTLIBOBJS file.lo"
1379 if test "$wxUSE_TEXTFILE" = "yes"; then
1380 if test "$wxUSE_FILE" != "yes"; then
1381 AC_MSG_WARN(wxTextFile requires wxFile and it won't be compiled without it)
1383 AC_DEFINE(wxUSE_TEXTFILE)
1384 LTLIBOBJS="$LTLIBOBJS textfile.lo"
1388 if test "$wxUSE_CONFIG" = "yes" ; then
1389 if test "$wxUSE_TEXTFILE" != "yes"; then
1390 AC_MSG_WARN(wxConfig requires wxTextFile and it won't be compiled without it)
1392 AC_DEFINE(wxUSE_CONFIG)
1393 LTLIBOBJS="$LTLIBOBJS config.lo fileconf.lo"
1394 SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS config"
1398 if test "$wxUSE_INTL" = "yes" ; then
1399 if test "$wxUSE_FILE" != "yes"; then
1400 AC_MSG_WARN(I18n code requires wxFile and it won't be compiled without it)
1402 AC_DEFINE(wxUSE_INTL)
1403 LTLIBOBJS="$LTLIBOBJS intl.lo"
1404 SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS internat"
1408 if test "$wxUSE_LOG" = "yes"; then
1409 AC_DEFINE(wxUSE_LOG)
1410 LTLIBOBJS="$LTLIBOBJS log.lo"
1413 if test "$wxUSE_LONGLONG" = "yes"; then
1414 AC_DEFINE(wxUSE_LONGLONG)
1415 LTLIBOBJS="$LTLIBOBJS longlong.lo"
1418 if test "$wxUSE_SOCKETS" = "yes" ; then
1419 if test "$wxUSE_THREADS" = "yes" ; then
1420 AC_DEFINE(wxUSE_SOCKETS)
1421 LTLIBOBJS="$LTLIBOBJS sckint.lo socket.lo sckaddr.lo protocol.lo http.lo ftp.lo url.lo"
1422 SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS wxsocket"
1423 INCLUDE_SUBDIRS="$INCLUDE_SUBDIRS protocol"
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 dnl TODO this is unused for now...
1808 dnl if test "$wxUSE_WXTREE" = "yes"; then
1809 dnl AC_DEFINE(wxUSE_WXTREE)
1812 if test "$wxUSE_METAFILE" = "yes"; then
1813 AC_DEFINE(wxUSE_METAFILE)
1814 LTLIBOBJS="$LTLIBOBJS metafile.lo"
1817 if test "$wxUSE_COMMONDLGS" = "yes"; then
1818 dnl these classes don't depend on anything at all
1819 LTLIBOBJS="$LTLIBOBJS progdlgg.lo filedlg.lo fontdlgg.lo"
1821 if test "$wxUSE_CONSTRAINTS" != "yes"; then
1822 AC_MSG_WARN(many common dialogs cannot be used without constraints so they won't be compiled without them)
1824 AC_DEFINE(wxUSE_CONSTRAINTS)
1825 AC_DEFINE(wxUSE_TEXTDLG)
1826 LTLIBOBJS="$LTLIBOBJS colrdlgg.lo textdlgg.lo choicdgg.lo"
1828 if test "$wxUSE_TREECTRL" != "yes"; then
1829 AC_MSG_WARN(wxDirDialog cannot be used without wxTreeCtrl and it won't be compiled without it)
1831 AC_DEFINE(wxUSE_DIRDLG)
1832 LTLIBOBJS="$LTLIBOBJS dirdlgg.lo"
1836 if test "$wxUSE_PRINTING_ARCHITECTURE" = "yes"; then
1837 LTLIBOBJS="$LTLIBOBJS prntdlgg.lo"
1839 AC_MSG_WARN([wxPrintDialog class won't be compiled without printing support])
1843 if test "$wxUSE_MINIFRAME" = "yes"; then
1844 AC_DEFINE(wxUSE_MINIFRAME)
1845 LTLIBOBJS="$LTLIBOBJS minifram.lo"
1846 SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS minifram"
1849 if test "$wxUSE_VALIDATORS" = "yes"; then
1850 AC_DEFINE(wxUSE_VALIDATORS)
1851 LTLIBOBJS="$LTLIBOBJS valgen.lo validate.lo valtext.lo"
1852 SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS validate"
1855 dnl ---------------------------------------------------------------------------
1856 dnl Output the makefiles and such from the results found above
1857 dnl ---------------------------------------------------------------------------
1859 dnl if we add wxUSE_GUI in the future, it might be handy to separate the libs
1860 dnl into GUI and non-GUI parts
1861 GUILIBS="$GUI_TK_LIBRARY $OPENGL_LINK $LIBPNG_LINK $ZLIB_LINK $TOOLKIT_LINK"
1863 dnl all additional libraries (except wxWindows itself) we link with
1864 EXTRA_LIBS="$LIBS $POSIX4_LINK $WCHAR_LINK $THREADS_LINK $DMALLOC_LINK $GUILIBS"
1866 dnl all the libraries needed to link wxWindows programs (when the library is not
1868 LIBS="\${top_builddir}/src/libwx_${WX_LIBRARY}.la $EXTRA_LIBS"
1870 dnl all -I options we must pass to the compiler
1871 INCLUDES="$TOOLKIT_INCLUDE $ZLIB_INCLUDE $LIBPNG_INCLUDE -I. -I\${top_builddir}/include -I\${top_srcdir}/include"
1873 dnl C/C++ compiler options used to compile wxWindows
1874 if test "$ac_cv_prog_gcc" = "yes"; then
1875 dnl CXXWARNINGS="-Wall -W -Wcast-qual -Werror"
1877 dnl there is one weird warning in docview.h:71 which prevents me from doing
1879 dnl CXXWARNINGS="-Wall -Werror"
1881 EXTRA_CFLAGS="$WXDEBUG $PROFILE $OPTIMISE $INCLUDES"
1883 CFLAGS="$CFLAGS $EXTRA_CFLAGS"
1884 CXXFLAGS="$CXXFLAGS $EXTRA_CFLAGS $CXXWARNINGS"
1886 if test "$wxUSE_GUI" = "yes"; then
1887 dnl TODO add checks that these samples will really compile (i.e. all the
1888 dnl library features they need are present)
1890 dnl TODO some samples are never built so far:
1891 dnl mfc, nativdlg, oleauto, ownerdrw, proplist
1892 SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS bombs controls dialogs drawing dynamic \
1893 forty fractal image wxpoem"
1897 AC_SUBST(WX_MAJOR_VERSION_NUMBER)
1898 AC_SUBST(WX_MINOR_VERSION_NUMBER)
1899 AC_SUBST(WX_RELEASE_NUMBER)
1900 AC_SUBST(WX_LIBRARY)
1902 dnl suppress libtool's informational messages - they duplicate its command line
1903 LIBTOOL="$LIBTOOL --silent"
1906 dnl debugging options
1907 AC_SUBST(WXDEBUG_DEFINE)
1911 AC_SUBST(TOOLKIT_DEF)
1912 AC_SUBST(TOOLKIT_DIR)
1913 AC_SUBST(TOOLKIT_INCLUDE)
1915 dnl additional sources
1916 AC_SUBST(EXTRA_VPATH)
1919 dnl additional subdirectories where we will build
1920 AC_SUBST(INCLUDE_SUBDIRS)
1921 AC_SUBST(UTILS_SUBDIRS)
1922 AC_SUBST(DOCS_SUBDIRS)
1923 AC_SUBST(SAMPLES_SUBDIRS)
1924 AC_SUBST(USER_SUBDIRS)
1926 dnl additional libraries
1927 AC_SUBST(EXTRA_LIBS)
1930 dnl create the configuration header file from the template
1932 dnl NB: automake can't work correctly if our header lives in a directory which
1933 dnl is only determined at configure time, so we create it on the top-level
1934 dnl and make a link to allow '#include "wx/setup.h"' to still work
1935 AM_CONFIG_HEADER(setup.h)
1937 dnl MAKE_SET will be replaced with "MAKE=..." or nothing if make sets MAKE
1938 dnl itself (this is macro is required if SUBDIRS variable is used in Makefile.am
1939 dnl - and we do use it)
1942 dnl create each of the files in the space separated list from the file.in
1943 dnl (the original file name may be overriden by appending another name after a
1947 Makefile src/Makefile
1950 include/wx/generic/Makefile
1951 include/wx/gtk/Makefile
1952 include/wx/motif/Makefile
1953 include/wx/msw/Makefile
1954 include/wx/protocol/Makefile
1955 include/wx/unix/Makefile
1957 samples/bombs/Makefile
1958 samples/caret/Makefile
1959 samples/checklst/Makefile
1960 samples/config/Makefile
1961 samples/controls/Makefile
1963 samples/dialogs/Makefile
1964 samples/dnd/Makefile
1965 samples/docview/Makefile
1966 samples/docvwmdi/Makefile
1967 samples/drawing/Makefile
1968 samples/dynamic/Makefile
1969 samples/forty/Makefile
1970 samples/fractal/Makefile
1971 samples/grid/Makefile
1972 samples/help/Makefile
1973 samples/image/Makefile
1974 samples/internat/Makefile
1975 samples/joytest/Makefile
1976 samples/layout/Makefile
1977 samples/listctrl/Makefile
1978 samples/mdi/Makefile
1979 samples/memcheck/Makefile
1980 samples/mfc/Makefile
1981 samples/minifram/Makefile
1982 samples/minimal/Makefile
1983 samples/nativdlg/Makefile
1984 samples/notebook/Makefile
1985 samples/oleauto/Makefile
1986 samples/ownerdrw/Makefile
1987 samples/png/Makefile
1988 samples/printing/Makefile
1989 samples/proplist/Makefile
1990 samples/regtest/Makefile
1991 samples/resource/Makefile
1992 samples/sashtest/Makefile
1993 samples/scroll/Makefile
1994 samples/splitter/Makefile
1995 samples/tab/Makefile
1996 samples/taskbar/Makefile
1997 samples/thread/Makefile
1998 samples/toolbar/Makefile
1999 samples/treectrl/Makefile
2000 samples/typetest/Makefile
2001 samples/validate/Makefile
2002 samples/wxpoem/Makefile
2003 samples/wxsocket/Makefile
2007 if test ! -e include/wx/${TOOLKIT_DIR}/setup.h; then
2008 ${LN_S} `pwd`/setup.h include/wx/${TOOLKIT_DIR}/setup.h
2012 LN_S="${ac_cv_prog_LN_S}"
2013 TOOLKIT_DIR="${TOOLKIT_DIR}"