[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