]> code.ossystems Code Review - openembedded-core.git/commitdiff
man-pages/shadow: resolve man pages confliction
authorHongxu Jia <hongxu.jia@windriver.com>
Wed, 29 Oct 2014 05:54:49 +0000 (13:54 +0800)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Wed, 31 Dec 2014 10:17:12 +0000 (10:17 +0000)
Invoke smart/rpm to install man-pages and shadow-doc, there
is a build failure:
...
|error: file /usr/share/man/man5/passwd.5 from install of
shadow-doc-4.2.1-r0.0.core2_64 conflicts with file from
package man-pages-3.70-r0.0.core2_64
|error: file /usr/share/man/man3/getspnam.3 from install of
shadow-doc-4.2.1-r0.0.core2_64 conflicts with file from
package man-pages-3.70-r0.0.core2_64
...
Use alternatives mechanism to fix it.

As README in man-pages said: "Note that sometimes these
pages are duplicates of pages also distributed in other
packages. Be careful not to overwrite more up-to-date
versions. So we set man-pages with lower priority.

[YOCTO #6769]

(From OE-Core rev: 32357da67fa640bc0c14048af1d7b8dbbe8e775e)

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
meta/recipes-extended/man-pages/man-pages_3.71.bb
meta/recipes-extended/shadow/shadow.inc

index 759bad540c99657b037219ee167350c7974e2e12..225b2567cb7acfd7281232658c0347ff9e891652 100644 (file)
@@ -27,3 +27,10 @@ do_install() {
 # Only deliveres man-pages so FILES_${PN} gets everything
 FILES_${PN}-doc = ""
 FILES_${PN} = "${mandir}/*"
+
+inherit update-alternatives
+
+ALTERNATIVE_PRIORITY = "100"
+ALTERNATIVE_${PN} = "passwd.5 getspnam.3"
+ALTERNATIVE_LINK_NAME[passwd.5] = "${mandir}/man5/passwd.5"
+ALTERNATIVE_LINK_NAME[getspnam.3] = "${mandir}/man3/getspnam.3"
index 131e541d29f61946b0e9a308e4ab30255b6d633e..14c7281f53083ffb095fcd5b5e93cd3553a2d360 100644 (file)
@@ -159,6 +159,10 @@ ALTERNATIVE_LINK_NAME[vipw] = "${base_sbindir}/vipw"
 ALTERNATIVE_LINK_NAME[vigr] = "${base_sbindir}/vigr"
 ALTERNATIVE_LINK_NAME[su] = "${base_bindir}/su"
 
+ALTERNATIVE_${PN}-doc = "passwd.5 getspnam.3"
+ALTERNATIVE_LINK_NAME[passwd.5] = "${mandir}/man5/passwd.5"
+ALTERNATIVE_LINK_NAME[getspnam.3] = "${mandir}/man3/getspnam.3"
+
 pkg_postinst_${PN} () {
        if [ "x$D" != "x" ]; then
          rootarg="--root $D"