download.lst | 4 external/libjpeg-turbo/StaticLibrary_libjpeg-turbo.mk | 19 - external/libjpeg-turbo/UnpackedTarball_libjpeg-turbo.mk | 1 external/libjpeg-turbo/jconfig.h | 4 external/libjpeg-turbo/jconfigint.h | 2 external/libjpeg-turbo/undefined_references.patch | 215 ++++++++++++++++ 6 files changed, 227 insertions(+), 18 deletions(-)
New commits: commit 451a7e9c435f2c76a718995faf52a59fd3a89127 Author: Xisco Fauli <[email protected]> AuthorDate: Mon Jan 20 11:52:21 2025 +0100 Commit: Xisco Fauli <[email protected]> CommitDate: Wed Apr 2 09:58:39 2025 +0200 libjpeg-turbo: upgrade to 3.0.4 * Add external/libjpeg-turbo/UnpackedTarball_libjpeg-turbo.mk to handle different undefined references errors Downloaded from https://github.com/libjpeg-turbo/libjpeg-turbo/releases/download/3.0.4/libjpeg-turbo-3.0.4.tar.gz Change-Id: Ib915b3e58d16b049cf6403a011da061fbf12a7d7 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/180502 Tested-by: Jenkins Reviewed-by: Xisco Fauli <[email protected]> diff --git a/download.lst b/download.lst index f8509e1d0183..55970c17a789 100644 --- a/download.lst +++ b/download.lst @@ -389,8 +389,8 @@ JFREEREPORT_SAC_TARBALL := 39bb3fcea1514f1369fcfc87542390fd-sacjava-1.3.zip # three static lines # so that git cherry-pick # will not run into conflicts -LIBJPEG_TURBO_SHA256SUM := 2fdc3feb6e9deb17adec9bafa3321419aa19f8f4e5dea7bf8486844ca22207bf -LIBJPEG_TURBO_TARBALL := libjpeg-turbo-2.1.5.1.tar.gz +LIBJPEG_TURBO_SHA256SUM := 99130559e7d62e8d695f2c0eaeef912c5828d5b84a0537dcb24c9678c9d5b76b +LIBJPEG_TURBO_TARBALL := libjpeg-turbo-3.0.4.tar.gz # three static lines # so that git cherry-pick # will not run into conflicts diff --git a/external/libjpeg-turbo/StaticLibrary_libjpeg-turbo.mk b/external/libjpeg-turbo/StaticLibrary_libjpeg-turbo.mk index 9acf49095d71..39bdac3bb246 100644 --- a/external/libjpeg-turbo/StaticLibrary_libjpeg-turbo.mk +++ b/external/libjpeg-turbo/StaticLibrary_libjpeg-turbo.mk @@ -44,9 +44,12 @@ $(eval $(call gb_StaticLibrary_add_generated_cobjects,libjpeg-turbo,\ UnpackedTarball/libjpeg-turbo/jccoefct \ UnpackedTarball/libjpeg-turbo/jccolor \ UnpackedTarball/libjpeg-turbo/jcdctmgr \ + UnpackedTarball/libjpeg-turbo/jcdiffct \ UnpackedTarball/libjpeg-turbo/jchuff \ UnpackedTarball/libjpeg-turbo/jcicc \ UnpackedTarball/libjpeg-turbo/jcinit \ + UnpackedTarball/libjpeg-turbo/jclhuff \ + UnpackedTarball/libjpeg-turbo/jclossls \ UnpackedTarball/libjpeg-turbo/jcmainct \ UnpackedTarball/libjpeg-turbo/jcmarker \ UnpackedTarball/libjpeg-turbo/jcmaster \ @@ -64,9 +67,12 @@ $(eval $(call gb_StaticLibrary_add_generated_cobjects,libjpeg-turbo,\ UnpackedTarball/libjpeg-turbo/jdcoefct \ UnpackedTarball/libjpeg-turbo/jdcolor \ UnpackedTarball/libjpeg-turbo/jddctmgr \ + UnpackedTarball/libjpeg-turbo/jddiffct \ UnpackedTarball/libjpeg-turbo/jdhuff \ UnpackedTarball/libjpeg-turbo/jdicc \ UnpackedTarball/libjpeg-turbo/jdinput \ + UnpackedTarball/libjpeg-turbo/jdlhuff \ + UnpackedTarball/libjpeg-turbo/jdlossls \ UnpackedTarball/libjpeg-turbo/jdmainct \ UnpackedTarball/libjpeg-turbo/jdmarker \ UnpackedTarball/libjpeg-turbo/jdmaster \ @@ -194,20 +200,7 @@ $(eval $(call gb_StaticLibrary_add_generated_nasmobjects,libjpeg-turbo,\ UnpackedTarball/libjpeg-turbo/simd/i386/jquanti-avx2.asm \ )) -else - -$(eval $(call gb_StaticLibrary_add_generated_cobjects,libjpeg-turbo,\ - UnpackedTarball/libjpeg-turbo/jsimd_none \ -)) - endif - -else - -$(eval $(call gb_StaticLibrary_add_generated_cobjects,libjpeg-turbo,\ - UnpackedTarball/libjpeg-turbo/jsimd_none \ -)) - endif diff --git a/external/libjpeg-turbo/UnpackedTarball_libjpeg-turbo.mk b/external/libjpeg-turbo/UnpackedTarball_libjpeg-turbo.mk index 5c88c8756c28..e24aaa58307f 100644 --- a/external/libjpeg-turbo/UnpackedTarball_libjpeg-turbo.mk +++ b/external/libjpeg-turbo/UnpackedTarball_libjpeg-turbo.mk @@ -15,6 +15,7 @@ $(eval $(call gb_UnpackedTarball_set_patchlevel,libjpeg-turbo,0)) $(eval $(call gb_UnpackedTarball_add_patches,libjpeg-turbo, \ external/libjpeg-turbo/include.patch \ + external/libjpeg-turbo/undefined_references.patch \ )) # jconfigint.h and jconfig.h generated via diff --git a/external/libjpeg-turbo/jconfig.h b/external/libjpeg-turbo/jconfig.h index 3855ccec9cfd..3112fa0f9e5b 100644 --- a/external/libjpeg-turbo/jconfig.h +++ b/external/libjpeg-turbo/jconfig.h @@ -4,10 +4,10 @@ #define JPEG_LIB_VERSION 62 /* libjpeg-turbo version */ -#define LIBJPEG_TURBO_VERSION 2.1.5.1 +#define LIBJPEG_TURBO_VERSION 3.0.4 /* libjpeg-turbo version in integer form */ -#define LIBJPEG_TURBO_VERSION_NUMBER 2001005 +#define LIBJPEG_TURBO_VERSION_NUMBER 3000004 /* Support arithmetic encoding */ #define C_ARITH_CODING_SUPPORTED 1 diff --git a/external/libjpeg-turbo/jconfigint.h b/external/libjpeg-turbo/jconfigint.h index b7644cbac90e..2aa841a17656 100644 --- a/external/libjpeg-turbo/jconfigint.h +++ b/external/libjpeg-turbo/jconfigint.h @@ -19,7 +19,7 @@ #define PACKAGE_NAME "libjpeg-turbo" /* Version number of package */ -#define VERSION "2.1.5.1" +#define VERSION "3.0.4" /* The size of `size_t', as computed by sizeof. */ /* #undef SIZEOF_SIZE_T */ diff --git a/external/libjpeg-turbo/undefined_references.patch b/external/libjpeg-turbo/undefined_references.patch new file mode 100644 index 000000000000..e89653149e7f --- /dev/null +++ b/external/libjpeg-turbo/undefined_references.patch @@ -0,0 +1,215 @@ +--- jdtrans.c 2025-04-01 12:27:27.138349027 +0200 ++++ jdtrans.c 2025-04-01 12:27:31.470329353 +0200 +@@ -131,7 +131,7 @@ + + /* Always get a full-image coefficient buffer. */ + if (cinfo->data_precision == 12) +- j12init_d_coef_controller(cinfo, TRUE); ++ jinit_d_coef_controller(cinfo, TRUE); + else + jinit_d_coef_controller(cinfo, TRUE); + +--- jdmaster.c 2025-04-01 12:22:54.075591612 +0200 ++++ jdmaster.c 2025-04-01 12:23:23.739456350 +0200 +@@ -573,7 +573,7 @@ + if (cinfo->data_precision == 16) + ERREXIT1(cinfo, JERR_BAD_PRECISION, cinfo->data_precision); + else if (cinfo->data_precision == 12) +- j12init_1pass_quantizer(cinfo); ++ jinit_1pass_quantizer(cinfo); + else + jinit_1pass_quantizer(cinfo); + master->quantizer_1pass = cinfo->cquantize; +@@ -588,7 +588,7 @@ + if (cinfo->data_precision == 16) + ERREXIT1(cinfo, JERR_BAD_PRECISION, cinfo->data_precision); + else if (cinfo->data_precision == 12) +- j12init_2pass_quantizer(cinfo); ++ jinit_2pass_quantizer(cinfo); + else + jinit_2pass_quantizer(cinfo); + master->quantizer_2pass = cinfo->cquantize; +@@ -608,7 +608,7 @@ + if (cinfo->data_precision == 16) + ERREXIT1(cinfo, JERR_BAD_PRECISION, cinfo->data_precision); + else if (cinfo->data_precision == 12) +- j12init_merged_upsampler(cinfo); /* does color conversion too */ ++ jinit_merged_upsampler(cinfo); /* does color conversion too */ + else + jinit_merged_upsampler(cinfo); /* does color conversion too */ + #else +@@ -617,14 +617,14 @@ + } else { + if (cinfo->data_precision == 16) { + #ifdef D_LOSSLESS_SUPPORTED +- j16init_color_deconverter(cinfo); +- j16init_upsampler(cinfo); ++ jinit_color_deconverter(cinfo); ++ jinit_upsampler(cinfo); + #else + ERREXIT1(cinfo, JERR_BAD_PRECISION, cinfo->data_precision); + #endif + } else if (cinfo->data_precision == 12) { +- j12init_color_deconverter(cinfo); +- j12init_upsampler(cinfo); ++ jinit_color_deconverter(cinfo); ++ jinit_upsampler(cinfo); + } else { + jinit_color_deconverter(cinfo); + jinit_upsampler(cinfo); +@@ -632,12 +632,12 @@ + } + if (cinfo->data_precision == 16) + #ifdef D_LOSSLESS_SUPPORTED +- j16init_d_post_controller(cinfo, cinfo->enable_2pass_quant); ++ jinit_d_post_controller(cinfo, cinfo->enable_2pass_quant); + #else + ERREXIT1(cinfo, JERR_BAD_PRECISION, cinfo->data_precision); + #endif + else if (cinfo->data_precision == 12) +- j12init_d_post_controller(cinfo, cinfo->enable_2pass_quant); ++ jinit_d_post_controller(cinfo, cinfo->enable_2pass_quant); + else + jinit_d_post_controller(cinfo, cinfo->enable_2pass_quant); + } +@@ -648,9 +648,9 @@ + * scaling + */ + if (cinfo->data_precision == 16) +- j16init_lossless_decompressor(cinfo); ++ jinit_lossless_decompressor(cinfo); + else if (cinfo->data_precision == 12) +- j12init_lossless_decompressor(cinfo); ++ jinit_lossless_decompressor(cinfo); + else + jinit_lossless_decompressor(cinfo); + /* Entropy decoding: either Huffman or arithmetic coding. */ +@@ -664,9 +664,9 @@ + use_c_buffer = cinfo->inputctl->has_multiple_scans || + cinfo->buffered_image; + if (cinfo->data_precision == 16) +- j16init_d_diff_controller(cinfo, use_c_buffer); ++ jinit_d_diff_controller(cinfo, use_c_buffer); + else if (cinfo->data_precision == 12) +- j12init_d_diff_controller(cinfo, use_c_buffer); ++ jinit_d_diff_controller(cinfo, use_c_buffer); + else + jinit_d_diff_controller(cinfo, use_c_buffer); + #else +@@ -677,7 +677,7 @@ + ERREXIT1(cinfo, JERR_BAD_PRECISION, cinfo->data_precision); + /* Inverse DCT */ + if (cinfo->data_precision == 12) +- j12init_inverse_dct(cinfo); ++ jinit_inverse_dct(cinfo); + else + jinit_inverse_dct(cinfo); + /* Entropy decoding: either Huffman or arithmetic coding. */ +@@ -702,7 +702,7 @@ + use_c_buffer = cinfo->inputctl->has_multiple_scans || + cinfo->buffered_image; + if (cinfo->data_precision == 12) +- j12init_d_coef_controller(cinfo, use_c_buffer); ++ jinit_d_coef_controller(cinfo, use_c_buffer); + else + jinit_d_coef_controller(cinfo, use_c_buffer); + } +@@ -710,13 +710,13 @@ + if (!cinfo->raw_data_out) { + if (cinfo->data_precision == 16) + #ifdef D_LOSSLESS_SUPPORTED +- j16init_d_main_controller(cinfo, ++ jinit_d_main_controller(cinfo, + FALSE /* never need full buffer here */); + #else + ERREXIT1(cinfo, JERR_BAD_PRECISION, cinfo->data_precision); + #endif + else if (cinfo->data_precision == 12) +- j12init_d_main_controller(cinfo, ++ jinit_d_main_controller(cinfo, + FALSE /* never need full buffer here */); + else + jinit_d_main_controller(cinfo, FALSE /* never need full buffer here */); +--- jcinit.c 2025-04-01 12:25:09.482974771 +0200 ++++ jcinit.c 2025-04-01 12:25:17.158939845 +0200 +@@ -42,17 +42,17 @@ + if (!cinfo->raw_data_in) { + if (cinfo->data_precision == 16) { + #ifdef C_LOSSLESS_SUPPORTED +- j16init_color_converter(cinfo); +- j16init_downsampler(cinfo); +- j16init_c_prep_controller(cinfo, ++ jinit_color_converter(cinfo); ++ jinit_downsampler(cinfo); ++ jinit_c_prep_controller(cinfo, + FALSE /* never need full buffer here */); + #else + ERREXIT1(cinfo, JERR_BAD_PRECISION, cinfo->data_precision); + #endif + } else if (cinfo->data_precision == 12) { +- j12init_color_converter(cinfo); +- j12init_downsampler(cinfo); +- j12init_c_prep_controller(cinfo, ++ jinit_color_converter(cinfo); ++ jinit_downsampler(cinfo); ++ jinit_c_prep_controller(cinfo, + FALSE /* never need full buffer here */); + } else { + jinit_color_converter(cinfo); +@@ -65,9 +65,9 @@ + #ifdef C_LOSSLESS_SUPPORTED + /* Prediction, sample differencing, and point transform */ + if (cinfo->data_precision == 16) +- j16init_lossless_compressor(cinfo); ++ jinit_lossless_compressor(cinfo); + else if (cinfo->data_precision == 12) +- j12init_lossless_compressor(cinfo); ++ jinit_lossless_compressor(cinfo); + else + jinit_lossless_compressor(cinfo); + /* Entropy encoding: either Huffman or arithmetic coding. */ +@@ -79,10 +79,10 @@ + + /* Need a full-image difference buffer in any multi-pass mode. */ + if (cinfo->data_precision == 16) +- j16init_c_diff_controller(cinfo, (boolean)(cinfo->num_scans > 1 || ++ jinit_c_diff_controller(cinfo, (boolean)(cinfo->num_scans > 1 || + cinfo->optimize_coding)); + else if (cinfo->data_precision == 12) +- j12init_c_diff_controller(cinfo, (boolean)(cinfo->num_scans > 1 || ++ jinit_c_diff_controller(cinfo, (boolean)(cinfo->num_scans > 1 || + cinfo->optimize_coding)); + else + jinit_c_diff_controller(cinfo, (boolean)(cinfo->num_scans > 1 || +@@ -95,7 +95,7 @@ + ERREXIT1(cinfo, JERR_BAD_PRECISION, cinfo->data_precision); + /* Forward DCT */ + if (cinfo->data_precision == 12) +- j12init_forward_dct(cinfo); ++ jinit_forward_dct(cinfo); + else + jinit_forward_dct(cinfo); + /* Entropy encoding: either Huffman or arithmetic coding. */ +@@ -118,7 +118,7 @@ + + /* Need a full-image coefficient buffer in any multi-pass mode. */ + if (cinfo->data_precision == 12) +- j12init_c_coef_controller(cinfo, (boolean)(cinfo->num_scans > 1 || ++ jinit_c_coef_controller(cinfo, (boolean)(cinfo->num_scans > 1 || + cinfo->optimize_coding)); + else + jinit_c_coef_controller(cinfo, (boolean)(cinfo->num_scans > 1 || +@@ -127,12 +127,12 @@ + + if (cinfo->data_precision == 16) + #ifdef C_LOSSLESS_SUPPORTED +- j16init_c_main_controller(cinfo, FALSE /* never need full buffer here */); ++ jinit_c_main_controller(cinfo, FALSE /* never need full buffer here */); + #else + ERREXIT1(cinfo, JERR_BAD_PRECISION, cinfo->data_precision); + #endif + else if (cinfo->data_precision == 12) +- j12init_c_main_controller(cinfo, FALSE /* never need full buffer here */); ++ jinit_c_main_controller(cinfo, FALSE /* never need full buffer here */); + else + jinit_c_main_controller(cinfo, FALSE /* never need full buffer here */);
