]> git.saurik.com Git - wxWidgets.git/blobdiff - configure.in
added extern "C" for include of mach/mach.h to fix link errors with PB
[wxWidgets.git] / configure.in
index 3f9a95025d87c20dc249a016652c2897a4a56e95..5f22f8e682337846f0f0e48f3349087d25ffa142 100644 (file)
@@ -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
@@ -228,7 +231,7 @@ case "${host}" in
     dnl
     dnl     Both archive libraries and shared libraries on AIX have an .a
     dnl     extension. This will explain why you can't link with an .so and
-    dnl     why it works with the name changed to .a. 
+    dnl     why it works with the name changed to .a.
     SO_SUFFIX=a
     AC_DEFINE(__AIX__)
     AC_DEFINE(__SYSV__)
@@ -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
@@ -380,7 +390,6 @@ if test $DEBUG_CONFIGURE = 1; then
   DEFAULT_wxUSE_DOC_VIEW_ARCHITECTURE=no
   DEFAULT_wxUSE_PRINTING_ARCHITECTURE=no
 
-  DEFAULT_wxUSE_PROLOGIO=no
   DEFAULT_wxUSE_RESOURCES=no
   DEFAULT_wxUSE_CONSTRAINTS=no
   DEFAULT_wxUSE_IPC=no
@@ -438,7 +447,6 @@ if test $DEBUG_CONFIGURE = 1; then
   DEFAULT_wxUSE_LISTBOX=no
   DEFAULT_wxUSE_LISTCTRL=no
   DEFAULT_wxUSE_NOTEBOOK=no
-  DEFAULT_wxUSE_PROPSHEET=no
   DEFAULT_wxUSE_RADIOBOX=no
   DEFAULT_wxUSE_RADIOBTN=no
   DEFAULT_wxUSE_SASH=no
@@ -554,7 +562,6 @@ else
   DEFAULT_wxUSE_DOC_VIEW_ARCHITECTURE=yes
   DEFAULT_wxUSE_PRINTING_ARCHITECTURE=yes
 
-  DEFAULT_wxUSE_PROLOGIO=no
   DEFAULT_wxUSE_RESOURCES=no
   DEFAULT_wxUSE_CONSTRAINTS=yes
   DEFAULT_wxUSE_IPC=yes
@@ -612,7 +619,6 @@ else
   DEFAULT_wxUSE_LISTBOX=yes
   DEFAULT_wxUSE_LISTCTRL=yes
   DEFAULT_wxUSE_NOTEBOOK=yes
-  DEFAULT_wxUSE_PROPSHEET=yes
   DEFAULT_wxUSE_RADIOBOX=yes
   DEFAULT_wxUSE_RADIOBTN=yes
   DEFAULT_wxUSE_SASH=yes
@@ -846,7 +852,7 @@ dnl ---------------------------------------------------------------------------
 dnl resources
 dnl ---------------------------------------------------------------------------
 
-WX_ARG_ENABLE(prologio,    [  --enable-prologio       use Prolog IO library], wxUSE_PROLOGIO)
+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)
@@ -859,7 +865,7 @@ WX_ARG_ENABLE(clipboard,   [  --enable-clipboard      use wxClipboard class], wx
 WX_ARG_ENABLE(dnd,         [  --enable-dnd            use Drag'n'Drop classes], wxUSE_DRAG_AND_DROP)
 WX_ARG_ENABLE(metafile,    [  --enable-metafile       use win32 metafiles], wxUSE_METAFILE)
 
-WX_ARG_ENABLE(treelayout,  [  --enable-treelayout     use wxTreeLayout class], wxUSE_TREELAYOUT)
+dnl WX_ARG_ENABLE(treelayout,  [  --enable-treelayout     use wxTreeLayout class], wxUSE_TREELAYOUT)
 
 dnl ---------------------------------------------------------------------------
 dnl optional GUI controls (in alphabetical order except the first one)
@@ -886,7 +892,6 @@ if test "$wxUSE_CONTROLS" = "yes"; then
   DEFAULT_wxUSE_LISTBOX=yes
   DEFAULT_wxUSE_LISTCTRL=yes
   DEFAULT_wxUSE_NOTEBOOK=yes
-  DEFAULT_wxUSE_PROPSHEET=yes
   DEFAULT_wxUSE_RADIOBOX=yes
   DEFAULT_wxUSE_RADIOBTN=yes
   DEFAULT_wxUSE_SASH=yes
@@ -924,7 +929,6 @@ elif test "$wxUSE_CONTROLS" = "no"; then
   DEFAULT_wxUSE_LISTBOX=no
   DEFAULT_wxUSE_LISTCTRL=no
   DEFAULT_wxUSE_NOTEBOOK=no
-  DEFAULT_wxUSE_PROPSHEET=no
   DEFAULT_wxUSE_RADIOBOX=no
   DEFAULT_wxUSE_RADIOBTN=no
   DEFAULT_wxUSE_SASH=no
@@ -956,7 +960,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
@@ -966,20 +969,17 @@ if test "x$wxUSE_COCOA" != "x" -a "$wxUSE_COCOA" != "0" ; then
   DEFAULT_wxUSE_SPINCTRL=no
   DEFAULT_wxUSE_TOOLTIPS=no
   DEFAULT_wxUSE_COLOURDLG=no
-  DEFAULT_wxUSE_DIRDLG=no
   DEFAULT_wxUSE_DRAGIMAGE=no
   DEFAULT_wxUSE_FINDREPLDLG=no
   DEFAULT_wxUSE_FONTDLG=no
   DEFAULT_wxUSE_GRID=no
   DEFAULT_wxUSE_NUMBERDLG=no
   DEFAULT_wxUSE_PROGRESSDLG=no
-  DEFAULT_wxUSE_PROPSHEET=no
   DEFAULT_wxUSE_SASH=no
   DEFAULT_wxUSE_SPLITTER=no
   DEFAULT_wxUSE_WIZARDDLG=no
   DEFAULT_wxUSE_SPLITTER=no
   DEFAULT_wxUSE_STARTUP_TIPS=no
-  DEFAULT_wxUSE_TREECTRL=no
 fi
 
 WX_ARG_ENABLE(accel,       [  --enable-accel          use accelerators], wxUSE_ACCEL)
@@ -998,7 +998,6 @@ WX_ARG_ENABLE(imaglist,    [  --enable-imaglist       use wxImageList class], wx
 WX_ARG_ENABLE(listbox,     [  --enable-listbox        use wxListBox class], wxUSE_LISTBOX)
 WX_ARG_ENABLE(listctrl,    [  --enable-listctrl       use wxListCtrl class], wxUSE_LISTCTRL)
 WX_ARG_ENABLE(notebook,    [  --enable-notebook       use wxNotebook class], wxUSE_NOTEBOOK)
-WX_ARG_ENABLE(propsheet,   [  --enable-propsheet      use wxPropertySheet class], wxUSE_PROPSHEET)
 WX_ARG_ENABLE(radiobox,    [  --enable-radiobox       use wxRadioBox class], wxUSE_RADIOBOX)
 WX_ARG_ENABLE(radiobtn,    [  --enable-radiobtn       use wxRadioButton class], wxUSE_RADIOBTN)
 WX_ARG_ENABLE(sash,        [  --enable-sash           use wxSashWindow class], wxUSE_SASH)
@@ -1469,7 +1468,7 @@ case "${host}" in
       fi
   ;;
 esac
+
 if test "$wxUSE_GUI" = "yes"; then
     if test "$wxUSE_UNIX" = "yes"; then
         dnl defines HAVE_X11_XKBLIB_H
@@ -2275,7 +2274,7 @@ equivalent variable and GTK+ is version 1.2.3 or above.
             AC_MSG_ERROR([Cannot find MGL libraries, make sure they are compiled.])
         fi
         AC_MSG_RESULT("$MGL_ROOT/lib/$mgl_lib_type/$mgl_os")
+
         wxUSE_UNIVERSAL="yes"
 
         TOOLKIT_INCLUDE="-I$MGL_ROOT/include"
@@ -2369,6 +2368,13 @@ equivalent variable and GTK+ is version 1.2.3 or above.
             )
         fi
 
+        AC_CHECK_LIB([Xext], [XShapeQueryExtension],
+                     [
+                      GUI_TK_LIBRARY="$GUI_TK_LIBRARY -lXext"
+                      wxHAVE_XEXT_LIB=1
+                     ],
+                     [], [$GUI_TK_LIBRARY -lX11])
+
         if test "$wxUSE_UNICODE" = "yes"; then
                 PKG_CHECK_MODULES(PANGOX, pangox,
                     [
@@ -2601,6 +2607,32 @@ equivalent variable and GTK+ is version 1.2.3 or above.
         TOOLKIT_VPATH="\${top_srcdir}/src/motif${PATH_IFS}\${top_srcdir}/src/motif/xmcombo${PATH_IFS}\${top_srcdir}/src/x11"
         TOOLKIT=MOTIF
         GUIDIST=MOTIF_DIST
+        wxHAVE_XEXT_LIB=1
+    fi
+
+    if test "$wxUSE_X11" = 1 -o "$wxUSE_MOTIF" = 1 &&
+       test "$wxHAVE_XEXT_LIB" = 1; then
+        save_CFLAGS="$CFLAGS"
+        CFLAGS="$CFLAGS $TOOLKIT_INCLUDE"
+
+        AC_MSG_CHECKING([for X11/extensions/shape.h])
+        AC_TRY_COMPILE([
+                        #include <X11/Xlib.h> 
+                        #include <X11/extensions/shape.h>
+                       ],
+                       [
+                        int dummy1, dummy2;
+                        XShapeQueryExtension((Display*)NULL,
+                                             (int*)NULL, (int*)NULL);
+                       ],
+                       [
+                        AC_DEFINE(HAVE_XSHAPE)
+                        AC_MSG_RESULT([found])
+                       ],
+                       [
+                        AC_MSG_RESULT([not found])
+                       ])
+        CFLAGS="$save_CFLAGS"
     fi
 
     if test "$wxUSE_MAC" = 1; then
@@ -2621,9 +2653,9 @@ equivalent variable and GTK+ is version 1.2.3 or above.
     if test "$wxUSE_PM" = 1; then
         TOOLKIT=PM
         GUIDIST=GTK_DIST
-        AC_MSG_WARN([OS/2 PM requires old resource format, re-enabled])
-        wxUSE_PROLOGIO="yes"
-        wxUSE_RESOURCES="yes"
+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
@@ -2742,21 +2774,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"
@@ -2850,7 +2898,7 @@ case "${host}" in
     *-*-darwin* )
         dnl Under Mac OS X, the naming conventions for shared libraries
         dnl are different: the number precedes the suffix.
-        
+
         WX_LIBRARY_NAME_SHARED="lib${WX_LIBRARY}.${WX_CURRENT}.${WX_REVISION}.${WX_AGE}.${SO_SUFFIX}"
         WX_LIBRARY_NAME_SHARED_GL="lib${WX_LIBRARY_GL}.${WX_CURRENT}.${WX_REVISION}.${WX_AGE}.${SO_SUFFIX}"
 
@@ -3119,6 +3167,13 @@ if test "$wxUSE_MAC" = 1; then
     MACRESCOMP="\$(RESCOMP) -d __DARWIN__ -t APPL Carbon.r ${LIBWXMACRES} -o"
     MACSETFILE="\$(SETFILE)"
     MACRESWXCONFIG="${RESCOMP} -d __DARWIN__ -t APPL Carbon.r \$(top_builddir)/lib/${WX_RESOURCES_MACOSX_ASCII}} -o"
+elif test "$wxUSE_COCOA" = 1; then
+    AC_CHECK_PROG(RESCOMP, Rez, Rez, /Developer/Tools/Rez)
+    AC_CHECK_PROG(DEREZ, DeRez, DeRez, /Developer/Tools/DeRez)
+    AC_CHECK_PROG(SETFILE, SetFile, SetFile, /Developer/Tools/SetFile)
+    MACRESCOMP="echo -n | \$(RESCOMP) -d __DARWIN__ -t APPL ${LIBWXMACRES} -o"
+    MACSETFILE="\$(SETFILE)"
+    MACRESWXCONFIG="echo -n | ${RESCOMP} -d __DARWIN__ -t APPL \$(top_builddir)/lib/${WX_RESOURCES_MACOSX_ASCII}} -o"
 else
     if test "$wxUSE_PM" = 1; then
         MACRESCOMP="emxbind -ep"
@@ -3646,6 +3701,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
@@ -4663,22 +4735,22 @@ if test "$wxUSE_PRINTING_ARCHITECTURE" = "yes" ; then
     SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS printing"
 fi
 
-if test "$wxUSE_PROLOGIO" = "yes" ; then
-    AC_DEFINE(wxUSE_PROLOGIO)
-    ALL_OBJECTS="$ALL_OBJECTS parser.o"
-fi
+dnl if test "$wxUSE_PROLOGIO" = "yes" ; then
+dnl     AC_DEFINE(wxUSE_PROLOGIO)
+dnl     ALL_OBJECTS="$ALL_OBJECTS parser.o"
+dnl fi
 
-if test "$wxUSE_RESOURCES" = "yes" ; then
-    if test "$wxUSE_NANOX" = "yes"; then
-        AC_MSG_WARN([Cannot use resource database functions in NanoX])
-    else
-        AC_DEFINE(wxUSE_RESOURCES)
-        SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS resource"
-    fi
-    if test "$wxUSE_PROLOGIO" != "yes" ; then
-        ALL_OBJECTS="$ALL_OBJECTS parser.o"
-    fi
-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)
@@ -4888,11 +4960,11 @@ if test "$wxUSE_NOTEBOOK" = "yes"; then
     SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS notebook"
 fi
 
-if test "$wxUSE_PROPSHEET" = "yes"; then
-    AC_DEFINE(wxUSE_PROPSHEET)
-    USES_CONTROLS=1
-    SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS proplist"
-fi
+dnl if test "$wxUSE_PROPSHEET" = "yes"; then
+dnl     AC_DEFINE(wxUSE_PROPSHEET)
+dnl     USES_CONTROLS=1
+dnl     SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS proplist"
+dnl fi
 
 if test "$wxUSE_RADIOBOX" = "yes"; then
     AC_DEFINE(wxUSE_RADIOBOX)
@@ -5068,10 +5140,10 @@ dnl ---------------------------------------------------------------------------
 dnl misc options
 dnl ---------------------------------------------------------------------------
 
-if test "$wxUSE_TREELAYOUT" = "yes"; then
-    AC_DEFINE(wxUSE_TREELAYOUT)
-    SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS treelay"
-fi
+dnl if test "$wxUSE_TREELAYOUT" = "yes"; then
+dnl     AC_DEFINE(wxUSE_TREELAYOUT)
+dnl     SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS treelay"
+dnl fi
 
 if test "$wxUSE_DRAGIMAGE" = "yes"; then
     AC_DEFINE(wxUSE_DRAGIMAGE)
@@ -5355,7 +5427,7 @@ if test "$wxUSE_GUI" = "yes"; then
     dnl      ipc, mfc, nativdlg, oleauto, ownerdrw
     SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS artprov controls dialogs \
                      drawing dynamic erase event exec font image \
-                     minimal propsize rotate widgets"
+                     minimal propsize rotate shaped widgets"
 
     dnl this is needed to be able to find AFM files
     CPPFLAGS="$CPPFLAGS \$(EXTRADEFS) \$(APPEXTRADEFS)"