summaryrefslogtreecommitdiff
path: root/config_host
diff options
context:
space:
mode:
authorMichael Weghorn <m.weghorn@posteo.de>2024-06-11 07:31:07 +0200
committerMichael Weghorn <m.weghorn@posteo.de>2024-06-13 09:23:38 +0200
commite702e27795bc32de9c68ed05fd4f3476b8d1ebc2 (patch)
tree9ac95dfb83dff1e290357af374fdf8c3648802f6 /config_host
parente74c94c1a6ae47eb507eec610e231ebb6b02a8be (diff)
Handle CPDB lib in configure/build system
In preparation of Biswadeep's upcoming GSoC changes (see [1]) to update the CPDB (Common Print Dialog Backends) support to the latest version and use the CPDB C API, add a corresponding `--enable-cpdb` autogen option (disabled by default). When CPDB is enabled, check for the cpdb-frontend library, define `ENABLE_CPDB` and set the compiler and linker flags for building the `CPDManager` (in vcl/unx/generic/printer/cpdmgr.cxx). Add checks for existing code using `CPDBManager`, so it only gets used when when CPDB is actually enabled. While the cpdb-frontend library is currently not actually used in `CPDManager` yet (as the previous approach tried to use some DBUs API directly), it will be in Biswadeep's upcoming changes. With this commit in place, an `--enable-cpdb` build works with this additional local test change in place to actually make use of the library: diff --git a/vcl/unx/generic/printer/cpdmgr.cxx b/vcl/unx/generic/printer/cpdmgr.cxx index 7dc17cede353..0c3b71d519db 100644 --- a/vcl/unx/generic/printer/cpdmgr.cxx +++ b/vcl/unx/generic/printer/cpdmgr.cxx @@ -22,6 +22,8 @@ #include <cstddef> #include <unistd.h> +#include <cpdb/cpdb-frontend.h> + #include <unx/cpdmgr.hxx> #include <osl/file.h> @@ -259,6 +261,7 @@ CPDManager* CPDManager::tryLoadCPD() } } #endif + cpdbPrintFile(nullptr, nullptr); return pManager; } [1] https://lists.freedesktop.org/archives/libreoffice/2024-May/091911.html Change-Id: Ifc50d2cd6496346bea55c73cb703e3c2d3eb44b8 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/168656 Tested-by: Jenkins Reviewed-by: Michael Weghorn <m.weghorn@posteo.de> Reviewed-by: Biswadeep Purkayastha <bpdps95@hotmail.com>
Diffstat (limited to 'config_host')
-rw-r--r--config_host/config_cpdb.h.in14
1 files changed, 14 insertions, 0 deletions
diff --git a/config_host/config_cpdb.h.in b/config_host/config_cpdb.h.in
new file mode 100644
index 000000000000..9a3aca17452b
--- /dev/null
+++ b/config_host/config_cpdb.h.in
@@ -0,0 +1,14 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ */
+
+#pragma once
+
+#define ENABLE_CPDB 0
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */