]> git.saurik.com Git - wxWidgets.git/blobdiff - configure.in
Unicode fix.
[wxWidgets.git] / configure.in
index 01e9d34cd3a163064d753b234702f620597f443d..0918f330108225f8c694706636b15989680bf1c0 100644 (file)
@@ -15,7 +15,7 @@ dnl ---------------------------------------------------------------------------
 dnl initialization
 dnl ---------------------------------------------------------------------------
 
-dnl the file passed to AC_INIT should be speicific to our package
+dnl the file passed to AC_INIT should be specific to our package
 AC_INIT(wx-config.in)
 
 AC_CANONICAL_HOST
@@ -28,7 +28,7 @@ dnl WX_BINARY_AGE += 1
 dnl
 dnl if any functions have been added, do:
 dnl
-dnl WX_INTERFACE_AGE = 1
+dnl WX_INTERFACE_AGE = 0
 
 WX_MAJOR_VERSION_NUMBER=2
 WX_MINOR_VERSION_NUMBER=1
@@ -179,8 +179,22 @@ case "${host}" in
     AC_DEFINE(__SVR4__)
     DEFAULT_DEFAULT_wxUSE_MOTIF=1
   ;;
+
+  *-*-cygwin32* )
+    USE_UNIX=0
+    AC_DEFINE(__WIN32__)
+    AC_DEFINE(__WIN95__)
+    AC_DEFINE(__WINDOWS__)
+    AC_DEFINE(__GNUWIN32__)
+    DEFAULT_DEFAULT_wxUSE_MSW=1
+  ;;
+
+  *-pc-os2_emx )
+    AC_DEFINE(__EMX__)
+  ;;
+
   *)
-    AC_MSG_ERROR(unknown system type $(host).)
+    AC_MSG_ERROR(unknown system type ${host}.)
 esac
 
 if test "$USE_UNIX" = 1 ; then
@@ -196,16 +210,6 @@ if test "$USE_LINUX" = 1; then
   AC_CHECK_LIB(c,gettext,AC_DEFINE(wxHAVE_GLIBC2))
 fi
 
-dnl TODO cross-compiling for Windows not yet supported
-AC_DEFINE(__UNIX__)
-
-dnl if eval "test $USE_CYGWIN != 1 -a $USE_MINGW32 != 1"; then
-dnl   AC_DEFINE(__UNIX__)
-dnl else
-dnl   AC_DEFINE(__WINDOWS__)
-dnl   DEFAULT_wxUSE_MSW=1
-dnl fi
-
 dnl ---------------------------------------------------------------------------
 dnl command line options for configure
 dnl ---------------------------------------------------------------------------
@@ -247,6 +251,7 @@ if test $DEBUG_CONFIGURE = 1; then
   DEFAULT_wxUSE_FILE=no
   DEFAULT_wxUSE_TEXTFILE=no
   DEFAULT_wxUSE_TIMEDATE=no
+  DEFAULT_wxUSE_WAVE=no
   DEFAULT_wxUSE_INTL=no
   DEFAULT_wxUSE_CONFIG=no
   DEFAULT_wxUSE_STREAMS=no
@@ -337,6 +342,7 @@ else
   DEFAULT_wxUSE_FILE=yes
   DEFAULT_wxUSE_TEXTFILE=yes
   DEFAULT_wxUSE_TIMEDATE=yes
+  DEFAULT_wxUSE_WAVE=no
   DEFAULT_wxUSE_INTL=yes
   DEFAULT_wxUSE_CONFIG=yes
   DEFAULT_wxUSE_STREAMS=yes
@@ -411,13 +417,6 @@ dnl ============================
 dnl external package dependecies
 dnl ============================
 
-dnl TODO should support these options!
-dnl
-dnl AC_ARG_WITH(gtk-prefix,    [  --with-gtk-prefix=PFX   prefix where GTK is installed],
-dnl             gtk_config_prefix="$withval", gtk_config_prefix="")
-dnl AC_ARG_WITH(gtk-exec-prefix,
-dnl                            [  --with-gtk-exec-prefix=PFX  exec prefix where GTK is installed], gtk_config_exec_prefix="$withval", gtk_config_exec_prefix="")
-
 dnl these options use AC_ARG_WITH and not WX_ARG_WITH on purpose - we cache
 dnl these values manually
 for toolkit in `echo $ALL_TOOLKITS`; do
@@ -435,6 +434,11 @@ AC_ARG_WITH(wine,          [  --with-wine             use WINE], [wxUSE_WINE="$w
 AC_ARG_WITH(cygwin,        [  --with-cygwin           use Cygwin for MS-Windows], [wxUSE_CYGWIN="$withval" CACHE_CYGWIN=1 TOOLKIT_GIVEN=1])
 AC_ARG_WITH(mingw,         [  --with-mingw            use GCC Minimal MS-Windows], [wxUSE_MINGW="$withval" CACHE_MINGW=1 TOOLKIT_GIVEN=1])
 
+AC_ARG_WITH(gtk-prefix,    [  --with-gtk-prefix=PFX   Prefix where GTK is installed],
+            gtk_config_prefix="$withval", gtk_config_prefix="")
+AC_ARG_WITH(gtk-exec-prefix, [  --with-gtk-exec-prefix=PFX  Exec prefix where GTK is installed],
+            gtk_config_exec_prefix="$withval", gtk_config_exec_prefix="")
+
 WX_ARG_WITH(dmalloc,       [  --with-dmalloc          use dmalloc library (www.letters.com/dmalloc)], wxUSE_DMALLOC)
 WX_ARG_WITH(zlib,          [  --with-zlib             use zlib for LZW compression], wxUSE_ZLIB)
 WX_ARG_WITH(libpng,        [  --with-libpng           use libpng (PNG image format)], wxUSE_LIBPNG)
@@ -452,7 +456,6 @@ dnl compile options
 dnl ---------------------------------------------------------------------------
 
 WX_ARG_ENABLE(optimise,    [  --enable-optimise       create optimised code], wxUSE_OPTIMISE)
-WX_ARG_ENABLE(optimize,    [  --enable-optimize       create optimized code], wxUSE_OPTIMISE)
 WX_ARG_ENABLE(debug,       [  --enable-debug          same as debug_flag and debug_info], wxUSE_DEBUG)
 
 if test "$wxUSE_DEBUG" = "yes"; then
@@ -489,6 +492,7 @@ WX_ARG_ENABLE(sockets,     [  --enable-sockets        use socket/network classes
 WX_ARG_ENABLE(ipc,         [  --enable-ipc            use interprocess communication (wxSocket etc.)], wxUSE_IPC)
 WX_ARG_ENABLE(apple_ieee,  [  --enable-apple_ieee     use the Apple IEEE codec], wxUSE_APPLE_IEEE)
 WX_ARG_ENABLE(timedate,    [  --enable-timedate       use date/time classes], wxUSE_TIMEDATE)
+WX_ARG_ENABLE(wave,        [  --enable-wave           use wxWave class], wxUSE_WAVE)
 WX_ARG_ENABLE(fraction,    [  --enable-fraction       use wxFraction class], wxUSE_FRACTION)
 WX_ARG_ENABLE(dynlib,      [  --enable-dynlib         use wxLibrary class for DLL loading], wxUSE_DYNLIB_CLASS)
 WX_ARG_ENABLE(longlong,    [  --enable-longlong       use wxLongLong class], wxUSE_LONGLONG)
@@ -824,7 +828,11 @@ AM_PROG_LEX
 dnl needed for making link to setup.h
 AC_PROG_LN_S
 
-dnl libtool checks (disable static libs by default, this takes too much time...)
+dnl without this (which just means that we use WXDLLEXPORT) libtool won't build
+dnl DLLs under Win32.
+AC_LIBTOOL_WIN32_DLL
+
+dnl disable static libs by default, this takes too much time...
 AM_DISABLE_STATIC
 AM_PROG_LIBTOOL
 
@@ -884,6 +892,7 @@ SEARCH_INCLUDE="\
     /usr/include/qt           \
     /usr/local/include/qt     \
                               \
+    /usr/include/windows      \
     /usr/include/wine         \
     /usr/local/include/wine   \
                               \
@@ -910,8 +919,6 @@ dnl search for toolkit (widget sets)
 dnl ----------------------------------------------------------------
 
 TOOLKIT=
-TOOLKIT_DEF=
-TOOLKIT_DIR=
 TOOLKIT_INCLUDE=
 
 GUI_TK_LIBRARY=
@@ -921,6 +928,21 @@ WXGTK12=
 
 WXWINE=
 
+if test "$wxUSE_CYGWIN" = 1; then
+  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
+
+  TOOLKIT=MSW
+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
@@ -949,20 +971,31 @@ if test "$wxUSE_WINE" = 1; then
     AC_MSG_CHECKING(for Xpm library)
     WX_PATH_FIND_LIBRARIES($SEARCH_LIB,Xpm)
     if test "$ac_find_libraries" != "" ; then
-        WX_LINK_PATH_EXIST($ac_find_libraries,$GUI_TK_LIBRARY)
-        CHECK_LINK="$GUI_TK_LIBRARY $ac_path_to_link"
-        XPM_LINK="-lXpm "
+        GUI_TK_LIBRARY="-L$ac_find_libraries"
+        XPM_LINK="-lXpm"
         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)
     fi
+    
+    MESA_LINK=""
+    AC_MSG_CHECKING(for Mesa library)
+    WX_PATH_FIND_LIBRARIES($SEARCH_LIB,MesaGL)
+    if test "$ac_find_libraries" != "" ; then
+        GUI_TK_LIBRARY="$GUI_TK_LIBRARY -L$ac_find_libraries"
+        MESA_LINK="-lMesaGL"
+        AC_MSG_RESULT(found at $ac_find_libraries)
+    else
+        AC_MSG_ERROR(no)
+    fi
 
-    GUI_TK_LINK="-lwine $XPM_LINK -lXmu -lX11 -lm"
+    GUI_TK_LINK="-lwine $MESA_LINK $XPM_LINK -lXxf86dga -lXxf86vm -lSM -lICE -lXext -lXmu -lX11 -lncurses -ldl -lm"
     GUI_TK_LIBRARY="$GUI_TK_LIBRARY $GUI_TK_LINK"
     WXWINE=1
     TOOLKIT=MSW
+    LTLIBOBJS="$LTLIBOBJS winestub.lo"
 fi
 
 if test "$wxUSE_MOTIF" = 1; then
@@ -1159,9 +1192,11 @@ dnl flush the cache
 AC_CACHE_SAVE
 
 dnl ---------------------------------------------------------------------------
-dnl thread support
+dnl thread support for Unix (always available under Win32)
 dnl ---------------------------------------------------------------------------
 
+if test "$wxUSE_UNIX" = 1; then
+
 dnl the code below:
 dnl   defines THREADS_OBJ which contains the object files to build
 dnl   defines THREADS_LINK which contains the thread library to link with
@@ -1170,6 +1205,13 @@ dnl   defines wxUSE_THREADS=1 if thread support is activated
 THREADS_LINK=""
 THREADS_OBJ=""
 
+if test "$wxUSE_THREADS" = "yes"; then
+  if test "$wxUSE_WINE" = 1; then
+    AC_MSG_WARN([Threads are not supported under WINE])
+    wxUSE_THREADS="no"
+   fi
+fi
+
 if test "$wxUSE_THREADS" = "yes"; then
     dnl find if POSIX threads are available
 
@@ -1191,25 +1233,16 @@ if test "$wxUSE_THREADS" = "yes"; then
                 ])
             ])
         ])
-    if test "$THREADS_LINK" != ""; then
-        AC_DEFINE(wxUSE_THREADS)
-    else
-        AC_MSG_WARN(No thread support on this system)
-    fi
 fi
 
 if test -z "$THREADS_OBJ"; then
   wxUSE_THREADS=no
+  AC_MSG_WARN(No thread support on this system)
 fi
 
 dnl do other tests only if we are using threads
 if test "$wxUSE_THREADS" = "yes"; then
-  dnl must define _REENTRANT for multithreaded code
-  CFLAGS="${CFLAGS} -D_REENTRANT"
-  CXXFLAGS="${CXXFLAGS} -D_REENTRANT"
-
-  SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS thread"
-dnl  LTLIBOBJS="$LTLIBOBJS $THREADS_OBJ"
+  dnl  LTLIBOBJS="$LTLIBOBJS $THREADS_OBJ"
 
   dnl define autoconf macro to check for given function in both pthread and
   dnl posix4 libraries
@@ -1272,6 +1305,18 @@ dnl  LTLIBOBJS="$LTLIBOBJS $THREADS_OBJ"
   THREADS_LINK="-l$THREADS_LINK"
 fi
 
+fi
+
+if test "$wxUSE_THREADS" = "yes"; then
+  AC_DEFINE(wxUSE_THREADS)
+
+  dnl must define _REENTRANT for multithreaded code
+  CFLAGS="${CFLAGS} -D_REENTRANT"
+  CXXFLAGS="${CXXFLAGS} -D_REENTRANT"
+
+  SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS thread"
+fi
+
 if test "$WXGTK12" = 1 ; then
   AC_DEFINE_UNQUOTED(__WXGTK12__,$WXGTK12)
 fi
@@ -1280,6 +1325,10 @@ if test "$WXWINE" = 1 ; then
   TOOLKIT_DEF="${TOOLKIT_DEF} -D__WXWINE__"
 fi
 
+if test "$wxUSE_CYGWIN" = 1 ; then
+  TOOLKIT_DEF="${TOOLKIT_DEF} -D__WIN95__"
+fi
+
 WXDEBUG=
 if test "$wxUSE_DEBUG_GDB" = "yes" ; then
     wxUSE_DEBUG_INFO=yes
@@ -1443,6 +1492,10 @@ if test "$wxUSE_TIMEDATE" = "yes"; then
   SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS typetest"
 fi
 
+if test "$wxUSE_WAVE" = "yes"; then
+  AC_DEFINE(wxUSE_WAVE)
+fi
+
 if test "$wxUSE_FILE" = "yes"; then
   AC_DEFINE(wxUSE_FILE)
 fi
@@ -1487,7 +1540,7 @@ if test "$wxUSE_SOCKETS" = "yes" ; then
         SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS wxsocket"
         INCLUDE_SUBDIRS="$INCLUDE_SUBDIRS protocol"
     else
-        AC_MSG_WARN(socket classes require --with-threads and won't be compiled without it)
+        AC_MSG_WARN(Socket classes require --with-threads and won't be compiled without it)
         wxUSE_SOCKETS=0
     fi
 fi
@@ -1669,15 +1722,20 @@ if test "$wxUSE_CLIPBOARD" = "yes"; then
   AC_DEFINE(wxUSE_CLIPBOARD)
 fi
 
-if test "$wxUSE_DRAG_AND_DROP" = "yes"; then
-  if test "$WXGTK12" = 1 ; then
+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])
+    fi
+  fi
+
+  if test "$wxUSE_MOTIF" = 1; then
+    AC_MSG_WARN([Drag and drop is not yet supported under Motif])
+  fi
+
+  if test "$wxUSE_DRAG_AND_DROP" = "yes"; then
     AC_DEFINE(wxUSE_DRAG_AND_DROP)
     SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS dnd"
-  else
-    AC_MSG_WARN(drag and drop is only supported under GTK 1.2)
-  fi
-  if test "$WXWINE" = 1 ; then
-    AC_MSG_WARN(drag and drop is only supported under WINE)
   fi
 fi
 
@@ -1803,11 +1861,15 @@ if test "$wxUSE_TOOLBAR" = "yes"; then
   SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS toolbar"
 fi
 
-if test "$wxUSE_TOOLTIPS" = "yes" ; then
+if test "$wxUSE_TOOLTIPS" = "yes"; then
     if test "$wxUSE_MOTIF" = 1; then
-      AC_MSG_WARN(tooltips are not supported yet under Motif)
+      AC_MSG_WARN(Tooltips are not supported yet under Motif)
     else
-      AC_DEFINE(wxUSE_TOOLTIPS)
+      if test "$wxUSE_WINE" = 1; then
+        AC_MSG_WARN(Tooltips are not supported yet under WINE)
+      else
+        AC_DEFINE(wxUSE_TOOLTIPS)
+      fi
     fi
 fi
 
@@ -1972,6 +2034,13 @@ AC_OUTPUT([
             wx-config
             Makefile
             src/Makefile
+
+dnl just for testing, will remove soon (VZ)
+dnl             src/msw/Makefile
+dnl             include/Makefile include/wx/Makefile include/wx/generic/Makefile
+dnl             include/wx/msw/Makefile
+dnl             samples/Makefile samples/minimal/Makefile
+
             src/gtk/Makefile
             src/motif/Makefile
             src/msw/Makefile
@@ -2043,7 +2112,7 @@ dnl The following line is more elegant but test -e is not supported by all
 dnl test varieties.
 dnl            if test ! -e include/wx/${TOOLKIT_DIR}/setup.h; then
             cat include/wx/${TOOLKIT_DIR}/setup.h >/dev/null 2>&1
-           if test $? != 0; then
+            if test $? != 0; then
               ${LN_S} `pwd`/setup.h include/wx/${TOOLKIT_DIR}/setup.h
             fi
           ],