diff options
Diffstat (limited to 'meta-oe/recipes-graphics/libsdl')
22 files changed, 305 insertions, 56 deletions
diff --git a/meta-oe/recipes-graphics/libsdl/libsdl-1.2.15/0001-stdlib-Make-iconv-use-portable-across-glibc-musl.patch b/meta-oe/recipes-graphics/libsdl/libsdl-1.2.15/0001-stdlib-Make-iconv-use-portable-across-glibc-musl.patch new file mode 100644 index 0000000000..2007766f74 --- /dev/null +++ b/meta-oe/recipes-graphics/libsdl/libsdl-1.2.15/0001-stdlib-Make-iconv-use-portable-across-glibc-musl.patch @@ -0,0 +1,52 @@ +From 6c35fc94ca30a4d0662479f7ef8a704d97aa7352 Mon Sep 17 00:00:00 2001 +From: Khem Raj <raj.khem@gmail.com> +Date: Sat, 18 May 2024 18:13:30 -0700 +Subject: [PATCH] stdlib: Make iconv use portable across glibc/musl + +This is a backport from libsdl2 + +Upstream-Status: Backport [https://github.com/libsdl-org/SDL/blob/main/src/stdlib/SDL_iconv.c#L49C1-L51C1] +Signed-off-by: Khem Raj <raj.khem@gmail.com> +--- + src/stdlib/SDL_iconv.c | 19 ++++--------------- + 1 file changed, 4 insertions(+), 15 deletions(-) + +diff --git a/src/stdlib/SDL_iconv.c b/src/stdlib/SDL_iconv.c +index fa56a99..087b6ec 100644 +--- a/src/stdlib/SDL_iconv.c ++++ b/src/stdlib/SDL_iconv.c +@@ -28,27 +28,16 @@ + + #ifdef HAVE_ICONV + +-/* Depending on which standard the iconv() was implemented with, +- iconv() may or may not use const char ** for the inbuf param. +- If we get this wrong, it's just a warning, so no big deal. +-*/ +-#if defined(_XGP6) || \ +- defined(__GLIBC__) && ((__GLIBC__ > 2) || (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 2)) +-#define ICONV_INBUF_NONCONST +-#endif +- + #include <errno.h> + + size_t SDL_iconv(SDL_iconv_t cd, + const char **inbuf, size_t *inbytesleft, + char **outbuf, size_t *outbytesleft) + { +- size_t retCode; +-#ifdef ICONV_INBUF_NONCONST +- retCode = iconv(cd, (char **)inbuf, inbytesleft, outbuf, outbytesleft); +-#else +- retCode = iconv(cd, inbuf, inbytesleft, outbuf, outbytesleft); +-#endif ++ /* iconv's second parameter may or may not be `const char const *` depending on the ++ C runtime's whims. Casting to void * seems to make everyone happy, though. */ ++ ++ const size_t retCode = iconv((iconv_t)((uintptr_t)cd), (void *)inbuf, inbytesleft, outbuf, outbytesleft); + if ( retCode == (size_t)-1 ) { + switch(errno) { + case E2BIG: +-- +2.45.1 + diff --git a/meta-oe/recipes-graphics/libsdl/libsdl-1.2.15/CVE-2019-13616.patch b/meta-oe/recipes-graphics/libsdl/libsdl-1.2.15/CVE-2019-13616.patch new file mode 100644 index 0000000000..d4166a16ab --- /dev/null +++ b/meta-oe/recipes-graphics/libsdl/libsdl-1.2.15/CVE-2019-13616.patch @@ -0,0 +1,29 @@ +From 97fefd050976bbbfca9608499f6a7d9fb86e70db Mon Sep 17 00:00:00 2001 +From: Sam Lantinga <slouken@libsdl.org> +Date: Tue, 30 Jul 2019 11:00:00 -0700 +Subject: [PATCH] Fixed bug 4538 - validate image size when loading BMP files +--- +Upstream-Status: Pending + + src/video/SDL_bmp.c | 5 +++++ + 1 file changed, 5 insertions(+) + +diff --git a/src/video/SDL_bmp.c b/src/video/SDL_bmp.c +index 8eadc5f..5b5e12c 100644 +--- a/src/video/SDL_bmp.c ++++ b/src/video/SDL_bmp.c +@@ -143,6 +143,11 @@ SDL_Surface * SDL_LoadBMP_RW (SDL_RWops *src, int freesrc) + (void) biYPelsPerMeter; + (void) biClrImportant; + ++ if (biWidth <= 0 || biHeight == 0) { ++ SDL_SetError("BMP file with bad dimensions (%dx%d)", biWidth, biHeight); ++ was_error = SDL_TRUE; ++ goto done; ++ } + if (biHeight < 0) { + topDown = SDL_TRUE; + biHeight = -biHeight; +-- +2.25.1 + diff --git a/meta-oe/recipes-graphics/libsdl/libsdl-1.2.15/CVE-2022-34568.patch b/meta-oe/recipes-graphics/libsdl/libsdl-1.2.15/CVE-2022-34568.patch new file mode 100644 index 0000000000..7561300cb3 --- /dev/null +++ b/meta-oe/recipes-graphics/libsdl/libsdl-1.2.15/CVE-2022-34568.patch @@ -0,0 +1,28 @@ +CVE: CVE-2022-34568 +Upstream-Status: Backport [https://github.com/libsdl-org/SDL-1.2/commit/d7e00208738a0bc6af302723fe64908ac35b777b ] +Signed-off-by: Lee Chee Yang <chee.yang.lee@intel.com> + +From d7e00208738a0bc6af302723fe64908ac35b777b Mon Sep 17 00:00:00 2001 +From: Ozkan Sezer <sezeroz@gmail.com> +Date: Sat, 18 Jun 2022 14:55:00 +0300 +Subject: [PATCH] SDL_x11yuv.c: fix possible use-after-free + +Fixes: https://github.com/libsdl-org/SDL-1.2/issues/863 +--- + src/video/x11/SDL_x11yuv.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/video/x11/SDL_x11yuv.c b/src/video/x11/SDL_x11yuv.c +index 62698dfd9..0d5754e3e 100644 +--- a/src/video/x11/SDL_x11yuv.c ++++ b/src/video/x11/SDL_x11yuv.c +@@ -374,8 +374,8 @@ SDL_Overlay *X11_CreateYUVOverlay(_THIS, int width, int height, Uint32 format, S + #ifdef PITCH_WORKAROUND + if ( hwdata->image != NULL && hwdata->image->pitches[0] != (width*bpp) ) { + /* Ajust overlay width according to pitch */ +- XFree(hwdata->image); + width = hwdata->image->pitches[0] / bpp; ++ XFree(hwdata->image); + hwdata->image = SDL_NAME(XvCreateImage)(GFX_Display, xv_port, format, + 0, width, height); + } diff --git a/meta-oe/recipes-graphics/libsdl/libsdl-gfx_2.0.25.bb b/meta-oe/recipes-graphics/libsdl/libsdl-gfx_2.0.25.bb index b077a0bdf8..666442fba2 100644 --- a/meta-oe/recipes-graphics/libsdl/libsdl-gfx_2.0.25.bb +++ b/meta-oe/recipes-graphics/libsdl/libsdl-gfx_2.0.25.bb @@ -3,7 +3,7 @@ SECTION = "libs" LICENSE = "Zlib" LIC_FILES_CHKSUM = "file://LICENSE;md5=5d1de21f0b70830e299905eac3419084" -DEPENDS = "virtual/libsdl" +DEPENDS = "libsdl" SRC_URI = "http://www.ferzkopp.net/Software/SDL_gfx-2.0/SDL_gfx-${PV}.tar.gz" SRC_URI[md5sum] = "ea24ed4b82ff1304809c363494fa8e16" diff --git a/meta-oe/recipes-graphics/libsdl/libsdl-image/0001-png-img-Fix-prototypes-of-callbacks.patch b/meta-oe/recipes-graphics/libsdl/libsdl-image/0001-png-img-Fix-prototypes-of-callbacks.patch new file mode 100644 index 0000000000..1bbfa99210 --- /dev/null +++ b/meta-oe/recipes-graphics/libsdl/libsdl-image/0001-png-img-Fix-prototypes-of-callbacks.patch @@ -0,0 +1,52 @@ +From 41791738221fdb7574fc8e23f84214910cdce098 Mon Sep 17 00:00:00 2001 +From: Khem Raj <raj.khem@gmail.com> +Date: Wed, 1 Mar 2023 21:51:40 -0800 +Subject: [PATCH] png-img: Fix prototypes of callbacks + +Clang-16 is flagging function pointer mismatches + +Upstream-Status: Inappropriate [No upstream] +Signed-off-by: Khem Raj <raj.khem@gmail.com> +--- + IMG_png.c | 16 ++++++++-------- + 1 file changed, 8 insertions(+), 8 deletions(-) + +diff --git a/IMG_png.c b/IMG_png.c +index 5f91f15..4d5bdb6 100644 +--- a/IMG_png.c ++++ b/IMG_png.c +@@ -78,15 +78,15 @@ + static struct { + int loaded; + void *handle; +- png_infop (*png_create_info_struct) (png_structp png_ptr); ++ png_infop (*png_create_info_struct) (png_const_structp png_ptr); + png_structp (*png_create_read_struct) (png_const_charp user_png_ver, png_voidp error_ptr, png_error_ptr error_fn, png_error_ptr warn_fn); + void (*png_destroy_read_struct) (png_structpp png_ptr_ptr, png_infopp info_ptr_ptr, png_infopp end_info_ptr_ptr); +- png_uint_32 (*png_get_IHDR) (png_structp png_ptr, png_infop info_ptr, png_uint_32 *width, png_uint_32 *height, int *bit_depth, int *color_type, int *interlace_method, int *compression_method, int *filter_method); +- png_voidp (*png_get_io_ptr) (png_structp png_ptr); +- png_byte (*png_get_channels) (png_structp png_ptr, png_infop info_ptr); +- png_uint_32 (*png_get_PLTE) (png_structp png_ptr, png_infop info_ptr, png_colorp *palette, int *num_palette); +- png_uint_32 (*png_get_tRNS) (png_structp png_ptr, png_infop info_ptr, png_bytep *trans, int *num_trans, png_color_16p *trans_values); +- png_uint_32 (*png_get_valid) (png_structp png_ptr, png_infop info_ptr, png_uint_32 flag); ++ png_uint_32 (*png_get_IHDR) (png_const_structp png_ptr, png_const_infop info_ptr, png_uint_32 *width, png_uint_32 *height, int *bit_depth, int *color_type, int *interlace_method, int *compression_method, int *filter_method); ++ png_voidp (*png_get_io_ptr) (png_const_structp png_ptr); ++ png_byte (*png_get_channels) (png_const_structp png_ptr, png_const_infop info_ptr); ++ png_uint_32 (*png_get_PLTE) (png_const_structp png_ptr, png_infop info_ptr, png_colorp *palette, int *num_palette); ++ png_uint_32 (*png_get_tRNS) (png_const_structp png_ptr, png_infop info_ptr, png_bytep *trans, int *num_trans, png_color_16p *trans_values); ++ png_uint_32 (*png_get_valid) (png_const_structp png_ptr, png_const_infop info_ptr, png_uint_32 flag); + void (*png_read_image) (png_structp png_ptr, png_bytepp image); + void (*png_read_info) (png_structp png_ptr, png_infop info_ptr); + void (*png_read_update_info) (png_structp png_ptr, png_infop info_ptr); +@@ -95,7 +95,7 @@ static struct { + void (*png_set_packing) (png_structp png_ptr); + void (*png_set_read_fn) (png_structp png_ptr, png_voidp io_ptr, png_rw_ptr read_data_fn); + void (*png_set_strip_16) (png_structp png_ptr); +- int (*png_sig_cmp) (png_bytep sig, png_size_t start, png_size_t num_to_check); ++ int (*png_sig_cmp) (png_const_bytep sig, png_size_t start, png_size_t num_to_check); + #ifndef LIBPNG_VERSION_12 + jmp_buf* (*png_set_longjmp_fn) (png_structp, png_longjmp_ptr, size_t); + #endif +-- +2.39.2 + diff --git a/meta-oe/recipes-graphics/libsdl/libsdl-image/configure.patch b/meta-oe/recipes-graphics/libsdl/libsdl-image/configure.patch index 5299d378eb..102cec7288 100644 --- a/meta-oe/recipes-graphics/libsdl/libsdl-image/configure.patch +++ b/meta-oe/recipes-graphics/libsdl/libsdl-image/configure.patch @@ -1,3 +1,5 @@ +Upstream-Status: Pending + Index: SDL_image-1.2.12/configure.in =================================================================== --- SDL_image-1.2.12.orig/configure.in 2012-01-21 01:51:33.000000000 +0000 diff --git a/meta-oe/recipes-graphics/libsdl/libsdl-image_1.2.12.bb b/meta-oe/recipes-graphics/libsdl/libsdl-image_1.2.12.bb index ea8e9eaa30..01137bb0ca 100644 --- a/meta-oe/recipes-graphics/libsdl/libsdl-image_1.2.12.bb +++ b/meta-oe/recipes-graphics/libsdl/libsdl-image_1.2.12.bb @@ -4,11 +4,11 @@ SECTION = "libs" LICENSE = "Zlib" LIC_FILES_CHKSUM = "file://COPYING;md5=613734b7586e1580ef944961c6d62227" -DEPENDS = "tiff zlib libpng jpeg virtual/libsdl" +DEPENDS = "tiff zlib libpng jpeg libsdl" SRC_URI = "http://www.libsdl.org/projects/SDL_image/release/SDL_image-${PV}.tar.gz \ + file://0001-png-img-Fix-prototypes-of-callbacks.patch \ file://configure.patch" -SRC_URI[md5sum] = "a0f9098ebe5400f0bdc9b62e60797ecb" SRC_URI[sha256sum] = "0b90722984561004de84847744d566809dbb9daf732a9e503b91a1b5a84e5699" S = "${WORKDIR}/SDL_image-${PV}" @@ -20,7 +20,7 @@ export SDL_CONFIG = "${STAGING_BINDIR_CROSS}/sdl-config" # Disable the run-time loading of the libs and bring back the soname dependencies. EXTRA_OECONF += "--disable-jpg-shared --disable-png-shared -disable-tif-shared" -do_configure_prepend() { +do_configure:prepend() { # Removing these files fixes a libtool version mismatch. rm -f ${S}/acinclude/libtool.m4 rm -f ${S}/acinclude/sdl.m4 diff --git a/meta-oe/recipes-graphics/libsdl/libsdl-mixer/configure.patch b/meta-oe/recipes-graphics/libsdl/libsdl-mixer/configure.patch index 4c9e8d094c..7330ef61aa 100644 --- a/meta-oe/recipes-graphics/libsdl/libsdl-mixer/configure.patch +++ b/meta-oe/recipes-graphics/libsdl/libsdl-mixer/configure.patch @@ -1,3 +1,5 @@ +Upstream-Status: Pending + diff -Nurd SDL_mixer-1.2.12/configure.in SDL_mixer-1.2.12/configure.in --- SDL_mixer-1.2.12/configure.in 2012-01-16 00:01:05.000000000 +0200 +++ SDL_mixer-1.2.12/configure.in 2012-12-15 04:08:04.627871456 +0200 diff --git a/meta-oe/recipes-graphics/libsdl/libsdl-mixer_1.2.12.bb b/meta-oe/recipes-graphics/libsdl/libsdl-mixer_1.2.12.bb index c83fcc8daa..a470ee81d0 100644 --- a/meta-oe/recipes-graphics/libsdl/libsdl-mixer_1.2.12.bb +++ b/meta-oe/recipes-graphics/libsdl/libsdl-mixer_1.2.12.bb @@ -1,6 +1,6 @@ SUMMARY = "Simple DirectMedia Layer mixer library" SECTION = "libs" -DEPENDS = "virtual/libsdl flac libmikmod libvorbis" +DEPENDS = "libsdl flac libmikmod libvorbis" LICENSE = "Zlib" LIC_FILES_CHKSUM = "file://COPYING;md5=a37a47a0e579e461474cd03b9e05199d" diff --git a/meta-oe/recipes-graphics/libsdl/libsdl-net/am_foreign.patch b/meta-oe/recipes-graphics/libsdl/libsdl-net/am_foreign.patch index fb3ff7e689..7911a2aa75 100644 --- a/meta-oe/recipes-graphics/libsdl/libsdl-net/am_foreign.patch +++ b/meta-oe/recipes-graphics/libsdl/libsdl-net/am_foreign.patch @@ -1,3 +1,5 @@ +Upstream-Status: Pending + diff -Nurd SDL_net-1.2.8/Makefile.am SDL_net-1.2.8/Makefile.am --- SDL_net-1.2.8/Makefile.am 2012-01-15 18:20:10.000000000 +0200 +++ SDL_net-1.2.8/Makefile.am 2014-08-01 21:18:52.720815807 +0300 diff --git a/meta-oe/recipes-graphics/libsdl/libsdl-net/libtool2.patch b/meta-oe/recipes-graphics/libsdl/libsdl-net/libtool2.patch index 9718a3b94a..e491c1abce 100644 --- a/meta-oe/recipes-graphics/libsdl/libsdl-net/libtool2.patch +++ b/meta-oe/recipes-graphics/libsdl/libsdl-net/libtool2.patch @@ -3,6 +3,8 @@ From: Denis 'GNUtoo' Carikli <GNUtoo@no-log.org> Date: Wed, 17 Oct 2012 20:51:51 +0200 --- +Upstream-Status: Pending + configure.in | 2 ++ 1 file changed, 2 insertions(+) diff --git a/meta-oe/recipes-graphics/libsdl/libsdl-net_1.2.8.bb b/meta-oe/recipes-graphics/libsdl/libsdl-net_1.2.8.bb index b021e565ef..49b1ef2879 100644 --- a/meta-oe/recipes-graphics/libsdl/libsdl-net_1.2.8.bb +++ b/meta-oe/recipes-graphics/libsdl/libsdl-net_1.2.8.bb @@ -6,7 +6,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=9cf3de2d872bf510f88eb20d06d700b5" inherit autotools pkgconfig -DEPENDS = "virtual/libsdl" +DEPENDS = "libsdl" SRC_URI = " \ https://www.libsdl.org/projects/SDL_net/release/SDL_net-${PV}.tar.gz \ diff --git a/meta-oe/recipes-graphics/libsdl/libsdl-ttf/use.pkg-config.for.freetype2.patch b/meta-oe/recipes-graphics/libsdl/libsdl-ttf/use.pkg-config.for.freetype2.patch index 1116c34d07..d174d7ab5c 100644 --- a/meta-oe/recipes-graphics/libsdl/libsdl-ttf/use.pkg-config.for.freetype2.patch +++ b/meta-oe/recipes-graphics/libsdl/libsdl-ttf/use.pkg-config.for.freetype2.patch @@ -8,6 +8,8 @@ commit 5870bd272b0b077d0826fb900b251884c1c05061 binconfig-disabled: Add class and use --- +Upstream-Status: Pending + configure.in | 38 +++++--------------------------------- 1 file changed, 5 insertions(+), 33 deletions(-) diff --git a/meta-oe/recipes-graphics/libsdl/libsdl-ttf_2.0.11.bb b/meta-oe/recipes-graphics/libsdl/libsdl-ttf_2.0.11.bb index d8b378f2cd..797c38d8e1 100644 --- a/meta-oe/recipes-graphics/libsdl/libsdl-ttf_2.0.11.bb +++ b/meta-oe/recipes-graphics/libsdl/libsdl-ttf_2.0.11.bb @@ -1,6 +1,6 @@ SUMMARY = "Simple DirectMedia Layer truetype font library" SECTION = "libs" -DEPENDS = "virtual/libsdl freetype" +DEPENDS = "libsdl freetype" LICENSE = "Zlib" LIC_FILES_CHKSUM = "file://COPYING;md5=22800d1b3701377aae0b61ee36f5c303" @@ -16,7 +16,7 @@ inherit autotools pkgconfig LDFLAGS += "-lm" -do_configure_prepend() { +do_configure:prepend() { # make autoreconf happy touch ${S}/NEWS ${S}/AUTHORS ${S}/ChangeLog diff --git a/meta-oe/recipes-graphics/libsdl/libsdl2-image_2.0.5.bb b/meta-oe/recipes-graphics/libsdl/libsdl2-image_2.8.2.bb index 0a346bd9e6..267311853a 100644 --- a/meta-oe/recipes-graphics/libsdl/libsdl2-image_2.0.5.bb +++ b/meta-oe/recipes-graphics/libsdl/libsdl2-image_2.8.2.bb @@ -2,13 +2,12 @@ SUMMARY = "Simple DirectMedia Layer image library v2" SECTION = "libs" LICENSE = "Zlib" -LIC_FILES_CHKSUM = "file://COPYING.txt;md5=822edb694b20ff16ceef85b27f61c11f" +LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=2f6d9e01c97958aa851954ed5acf82ee" -DEPENDS = "tiff zlib libpng jpeg virtual/libsdl2 libwebp" +DEPENDS = "tiff zlib libpng jpeg libsdl2 libwebp" SRC_URI = "http://www.libsdl.org/projects/SDL_image/release/SDL2_image-${PV}.tar.gz" -SRC_URI[md5sum] = "f26f3a153360a8f09ed5220ef7b07aea" -SRC_URI[sha256sum] = "bdd5f6e026682f7d7e1be0b6051b209da2f402a2dd8bd1c4bd9c25ad263108d0" +SRC_URI[sha256sum] = "8f486bbfbcf8464dd58c9e5d93394ab0255ce68b51c5a966a918244820a76ddc" S = "${WORKDIR}/SDL2_image-${PV}" @@ -17,7 +16,7 @@ inherit autotools pkgconfig # Disable the run-time loading of the libs and bring back the soname dependencies. EXTRA_OECONF += "--disable-jpg-shared --disable-png-shared -disable-tif-shared" -do_configure_prepend() { +do_configure:prepend() { # make autoreconf happy touch ${S}/NEWS ${S}/README ${S}/AUTHORS ${S}/ChangeLog # Removing these files fixes a libtool version mismatch. diff --git a/meta-oe/recipes-graphics/libsdl/libsdl2-mixer_2.0.4.bb b/meta-oe/recipes-graphics/libsdl/libsdl2-mixer_2.0.4.bb index 6b6a531d38..dbcb2a193b 100644 --- a/meta-oe/recipes-graphics/libsdl/libsdl2-mixer_2.0.4.bb +++ b/meta-oe/recipes-graphics/libsdl/libsdl2-mixer_2.0.4.bb @@ -1,6 +1,6 @@ SUMMARY = "Simple DirectMedia Layer mixer library V2" SECTION = "libs" -DEPENDS = "virtual/libsdl2 flac libmikmod libvorbis" +DEPENDS = "libsdl2 flac libmikmod libvorbis" LICENSE = "Zlib" LIC_FILES_CHKSUM = "file://COPYING.txt;md5=516daf7a177ad4c8874bb9efa1a69c1f" @@ -18,7 +18,7 @@ EXTRA_OECONF = "--disable-music-mp3 --enable-music-ogg --disable-music-ogg-share PACKAGECONFIG ??= "" PACKAGECONFIG[mad] = "--enable-music-mp3-mad-gpl,--disable-music-mp3-mad-gpl,libmad" -do_configure_prepend () { +do_configure:prepend () { # Remove old libtool macros. MACROS="libtool.m4 lt~obsolete.m4 ltoptions.m4 ltsugar.m4 ltversion.m4" for i in ${MACROS}; do diff --git a/meta-oe/recipes-graphics/libsdl/libsdl2-net_2.0.1.bb b/meta-oe/recipes-graphics/libsdl/libsdl2-net_2.0.1.bb index 0ea96fe1b8..35369e8731 100644 --- a/meta-oe/recipes-graphics/libsdl/libsdl2-net_2.0.1.bb +++ b/meta-oe/recipes-graphics/libsdl/libsdl2-net_2.0.1.bb @@ -10,12 +10,12 @@ S = "${WORKDIR}/SDL2_net-${PV}" inherit autotools pkgconfig -DEPENDS = "virtual/libsdl2" +DEPENDS = "libsdl2" SRC_URI[md5sum] = "5c1d9d1cfa63301b141cb5c0de2ea7c4" SRC_URI[sha256sum] = "15ce8a7e5a23dafe8177c8df6e6c79b6749a03fff1e8196742d3571657609d21" -do_configure_prepend() { +do_configure:prepend() { # create dummy files which autotools consider as mandatory touch ${S}/NEWS ${S}/README ${S}/AUTHORS ${S}/ChangeLog diff --git a/meta-oe/recipes-graphics/libsdl/libsdl2-ttf/0001-freetype-Fix-function-signatures-to-match-without-ca.patch b/meta-oe/recipes-graphics/libsdl/libsdl2-ttf/0001-freetype-Fix-function-signatures-to-match-without-ca.patch new file mode 100644 index 0000000000..8cb76c35d6 --- /dev/null +++ b/meta-oe/recipes-graphics/libsdl/libsdl2-ttf/0001-freetype-Fix-function-signatures-to-match-without-ca.patch @@ -0,0 +1,69 @@ +From 6c52693d264ca3dc8e15a92f56cf3a636639bb6c Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Martin=20Storsj=C3=B6?= <martin@martin.st> +Date: Fri, 28 Oct 2022 22:17:15 +0300 +Subject: [PATCH] freetype: Fix function signatures to match without casts + +Clang 16 has got a new stricter warning for casts of function types +(see https://github.com/llvm/llvm-project/commit/1aad641c793090b4d036c03e737df2ebe2c32c57). + +This new warning gets included as part of the existing error +diagnostic setting of -Wcast-function-type. + +This fixes errors like these: + +../src/hb-ft.cc:1011:34: error: cast from 'void (*)(FT_Face)' (aka 'void (*)(FT_FaceRec_ *)') to 'FT_Generic_Finalizer' (aka 'void (*)(void *)') converts to incompatible function type [-Werror,-Wcast-function-type-strict] + ft_face->generic.finalizer = (FT_Generic_Finalizer) hb_ft_face_finalize; + ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +Upstream-Status: Backport [https://github.com/harfbuzz/harfbuzz/commit/d88269c827895b38f99f7cf741fa60210d4d5169] +--- + src/hb-ft.cc | 10 ++++++---- + 1 file changed, 6 insertions(+), 4 deletions(-) + +diff --git a/src/hb-ft.cc b/src/hb-ft.cc +index a6beb9f0f..a35e75b18 100644 +--- a/src/hb-ft.cc ++++ b/src/hb-ft.cc +@@ -729,8 +729,9 @@ hb_ft_face_create_referenced (FT_Face ft_face) + } + + static void +-hb_ft_face_finalize (FT_Face ft_face) ++hb_ft_face_finalize (void *arg) + { ++ FT_Face ft_face = (FT_Face) arg; + hb_face_destroy ((hb_face_t *) ft_face->generic.data); + } + +@@ -762,7 +763,7 @@ hb_ft_face_create_cached (FT_Face ft_face) + ft_face->generic.finalizer (ft_face); + + ft_face->generic.data = hb_ft_face_create (ft_face, nullptr); +- ft_face->generic.finalizer = (FT_Generic_Finalizer) hb_ft_face_finalize; ++ ft_face->generic.finalizer = hb_ft_face_finalize; + } + + return hb_face_reference ((hb_face_t *) ft_face->generic.data); +@@ -949,8 +950,9 @@ get_ft_library () + } + + static void +-_release_blob (FT_Face ft_face) ++_release_blob (void *arg) + { ++ FT_Face ft_face = (FT_Face) arg; + hb_blob_destroy ((hb_blob_t *) ft_face->generic.data); + } + +@@ -1032,7 +1034,7 @@ hb_ft_font_set_funcs (hb_font_t *font) + #endif + + ft_face->generic.data = blob; +- ft_face->generic.finalizer = (FT_Generic_Finalizer) _release_blob; ++ ft_face->generic.finalizer = _release_blob; + + _hb_ft_font_set_funcs (font, ft_face, true); + hb_ft_font_set_load_flags (font, FT_LOAD_DEFAULT | FT_LOAD_NO_HINTING); +-- +2.39.2 + diff --git a/meta-oe/recipes-graphics/libsdl/libsdl2-ttf/automake_foreign.patch b/meta-oe/recipes-graphics/libsdl/libsdl2-ttf/automake_foreign.patch index 871e6e94ef..bc9371553f 100644 --- a/meta-oe/recipes-graphics/libsdl/libsdl2-ttf/automake_foreign.patch +++ b/meta-oe/recipes-graphics/libsdl/libsdl2-ttf/automake_foreign.patch @@ -1,16 +1,18 @@ -From f9c4ad3a171d676e3818b8f6897f325ccf0b2203 Mon Sep 17 00:00:00 2001 +From 6ec375eaafc43a2b3c30a0e0e49447d231d81a67 Mon Sep 17 00:00:00 2001 From: Khem Raj <raj.khem@gmail.com> Date: Tue, 9 May 2017 00:57:10 -0700 --- +Upstream-Status: Pending + Makefile.am | 2 ++ 1 file changed, 2 insertions(+) diff --git a/Makefile.am b/Makefile.am -index 8166d91..8e05e49 100644 +index 8568dd2..5efc91e 100644 --- a/Makefile.am +++ b/Makefile.am -@@ -2,6 +2,8 @@ +@@ -3,6 +3,8 @@ ACLOCAL_AMFLAGS = -I acinclude lib_LTLIBRARIES = libSDL2_ttf.la diff --git a/meta-oe/recipes-graphics/libsdl/libsdl2-ttf_2.0.15.bb b/meta-oe/recipes-graphics/libsdl/libsdl2-ttf_2.0.15.bb deleted file mode 100644 index 7d896cf00b..0000000000 --- a/meta-oe/recipes-graphics/libsdl/libsdl2-ttf_2.0.15.bb +++ /dev/null @@ -1,29 +0,0 @@ -SUMMARY = "Simple DirectMedia Layer truetype font library" -SECTION = "libs" -DEPENDS = "virtual/libsdl2 freetype virtual/libgl" -LICENSE = "Zlib" -LIC_FILES_CHKSUM = "file://COPYING.txt;md5=4bb27d550fdafcd8f8e4fb8cbb2775ef" - -SRC_URI = " \ - http://www.libsdl.org/projects/SDL_ttf/release/SDL2_ttf-${PV}.tar.gz \ - file://automake_foreign.patch \ -" -SRC_URI[md5sum] = "04fe06ff7623d7bdcb704e82f5f88391" -SRC_URI[sha256sum] = "a9eceb1ad88c1f1545cd7bd28e7cbc0b2c14191d40238f531a15b01b1b22cd33" - -S = "${WORKDIR}/SDL2_ttf-${PV}" - -inherit autotools pkgconfig features_check - -# links to libGL.so -REQUIRED_DISTRO_FEATURES += "x11 opengl" - -do_configure_prepend() { - # Removing these files fixes a libtool version mismatch. - MACROS="libtool.m4 lt~obsolete.m4 ltoptions.m4 ltsugar.m4 ltversion.m4" - - for i in ${MACROS}; do - rm -f ${S}/acinclude/$i - done -} -ASNEEDED = "" diff --git a/meta-oe/recipes-graphics/libsdl/libsdl2-ttf_2.20.2.bb b/meta-oe/recipes-graphics/libsdl/libsdl2-ttf_2.20.2.bb new file mode 100644 index 0000000000..6cd4a48aa8 --- /dev/null +++ b/meta-oe/recipes-graphics/libsdl/libsdl2-ttf_2.20.2.bb @@ -0,0 +1,35 @@ +SUMMARY = "Simple DirectMedia Layer truetype font library" +SECTION = "libs" +DEPENDS = "libsdl2 freetype virtual/egl" +LICENSE = "Zlib" +LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=a41cbf59bdea749fe34c1af6d3615f68" + +SRC_URI = " \ + git://github.com/libsdl-org/SDL_ttf.git;branch=release-2.20.x;protocol=https \ + git://github.com/libsdl-org/freetype.git;branch=VER-2-12-1-SDL;destsuffix=git/external/freetype;name=freetype;protocol=https \ + git://github.com/libsdl-org/harfbuzz.git;branch=2.9.1-SDL;destsuffix=git/external/harfbuzz;name=harfbuzz;protocol=https \ + file://0001-freetype-Fix-function-signatures-to-match-without-ca.patch;patchdir=external/harfbuzz \ + file://automake_foreign.patch \ +" +SRCREV = "89d1692fd8fe91a679bb943d377bfbd709b52c23" +SRCREV_freetype = "6fc77cee03e078e97afcee0c0e06a2d3274b9a29" +SRCREV_harfbuzz = "43931e3e596c04044861770b831c8f9452e2d3b0" + +SRCREV_FORMAT .= "_freetype_harfbuzz" + +S = "${WORKDIR}/git" + +inherit autotools pkgconfig features_check + +# links to libGL.so +REQUIRED_DISTRO_FEATURES += "opengl" + +do_configure:prepend() { + # Removing these files fixes a libtool version mismatch. + MACROS="libtool.m4 lt~obsolete.m4 ltoptions.m4 ltsugar.m4 ltversion.m4" + + for i in ${MACROS}; do + rm -f ${S}/acinclude/$i + done +} +ASNEEDED = "" diff --git a/meta-oe/recipes-graphics/libsdl/libsdl_1.2.15.bb b/meta-oe/recipes-graphics/libsdl/libsdl_1.2.15.bb index 7a01908322..1f436c6d7f 100644 --- a/meta-oe/recipes-graphics/libsdl/libsdl_1.2.15.bb +++ b/meta-oe/recipes-graphics/libsdl/libsdl_1.2.15.bb @@ -7,17 +7,15 @@ BUGTRACKER = "http://bugzilla.libsdl.org/" SECTION = "libs" -LICENSE = "LGPLv2.1" +LICENSE = "LGPL-2.1-only" LIC_FILES_CHKSUM = "file://COPYING;md5=27818cd7fd83877a8e3ef82b82798ef4" -PROVIDES = "virtual/libsdl" - -PR = "r3" SRC_URI = "http://www.libsdl.org/release/SDL-${PV}.tar.gz \ file://libsdl-1.2.15-xdata32.patch \ file://pkgconfig.patch \ file://0001-build-Pass-tag-CC-explictly-when-using-libtool.patch \ + file://0001-stdlib-Make-iconv-use-portable-across-glibc-musl.patch \ file://CVE-2019-7577.patch \ file://CVE-2019-7574.patch \ file://CVE-2019-7572.patch \ @@ -27,6 +25,8 @@ SRC_URI = "http://www.libsdl.org/release/SDL-${PV}.tar.gz \ file://CVE-2019-7637.patch \ file://CVE-2019-7638.patch \ file://CVE-2019-7576.patch \ + file://CVE-2019-13616.patch \ + file://CVE-2022-34568.patch \ " UPSTREAM_CHECK_REGEX = "SDL-(?P<pver>\d+(\.\d+)+)\.tar" @@ -55,8 +55,8 @@ EXTRA_OECONF = "--disable-static --enable-cdrom --enable-threads --enable-timers PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'alsa directfb pulseaudio x11', d)} \ ${@bb.utils.contains('DISTRO_FEATURES', 'x11 opengl', 'opengl', '', d)}" -PACKAGECONFIG_class-native = "x11" -PACKAGECONFIG_class-nativesdk = "${@bb.utils.filter('DISTRO_FEATURES', 'x11', d)}" +PACKAGECONFIG:class-native = "x11" +PACKAGECONFIG:class-nativesdk = "${@bb.utils.filter('DISTRO_FEATURES', 'x11', d)}" PACKAGECONFIG[alsa] = "--enable-alsa --disable-alsatest,--disable-alsa,alsa-lib" PACKAGECONFIG[pulseaudio] = "--enable-pulseaudio,--disable-pulseaudio,pulseaudio" @@ -71,7 +71,7 @@ PACKAGECONFIG[directx] = "--enable-directx,--disable-directx" EXTRA_AUTORECONF += "--include=acinclude --exclude=autoheader" -do_configure_prepend() { +do_configure:prepend() { # Remove old libtool macros. MACROS="libtool.m4 lt~obsolete.m4 ltoptions.m4 ltsugar.m4 ltversion.m4" for i in ${MACROS}; do @@ -81,3 +81,5 @@ do_configure_prepend() { } BBCLASSEXTEND = "native nativesdk" + +CVE_STATUS[CVE-2019-14906] = "not-applicable-platform: Applies on RHEL only" |