[meta-freescale] [meta-fsl-arm][PATCH 1/2] libfslcodec: Fix packaging so libraries are in ${libdir}

Otavio Salvador otavio at ossystems.com.br
Fri Nov 30 09:18:15 PST 2012


The libraries need to be installed in ${libdir} or gst-fsl-plugin
won't find them.

Change-Id: I2208ef5f9bf2d43e4e8087e9bc7191a93963795a
Signed-off-by: Otavio Salvador <otavio at ossystems.com.br>
---
 .../libfslcodec/libfslcodec_3.0.1.bb               |   31 ++++++++++----------
 1 file changed, 16 insertions(+), 15 deletions(-)

diff --git a/recipes-multimedia/libfslcodec/libfslcodec_3.0.1.bb b/recipes-multimedia/libfslcodec/libfslcodec_3.0.1.bb
index 68e2266..6d391c5 100644
--- a/recipes-multimedia/libfslcodec/libfslcodec_3.0.1.bb
+++ b/recipes-multimedia/libfslcodec/libfslcodec_3.0.1.bb
@@ -5,6 +5,8 @@ LICENSE = "Proprietary"
 SECTION = "multimedia"
 LIC_FILES_CHKSUM = "file://EULA.txt;md5=ea4d5c069d7aef0838a110409ea78a01"
 
+PR = "r1"
+
 inherit fsl-eula-unpack autotools pkgconfig
 
 SRC_URI[md5sum] = "9e0a765de73b32efa5d276fa90372ce1"
@@ -17,32 +19,31 @@ do_install_append() {
 	# FIXME: This link points to nowhere
 	rm ${D}${libdir}/imx-mm/audio-codec/lib_src_ppp_arm11_elinux.so
 
+	# LTIB move the files around or gst-fsl-plugin won't find them
+	for p in $(find ${D}${libdir}/imx-mm -mindepth 1 -maxdepth 1 -type d); do
+		mv $p/* ${D}${libdir}
+		rmdir $p
+	done
+	rmdir ${D}${libdir}/imx-mm
+
 	# FIXME: Drop examples
 	rm -r ${D}${datadir}/imx-mm
 }
 
 python populate_packages_prepend() {
-    audiodir = bb.data.expand('${libdir}/imx-mm/audio-codec', d)
-    do_split_packages(d, audiodir, '^lib_(.*)_elinux\.so\..*',
-                      aux_files_pattern_verbatim='${libdir}/imx-mm/audio-codec/lib_%s_elinux.so.*',
+    do_split_packages(d, d.getVar('libdir', True), '^lib_(.*)_elinux\.so\..*',
+                      aux_files_pattern_verbatim='${libdir}/lib_%s_elinux.so.*',
                       output_pattern='libfslcodec-audio-%s',
                       description='Freescale IMX Codec (%s)',
                       extra_depends='', prepend=True)
 
-    audiowrapdir = bb.data.expand('${libdir}/imx-mm/audio-codec/wrap', d)
-    do_split_packages(d, audiowrapdir, '^lib_(.*)_elinux\.so\..*',
-                      aux_files_pattern_verbatim='${libdir}/imx-mm/audio-codec/wrap/lib_%s_elinux.so.*',
+    wrapdir = bb.data.expand('${libdir}/wrap', d)
+    do_split_packages(d, wrapdir, '^lib_(.*)_elinux\.so\..*',
+                      aux_files_pattern_verbatim='${libdir}/wrap/lib_%s_elinux.so.*',
                       output_pattern='libfslcodec-audio-wrap-%s',
                       description='Freescale IMX Codec Wrap (%s)',
                       extra_depends='', prepend=True)
 
-    videodir = bb.data.expand('${libdir}/imx-mm/video-codec', d)
-    do_split_packages(d, videodir, '^lib_(.*)_elinux\.so\..*',
-                      aux_files_pattern_verbatim='${libdir}/imx-mm/video-codec/lib_%s_elinux.so.*',
-                      output_pattern='libfslcodec-video-%s',
-                      description='Freescale IMX Codec (%s)',
-                      extra_depends='', prepend=True)
-
     # FIXME: All binaries lack GNU_HASH in elf binary but as we don't have
     # the source we cannot fix it. Disable the insane check for now.
     for p in d.getVar('PACKAGES', True).split():
@@ -52,8 +53,8 @@ python populate_packages_prepend() {
 # Ensure we get warnings if we miss something
 FILES_${PN} = ""
 
-FILES_${PN}-dev += "${libdir}/imx-mm/*/*${SOLIBSDEV} \
-                    ${libdir}/imx-mm/*/*/*${SOLIBSDEV}"
+FILES_${PN}-dev += "${libdir}/*/*${SOLIBSDEV} \
+                    ${libdir}/*/*/*${SOLIBSDEV}"
 
 PACKAGE_ARCH = "${MACHINE_ARCH}"
 COMPATIBLE_MACHINE = "(mx6)"
-- 
1.7.10.4




More information about the meta-freescale mailing list