]> git.saurik.com Git - wxWidgets.git/blobdiff - configure.in
made 2 column list wider to accomodate all entries
[wxWidgets.git] / configure.in
index 97948332e6554099a620700ce135cbd1f8890d4b..652c5c96aa3e1f1658ad611a17af7ff0cc639638 100644 (file)
@@ -40,7 +40,7 @@ AC_DEFUN(WX_PATH_FIND_LIBRARIES,
 ac_find_libraries=
 for ac_dir in $1;
   do
-    for ac_extension in a so sl; do
+    for ac_extension in a so sl dylib; do
       if test -f "$ac_dir/lib$2.$ac_extension"; then
         ac_find_libraries=$ac_dir
         break 2
@@ -393,6 +393,7 @@ USE_SUNOS=
 USE_ALPHA=
 USE_OSF=
 USE_BSD=
+USE_DARWIN=
 USE_FREEBSD=
 USE_OPENBSD=
 USE_NETBSD=
@@ -556,9 +557,9 @@ case "${host}" in
 
   *-*-darwin* )
     USE_BSD=1
-    USE_MAC=1
-    AC_DEFINE(__MAC__)
+    USE_DARWIN=1
     AC_DEFINE(__BSD__)
+    AC_DEFINE(__DARWIN__)
     AC_DEFINE(__UNIX__)
     DEFAULT_DEFAULT_wxUSE_MAC=1
   ;;
@@ -634,6 +635,7 @@ if test $DEBUG_CONFIGURE = 1; then
   DEFAULT_wxUSE_GUI=yes
   DEFAULT_wxUSE_CONTROLS=no
 
+  DEFAULT_wxUSE_REGEX=no
   DEFAULT_wxUSE_ZLIB=no
   DEFAULT_wxUSE_LIBPNG=no
   DEFAULT_wxUSE_LIBJPEG=no
@@ -686,6 +688,7 @@ if test $DEBUG_CONFIGURE = 1; then
   DEFAULT_wxUSE_CONSTRAINTS=no
   DEFAULT_wxUSE_IPC=no
   DEFAULT_wxUSE_HELP=no
+  DEFAULT_wxUSE_MS_HTML_HELP=no
   DEFAULT_wxUSE_WXHTML_HELP=no
   DEFAULT_wxUSE_WXTREE=no
   DEFAULT_wxUSE_METAFILE=no
@@ -788,6 +791,7 @@ else
 
   DEFAULT_wxUSE_GUI=yes
 
+  DEFAULT_wxUSE_REGEX=yes
   DEFAULT_wxUSE_ZLIB=yes
   DEFAULT_wxUSE_LIBPNG=yes
   DEFAULT_wxUSE_LIBJPEG=yes
@@ -840,6 +844,7 @@ else
   DEFAULT_wxUSE_CONSTRAINTS=yes
   DEFAULT_wxUSE_IPC=yes
   DEFAULT_wxUSE_HELP=yes
+  DEFAULT_wxUSE_MS_HTML_HELP=yes
   DEFAULT_wxUSE_WXHTML_HELP=yes
   DEFAULT_wxUSE_WXTREE=yes
   DEFAULT_wxUSE_METAFILE=yes
@@ -970,6 +975,7 @@ fi
 dnl for GUI only
 
 WX_ARG_WITH(dmalloc,       [  --with-dmalloc          use dmalloc library (www.letters.com/dmalloc)], 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)
 
@@ -1067,6 +1073,7 @@ dnl ---------------------------------------------------------------------------
 
 WX_ARG_ENABLE(docview,     [  --enable-docview        use document view architecture], wxUSE_DOC_VIEW_ARCHITECTURE)
 WX_ARG_ENABLE(help,        [  --enable-help           use help subsystem], wxUSE_HELP)
+WX_ARG_ENABLE(mshtmlhelp,  [  --enable-mshtmlhelp     use MS HTML Help (win32)], wxUSE_MS_HTML_HELP)
 WX_ARG_ENABLE(html,        [  --enable-html           use wxHTML sub-library], wxUSE_HTML)
 WX_ARG_ENABLE(htmlhelp,    [  --enable-htmlhelp       use wxHTML-based help], wxUSE_WXHTML_HELP)
 WX_ARG_ENABLE(constraints, [  --enable-constraints    use layout-constraints system], wxUSE_CONSTRAINTS)
@@ -1585,27 +1592,15 @@ if test "$wxUSE_GUI" = "yes"; then
     WXWINE=
 
     if test "$wxUSE_CYGWIN" = 1 || test "$wxUSE_MINGW" = 1 ; then
-        if test "$cross_compiling" = "yes" ; then
-            dnl mingw32 will find them even if they're not in one of standard paths
-            AC_MSG_WARN(skipping windows.h check for cross-compilation)
-        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_CHECK_HEADER(windows.h, [], 
+            [
                 AC_MSG_ERROR(please set CFLAGS to contain the location of windows.h)
-            fi
-        fi
+            ])
         
-        AC_CHECK_HEADERS(w32api.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 -lcomctl32 -lctl3d32 -lcrtdll -ladvapi32 -lwsock32"
+        LIBS="$LIBS -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lcomctl32 -lctl3d32 -ladvapi32 -lwsock32"
 
         dnl add extra odbc libs if we have compiled in odbc
         if test "$wxUSE_ODBC" = "yes" ; then
@@ -2032,6 +2027,12 @@ equivalent variable and GTK+ is version 1.2.3 or above.
         fi
     fi
 
+    dnl REGEX_INCLUDE is only set if we want regex support and if we use our
+    dnl own sources and not the system library
+    if test "x$REGEX_INCLUDE" != "x" ; then
+        ALL_OBJECTS="${ALL_OBJECTS} \$(REGEXOBJS)"
+    fi
+
     if test "$wxUSE_LIBJPEG" = "yes" ; then
         ALL_OBJECTS="${ALL_OBJECTS} \$(JPEGOBJS)"
     fi
@@ -2082,6 +2083,9 @@ else
     dnl this may be (almost) unneccesary for wxBase now we use TOOLKIT_NAME
     TOOLKIT_DIR="base"
 
+    dnl well, we have to set it to something...
+    TOOLKIT_VPATH="."
+
     dnl the base name of the library and wxXXX-config files
     if test "$wxUSE_DEBUG_FLAG" = "yes"; then
         TOOLKIT_NAME="${TOOLKIT_DIR}d"
@@ -2095,6 +2099,12 @@ else
     ALL_OBJECTS="\$(BASE_OBJS) \$(BASE_UNIX_OBJS)"
     ALL_DEPFILES="\$(BASE_DEPS) \$(BASE_UNIX_DEPS)"
 
+    dnl REGEX_INCLUDE is only set if we want regex support and if we use our
+    dnl own sources and not the system library
+    if test "x$REGEX_INCLUDE" != "x" ; then
+        ALL_OBJECTS="${ALL_OBJECTS} \$(REGEXOBJS)"
+    fi
+
     if test "$wxUSE_ZLIB" = "yes" ; then
         ALL_OBJECTS="${ALL_OBJECTS} \$(ZLIBOBJS)"
     fi
@@ -2102,7 +2112,7 @@ else
     dnl building wxBase only
     WX_LIBRARY="wx_${TOOLKIT_NAME}"
 
-    PORT_FILES="src/files.lst"
+    PORT_FILES="\${top_srcdir}/src/files.lst"
     RPM_FILES="src/rpmfiles.lst"
     RPM_SPEC="wxBase.spec"
 
@@ -2235,6 +2245,9 @@ if test "$wxUSE_SHARED" = "yes"; then
         fi
       ;;
       *-*-darwin* )
+       TOOLKIT_DEF="${TOOLKIT_DEF} -D__UNIX__ -D__DARWIN__ -D__POWERPC__"
+       CFLAGS="${CFLAGS} -fno-common"
+       CPPFLAGS="${CPPFLAGS} -fno-common"
         SHARED_LD="${CXX} -dynamiclib -o"
         PIC_FLAG="-dynamic -fPIC"
         if test "$wxUSE_OPENGL" = "yes"; then
@@ -2244,8 +2257,10 @@ if test "$wxUSE_SHARED" = "yes"; then
             WX_ALL_INSTALLED="CREATE_INSTALLED_LINKS"
             WX_ALL="CREATE_LINKS"
         fi
-        dnl add the resources target
-        WX_ALL="${WX_ALL} ./lib/lib${WX_LIBRARY}-${WX_RELEASE}.r"
+        dnl add the resources target for wxMac
+       if test "$wxUSE_MAC" = 1 ; then
+               WX_ALL="${WX_ALL} ./lib/lib${WX_LIBRARY}-${WX_RELEASE}.r"
+       fi
         dnl the name of the shared library
         WX_LIBRARY_NAME_SHARED="lib${WX_LIBRARY}-${WX_RELEASE}.dylib.${WX_CURRENT}.${WX_REVISION}.${WX_AGE}"
         WX_LIBRARY_NAME_SHARED_GL="lib${WX_LIBRARY}_gl-${WX_RELEASE}.dylib.${WX_CURRENT}.${WX_REVISION}.${WX_AGE}"
@@ -2374,6 +2389,10 @@ if test "$wxUSE_GUI" = "yes"; then
     fi
 fi
 
+if test "$USE_WIN32" = 1; then
+    AC_CHECK_HEADERS(w32api.h)
+fi
+
 dnl ---------------------------------------------------------------------------
 dnl Checks for typedefs
 dnl ---------------------------------------------------------------------------
@@ -2761,7 +2780,7 @@ if test "$USE_BEOS" = 1; then
     HAVE_SOME_SLEEP_FUNC=1
 fi
 
-if test "$USE_MAC" = 1; then
+if test "$USE_DARWIN" = 1; then
     dnl Mac OS X has both nanosleep and usleep
     dnl but only usleep is defined in unistd.h
     AC_DEFINE(HAVE_USLEEP)
@@ -3041,8 +3060,8 @@ fi
 if test "$wxUSE_THREADS" = "yes"; then
   AC_DEFINE(wxUSE_THREADS)
 
-  dnl must define _REENTRANT for multithreaded code except for Mac OS X
-  if test "$wxUSE_MAC" = "0"; then
+  dnl must define _REENTRANT for multithreaded code except for Darwin/Mac OS X
+  if test "x$wxUSE_DARWIN" != "x1"; then
     CFLAGS="${CFLAGS} -D_REENTRANT"
     CXXFLAGS="${CXXFLAGS} -D_REENTRANT"
   fi
@@ -3081,9 +3100,9 @@ if test "$WXWINE" = 1 ; then
 fi
 
 if test "$wxUSE_MAC" = 1 ; then
-  TOOLKIT_DEF="${TOOLKIT_DEF} -D__UNIX__ -D__POWERPC__ -DTARGET_CARBON"
-  CFLAGS="${CFLAGS} -fno-common -fpascal-strings"
-  CPPFLAGS="${CPPFLAGS} -cpp-precomp -fno-common -fpascal-strings"
+  TOOLKIT_DEF="${TOOLKIT_DEF} -DTARGET_CARBON"
+  CFLAGS="${CFLAGS} -fpascal-strings"
+  CPPFLAGS="${CPPFLAGS} -cpp-precomp -fpascal-strings"
   AC_CHECK_PROG(REZ, Rez, Rez, /Developer/Tools/Rez)
   AC_CHECK_PROG(DEREZ, Derez, Derez, /Developer/Tools/Derez)
   RESCOMP=${REZ}
@@ -3185,6 +3204,26 @@ dnl ---------------------------------------------------------------------------
 dnl Optional libraries
 dnl ---------------------------------------------------------------------------
 
+REGEX_INCLUDE=
+if test "$wxUSE_REGEX" != "no"; 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))
+
+    if test "x$ac_cv_func_regcomp" != "xyes"; then
+        dnl we were asked to use the system version of regex lib only but it
+        dnl is not available
+        if test "$wxUSE_REGEX" = "sys"; then
+            AC_MSG_ERROR([system regex library not found! Use --with-regex to use the built-in regex library.])
+        fi
+
+        dnl fallback to the built in code
+        REGEX_INCLUDE="-I\${top_srcdir}/src/regex"
+    fi
+
+    AC_DEFINE(wxUSE_REGEX)
+fi
+
 ZLIB_INCLUDE=
 if test "$wxUSE_ZLIB" = "yes" -o "$wxUSE_ZLIB" = "sys" ; then
   AC_DEFINE(wxUSE_ZLIB)
@@ -3731,8 +3770,8 @@ if test "$TOOLKIT" != "MSW"; then
 HAVE_DL_FUNCS=0
 HAVE_SHL_FUNCS=0
 if test "$wxUSE_DYNLIB_CLASS" = "yes"; then
-    if test "$USE_MAC" = 1; then
-        dnl Mac OS X needs dl_macosx.c to be compiled in to fake dlopen/dlerror
+    if test "$USE_DARWIN" = 1; then
+        dnl dlopen/dlerror is implemented in dynlib.cpp for Darwin/Mac OS X
         HAVE_DL_FUNCS=1
     else
         dnl the test is a bit complicated because we check for dlopen() both with
@@ -3873,8 +3912,27 @@ if test "$wxUSE_HELP" = "yes"; then
     AC_DEFINE(wxUSE_HELP)
     SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS help"
 
+    if test "$USE_WIN32" = 1; then
+      if test "$wxUSE_MS_HTML_HELP" = "yes"; then
+        AC_DEFINE(wxUSE_MS_HTML_HELP)
+        AC_CHECK_HEADER(htmlhelp.h, 
+            [
+                AC_DEFINE(wxUSE_MS_HTML_HELP)
+            ],
+            [
+                AC_MSG_WARN(MS HTML Help cannot be used without htmlhelp.h so it won't be compiled without it)
+                wxUSE_MS_HTML_HELP=no
+            ])
+      fi
+    fi
+
     if test "$wxUSE_WXHTML_HELP" = "yes"; then
+      if test "$wxUSE_HTML" = "yes"; then
         AC_DEFINE(wxUSE_WXHTML_HELP)
+      else
+        AC_MSG_WARN(Cannot use wxHTML-based help without wxHTML so it won't be compiled)
+        wxUSE_WXHTML_HELP=no
+      fi
     fi
 fi
 
@@ -4386,7 +4444,7 @@ dnl
 dnl note that we always link with -lm except for Mac OS X
 dnl extended.c uses floor() and is always linked in
 EXTRA_LIBS="$LIBS $POSIX4_LINK $INET_LINK $WCHAR_LINK $THREADS_LINK $DMALLOC_LINK $DL_LINK $ZLIB_LINK -lm"
-if test "$USE_MAC" = 1 ; then
+if test "$wxUSE_MAC" = 1 ; then
     EXTRA_LIBS="$EXTRA_LIBS -framework Carbon -framework System"
 fi
 if test "$wxUSE_GUI" = "yes"; then
@@ -4398,7 +4456,9 @@ dnl makefile system without libtool
 LD_LIBS="\${top_builddir}/lib/${WX_LIBRARY_NAME_STATIC} $EXTRA_LIBS"
 
 dnl all -I options we must pass to the compiler
-INCLUDES="-I. -I\${top_builddir}/include -I\${top_srcdir}/include $ZLIB_INCLUDE $PNG_INCLUDE $JPEG_INCLUDE $TIFF_INCLUDE $FREETYPE_INCLUDE $TOOLKIT_INCLUDE"
+INCLUDES="-I. -I\${top_builddir}/include -I\${top_srcdir}/include \
+$REGEX_INCLUDE $ZLIB_INCLUDE $PNG_INCLUDE $JPEG_INCLUDE $TIFF_INCLUDE \
+$FREETYPE_INCLUDE $TOOLKIT_INCLUDE"
 
 dnl wxGTK does not need TOOLKIT includes in wx-config
 if test "$wxUSE_GTK" = 1; then