diff --git a/3rdp/win32.release/libjxl/include/jxl/jxl_cms_export.h b/3rdp/win32.release/libjxl/include/jxl/jxl_cms_export.h index 321b59d79a17b11ec71cbb589822ebed509ce4ed..47d28a410145e3207b5dfc9c7909226a98977c51 100644 --- a/3rdp/win32.release/libjxl/include/jxl/jxl_cms_export.h +++ b/3rdp/win32.release/libjxl/include/jxl/jxl_cms_export.h @@ -1,43 +1,43 @@ - -#ifndef JXL_CMS_EXPORT_H -#define JXL_CMS_EXPORT_H - -#ifdef JXL_CMS_STATIC_DEFINE -# define JXL_CMS_EXPORT -# define JXL_CMS_NO_EXPORT -#else -# ifndef JXL_CMS_EXPORT -# ifdef jxl_cms_EXPORTS - /* We are building this library */ -# define JXL_CMS_EXPORT __declspec(dllexport) -# else - /* We are using this library */ -# define JXL_CMS_EXPORT __declspec(dllimport) -# endif -# endif - -# ifndef JXL_CMS_NO_EXPORT -# define JXL_CMS_NO_EXPORT -# endif -#endif - -#ifndef JXL_CMS_DEPRECATED -# define JXL_CMS_DEPRECATED __declspec(deprecated) -#endif - -#ifndef JXL_CMS_DEPRECATED_EXPORT -# define JXL_CMS_DEPRECATED_EXPORT JXL_CMS_EXPORT JXL_CMS_DEPRECATED -#endif - -#ifndef JXL_CMS_DEPRECATED_NO_EXPORT -# define JXL_CMS_DEPRECATED_NO_EXPORT JXL_CMS_NO_EXPORT JXL_CMS_DEPRECATED -#endif - -/* NOLINTNEXTLINE(readability-avoid-unconditional-preprocessor-if) */ -#if 0 /* DEFINE_NO_DEPRECATED */ -# ifndef JXL_CMS_NO_DEPRECATED -# define JXL_CMS_NO_DEPRECATED -# endif -#endif - -#endif /* JXL_CMS_EXPORT_H */ + +#ifndef JXL_CMS_EXPORT_H +#define JXL_CMS_EXPORT_H + +#ifdef JXL_CMS_STATIC_DEFINE +# define JXL_CMS_EXPORT +# define JXL_CMS_NO_EXPORT +#else +# ifndef JXL_CMS_EXPORT +# ifdef jxl_cms_EXPORTS + /* We are building this library */ +# define JXL_CMS_EXPORT +# else + /* We are using this library */ +# define JXL_CMS_EXPORT +# endif +# endif + +# ifndef JXL_CMS_NO_EXPORT +# define JXL_CMS_NO_EXPORT +# endif +#endif + +#ifndef JXL_CMS_DEPRECATED +# define JXL_CMS_DEPRECATED __declspec(deprecated) +#endif + +#ifndef JXL_CMS_DEPRECATED_EXPORT +# define JXL_CMS_DEPRECATED_EXPORT JXL_CMS_EXPORT JXL_CMS_DEPRECATED +#endif + +#ifndef JXL_CMS_DEPRECATED_NO_EXPORT +# define JXL_CMS_DEPRECATED_NO_EXPORT JXL_CMS_NO_EXPORT JXL_CMS_DEPRECATED +#endif + +/* NOLINTNEXTLINE(readability-avoid-unconditional-preprocessor-if) */ +#if 0 /* DEFINE_NO_DEPRECATED */ +# ifndef JXL_CMS_NO_DEPRECATED +# define JXL_CMS_NO_DEPRECATED +# endif +#endif + +#endif /* JXL_CMS_EXPORT_H */ diff --git a/3rdp/win32.release/libjxl/include/jxl/jxl_export.h b/3rdp/win32.release/libjxl/include/jxl/jxl_export.h index 435f2e1e6f710cfb3952cd1b974190ee9dbce9c2..36966a7ab7e3ea83d62cbaa1fb611add6cfac724 100644 --- a/3rdp/win32.release/libjxl/include/jxl/jxl_export.h +++ b/3rdp/win32.release/libjxl/include/jxl/jxl_export.h @@ -1,43 +1,43 @@ - -#ifndef JXL_EXPORT_H -#define JXL_EXPORT_H - -#ifdef JXL_STATIC_DEFINE -# define JXL_EXPORT -# define JXL_NO_EXPORT -#else -# ifndef JXL_EXPORT -# ifdef JXL_INTERNAL_LIBRARY_BUILD - /* We are building this library */ -# define JXL_EXPORT __declspec(dllexport) -# else - /* We are using this library */ -# define JXL_EXPORT __declspec(dllimport) -# endif -# endif - -# ifndef JXL_NO_EXPORT -# define JXL_NO_EXPORT -# endif -#endif - -#ifndef JXL_DEPRECATED -# define JXL_DEPRECATED __declspec(deprecated) -#endif - -#ifndef JXL_DEPRECATED_EXPORT -# define JXL_DEPRECATED_EXPORT JXL_EXPORT JXL_DEPRECATED -#endif - -#ifndef JXL_DEPRECATED_NO_EXPORT -# define JXL_DEPRECATED_NO_EXPORT JXL_NO_EXPORT JXL_DEPRECATED -#endif - -/* NOLINTNEXTLINE(readability-avoid-unconditional-preprocessor-if) */ -#if 0 /* DEFINE_NO_DEPRECATED */ -# ifndef JXL_NO_DEPRECATED -# define JXL_NO_DEPRECATED -# endif -#endif - -#endif /* JXL_EXPORT_H */ + +#ifndef JXL_EXPORT_H +#define JXL_EXPORT_H + +#ifdef JXL_STATIC_DEFINE +# define JXL_EXPORT +# define JXL_NO_EXPORT +#else +# ifndef JXL_EXPORT +# ifdef JXL_INTERNAL_LIBRARY_BUILD + /* We are building this library */ +# define JXL_EXPORT __declspec(dllexport) +# else + /* We are using this library */ +# define JXL_EXPORT __declspec(dllimport) +# endif +# endif + +# ifndef JXL_NO_EXPORT +# define JXL_NO_EXPORT +# endif +#endif + +#ifndef JXL_DEPRECATED +# define JXL_DEPRECATED __declspec(deprecated) +#endif + +#ifndef JXL_DEPRECATED_EXPORT +# define JXL_DEPRECATED_EXPORT JXL_EXPORT JXL_DEPRECATED +#endif + +#ifndef JXL_DEPRECATED_NO_EXPORT +# define JXL_DEPRECATED_NO_EXPORT JXL_NO_EXPORT JXL_DEPRECATED +#endif + +/* NOLINTNEXTLINE(readability-avoid-unconditional-preprocessor-if) */ +#if 0 /* DEFINE_NO_DEPRECATED */ +# ifndef JXL_NO_DEPRECATED +# define JXL_NO_DEPRECATED +# endif +#endif + +#endif /* JXL_EXPORT_H */ diff --git a/3rdp/win32.release/libjxl/include/jxl/jxl_threads_export.h b/3rdp/win32.release/libjxl/include/jxl/jxl_threads_export.h index d0c400be01b02eb0e5b40c477eed827309bc9e05..46b7815e497e12fe9a65f5ee48fb915c16cf07fb 100644 --- a/3rdp/win32.release/libjxl/include/jxl/jxl_threads_export.h +++ b/3rdp/win32.release/libjxl/include/jxl/jxl_threads_export.h @@ -1,43 +1,43 @@ - -#ifndef JXL_THREADS_EXPORT_H -#define JXL_THREADS_EXPORT_H - -#ifdef JXL_THREADS_STATIC_DEFINE -# define JXL_THREADS_EXPORT -# define JXL_THREADS_NO_EXPORT -#else -# ifndef JXL_THREADS_EXPORT -# ifdef JXL_THREADS_INTERNAL_LIBRARY_BUILD - /* We are building this library */ -# define JXL_THREADS_EXPORT __declspec(dllexport) -# else - /* We are using this library */ -# define JXL_THREADS_EXPORT __declspec(dllimport) -# endif -# endif - -# ifndef JXL_THREADS_NO_EXPORT -# define JXL_THREADS_NO_EXPORT -# endif -#endif - -#ifndef JXL_THREADS_DEPRECATED -# define JXL_THREADS_DEPRECATED __declspec(deprecated) -#endif - -#ifndef JXL_THREADS_DEPRECATED_EXPORT -# define JXL_THREADS_DEPRECATED_EXPORT JXL_THREADS_EXPORT JXL_THREADS_DEPRECATED -#endif - -#ifndef JXL_THREADS_DEPRECATED_NO_EXPORT -# define JXL_THREADS_DEPRECATED_NO_EXPORT JXL_THREADS_NO_EXPORT JXL_THREADS_DEPRECATED -#endif - -/* NOLINTNEXTLINE(readability-avoid-unconditional-preprocessor-if) */ -#if 0 /* DEFINE_NO_DEPRECATED */ -# ifndef JXL_THREADS_NO_DEPRECATED -# define JXL_THREADS_NO_DEPRECATED -# endif -#endif - -#endif /* JXL_THREADS_EXPORT_H */ + +#ifndef JXL_THREADS_EXPORT_H +#define JXL_THREADS_EXPORT_H + +#ifdef JXL_THREADS_STATIC_DEFINE +# define JXL_THREADS_EXPORT +# define JXL_THREADS_NO_EXPORT +#else +# ifndef JXL_THREADS_EXPORT +# ifdef JXL_THREADS_INTERNAL_LIBRARY_BUILD + /* We are building this library */ +# define JXL_THREADS_EXPORT +# else + /* We are using this library */ +# define JXL_THREADS_EXPORT +# endif +# endif + +# ifndef JXL_THREADS_NO_EXPORT +# define JXL_THREADS_NO_EXPORT +# endif +#endif + +#ifndef JXL_THREADS_DEPRECATED +# define JXL_THREADS_DEPRECATED __declspec(deprecated) +#endif + +#ifndef JXL_THREADS_DEPRECATED_EXPORT +# define JXL_THREADS_DEPRECATED_EXPORT JXL_THREADS_EXPORT JXL_THREADS_DEPRECATED +#endif + +#ifndef JXL_THREADS_DEPRECATED_NO_EXPORT +# define JXL_THREADS_DEPRECATED_NO_EXPORT JXL_THREADS_NO_EXPORT JXL_THREADS_DEPRECATED +#endif + +/* NOLINTNEXTLINE(readability-avoid-unconditional-preprocessor-if) */ +#if 0 /* DEFINE_NO_DEPRECATED */ +# ifndef JXL_THREADS_NO_DEPRECATED +# define JXL_THREADS_NO_DEPRECATED +# endif +#endif + +#endif /* JXL_THREADS_EXPORT_H */ diff --git a/3rdp/win32.release/libjxl/include/jxl/version.h b/3rdp/win32.release/libjxl/include/jxl/version.h index d84301e5f09862e3164ac598fdb84fc623d0a6f7..74452c7fd0349079d501a67ad0745060ec520247 100644 --- a/3rdp/win32.release/libjxl/include/jxl/version.h +++ b/3rdp/win32.release/libjxl/include/jxl/version.h @@ -1,39 +1,39 @@ -/* Copyright (c) the JPEG XL Project Authors. All rights reserved. - * - * Use of this source code is governed by a BSD-style - * license that can be found in the LICENSE file. - */ - -/** @addtogroup libjxl_common - * @{ - * @file version.h - * @brief libjxl version information - */ - -#ifndef JXL_VERSION_H_ -#define JXL_VERSION_H_ - -#define JPEGXL_MAJOR_VERSION 0 ///< JPEG XL Major version -#define JPEGXL_MINOR_VERSION 11 ///< JPEG XL Minor version -#define JPEGXL_PATCH_VERSION 1 ///< JPEG XL Patch version - -/** Can be used to conditionally compile code for a specific JXL version - * @param[maj] major version - * @param[min] minor version - * - * @code - * #if JPEGXL_NUMERIC_VERSION < JPEGXL_COMPUTE_NUMERIC_VERSION(0,8,0) - * // use old/deprecated api - * #else - * // use current api - * #endif - * @endcode - */ -#define JPEGXL_COMPUTE_NUMERIC_VERSION(major,minor,patch) (((major)<<24) | ((minor)<<16) | ((patch)<<8) | 0) - -/* Numeric representation of the version */ -#define JPEGXL_NUMERIC_VERSION JPEGXL_COMPUTE_NUMERIC_VERSION(JPEGXL_MAJOR_VERSION, JPEGXL_MINOR_VERSION, JPEGXL_PATCH_VERSION) - -#endif /* JXL_VERSION_H_ */ - -/** @}*/ +/* Copyright (c) the JPEG XL Project Authors. All rights reserved. + * + * Use of this source code is governed by a BSD-style + * license that can be found in the LICENSE file. + */ + +/** @addtogroup libjxl_common + * @{ + * @file version.h + * @brief libjxl version information + */ + +#ifndef JXL_VERSION_H_ +#define JXL_VERSION_H_ + +#define JPEGXL_MAJOR_VERSION 0 ///< JPEG XL Major version +#define JPEGXL_MINOR_VERSION 11 ///< JPEG XL Minor version +#define JPEGXL_PATCH_VERSION 1 ///< JPEG XL Patch version + +/** Can be used to conditionally compile code for a specific JXL version + * @param[maj] major version + * @param[min] minor version + * + * @code + * #if JPEGXL_NUMERIC_VERSION < JPEGXL_COMPUTE_NUMERIC_VERSION(0,8,0) + * // use old/deprecated api + * #else + * // use current api + * #endif + * @endcode + */ +#define JPEGXL_COMPUTE_NUMERIC_VERSION(major,minor,patch) (((major)<<24) | ((minor)<<16) | ((patch)<<8) | 0) + +/* Numeric representation of the version */ +#define JPEGXL_NUMERIC_VERSION JPEGXL_COMPUTE_NUMERIC_VERSION(JPEGXL_MAJOR_VERSION, JPEGXL_MINOR_VERSION, JPEGXL_PATCH_VERSION) + +#endif /* JXL_VERSION_H_ */ + +/** @}*/ diff --git a/3rdp/win32.release/libjxl/lib/libbrotlicommon.a b/3rdp/win32.release/libjxl/lib/libbrotlicommon.a index 36a9a1605133fd5ffcf4f1b9eaadbeaa6beac223..cf5d7ca34ae4e8367a0e69b21f10e78e0c7e0260 100644 Binary files a/3rdp/win32.release/libjxl/lib/libbrotlicommon.a and b/3rdp/win32.release/libjxl/lib/libbrotlicommon.a differ diff --git a/3rdp/win32.release/libjxl/lib/libbrotlidec.a b/3rdp/win32.release/libjxl/lib/libbrotlidec.a index db4f5d95ed0fc79f83893ac41016225ddd725525..1010b3824be7200e7ce61ce5a489495da187b748 100644 Binary files a/3rdp/win32.release/libjxl/lib/libbrotlidec.a and b/3rdp/win32.release/libjxl/lib/libbrotlidec.a differ diff --git a/3rdp/win32.release/libjxl/lib/libhwy.a b/3rdp/win32.release/libjxl/lib/libhwy.a index fa038e0633b83132ca76883e3fa1f8215c4b6351..1f0a1f4f609d65460cfb3ee6fc4e5a2525351c05 100644 Binary files a/3rdp/win32.release/libjxl/lib/libhwy.a and b/3rdp/win32.release/libjxl/lib/libhwy.a differ diff --git a/3rdp/win32.release/libjxl/lib/libjxl.a b/3rdp/win32.release/libjxl/lib/libjxl.a index d9b9de7071dc6ec6dd36161cc36820c4f0878d46..2ff6f4cf58a99a2e3f6484d529cba5b055a28386 100644 Binary files a/3rdp/win32.release/libjxl/lib/libjxl.a and b/3rdp/win32.release/libjxl/lib/libjxl.a differ diff --git a/3rdp/win32.release/libjxl/lib/libjxl_threads.a b/3rdp/win32.release/libjxl/lib/libjxl_threads.a index 9cbeb136fe17c4c17c2487a1d556d0ed203d2bcb..43711ea71bd7febbbde6ad2d5499d6640d020bbc 100644 Binary files a/3rdp/win32.release/libjxl/lib/libjxl_threads.a and b/3rdp/win32.release/libjxl/lib/libjxl_threads.a differ diff --git a/3rdp/win64.release/libjxl/lib/libbrotlicommon.a b/3rdp/win64.release/libjxl/lib/libbrotlicommon.a index 578550b291ca786e41e6d287e442ded5e1f2e289..ec3ae344a385a8ce06b93f0774aa1e74d30ea98b 100644 Binary files a/3rdp/win64.release/libjxl/lib/libbrotlicommon.a and b/3rdp/win64.release/libjxl/lib/libbrotlicommon.a differ diff --git a/3rdp/win64.release/libjxl/lib/libbrotlidec.a b/3rdp/win64.release/libjxl/lib/libbrotlidec.a index b0712490c9b0da079bc3b9f6295a1c0a815646e9..c0c05ecb5dc7babf04970ab76920da75da128b4e 100644 Binary files a/3rdp/win64.release/libjxl/lib/libbrotlidec.a and b/3rdp/win64.release/libjxl/lib/libbrotlidec.a differ diff --git a/3rdp/win64.release/libjxl/lib/libhwy.a b/3rdp/win64.release/libjxl/lib/libhwy.a index fd13915c0f3c46bb565fe9969a74fa019410b30f..ca206258062728b0f6e0c6a5c7fe350a82e61dd5 100644 Binary files a/3rdp/win64.release/libjxl/lib/libhwy.a and b/3rdp/win64.release/libjxl/lib/libhwy.a differ diff --git a/3rdp/win64.release/libjxl/lib/libjxl.a b/3rdp/win64.release/libjxl/lib/libjxl.a index 569699602e9b9d792e58a353f54674544aed4668..33688fc4ba5151ae470faceeed9f9f5cf5b4b3b0 100644 Binary files a/3rdp/win64.release/libjxl/lib/libjxl.a and b/3rdp/win64.release/libjxl/lib/libjxl.a differ diff --git a/3rdp/win64.release/libjxl/lib/libjxl_threads.a b/3rdp/win64.release/libjxl/lib/libjxl_threads.a index 7d6a7dc2c5c911397639437aad4d1d77b8411c37..c43be19821df2bc90a6b36fa9a8d9feecfb3d13a 100644 Binary files a/3rdp/win64.release/libjxl/lib/libjxl_threads.a and b/3rdp/win64.release/libjxl/lib/libjxl_threads.a differ diff --git a/src/syncterm/GNUmakefile b/src/syncterm/GNUmakefile index 9d9e3bfe2f78aef339debd58fa125a2b4e088ee5..6fcfdfd0c77f6047e194aeb587e3de7b8f8282c8 100644 --- a/src/syncterm/GNUmakefile +++ b/src/syncterm/GNUmakefile @@ -36,15 +36,18 @@ else endif ifdef win - CFLAGS += -I${3RDP_ROOT}/win32.release/libjxl/include -DJXL_THREADS_STATIC_DEFINE -DJXL_STATIC_DEFINE - LDFLAGS += -L${3RDP_ROOT}/${os}.release/libjxl/lib - EXTRA_LIBS += -ljxl - #EXTRA_LIBS += -ljxl_threads - EXTRA_LIBS += -lbrotlidec - EXTRA_LIBS += -lbrotlicommon - EXTRA_LIBS += -lhwy - CFLAGS += -DWITH_JPEG_XL -DWITH_STATIC_JXL - OBJS += $(MTOBJODIR)$(DIRSEP)libjxl$(OFILE) + ifeq (${os}, "win32") + CFLAGS += -I${3RDP_ROOT}/win32.release/libjxl/include -DJXL_THREADS_STATIC_DEFINE -DJXL_STATIC_DEFINE + LDFLAGS += -L${3RDP_ROOT}/${os}.release/libjxl/lib -static-libstdc++ -static-libgcc + EXTRA_LIBS += -ljxl + EXTRA_LIBS += -ljxl_threads + EXTRA_LIBS += -lbrotlidec + EXTRA_LIBS += -lbrotlicommon + EXTRA_LIBS += -lhwy + CFLAGS += -DWITH_JPEG_XL -DWITH_STATIC_JXL + CFLAGS += -DWITH_JPEG_XL_THREADS + OBJS += $(MTOBJODIR)$(DIRSEP)libjxl$(OFILE) + endif else ifeq ($(shell pkg-config libjxl --exists && echo YES), YES) CFLAGS += $(shell pkg-config libjxl --cflags) diff --git a/src/syncterm/libjxl.c b/src/syncterm/libjxl.c index 91837e2e80f915275510e7e425ee8015fd995b58..718e69e63905d594d114e40716c91eedddace972 100644 --- a/src/syncterm/libjxl.c +++ b/src/syncterm/libjxl.c @@ -28,9 +28,9 @@ bool load_jxl_funcs(void) Jxl.ResizableParallelRunnerDestroy = JxlResizableParallelRunnerDestroy; Jxl.ResizableParallelRunnerSetThreads = JxlResizableParallelRunnerSetThreads; Jxl.ResizableParallelRunnerSuggestThreads = JxlResizableParallelRunnerSuggestThreads; - Jxl.status = JXL_STATUS_NOTHREADS; -#else Jxl.status = JXL_STATUS_OK; +#else + Jxl.status = JXL_STATUS_NOTHREADS; #endif return true; diff --git a/src/syncterm/term.c b/src/syncterm/term.c index 1cfd5598e71a2944d3f71d9b9d81dc6990626913..e5a217dc57fffada0a0cbd96c95871c69ed5f1b4 100644 --- a/src/syncterm/term.c +++ b/src/syncterm/term.c @@ -3094,7 +3094,6 @@ read_jxl(const char *fn) if (map == NULL) return map; - // Decode JxlDecoderStatus st; JxlBasicInfo info; size_t sz = 0; @@ -3146,8 +3145,9 @@ read_jxl(const char *fn) width = info.xsize; height = info.ysize; #ifdef WITH_JPEG_XL_THREADS - if (Jxl.status == JXL_STATUS_OK) + if (Jxl.status == JXL_STATUS_OK && rpr) { Jxl.ResizableParallelRunnerSetThreads(rpr, Jxl.ResizableParallelRunnerSuggestThreads(info.xsize, info.ysize)); + } #endif break; case JXL_DEC_NEED_IMAGE_OUT_BUFFER: @@ -3165,7 +3165,10 @@ read_jxl(const char *fn) done = true; break; } - Jxl.DecoderSetImageOutBuffer(dec, &format, pbuf, sz); + if (Jxl.DecoderSetImageOutBuffer(dec, &format, pbuf, sz) != JXL_DEC_SUCCESS) { + done = true; + break; + } break; case JXL_DEC_FULL_IMAGE: // Got a single frame... this is not necessarily the whole image though.