diff -uraN cups/scheduler/client.c cups-new/scheduler/client.c
--- cups/scheduler/client.c	2012-05-25 15:28:49.000000000 +0200
+++ cups-new/scheduler/client.c	2012-08-04 20:13:17.082220961 +0200
@@ -4021,7 +4021,7 @@
	    !strncmp(host, "[::1]:", 6));
   }

-#ifdef HAVE_DNSSD
+#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI)
  /*
   * Check if the hostname is something.local (Bonjour); if so, allow it.
   */
@@ -4040,7 +4040,7 @@
	      !_cups_strcasecmp(end, ".local.") ||
	      !_cups_strncasecmp(end, ".local.:", 8)))
     return (1);
-#endif /* HAVE_DNSSD */
+#endif /* HAVE_DNSSD || HAVE_AVAHI */

  /*
   * Check if the hostname is an IP address...
@@ -4101,7 +4101,7 @@
     }
   }

-#ifdef HAVE_DNSSD
+#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI)
   for (a = (cupsd_alias_t *)cupsArrayFirst(DNSSDAlias);
        a;
        a = (cupsd_alias_t *)cupsArrayNext(DNSSDAlias))
@@ -4126,7 +4126,7 @@
         return (1);
     }
   }
-#endif /* HAVE_DNSSD */
+#endif /* HAVE_DNSSD || HAVE_AVAHI */

  /*
   * Check for interface hostname matches...
diff -uraN cups/scheduler/conf.c cups-new/scheduler/conf.c
--- cups/scheduler/conf.c	2012-05-25 15:28:49.000000000 +0200
+++ cups-new/scheduler/conf.c	2012-08-04 20:15:49.830978405 +0200
@@ -89,9 +89,9 @@
 {
   { "AccessLog",		&AccessLog,		CUPSD_VARTYPE_STRING },
   { "AutoPurgeJobs", 		&JobAutoPurge,		CUPSD_VARTYPE_BOOLEAN },
-#ifdef HAVE_DNSSD
+#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI)
   { "BrowseDNSSDSubTypes",	&DNSSDSubTypes,		CUPSD_VARTYPE_STRING },
-#endif /* HAVE_DNSSD */
+#endif /* HAVE_DNSSD || HAVE_AVAHI */
   { "BrowseWebIF",		&BrowseWebIF,		CUPSD_VARTYPE_BOOLEAN },
   { "Browsing",			&Browsing,		CUPSD_VARTYPE_BOOLEAN },
   { "CacheDir",			&CacheDir,		CUPSD_VARTYPE_STRING },
@@ -735,9 +735,9 @@
   Browsing                 = CUPS_DEFAULT_BROWSING;
   DefaultShared            = CUPS_DEFAULT_DEFAULT_SHARED;

-#ifdef HAVE_DNSSD
+#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI)
   cupsdSetString(&DNSSDSubTypes, "_cups,_print");
-#endif /* HAVE_DNSSD */
+#endif /* HAVE_DNSSD || HAVE_AVAHI */

   cupsdSetString(&LPDConfigFile, CUPS_DEFAULT_LPD_CONFIG_FILE);
   cupsdSetString(&SMBConfigFile, CUPS_DEFAULT_SMB_CONFIG_FILE);
diff -uraN cups/scheduler/ipp.c cups-new/scheduler/ipp.c
--- cups/scheduler/ipp.c	2012-05-25 15:28:49.000000000 +0200
+++ cups-new/scheduler/ipp.c	2012-08-04 20:13:17.086220978 +0200
@@ -4813,7 +4813,7 @@
     ippAddDate(con->response, IPP_TAG_PRINTER, "printer-current-time",
                ippTimeToDate(curtime));

-#ifdef HAVE_DNSSD
+#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI)
   if (!ra || cupsArrayFind(ra, "printer-dns-sd-name"))
   {
     if (printer->reg_name)
@@ -4823,7 +4823,7 @@
       ippAddInteger(con->response, IPP_TAG_PRINTER, IPP_TAG_NOVALUE,
                    "printer-dns-sd-name", 0);
   }
-#endif /* HAVE_DNSSD */
+#endif /* HAVE_DNSSD || HAVE_AVAHI */

   if (!ra || cupsArrayFind(ra, "printer-error-policy"))
     ippAddString(con->response, IPP_TAG_PRINTER, IPP_TAG_NAME,
diff -uraN cups/scheduler/main.c cups-new/scheduler/main.c
--- cups/scheduler/main.c	2012-05-25 15:28:49.000000000 +0200
+++ cups-new/scheduler/main.c	2012-08-04 20:13:17.090221001 +0200
@@ -781,9 +781,9 @@
       * Got an error from select!
       */

-#ifdef HAVE_DNSSD
+#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI)
       cupsd_printer_t	*p;		/* Current printer */
-#endif /* HAVE_DNSSD */
+#endif /* HAVE_DNSSD || HAVE_AVAHI */


       if (errno == EINTR)		/* Just interrupted by a signal */
@@ -824,13 +824,13 @@
			job->print_pipes[0], job->print_pipes[1],
			job->back_pipes[0], job->back_pipes[1]);

-#ifdef HAVE_DNSSD
+#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI)
       for (p = (cupsd_printer_t *)cupsArrayFirst(Printers);
	   p;
	   p = (cupsd_printer_t *)cupsArrayNext(Printers))
         cupsdLogMessage(CUPSD_LOG_EMERG, "printer[%s] reg_name=\"%s\"", p->name,
	                p->reg_name ? p->reg_name : "(null)");
-#endif /* HAVE_DNSSD */
+#endif /* HAVE_DNSSD || HAVE_AVAHI */

       break;
     }
