X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/e07802fc4a6605fad3f14a7abae05a510a2cd4d2..695237bccd652c60deba347117ba5ab32067880c:/configure.in diff --git a/configure.in b/configure.in index 7d88bb7dcb..3f740e77ac 100644 --- a/configure.in +++ b/configure.in @@ -38,7 +38,7 @@ AC_DEFUN(AM_PATH_GTK, no_gtk="" if test "$GTK_CONFIG" != "no" ; then GTK_CFLAGS=`$GTK_CONFIG --cflags` - GTK_LIBS=`$GTK_CONFIG --libs` + GTK_LIBS=`$GTK_CONFIG --libs gthread` ac_save_CFLAGS="$CFLAGS" ac_save_LIBS="$LIBS" CFLAGS="$CFLAGS $GTK_CFLAGS" @@ -409,7 +409,7 @@ dnl WX_INTERFACE_AGE = 0 WX_MAJOR_VERSION_NUMBER=2 WX_MINOR_VERSION_NUMBER=1 -WX_RELEASE_NUMBER=12 +WX_RELEASE_NUMBER=13 WX_INTERFACE_AGE=0 WX_BINARY_AGE=0 @@ -569,11 +569,13 @@ case "${host}" in AC_DEFINE(__GNUWIN32__) AC_DEFINE(STRICT) AC_DEFINE(WINVER, 0x0400) + PROGRAM_EXT=".exe" DEFAULT_DEFAULT_wxUSE_MSW=1 ;; *-pc-os2_emx ) AC_DEFINE(__EMX__) + PROGRAM_EXT=".exe" DEFAULT_DEFAULT_wxUSE_PM=1 ;; @@ -762,7 +764,7 @@ else DEFAULT_wxUSE_LIBPNG=yes DEFAULT_wxUSE_LIBJPEG=yes DEFAULT_wxUSE_LIBTIFF=yes - DEFAULT_wxUSE_ODBC=yes + DEFAULT_wxUSE_ODBC=no DEFAULT_wxUSE_STD_IOSTREAM=no DEFAULT_wxUSE_FILE=yes @@ -1191,7 +1193,24 @@ else fi dnl we suppose that expr exists... -NUM_TOOLKITS=`expr ${wxUSE_GTK:-0} + ${wxUSE_MOTIF:-0} + ${wxUSE_WINE:-0} + ${wxUSE_MINGW:-0} + ${wxUSE_CYGWIN:-0} + ${wxUSE_PM:-0}` +NUM_TOOLKITS=`expr ${wxUSE_GTK:-0} + ${wxUSE_MOTIF:-0} + ${wxUSE_WINE:-0} + ${wxUSE_MINGW:-0} + ${wxUSE_CYGWIN:-0}` + +dnl Allow wxUSE_PM only for OS/2 with EMX. +dnl Path separator; ':' for unix. +dnl Stem for flex output; lexyy for OS/2, lex.yy otherwise +dnl Extension for programs; '.exe' for OS/2 and msw builds (set later). +case "${host}" in + *-pc-os2_emx ) + NUM_TOOLKITS=`expr ${NUM_TOOLKITS} + ${wxUSE_PM:-0}` + # PATH_IFS is autodetected by OS/2's configure (usually ';') + LEX_STEM="lexyy" + ;; + *) + PATH_IFS=':' + LEX_STEM="lex.yy" + PROGRAM_EXT= + ;; +esac case "$NUM_TOOLKITS" in 1) @@ -1221,6 +1240,7 @@ done dnl from "if wxUSE_GUI" else + PATH_IFS=':' AC_MSG_RESULT(base only) fi @@ -1398,6 +1418,9 @@ SEARCH_INCLUDE="\ /usr/x386/include \ /usr/XFree86/include/X11 \ \ + X:/XFree86/include \ + X:/XFree86/include/X11 \ + \ /usr/include/gtk \ /usr/local/include/gtk \ /usr/include/glib \ @@ -1432,8 +1455,12 @@ dnl ---------------------------------------------------------------- dnl search for toolkit (widget sets) dnl ---------------------------------------------------------------- +AFMINSTALL= + if test "$wxUSE_GUI" = "yes"; then +USE_GUI=1 + TOOLKIT= TOOLKIT_INCLUDE= @@ -1445,12 +1472,10 @@ GUI_TK_LIBRARY= GUI_TK_LINK= WXGTK12= +WXGTK13= WXWINE= -dnl Extension for programs; '.exe' for msw builds -PROGRAM_EXT= - if test "$wxUSE_CYGWIN" = 1 || test "$wxUSE_MINGW" = 1 ; then if test "$cross_compiling" = "yes" ; then AC_MSG_WARN(Cross compiling --- skipping windows.h check) @@ -1484,18 +1509,50 @@ if test "$wxUSE_CYGWIN" = 1 || test "$wxUSE_MINGW" = 1 ; then GENERICOBJS="\$(MSW_GENERICOBJS)" UNIXOBJS= GUIDIST=MSW_DIST - PROGRAM_EXT=.exe fi if test "$wxUSE_GTK" = 1; then - dnl avoid calling AM_PATH_GTK twice, so check first for the newer version and - dnl only then, if it wasn't found, for an older one - AM_PATH_GTK(1.2.1, WXGTK12=1, AC_MSG_ERROR(Is gtk-config in path and GTK+ is version 1.2.1 or above?)) + dnl avoid calling AM_PATH_GTK twice, so check first for the newer version + dnl and only then, if it wasn't found, for an older one + AM_PATH_GTK(1.2.3, WXGTK12=1) + + if test "$WXGTK12" != 1; then + AC_MSG_ERROR([ + Please check that gtk-config is in path, the directory + where GTK+ libraries are installed (returned by + 'gtk-config --libs' command) is in LD_LIBRARY_PATH or + equivalent variable and GTK+ is version 1.2.3 or above. + ]) + fi + +dnl it doesn't really work with 1.3.0 now... +dnl AM_PATH_GTK(1.3.0, +dnl WXGTK13=1, +dnl AM_PATH_GTK(1.2.1, +dnl WXGTK12=1, +dnl AC_MSG_ERROR(Is gtk-config in path and GTK+ is version 1.2.1 or above?) +dnl ) +dnl ) TOOLKIT_INCLUDE="$GTK_CFLAGS" + +dnl Appending gthreads as it was done here is not portable, instead +dnl we now call "gtk-config --libs gthread" which sets the right library +dnl name for us. The following hacks are no longer required. + GUI_TK_LIBRARY="$GTK_LIBS" + +dnl dnl On FreeBSD, the libs are called gtk12 etc, so we must append gthread12 +dnl echo $GTK_LIBS | fgrep -q "glib12" +dnl if test $? = 0 ; then +dnl GUI_TK_LIBRARY="$GTK_LIBS -gthread12" +dnl else +dnl GUI_TK_LIBRARY="$GTK_LIBS -lgthread" +dnl fi TOOLKIT=GTK + AFMINSTALL=afminstall + GUIOBJS="\$(GTK_GUIOBJS)" GUIHEADERS="\$(GTK_HEADERS)" COMMONOBJS="\$(GTK_COMMONOBJS)" @@ -1507,9 +1564,8 @@ if test "$wxUSE_GTK" = 1; then UNIXDEPS="\$(UNIX_DEPS)" GUIDIST=GTK_DIST -dnl test for XIM support in libgdk -AC_CHECK_LIB(gdk, gdk_im_open, AC_DEFINE(HAVE_XIM)) - + dnl test for XIM support in libgdk + AC_CHECK_LIB(gdk, gdk_im_open, AC_DEFINE(HAVE_XIM)) fi if test "$wxUSE_WINE" = 1; then @@ -1576,6 +1632,8 @@ if test "$wxUSE_MOTIF" = 1; then GUI_TK_LIBRARY="$X_LIBS" TOOLKIT_INCLUDE="$X_CFLAGS" + AFMINSTALL=afminstall + dnl manual check for X11 headers/libs dnl dnl AC_MSG_CHECKING(for X11 headers) @@ -1601,40 +1659,100 @@ if test "$wxUSE_MOTIF" = 1; then dnl AC_MSG_ERROR(please set LDFLAGS to contain the location of libX11) dnl fi + COMPILED_X_PROGRAM=0 + AC_MSG_CHECKING(for Motif/Lesstif headers) WX_PATH_FIND_INCLUDES($SEARCH_INCLUDE, Xm/Xm.h) if test "$ac_find_includes" != "" ; then AC_MSG_RESULT(found $ac_find_includes) else - AC_MSG_RESULT(no) - AC_MSG_ERROR(please set CFLAGS to contain the location of Xm/Xm.h) + AC_TRY_COMPILE( + [ + #include + ], + [ + int version; + + version = xmUseVersion; + ], + [ + AC_MSG_RESULT(found in default search path) + COMPILED_X_PROGRAM=1 + ], + [ + AC_MSG_RESULT(no) + AC_MSG_ERROR(please set CFLAGS to contain the location of Xm/Xm.h) + ] + ) fi - AC_MSG_CHECKING(for Motif/Lesstif library) - WX_PATH_FIND_LIBRARIES($SEARCH_LIB, Xm) - if test "$ac_find_libraries" != "" ; then - WX_INCLUDE_PATH_EXIST($ac_find_includes, $TOOLKIT_INCLUDE) - WX_LINK_PATH_EXIST($ac_find_libraries, $GUI_TK_LIBRARY) + if test "$COMPILED_X_PROGRAM" = 0; then + AC_MSG_CHECKING(for Motif/Lesstif library) + WX_PATH_FIND_LIBRARIES($SEARCH_LIB, Xm) + if test "$ac_find_libraries" != "" ; then + WX_INCLUDE_PATH_EXIST($ac_find_includes, $TOOLKIT_INCLUDE) + WX_LINK_PATH_EXIST($ac_find_libraries, $GUI_TK_LIBRARY) - GUI_TK_LIBRARY="$GUI_TK_LIBRARY $ac_path_to_link" - TOOLKIT_INCLUDE="$TOOLKIT_INCLUDE $ac_path_to_include" - AC_MSG_RESULT(found at $ac_find_libraries) - else - AC_MSG_RESULT(no) - AC_MSG_ERROR(please set LDFLAGS to contain the location of libXm) - fi + GUI_TK_LIBRARY="$GUI_TK_LIBRARY $ac_path_to_link" + TOOLKIT_INCLUDE="$TOOLKIT_INCLUDE $ac_path_to_include" + AC_MSG_RESULT(found at $ac_find_libraries) + else + dnl it might happen that we found headers in one of the standard + dnl paths but the libs are elsewhere - we do need to try to + dnl compile a sample program then here + AC_TRY_COMPILE( + [ + #include + ], + [ + int version; - AC_MSG_CHECKING(for Xt library) - WX_PATH_FIND_LIBRARIES($SEARCH_LIB,Xt) - if test "$ac_find_libraries" != "" ; then - WX_LINK_PATH_EXIST($ac_find_libraries,$GUI_TK_LIBRARY) - GUI_TK_LIBRARY="$GUI_TK_LIBRARY $ac_path_to_link" - AC_MSG_RESULT(found at $ac_find_libraries) - else - AC_MSG_RESULT(no) - AC_MSG_ERROR(please set LDFLAGS to contain the location of libXt) + version = xmUseVersion; + ], + [ + AC_MSG_RESULT(found in default search path) + COMPILED_X_PROGRAM=1 + ], + [ + AC_MSG_RESULT(no) + AC_MSG_ERROR(please set LDFLAGS to contain the location of libXm) + ] + ) + fi fi + dnl we don't need this as we used AC_PATH_XTRA above which does it for us + dnl + dnl dnl if we already compiled a sample program, X libs are surely there + dnl if test "$COMPILED_X_PROGRAM" = 0; then + dnl AC_MSG_CHECKING(for Xt library) + dnl WX_PATH_FIND_LIBRARIES($SEARCH_LIB,Xt) + dnl if test "$ac_find_libraries" != "" ; then + dnl WX_LINK_PATH_EXIST($ac_find_libraries,$GUI_TK_LIBRARY) + dnl GUI_TK_LIBRARY="$GUI_TK_LIBRARY $ac_path_to_link" + dnl AC_MSG_RESULT(found at $ac_find_libraries) + dnl else + dnl AC_TRY_COMPILE + dnl ( + dnl [ + dnl #include + dnl ], + dnl [ + dnl char *p; + dnl p = XtMalloc(5); + dnl ], + dnl [ + dnl AC_MSG_RESULT(found in default search path) + dnl COMPILED_X_PROGRAM=1 + dnl ], + dnl [ + dnl AC_MSG_RESULT(no) + dnl AC_MSG_ERROR(please set LDFLAGS to contain the location of libXt) + dnl ] + dnl ) + dnl fi + dnl fi + XPM_LINK="" AC_MSG_CHECKING(for Xpm library) WX_PATH_FIND_LIBRARIES($SEARCH_LIB,Xpm) @@ -1645,8 +1763,26 @@ if test "$wxUSE_MOTIF" = 1; then AC_DEFINE(wxHAVE_LIB_XPM) AC_MSG_RESULT(found at $ac_find_libraries) else - AC_MSG_RESULT(no) - AC_MSG_WARN(library will be compiled without support for images in XPM format) + AC_TRY_COMPILE( + [ + #include + ], + [ + int version; + + version = XpmLibraryVersion(); + ], + [ + XPM_LINK="-lXpm " + AC_DEFINE(wxHAVE_LIB_XPM) + AC_MSG_RESULT(found in default search path) + COMPILED_X_PROGRAM=0 + ], + [ + AC_MSG_RESULT(no) + AC_MSG_WARN(library will be compiled without support for images in XPM format) + ] + ) fi GUI_TK_LINK="-lXm $XPM_LINK -lXmu -lXext -lXt -lX11 -lm" @@ -1682,21 +1818,27 @@ fi dnl the name of the directory where the files for this toolkit live if test "$TOOLKIT" != "PM" ; then - TOOLKIT_DIR=`echo ${TOOLKIT} | tr "A-Z" "a-z"` + TOOLKIT_DIR=`echo ${TOOLKIT} | tr "[[A-Z]]" "[[a-z]]"` else TOOLKIT_DIR="os2" fi -dnl the symbol which allows conditional compilation for the given toolkit -TOOLKIT_DEF="-D__WX${TOOLKIT}__" + dnl the symbol which allows conditional compilation for the given toolkit + TOOLKIT_DEF="-D__WX${TOOLKIT}__" -dnl the name of the (libtool) library -WX_LIBRARY="wx_${TOOLKIT_DIR}" + dnl the name of the (libtool) library + WX_LIBRARY="wx_${TOOLKIT_DIR}" dnl the sources, their dependenices and the headers - ALL_OBJECTS="\$(GUIOBJS) \$(COMMONOBJS) \$(GENERICOBJS) \$(UNIXOBJS) \$(HTMLOBJS) \$(IODBCOBJS)" + ALL_OBJECTS="\$(GUIOBJS) \$(COMMONOBJS) \$(GENERICOBJS) \$(UNIXOBJS) \$(HTMLOBJS)" + + dnl ODBC objects are Unix only + if test "$TOOLKIT" != "MSW"; then + ALL_OBJECTS="${ALL_OBJECTS} \$(IODBCOBJS)" + fi + if test "$wxUSE_LIBJPEG" = "yes" ; then - ALL_OBJECTS="${ALL_OBJECTS} \$(JPEGOBJS)" + ALL_OBJECTS="${ALL_OBJECTS} \$(JPEGOBJS)" fi if test "$wxUSE_LIBTIFF" = "yes" ; then ALL_OBJECTS="${ALL_OBJECTS} \$(TIFFOBJS)" @@ -1708,17 +1850,33 @@ WX_LIBRARY="wx_${TOOLKIT_DIR}" ALL_OBJECTS="${ALL_OBJECTS} \$(ZLIBOBJS)" fi ALL_DEPFILES="\$(GUIDEPS) \$(COMMONDEPS) \$(GENERICDEPS) \$(UNIXDEPS) \$(HTMLDEPS)" - ALL_HEADERS="\$(GUIHEADERS) \$(HTML_HEADERS) \$(UNIX_HEADERS) \$(PROTOCOL_HEADERS) \$(GENERIC_HEADERS) \$(WX_HEADERS)" + + PORT_FILES="src/\$(TOOLKITDIR)/files.lst" + RPM_FILES="src/\$(TOOLKITDIR)/rpmfiles.lst" + RPM_SPEC="wx\$(TOOLKIT).spec" + + dnl distribute samples/demos/utils with GUI versions + GUIDIST="${GUIDIST} SAMPLES_DIST DEMOS_DIST UTILS_DIST MISC_DIST" + DISTDIR="wx\$(TOOLKIT)" else dnl leave all TOOLKIT_XXX vars empty + USE_GUI=0 + dnl the sources, their dependenices and the headers - ALL_OBJECTS="\$(BASE_OBJS)" - ALL_DEPFILES="\${BASE_DEPS}" - ALL_HEADERS="\${BASE_HEADERS}" + ALL_OBJECTS="\$(BASE_OBJS) \${BASE_UNIX_OBJS}" + ALL_DEPFILES="\${BASE_DEPS} \${BASE_UNIX_DEPS}" dnl building wxBase only WX_LIBRARY="wxbase" + + PORT_FILES="src/files.lst" + RPM_FILES="src/rpmfiles.lst" + RPM_SPEC="wxBase.spec" + + dnl distribute only wxBase sources/headers + GUIDIST="BASE_DIST" + DISTDIR="wxBase" fi dnl the name of the (libtool) library @@ -2005,14 +2163,15 @@ AC_CACHE_CHECK([for vsscanf], wx_cv_func_vsscanf, AC_DEFINE(HAVE_VSSCANF) wx_cv_func_vsscanf=yes ], - wx_cv_func_vsscanf=no, - wx_cv_func_vsscanf=no + wx_cv_func_vsscanf=no, + wx_cv_func_vsscanf=no ) ]) AC_LANG_RESTORE -if test "$USE_UNIX" = 1; then +dnl under MSW we always have Sleep() +if test "$TOOLKIT" != "MSW"; then dnl check for vfork() (even if it's the same as fork() in modern Unices) AC_CHECK_FUNCS(vfork) @@ -2082,7 +2241,7 @@ if test "x$INET_LINK" != "x"; then fi fi -dnl Unix +dnl if !MSW dnl =========================================================================== dnl Now we have all the info we need - use it! @@ -2095,7 +2254,8 @@ dnl --------------------------------------------------------------------------- dnl thread support for Unix (always available under Win32) dnl --------------------------------------------------------------------------- -if test "$USE_UNIX" = 1; then +dnl under MSW we always have thread support +if test "$TOOLKIT" != "MSW"; then dnl the code below: dnl defines THREADS_OBJ which contains the object files to build @@ -2208,7 +2368,7 @@ if test "$wxUSE_THREADS" = "yes" ; then THREADS_LINK="-l$THREADS_LINK" fi -dnl from if USE_UNIX +dnl from if !MSW fi if test "$wxUSE_THREADS" = "yes"; then @@ -2234,6 +2394,11 @@ else fi fi +if test "$WXGTK13" = 1 ; then + AC_DEFINE_UNQUOTED(__WXGTK13__,$WXGTK13) + WXGTK12=1 +fi + if test "$WXGTK12" = 1 ; then AC_DEFINE_UNQUOTED(__WXGTK12__,$WXGTK12) fi @@ -2270,6 +2435,7 @@ fi if test "$wxUSE_MEM_TRACING" = "yes" ; then AC_DEFINE(wxUSE_MEMORY_TRACING) AC_DEFINE(wxUSE_GLOBAL_MEMORY_OPERATORS) + AC_DEFINE(wxUSE_DEBUG_NEW_ALWAYS) SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS memcheck" fi @@ -2283,16 +2449,16 @@ if test "$wxUSE_PROFILE" = "yes" ; then fi DEP_INFO_FLAGS= +CODE_GEN_FLAGS= if test "$GCC" = yes ; then if test "$wxUSE_NO_RTTI" = "yes" ; then - WXDEBUG_DEFINE="$WXDEBUG_DEFINE -fno-rtti" + CODE_GEN_FLAGS="$CODE_GEN_FLAGS -fno-rtti" fi if test "$wxUSE_NO_EXCEPTIONS" = "yes" ; then - WXDEBUG_DEFINE="$WXDEBUG_DEFINE -fno-exceptions" + CODE_GEN_FLAGS="$CODE_GEN_FLAGS -fno-exceptions" fi if test "$wxUSE_PERMISSIVE" = "yes" ; then - CFLAGS="${CFLAGS} -fpermissive" - CXXFLAGS="${CXXFLAGS} -fpermissive" + CODE_GEN_FLAGS="$CODE_GEN_FLAGS -fpermissive" fi if test "$wxUSE_NO_DEPS" = "no" ; then DEP_INFO_FLAGS="-MMD" @@ -2464,7 +2630,7 @@ fi if test "$wxUSE_DIALUP_MANAGER" = "yes" ; then AC_DEFINE(wxUSE_DIALUP_MANAGER) - SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS nettest" + SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS dialup" fi if test "$wxUSE_STREAMS" = "yes" ; then @@ -2530,9 +2696,8 @@ if test "$wxUSE_TIMEDATE" = "yes"; then dnl as we want $wx_cv_var_timezone to be expanded, use AC_DEFINE_UNQUOTED AC_DEFINE_UNQUOTED(WX_TIMEZONE, $wx_cv_var_timezone) - dnl check for localtime (POSIX), gettimeofday (SVr4, BSD 4.3) and ftime - dnl (V7, BSD 4.3) - AC_CHECK_FUNCS(localtime gettimeofday ftime, break) + dnl check for localtime (it's POSIX, but the check can do no harm...) + AC_CHECK_FUNCS(localtime) if test "$ac_cv_func_localtime" = "yes"; then AC_CACHE_CHECK(for tm_gmtoff in struct tm, @@ -2553,7 +2718,13 @@ if test "$wxUSE_TIMEDATE" = "yes"; then wx_cv_struct_tm_has_gmtoff=no ) ]) - elif test "$ac_cv_func_gettimeofday" = "yes"; then + fi + + dnl check for gettimeofday (SVr4, BSD 4.3) and ftime (V7, BSD 4.3) for the + dnl function to be used for high resolution timers + AC_CHECK_FUNCS(gettimeofday ftime, break) + + if test "$ac_cv_func_gettimeofday" = "yes"; then AC_CACHE_CHECK([whether gettimeofday takes two arguments], wx_cv_func_gettimeofday_has_2_args, [ @@ -2601,6 +2772,9 @@ dnl ------------------------------------------------------------------------ dnl wxSocket dnl ------------------------------------------------------------------------ +dnl under MSW we always have sockets +if test "$TOOLKIT" != "MSW"; then + if test "$wxUSE_SOCKETS" = "yes"; then dnl under Solaris, socket functions live in -lsocket AC_CHECK_FUNC(socket,, @@ -2614,31 +2788,66 @@ if test "$wxUSE_SOCKETS" = "yes"; then ) fi +fi +dnl if !MSW + if test "$wxUSE_SOCKETS" = "yes" ; then - AC_LANG_SAVE - AC_LANG_CPLUSPLUS dnl determine the type of third argument for getsockname - AC_MSG_CHECKING(the type of the third argument of getsockname) - AC_TRY_COMPILE( - [#include ], - [socklen_t len; getsockname(0, 0, &len);], - AC_DEFINE(SOCKLEN_T, socklen_t) AC_MSG_RESULT(socklen_t), - AC_TRY_COMPILE( - [#include ], - [size_t len; getsockname(0, 0, &len);], - AC_DEFINE(SOCKLEN_T, size_t) AC_MSG_RESULT(size_t), + 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 ], - [int len; getsockname(0, 0, &len);], - AC_DEFINE(SOCKLEN_T, int) AC_MSG_RESULT(int), - AC_MSG_RESULT(unknown) + [ + #include + #include + ], + [ + socklen_t len; + 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, + AC_TRY_COMPILE( + [ + #include + #include + ], + [ + int len; + getsockname(0, 0, &len); + ], + wx_cv_type_getsockname3=int, + wx_cv_type_getsockname3=unknown + ) + ) ) - ) - ) - AC_LANG_RESTORE + AC_LANG_RESTORE + ]) + + if test "$wx_cv_type_getsockname3" = "unknown"; then + wxUSE_SOCKETS=no + AC_MSG_WARN([Couldn't find socklen_t synonym for this system]) + else + AC_DEFINE_UNQUOTED(SOCKLEN_T, $wx_cv_type_getsockname3) + fi +fi + +if test "$wxUSE_SOCKETS" = "yes" ; then AC_DEFINE(wxUSE_SOCKETS) - SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS wxsocket" + SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS sockets" INCLUDE_SUBDIRS="$INCLUDE_SUBDIRS protocol" fi @@ -2646,19 +2855,33 @@ dnl --------------------------------------------------------------------------- dnl Joystick support dnl --------------------------------------------------------------------------- +dnl under MSW we always have joystick support +if test "$TOOLKIT" != "MSW"; then + if test "$wxUSE_JOYSTICK" = 1; then dnl joystick support is only for Linux 2.1.x or greater AC_CHECK_HEADERS(linux/joystick.h) - if test "$ac_cv_header_linux_joystick_h" = "yes"; then + if test "$ac_cv_header_linux_joystick_h" != "yes"; then + wxUSE_JOYSTICK=0 + AC_MSG_WARN(Joystick not supported yb this system, disabled) + fi +fi + +fi +dnl if !MSW + +if test "$wxUSE_JOYSTICK" = 1; then AC_DEFINE(wxUSE_JOYSTICK) SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS joytest" - fi fi dnl ------------------------------------------------------------------------ dnl DLL support dnl ------------------------------------------------------------------------ +dnl under MSW we always have LoadLibrary/GetProcAddress +if test "$TOOLKIT" != "MSW"; then + HAVE_DL_FUNCS=0 HAVE_SHL_FUNCS=0 if test "$wxUSE_DYNLIB_CLASS" = "yes"; then @@ -2698,6 +2921,9 @@ if test "$wxUSE_DYNLIB_CLASS" = "yes"; then fi fi +fi +dnl if !MSW + if test "$wxUSE_DYNLIB_CLASS" = "yes" ; then AC_DEFINE(wxUSE_DYNLIB_CLASS) else @@ -2977,6 +3203,8 @@ fi if test "$wxUSE_STATUSBAR" = "yes"; then AC_DEFINE(wxUSE_STATUSBAR) + + SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS statbar" fi if test "$wxUSE_TABDIALOG" = "yes"; then @@ -3145,9 +3373,9 @@ if test "$wxUSE_GUI" = "yes"; then dnl library features they need are present) dnl TODO some samples are never built so far: - dnl mfc, nativdlg, oleauto, ownerdrw, proplist - SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS bombs controls dialogs drawing dynamic \ - font forty fractal image minimal richedit wxpoem" + dnl ipc, mfc, nativdlg, oleauto, ownerdrw, proplist + SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS controls dialogs drawing dynamic \ + font fractal image minimal richedit" dnl this is needed to be able to find AFM files CPPFLAGS="$CPPFLAGS \$(EXTRADEFS)" @@ -3159,7 +3387,14 @@ dnl for convenience, sort the samples in alphabetical order dnl dnl FIXME For some mysterious reasons, sometimes the directories are duplicated dnl in this list - hence uniq. But normally, this shouldn't be needed! -SAMPLES_SUBDIRS="`echo $SAMPLES_SUBDIRS | tr -s ' ' | tr ' ' '\n' | sort | uniq | tr '\n' ' '`" +dnl Unfortunately, there is a bug in OS/2's tr, such that +dnl tr ' ' '\n' introduces DOS-like line breaks, whereas tr '\n' ' ' +dnl only removes the Unix-like part of the introduced line break. +SAMPLES_SUBDIRS="`echo $SAMPLES_SUBDIRS | tr -s ' ' | tr ' ' '\n' | sort | uniq | tr '\n' ' '| tr -d '\r'`" + +dnl makefile variables +AC_SUBST(LEX_STEM) +AC_SUBST(PATH_IFS) dnl global options AC_SUBST(WX_MAJOR_VERSION_NUMBER) @@ -3182,12 +3417,15 @@ AC_SUBST(WX_ALL_INSTALLED) AC_SUBST(SHARED_LD) AC_SUBST(PIC_FLAG) AC_SUBST(DEP_INFO_FLAGS) +AC_SUBST(CODE_GEN_FLAGS) AC_SUBST(BURNT_LIBRARY_NAME) dnl debugging options AC_SUBST(WXDEBUG_DEFINE) dnl toolkit options +AC_SUBST(USE_GUI) +AC_SUBST(AFMINSTALL) AC_SUBST(TOOLKIT) AC_SUBST(TOOLKIT_DEF) AC_SUBST(TOOLKIT_DIR) @@ -3206,8 +3444,13 @@ AC_SUBST(UNIXOBJS) AC_SUBST(UNIXDEPS) AC_SUBST(ALL_OBJECTS) AC_SUBST(ALL_DEPFILES) -AC_SUBST(ALL_HEADERS) + +dnl distribution vars AC_SUBST(GUIDIST) +AC_SUBST(PORT_FILES) +AC_SUBST(DISTDIR) +AC_SUBST(RPM_SPEC) +AC_SUBST(RPM_FILES) dnl additional subdirectories where we will build AC_SUBST(SRC_SUBDIRS) @@ -3231,15 +3474,29 @@ AC_PROG_MAKE_SET AC_CONFIG_HEADER(setup.h:setup.h.in) -dnl Duh! glcanvas/$(TOOLKIT_DIR) doesn't work for msw because some -dnl genius called it "win" -if test "${TOOLKIT_DIR}" = "msw" ; then - GL_TOOLKIT_DIR="win" -else - GL_TOOLKIT_DIR="${TOOLKIT_DIR}" +dnl some more GUI only things +if test "$wxUSE_GUI" = "yes"; then + AC_CACHE_CHECK([glcanvas subdirectory to use], wx_cv_path_glcanvas, + [ + dnl Duh! glcanvas/$(TOOLKIT_DIR) doesn't work for msw because some + dnl genius called it "win" + if test "${TOOLKIT_DIR}" = "msw" ; then + wx_cv_path_glcanvas="win" + else + wx_cv_path_glcanvas="${TOOLKIT_DIR}" + fi + ]) + + dnl It's needed in glcanvas/Makefile.in so we even have to subst this hack! + GL_TOOLKIT_DIR=$wx_cv_path_glcanvas + AC_SUBST(GL_TOOLKIT_DIR) + + dnl another hack: we need to pass SAMPLES_SUBDIRS to the configure in + dnl samples and the only way to do it is, again, use the cache + wx_cv_path_samplesubdirs=$SAMPLES_SUBDIRS + AC_CONFIG_SUBDIRS(demos samples utils) fi -dnl It's needed in glcanvas/Makefile.in so we even have to subst this hack! -AC_SUBST(GL_TOOLKIT_DIR) +dnl from wxUSE_GUI dnl create each of the files in the space separated list from the file.in dnl (the original file name may be overriden by appending another name after a @@ -3250,67 +3507,6 @@ AC_OUTPUT([ src/makeprog.env src/makelib.env Makefile - samples/Makefile - samples/bombs/Makefile - samples/caret/Makefile - samples/checklst/Makefile - samples/config/Makefile - samples/controls/Makefile - samples/console/Makefile - samples/db/Makefile - samples/dialogs/Makefile - samples/docview/Makefile - samples/docvwmdi/Makefile - samples/dnd/Makefile - samples/drawing/Makefile - samples/forty/Makefile - samples/font/Makefile - samples/fractal/Makefile - samples/image/Makefile - samples/internat/Makefile - samples/layout/Makefile - samples/listctrl/Makefile - samples/mdi/Makefile - samples/minifram/Makefile - samples/minimal/Makefile - samples/nettest/Makefile - samples/newgrid/Makefile - samples/notebook/Makefile - samples/png/Makefile - samples/printing/Makefile - samples/proplist/Makefile - samples/richedit/Makefile - samples/resource/Makefile - samples/sashtest/Makefile - samples/scroll/Makefile - samples/scrollsub/Makefile - samples/splitter/Makefile - samples/text/Makefile - samples/thread/Makefile - samples/toolbar/Makefile - samples/treectrl/Makefile - samples/typetest/Makefile - samples/validate/Makefile - samples/wxpoem/Makefile - samples/wxsocket/Makefile - samples/wizard/Makefile - samples/html/Makefile - samples/html/about/Makefile - samples/html/help/Makefile - samples/html/printing/Makefile - samples/html/helpview/Makefile - samples/html/test/Makefile - samples/html/zip/Makefile - samples/html/virtual/Makefile - samples/html/widget/Makefile - utils/Makefile - utils/wxMMedia2/Makefile - utils/wxMMedia2/lib/Makefile - utils/wxMMedia2/sample/Makefile - utils/glcanvas/Makefile - utils/glcanvas/${GL_TOOLKIT_DIR}/Makefile - utils/ogl/Makefile - utils/ogl/src/Makefile ], [ chmod +x wx-config