Hi guys,
please see the patch in the attachment.

I finaly got a Gentoo user to get annoyed enough by the hard requirement of 
cups. The patch itself seems pretty straight-forward and for the basic testing 
on runtime I didn't see anything broken.

Please let me know if you think that something might break or if it is ok to 
commit.

Cheers

Tom
>From 48a8cece9fd85230b389996aa4efc414f6ff43f3 Mon Sep 17 00:00:00 2001
From: Dave Flogeras <dfloge...@gmail.com>
Date: Mon, 7 May 2012 10:49:41 +0200
Subject: [PATCH] Enable configure switch for cups

This allows us not to have cups during the build time of libreoffice.

Change-Id: I2c79b5e59a514fd6a0f9adda40289e2e26af400c

Signed-off-by: Tomas Chvatal <tchva...@suse.cz>
---
 configure.in                        |    8 ++++++++
 vcl/unx/generic/printer/cupsmgr.cxx |   22 ++++++++++++++++++----
 2 files changed, 26 insertions(+), 4 deletions(-)

diff --git a/configure.in b/configure.in
index 43a6544..8b5a74e 100644
--- a/configure.in
+++ b/configure.in
@@ -842,6 +842,11 @@ AC_ARG_ENABLE(nsplugin,
         [Do not build nsplugin extension for browser embedding.])
 )
 
+AC_ARG_ENABLE(cups,
+    AS_HELP_STRING([--disable-cups],
+        [Do not build cups and thus disable printing support.])
+)
+
 AC_ARG_ENABLE(ccache,
     AS_HELP_STRING([--disable-ccache],
         [Do not try to use ccache automatically.
@@ -3597,6 +3602,9 @@ fi
 
 dnl check for cups support
 dnl ===================================================================
+if test "$enable_cups" = "no"; then
+    test_cups=no
+fi
 if test "$test_cups" = "yes"; then
     AC_MSG_CHECKING([whether cups support is present])
     AC_CHECK_LIB([cups], [cupsPrintFiles], [:])
diff --git a/vcl/unx/generic/printer/cupsmgr.cxx b/vcl/unx/generic/printer/cupsmgr.cxx
index a0e020a..ed976bc 100644
--- a/vcl/unx/generic/printer/cupsmgr.cxx
+++ b/vcl/unx/generic/printer/cupsmgr.cxx
@@ -26,6 +26,22 @@
  *
  ************************************************************************/
 
+#include "cupsmgr.hxx"
+#include "rtl/ustrbuf.hxx"
+
+#ifndef HAVE_CUPS_H // disable printing support
+
+namespace psp {
+  CUPSManager* CUPSManager::tryLoadCUPS() {
+    // Don't load anything, the printerInfoManager will take care of this
+    return 0x0;
+  }
+  const PPDParser* CUPSManager::createCUPSParser( const ::rtl::OUString& rPrinter ) {
+    return 0x0;
+  }
+}
+
+#else // HAVE_CUPS_H
 
 #include <cups/cups.h>
 #include <cups/http.h>
@@ -34,14 +50,10 @@
 
 #include <unistd.h>
 
-#include "cupsmgr.hxx"
-
 #include "osl/thread.h"
 #include "osl/diagnose.h"
 #include "osl/conditn.hxx"
 
-#include "rtl/ustrbuf.hxx"
-
 #include <algorithm>
 #include <setjmp.h>
 #include <signal.h>
@@ -1177,4 +1189,6 @@ const char* CUPSManager::authenticateUser( const char* /*pIn*/ )
     return pRet;
 }
 
+#endif // HAVE_CUPS_H
+
 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
-- 
1.7.3.4

Attachment: signature.asc
Description: This is a digitally signed message part.

_______________________________________________
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice

Reply via email to