[packages/crossmingw32-jasper] - updated to 4.2.9

qboosh qboosh at pld-linux.org
Tue Apr 28 18:02:45 CEST 2026


commit b4cb8ed655db7eadf4bad7eb4b1e004884b14df9
Author: Jakub Bogusz <qboosh at pld-linux.org>
Date:   Tue Apr 28 18:03:31 2026 +0200

    - updated to 4.2.9

 crossmingw32-jasper.spec | 21 +++++++++++++--------
 jasper-mingw32.patch     | 16 ++++++++--------
 2 files changed, 21 insertions(+), 16 deletions(-)
---
diff --git a/crossmingw32-jasper.spec b/crossmingw32-jasper.spec
index 6832468..c001838 100644
--- a/crossmingw32-jasper.spec
+++ b/crossmingw32-jasper.spec
@@ -1,18 +1,19 @@
 Summary:	JasPer library for images manipulation - MinGW32 cross version
 Summary(pl.UTF-8):	Biblioteka JasPer do obróbki obrazów - wersja skrośna dla MinGW32
 Name:		crossmingw32-jasper
-Version:	3.0.6
+Version:	4.2.9
 Release:	1
 License:	JasPer v2.0 (BSD-like)
 Group:		Development/Libraries
 #Source0Download: https://github.com/jasper-software/jasper/releases
 Source0:	https://github.com/jasper-software/jasper/releases/download/version-%{version}/jasper-%{version}.tar.gz
-# Source0-md5:	f9388d52a6220303141a42d4c2c81e62
+# Source0-md5:	5ebfacbbb70c6286fcd0ee08eceeea8c
 Patch0:		jasper-mingw32.patch
 URL:		https://www.ece.uvic.ca/~frodo/jasper/
-BuildRequires:	cmake >= 2.8.11
-BuildRequires:	crossmingw32-gcc
+BuildRequires:	cmake >= 3.12
+BuildRequires:	crossmingw32-gcc >= 4.7
 BuildRequires:	crossmingw32-libjpeg
+BuildRequires:	rpmbuild(macros) >= 1.605
 Requires:	crossmingw32-libjpeg
 Obsoletes:	crossmingw32-jasper-static < 2
 BuildRoot:	%{tmpdir}/%{name}-%{version}-root-%(id -u -n)
@@ -27,6 +28,7 @@ BuildRoot:	%{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 %define		_prefix			%{_sysprefix}/%{target}
 %define		_libdir			%{_prefix}/lib
 %define		_pkgconfigdir		%{_prefix}/lib/pkgconfig
+%define		_docdir			%{_sysprefix}/share/doc
 %define		_dlldir			/usr/share/wine/windows/system
 %define		__cc			%{target}-gcc
 %define		__cxx			%{target}-g++
@@ -76,8 +78,9 @@ Biblioteka DLL JasPer dla Windows.
 
 %build
 # there is upstream directory named "build", use different name
-install -d builddir
-cd builddir
+# InSourceBuild.cmake requires build dir to be outside source dir or have "tmp" prefix
+install -d tmp_builddir
+cd tmp_builddir
 # note: build/jasper.pc.in expects CMAKE_INSTALL_INCLUDEDIR and CMAKE_INSTALL_LIBDIR relative to CMAKE_INSTALL_PREFIX
 %cmake .. \
 	-DCMAKE_CROSSCOMPILING=ON \
@@ -86,7 +89,9 @@ cd builddir
 	-DCMAKE_SYSTEM_NAME=Windows \
 	-DJAS_ENABLE_AUTOMATIC_DEPENDENCIES=OFF \
 	-DJAS_ENABLE_DOC=OFF \
+	-DJAS_ENABLE_LIBHEIF=OFF \
 	-DJAS_ENABLE_OPENGL=OFF \
+	-DJAS_INCLUDE_HEIC_CODEC=OFF \
 	-DJAS_STDC_VERSION="$(i386-mingw32-cpp -x c -dM < /dev/null | grep __STDC_VERSION__| cut -d' ' -f3)" \
 	-DJPEG_INCLUDE_DIR:PATH=%{_includedir} \
 	-DJPEG_LIBRARY=%{_libdir}/libjpeg.dll.a
@@ -96,7 +101,7 @@ cd builddir
 %install
 rm -rf $RPM_BUILD_ROOT
 
-%{__make} -C builddir install \
+%{__make} -C tmp_builddir install \
 	DESTDIR=$RPM_BUILD_ROOT
 
 install -d $RPM_BUILD_ROOT%{_dlldir}
@@ -109,7 +114,7 @@ install -d $RPM_BUILD_ROOT%{_dlldir}
 
 %{__rm} $RPM_BUILD_ROOT%{_bindir}/*.exe \
 	$RPM_BUILD_ROOT%{_mandir}/man1/*.1
-%{__rm} -rf $RPM_BUILD_ROOT%{_docdir}/{README,*.pdf,html}
+%{__rm} -rf $RPM_BUILD_ROOT%{_docdir}/{README.md,*.pdf,html}
 
 %clean
 rm -rf $RPM_BUILD_ROOT
diff --git a/jasper-mingw32.patch b/jasper-mingw32.patch
index 4832964..c15fcc4 100644
--- a/jasper-mingw32.patch
+++ b/jasper-mingw32.patch
@@ -1,6 +1,6 @@
 Current mingw32 doesn't provide <sysinfoapi.h>, so use older API.
---- jasper-3.0.6/src/libjasper/base/jas_malloc.c.orig	2023-03-13 13:16:49.488682893 +0100
-+++ jasper-3.0.6/src/libjasper/base/jas_malloc.c	2023-03-13 18:13:28.802255734 +0100
+--- jasper-4.2.9/src/libjasper/base/jas_malloc.c.orig	2026-03-05 16:39:38.000000000 +0100
++++ jasper-4.2.9/src/libjasper/base/jas_malloc.c	2026-04-28 17:43:45.439110242 +0200
 @@ -94,7 +94,6 @@
  #	include <unistd.h>
  #elif defined(_WIN32)
@@ -9,7 +9,7 @@ Current mingw32 doesn't provide <sysinfoapi.h>, so use older API.
  #endif
  
  /******************************************************************************\
-@@ -649,15 +648,14 @@ size_t jas_get_total_mem_size()
+@@ -657,16 +656,13 @@ size_t jas_get_total_mem_size()
  	long page_size = sysconf(_SC_PAGE_SIZE);
  	return pages * page_size;
  #elif defined(_WIN32)
@@ -17,16 +17,16 @@ Current mingw32 doesn't provide <sysinfoapi.h>, so use older API.
 -	Reference:
 -	https://docs.microsoft.com/en-us/windows/win32/api/sysinfoapi/nf-sysinfoapi-getphysicallyinstalledsystemmemory
 -	*/
--	ULONGLONG size;
--	if (!GetPhysicallyInstalledSystemMemory(&size)) {
+-	ULONGLONG mem_size_in_kb;
+-	if (!GetPhysicallyInstalledSystemMemory(&mem_size_in_kb)) {
 +	MEMORYSTATUSEX memStatusEx = {0};
 +	memStatusEx.dwLength = sizeof(MEMORYSTATUSEX);
 +	BOOL bRet = GlobalMemoryStatusEx(&memStatusEx);
-+	return memStatusEx.ullTotalPhys;
-+	if (!GlobalMemoryStatusEx(&memStatusEx)) {
++	if (!bRet) {
  		return 0;
  	}
--	return 1024 * size;
+-	return (mem_size_in_kb < SIZE_MAX / JAS_CAST(size_t, 1024)) ?
+-	  JAS_CAST(size_t, 1024) * mem_size_in_kb : SIZE_MAX;
 +	return memStatusEx.ullTotalPhys;
  #else
  	return 0;
================================================================

---- gitweb:

http://git.pld-linux.org/gitweb.cgi/packages/crossmingw32-jasper.git/commitdiff/b4cb8ed655db7eadf4bad7eb4b1e004884b14df9



More information about the pld-cvs-commit mailing list