printing: List Avahi printers
Show printers advertised by avahi on local network. CUPS backend now looks for _ipps._tcp and _ipp._tcp services offered by avahi. If it finds such a service (printer) it requests its attributes through IPP_GET_PRINTER_ATTRIBUTES ipp request and adds it to the list of printers. Such printer behaves like a remote printer then. If an avahi printer is a default printer then it is considered default by the backend only if there is no local or remote default printer. This functionality is enabled when building Gtk+ with CUPS 1.6 or later because it replaces browsing protocol removed in CUPS 1.6. https://bugzilla.gnome.org/show_bug.cgi?id=688956
This commit is contained in:
42
configure.ac
42
configure.ac
@ -1421,7 +1421,7 @@ else
|
||||
$CUPS_API_MAJOR -eq 1 -a $CUPS_API_MINOR -ge 6; then
|
||||
AC_DEFINE(HAVE_CUPS_API_1_6, 1,
|
||||
[Define to 1 if CUPS 1.6 API is available])
|
||||
|
||||
have_cups_api_1_6=yes
|
||||
fi
|
||||
|
||||
AC_SUBST(CUPS_API_MAJOR)
|
||||
@ -1452,6 +1452,45 @@ else
|
||||
fi
|
||||
fi
|
||||
|
||||
# Check for Avahi flags
|
||||
AC_ARG_ENABLE(avahi-browsing,
|
||||
[AS_HELP_STRING([--disable-avahi-browsing],
|
||||
[disable avahi browsing of printers])],,
|
||||
[enable_avahi_browsing=auto])
|
||||
|
||||
have_avahi_browsing=no
|
||||
if test "x$enable_avahi_browsing" != "xno" -a \
|
||||
"x$have_cups_api_1_6" = "xyes"; then
|
||||
AC_MSG_CHECKING([avahi-gobject])
|
||||
|
||||
if $PKG_CONFIG --exists avahi-gobject ; then
|
||||
AVAHI_CFLAGS=`$PKG_CONFIG --cflags avahi-gobject`
|
||||
AC_SUBST(AVAHI_CFLAGS)
|
||||
AVAHI_LIBS=`$PKG_CONFIG --libs avahi-gobject`
|
||||
AC_SUBST(AVAHI_LIBS)
|
||||
have_avahi_gobject=yes
|
||||
AC_MSG_RESULT([yes])
|
||||
else
|
||||
AC_MSG_RESULT([no])
|
||||
fi
|
||||
|
||||
if test "x$have_avahi_gobject" = "xyes" ; then
|
||||
AC_DEFINE([HAVE_AVAHI_BROWSING], [1], [Define to 1 if avahi-gobject available])
|
||||
have_avahi_browsing=yes
|
||||
else
|
||||
AC_MSG_ERROR([
|
||||
*** avahi-gobject not found. avahi-gobject is required to build GTK+ with support
|
||||
*** for avahi browsed printers when using CUPS 1.6.
|
||||
])
|
||||
fi
|
||||
else
|
||||
if test "x$enable_avahi_browsing" = "xyes"; then
|
||||
AC_MSG_ERROR([
|
||||
*** Avahi browsing support requested but CUPS 1.6 not found.
|
||||
])
|
||||
fi
|
||||
fi
|
||||
|
||||
# Checks to see if we should compile with PAPI backend for GTK+
|
||||
#
|
||||
|
||||
@ -1828,6 +1867,7 @@ echo " Dynamic modules: $build_dynamic_modules"
|
||||
echo " Included immodules: $included_immodules"
|
||||
echo " PackageKit support: $build_packagekit"
|
||||
echo " colord support: $have_colord"
|
||||
echo " Avahi browsing: $have_avahi_browsing"
|
||||
echo " Introspection: $found_introspection"
|
||||
echo " Debugging: $enable_debug"
|
||||
echo " Documentation: $enable_gtk_doc"
|
||||
|
||||
Reference in New Issue
Block a user