X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/ad9edf45f116c0281b5efcfa0dd7b2fc2073908f..e9e3e3abaf8fb32ad82c6882b9af684e0430f881:/configure.in diff --git a/configure.in b/configure.in index 8726cdcf41..919de5ba6e 100644 --- a/configure.in +++ b/configure.in @@ -198,20 +198,21 @@ AC_DEFUN(WX_CPP_BOOL, AC_LANG_SAVE AC_LANG_CPLUSPLUS - AC_TRY_RUN([ - int main() - { - bool b = true; + AC_TRY_COMPILE( + [ + ], + [ + bool b = true; - return 0; - } + return 0; ], [ AC_DEFINE(HAVE_BOOL) wx_cv_cpp_bool=yes ], - wx_cv_cpp_bool=no, - wx_cv_cpp_bool=no + [ + wx_cv_cpp_bool=no + ] ) AC_LANG_RESTORE @@ -586,6 +587,7 @@ case "${host}" in AC_DEFINE(__WIN95__) AC_DEFINE(__WINDOWS__) AC_DEFINE(__GNUWIN32__) + AC_DEFINE(STRICT) AC_DEFINE(WINVER, 0x0400) DEFAULT_DEFAULT_wxUSE_MSW=1 ;; @@ -595,6 +597,7 @@ case "${host}" in AC_DEFINE(__WIN95__) AC_DEFINE(__WINDOWS__) AC_DEFINE(__GNUWIN32__) + AC_DEFINE(STRICT) AC_DEFINE(WINVER, 0x0400) DEFAULT_DEFAULT_wxUSE_MSW=1 ;; @@ -640,8 +643,10 @@ if test $DEBUG_CONFIGURE = 1; then DEFAULT_wxUSE_SHARED=yes DEFAULT_wxUSE_OPTIMISE=yes DEFAULT_wxUSE_PROFILE=no + DEFAULT_wxUSE_NO_DEPS=no DEFAULT_wxUSE_NO_RTTI=no DEFAULT_wxUSE_NO_EXCEPTIONS=no + DEFAULT_wxUSE_PERMISSIVE=no DEFAULT_wxUSE_DEBUG_FLAG=yes DEFAULT_wxUSE_DEBUG_INFO=yes DEFAULT_wxUSE_DEBUG_GDB=yes @@ -745,8 +750,10 @@ else DEFAULT_wxUSE_SHARED=yes DEFAULT_wxUSE_OPTIMISE=yes DEFAULT_wxUSE_PROFILE=no + DEFAULT_wxUSE_NO_DEPS=no DEFAULT_wxUSE_NO_RTTI=no DEFAULT_wxUSE_NO_EXCEPTIONS=no + DEFAULT_wxUSE_PERMISSIVE=no DEFAULT_wxUSE_DEBUG_FLAG=no DEFAULT_wxUSE_DEBUG_INFO=no DEFAULT_wxUSE_DEBUG_GDB=no @@ -912,6 +919,8 @@ WX_ARG_ENABLE(mem_tracing, [ --enable-mem_tracing create code with memory WX_ARG_ENABLE(profile, [ --enable-profile create code with profiling information], wxUSE_PROFILE) WX_ARG_ENABLE(no_rtti, [ --enable-no_rtti create code without RTTI information], wxUSE_NO_RTTI) WX_ARG_ENABLE(no_exceptions, [ --enable-no_exceptions create code without exceptions information], wxUSE_NO_EXCEPTIONS) +WX_ARG_ENABLE(permissive, [ --enable-permissive compile code disregarding strict ANSI], wxUSE_PERMISSIVE) +WX_ARG_ENABLE(no_deps, [ --enable-no_deps create code without dependency information], wxUSE_NO_DEPS) dnl --------------------------------------------------------------------------- dnl --disable-gui will build only non-GUI part of wxWindows @@ -1292,6 +1301,8 @@ SEARCH_INCLUDE="\ \ /usr/include/Motif1.2 \ /opt/xpm/include/X11 \ + /opt/GBxpm/include/ \ + /opt/GBxpm/X11/include/ \ \ /usr/Motif1.2/include \ /usr/dt/include \ @@ -1377,26 +1388,38 @@ WXGTK12= WXWINE= -if test "$wxUSE_CYGWIN" = 1 || test "$wxUSE_MINGW" = 1 ; then - AC_MSG_CHECKING(for Windows headers) - WX_PATH_FIND_INCLUDES($SEARCH_INCLUDE, windows.h) - INCLUDE_SUBDIRS="$INCLUDE_SUBDIRS msw" - - dnl --- Quick & Dirty ; link against most/all libraries - dnl --- This will bloat the executable, but it'll work for now... - LIBS="$LIBS -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -loldnames -lcomctl32 -lctl3d32 -lcrtdll -ladvapi32 -lwsock32" +dnl Extension for programs; '.exe' for msw builds +PROGRAM_EXT= - if test "$ac_find_includes" != "" ; then - AC_MSG_RESULT(found $ac_find_includes) - TOOLKIT_INCLUDE="$TOOLKIT_INCLUDE -I$ac_find_includes" - else - AC_MSG_RESULT(no) - if test "$cross_compiling" != "yes" ; then - AC_MSG_ERROR(please set CFLAGS to contain the location of windows.h) - fi - fi +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) + else + AC_MSG_CHECKING(for Windows headers) + WX_PATH_FIND_INCLUDES($SEARCH_INCLUDE, windows.h) + if test "$ac_find_includes" != "" ; then + AC_MSG_RESULT(found $ac_find_includes) + TOOLKIT_INCLUDE="$TOOLKIT_INCLUDE -I$ac_find_includes" + else + AC_MSG_RESULT(no) + AC_MSG_ERROR(please set CFLAGS to contain the location of windows.h) + fi + fi + + INCLUDE_SUBDIRS="$INCLUDE_SUBDIRS msw" + dnl --- Quick & Dirty ; link against most/all libraries + dnl --- This will bloat the executable, but it'll work for now... + LIBS="$LIBS -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lcomctl32 -lctl3d32 -lcrtdll -ladvapi32 -lwsock32" - TOOLKIT=MSW + TOOLKIT=MSW + + GUIOBJS=MSW_GUIOBJS + GUIHEADERS=MSW_HEADERS + COMMONOBJS=MSW_COMMONOBJS + GENERICOBJS=MSW_GENERICOBJS + UNIXOBJS= + GUIDIST=MSW_DIST + PROGRAM_EXT=.exe fi if test "$wxUSE_GTK" = 1; then @@ -1408,13 +1431,18 @@ if test "$wxUSE_GTK" = 1; then fi TOOLKIT_INCLUDE="$GTK_CFLAGS" - GUI_TK_LIBRARY="$GTK_LIBS" + GUI_TK_LIBRARY="$GTK_LIBS -ldl" TOOLKIT=GTK - GUIOBJS=GTK_GUIOBJS GUIHEADERS=GTK_HEADERS + GUIOBJS=GTK_GUIOBJS COMMONOBJS=GTK_COMMONOBJS GENERICOBJS=GTK_GENERICOBJS + GUIDEPS=GTK_GUIDEPS + COMMONDEPS=GTK_COMMONDEPS + GENERICDEPS=GTK_GENERICDEPS + UNIXOBJS=UNIXOBJS + GUIDIST=GTK_DIST fi if test "$wxUSE_WINE" = 1; then @@ -1456,6 +1484,16 @@ if test "$wxUSE_WINE" = 1; then GUI_TK_LIBRARY="$GUI_TK_LIBRARY $GUI_TK_LINK" WXWINE=1 TOOLKIT=MSW + + GUIHEADERS=MSW_HEADERS + GUIOBJS=MSW_GUIOBJS + COMMONOBJS=MSW_COMMONOBJS + GENERICOBJS=MSW_GENERICOBJS + GUIDEPS=MSW_GUIDEPS + COMMONDEPS=MSW_COMMONDEPS + GENERICDEPS=MSW_GENERICDEPS + UNIXOBJS=UNIXOBJS + GUIDIST=MSW_DIST fi if test "$wxUSE_MOTIF" = 1; then @@ -1522,10 +1560,15 @@ if test "$wxUSE_MOTIF" = 1; then GUI_TK_LIBRARY="$GUI_TK_LIBRARY $GUI_TK_LINK" TOOLKIT=MOTIF - GUIOBJS=MOTIF_GUIOBJS GUIHEADERS=MOTIF_HEADERS + GUIOBJS=MOTIF_GUIOBJS COMMONOBJS=MOTIF_COMMONOBJS GENERICOBJS=MOTIF_GENERICOBJS + GUIDEPS=MOTIF_GUIDEPS + COMMONDEPS=MOTIF_COMMONDEPS + GENERICDEPS=MOTIF_GENERICDEPS + UNIXOBJS=UNIXOBJS + GUIDIST=MOTIF_DIST fi dnl the name of the directory where the files for this toolkit live @@ -1573,24 +1616,34 @@ case "${host}" in WX_CREATE_LINKS="CREATE_LINKS" ;; *-*-irix5* | *-*-irix6* ) - SHARED_LD="${CXX} -shared -o" + if test "$GCC" = yes ; then + SHARED_LD="${CC} -shared -o" + PIC_FLAG="-fPIC" + else + SHARED_LD="${CXX} -shared -o" + fi WX_CREATE_INSTALLED_LINKS="CREATE_INSTALLED_LINKS" WX_CREATE_LINKS="CREATE_LINKS" ;; *-*-solaris2* ) - SHARED_LD="${CXX} -G -o" - PIC_FLAG="PIC" + if test "$GCC" = yes ; then + SHARED_LD="${CC} -shared -o" + PIC_FLAG="-fPIC" + else + SHARED_LD="${CXX} -G -o" + PIC_FLAG="PIC" + fi WX_CREATE_INSTALLED_LINKS="CREATE_INSTALLED_LINKS" WX_CREATE_LINKS="CREATE_LINKS" ;; *-*-sunos4* ) - SHARED_LD="${CXX} -shared -o" + SHARED_LD="${CC} -shared -o" PIC_FLAG="-fPIC" WX_CREATE_INSTALLED_LINKS="CREATE_INSTALLED_LINKS" WX_CREATE_LINKS="CREATE_LINKS" ;; *-*-freebsd* | *-*-netbsd*) - SHARED_LD="${CXX} -shared -o" + SHARED_LD="${CC} -shared -o" PIC_FLAG="-fPIC" WX_CREATE_INSTALLED_LINKS="CREATE_INSTALLED_LINKS" WX_CREATE_LINKS="CREATE_LINKS" @@ -1608,7 +1661,7 @@ case "${host}" in WX_CREATE_LINKS="CREATE_LINKS" ;; *-*-sysv5* ) - SHARED_LD="${CXX} -shared -o" + SHARED_LD="${CC} -shared -o" PIC_FLAG="-fPIC" WX_CREATE_INSTALLED_LINKS="CREATE_INSTALLED_LINKS" WX_CREATE_LINKS="CREATE_LINKS" @@ -1617,8 +1670,12 @@ case "${host}" in SHARED_LD="/usr/lpp/xlC/bin/makeC++SharedLib -p 0 -o" ;; *-*-cygwin32* ) + dnl only static for now + WX_TARGET_LIBRARY="${WX_LIBRARY_NAME_STATIC}" ;; *-*-mingw32* ) + dnl only static for now + WX_TARGET_LIBRARY="${WX_LIBRARY_NAME_STATIC}" ;; *-pc-os2_emx ) ;; @@ -1733,20 +1790,34 @@ AC_LANG_CPLUSPLUS AC_CACHE_CHECK([for vsscanf], wx_cv_func_vsscanf, [ - AC_TRY_COMPILE( + AC_TRY_RUN( [ #include #include - ], - [ - va_list ap; - vsscanf("", "", ap); + + int try_vsscanf(const char *format, ...) + { + va_list ap; + va_start(ap, format); + + vsscanf("17", format, ap); + + va_end(ap); + } + + int main() + { + int i; + try_vsscanf("%d", &i); + return i == 17 ? 0 : 1; + } ], [ - wx_cv_func_vsscanf=yes AC_DEFINE(HAVE_VSSCANF) - ], [ - wx_cv_func_vsscanf=no - ]) + wx_cv_func_vsscanf=yes + ], + wx_cv_func_vsscanf=no, + wx_cv_func_vsscanf=no + ) ]) AC_LANG_RESTORE @@ -1772,6 +1843,7 @@ AC_CHECK_FUNCS(uname gethostname, break) dnl check for inet_addr, inet_aton, ... AC_CHECK_FUNCS(inet_addr) AC_CHECK_FUNCS(inet_aton) +AC_CHECK_LIB(resolv, inet_aton) dnl =========================================================================== dnl Now we have all the info we need - use it! @@ -1918,16 +1990,17 @@ if test "$wxUSE_CYGWIN" = 1 ; then fi WXDEBUG= -if test "$wxUSE_DEBUG_GDB" = "yes" ; then - wxUSE_DEBUG_INFO=yes - WXDEBUG="-ggdb" -fi if test "$wxUSE_DEBUG_INFO" = "yes" ; then WXDEBUG="-g" wxUSE_OPTIMISE=no fi +if test "$wxUSE_DEBUG_GDB" = "yes" ; then + wxUSE_DEBUG_INFO=yes + WXDEBUG="-ggdb" +fi + if test "$wxUSE_DEBUG_FLAG" = "yes" ; then AC_DEFINE(WXDEBUG) WXDEBUG_DEFINE="-D__WXDEBUG__" @@ -1952,6 +2025,7 @@ if test "$wxUSE_PROFILE" = "yes" ; then PROFILE="-pg" fi +DEP_INFO_FLAGS= if test "$GCC" = yes ; then if test "$wxUSE_NO_RTTI" = "yes" ; then WXDEBUG_DEFINE="$WXDEBUG_DEFINE -fno-rtti" @@ -1959,6 +2033,13 @@ if test "$GCC" = yes ; then if test "$wxUSE_NO_EXCEPTIONS" = "yes" ; then WXDEBUG_DEFINE="$WXDEBUG_DEFINE -fno-exceptions" fi + if test "$wxUSE_PERMISSIVE" = "yes" ; then + CFLAGS="${CFLAGS} -fpermissive" + CXXFLAGS="${CXXFLAGS} -fpermissive" + fi + if test "$wxUSE_NO_DEPS" = "no" ; then + DEP_INFO_FLAGS="-MMD" + fi fi @@ -2324,7 +2405,7 @@ fi if test "$wxUSE_DRAG_AND_DROP" = "yes" ; then if test "$wxUSE_GTK" = 1; then if test "$WXGTK12" != 1; then - AC_MSG_WARN([Drag and drop is only supported under wxGTK 2.1]) + AC_MSG_WARN([Drag and drop is only supported under GTK+ 1.2]) wxUSE_DRAG_AND_DROP=no fi fi @@ -2452,11 +2533,7 @@ if test "$wxUSE_STATLINE" = "yes"; then if test "$wxUSE_WINE" = 1 ; then AC_MSG_WARN([wxStaticLine is not supported under WINE]) else - if test "$wxUSE_MOTIF" = 1 ; then - AC_MSG_WARN([wxStaticLine is not supported under Motif]) - else - AC_DEFINE(wxUSE_STATLINE) - fi + AC_DEFINE(wxUSE_STATLINE) fi fi @@ -2620,6 +2697,7 @@ AC_SUBST(WX_TARGET_LIBRARY) AC_SUBST(WX_LIBRARY_LINK1) AC_SUBST(WX_LIBRARY_LINK2) AC_SUBST(WX_LIBRARY_LINK3) +AC_SUBST(PROGRAM_EXT) dnl are we supposed to create the links? AC_SUBST(WX_CREATE_LINKS) @@ -2627,6 +2705,7 @@ AC_SUBST(WX_CREATE_INSTALLED_LINKS) AC_SUBST(SHARED_LD) AC_SUBST(PIC_FLAG) +AC_SUBST(DEP_INFO_FLAGS) dnl debugging options AC_SUBST(WXDEBUG_DEFINE) @@ -2638,10 +2717,15 @@ AC_SUBST(TOOLKIT_DIR) AC_SUBST(TOOLKIT_INCLUDE) dnl what to compile -AC_SUBST(GUIOBJS) AC_SUBST(GUIHEADERS) +AC_SUBST(GUIOBJS) AC_SUBST(COMMONOBJS) AC_SUBST(GENERICOBJS) +AC_SUBST(GUIDEPS) +AC_SUBST(COMMONDEPS) +AC_SUBST(GENERICDEPS) +AC_SUBST(UNIXOBJS) +AC_SUBST(GUIDIST) dnl additional subdirectories where we will build AC_SUBST(SRC_SUBDIRS) @@ -2663,6 +2747,15 @@ 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}" +fi +dnl It's needed in glcanvas/Makefile.in so we even have to subst this hack! +AC_SUBST(GL_TOOLKIT_DIR) 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 @@ -2679,6 +2772,48 @@ AC_OUTPUT([ samples/checklst/Makefile samples/config/Makefile samples/controls/Makefile + samples/dialogs/Makefile + samples/docview/Makefile + samples/docvwmdi/Makefile + samples/dnd/Makefile + samples/drawing/Makefile + samples/dynamic/Makefile + samples/image/Makefile + samples/internat/Makefile + samples/layout/Makefile + samples/listctrl/Makefile + samples/mdi/Makefile + samples/minifram/Makefile + samples/minimal/Makefile + samples/notebook/Makefile + samples/printing/Makefile + samples/proplist/Makefile + samples/sashtest/Makefile + samples/scroll/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/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 ], [ chmod +x wx-config