]> git.ipfire.org Git - thirdparty/cups.git/commitdiff
Fix build errors on Linux for new journald logging.
authormsweet <msweet@a1ca3aef-8c08-0410-bb20-df032aa958be>
Thu, 4 Jun 2015 18:00:31 +0000 (18:00 +0000)
committermsweet <msweet@a1ca3aef-8c08-0410-bb20-df032aa958be>
Thu, 4 Jun 2015 18:00:31 +0000 (18:00 +0000)
git-svn-id: svn+ssh://src.apple.com/svn/cups/cups.org/trunk@12691 a1ca3aef-8c08-0410-bb20-df032aa958be

config-scripts/cups-common.m4
config-scripts/cups-startup.m4
scheduler/log.c

index 62190b876a02da096f0822cd4e4758b1abe0ff8d..adedefe3bbbfe0feb4c51315fa06294b9a620647 100644 (file)
@@ -138,7 +138,6 @@ AC_CHECK_HEADER(sys/ioctl.h,AC_DEFINE(HAVE_SYS_IOCTL_H))
 AC_CHECK_HEADER(sys/param.h,AC_DEFINE(HAVE_SYS_PARAM_H))
 AC_CHECK_HEADER(sys/ucred.h,AC_DEFINE(HAVE_SYS_UCRED_H))
 AC_CHECK_HEADER(asl.h,AC_DEFINE(HAVE_ASL_H))
-AC_CHECK_HEADER(systemd/sd-journal.h,AC_DEFINE(HAVE_SYSTEMD_SD_JOURNAL_H))
 
 dnl Checks for iconv.h and iconv_open
 AC_CHECK_HEADER(iconv.h,
index e6aaf6a4042aa9f942b184013ed615bb2c87fa22..8089d0859713f41c5fd878d833df33f3eafebb2d 100644 (file)
@@ -56,11 +56,11 @@ if test x$enable_systemd != xno; then
                        AC_MSG_ERROR(Need pkg-config to enable systemd support.)
                 fi
         else
-               AC_MSG_CHECKING(for libsystemd)
-                if $PKGCONFIG --exists libsystemd; then
+               AC_MSG_CHECKING(for libsystemd-daemon)
+                if $PKGCONFIG --exists libsystemd-daemon; then
                         AC_MSG_RESULT(yes)
-                        ONDEMANDFLAGS=`$PKGCONFIG --cflags libsystemd`
-                        ONDEMANDLIBS=`$PKGCONFIG --libs libsystemd`
+                        ONDEMANDFLAGS=`$PKGCONFIG --cflags libsystemd-daemon`
+                        ONDEMANDLIBS=`$PKGCONFIG --libs libsystemd-daemon`
                         AC_DEFINE(HAVE_SYSTEMD)
                        if test "x$SYSTEMD_DIR" = x; then
                                SYSTEMD_DIR="`$PKGCONFIG --variable=systemdsystemunitdir systemd`"
@@ -68,6 +68,15 @@ if test x$enable_systemd != xno; then
                 else
                         AC_MSG_RESULT(no)
                 fi
+               AC_MSG_CHECKING(for libsystemd-journal)
+                if $PKGCONFIG --exists libsystemd-journal; then
+                        AC_MSG_RESULT(yes)
+                        ONDEMANDFLAGS="$ONDEMANDFLAGS `$PKGCONFIG --cflags libsystemd-journal`"
+                        ONDEMANDLIBS="$ONDEMANDLIBS `$PKGCONFIG --libs libsystemd-journal`"
+                       AC_CHECK_HEADER(systemd/sd-journal.h,AC_DEFINE(HAVE_SYSTEMD_SD_JOURNAL_H))
+                else
+                        AC_MSG_RESULT(no)
+                fi
         fi
 fi
 
index ac229e380c190e72cc222c5125040b42f5c2dc55..cd4e3624f77423386be7672c1bb6d47dd2ff20c1 100644 (file)
@@ -632,7 +632,6 @@ cupsdLogJob(cupsd_job_t *job,               /* I - Job */
 #elif defined(HAVE_SYSTEMD_SD_JOURNAL_H)
   if (!strcmp(ErrorLog, "syslog"))
   {
-    char               completed[32];  /* job-impressions-completed string */
     static const char * const job_states[] =
     {                                  /* job-state strings */
       "Pending",
@@ -811,8 +810,11 @@ cupsdLogMessage(int        level,  /* I - Log level */
   }
 
 #elif defined(HAVE_SYSTEMD_SD_JOURNAL_H)
-  sd_journal_printv(log_levels[level], message, ap);
-
+  if (!strcmp(ErrorLog, "syslog"))
+  {
+    sd_journal_printv(log_levels[level], message, ap);
+    return (1);
+  }
 #endif /* HAVE_ASL_H */
 
  /*
@@ -1069,7 +1071,6 @@ cupsdLogPage(cupsd_job_t *job,            /* I - Job being printed */
 #elif defined(HAVE_SYSTEMD_SD_JOURNAL_H)
   if (!strcmp(ErrorLog, "syslog"))
   {
-    char               completed[32];  /* job-impressions-completed string */
     static const char * const job_states[] =
     {                                  /* job-state strings */
       "Pending",
@@ -1081,20 +1082,8 @@ cupsdLogPage(cupsd_job_t *job,           /* I - Job being printed */
       "Completed"
     };
 
-    va_start(ap, message);
-
-    do
-    {
-      va_copy(ap2, ap);
-      status = format_log_line(message, ap2);
-      va_end(ap2);
-    }
-    while (status == 0);
-
-    va_end(ap);
-
-    sd_journal_send("MESSAGE=%s", log_line,
-                    "PRIORITY=%i", log_levels[level],
+    sd_journal_send("MESSAGE=%s", buffer,
+                    "PRIORITY=%i", LOG_INFO,
                    PWG_Event"=JobStateChanged",
                    PWG_ServiceURI"=%s", job->printer->uri,
                    PWG_JobID"=%d", job->id,
@@ -1299,7 +1288,11 @@ cupsdLogRequest(cupsd_client_t *con,     /* I - Request to log */
   }
 
 #elif defined(HAVE_SYSTEMD_SD_JOURNAL_H)
-  sd_journal_print(LOG_INFO, "REQUEST %s - %s \"%s %s HTTP/%d.%d\" %d " CUPS_LLFMT " %s %s", con->http->hostname, con->username[0] != '\0' ? con->username : "-", states[con->operation], _httpEncodeURI(temp, con->uri, sizeof(temp)), con->http->version / 100, con->http->version % 100, code, CUPS_LLCAST con->bytes, con->request ? ippOpString(con->request->request.op.operation_id) : "-", con->response ? ippErrorString(con->response->request.status.status_code) : "-");
+  if (!strcmp(ErrorLog, "syslog"))
+  {
+    sd_journal_print(LOG_INFO, "REQUEST %s - %s \"%s %s HTTP/%d.%d\" %d " CUPS_LLFMT " %s %s", con->http->hostname, con->username[0] != '\0' ? con->username : "-", states[con->operation], _httpEncodeURI(temp, con->uri, sizeof(temp)), con->http->version / 100, con->http->version % 100, code, CUPS_LLCAST con->bytes, con->request ? ippOpString(con->request->request.op.operation_id) : "-", con->response ? ippErrorString(con->response->request.status.status_code) : "-");
+    return (1);
+  }
 
 #elif defined(HAVE_VSYSLOG)
  /*
@@ -1393,7 +1386,11 @@ cupsdWriteErrorLog(int        level,     /* I - Log level */
   }
 
 #elif defined(HAVE_SYSTEMD_SD_JOURNAL_H)
-  sd_journal_print(log_levels[level], "%s", message);
+  if (!strcmp(ErrorLog, "syslog"))
+  {
+    sd_journal_print(log_levels[level], "%s", message);
+    return (1);
+  }
 
 #elif defined(HAVE_VSYSLOG)
  /*