X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/f7f78039d2e18114efdec0abe46dc4ed2d4529a8..de5d3a20ce90c2e8b084350e987097cb63fd2172:/configure.in diff --git a/configure.in b/configure.in index 34d5f8e04f..6745d2c4f8 100644 --- a/configure.in +++ b/configure.in @@ -64,32 +64,35 @@ dnl ------------------------------------------------------------------------ dnl Check platform (host system) dnl ------------------------------------------------------------------------ -dnl assume Unix +dnl OS (assume Unix) USE_UNIX=1 USE_WIN32=0 USE_DOS=0 USE_BEOS=0 USE_MAC=0 -USE_LINUX= -USE_SGI= -USE_HPUX= -USE_SYSV= -USE_SVR4= +dnl Unix kind USE_AIX= -USE_SUN= -USE_SOLARIS= -USE_SUNOS= -USE_ALPHA= -USE_OSF= USE_BSD= USE_DARWIN= USE_FREEBSD= -USE_OPENBSD= +USE_HPUX= +USE_LINUX= USE_NETBSD= +USE_OPENBSD= +USE_OSF= +USE_SGI= +USE_SOLARIS= +USE_SUN= +USE_SUNOS= +USE_SVR4= +USE_SYSV= USE_VMS= USE_ULTRIX= -USE_DATA_GENERAL= +USE_UNIXWARE= + +dnl hardware platform +USE_ALPHA= dnl on some platforms xxx_r() functions are declared inside "#ifdef dnl _REENTRANT" and it's easier to just define this symbol for these platforms @@ -236,6 +239,13 @@ case "${host}" in DEFAULT_DEFAULT_wxUSE_MOTIF=1 ;; + *-*-*UnixWare*) + USE_SYSV=1 + USE_SVR4=1 + USE_UNIXWARE=1 + AC_DEFINE(__UNIXWARE__) + ;; + *-*-cygwin* | *-*-mingw32* ) dnl MBN: some of the defines have been moved after toolkit detection dnl because for wxMotif/wxGTK/wxX11 to build on Cygwin @@ -369,7 +379,6 @@ if test $DEBUG_CONFIGURE = 1; then DEFAULT_wxUSE_NORMALIZED_PS_FONTS=no DEFAULT_wxUSE_POSTSCRIPT=no - DEFAULT_wxUSE_X_RESOURCES=no DEFAULT_wxUSE_CLIPBOARD=no DEFAULT_wxUSE_TOOLTIPS=no DEFAULT_wxUSE_DRAG_AND_DROP=no @@ -472,6 +481,7 @@ if test $DEBUG_CONFIGURE = 1; then DEFAULT_wxUSE_IFF=no DEFAULT_wxUSE_XPM=no DEFAULT_wxUSE_ICO_CUR=no + DEFAULT_wxUSE_ACCESSIBILITY=no else DEFAULT_wxUSE_UNIVERSAL=no @@ -541,7 +551,6 @@ else DEFAULT_wxUSE_NORMALIZED_PS_FONTS=yes DEFAULT_wxUSE_POSTSCRIPT=yes - DEFAULT_wxUSE_X_RESOURCES=no DEFAULT_wxUSE_CLIPBOARD=yes DEFAULT_wxUSE_TOOLTIPS=yes DEFAULT_wxUSE_DRAG_AND_DROP=yes @@ -644,6 +653,7 @@ else DEFAULT_wxUSE_PNM=yes DEFAULT_wxUSE_XPM=yes DEFAULT_wxUSE_ICO_CUR=yes + DEFAULT_wxUSE_ACCESSIBILITY=no fi dnl WX_ARG_WITH should be used to select whether an external package will be @@ -703,7 +713,7 @@ dnl for GUI only WX_ARG_WITH(dmalloc, [ --with-dmalloc use dmalloc library (http://dmalloc.com/)], wxUSE_DMALLOC) WX_ARG_SYS_WITH(regex, [ --with-regex enable support for wxRegEx class], wxUSE_REGEX) WX_ARG_SYS_WITH(zlib, [ --with-zlib use zlib for LZW compression], wxUSE_ZLIB) -WX_ARG_WITH(odbc, [ --with-odbc use the IODBC and wxODBC classes], wxUSE_ODBC) +WX_ARG_SYS_WITH(odbc, [ --with-odbc use the IODBC and wxODBC classes], wxUSE_ODBC) dnl --------------------------------------------------------------------------- dnl compile options @@ -842,10 +852,8 @@ dnl --------------------------------------------------------------------------- dnl resources dnl --------------------------------------------------------------------------- -dnl WX_ARG_ENABLE(prologio, [ --enable-prologio use Prolog IO library], wxUSE_PROLOGIO) -WX_ARG_ENABLE(resources, [ --enable-resources use wxWindows resources], wxUSE_RESOURCES) - -WX_ARG_ENABLE(xresources, [ --enable-xresources use X resources for save (default for gtk+)], wxUSE_X_RESOURCES) +WX_ARG_ENABLE(prologio, [ --enable-prologio not available; see contrib], wxUSE_PROLOGIO) +WX_ARG_ENABLE(resources, [ --enable-resources not available; see contrib], wxUSE_RESOURCES) dnl --------------------------------------------------------------------------- dnl IPC &c @@ -950,7 +958,6 @@ if test "x$wxUSE_COCOA" != "x" -a "$wxUSE_COCOA" != "0" ; then wxUSE_DRAG_AND_DROP=no wxUSE_DATAOBJ=no DEFAULT_wxUSE_TOOLBAR_NATIVE=no - DEFAULT_wxUSE_TEXTDLG=no DEFAULT_wxUSE_GAUGE=no DEFAULT_wxUSE_SCROLLBAR=no DEFAULT_wxUSE_SLIDER=no @@ -1044,6 +1051,7 @@ WX_ARG_ENABLE(busyinfo, [ --enable-busyinfo use wxBusyInfo], wxUSE_BUS WX_ARG_ENABLE(joystick, [ --enable-joystick use wxJoystick (Linux only)], wxUSE_JOYSTICK) WX_ARG_ENABLE(metafile, [ --enable-metafiles use wxMetaFile (Windows only)], wxUSE_METAFILE) WX_ARG_ENABLE(dragimage, [ --enable-dragimage use wxDragImage], wxUSE_DRAGIMAGE) +WX_ARG_ENABLE(accessibility,[ --enable-accessibility enable accessibility support], wxUSE_ACCESSIBILITY) dnl --------------------------------------------------------------------------- dnl support for image formats that do not rely on external library @@ -1733,7 +1741,7 @@ if test "$wxUSE_REGEX" != "no"; then if test "$wxUSE_REGEX" = "sys" -o "$wxUSE_REGEX" = "yes" ; then dnl according to Unix 98 specs, regcomp() is in libc but I believe that dnl on some old systems it may be in libregex - check for it too? - AC_CHECK_HEADER(regex.h, AC_CHECK_FUNCS(regcomp)) + AC_CHECK_HEADER(regex.h, [AC_CHECK_FUNCS(regcomp)]) if test "x$ac_cv_func_regcomp" != "xyes"; then if test "$wxUSE_REGEX" = "sys" ; then @@ -1778,14 +1786,12 @@ if test "$wxUSE_ZLIB" != "no" ; then dnl has anything more ancient (1.1.3 was released in July 1998) dnl anyhow AC_CACHE_CHECK([for zlib.h >= 1.1.4], ac_cv_header_zlib_h, - AC_TRY_RUN( + [AC_TRY_RUN( + dnl zlib.h defines ZLIB_VERSION="x.y.z" [ - dnl zlib.h defines ZLIB_VERSION="x.y.z" #include #include - dnl don't use the brackets as quotes, we need them - changequote(,) int main() { FILE *f=fopen("conftestval", "w"); @@ -1797,13 +1803,12 @@ if test "$wxUSE_ZLIB" != "no" ; then ZLIB_VERSION[4] >= '4')) ? "yes" : "no"); exit(0); } - changequote([,]) ], ac_cv_header_zlib_h=`cat conftestval`, ac_cv_header_zlib_h=no, dnl cross-compiling: don't have an answer, try later unset ac_cv_header_zlib_h - ) + )] ) dnl If the test above did not come up with a value (e.g. cross dnl compiling) then this should give a definitive answer @@ -1862,9 +1867,9 @@ if test "$wxUSE_LIBPNG" != "no" ; then dnl libpng version 0.9 is known to not work, if an even newer dnl version is required, just bump it up in the test below AC_CACHE_CHECK([for png.h > 0.90], ac_cv_header_png_h, - AC_TRY_RUN( + [AC_TRY_RUN( + dnl png.h defines PNG_LIBPNG_VER=number [ - dnl png.h defines PNG_LIBPNG_VER=number #include #include @@ -1881,7 +1886,7 @@ if test "$wxUSE_LIBPNG" != "no" ; then ac_cv_header_png_h=no, dnl cross-compiling: test (later) if we have any png.h unset ac_cv_header_png_h - ) + )] ) AC_CHECK_HEADER(png.h) @@ -2060,6 +2065,10 @@ if test "$USE_WIN32" = 1 ; then dnl --- some of them should probably be included conditionally. LIBS="$LIBS -lwinspool -lwinmm -lshell32 -lcomctl32 -lctl3d32 -ladvapi32 -lwsock32" + if test "$wxUSE_ACCESSIBILITY" = "yes" ; then + LIBS="$LIBS -loleacc" + fi + case "${host}" in *-*-cygwin* ) dnl Cygwin doesn't include these by default @@ -2068,9 +2077,14 @@ if test "$USE_WIN32" = 1 ; then esac dnl add extra odbc libs if we have compiled in odbc + if test "$wxUSE_ODBC" = "sys" ; then + wxUSE_ODBC = "yes" + fi if test "$wxUSE_ODBC" = "yes" ; then LIBS=" -lodbc32 -lole32 -loleaut32 $LIBS" + AC_DEFINE(wxUSE_ODBC) fi + dnl We might want to abort here if wxUSE_ODBC="builtin" isn't supported on msw. RESFLAGS="--include-dir \$(top_srcdir)/include --include-dir \$(top_srcdir)/\$(program_dir) --define __WIN32__ --define __WIN95__ --define __GNUWIN32__" RESPROGRAMOBJ="\$(PROGRAM)_resources.o" @@ -2644,9 +2658,6 @@ equivalent variable and GTK+ is version 1.2.3 or above. if test "$wxUSE_PM" = 1; then TOOLKIT=PM GUIDIST=GTK_DIST -dnl AC_MSG_WARN([OS/2 PM requires old resource format, re-enabled]) -dnl wxUSE_PROLOGIO="yes" -dnl wxUSE_RESOURCES="yes" AC_MSG_WARN([OS/2 threads are not yet supported... disabled]) wxUSE_THREADS="no" fi @@ -2741,9 +2752,42 @@ dnl --------------------------------------------------------------------------- dnl Optional libraries included when system library is not used dnl --------------------------------------------------------------------------- -dnl ODBC objects are Unix only -if test "$TOOLKIT" != "MSW" -a "$wxUSE_ODBC" = "yes" ; then - ALL_OBJECTS="${ALL_OBJECTS} \$(IODBCOBJS)" + +dnl ---------------------------------------------------------------- +dnl iODBC support +dnl ---------------------------------------------------------------- + +IODBC_C_SRC="" + + +dnl ODBC is handled seperately for MSW +if test "$TOOLKIT" != "MSW" ; then + + if test "$wxUSE_ODBC" != "no" ; then + AC_DEFINE(wxUSE_ODBC) + SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS db" + + dnl is this still necessary in 2.5? + WXODBCFLAG="-D_IODBC_" + + + if test "$wxUSE_ODBC" = "sys" ; then + dnl This is not ideal we really ough to use the unixodbc-config + dnl or iodbc-config if they exist. + + AC_CHECK_HEADER(sql.h) + AC_SEARCH_LIBS(SQLAllocEnv,iodbc unixodbc odbc , , [ + wxUSE_ODBC=builtin; + AC_MSG_WARN( [ can't find system Odbc library falling back to builtin ]) + ] ) + fi + dnl Not "no" either... + if test "$wxUSE_ODBC" != "sys" ; then + ALL_OBJECTS="${ALL_OBJECTS} \$(IODBCOBJS)" + fi + + fi + fi if test "$wxUSE_REGEX" = "builtin" ; then @@ -2765,21 +2809,37 @@ if test "$wxUSE_OPENGL" = "yes"; then else AC_CHECK_HEADER(GL/gl.h, [ + found_gl=0 + AC_MSG_CHECKING([for -lGL]) - WX_PATH_FIND_LIBRARIES([$SEARCH_LIB],[GL]) + WX_PATH_FIND_LIBRARIES([$SEARCH_LIB],GL) if test "$ac_find_libraries" != "" ; then WX_LINK_PATH_EXIST([$ac_find_libraries],[$LDFLAGS]) - if test "$ac_path_to_link" = " -L/usr/lib" ; then - LDFLAGS_GL="$LDFLAGS" - else - LDFLAGS_GL="$LDFLAGS$ac_path_to_link" + if test "$ac_path_to_link" != " -L/usr/lib" ; then + LDFLAGS_GL="$ac_path_to_link" fi - OPENGL_LIBS="-lGL -lGLU" - AC_MSG_RESULT([yes]) - else + + dnl don't suppose that libGL and libGLU are always in the + dnl same directory -- this is not true for some common + dnl distributions + WX_PATH_FIND_LIBRARIES([$SEARCH_LIB],GLU) + if test "$ac_find_libraries" != "" ; then + WX_LINK_PATH_EXIST([$ac_find_libraries],[$LDFLAGS]) + if test "$ac_path_to_link" != " -L/usr/lib" -a \ + "$ac_path_to_link" != "$LDFLAGS_GL"; then + LDFLAGS_GL="$LDFLAGS_GL$ac_path_to_link" + fi + + found_gl=1 + OPENGL_LIBS="-lGL -lGLU" + AC_MSG_RESULT([yes]) + fi + fi + + if "$found_gl" != 1; then AC_MSG_RESULT([no]) AC_MSG_CHECKING([for -lMesaGL]) - WX_PATH_FIND_LIBRARIES([$SEARCH_LIB],[MesaGL]) + WX_PATH_FIND_LIBRARIES([$SEARCH_LIB],MesaGL) if test "$ac_find_libraries" != "" ; then WX_LINK_PATH_EXIST([$ac_find_libraries],[$LDFLAGS]) LDFLAGS_GL="$LDFLAGS$ac_path_to_link" @@ -3171,11 +3231,12 @@ dnl defines uid_t and gid_t if not already defined AC_TYPE_UID_T dnl check what exactly size_t is on this machine - this is necessary to avoid -dnl ambiguos overloads in several places, notably wx/string.h and wx/array.h +dnl ambiguous overloads in several places, notably wx/string.h and wx/array.h AC_LANG_SAVE AC_LANG_CPLUSPLUS AC_CACHE_CHECK([if size_t is unsigned int], wx_cv_size_t_is_uint, + [ dnl an obvious check like AC_TRY_COMPILE[struct Foo { ... };] doesn't work dnl with egcs (at least) up to 1.1.1 as it allows you to compile duplicate dnl methods in a local class (i.e. class inside a function) declaration @@ -3193,6 +3254,7 @@ AC_CACHE_CHECK([if size_t is unsigned int], wx_cv_size_t_is_uint=no, wx_cv_size_t_is_uint=yes ) + ] ) if test "$wx_cv_size_t_is_uint" = "yes"; then @@ -3676,6 +3738,23 @@ if test "$TOOLKIT" != "MSW"; then if test "x$GCC" != "xyes"; then THREAD_OPTS="" fi + ;; + + *-*-irix* ) + dnl gcc under IRIX doesn't seem to like -pthread, but it + dnl doesn't give an error for it neither, just a warning + dnl message -- but this is still very annoying + if test "x$GCC" = "xyes"; then + THREAD_OPTS="" + fi + ;; + + *-*-*UnixWare*) + dnl flying by man pages here: Caldera online docs use this + if test "x$GCC" != "xyes"; then + THREAD_OPTS="-Ethread" + fi + ;; esac dnl simply linking with libpthread should make the test below work but @@ -3798,17 +3877,17 @@ if test "$TOOLKIT" != "MSW"; then dnl 3. pthread_attr_getschedparam and pthread_attr_setschedparam HAVE_PRIOR_FUNCS=0 AC_CHECK_FUNC(pthread_attr_getschedpolicy, - AC_CHECK_FUNC(pthread_attr_setschedparam, - AC_CHECK_FUNC(sched_get_priority_max, + [AC_CHECK_FUNC(pthread_attr_setschedparam, + [AC_CHECK_FUNC(sched_get_priority_max, HAVE_PRIOR_FUNCS=1, - AC_CHECK_LIB([posix4], sched_get_priority_max, + [AC_CHECK_LIB([posix4], sched_get_priority_max, [ HAVE_PRIOR_FUNCS=1 POSIX4_LINK=" -lposix4" ], - ) - ) - ) + )] + )] + )] ) if test "$HAVE_PRIOR_FUNCS" = 1; then @@ -4412,9 +4491,6 @@ if test "$wxUSE_SOCKETS" = "yes" ; then AC_CACHE_CHECK([what is the type of the third argument of getsockname], wx_cv_type_getsockname3, [ - AC_LANG_SAVE - AC_LANG_CPLUSPLUS - AC_TRY_COMPILE( [ #include @@ -4425,32 +4501,45 @@ if test "$wxUSE_SOCKETS" = "yes" ; then getsockname(0, 0, &len); ], wx_cv_type_getsockname3=socklen_t, - AC_TRY_COMPILE( - [ - #include - #include - ], - [ - size_t len; - getsockname(0, 0, &len); - ], - wx_cv_type_getsockname3=size_t, + [ + dnl the compiler will compile the version with size_t + dnl even if the real type of the last parameter is int + dnl but it should give at least a warning about + dnl converting between incompatible pointer types, so + dnl try to use it to get the correct behaviour at + dnl least with gcc (otherwise we'd always use size_t) + CFLAGS_OLD="$CFLAGS" + if test "$GCC" = yes ; then + CFLAGS="$CFLAGS -Werror" + fi + AC_TRY_COMPILE( [ #include #include ], [ - int len; + size_t len; getsockname(0, 0, &len); ], - wx_cv_type_getsockname3=int, - wx_cv_type_getsockname3=unknown + wx_cv_type_getsockname3=size_t, + AC_TRY_COMPILE( + [ + #include + #include + ], + [ + int len; + getsockname(0, 0, &len); + ], + wx_cv_type_getsockname3=int, + wx_cv_type_getsockname3=unknown + ) ) - ) - ) - AC_LANG_RESTORE + CFLAGS="$CFLAGS_OLD" + ] + ) ]) if test "$wx_cv_type_getsockname3" = "unknown"; then @@ -4609,18 +4698,6 @@ if test "$wxUSE_wxUSE_EXPERIMENTAL_PRINTF" = "yes"; then AC_DEFINE(wxUSE_EXPERIMENTAL_PRINTF) fi - -dnl ---------------------------------------------------------------- -dnl iODBC support -dnl ---------------------------------------------------------------- - -IODBC_C_SRC="" -if test "$wxUSE_ODBC" = "yes" ; then - AC_DEFINE(wxUSE_ODBC) - WXODBCFLAG="-D_IODBC_" - SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS db" -fi - dnl ---------------------------------------------------------------- dnl Register PostScript options for makefiles and setup.h dnl ---------------------------------------------------------------- @@ -4693,25 +4770,8 @@ if test "$wxUSE_PRINTING_ARCHITECTURE" = "yes" ; then SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS printing" fi -dnl if test "$wxUSE_PROLOGIO" = "yes" ; then -dnl AC_DEFINE(wxUSE_PROLOGIO) -dnl ALL_OBJECTS="$ALL_OBJECTS parser.o" -dnl fi - -dnl if test "$wxUSE_RESOURCES" = "yes" ; then -dnl if test "$wxUSE_NANOX" = "yes"; then -dnl AC_MSG_WARN([Cannot use resource database functions in NanoX]) -dnl else -dnl AC_DEFINE(wxUSE_RESOURCES) -dnl SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS resource" -dnl fi -dnl if test "$wxUSE_PROLOGIO" != "yes" ; then -dnl ALL_OBJECTS="$ALL_OBJECTS parser.o" -dnl fi -dnl fi - -if test "$wxUSE_X_RESOURCES" = "yes"; then - AC_DEFINE(wxUSE_X_RESOURCES) +if test "$wxUSE_PROLOGIO" = "yes" -o "$wxUSE_RESOURCES" = "yes"; then + AC_MSG_ERROR([wxExpr and old-style resources are now available in contrib only]) fi dnl --------------------------------------------------------------------------- @@ -5108,6 +5168,11 @@ if test "$wxUSE_DRAGIMAGE" = "yes"; then SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS dragimag" fi +if test "$wxUSE_ACCESSIBILITY" = "yes"; then + AC_DEFINE(wxUSE_ACCESSIBILITY) + SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS access" +fi + if test "$wxUSE_MENUS" = "yes"; then AC_DEFINE(wxUSE_MENUS) SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS menu" @@ -5671,6 +5736,7 @@ echo " png ${wxUSE_LIBPNG-n echo " regex ${wxUSE_REGEX}" echo " tiff ${wxUSE_LIBTIFF-none}" echo " zlib ${wxUSE_ZLIB}" +echo " odbc ${wxUSE_ODBC}" echo ""