af-binder: New packaging 55/21155/2
authorJosé Bollo <jose.bollo@iot.bzh>
Fri, 12 Apr 2019 16:33:08 +0000 (18:33 +0200)
committerJosé Bollo <jose.bollo@iot.bzh>
Tue, 30 Apr 2019 20:51:29 +0000 (20:51 +0000)
Improve how the binder is packaged.

Bug-AGL: SPEC-2165

The issue was that the debug symbols were not
at the expected place. It came from the way bitbake
packages debug meterials: the first package with
-dbg extension receive all the debug items.

Change-Id: I2f5470ded58bc782c9a9804373a5eb76b331f5ae
Signed-off-by: José Bollo <jose.bollo@iot.bzh>
meta-app-framework/recipes-core/af-binder/af-binder_git.bb

index 91f26b8..f5309f0 100644 (file)
@@ -26,53 +26,45 @@ do_install_append_agl-devel_class-target() {
 }
 
 #############################################
-# setup package
+# main package
 #############################################
-PACKAGES =+ "${PN}-tools ${PN}-devtools ${PN}-meta"
-
-FILES_${PN} += "${datadir}"
 
 FILES_${PN}_append_agl-devel = " ${libdir}/afb/monitoring ${systemd_system_unitdir}"
 
-ALLOW_EMPTY_${PN}-meta = "1"
-
-FILES_${PN}-tools = "\
-       ${bindir}/afb-client-demo \
-"
-
-FILES_${PN}-devtools = "\
-       ${bindir}/afb-exprefs \
-       ${bindir}/afb-json2c \
-       ${bindir}/afb-genskel \
-"
-
 RDEPENDS_${PN}-dev += "libafbwsc-dev"
 
 #############################################
-# setup sample binding packages
+# intrinsic binding packages
 #############################################
+PACKAGES =+ "${PN}-intrinsic-bindings"
+ALLOW_EMPTY_${PN}-intrinsic-bindings = "1"
+
 PACKAGES_DYNAMIC = "${PN}-binding-*"
 
 python populate_packages_prepend () {
     afb_libdir = d.expand('${libdir}/afb')
     postinst = d.getVar('binding_postinst', True)
     pkgs = []
-    pkgs_dbg = []
 
     pkgs += do_split_packages(d, afb_libdir, '(.*)-api\.so$', d.expand('${PN}-binding-%s'), 'AFB binding for %s', postinst=postinst, extra_depends=d.expand('${PN}'))
     pkgs += do_split_packages(d, afb_libdir, '(.*(?!-api))\.so$', d.expand('${PN}-binding-%s'), 'AFB binding for %s', postinst=postinst, extra_depends=d.expand('${PN}'))
 
-    pkgs_dbg += do_split_packages(d, oe.path.join(afb_libdir, ".debug"), '(.*)-api\.so$', d.expand('${PN}-binding-%s-dbg'), 'AFB binding for %s, debug info', postinst=postinst, extra_depends=d.expand('${PN}'))
-    pkgs_dbg += do_split_packages(d, oe.path.join(afb_libdir, ".debug"), '(.*(?!-api))\.so$', d.expand('${PN}-binding-%s-dbg'), 'AFB binding for %s, debug info', postinst=postinst, extra_depends=d.expand('${PN}'))
-
-    metapkg = d.getVar('PN', True) + '-meta'
-    d.setVar('RDEPENDS_' + metapkg, ' '.join(pkgs))
+    d.setVar('RDEPENDS_' + d.getVar('PN', True) + '-intrinsic-bindings', ' '.join(pkgs))
 }
 
+#############################################
+# tool package
+#############################################
+PACKAGES =+ "${PN}-tools"
+
+FILES_${PN}-tools = "\
+       ${bindir}/afb-client-demo \
+"
+
 #############################################
 # setup libafbwsc package
 #############################################
-PACKAGES =+ "libafbwsc libafbwsc-dev libafbwsc-dbg"
+PACKAGES =+ "libafbwsc libafbwsc-dev"
 
 FILES_libafbwsc = "\
        ${libdir}/libafbwsc.so.* \
@@ -83,10 +75,43 @@ FILES_libafbwsc-dev = "\
        ${libdir}/libafbwsc.so \
        ${libdir}/pkgconfig/libafbwsc.pc \
 "
-FILES_libafbwsc-dbg = "\
-       ${libdir}/.debug/libafbwsc.so.* \
-       ${bindir}/.debug/afb-client-demo \
+
+#############################################
+# devtool package
+#############################################
+PACKAGES =+ "${PN}-devtools"
+
+FILES_${PN}-devtools = "\
+       ${bindir}/afb-exprefs \
+       ${bindir}/afb-json2c \
+       ${bindir}/afb-genskel \
+"
+
+#############################################
+# supervisor package
+#############################################
+PACKAGES_append_agl-devel = " ${PN}-supervisor "
+
+FILES_${PN}-supervisor_agl-devel = "\
+       ${bindir}/afs-supervisor \
+        ${systemd_system_unitdir} \
 "
-RDEPENDS_libafbwsc-dbg += "${PN}-dbg libafbwsc-dev"
 
+#############################################
+# setup sample packages
+#############################################
+PACKAGES =+ "${PN}-samples"
+
+FILES_${PN}-samples = "\
+       ${datadir}/af-binder \
+"
+
+#############################################
+# meta package
+#############################################
+PACKAGES =+ "${PN}-meta"
+ALLOW_EMPTY_${PN}-meta = "1"
+
+RDEPENDS_${PN}-meta += "${PN} ${PN}-tools libafbwsc ${PN}-intrinsic-bindings"
+RDEPENDS_${PN}-meta_append_agl-devel = " ${PN}-supervisor "