Merge commit 'upstream/3.2.1'
[debian/amanda] / config / amanda / libs.m4
index 4bf2bc279b322263b6a6c3c0e67e8445ae9acb2d..0c513ad6cf80e31f546439bbd8461a1cc3101a0d 100644 (file)
 #   the libcurl distribution for details.
 #
 AC_DEFUN([AMANDA_CHECK_LIBCURL], [
-    case "$target" in
-        sparc-sun-solaris2.10) # Solaris 10
-        # curl is not in the LD_LIBRARY_PATH on Solaris 10, so we search
-        # for it in a few common paths; we then extract the -L flags and
-        # translate them to -R flags, as required by the runtime linker.
-        AC_PATH_PROG(CURL_CONFIG, curl-config, [], $LOCSYSPATH:/opt/csw/bin:/usr/local/bin:/opt/local/bin)
-        if test -n "$CURL_CONFIG"; then
-            curlflags=`$CURL_CONFIG --libs 2>/dev/null`
-            for flag in curlflags; do
-                case $flag in
-                    -L*) LDFLAGS="$LDFLAGS "`echo "x$flag" | sed -e 's/^x-L/-R/'`;;
-                esac
-            done
-        fi
-        ;;
-    esac
-
     LIBCURL_CHECK_CONFIG(yes, 7.10.0, HAVE_CURL=yes, HAVE_CURL=no)
     if test x"$HAVE_CURL" = x"yes"; then
        AMANDA_ADD_LIBS($LIBCURL)
        AMANDA_ADD_CPPFLAGS($LIBCURL_CPPFLAGS)
 
        AMANDA_CHECK_TYPE([curl_off_t], [off_t], [curl/curl.h])
+       case "$host" in
+           *sun-solaris2*) # Solaris, all versions.
+           # we extract the -L flags and translate them to -R flags, as required
+           # by the runtime linker.
+           if test -n "$_libcurl_config"; then
+               curlflags=`$_libcurl_config --libs 2>/dev/null`
+               for flag in curlflags; do
+                   case $flag in
+                       -L*) LDFLAGS="$LDFLAGS "`echo "x$flag" | sed -e 's/^x-L/-R/'`;;
+                   esac
+               done
+           fi
+           ;;
+       esac
     fi
+
 ])
 
 # SYNOPSIS
@@ -76,7 +74,7 @@ AC_DEFUN([AMANDA_CHECK_HMAC], [
 #
 AC_DEFUN([AMANDA_CHECK_NET_LIBS], [
     # Make sure we don't use -lnsl and -lsun on Irix systems.
-    case "$target" in
+    case "$host" in
        *sgi-irix*)
                            AC_CHECK_LIB(socket,main)
                            ;;
@@ -100,28 +98,47 @@ AC_DEFUN([AMANDA_CHECK_NET_LIBS], [
 #   "out of the box" on more boxes.
 #
 AC_DEFUN([AMANDA_CHECK_GLIB], [
-    # search for pkg-config, which the glib configuration uses, adding a few
-    # system-specific search paths.
-    AC_PATH_PROG(PKG_CONFIG, pkg-config, [], $LOCSYSPATH:/opt/csw/bin:/usr/local/bin:/opt/local/bin)
-
-    case "$target" in
-       sparc-sun-solaris2.8) # Solaris 8
-           # give the linker a runtime search path; pkg-config doesn't supply this.
-           # Users could also specify this with LD_LIBRARY_PATH to both ./configure
-           # and make.  Adding this support here makes straight './configure; make'
-           # "just work" on Solaris 8
-           if test -n "$PKG_CONFIG"; then
-               glib_R_flag=`$PKG_CONFIG glib-2.0 --libs-only-L 2>/dev/null | sed -e 's/-L/-R/g'`
-               LDFLAGS="$LDFLAGS $glib_R_flag"
-           fi
-           ;;
-    esac
+    AC_ARG_VAR(GLIB_CFLAGS, [CFLAGS to build with glib; disables use of pkg-config])
+    AC_ARG_VAR(GLIB_LIBS, [libraries to build with glib; disables use of pkg-config])
+    AC_ARG_VAR(GLIB_GENMARSHAL, [genmarshal binary to use with glib; disables use of pkg-config])
+    AC_ARG_VAR(GOBJECT_QUERY, [gobject_query binary to use with glib; disables use of pkg-config])
+    AC_ARG_VAR(GLIB_MKENUMS, [mkenums binary to use with glib; disables use of pkg-config])
+
+    # if any of the precious variables are set, disable the pkg-config run
+    explicit_glib=no
+    test x"$GLIB_CFLAGS" = x"" || explicit_glib=yes
+    test x"$GLIB_LIBS" = x"" || explicit_glib=yes
+    test x"$GLIB_GENMARSHAL" = x"" || explicit_glib=yes
+    test x"$GOBJECT_QUERY" = x"" || explicit_glib=yes
+    test x"$GLIB_MKENUMS" = x"" || explicit_glib=yes
+
+    if test x"$explicit_glib" = x"no"; then
+       # search for pkg-config, which the glib configuration uses, adding a few
+       # system-specific search paths.
+       AC_PATH_PROG(PKG_CONFIG, pkg-config, [], $LOCSYSPATH:/opt/csw/bin:/usr/local/bin:/opt/local/bin)
+
+       case "$host" in
+           sparc-sun-solaris2.8) # Solaris 8
+               # give the linker a runtime search path; pkg-config doesn't supply this.
+               # Users could also specify this with LD_LIBRARY_PATH to both ./configure
+               # and make.  Adding this support here makes straight './configure; make'
+               # "just work" on Solaris 8
+               if test -n "$PKG_CONFIG"; then
+                   glib_R_flag=`$PKG_CONFIG glib-2.0 --libs-only-L 2>/dev/null | sed -e 's/-L/-R/g'`
+                   LDFLAGS="$LDFLAGS $glib_R_flag"
+               fi
+               ;;
+       esac
+
+       AM_PATH_GLIB_2_0(2.2.0,,[
+           AC_MSG_ERROR(glib not found or too old; See http://wiki.zmanda.com/index.php/Installation for help)
+       ], gmodule gobject gthread)
+    else
+       AC_MSG_ERROR(explicit glib)
+    fi
 
-    AM_PATH_GLIB_2_0(2.2.0,,[
-       AC_MSG_ERROR(glib not found or too old; See http://wiki.zmanda.com/index.php/Installation for help)
-    ], gmodule gobject gthread)
-    AMANDA_ADD_CFLAGS($GLIB_CFLAGS)
-    AMANDA_ADD_CPPFLAGS($GLIB_CPPFLAGS)
+    # GLIB_CPPFLAGS is not set by autoconf, yet GLIB_CFLAGS contains what GLIB_CPPFLAGS should contain.
+    AMANDA_ADD_CPPFLAGS($GLIB_CFLAGS)
     AMANDA_ADD_LIBS($GLIB_LIBS)
 ])