From 1c3c06842ac1b9c089d0a08e91c60f44e4844fac Mon Sep 17 00:00:00 2001 From: Jan-Simon Moeller Date: Tue, 8 Dec 2020 11:12:45 +0100 Subject: SPEC-3723: restructure meta-agl Goal is to reach a minimal meta-agl-core as base for IVI and IC work at the same time. Trim dependencies and move most 'demo' related recipes to meta-agl-demo. v2: changed to bbapend + .inc , added description v3: testbuild of all images v4: restore -test packagegroup and -qa images, compare manifests and adapt packagegroups. v5: rebased v6: merged meta-agl-distro into meta-agl-core, due to dependency on meta-oe, moved -test packagegroup and -qa images to own layer meta-agl-core-test v7: Fixed comments from Paul Barker v8: Update the markdown files v9: restore wayland/weston/agl-compositor recipes/appends, reworked to move app f/w specific changes to bbappends in meta-app-framework and only demo specific weston-init changes to meta-agl-demo v10: fix s/agldemo/aglcore/ missed in weston-init.bbappend Description: This patch is part 1 out of 2 large patches that implement the layer rework discussed during the previous workshop. Essentially meta-agl-core is the small but versatile new core layer of AGL serving as basis for the work done by the IC and IVI EGs. All demo related work is moved to meta-agl-demo in the 2nd patchset. This should be applied together as atomic change. The resulting meta-agl/* follows these guidelines: - only bsp adaptations in meta-agl-bsp - remove the agl-profile-* layers for simplicity -- the packagegroup-agl(-profile)-graphical and so on have been kept in meta-agl-demo - meta-agl-profile-core is now meta-agl-core - meta-agl-core does pass yocto-check-layer -- therefore use the bbappend + conditional + .inc file construct found in meta-virtualization - meta-agl/meta-security has been merged into meta-agl/meta-app-framework - meta-netboot does pass yocto-check-layer - meta-pipewire does pass yocto-check-layer Migration: All packagegroups are preserved but they're now enabled by 'agl-demo'. Bug-AGL: SPEC-3723 Signed-off-by: Jan-Simon Moeller Signed-off-by: Scott Murray Change-Id: Ia6c6e5e6ce2b4ffa69ea94959cdc57c310ba7c53 Reviewed-on: https://gerrit.automotivelinux.org/gerrit/c/AGL/meta-agl/+/25769 --- .../lightmediascanner/.appends.meta-efl | 0 ...ine-comparison_fn_t-for-non-glibc-systems.patch | 33 ------------ ...m-G_BUS_TYPE_SESSION-to-G_BUS_TYPE_SYSTEM.patch | 49 ----------------- .../files/dbus-lightmediascanner.conf | 12 ----- .../id3-plugin-support-out-of-tree-build.patch | 11 ---- .../files/lightmediascanner.service | 16 ------ .../files/plugin-ogg-fix-chucksize-issue.patch | 53 ------------------ .../lightmediascanner/lightmediascanner_%.bbappend | 42 --------------- .../lightmediascanner/lightmediascanner_0.5.1.bb | 63 ---------------------- 9 files changed, 279 deletions(-) delete mode 100644 meta-agl-profile-core/recipes-multimedia/lightmediascanner/.appends.meta-efl delete mode 100644 meta-agl-profile-core/recipes-multimedia/lightmediascanner/files/0001-Define-comparison_fn_t-for-non-glibc-systems.patch delete mode 100644 meta-agl-profile-core/recipes-multimedia/lightmediascanner/files/0002-switch-from-G_BUS_TYPE_SESSION-to-G_BUS_TYPE_SYSTEM.patch delete mode 100644 meta-agl-profile-core/recipes-multimedia/lightmediascanner/files/dbus-lightmediascanner.conf delete mode 100644 meta-agl-profile-core/recipes-multimedia/lightmediascanner/files/id3-plugin-support-out-of-tree-build.patch delete mode 100644 meta-agl-profile-core/recipes-multimedia/lightmediascanner/files/lightmediascanner.service delete mode 100644 meta-agl-profile-core/recipes-multimedia/lightmediascanner/files/plugin-ogg-fix-chucksize-issue.patch delete mode 100644 meta-agl-profile-core/recipes-multimedia/lightmediascanner/lightmediascanner_%.bbappend delete mode 100644 meta-agl-profile-core/recipes-multimedia/lightmediascanner/lightmediascanner_0.5.1.bb (limited to 'meta-agl-profile-core/recipes-multimedia/lightmediascanner') diff --git a/meta-agl-profile-core/recipes-multimedia/lightmediascanner/.appends.meta-efl b/meta-agl-profile-core/recipes-multimedia/lightmediascanner/.appends.meta-efl deleted file mode 100644 index e69de29bb..000000000 diff --git a/meta-agl-profile-core/recipes-multimedia/lightmediascanner/files/0001-Define-comparison_fn_t-for-non-glibc-systems.patch b/meta-agl-profile-core/recipes-multimedia/lightmediascanner/files/0001-Define-comparison_fn_t-for-non-glibc-systems.patch deleted file mode 100644 index 15d4b3f0e..000000000 --- a/meta-agl-profile-core/recipes-multimedia/lightmediascanner/files/0001-Define-comparison_fn_t-for-non-glibc-systems.patch +++ /dev/null @@ -1,33 +0,0 @@ -From 5bc5b8c5dad3edec6736fd7e7ce61250c4ce3725 Mon Sep 17 00:00:00 2001 -From: Khem Raj -Date: Wed, 12 Jul 2017 17:13:19 -0700 -Subject: [PATCH] Define comparison_fn_t for non-glibc systems - -lightmediascanner.c:324:12: error: 'comparison_fn_t' undeclared (first use in this function) - (comparison_fn_t)_plugin_sort); - ^~~~~~~~~~~~~~~ - -Signed-off-by: Khem Raj ---- - src/lib/lightmediascanner.c | 5 +++++ - 1 file changed, 5 insertions(+) - -diff --git a/src/lib/lightmediascanner.c b/src/lib/lightmediascanner.c -index 344b247..b866883 100644 ---- a/src/lib/lightmediascanner.c -+++ b/src/lib/lightmediascanner.c -@@ -37,6 +37,11 @@ - #define DEFAULT_SLAVE_TIMEOUT 1000 - #define DEFAULT_COMMIT_INTERVAL 100 - -+#if !defined(__GLIBC__) -+typedef int (*__compar_fn_t) (const void*, const void*); -+typedef __compar_fn_t comparison_fn_t; -+#endif -+ - #ifdef HAVE_MAGIC_H - static magic_t _magic_handle; - --- -2.13.2 - diff --git a/meta-agl-profile-core/recipes-multimedia/lightmediascanner/files/0002-switch-from-G_BUS_TYPE_SESSION-to-G_BUS_TYPE_SYSTEM.patch b/meta-agl-profile-core/recipes-multimedia/lightmediascanner/files/0002-switch-from-G_BUS_TYPE_SESSION-to-G_BUS_TYPE_SYSTEM.patch deleted file mode 100644 index 5abb980b8..000000000 --- a/meta-agl-profile-core/recipes-multimedia/lightmediascanner/files/0002-switch-from-G_BUS_TYPE_SESSION-to-G_BUS_TYPE_SYSTEM.patch +++ /dev/null @@ -1,49 +0,0 @@ -From 5a618b444e424483c3a9d34dd9b196796cac8e3f Mon Sep 17 00:00:00 2001 -From: Matt Ranostay -Date: Mon, 22 Jul 2019 13:29:52 -0700 -Subject: [PATCH] switch from G_BUS_TYPE_SESSION to G_BUS_TYPE_SYSTEM - -Signed-off-by: Matt Ranostay ---- - src/bin/lightmediascannerctl.c | 4 ++-- - src/bin/lightmediascannerd.c | 2 +- - 2 files changed, 3 insertions(+), 3 deletions(-) - -diff --git a/src/bin/lightmediascannerctl.c b/src/bin/lightmediascannerctl.c -index 5764bc0..1d4d844 100644 ---- a/src/bin/lightmediascannerctl.c -+++ b/src/bin/lightmediascannerctl.c -@@ -11,7 +11,7 @@ start_service_by_name(void) - GVariant *var; - GDBusConnection *conn; - -- conn = g_bus_get_sync(G_BUS_TYPE_SESSION, NULL, &error); -+ conn = g_bus_get_sync(G_BUS_TYPE_SYSTEM, NULL, &error); - if (error) { - fprintf(stderr, "Could not get session bus connection: %s\n", - error->message); -@@ -526,7 +526,7 @@ main(int argc, char *argv[]) - - app.timer = NULL; - app.loop = g_main_loop_new(NULL, FALSE); -- app.proxy = g_dbus_proxy_new_for_bus_sync(G_BUS_TYPE_SESSION, -+ app.proxy = g_dbus_proxy_new_for_bus_sync(G_BUS_TYPE_SYSTEM, - G_DBUS_PROXY_FLAGS_NONE, - NULL, - "org.lightmediascanner", -diff --git a/src/bin/lightmediascannerd.c b/src/bin/lightmediascannerd.c -index 319db42..6db81cc 100644 ---- a/src/bin/lightmediascannerd.c -+++ b/src/bin/lightmediascannerd.c -@@ -1721,7 +1721,7 @@ main(int argc, char *argv[]) - introspection_data = g_dbus_node_info_new_for_xml(introspection_xml, NULL); - g_assert(introspection_xml != NULL); - -- id = g_bus_own_name(G_BUS_TYPE_SESSION, "org.lightmediascanner", -+ id = g_bus_own_name(G_BUS_TYPE_SYSTEM, "org.lightmediascanner", - G_BUS_NAME_OWNER_FLAGS_NONE, - NULL, on_name_acquired, NULL, NULL, NULL); - --- -2.20.1 - diff --git a/meta-agl-profile-core/recipes-multimedia/lightmediascanner/files/dbus-lightmediascanner.conf b/meta-agl-profile-core/recipes-multimedia/lightmediascanner/files/dbus-lightmediascanner.conf deleted file mode 100644 index 8a9e35b09..000000000 --- a/meta-agl-profile-core/recipes-multimedia/lightmediascanner/files/dbus-lightmediascanner.conf +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - - - - - - diff --git a/meta-agl-profile-core/recipes-multimedia/lightmediascanner/files/id3-plugin-support-out-of-tree-build.patch b/meta-agl-profile-core/recipes-multimedia/lightmediascanner/files/id3-plugin-support-out-of-tree-build.patch deleted file mode 100644 index 9528bec79..000000000 --- a/meta-agl-profile-core/recipes-multimedia/lightmediascanner/files/id3-plugin-support-out-of-tree-build.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- a/src/plugins/Makefile.am 2015-10-25 16:12:29.331415823 +0000 -+++ b/src/plugins/Makefile.am 2015-10-25 16:14:37.593415808 +0000 -@@ -93,7 +93,7 @@ - id3_id3_la_SOURCES = id3/id3.c id3/id3v1_genres.c - id3_id3_la_LIBADD = $(PLUGINS_LIBADD) - --id3/id3v1_genres.c: $(srcdir)/id3/id3v1_genres.def $(srcdir)/id3/id3v1_genres_gen.awk -+$(srcdir)/id3/id3v1_genres.c: $(srcdir)/id3/id3v1_genres.def $(srcdir)/id3/id3v1_genres_gen.awk - $(AWK) -f $(srcdir)/id3/id3v1_genres_gen.awk $(srcdir)/id3/id3v1_genres.def > $@ - - EXTRA_DIST += id3/id3v1_genres.def id3/id3v1_genres_gen.awk diff --git a/meta-agl-profile-core/recipes-multimedia/lightmediascanner/files/lightmediascanner.service b/meta-agl-profile-core/recipes-multimedia/lightmediascanner/files/lightmediascanner.service deleted file mode 100644 index 63b48ebf9..000000000 --- a/meta-agl-profile-core/recipes-multimedia/lightmediascanner/files/lightmediascanner.service +++ /dev/null @@ -1,16 +0,0 @@ -[Unit] -Description=Lightmediascanner (LMS) -After=run-agl-postinsts.service systemd-remount-fs.service systemd-tmpfiles-setup.service tmp.mount -ConditionPathIsReadWrite=/var/volatile/tmp - -[Service] -Type=dbus -Restart=on-failure -RestartSec=0 -BusName=org.lightmediascanner -SmackProcessLabel=User::App::agl-service-mediascanner -ExecStart=/usr/bin/lightmediascannerd --startup-scan --db-path=/var/volatile/tmp/lightmediascannerd.db --directory=/media - -[Install] -WantedBy=multi-user.target -Alias=dbus-org.lightmediascanner.service diff --git a/meta-agl-profile-core/recipes-multimedia/lightmediascanner/files/plugin-ogg-fix-chucksize-issue.patch b/meta-agl-profile-core/recipes-multimedia/lightmediascanner/files/plugin-ogg-fix-chucksize-issue.patch deleted file mode 100644 index 6a0b8ff93..000000000 --- a/meta-agl-profile-core/recipes-multimedia/lightmediascanner/files/plugin-ogg-fix-chucksize-issue.patch +++ /dev/null @@ -1,53 +0,0 @@ -From 3e66b97221440b17a184feb48692dce7e0561cac Mon Sep 17 00:00:00 2001 -From: Matt Ranostay -Date: Wed, 8 Mar 2017 16:30:01 -0800 -Subject: [PATCH] plugin: ogg: fix chucksize issue - -There are some OGG files that have metadata chucks that go over the -hardcoded 10 * 4096 size due to album art. This patchset just parses -each chuck and continues till it runs out of valid chunks. - -Signed-off-by: Matt Ranostay ---- - src/plugins/ogg/ogg.c | 11 ++--------- - 1 file changed, 2 insertions(+), 9 deletions(-) - -diff --git a/src/plugins/ogg/ogg.c b/src/plugins/ogg/ogg.c -index 1c0818e..c94dc38 100644 ---- a/src/plugins/ogg/ogg.c -+++ b/src/plugins/ogg/ogg.c -@@ -47,8 +47,6 @@ - int CHUNKSIZE = 4096; - #endif - --#define MAX_CHUNKS_PER_PAGE 10 -- - struct stream { - struct lms_stream base; - int serial; -@@ -122,10 +120,8 @@ _set_lms_info(struct lms_string_size *info, const char *tag) - - static bool _ogg_read_page(FILE *fp, ogg_sync_state *osync, ogg_page *page) - { -- int i; -- -- for (i = 0; i < MAX_CHUNKS_PER_PAGE && ogg_sync_pageout(osync, page) != 1; -- i++) { -+ while(ogg_sync_pageout(osync, page) != 1) -+ { - lms_ogg_buffer_t buffer = lms_get_ogg_sync_buffer(osync, CHUNKSIZE); - int bytes = fread(buffer, 1, CHUNKSIZE, fp); - -@@ -136,9 +132,6 @@ static bool _ogg_read_page(FILE *fp, ogg_sync_state *osync, ogg_page *page) - ogg_sync_wrote(osync, bytes); - } - -- if (i > MAX_CHUNKS_PER_PAGE) -- return false; -- - return true; - } - --- -2.7.4 - diff --git a/meta-agl-profile-core/recipes-multimedia/lightmediascanner/lightmediascanner_%.bbappend b/meta-agl-profile-core/recipes-multimedia/lightmediascanner/lightmediascanner_%.bbappend deleted file mode 100644 index b47b2796c..000000000 --- a/meta-agl-profile-core/recipes-multimedia/lightmediascanner/lightmediascanner_%.bbappend +++ /dev/null @@ -1,42 +0,0 @@ -# Disable everything but the roygalty-free formats -PACKAGECONFIG = "ogg flac wave m3u pls jpeg png" - -FILESEXTRAPATHS_prepend := "${THISDIR}/files:" - -SRC_URI += "file://lightmediascanner.service \ - file://plugin-ogg-fix-chucksize-issue.patch \ - file://0002-switch-from-G_BUS_TYPE_SESSION-to-G_BUS_TYPE_SYSTEM.patch \ - file://dbus-lightmediascanner.conf \ - " - -CFLAGS_append = " -D_FILE_OFFSET_BITS=64" - -inherit systemd - -SYSTEMD_PACKAGES = "${PN}" -SYSTEMD_SERVICE_${PN} = "lightmediascanner.service" -SYSTEMD_AUTO_ENABLE_${PN} = "enable" - -do_install_append() { - # Install LMS systemd service - if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then - install -d ${D}${systemd_system_unitdir} - install -m 644 -p -D ${WORKDIR}/lightmediascanner.service ${D}${systemd_system_unitdir}/lightmediascanner.service - fi - - install -d ${D}/etc/dbus-1/system.d - install -m 0644 ${WORKDIR}/dbus-lightmediascanner.conf ${D}/etc/dbus-1/system.d/org.lightmediascanner.conf -} - -FILES_${PN} += " \ - ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', '${systemd_system_unitdir}/lightmediascanner.service', '', d)} \ - " - -EXTRA_OECONF = "--enable-static --with-dbus-services=${datadir}/dbus-1/system-services" -PACKAGECONFIG[mp4] = "--enable-mp4,--disable-mp4,libmp4v2" - -# add support MP3 because of the format of music files for AGL CES/ALS2017 Demo -PACKAGECONFIG_append = " id3 mp4" - -# add required character sets for id3 tag scanning -RDEPENDS_${PN}_append = " glibc-gconv-utf-16 glibc-gconv-iso8859-1" diff --git a/meta-agl-profile-core/recipes-multimedia/lightmediascanner/lightmediascanner_0.5.1.bb b/meta-agl-profile-core/recipes-multimedia/lightmediascanner/lightmediascanner_0.5.1.bb deleted file mode 100644 index f2158760f..000000000 --- a/meta-agl-profile-core/recipes-multimedia/lightmediascanner/lightmediascanner_0.5.1.bb +++ /dev/null @@ -1,63 +0,0 @@ -SUMMARY = "Lightweight media scanner" -DESCRIPTION = "Lightweight media scanner meant to be used in not-so-powerful devices, like embedded systems or old machines." -SECTION = "libs/multimedia" - -LICENSE = "LGPLv2.1+" -LIC_FILES_CHKSUM = "file://COPYING;md5=a6f89e2100d9b6cdffcea4f398e37343 \ - file://src/lib/lightmediascanner.c;endline=21;md5=6d8889bccb4c6c27e8b786342a3eb267" - -DEPENDS = "file gawk glib-2.0 sqlite3" - -PV = "0.5.1+git${SRCPV}" -SRCREV = "adfddb3486276a5ed2f5008c9e43a811e1271cc9" -SRC_URI = "git://github.com/profusion/lightmediascanner.git \ - file://id3-plugin-support-out-of-tree-build.patch \ - file://0001-Define-comparison_fn_t-for-non-glibc-systems.patch \ - " - -S = "${WORKDIR}/git" - -inherit autotools pkgconfig - -EXTRA_OECONF = "--enable-static --disable-mp4" - -PACKAGECONFIG ??= "ogg flac wave id3 m3u pls asf rm jpeg png" -PACKAGECONFIG[generic] = "--enable-generic,--disable-generic,libav" -PACKAGECONFIG[ogg] = "--enable-ogg,--disable-ogg,libogg libvorbis libtheora" -PACKAGECONFIG[flac] = "--enable-flac,--disable-flac,flac" -PACKAGECONFIG[wave] = "--enable-wave,--disable-wave" -PACKAGECONFIG[id3] = "--enable-id3,--disable-id3" -PACKAGECONFIG[m3u] = "--enable-m3u,--disable-m3u" -PACKAGECONFIG[pls] = "--enable-pls,--disable-pls" -PACKAGECONFIG[asf] = "--enable-asf,--disable-asf" -PACKAGECONFIG[rm] = "--enable-rm,--disable-rm" -PACKAGECONFIG[jpeg] = "--enable-jpeg,--disable-jpeg" -PACKAGECONFIG[png] = "--enable-png,--disable-png" - -do_install_append() { - # Install "test" binary for corresponding package - install -d ${D}/${bindir} - install -m 755 ${B}/src/bin/.libs/test ${D}/${bindir}/test-lms - # Remove .la files for loadable modules - rm -f ${D}/${libdir}/${PN}/plugins/*.la -} - -FILES_${PN} += "${datadir}/dbus-1" -FILES_${PN}-dbg += "${libdir}/${PN}/plugins/.debug" - -PACKAGES_prepend = "${PN}-test " -FILES_${PN}-test_prepend = "${bindir}/test-lms " - -PACKAGES += "${PN}-meta" -ALLOW_EMPTY_${PN}-meta = "1" - -PACKAGES_DYNAMIC = "${PN}-plugin-*" - -python populate_packages_prepend () { - lms_libdir = d.expand('${libdir}/${PN}') - pkgs = [] - - pkgs += do_split_packages(d, oe.path.join(lms_libdir, "plugins"), '^(.*)\.so$', d.expand('${PN}-plugin-%s'), 'LightMediaScanner plugin for %s', prepend=True, extra_depends=d.expand('${PN}')) - metapkg = d.getVar('PN') + '-meta' - d.setVar('RDEPENDS_' + metapkg, ' '.join(pkgs)) -} -- cgit 1.2.3-korg