[OE-core] [PATCH] puzzles: fix Samba conflict, clean up recipe

Ross Burton ross.burton at intel.com
Tue Jun 21 19:01:50 UTC 2016


The impetus for this was that puzzles-extra contains /usr/bin/net which
conflicts with Samba.  Hopefully it's not controversial to say that Samba has
priority here, so rename the binary in this recipe to puzzles-net.

Also fix the out-of-tree build problems (just run mkfiles in ${S}) so
autotools-brokensep doesn't need to be used.

Modernise the anonymous Python block.

Use ${bindir} instead of ${prefix}/bin.

Use autotools do_install and append instead of brokenly replicating the install
logic.

Signed-off-by: Ross Burton <ross.burton at intel.com>
---
 meta/recipes-sato/puzzles/puzzles_git.bb | 29 ++++++++++++-----------------
 1 file changed, 12 insertions(+), 17 deletions(-)

diff --git a/meta/recipes-sato/puzzles/puzzles_git.bb b/meta/recipes-sato/puzzles/puzzles_git.bb
index a9daacd..2c755d8 100644
--- a/meta/recipes-sato/puzzles/puzzles_git.bb
+++ b/meta/recipes-sato/puzzles/puzzles_git.bb
@@ -21,7 +21,7 @@ PV = "0.0+git${SRCPV}"
 
 S = "${WORKDIR}/git"
 
-inherit autotools-brokensep distro_features_check pkgconfig
+inherit autotools distro_features_check pkgconfig
 
 PACKAGECONFIG ??= "gtk3"
 PACKAGECONFIG[gtk2] = "--with-gtk=2,,gtk+,"
@@ -32,46 +32,41 @@ FILES_${PN} = ""
 FILES_${PN}-extra = "${prefix}/bin ${datadir}/applications"
 
 python __anonymous () {
-    var = bb.data.expand("FILES_${PN}", d, 1)
-    data = d.getVar(var, True)
+    var = d.expand("FILES_${PN}")
+    data = d.getVar(var, False)
     for name in ("bridges", "fifteen", "inertia", "map", "samegame", "slant"):
-        data = data + " ${prefix}/bin/%s" % name
+        data = data + " ${bindir}/%s" % name
         data = data + " ${datadir}/applications/%s.desktop" % name
     d.setVar(var, data)
 }
 
-
 do_configure_prepend () {
+    cd ${S}
     ./mkfiles.pl
+    cd ${B}
 }
 
-do_install () {
-    rm -rf ${D}/*
-    export prefix=${D}
-    export DESTDIR=${D}
-    install -d ${D}/${prefix}/bin/
-    oe_runmake install
-
-
-    install -d ${D}/${datadir}/applications/
+do_install_append () {
+    # net conflicts with Samba, so rename it
+    mv ${D}${bindir}/net ${D}${bindir}/puzzles-net
 
     # Create desktop shortcuts
+    install -d ${D}/${datadir}/applications/
     cd ${D}/${prefix}/bin
     for prog in *; do
 	if [ -x $prog ]; then
             # Convert prog to Title Case
-            title=$(echo $prog | sed 's/\(^\| \)./\U&/g')
+            title=$(echo $prog | sed 's/puzzles-//' | sed 's/\(^\| \)./\U&/g')
 	    echo "making ${D}/${datadir}/applications/$prog.desktop"
 	    cat <<STOP > ${D}/${datadir}/applications/$prog.desktop
 [Desktop Entry]
 Name=$title
-Exec=${prefix}/bin/$prog
+Exec=${bindir}/$prog
 Icon=applications-games
 Terminal=false
 Type=Application
 Categories=Game;
 StartupNotify=true
-X-MB-SingleInstance=true
 STOP
         fi
     done
-- 
2.8.1




More information about the Openembedded-core mailing list