Here is an update to jpeg 2.1.5.1.
2.1.5.1
=======
### Significant changes relative to 2.1.5:
1. The SIMD dispatchers in libjpeg-turbo 2.1.4 and prior stored the list of
supported SIMD instruction sets in a global variable, which caused an innocuous
race condition whereby the variable could have been initialized multiple times
if `jpeg_start_*compress()` was called simultaneously in multiple threads.
libjpeg-turbo 2.1.5 included an undocumented attempt to fix this race condition
by making the SIMD support variable thread-local. However, that caused another
issue whereby, if `jpeg_start_*compress()` was called in one thread and
`jpeg_read_*()` or `jpeg_write_*()` was called in a second thread, the SIMD
support variable was never initialized in the second thread. On x86 systems,
this led the second thread to incorrectly assume that AVX2 instructions were
always available, and when it attempted to use those instructions on older x86
CPUs that do not support them, an illegal instruction error occurred. The SIMD
dispatchers now ensure that the SIMD support variable is initialized before
dispatching based on its value.
Index: Makefile
===================================================================
RCS file: /home/cvs/ports/graphics/jpeg/Makefile,v
retrieving revision 1.76
diff -u -p -u -p -r1.76 Makefile
--- Makefile 12 Apr 2023 17:42:24 -0000 1.76
+++ Makefile 11 May 2023 03:49:29 -0000
@@ -1,6 +1,6 @@
COMMENT= SIMD-accelerated JPEG codec replacement of libjpeg
-V= 2.1.5
+V= 2.1.5.1
DISTNAME= libjpeg-turbo-${V}
PKGNAME= jpeg-${V}
EPOCH= 0
Index: distinfo
===================================================================
RCS file: /home/cvs/ports/graphics/jpeg/distinfo,v
retrieving revision 1.26
diff -u -p -u -p -r1.26 distinfo
--- distinfo 12 Apr 2023 17:42:24 -0000 1.26
+++ distinfo 11 May 2023 03:50:17 -0000
@@ -1,2 +1,2 @@
-SHA256 (libjpeg-turbo-2.1.5.tar.gz) =
vBK8nc5VMAxr9DQrwjO8wmvTi/KJ7t8Uc2DXMcZo3a8=
-SIZE (libjpeg-turbo-2.1.5.tar.gz) = 2264471
+SHA256 (libjpeg-turbo-2.1.5.1.tar.gz) =
L9w/626d6xet7JuvozIUGaoZ+PTl3qe/hIaETKIiB78=
+SIZE (libjpeg-turbo-2.1.5.1.tar.gz) = 2264936
Index: patches/patch-CMakeLists_txt
===================================================================
RCS file: /home/cvs/ports/graphics/jpeg/patches/patch-CMakeLists_txt,v
retrieving revision 1.10
diff -u -p -u -p -r1.10 patch-CMakeLists_txt
--- patches/patch-CMakeLists_txt 12 Apr 2023 17:42:24 -0000 1.10
+++ patches/patch-CMakeLists_txt 11 May 2023 03:50:40 -0000
@@ -3,7 +3,7 @@ Symbol versioning triggers weird linking
Index: CMakeLists.txt
--- CMakeLists.txt.orig
+++ CMakeLists.txt
-@@ -511,10 +511,6 @@ endif()
+@@ -509,10 +509,6 @@ endif()
if(UNIX AND NOT APPLE)
file(WRITE ${CMAKE_CURRENT_BINARY_DIR}/conftest.map "VERS_1 { global: *;
};")