ccache: add packageconfig docs option

Before, ccache's configure stage built HTML documentation and man pages
depending on if asciidoc is installed. This patch makes it configurable.

Pass the new cmake option ENABLE_DOCUMENTATION along and add the
asciidoc dependency if necessary.

This fixes an issue when ccache's configure stage found asciidoc/a2x on
the system outside of the sysroot (e.g. installed via 'apt install
asciidoc'). ccache would then decide to build docs and manual pages, but
would fail during compilation: the system's a2x could not find the
system's asciidoc because it did not reside in the set PATH.

By enabling/disabling docs/man page generation explicitly and adding
asciidoc to DEPENDS as necessary, this is no longer an issue.

[ This corresponds to commit b0aedd74 and parts of commit 1eedc5f8,
  with the patch replaced by the upstream version. ]

(From OE-Core rev: 3ca3c890834152597d8440b77e3d2767ca72c7a6)

Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Bastian Krause
2021-05-12 12:22:39 +02:00
committed by Richard Purdie
parent 1170b40cd2
commit 70ef9ded89
2 changed files with 40 additions and 0 deletions

View File

@@ -0,0 +1,36 @@
From 857d74f2c5fff79589e9b35cd405bf8ffffafb54 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Petr=20=C5=A0tetiar?= <ynezz@true.cz>
Date: Mon, 3 May 2021 18:44:53 +0200
Subject: [PATCH] CMake: make build of documentation optional (#842)
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
So we don't need to support corner cases as for example one fixed in
commit f6202db308e3 ("doc/MANUAL.adoc: Don't use non-ASCII quotes
(#761)") when the documentation is actually not needed at all as ccache
is used as a build tool only.
Signed-off-by: Petr Štetiar <ynezz@true.cz>
Upstream-Status: Backport [b96ca763c453a602b5516b4b9ca5e2829528e318]
Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
---
CMakeLists.txt | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 40e21a57..151cc5f7 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -131,7 +131,10 @@ target_link_libraries(ccache PRIVATE standard_settings standard_warnings ccache_
#
# Documentation
#
-add_subdirectory(doc)
+option(ENABLE_DOCUMENTATION "Enable documentation" ON)
+if(ENABLE_DOCUMENTATION)
+ add_subdirectory(doc)
+endif()
#
# Installation

View File

@@ -12,10 +12,14 @@ LIC_FILES_CHKSUM = "file://LICENSE.adoc;md5=28afb89f649f309e7ac1aab554564637"
DEPENDS = "zstd"
SRC_URI = "https://github.com/ccache/ccache/releases/download/v${PV}/${BP}.tar.gz"
SRC_URI += "file://0001-CMake-make-build-of-documentation-optional-842.patch"
SRC_URI[sha256sum] = "dbf139ff32031b54cb47f2d7983269f328df14b5a427882f89f7721e5c411b7e"
UPSTREAM_CHECK_URI = "https://github.com/ccache/ccache/releases/"
PACKAGECONFIG[docs] = "-DENABLE_DOCUMENTATION=ON,-DENABLE_DOCUMENTATION=OFF,asciidoc"
inherit cmake
PATCHTOOL = "patch"