diff options
author | Wang Mingyu <wangmy@fujitsu.com> | 2023-11-03 15:12:14 +0800 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2023-11-05 11:28:39 +0000 |
commit | 253ff8493c5d600dca1950bd872b4c7eca4cf76f (patch) | |
tree | 39cdb68cd9fc96a6ae4784e71f516f73564e6f92 /meta/recipes-graphics/jpeg/libjpeg-turbo_3.0.1.bb | |
parent | 69933c15dd00e4a5fc14af25f350d0f22de411d0 (diff) | |
download | poky-253ff8493c5d600dca1950bd872b4c7eca4cf76f.tar.gz |
libjpeg-turbo: upgrade 3.0.0 -> 3.0.1
Changelog:
=============
1. The x86-64 SIMD functions now use a standard stack frame, prologue, and
epilogue so that debuggers and profilers can reliably capture backtraces from
within the functions.
2. Fixed two minor issues in the interblock smoothing algorithm that caused
mathematical (but not necessarily perceptible) edge block errors when
decompressing progressive JPEG images exactly two MCU blocks in width or that
use vertical chrominance subsampling.
3. Fixed a regression introduced by 3.0 beta2[6] that, in rare cases, caused
the C Huffman encoder (which is not used by default on x86 and Arm CPUs) to
generate incorrect results if the Neon SIMD extensions were explicitly disabled
at build time (by setting the 'WITH_SIMD' CMake variable to '0') in an AArch64
build of libjpeg-turbo.
(From OE-Core rev: f1d2ffb6c7282751919a7057ffc445db71866f96)
Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-graphics/jpeg/libjpeg-turbo_3.0.1.bb')
-rw-r--r-- | meta/recipes-graphics/jpeg/libjpeg-turbo_3.0.1.bb | 58 |
1 files changed, 58 insertions, 0 deletions
diff --git a/meta/recipes-graphics/jpeg/libjpeg-turbo_3.0.1.bb b/meta/recipes-graphics/jpeg/libjpeg-turbo_3.0.1.bb new file mode 100644 index 0000000000..99ed82dac4 --- /dev/null +++ b/meta/recipes-graphics/jpeg/libjpeg-turbo_3.0.1.bb | |||
@@ -0,0 +1,58 @@ | |||
1 | SUMMARY = "Hardware accelerated JPEG compression/decompression library" | ||
2 | DESCRIPTION = "libjpeg-turbo is a derivative of libjpeg that uses SIMD instructions (MMX, SSE2, NEON) to accelerate baseline JPEG compression and decompression" | ||
3 | HOMEPAGE = "http://libjpeg-turbo.org/" | ||
4 | |||
5 | LICENSE = "IJG & BSD-3-Clause & Zlib" | ||
6 | LIC_FILES_CHKSUM = "file://LICENSE.md;md5=2a8e0d8226a102f07ab63ed7fd6ce155" | ||
7 | |||
8 | DEPENDS:append:x86-64:class-target = " nasm-native" | ||
9 | DEPENDS:append:x86:class-target = " nasm-native" | ||
10 | |||
11 | SRC_URI = "${SOURCEFORGE_MIRROR}/${BPN}/${BPN}-${PV}.tar.gz" | ||
12 | |||
13 | SRC_URI[sha256sum] = "22429507714ae147b3acacd299e82099fce5d9f456882fc28e252e4579ba2a75" | ||
14 | UPSTREAM_CHECK_URI = "http://sourceforge.net/projects/libjpeg-turbo/files/" | ||
15 | UPSTREAM_CHECK_REGEX = "/libjpeg-turbo/files/(?P<pver>(\d+[\.\-_]*)+)/" | ||
16 | |||
17 | PE = "1" | ||
18 | |||
19 | # Drop-in replacement for jpeg | ||
20 | PROVIDES = "jpeg" | ||
21 | RPROVIDES:${PN} += "jpeg" | ||
22 | RREPLACES:${PN} += "jpeg" | ||
23 | RCONFLICTS:${PN} += "jpeg" | ||
24 | |||
25 | inherit cmake pkgconfig | ||
26 | |||
27 | export NASMENV = "--reproducible --debug-prefix-map=${WORKDIR}=/usr/src/debug/${PN}/${EXTENDPE}${PV}-${PR}" | ||
28 | |||
29 | # Add nasm-native dependency consistently for all build arches is hard | ||
30 | EXTRA_OECMAKE:append:class-native = " -DWITH_SIMD=False" | ||
31 | EXTRA_OECMAKE:append:class-nativesdk = " -DWITH_SIMD=False" | ||
32 | |||
33 | # Work around missing x32 ABI support | ||
34 | EXTRA_OECMAKE:append:class-target = " ${@bb.utils.contains("TUNE_FEATURES", "mx32", "-DWITH_SIMD=False", "", d)}" | ||
35 | |||
36 | # Work around missing non-floating point ABI support in MIPS | ||
37 | EXTRA_OECMAKE:append:class-target = " ${@bb.utils.contains("MIPSPKGSFX_FPU", "-nf", "-DWITH_SIMD=False", "", d)}" | ||
38 | |||
39 | EXTRA_OECMAKE:append:class-target:arm = " ${@bb.utils.contains("TUNE_FEATURES", "neon", "", "-DWITH_SIMD=False", d)}" | ||
40 | EXTRA_OECMAKE:append:class-target:armeb = " ${@bb.utils.contains("TUNE_FEATURES", "neon", "", "-DWITH_SIMD=False", d)}" | ||
41 | |||
42 | # Provide a workaround if Altivec unit is not present in PPC | ||
43 | EXTRA_OECMAKE:append:class-target:powerpc = " ${@bb.utils.contains("TUNE_FEATURES", "altivec", "", "-DWITH_SIMD=False", d)}" | ||
44 | EXTRA_OECMAKE:append:class-target:powerpc64 = " ${@bb.utils.contains("TUNE_FEATURES", "altivec", "", "-DWITH_SIMD=False", d)}" | ||
45 | EXTRA_OECMAKE:append:class-target:powerpc64le = " ${@bb.utils.contains("TUNE_FEATURES", "altivec", "", "-DWITH_SIMD=False", d)}" | ||
46 | |||
47 | DEBUG_OPTIMIZATION:append:armv4 = " ${@bb.utils.contains('TUNE_CCARGS', '-mthumb', '-fomit-frame-pointer', '', d)}" | ||
48 | DEBUG_OPTIMIZATION:append:armv5 = " ${@bb.utils.contains('TUNE_CCARGS', '-mthumb', '-fomit-frame-pointer', '', d)}" | ||
49 | |||
50 | PACKAGES =+ "jpeg-tools libturbojpeg" | ||
51 | |||
52 | DESCRIPTION:jpeg-tools = "The jpeg-tools package includes client programs to access libjpeg functionality. These tools allow for the compression, decompression, transformation and display of JPEG files and benchmarking of the libjpeg library." | ||
53 | FILES:jpeg-tools = "${bindir}/*" | ||
54 | |||
55 | DESCRIPTION:libturbojpeg = "A SIMD-accelerated JPEG codec which provides only TurboJPEG APIs" | ||
56 | FILES:libturbojpeg = "${libdir}/libturbojpeg.so.*" | ||
57 | |||
58 | BBCLASSEXTEND = "native nativesdk" | ||