diff options
author | Zelan Zou <zelan.zou@nxp.com> | 2025-01-06 07:16:07 +0100 |
---|---|---|
committer | Zelan Zou <zelan.zou@nxp.com> | 2025-01-15 12:50:10 +0100 |
commit | 98cb547ce4a21d693a04757e0cfd9507b756fa5b (patch) | |
tree | 39ceb555fbac927048cc6d3b38751de6fd7f0adc | |
parent | 1829088d196d4609d5aaa25c2e78a9be2e25336e (diff) | |
download | meta-freescale-98cb547ce4a21d693a04757e0cfd9507b756fa5b.tar.gz |
gstreamer1.0: Upgrade version 1.24.0 to 1.24.7
Signed-off-by: Zelan Zou <zelan.zou@nxp.com>
12 files changed, 37 insertions, 368 deletions
diff --git a/conf/machine/include/imx-base.inc b/conf/machine/include/imx-base.inc index 32da2ea5..5e12548e 100644 --- a/conf/machine/include/imx-base.inc +++ b/conf/machine/include/imx-base.inc | |||
@@ -518,14 +518,14 @@ MACHINE_GSTREAMER_1_0_PLUGIN:mx8ulp-nxp-bsp ?= "imx-gst1.0-plugin" | |||
518 | MACHINE_GSTREAMER_1_0_PLUGIN:mx93-nxp-bsp ?= "imx-gst1.0-plugin" | 518 | MACHINE_GSTREAMER_1_0_PLUGIN:mx93-nxp-bsp ?= "imx-gst1.0-plugin" |
519 | 519 | ||
520 | # GStreamer forked recipes | 520 | # GStreamer forked recipes |
521 | PREFERRED_VERSION_gstreamer1.0:mx8-nxp-bsp ??= "1.24.0.imx" | 521 | PREFERRED_VERSION_gstreamer1.0:mx8-nxp-bsp ??= "1.24.7.imx" |
522 | PREFERRED_VERSION_gstreamer1.0-plugins-bad:mx8-nxp-bsp ??= "1.24.0.imx" | 522 | PREFERRED_VERSION_gstreamer1.0-plugins-bad:mx8-nxp-bsp ??= "1.24.7.imx" |
523 | PREFERRED_VERSION_gstreamer1.0-plugins-base:mx8-nxp-bsp ??= "1.24.0.imx" | 523 | PREFERRED_VERSION_gstreamer1.0-plugins-base:mx8-nxp-bsp ??= "1.24.7.imx" |
524 | PREFERRED_VERSION_gstreamer1.0-plugins-good:mx8-nxp-bsp ??= "1.24.0.imx" | 524 | PREFERRED_VERSION_gstreamer1.0-plugins-good:mx8-nxp-bsp ??= "1.24.7.imx" |
525 | PREFERRED_VERSION_gstreamer1.0:mx9-nxp-bsp ??= "1.24.0.imx" | 525 | PREFERRED_VERSION_gstreamer1.0:mx9-nxp-bsp ??= "1.24.7.imx" |
526 | PREFERRED_VERSION_gstreamer1.0-plugins-bad:mx9-nxp-bsp ??= "1.24.0.imx" | 526 | PREFERRED_VERSION_gstreamer1.0-plugins-bad:mx9-nxp-bsp ??= "1.24.7.imx" |
527 | PREFERRED_VERSION_gstreamer1.0-plugins-base:mx9-nxp-bsp ??= "1.24.0.imx" | 527 | PREFERRED_VERSION_gstreamer1.0-plugins-base:mx9-nxp-bsp ??= "1.24.7.imx" |
528 | PREFERRED_VERSION_gstreamer1.0-plugins-good:mx9-nxp-bsp ??= "1.24.0.imx" | 528 | PREFERRED_VERSION_gstreamer1.0-plugins-good:mx9-nxp-bsp ??= "1.24.7.imx" |
529 | 529 | ||
530 | # GStreamer copied recipes | 530 | # GStreamer copied recipes |
531 | PREFERRED_VERSION_gst-devtools:mx8-nxp-bsp ??= "1.24.0.imx" | 531 | PREFERRED_VERSION_gst-devtools:mx8-nxp-bsp ??= "1.24.0.imx" |
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/0001-autovideoconvert-add-imxvideoconvert_g2d.patch b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/0001-autovideoconvert-add-imxvideoconvert_g2d.patch deleted file mode 100644 index d4fd8cf3..00000000 --- a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/0001-autovideoconvert-add-imxvideoconvert_g2d.patch +++ /dev/null | |||
@@ -1,39 +0,0 @@ | |||
1 | From 784881b9bffaa768c3a1e9cb3d8eead7b4ca356a Mon Sep 17 00:00:00 2001 | ||
2 | From: Hiago De Franco <hiago.franco@toradex.com> | ||
3 | Date: Thu, 12 Sep 2024 18:44:14 +0200 | ||
4 | Subject: [PATCH] autovideoconvert: add imxvideoconvert_g2d | ||
5 | |||
6 | On i.MX8 platform, autovideoconvert defaults to CPU-based processing as | ||
7 | imxvideoconvert_g2d is not included as a listed filter, resulting in | ||
8 | poor video playback performance. | ||
9 | |||
10 | Add imxvideoconvert_g2d to improve performance by utilizing hardware | ||
11 | acceleration. | ||
12 | |||
13 | Upstream-Status: Submitted [https://github.com/nxp-imx/gst-plugins-bad/pull/2] | ||
14 | Signed-off-by: Hiago De Franco <hiago.franco@toradex.com> | ||
15 | --- | ||
16 | gst/autoconvert/gstautovideoconvert.c | 7 +++++++ | ||
17 | 1 file changed, 7 insertions(+) | ||
18 | |||
19 | diff --git a/gst/autoconvert/gstautovideoconvert.c b/gst/autoconvert/gstautovideoconvert.c | ||
20 | index cf5468316cd5..b91bd1556c37 100644 | ||
21 | --- a/gst/autoconvert/gstautovideoconvert.c | ||
22 | +++ b/gst/autoconvert/gstautovideoconvert.c | ||
23 | @@ -85,6 +85,13 @@ gst_auto_video_convert_init (GstAutoVideoConvert * autovideoconvert) | ||
24 | .filters = { NULL }, | ||
25 | .rank = GST_RANK_SECONDARY, | ||
26 | }, | ||
27 | + { | ||
28 | + .first_elements = { "capsfilter caps=\"video/x-raw\"", NULL, }, | ||
29 | + .colorspace_converters = { "imxvideoconvert_g2d", NULL }, | ||
30 | + .last_elements = { NULL, }, | ||
31 | + .filters = { NULL }, | ||
32 | + .rank = GST_RANK_PRIMARY + 1, | ||
33 | + }, | ||
34 | { | ||
35 | .first_elements = { "capsfilter caps=\"video/x-raw\"", NULL, }, | ||
36 | .colorspace_converters = { "videoconvertscale", NULL }, | ||
37 | -- | ||
38 | 2.39.2 | ||
39 | |||
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.24.0.imx.bb b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.24.7.imx.bb index f6d094f5..4b707875 100644 --- a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.24.0.imx.bb +++ b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.24.7.imx.bb | |||
@@ -178,9 +178,7 @@ FILES:${PN}-voamrwbenc += "${datadir}/gstreamer-1.0/presets/GstVoAmrwbEnc.prs" | |||
178 | 178 | ||
179 | DEFAULT_PREFERENCE = "-1" | 179 | DEFAULT_PREFERENCE = "-1" |
180 | 180 | ||
181 | LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=4fbd65380cdd255951079008b364516c" | 181 | LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=69333daa044cb77e486cc36129f7a770" |
182 | |||
183 | DEPENDS:append:imxgpu2d = " virtual/libg2d" | ||
184 | 182 | ||
185 | SRC_URI:remove = "https://gstreamer.freedesktop.org/src/gst-plugins-bad/gst-plugins-bad-${PV}.tar.xz \ | 183 | SRC_URI:remove = "https://gstreamer.freedesktop.org/src/gst-plugins-bad/gst-plugins-bad-${PV}.tar.xz \ |
186 | file://0001-fix-maybe-uninitialized-warnings-when-compiling-with.patch \ | 184 | file://0001-fix-maybe-uninitialized-warnings-when-compiling-with.patch \ |
@@ -188,10 +186,9 @@ SRC_URI:remove = "https://gstreamer.freedesktop.org/src/gst-plugins-bad/gst-plug | |||
188 | file://0004-opencv-resolve-missing-opencv-data-dir-in-yocto-buil.patch \ | 186 | file://0004-opencv-resolve-missing-opencv-data-dir-in-yocto-buil.patch \ |
189 | " | 187 | " |
190 | SRC_URI:prepend = "${GST1.0-PLUGINS-BAD_SRC};branch=${SRCBRANCH} " | 188 | SRC_URI:prepend = "${GST1.0-PLUGINS-BAD_SRC};branch=${SRCBRANCH} " |
191 | SRC_URI:append = " file://0001-autovideoconvert-add-imxvideoconvert_g2d.patch" | ||
192 | GST1.0-PLUGINS-BAD_SRC ?= "gitsm://github.com/nxp-imx/gst-plugins-bad.git;protocol=https" | 189 | GST1.0-PLUGINS-BAD_SRC ?= "gitsm://github.com/nxp-imx/gst-plugins-bad.git;protocol=https" |
193 | SRCBRANCH = "MM_04.09.01_2408_L6.6.y" | 190 | SRCBRANCH = "MM_04.09.02_2410_L6.6.y" |
194 | SRCREV = "7011fdfa6d60fb3ee1dc8545f675cfdb519203cd" | 191 | SRCREV = "bba296b75dfb3e7ae4c836255edbd2b3c085c269" |
195 | 192 | ||
196 | S = "${WORKDIR}/git" | 193 | S = "${WORKDIR}/git" |
197 | 194 | ||
@@ -214,13 +211,6 @@ PACKAGECONFIG_G2D:imxgpu2d ??= "g2d" | |||
214 | PACKAGECONFIG[g2d] = ",,virtual/libg2d" | 211 | PACKAGECONFIG[g2d] = ",,virtual/libg2d" |
215 | PACKAGECONFIG[tinycompress] = "-Dtinycompress=enabled,-Dtinycompress=disabled,tinycompress" | 212 | PACKAGECONFIG[tinycompress] = "-Dtinycompress=enabled,-Dtinycompress=disabled,tinycompress" |
216 | 213 | ||
217 | # GCC-14 otherwise errors out | ||
218 | CFLAGS += " \ | ||
219 | -Wno-error=implicit-function-declaration \ | ||
220 | -Wno-error=incompatible-pointer-types \ | ||
221 | -Wno-error=return-mismatch \ | ||
222 | -Wno-error=int-conversion \ | ||
223 | " | ||
224 | EXTRA_OEMESON += " \ | 214 | EXTRA_OEMESON += " \ |
225 | -Dc_args="${CFLAGS} -I${STAGING_INCDIR_IMX}" \ | 215 | -Dc_args="${CFLAGS} -I${STAGING_INCDIR_IMX}" \ |
226 | " | 216 | " |
@@ -229,8 +219,9 @@ EXTRA_OEMESON:remove = " \ | |||
229 | -Dkate=disabled \ | 219 | -Dkate=disabled \ |
230 | " | 220 | " |
231 | 221 | ||
232 | COMPATIBLE_MACHINE = "(imx-nxp-bsp)" | ||
233 | # it uses nested functions sadly, in ext/wayland/gstwaylandsink.c for GST_ELEMENT_REGISTER_DEFINE | 222 | # it uses nested functions sadly, in ext/wayland/gstwaylandsink.c for GST_ELEMENT_REGISTER_DEFINE |
234 | # | 223 | # |
235 | TOOLCHAIN = "gcc" | 224 | TOOLCHAIN = "gcc" |
225 | |||
226 | COMPATIBLE_MACHINE = "(imx-nxp-bsp)" | ||
236 | ########### End of i.MX overrides ######### | 227 | ########### End of i.MX overrides ######### |
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.24.0.imx.bb b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.24.7.imx.bb index 6e7bc20e..c15457ca 100644 --- a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.24.0.imx.bb +++ b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.24.7.imx.bb | |||
@@ -118,8 +118,8 @@ SRC_URI:remove = " \ | |||
118 | SRC_URI:prepend = "${GST1.0-PLUGINS-BASE_SRC};branch=${SRCBRANCH} " | 118 | SRC_URI:prepend = "${GST1.0-PLUGINS-BASE_SRC};branch=${SRCBRANCH} " |
119 | 119 | ||
120 | GST1.0-PLUGINS-BASE_SRC ?= "gitsm://github.com/nxp-imx/gst-plugins-base.git;protocol=https" | 120 | GST1.0-PLUGINS-BASE_SRC ?= "gitsm://github.com/nxp-imx/gst-plugins-base.git;protocol=https" |
121 | SRCBRANCH = "MM_04.09.01_2408_L6.6.y" | 121 | SRCBRANCH = "MM_04.09.02_2410_L6.6.y" |
122 | SRCREV = "97b1a45e945d3784790cafd2fcc4f6cb16e739d7" | 122 | SRCREV = "031d262e65333e58b2ce01aaf47ab1012f93b21e" |
123 | 123 | ||
124 | S = "${WORKDIR}/git" | 124 | S = "${WORKDIR}/git" |
125 | 125 | ||
@@ -135,8 +135,6 @@ PACKAGECONFIG_G2D:imxgpu2d ??= "g2d" | |||
135 | PACKAGECONFIG[g2d] = ",,virtual/libg2d" | 135 | PACKAGECONFIG[g2d] = ",,virtual/libg2d" |
136 | PACKAGECONFIG[viv-fb] = ",,virtual/libgles2" | 136 | PACKAGECONFIG[viv-fb] = ",,virtual/libgles2" |
137 | 137 | ||
138 | # GCC-14 otherwise errors out | ||
139 | CFLAGS += "-Wno-error=incompatible-pointer-types" | ||
140 | EXTRA_OEMESON += "-Dc_args="${CFLAGS} -I${STAGING_INCDIR_IMX}"" | 138 | EXTRA_OEMESON += "-Dc_args="${CFLAGS} -I${STAGING_INCDIR_IMX}"" |
141 | 139 | ||
142 | # links with imx-gpu libs which are pre-built for glibc | 140 | # links with imx-gpu libs which are pre-built for glibc |
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.24.%.bbappend b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.24.7.imx.bbappend index a834192e..528d7e1a 100644 --- a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.24.%.bbappend +++ b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.24.7.imx.bbappend | |||
@@ -13,5 +13,5 @@ PACKAGECONFIG_GL:use-mainline-bsp = \ | |||
13 | # does not depend on the viv-fb feature. It used to, but that was actually a bug | 13 | # does not depend on the viv-fb feature. It used to, but that was actually a bug |
14 | # which was fixed in GStreamer 1.22.5. Since then, the direct texture support is | 14 | # which was fixed in GStreamer 1.22.5. Since then, the direct texture support is |
15 | # detected by Meson by checking for direct texture symbols like "glTexDirectVIV".) | 15 | # detected by Meson by checking for direct texture symbols like "glTexDirectVIV".) |
16 | PACKAGECONFIG_GL:imxgpu2d:append:mx6-nxp-bsp = " viv-fb " | 16 | PACKAGECONFIG_GL:imxgpu2d:append:mx6-nxp-bsp = " viv-fb" |
17 | PACKAGECONFIG_GL:imxgpu2d:append:mx7-nxp-bsp = " viv-fb " | 17 | PACKAGECONFIG_GL:imxgpu2d:append:mx7-nxp-bsp = " viv-fb" |
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.24.0.imx.bb b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.24.7.imx.bb index 67dc139f..5dd71743 100644 --- a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.24.0.imx.bb +++ b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.24.7.imx.bb | |||
@@ -94,11 +94,11 @@ FILES:${PN}-equalizer += "${datadir}/gstreamer-1.0/presets/*.prs" | |||
94 | DEFAULT_PREFERENCE = "-1" | 94 | DEFAULT_PREFERENCE = "-1" |
95 | 95 | ||
96 | LIC_FILES_CHKSUM = " \ | 96 | LIC_FILES_CHKSUM = " \ |
97 | file://LICENSE.txt;md5=a6f89e2100d9b6cdffcea4f398e37343 \ | 97 | file://LICENSE.txt;md5=69333daa044cb77e486cc36129f7a770 \ |
98 | file://gst/replaygain/rganalysis.c;beginline=1;endline=23;md5=b60ebefd5b2f5a8e0cab6bfee391a5fe \ | 98 | file://gst/replaygain/rganalysis.c;beginline=1;endline=23;md5=b60ebefd5b2f5a8e0cab6bfee391a5fe \ |
99 | " | 99 | " |
100 | # Enable pulsesink in gstreamer | 100 | # Enable pulsesink in gstreamer |
101 | PACKAGECONFIG:append = "${@bb.utils.contains('DISTRO_FEATURES', 'pulseaudio', 'pulseaudio', '', d)}" | 101 | PACKAGECONFIG:append = "${@bb.utils.contains('DISTRO_FEATURES', 'pulseaudio', ' pulseaudio', '', d)}" |
102 | 102 | ||
103 | # fb implementation of v4l2 uses libdrm | 103 | # fb implementation of v4l2 uses libdrm |
104 | DEPENDS += "${@bb.utils.contains('PACKAGECONFIG', 'v4l2', '${DEPENDS_V4L2}', '', d)}" | 104 | DEPENDS += "${@bb.utils.contains('PACKAGECONFIG', 'v4l2', '${DEPENDS_V4L2}', '', d)}" |
@@ -111,20 +111,9 @@ SRC_URI:remove = "https://gstreamer.freedesktop.org/src/gst-plugins-good/gst-plu | |||
111 | 111 | ||
112 | SRC_URI:prepend = "${GST1.0-PLUGINS-GOOD_SRC};branch=${SRCBRANCH} " | 112 | SRC_URI:prepend = "${GST1.0-PLUGINS-GOOD_SRC};branch=${SRCBRANCH} " |
113 | GST1.0-PLUGINS-GOOD_SRC ?= "gitsm://github.com/nxp-imx/gst-plugins-good.git;protocol=https" | 113 | GST1.0-PLUGINS-GOOD_SRC ?= "gitsm://github.com/nxp-imx/gst-plugins-good.git;protocol=https" |
114 | SRCBRANCH = "MM_04.09.01_2408_L6.6.y" | 114 | SRCBRANCH = "MM_04.09.02_2410_L6.6.y" |
115 | SRCREV = "d8727edd56536a5c39de7905f073fce61896c0af" | 115 | SRCREV = "33b2732b873758a302064818b35dcad41b5bbc14" |
116 | 116 | ||
117 | # set 32bit compile timer for 32-bit platform | ||
118 | GLIBC_64BIT_TIME_FLAGS:mx6-nxp-bsp = "" | ||
119 | GLIBC_64BIT_TIME_FLAGS:mx7-nxp-bsp = "" | ||
120 | INSANE_SKIP:mx6-nxp-bsp:append = " 32bit-time" | ||
121 | INSANE_SKIP:mx7-nxp-bsp:append = " 32bit-time" | ||
122 | |||
123 | # GCC-14 otherwise errors out | ||
124 | CFLAGS += " \ | ||
125 | -Wno-error=implicit-function-declaration \ | ||
126 | -Wno-error=incompatible-pointer-types \ | ||
127 | " | ||
128 | S = "${WORKDIR}/git" | 117 | S = "${WORKDIR}/git" |
129 | 118 | ||
130 | COMPATIBLE_MACHINE = "(imx-nxp-bsp)" | 119 | COMPATIBLE_MACHINE = "(imx-nxp-bsp)" |
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0/0001-tests-respect-the-idententaion-used-in-meson.patch b/recipes-multimedia/gstreamer/gstreamer1.0/0001-tests-respect-the-idententaion-used-in-meson.patch deleted file mode 100644 index 1b9278db..00000000 --- a/recipes-multimedia/gstreamer/gstreamer1.0/0001-tests-respect-the-idententaion-used-in-meson.patch +++ /dev/null | |||
@@ -1,34 +0,0 @@ | |||
1 | From 559e1dd850b2b9eb3a415aa43e932e5e48f605cd Mon Sep 17 00:00:00 2001 | ||
2 | From: Jose Quaresma <quaresma.jose@gmail.com> | ||
3 | Date: Sun, 11 Apr 2021 19:48:13 +0100 | ||
4 | Subject: [PATCH] tests: respect the idententaion used in meson | ||
5 | |||
6 | Upstream-Status: Submitted [https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/789] | ||
7 | |||
8 | Signed-off-by: Jose Quaresma <quaresma.jose@gmail.com> | ||
9 | |||
10 | --- | ||
11 | tests/check/meson.build | 10 +++++----- | ||
12 | 1 file changed, 5 insertions(+), 5 deletions(-) | ||
13 | |||
14 | diff --git a/tests/check/meson.build b/tests/check/meson.build | ||
15 | index 9787b0a..16caac7 100644 | ||
16 | --- a/tests/check/meson.build | ||
17 | +++ b/tests/check/meson.build | ||
18 | @@ -145,11 +145,11 @@ foreach t : core_tests | ||
19 | |||
20 | if not skip_test | ||
21 | exe = executable(test_name, fname, | ||
22 | - c_args : gst_c_args + test_defines, | ||
23 | - cpp_args : gst_c_args + test_defines, | ||
24 | - include_directories : [configinc], | ||
25 | - link_with : link_with_libs, | ||
26 | - dependencies : gst_deps + test_deps, | ||
27 | + c_args : gst_c_args + test_defines, | ||
28 | + cpp_args : gst_c_args + test_defines, | ||
29 | + include_directories : [configinc], | ||
30 | + link_with : link_with_libs, | ||
31 | + dependencies : gst_deps + test_deps, | ||
32 | ) | ||
33 | |||
34 | env = environment() | ||
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0/0002-tests-add-support-for-install-the-tests.patch b/recipes-multimedia/gstreamer/gstreamer1.0/0002-tests-add-support-for-install-the-tests.patch deleted file mode 100644 index 456f0762..00000000 --- a/recipes-multimedia/gstreamer/gstreamer1.0/0002-tests-add-support-for-install-the-tests.patch +++ /dev/null | |||
@@ -1,109 +0,0 @@ | |||
1 | From 330e15374bb30ac29ee72c4b3de79c17b1157112 Mon Sep 17 00:00:00 2001 | ||
2 | From: Jose Quaresma <quaresma.jose@gmail.com> | ||
3 | Date: Sun, 11 Apr 2021 19:48:13 +0100 | ||
4 | Subject: [PATCH] tests: add support for install the tests | ||
5 | |||
6 | This will provide to run the tests using the gnome-desktop-testing [1] | ||
7 | |||
8 | [1] https://wiki.gnome.org/Initiatives/GnomeGoals/InstalledTests | ||
9 | |||
10 | Upstream-Status: Submitted [https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/789] | ||
11 | |||
12 | Signed-off-by: Jose Quaresma <quaresma.jose@gmail.com> | ||
13 | |||
14 | --- | ||
15 | meson.build | 4 ++++ | ||
16 | meson_options.txt | 1 + | ||
17 | tests/check/meson.build | 21 ++++++++++++++++++++- | ||
18 | tests/check/template.test.in | 3 +++ | ||
19 | 4 files changed, 28 insertions(+), 1 deletion(-) | ||
20 | create mode 100644 tests/check/template.test.in | ||
21 | |||
22 | diff --git a/meson.build b/meson.build | ||
23 | index 540d6d290e10..0267f22a79ea 100644 | ||
24 | --- a/meson.build | ||
25 | +++ b/meson.build | ||
26 | @@ -624,6 +624,10 @@ if bashcomp_dep.found() | ||
27 | endif | ||
28 | endif | ||
29 | |||
30 | +installed_tests_enabled = get_option('installed_tests') | ||
31 | +installed_tests_metadir = join_paths(datadir, 'installed-tests', meson.project_name()) | ||
32 | +installed_tests_execdir = join_paths(libexecdir, 'installed-tests', meson.project_name()) | ||
33 | + | ||
34 | plugins_install_dir = join_paths(get_option('libdir'), 'gstreamer-1.0') | ||
35 | |||
36 | pkgconfig = import('pkgconfig') | ||
37 | diff --git a/meson_options.txt b/meson_options.txt | ||
38 | index 340fb5801d02..5b87f68e8d7f 100644 | ||
39 | --- a/meson_options.txt | ||
40 | +++ b/meson_options.txt | ||
41 | @@ -16,6 +16,7 @@ option('poisoning', type : 'boolean', value : false, description : 'Enable poiso | ||
42 | option('memory-alignment', type: 'combo', | ||
43 | choices : ['1', '2', '4', '8', '16', '32', '64', '128', '256', '512', '1024', '2048', '4096', '8192', 'malloc', 'pagesize'], | ||
44 | value: 'malloc') | ||
45 | +option('installed_tests', type : 'boolean', value : false, description : 'Enable installed tests') | ||
46 | |||
47 | # Feature options | ||
48 | option('check', type : 'feature', value : 'auto', description : 'Build unit test libraries') | ||
49 | diff --git a/tests/check/meson.build b/tests/check/meson.build | ||
50 | index e9501feb2af5..fd5a99611e3d 100644 | ||
51 | --- a/tests/check/meson.build | ||
52 | +++ b/tests/check/meson.build | ||
53 | @@ -125,10 +125,16 @@ test_defines = [ | ||
54 | '-UG_DISABLE_ASSERT', | ||
55 | '-UG_DISABLE_CAST_CHECKS', | ||
56 | '-DGST_CHECK_TEST_ENVIRONMENT_BEACON="GST_STATE_IGNORE_ELEMENTS"', | ||
57 | - '-DTESTFILE="' + fsmod.as_posix(meson.current_source_dir()) + '/meson.build"', | ||
58 | '-DGST_DISABLE_DEPRECATED', | ||
59 | ] | ||
60 | |||
61 | +testfile = meson.current_source_dir() + '/meson.build' | ||
62 | +if installed_tests_enabled | ||
63 | + install_data(testfile, install_dir : installed_tests_metadir, rename : 'testfile') | ||
64 | + testfile = installed_tests_metadir + '/testfile' | ||
65 | +endif | ||
66 | +test_defines += '-DTESTFILE="@0@"'.format(testfile) | ||
67 | + | ||
68 | # sanity checking | ||
69 | if get_option('check').disabled() | ||
70 | if get_option('tests').enabled() | ||
71 | @@ -151,6 +157,8 @@ foreach t : core_tests | ||
72 | include_directories : [configinc], | ||
73 | link_with : link_with_libs, | ||
74 | dependencies : gst_deps + test_deps, | ||
75 | + install_dir: installed_tests_execdir, | ||
76 | + install: installed_tests_enabled, | ||
77 | ) | ||
78 | |||
79 | env = environment() | ||
80 | @@ -161,6 +169,17 @@ foreach t : core_tests | ||
81 | env.set('GST_REGISTRY', '@0@/@1@.registry'.format(meson.current_build_dir(), test_name)) | ||
82 | env.set('GST_PLUGIN_SCANNER_1_0', gst_scanner_dir + '/gst-plugin-scanner') | ||
83 | env.set('GST_PLUGIN_LOADING_WHITELIST', 'gstreamer') | ||
84 | + if installed_tests_enabled | ||
85 | + test_conf = configuration_data() | ||
86 | + test_conf.set('installed_tests_dir', join_paths(prefix, installed_tests_execdir)) | ||
87 | + test_conf.set('program', test_name) | ||
88 | + configure_file( | ||
89 | + input: 'template.test.in', | ||
90 | + output: test_name + '.test', | ||
91 | + install_dir: installed_tests_metadir, | ||
92 | + configuration: test_conf | ||
93 | + ) | ||
94 | + endif | ||
95 | |||
96 | test(test_name, exe, env: env, timeout : 3 * 60) | ||
97 | endif | ||
98 | diff --git a/tests/check/template.test.in b/tests/check/template.test.in | ||
99 | new file mode 100644 | ||
100 | index 000000000000..f701627f87a6 | ||
101 | --- /dev/null | ||
102 | +++ b/tests/check/template.test.in | ||
103 | @@ -0,0 +1,3 @@ | ||
104 | +[Test] | ||
105 | +Type=session | ||
106 | +Exec=@installed_tests_dir@/@program@ | ||
107 | -- | ||
108 | 2.39.2 | ||
109 | |||
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0/0003-tests-use-a-dictionaries-for-environment.patch b/recipes-multimedia/gstreamer/gstreamer1.0/0003-tests-use-a-dictionaries-for-environment.patch deleted file mode 100644 index 83f3870c..00000000 --- a/recipes-multimedia/gstreamer/gstreamer1.0/0003-tests-use-a-dictionaries-for-environment.patch +++ /dev/null | |||
@@ -1,51 +0,0 @@ | |||
1 | From 1f13b802bdb1c1e414c70f770dc164c80e0dcd57 Mon Sep 17 00:00:00 2001 | ||
2 | From: Jose Quaresma <quaresma.jose@gmail.com> | ||
3 | Date: Sat, 24 Apr 2021 10:34:47 +0100 | ||
4 | Subject: [PATCH 3/4] tests: use a dictionaries for environment | ||
5 | |||
6 | meson environment() can't be passed to configure_file and it is needed for installed_tests, | ||
7 | use a dictionary as this is simplest solution to install the environment. | ||
8 | |||
9 | Upstream-Status: Submitted [https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/789] | ||
10 | |||
11 | Signed-off-by: Jose Quaresma <quaresma.jose@gmail.com> | ||
12 | --- | ||
13 | tests/check/meson.build | 22 ++++++++++++++-------- | ||
14 | 1 file changed, 14 insertions(+), 8 deletions(-) | ||
15 | |||
16 | diff --git a/tests/check/meson.build b/tests/check/meson.build | ||
17 | index fd5a99611e3d..330abaaeadd5 100644 | ||
18 | --- a/tests/check/meson.build | ||
19 | +++ b/tests/check/meson.build | ||
20 | @@ -161,14 +161,20 @@ foreach t : core_tests | ||
21 | install: installed_tests_enabled, | ||
22 | ) | ||
23 | |||
24 | - env = environment() | ||
25 | - env.set('GST_PLUGIN_PATH_1_0', meson.project_build_root()) | ||
26 | - env.set('GST_PLUGIN_SYSTEM_PATH_1_0', '') | ||
27 | - env.set('GST_STATE_IGNORE_ELEMENTS', '') | ||
28 | - env.set('CK_DEFAULT_TIMEOUT', '20') | ||
29 | - env.set('GST_REGISTRY', '@0@/@1@.registry'.format(meson.current_build_dir(), test_name)) | ||
30 | - env.set('GST_PLUGIN_SCANNER_1_0', gst_scanner_dir + '/gst-plugin-scanner') | ||
31 | - env.set('GST_PLUGIN_LOADING_WHITELIST', 'gstreamer') | ||
32 | + # meson environment object can't be passed to configure_file and | ||
33 | + # installed tests uses configure_file to install the environment. | ||
34 | + # use a dictionary as this is the simplest solution | ||
35 | + # to install the environment. | ||
36 | + env = { | ||
37 | + 'GST_PLUGIN_PATH_1_0': meson.project_build_root(), | ||
38 | + 'GST_PLUGIN_SYSTEM_PATH_1_0': '', | ||
39 | + 'GST_STATE_IGNORE_ELEMENTS': '', | ||
40 | + 'CK_DEFAULT_TIMEOUT': '20', | ||
41 | + 'GST_REGISTRY': '@0@/@1@.registry'.format(meson.current_build_dir(), test_name), | ||
42 | + 'GST_PLUGIN_SCANNER_1_0': gst_scanner_dir + '/gst-plugin-scanner', | ||
43 | + 'GST_PLUGIN_LOADING_WHITELIST': 'gstreamer', | ||
44 | + } | ||
45 | + | ||
46 | if installed_tests_enabled | ||
47 | test_conf = configuration_data() | ||
48 | test_conf.set('installed_tests_dir', join_paths(prefix, installed_tests_execdir)) | ||
49 | -- | ||
50 | 2.39.2 | ||
51 | |||
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0/0004-tests-add-helper-script-to-run-the-installed_tests.patch b/recipes-multimedia/gstreamer/gstreamer1.0/0004-tests-add-helper-script-to-run-the-installed_tests.patch deleted file mode 100644 index 0a312389..00000000 --- a/recipes-multimedia/gstreamer/gstreamer1.0/0004-tests-add-helper-script-to-run-the-installed_tests.patch +++ /dev/null | |||
@@ -1,74 +0,0 @@ | |||
1 | From 616c489d4ff1e7ed878bc3760180ba994fbd1974 Mon Sep 17 00:00:00 2001 | ||
2 | From: Jose Quaresma <quaresma.jose@gmail.com> | ||
3 | Date: Sun, 2 May 2021 01:58:01 +0100 | ||
4 | Subject: [PATCH 4/4] tests: add helper script to run the installed_tests | ||
5 | |||
6 | - this is a bash script that will run the installed_tests | ||
7 | with some of the environment variables used in the meson | ||
8 | testing framework. | ||
9 | |||
10 | Upstream-Status: Submitted [https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/789] | ||
11 | |||
12 | Signed-off-by: Jose Quaresma <quaresma.jose@gmail.com> | ||
13 | --- | ||
14 | tests/check/meson.build | 17 +++++++++++++++++ | ||
15 | tests/check/template.sh.in | 9 +++++++++ | ||
16 | tests/check/template.test.in | 2 +- | ||
17 | 3 files changed, 27 insertions(+), 1 deletion(-) | ||
18 | create mode 100644 tests/check/template.sh.in | ||
19 | |||
20 | diff --git a/tests/check/meson.build b/tests/check/meson.build | ||
21 | index 330abaaeadd5..5d383b14dc29 100644 | ||
22 | --- a/tests/check/meson.build | ||
23 | +++ b/tests/check/meson.build | ||
24 | @@ -185,6 +185,23 @@ foreach t : core_tests | ||
25 | install_dir: installed_tests_metadir, | ||
26 | configuration: test_conf | ||
27 | ) | ||
28 | + | ||
29 | + # All the tests will be deployed on the target machine and | ||
30 | + # we use the home folder ~ for the registry which will then expand at runtime. | ||
31 | + # Using the /tmp/gstreamer-1.0/@0@.registry can be problematic as it mostly | ||
32 | + # is mounted using tmpfs and if the machine crash from some reason we can lost the registry | ||
33 | + # that is useful for debug propose of the tests itself. | ||
34 | + env += {'GST_REGISTRY': '~/.cache/gstreamer-1.0/@0@.registry'.format(test_name)} | ||
35 | + | ||
36 | + # Set the full path for the test it self. | ||
37 | + env += {'TEST': '@0@/@1@'.format(join_paths(prefix, installed_tests_execdir), test_name)} | ||
38 | + | ||
39 | + configure_file( | ||
40 | + input : 'template.sh.in', | ||
41 | + output: test_name + '.sh', | ||
42 | + install_dir: installed_tests_execdir, | ||
43 | + configuration : env, | ||
44 | + ) | ||
45 | endif | ||
46 | |||
47 | test(test_name, exe, env: env, timeout : 3 * 60) | ||
48 | diff --git a/tests/check/template.sh.in b/tests/check/template.sh.in | ||
49 | new file mode 100644 | ||
50 | index 000000000000..cf7d31b0ea5f | ||
51 | --- /dev/null | ||
52 | +++ b/tests/check/template.sh.in | ||
53 | @@ -0,0 +1,9 @@ | ||
54 | +#!/bin/sh | ||
55 | + | ||
56 | +set -ax | ||
57 | + | ||
58 | +CK_DEFAULT_TIMEOUT="@CK_DEFAULT_TIMEOUT@" | ||
59 | +GST_PLUGIN_LOADING_WHITELIST="@GST_PLUGIN_LOADING_WHITELIST@" | ||
60 | +GST_REGISTRY=@GST_REGISTRY@ | ||
61 | +GST_STATE_IGNORE_ELEMENTS="@GST_STATE_IGNORE_ELEMENTS@" | ||
62 | +exec @TEST@ | ||
63 | diff --git a/tests/check/template.test.in b/tests/check/template.test.in | ||
64 | index f701627f87a6..b74ef6ad732a 100644 | ||
65 | --- a/tests/check/template.test.in | ||
66 | +++ b/tests/check/template.test.in | ||
67 | @@ -1,3 +1,3 @@ | ||
68 | [Test] | ||
69 | Type=session | ||
70 | -Exec=@installed_tests_dir@/@program@ | ||
71 | +Exec=@installed_tests_dir@/@program@.sh | ||
72 | -- | ||
73 | 2.39.2 | ||
74 | |||
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0_1.24.0.imx.bb b/recipes-multimedia/gstreamer/gstreamer1.0_1.24.7.imx.bb index 43cb6a4a..51a12f30 100644 --- a/recipes-multimedia/gstreamer/gstreamer1.0_1.24.0.imx.bb +++ b/recipes-multimedia/gstreamer/gstreamer1.0_1.24.7.imx.bb | |||
@@ -26,8 +26,8 @@ SRC_URI = "https://gstreamer.freedesktop.org/src/gstreamer/gstreamer-${PV}.tar.x | |||
26 | file://run-ptest \ | 26 | file://run-ptest \ |
27 | file://0001-tests-respect-the-idententaion-used-in-meson.patch \ | 27 | file://0001-tests-respect-the-idententaion-used-in-meson.patch \ |
28 | file://0002-tests-add-support-for-install-the-tests.patch \ | 28 | file://0002-tests-add-support-for-install-the-tests.patch \ |
29 | file://0003-tests-use-a-dictionaries-for-environment.patch \ | 29 | file://0003-tests-use-a-dictionaries-for-environment.patch;striplevel=3 \ |
30 | file://0004-tests-add-helper-script-to-run-the-installed_tests.patch \ | 30 | file://0004-tests-add-helper-script-to-run-the-installed_tests.patch;striplevel=3 \ |
31 | " | 31 | " |
32 | SRC_URI[sha256sum] = "4408d7930f381809e85917acc19712f173261ba85bdf20c5567b2a21b1193b61" | 32 | SRC_URI[sha256sum] = "4408d7930f381809e85917acc19712f173261ba85bdf20c5567b2a21b1193b61" |
33 | 33 | ||
@@ -92,14 +92,21 @@ LIC_FILES_CHKSUM = " \ | |||
92 | " | 92 | " |
93 | 93 | ||
94 | # Use i.MX fork of GST for customizations | 94 | # Use i.MX fork of GST for customizations |
95 | SRC_URI:remove = "https://gstreamer.freedesktop.org/src/gstreamer/gstreamer-${PV}.tar.xz" | 95 | SRC_URI:remove = "https://gstreamer.freedesktop.org/src/gstreamer/gstreamer-${PV}.tar.xz \ |
96 | file://0001-tests-respect-the-idententaion-used-in-meson.patch \ | ||
97 | file://0002-tests-add-support-for-install-the-tests.patch \ | ||
98 | file://0003-tests-use-a-dictionaries-for-environment.patch;striplevel=3 \ | ||
99 | file://0004-tests-add-helper-script-to-run-the-installed_tests.patch;striplevel=3 \ | ||
100 | " | ||
96 | SRC_URI:prepend = "${GST1.0_SRC};branch=${SRCBRANCH} " | 101 | SRC_URI:prepend = "${GST1.0_SRC};branch=${SRCBRANCH} " |
97 | GST1.0_SRC ?= "gitsm://github.com/nxp-imx/gstreamer.git;protocol=https" | 102 | GST1.0_SRC ?= "gitsm://github.com/nxp-imx/gstreamer.git;protocol=https" |
98 | SRCBRANCH = "MM_04.09.01_2408_L6.6.y" | 103 | SRCBRANCH = "MM_04.09.02_2410_L6.6.y" |
99 | SRCREV = "eb286c0766a4fbbae70c8e9dda074f5a90e52e42" | 104 | SRCREV = "1a8f23da16cd224574ab2386803149c76f2cb628" |
100 | 105 | ||
101 | S = "${WORKDIR}/git" | 106 | S = "${WORKDIR}/git" |
102 | 107 | ||
108 | PACKAGECONFIG[tests] = "-Dtests=enabled,-Dtests=disabled" | ||
109 | |||
103 | COMPATIBLE_MACHINE = "(imx-nxp-bsp)" | 110 | COMPATIBLE_MACHINE = "(imx-nxp-bsp)" |
104 | 111 | ||
105 | ########### End of i.MX overrides ######### | 112 | ########### End of i.MX overrides ######### |
diff --git a/recipes-multimedia/gstreamer/imx-gst1.0-plugin_git.bb b/recipes-multimedia/gstreamer/imx-gst1.0-plugin_git.bb index e5898077..9ab20404 100644 --- a/recipes-multimedia/gstreamer/imx-gst1.0-plugin_git.bb +++ b/recipes-multimedia/gstreamer/imx-gst1.0-plugin_git.bb | |||
@@ -34,11 +34,11 @@ RREPLACES:${PN} = "gst1.0-fsl-plugin" | |||
34 | RPROVIDES:${PN} = "gst1.0-fsl-plugin" | 34 | RPROVIDES:${PN} = "gst1.0-fsl-plugin" |
35 | RCONFLICTS:${PN} = "gst1.0-fsl-plugin" | 35 | RCONFLICTS:${PN} = "gst1.0-fsl-plugin" |
36 | 36 | ||
37 | PV = "4.9.1+git${SRCPV}" | 37 | PV = "4.9.2+git${SRCPV}" |
38 | 38 | ||
39 | SRC_URI = "git://github.com/nxp-imx/imx-gst1.0-plugin.git;protocol=https;branch=${SRCBRANCH}" | 39 | SRC_URI = "git://github.com/nxp-imx/imx-gst1.0-plugin.git;protocol=https;branch=${SRCBRANCH}" |
40 | SRCBRANCH = "MM_04.09.01_2408_L6.6.y" | 40 | SRCBRANCH = "MM_04.09.02_2410_L6.6.y" |
41 | SRCREV = "87135d5f084b6c61efa6671cddc3a5509ab11640" | 41 | SRCREV = "ef9c1a080e739e6f0be878148d9f4a050dc83bec" |
42 | 42 | ||
43 | S = "${WORKDIR}/git" | 43 | S = "${WORKDIR}/git" |
44 | 44 | ||
@@ -54,15 +54,6 @@ PLATFORM:mx7ulp-nxp-bsp= "MX7ULP" | |||
54 | PLATFORM:mx8-nxp-bsp = "MX8" | 54 | PLATFORM:mx8-nxp-bsp = "MX8" |
55 | PLATFORM:mx9-nxp-bsp = "MX9" | 55 | PLATFORM:mx9-nxp-bsp = "MX9" |
56 | 56 | ||
57 | CFLAGS:append:toolchain-clang = " -Wno-implicit-int -Wno-int-conversion -Wno-incompatible-function-pointer-types" | ||
58 | # GCC-14 otherwise errors out | ||
59 | CFLAGS += " \ | ||
60 | -Wno-error=int-conversion \ | ||
61 | -Wno-error=incompatible-pointer-types \ | ||
62 | -Wno-error=return-mismatch \ | ||
63 | -Wno-error=implicit-function-declaration \ | ||
64 | " | ||
65 | |||
66 | # Todo add a mechanism to map possible build targets | 57 | # Todo add a mechanism to map possible build targets |
67 | EXTRA_OEMESON = "-Dplatform=${PLATFORM} \ | 58 | EXTRA_OEMESON = "-Dplatform=${PLATFORM} \ |
68 | -Dc_args="${CFLAGS} -I${STAGING_INCDIR_IMX}" \ | 59 | -Dc_args="${CFLAGS} -I${STAGING_INCDIR_IMX}" \ |