]> git.saurik.com Git - wxWidgets.git/blobdiff - configure.in
total wxBrush cleanup: made private stuff private, fixed data (un)sharing, create...
[wxWidgets.git] / configure.in
index 147f3e40baeb20518ccaa2161cea9aaa03598ad3..abbdc42985b5baa7348abc5d327eb77d9b8dd066 100644 (file)
@@ -1215,8 +1215,29 @@ dnl strip command
 dnl   defines STRIP as strip or nothing if not found
 AC_CHECK_PROG(STRIP, strip, strip, true)
 
+dnl does make support "-include" (only GNU make does AFAIK)?
+AC_CACHE_CHECK([if make is GNU make], wx_cv_prog_makeisgnu,
+[
+    if ( ${SHELL-sh} -c "${MAKE-make} --version" 2> /dev/null |
+            egrep -s GNU); then
+        wx_cv_prog_makeisgnu="yes"
+    else
+        wx_cv_prog_makeisgnu="no"
+    fi
+])
+
+if test "x$wx_cv_prog_makeisgnu" = "xyes"; then
+    IF_GNU_MAKE=""
+else
+    IF_GNU_MAKE="#"
+fi
+
+AC_SUBST(IF_GNU_MAKE)
+
+dnl we don't need to check for VPATH support in GNU make - it does have it
+if test "x$wx_cv_prog_makeisgnu" != "xyes"; then
 dnl check if VPATH works
-AC_MSG_CHECKING(make for VPATH support)
+AC_CACHE_CHECK([if make supports VPATH], wx_cv_prog_makevpath, [
 dnl create Makefile
 cat - << EOF > confMake
 check : file
@@ -1233,10 +1254,14 @@ RESULT=$?
 rm -f sub/file check final_file confMake
 rmdir sub
 if test "$RESULT" = 0; then
-  AC_MSG_RESULT(yes)
+  wx_cv_prog_makevpath="yes"
 else
-  AC_MSG_RESULT(no)
-  AC_MSG_ERROR([
+  wx_cv_prog_makevpath="no"
+fi
+])
+
+if test "x$wx_cv_prog_makevpath" != "xyes"; then
+AC_MSG_ERROR([
 You need a make-utility that is able to use the variable
 VPATH correctly.
 If your version of make does not support VPATH correctly,
@@ -1247,26 +1272,8 @@ setenv MAKE gmake; ./configure  for csh-type shells
 Also please do remember to use gmake in this case every time
 you are trying to compile.
 ])
-fi
-
-dnl does make support "-include" (only GNU make does AFAIK)?
-AC_CACHE_CHECK([if make is GNU make], wx_make_make_isgnu,
-[
-    if ( ${SHELL-sh} -c "${MAKE-make} --version" 2> /dev/null |
-            grep GNU 2>&1 > /dev/null); then
-        wx_make_make_isgnu="yes"
-    else
-        wx_make_make_isgnu="no"
-    fi
-])
-
-if test "x$wx_make_make_isgnu" = "xyes"; then
-    IF_GNU_MAKE=""
-else
-    IF_GNU_MAKE="#"
-fi
-
-AC_SUBST(IF_GNU_MAKE)
+fi dnl make without VPATH
+fi dnl not GNU make
 
 dnl YACC checks
 dnl   defines YACC with the appropriate command
@@ -1457,32 +1464,41 @@ PNG_INCLUDE=
 PNG_LINK=
 if test "$wxUSE_LIBPNG" != "no" ; then
     AC_DEFINE(wxUSE_LIBPNG)
+    
+    if test "$wxUSE_MGL" = 1 -a "$wxUSE_LIBPNG" = "builtin" ; then
+        AC_MSG_WARN([wxMGL doesn't work with builtin png library, will use MGL one instead])
+        wxUSE_LIBPNG=sys
+    fi
 
     dnl for the check below to have a chance to succeed, we must already have
-    dnl libz somewhere
-    if test "$wxUSE_LIBPNG" = "sys" -a "$wxUSE_ZLIB" != "sys" ; then
+    dnl libz somewhere (don't do this when bulding wxMGL since its libpng
+    dnl doesn't depend on zlib)
+    if test "$wxUSE_MGL" != 1 -a "$wxUSE_LIBPNG" = "sys" -a "$wxUSE_ZLIB" != "sys" ; then
         AC_MSG_WARN([system png library doesn't work without system zlib, will use built-in instead])
         wxUSE_LIBPNG=builtin
     fi
 
-    if test "$wxUSE_LIBPNG" = "sys" -o "$wxUSE_LIBPNG" = "yes" ; then
-        AC_CHECK_HEADER(png.h,
-                        AC_CHECK_LIB(png, png_check_sig,
-                                     PNG_LINK=" -lpng",
-                                     ,
-                                     [-lz -lm])
-                       )
+    if test "$wxUSE_MGL" != 1 ; then
+        dnl Don't check for libpng when building wxMGL, libmgl contains it
+        if test "$wxUSE_LIBPNG" = "sys" -o "$wxUSE_LIBPNG" = "yes" ; then
+            AC_CHECK_HEADER(png.h,
+                            AC_CHECK_LIB(png, png_check_sig,
+                                         PNG_LINK=" -lpng",
+                                         ,
+                                         [-lz -lm])
+                           )
 
-        if test "x$PNG_LINK" = "x" ; then
-            if test "$wxUSE_LIBPNG" = "sys" ; then
-                AC_MSG_ERROR([system png library not found! Use --with-libpng=builtin to use built-in version])
+            if test "x$PNG_LINK" = "x" ; then
+                if test "$wxUSE_LIBPNG" = "sys" ; then
+                    AC_MSG_ERROR([system png library not found! Use --with-libpng=builtin to use built-in version])
+                else
+                    AC_MSG_WARN([system png library not found, will use built-in instead])
+                    wxUSE_LIBPNG=builtin
+                fi
             else
-                AC_MSG_WARN([system png library not found, will use built-in instead])
-                wxUSE_LIBPNG=builtin
+                dnl we are using the system library
+                wxUSE_LIBPNG=yes
             fi
-        else
-            dnl we are using the system library
-            wxUSE_LIBPNG=yes
         fi
     fi
 
@@ -1502,40 +1518,48 @@ JPEG_LINK=
 if test "$wxUSE_LIBJPEG" != "no" ; then
     AC_DEFINE(wxUSE_LIBJPEG)
 
-    if test "$wxUSE_LIBJPEG" = "sys" -o "$wxUSE_LIBJPEG" = "yes" ; then
-        dnl can't use AC_CHECK_HEADER as jconfig.h defines things like
-        dnl HAVE_STDLIB_H which are already defined and this provokes
-        dnl a compiler warning which configure considers as an error...
-        AC_MSG_CHECKING(for jpeglib.h)
-        AC_CACHE_VAL(ac_cv_header_jpeglib_h,
-            AC_TRY_COMPILE(
-                [
-                    #undef HAVE_STDLIB_H
-                    #include <stdio.h>
-                    #include <jpeglib.h>
-                ],
-                [
-                ],
-                ac_cv_header_jpeglib_h=yes,
-                ac_cv_header_jpeglib_h=no
+    if test "$wxUSE_MGL" = 1 -a "$wxUSE_LIBJPEG" = "builtin" ; then
+        AC_MSG_WARN([wxMGL doesn't work with builtin jpeg library, will use MGL one instead])
+        wxUSE_LIBJPEG=sys
+    fi
+
+    if test "$wxUSE_MGL" != 1 ; then
+        dnl Don't check for libjpeg when building wxMGL, libmgl contains it
+        if test "$wxUSE_LIBJPEG" = "sys" -o "$wxUSE_LIBJPEG" = "yes" ; then
+            dnl can't use AC_CHECK_HEADER as jconfig.h defines things like
+            dnl HAVE_STDLIB_H which are already defined and this provokes
+            dnl a compiler warning which configure considers as an error...
+            AC_MSG_CHECKING(for jpeglib.h)
+            AC_CACHE_VAL(ac_cv_header_jpeglib_h,
+                AC_TRY_COMPILE(
+                    [
+                        #undef HAVE_STDLIB_H
+                        #include <stdio.h>
+                        #include <jpeglib.h>
+                    ],
+                    [
+                    ],
+                    ac_cv_header_jpeglib_h=yes,
+                    ac_cv_header_jpeglib_h=no
+                )
             )
-        )
-        AC_MSG_RESULT($ac_cv_header_jpeglib_h)
+            AC_MSG_RESULT($ac_cv_header_jpeglib_h)
 
-        if test "$ac_cv_header_jpeglib_h" = "yes"; then
-            AC_CHECK_LIB(jpeg, jpeg_read_header, JPEG_LINK=" -ljpeg")
-        fi
+            if test "$ac_cv_header_jpeglib_h" = "yes"; then
+                AC_CHECK_LIB(jpeg, jpeg_read_header, JPEG_LINK=" -ljpeg")
+            fi
 
-        if test "x$JPEG_LINK" = "x" ; then
-            if test "$wxUSE_LIBJPEG" = "sys" ; then
-                AC_MSG_ERROR([system jpeg library not found! Use --with-libjpeg=builtin to use built-in version])
+            if test "x$JPEG_LINK" = "x" ; then
+                if test "$wxUSE_LIBJPEG" = "sys" ; then
+                    AC_MSG_ERROR([system jpeg library not found! Use --with-libjpeg=builtin to use built-in version])
+                else
+                    AC_MSG_WARN([system jpeg library not found, will use built-in instead])
+                    wxUSE_LIBJPEG=builtin
+                fi
             else
-                AC_MSG_WARN([system jpeg library not found, will use built-in instead])
-                wxUSE_LIBJPEG=builtin
+                dnl we are using the system library
+                wxUSE_LIBJPEG=sys
             fi
-        else
-            dnl we are using the system library
-            wxUSE_LIBJPEG=sys
         fi
     fi
 
@@ -2023,12 +2047,21 @@ equivalent variable and GTK+ is version 1.2.3 or above.
 
     if test "$wxUSE_UNIVERSAL" = "yes"; then
         ALL_OBJECTS="\$(GUI_LOWLEVEL_OBJS) \${UNIVOBJS}"
+
+        dnl ALL_SOURCES and ALL_HEADERS shouldn't include really all sources
+        dnl and headers as some/most are not needed for wxUniv but I don't
+        dnl have time to add GUI_LOWLEVEL_SOURCES/HEADERS stuff now (TODO!)
+        ALL_SOURCES="\$(ALL_SOURCES) \${UNIV_SOURCES}"
+        ALL_HEADERS="\$(ALL_HEADERS) \${UNIV_HEADERS}"
+
         PORT_FILES="${PORT_FILES} \${top_srcdir}/src/univ/files.lst"
         TOOLKIT_VPATH="\${top_srcdir}/src/univ${PATH_IFS}\${top_srcdir}/src/univ/themes${PATH_IFS}\${top_srcdir}/src/${TOOLKIT_DIR}"
         TOOLCHAIN_DEFS="${TOOLCHAIN_DEFS} -D__WXUNIVERSAL__"
         WIDGET_SET=univ
     else
         ALL_OBJECTS="\$(GUIOBJS)"
+        ALL_SOURCES="\$(ALL_SOURCES)"
+        ALL_HEADERS="\$(ALL_HEADERS)"
     fi
 
     ALL_OBJECTS="${ALL_OBJECTS} \$(COMMONOBJS) \$(GENERICOBJS)"
@@ -2041,10 +2074,6 @@ equivalent variable and GTK+ is version 1.2.3 or above.
         ALL_OBJECTS="${ALL_OBJECTS} \$(HTMLOBJS)"
     fi
 
-    dnl ODBC objects are Unix only
-    if test "$TOOLKIT" != "MSW" -a "$wxUSE_ODBC" = "yes" ; then
-        ALL_OBJECTS="${ALL_OBJECTS} \$(IODBCOBJS)"
-    fi
     if test "$wxUSE_LIBJPEG" = "builtin" ; then
         ALL_OBJECTS="${ALL_OBJECTS} \$(JPEGOBJS)"
     fi
@@ -2091,6 +2120,12 @@ fi
 dnl ---------------------------------------------------------------------------
 dnl Optional libraries included when system library is not used
 dnl ---------------------------------------------------------------------------
+
+dnl ODBC objects are Unix only
+if test "$TOOLKIT" != "MSW" -a "$wxUSE_ODBC" = "yes" ; then
+    ALL_OBJECTS="${ALL_OBJECTS} \$(IODBCOBJS)"
+fi
+
 if test "$wxUSE_REGEX" = "builtin" ; then
     ALL_OBJECTS="${ALL_OBJECTS} \$(REGEXOBJS)"
 fi
@@ -4668,8 +4703,10 @@ AC_SUBST(WXCONFIG_LIBS_STATIC)
 AC_SUBST(WXCONFIG_LIBS_STATIC_GL)
 AC_SUBST(WXCONFIG_INCLUDE)
 
-dnl what to compile
+dnl the list of files to compile/install
 AC_SUBST(ALL_OBJECTS)
+AC_SUBST(ALL_HEADERS)
+AC_SUBST(ALL_SOURCES)
 
 dnl distribution vars
 AC_SUBST(GUIDIST)
@@ -4724,6 +4761,7 @@ if test "$wxUSE_GUI" = "yes"; then
     dnl we need to pass SAMPLES_SUBDIRS (and some other) to the configure in
     dnl samples and the only way to do it is, again, use the cache
     wx_cv_path_samplesubdirs=$SAMPLES_SUBDIRS
+    wx_cv_if_gnu_make=$IF_GNU_MAKE
     wx_cv_path_ifs=$PATH_IFS
     wx_cv_program_ext=$PROGRAM_EXT
     wx_cv_target_library=$WX_TARGET_LIBRARY
@@ -4731,7 +4769,8 @@ if test "$wxUSE_GUI" = "yes"; then
     wx_cv_target_libtype=$WX_TARGET_LIBRARY_TYPE
     dnl we need to export them because passing them through cache won't
     dnl work when cache=/dev/null (which is default for autoconf 2.50)
-    export wx_cv_path_samplesubdirs wx_cv_path_ifs wx_cv_program_ext \
+    export wx_cv_path_samplesubdirs wx_cv_if_gnu_make \
+           wx_cv_path_ifs wx_cv_program_ext \
            wx_cv_target_library wx_cv_target_library_gl wx_cv_target_libtype
     AC_CONFIG_SUBDIRS(demos samples utils contrib)
 fi