Bug 5994

Summary: sgml-common-native: fix the generation of sgml-docbook.cat
Product: [Build System, Metadata & Runtime] OE-Core Reporter: Robert Yang <liezhi.yang>
Component: coreAssignee: Robert Yang <liezhi.yang>
Status: RESOLVED FIXED QA Contact:
Severity: normal    
Priority: Undecided CC: meta.mr.watcher, meta.watcher
Version: 1.6   
Target Milestone: 1.6 M5   
Hardware: x86   
OS: Multiple   
Whiteboard:
OS type for building Yocto: --- Type of Regression: ---
Verified: Documentation change: No (bug/feature does not impact docs)

Description Robert Yang 2014-03-18 06:57:57 UTC
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.