db: remove pointless documentation

Message ID 1478108908-9140-1-git-send-email-ross.burton@intel.com
State Accepted
Commit 89e9d8fc7f99fb6346dc035e51abbc942011d9b5
Headers show

Commit Message

Ross Burton Nov. 2, 2016, 5:48 p.m.
db-doc has an installed footprint of 94MB, but 60MB of that is the documentation
for the Java and C# bindings which are not part of this recipe.  Remove them and
the for-print PDF manuals to massively reduce the footprint of db-doc.

Also improve the fix for the documentation install path, and put the
documentation under ${docdir}/db instead of just ${docdir} (which is
/usr/share/doc by default).

Signed-off-by: Ross Burton <ross.burton@intel.com>

---
 meta/recipes-support/db/db_6.0.35.bb | 14 ++++++--------
 1 file changed, 6 insertions(+), 8 deletions(-)

-- 
2.8.1

-- 
_______________________________________________
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core

Comments

Christopher Larson Nov. 2, 2016, 11:27 p.m. | #1
On Wed, Nov 2, 2016 at 10:48 AM, Ross Burton <ross.burton@intel.com> wrote:

> db-doc has an installed footprint of 94MB, but 60MB of that is the

> documentation

> for the Java and C# bindings which are not part of this recipe.  Remove

> them and

> the for-print PDF manuals to massively reduce the footprint of db-doc.

>

> Also improve the fix for the documentation install path, and put the

> documentation under ${docdir}/db instead of just ${docdir} (which is

> /usr/share/doc by default).

>

> Signed-off-by: Ross Burton <ross.burton@intel.com>

>


Hmm, we should probably think about adding a QA check for files being
dropped into the root of ${docdir}. It’s not the first recipe to have such
a bug (ffmpeg was doing it too).
-- 
Christopher Larson
clarson at kergoth dot com
Founder - BitBake, OpenEmbedded, OpenZaurus
Maintainer - Tslib
Senior Software Engineer, Mentor Graphics
-- 
_______________________________________________
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core

Patch

diff --git a/meta/recipes-support/db/db_6.0.35.bb b/meta/recipes-support/db/db_6.0.35.bb
index 32afbe8..f60edf9 100644
--- a/meta/recipes-support/db/db_6.0.35.bb
+++ b/meta/recipes-support/db/db_6.0.35.bb
@@ -87,7 +87,7 @@  MUTEX_arm = "${ARM_MUTEX}"
 MUTEX_armeb = "${ARM_MUTEX}"
 EXTRA_OECONF += "${MUTEX}"
 EXTRA_OEMAKE_append_class-target = " LIBTOOL=${STAGING_BINDIR_CROSS}/${HOST_SYS}-libtool"
-EXTRA_OEMAKE += "STRIP=true"
+EXTRA_OEMAKE += "STRIP=true docdir=${docdir}/db/"
 
 do_compile_prepend() {
 	# Stop libtool adding RPATHs
@@ -101,14 +101,12 @@  do_install_append() {
 	ln -s db60/db.h ${D}/${includedir}/db.h
 	ln -s db60/db_cxx.h ${D}/${includedir}/db_cxx.h
 
-	# The docs end up in /usr/docs - not right.
-	if test -d "${D}/${prefix}/docs"
-	then
-		mkdir -p "${D}/${datadir}"
-		test ! -d "${D}/${docdir}" || rm -rf "${D}/${docdir}"
-		mv "${D}/${prefix}/docs" "${D}/${docdir}"
-	fi
+	# Prune the documentation to remove large (PDF) or pointless (Java) files.
+	find ${D}${docdir} -name *.pdf -delete
+	rm -rf ${D}${docdir}/db/java
+	rm -rf ${D}${docdir}/db/csharp
 
+	# The makefiles use cp -p, so we need to chmod until that is fixed.
 	chown -R root:root ${D}
 }