diff options
author | Robert Yang <liezhi.yang@windriver.com> | 2014-03-18 15:54:34 +0800 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2014-03-19 14:42:43 +0000 |
commit | a0c83577cc108aaae8632fe44f0c1bd46995b264 (patch) | |
tree | 3f4b257f14d4381fe2da68994a431e8e5d9a9303 /meta/recipes-devtools/docbook-dsssl-stylesheets | |
parent | 779f5936f18c1c974cde477c68e775e95668cb08 (diff) | |
download | poky-a0c83577cc108aaae8632fe44f0c1bd46995b264.tar.gz |
sgml-common-native: fix the generation of sgml-docbook.cat
There would be build errors if multiple builds use the same SSTATE_DIR,
and the builds use the different versions' docbook-sgml-dtd-native, the
problems are: we have multiple versions docbook-sgml-dtd-native:
docbook-sgml-dtd-3.1-native
docbook-sgml-dtd-4.1-native
docbook-sgml-dtd-4.5-native
And they depend on sgml-common-native which installs the file
sysroot/etc/sgml/sgml-docbook.cat, this file is also included in the
sstate cache file (.tar.gz), but both the 3 versions
docbook-sgml-dtd-native may update the
sysroot/ect/sgml/sgml-docbook.cat, and it is a hardlink to
SYSROOT_DESTDIR/etc/sgml/sgml-docbook.cat, so the sgml-docbook.cat in
the sstate cache file may contain the
docbook-sgml-dtd-<version>-native's info, and there would be errors when
we mirror the sstate-cache to another build which uses a different
version.
Now we exclude the sgml-docbook.cat from the ${D}, and generate
sysroot/ect/sgml/sgml-docbook.cat dynamically will fix the problem, both
the sgml-common-native and docbook-sgml-dtd-<version>-native can update
it it correctly.
The similar to docbook-dsssl-stylesheets-native and openjade-native.
[YOCTO #5994]
(From OE-Core rev: 50683df81e1605ad7c03bc633aa55da7e97cfe62)
Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-devtools/docbook-dsssl-stylesheets')
-rw-r--r-- | meta/recipes-devtools/docbook-dsssl-stylesheets/docbook-dsssl-stylesheets-native_1.79.bb | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/meta/recipes-devtools/docbook-dsssl-stylesheets/docbook-dsssl-stylesheets-native_1.79.bb b/meta/recipes-devtools/docbook-dsssl-stylesheets/docbook-dsssl-stylesheets-native_1.79.bb index d5f5381d72..461b48f4ca 100644 --- a/meta/recipes-devtools/docbook-dsssl-stylesheets/docbook-dsssl-stylesheets-native_1.79.bb +++ b/meta/recipes-devtools/docbook-dsssl-stylesheets/docbook-dsssl-stylesheets-native_1.79.bb | |||
@@ -19,6 +19,7 @@ inherit native | |||
19 | 19 | ||
20 | SSTATEPOSTINSTFUNCS += "docbook_dsssl_stylesheets_sstate_postinst" | 20 | SSTATEPOSTINSTFUNCS += "docbook_dsssl_stylesheets_sstate_postinst" |
21 | SYSROOT_PREPROCESS_FUNCS += "docbook_dsssl_sysroot_preprocess" | 21 | SYSROOT_PREPROCESS_FUNCS += "docbook_dsssl_sysroot_preprocess" |
22 | CLEANFUNCS += "docbook_dsssl_stylesheets_sstate_clean" | ||
22 | 23 | ||
23 | 24 | ||
24 | do_install () { | 25 | do_install () { |
@@ -57,3 +58,11 @@ docbook_dsssl_sysroot_preprocess () { | |||
57 | install -m 755 ${STAGING_BINDIR_NATIVE}/install-catalog ${SYSROOT_DESTDIR}${bindir_crossscripts}/install-catalog-docbook-dsssl | 58 | install -m 755 ${STAGING_BINDIR_NATIVE}/install-catalog ${SYSROOT_DESTDIR}${bindir_crossscripts}/install-catalog-docbook-dsssl |
58 | } | 59 | } |
59 | 60 | ||
61 | docbook_dsssl_stylesheets_sstate_clean () { | ||
62 | # Ensure that the catalog file sgml-docbook.cat is properly | ||
63 | # updated when the package is removed from sstate cache. | ||
64 | files="${sysconfdir}/sgml/sgml-docbook.bak ${sysconfdir}/sgml/sgml-docbook.cat" | ||
65 | for f in $files; do | ||
66 | [ ! -f $f ] || sed -i '/\/sgml\/dsssl-docbook-stylesheets.cat/d' $f | ||
67 | done | ||
68 | } | ||