make kdoctools(-native) build

Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>
This commit is contained in:
Andreas Müller
2014-11-28 14:08:17 +01:00
parent 9c66dc6fdf
commit 885e45eeeb
9 changed files with 208 additions and 32 deletions

View File

@@ -0,0 +1,45 @@
From d344f2342a76dcf0c6808428c5050fe09972ce85 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@googlemail.com>
Date: Fri, 28 Nov 2014 10:04:17 +0100
Subject: [PATCH 1/4] Add cmdline param to help find xsl
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Upstream-Status: Inappropriate [configuration]
Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>
---
CMakeLists.txt | 2 ++
cmake/FindDocBookXSL.cmake | 2 +-
2 files changed, 3 insertions(+), 1 deletion(-)
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 063ded0..425c688 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -18,6 +18,8 @@ ecm_setup_version(${KF5_VERSION} VARIABLE_PREFIX KDOCTOOLS
PACKAGE_VERSION_FILE "${CMAKE_CURRENT_BINARY_DIR}/KF5DocToolsConfigVersion.cmake"
SOVERSION 5)
+# OE specific
+set(OE_ROOT_PATH_PREFIX "" CACHE STRING "OE sysroot")
# Dependencies
set(REQUIRED_QT_VERSION 5.2.0)
find_package(Qt5Core ${REQUIRED_QT_VERSION} REQUIRED NO_MODULE)
diff --git a/cmake/FindDocBookXSL.cmake b/cmake/FindDocBookXSL.cmake
index 6429e90..0a72c22 100644
--- a/cmake/FindDocBookXSL.cmake
+++ b/cmake/FindDocBookXSL.cmake
@@ -33,7 +33,7 @@ find_path (DocBookXSL_DIR lib/lib.xsl
if (NOT DocBookXSL_DIR)
# hacks for systems that put the version in the stylesheet dirs
set (STYLESHEET_PATH_LIST)
- foreach (STYLESHEET_PREFIX_ITER ${CMAKE_SYSTEM_PREFIX_PATH})
+ foreach (STYLESHEET_PREFIX_ITER ${CMAKE_SYSTEM_PREFIX_PATH} ${OE_ROOT_PATH_PREFIX})
file(GLOB STYLESHEET_SUFFIX_ITER RELATIVE ${STYLESHEET_PREFIX_ITER}
${STYLESHEET_PREFIX_ITER}/share/xml/docbook/xsl-stylesheets-*
)
--
1.8.3.1

View File

@@ -1,28 +0,0 @@
From 3c01957dd2640c8175efe57ad517fe41e265b6ab Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@googlemail.com>
Date: Thu, 27 Nov 2014 18:11:20 +0100
Subject: [PATCH] debug
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>
---
cmake/FindDocBookXSL.cmake | 1 +
1 file changed, 1 insertion(+)
diff --git a/cmake/FindDocBookXSL.cmake b/cmake/FindDocBookXSL.cmake
index 6429e90..4d9c600 100644
--- a/cmake/FindDocBookXSL.cmake
+++ b/cmake/FindDocBookXSL.cmake
@@ -34,6 +34,7 @@ if (NOT DocBookXSL_DIR)
# hacks for systems that put the version in the stylesheet dirs
set (STYLESHEET_PATH_LIST)
foreach (STYLESHEET_PREFIX_ITER ${CMAKE_SYSTEM_PREFIX_PATH})
+ message(WARNING ${STYLESHEET_PREFIX_ITER})
file(GLOB STYLESHEET_SUFFIX_ITER RELATIVE ${STYLESHEET_PREFIX_ITER}
${STYLESHEET_PREFIX_ITER}/share/xml/docbook/xsl-stylesheets-*
)
--
1.8.3.1

View File

@@ -0,0 +1,42 @@
From d9a64eaffdca73e50b767f58c87f4299db85cd83 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@googlemail.com>
Date: Fri, 28 Nov 2014 10:28:02 +0100
Subject: [PATCH 2/4] build meinproc5 - it works fine in our environment
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Upstream-Status: Inappropriate [configuration]
Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>
---
src/CMakeLists.txt | 6 ------
1 file changed, 6 deletions(-)
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index 341ecf4..a440a1b 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -47,11 +47,6 @@ install(TARGETS KF5XsltKde EXPORT KF5DocToolsTargets ${KF5_INSTALL_TARGETS_DEFAU
########### next target ###############
-# The cross compiling parts are commented out on purpose. Alex
-if (CMAKE_CROSSCOMPILING)
-# set(IMPORT_MEINPROC5_EXECUTABLE "${KDE_HOST_TOOLS_PATH}/ImportMeinProc5Executable.cmake" CACHE FILEPATH "Point it to the export file of meinproc5 from a native build")
-# include(${IMPORT_MEINPROC5_EXECUTABLE})
-else ()
set_source_files_properties(xslt.cpp PROPERTIES COMPILE_FLAGS -DSIMPLE_XSLT )
option(MEINPROC_NO_KARCHIVE "Compile meinproc without KArchive dependency" OFF)
@@ -71,7 +66,6 @@ else ()
# # export this binary for cross-compilation
# export(TARGETS meinproc5 FILE ${CMAKE_BINARY_DIR}/ImportMeinProc4Executable.cmake)
-endif ()
########### customize includes for xslt ###############
# WARNING: this has severe limitations on the windows platform since the .xsl
--
1.8.3.1

View File

@@ -0,0 +1,31 @@
From 3ac01e01c683b2e993cfede0b97e517f939eca84 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@googlemail.com>
Date: Fri, 28 Nov 2014 13:42:22 +0100
Subject: [PATCH 3/4] install docbookl10nhelper - we need the native one for
cross compilation
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Upstream-Status: Inappropriate [configuration]
Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>
---
src/CMakeLists.txt | 1 +
1 file changed, 1 insertion(+)
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index a440a1b..89cb2f8 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -155,6 +155,7 @@ set( docbookl10nhelper_SRCS docbookl10nhelper.cpp )
add_executable( docbookl10nhelper ${docbookl10nhelper_SRCS} )
ecm_mark_nongui_executable( docbookl10nhelper )
target_link_libraries( docbookl10nhelper Qt5::Core )
+install(TARGETS docbookl10nhelper EXPORT KF5DocToolsTargets ${KF5_INSTALL_TARGETS_DEFAULT_ARGS})
add_custom_command( TARGET docbookl10nhelper POST_BUILD
COMMAND $<TARGET_FILE:docbookl10nhelper>
--
1.8.3.1

View File

@@ -0,0 +1,30 @@
From 760e76e826f935c72b4874f104773c954def532e Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@googlemail.com>
Date: Fri, 28 Nov 2014 12:21:41 +0100
Subject: [PATCH 4/4] don't build documentation
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Upstream-Status: Inappropriate [configuration]
Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>
---
CMakeLists.txt | 1 -
1 file changed, 1 deletion(-)
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 425c688..3adbd7e 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -81,7 +81,6 @@ if (IS_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/po" AND KF5I18n_FOUND)
kdoctools_install(po)
endif()
add_subdirectory(common)
-add_subdirectory(docs)
add_subdirectory(src)
add_subdirectory(autotests)
--
1.8.3.1

View File

@@ -0,0 +1,31 @@
From f312d35d8430656d6fdabafc37073864afe1fcda Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@googlemail.com>
Date: Fri, 28 Nov 2014 11:16:49 +0100
Subject: [PATCH 3/5] set meinproc5 executable so that it can be found for us
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Upstream-Status: Inappropriate [config]
Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>
---
KF5DocToolsMacros.cmake | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/KF5DocToolsMacros.cmake b/KF5DocToolsMacros.cmake
index f9c0d07..0df144e 100644
--- a/KF5DocToolsMacros.cmake
+++ b/KF5DocToolsMacros.cmake
@@ -60,7 +60,7 @@
#
set(KDOCTOOLS_SERIALIZE_TOOL "" CACHE STRING "Tool to serialize resource-intensive commands in parallel builds")
-set(KDOCTOOLS_MEINPROC_EXECUTABLE "KF5::meinproc5")
+set(KDOCTOOLS_MEINPROC_EXECUTABLE "meinproc5")
if(KDOCTOOLS_SERIALIZE_TOOL)
# parallel build with many meinproc invocations can consume a huge amount of memory
--
1.8.3.1

View File

@@ -4,5 +4,7 @@ inherit native
DEPENDS += "libxslt-native libxml2-native karchive-native ki18n-native"
# allarch packages do only install into host sysroot
OECMAKE_EXTRA_ROOT_PATH = "${STAGING_DIR}/${MACHINE}"
SRC_URI += " \
file://0003-install-docbookl10nhelper-we-need-the-native-one-for.patch \
file://0004-don-t-build-documentation.patch \
"

View File

@@ -4,6 +4,17 @@ DEPENDS += "${BPN}-native karchive ki18n libxslt libxml2"
inherit cmake-lib
SRC_URI += " \
file://0005-set-meinproc5-executable-so-that-it-can-be-found-for.patch \
"
do_configure_append() {
# use native docbookl10nhelper
sed -i 's:\./docbookl10nhelper:${STAGING_BINDIR_NATIVE}/docbookl10nhelper:' ${B}/src/CMakeFiles/docbookl10nhelper.dir/build.make
}
# cross libs / headers
CMAKE_HIDE_ERROR[1] = "KF5DocTools, -S${libdir}/lib, -S${STAGING_LIBDIR}/lib"
CMAKE_HIDE_ERROR[2] = "KF5DocTools, -S${includedir}, -S${STAGING_INCDIR}"
FILES_${PN}-dev += "${datadir}/kf5/kdoctools/customization"

View File

@@ -2,7 +2,7 @@ SUMMARY = "Documentation generation from docbook"
LICENSE = "MIT | LGPLv2.1"
LIC_FILES_CHKSUM = " \
file://COPYING.LIB;md5=2d5025d4aa3495befef8f17206a5b0a1 \
file://LICENSE;md5=2d5025d4aa3495befef8f17206a5b0a1 \
file://LICENSE;md5=d975629b732b61cb58f9595c6baa9379 \
"
inherit kde
@@ -10,7 +10,19 @@ inherit kde
# allarch recipes can go here
DEPENDS += "docbook-xml-dtd4 docbook-xsl-stylesheets"
# allarch packages do only install into machine sysroot
# for xml4
OECMAKE_EXTRA_ROOT_PATH = "${STAGING_DIR}/${MACHINE}"
# for xsl (we have to hardcode /usr - ${prefix} is aligned by native.bbclase
EXTRA_OECMAKE += "-DOE_ROOT_PATH_PREFIX=${STAGING_DIR}/${MACHINE}/usr"
SRCREV = "4c2f75cf0364e84f8bb962b0c9de791bba2b1a9f"
PV = "5.5.0"
SRC_URI += "file://0001-debug.patch"
SRC_URI += " \
file://0001-Add-cmdline-param-to-help-find-xsl.patch \
file://0002-build-meinproc5-it-works-fine-in-our-environment.patch \
"
EXTRA_OECMAKE += "-DCMAKE_AR:FILEPATH=${AR}"