Compare commits

..

36 commits

Author SHA1 Message Date
Fedora Release Engineering
9fc71d170b Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild 2025-07-24 18:09:33 +00:00
Sandro Mani
03ea84bb9a Increase minimum cmake version to 3.5, use GNUInstallDirs 2025-07-16 23:38:35 +02:00
Fedora Release Engineering
b64338227b Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild 2025-01-17 08:09:46 +00:00
Miroslav Suchý
88cd28788d convert license to SPDX
This is part of https://fedoraproject.org/wiki/Changes/SPDX_Licenses_Phase_4
2024-09-02 09:08:01 +02:00
Fedora Release Engineering
3602092759 Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild 2024-07-18 11:15:34 +00:00
Software Management Team
af1c8fb892 Eliminate use of obsolete %patchN syntax (#2283636) 2024-05-30 12:46:47 +02:00
Fedora Release Engineering
9a07827453 Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild 2024-01-24 23:33:50 +00:00
Fedora Release Engineering
f612d14963 Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild 2024-01-20 23:53:34 +00:00
Fedora Release Engineering
5ef79223b9 Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2023-07-20 08:18:39 +00:00
Sandro Mani
a1da824c62 Drop reference to patch2 2023-04-13 15:52:49 +02:00
Sandro Mani
5ba940c162 Drop empty patch 2023-04-13 15:46:24 +02:00
Fedora Release Engineering
2a95a564f7 Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2023-01-19 14:00:15 +00:00
Sandro Mani
fa77549cd7 Fix deleting guiddef.h 2022-08-05 23:03:29 +02:00
Sandro Mani
a8b550007f Don't install guiddef.h for mingw 2022-08-05 22:56:14 +02:00
Fedora Release Engineering
32e03a04b2 Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2022-07-21 15:30:55 +00:00
Sandro Mani
40cd24bcd5 Rebuild with mingw-gcc-12 2022-03-25 13:57:33 +01:00
Sandro Mani
9b4976d615 Make mingw subpackages noarch 2022-02-24 20:08:05 +01:00
Sandro Mani
3b38fde497 Add mingw subpackages 2022-02-24 11:15:40 +01:00
Fedora Release Engineering
84d6b338c2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2022-01-20 14:04:33 +00:00
Fedora Release Engineering
fe714953a8 - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2021-07-22 09:22:14 +00:00
Fedora Release Engineering
45dbc7b823 - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2021-01-26 15:07:31 +00:00
Sandro Mani
73c1aee4da Use %cmake_build/%cmake_install 2020-07-29 10:30:47 +02:00
Fedora Release Engineering
ce90112eec - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2020-07-28 02:39:06 +00:00
Fedora Release Engineering
dc45526b28 - Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2020-01-29 06:33:50 +00:00
Fedora Release Engineering
c6dd07f0a3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2019-07-25 10:59:20 +00:00
Fedora Release Engineering
6947edd967 - Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2019-02-01 04:56:34 +00:00
Igor Gnatenko
c68eda40fd
Remove obsolete ldconfig scriptlets
References: https://fedoraproject.org/wiki/Changes/RemoveObsoleteScriptlets
Signed-off-by: Igor Gnatenko <ignatenkobrain@fedoraproject.org>
2019-01-22 18:39:22 +01:00
Fedora Release Engineering
529b00659d - Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2018-07-13 06:46:48 +00:00
Sandro Mani
537403ee97 Add missing BR: gcc, make 2018-02-18 22:09:33 +01:00
Fedora Release Engineering
29f4e08469 - Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2018-02-07 19:26:01 +00:00
Fedora Release Engineering
1c4f3f8b87 - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild 2017-08-03 00:05:47 +00:00
Fedora Release Engineering
5a764a40b9 - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild 2017-07-26 14:49:52 +00:00
Fedora Release Engineering
9c54d5c844 - Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild 2017-02-10 17:32:32 +00:00
Dennis Gilmore
99e1495f6c - Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild 2016-02-04 01:33:34 +00:00
Sandro Mani
fb474a6475 Fix typo in jxrlib_warnings.patch 2015-09-11 16:40:20 +02:00
Sandro Mani
9e7ae15fd4 Initial import 2015-09-09 15:02:27 +02:00
3 changed files with 267 additions and 21 deletions

View file

@ -1,5 +1,6 @@
cmake_minimum_required(VERSION 2.8)
cmake_minimum_required(VERSION 3.5)
project(jxrlib C)
include(GNUInstallDirs)
set(JXRLIB_MAJOR 0)
set(JXRLIB_MINOR 0)
@ -30,9 +31,9 @@ add_library(jpegxr ${jpegxr_SRC} ${jpegxr_HDR})
set_target_properties(jpegxr PROPERTIES VERSION ${JXRLIB_LIB_VERSION} SOVERSION ${JXRLIB_SO_VERSION})
install(TARGETS jpegxr
RUNTIME DESTINATION bin
LIBRARY DESTINATION lib${LIB_SUFFIX}
ARCHIVE DESTINATION lib${LIB_SUFFIX}
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
)
# JXR-GLUE Library
@ -44,25 +45,25 @@ set_target_properties(jxrglue PROPERTIES VERSION ${JXRLIB_LIB_VERSION} SOVERSION
target_link_libraries(jxrglue jpegxr m)
install(TARGETS jxrglue
RUNTIME DESTINATION bin
LIBRARY DESTINATION lib${LIB_SUFFIX}
ARCHIVE DESTINATION lib${LIB_SUFFIX}
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
)
# JxrEncApp Executable
add_executable(JxrEncApp jxrencoderdecoder/JxrEncApp.c)
target_link_libraries(JxrEncApp jxrglue)
install(TARGETS JxrEncApp RUNTIME DESTINATION bin)
install(TARGETS JxrEncApp RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
# JxrDecApp Executable
add_executable(JxrDecApp jxrencoderdecoder/JxrDecApp.c)
target_link_libraries(JxrDecApp jxrglue)
install(TARGETS JxrDecApp RUNTIME DESTINATION bin)
install(TARGETS JxrDecApp RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
# Headers
install(FILES jxrgluelib/JXRGlue.h jxrgluelib/JXRMeta.h jxrtestlib/JXRTest.h image/sys/windowsmediaphoto.h
DESTINATION include/jxrlib
DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/jxrlib
)
install(DIRECTORY common/include/ DESTINATION include/jxrlib
install(DIRECTORY common/include/ DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/jxrlib
FILES_MATCHING PATTERN "*.h"
)

View file

@ -1,11 +1,12 @@
Name: jxrlib
Version: 1.1
Release: 1%{?dist}
Release: 32%{?dist}
Summary: Open source implementation of jpegxr
# See JPEGXR_DPK_Spec_1.0.doc. Upstream request for plain text license file at
# https://jxrlib.codeplex.com/workitem/13
License: BSD
# Automatically converted from old format: BSD - review is highly recommended.
License: LicenseRef-Callaway-BSD
URL: https://jxrlib.codeplex.com/
Source0: http://jxrlib.codeplex.com/downloads/get/685249#/jxrlib_%(echo %{version} | tr . _).tar.gz
# Use CMake to build to facilitate creation of shared libraries
@ -18,10 +19,17 @@ Source2: JPEGXR_DPK_Spec_1.0.pdf
# Fix various warnings, upstreamable
# See https://jxrlib.codeplex.com/workitem/13
Patch0: jxrlib_warnings.patch
# Mingw build fixes
Patch1: jxrlib_mingw.patch
BuildRequires: cmake
BuildRequires: gcc
BuildRequires: make
BuildRequires: mingw32-filesystem >= 95
BuildRequires: mingw32-gcc
BuildRequires: mingw64-filesystem >= 95
BuildRequires: mingw64-gcc
%description
@ -37,6 +45,24 @@ The %{name}-devel package contains libraries and header files for
developing applications that use %{name}.
%package -n mingw32-%{name}
Summary: MinGW Windows JPEG XR library
BuildArch: noarch
%description -n mingw32-%{name}
MinGW Windows JPEG XR library.
%package -n mingw64-%{name}
Summary: MinGW Windows JPEG XR library
BuildArch: noarch
%description -n mingw64-%{name}
MinGW Windows JPEG XR library.
%{?mingw_debug_package}
%prep
%setup -q -n %{name}
@ -48,7 +74,8 @@ for file in `find . -type f -name '*.c' -or -name '*.h' -or -name '*.txt'`; do
touch -r $file $file.new && mv $file.new $file
done
%patch0 -p1
%patch -P0 -p1
%patch -P1 -p1
# Remove shipped binaries
rm -rf bin
@ -58,15 +85,25 @@ cp -a %{SOURCE2} doc
%build
%cmake .
%make_build
# Native build
%cmake
%cmake_build
# MinGW build
%mingw_cmake
%mingw_make_build
%install
%make_install
%cmake_install
%mingw_make_install
# Delete guiddef.h which conflicts with guiddef.h shipped by mingw-headers
rm -f %{buildroot}%{mingw32_includedir}/jxrlib/guiddef.h
rm -f %{buildroot}%{mingw64_includedir}/jxrlib/guiddef.h
%ldconfig_scriptlets
%mingw_debug_install_post
%files
@ -81,7 +118,121 @@ cp -a %{SOURCE2} doc
%{_libdir}/libjpegxr.so
%{_libdir}/libjxrglue.so
%files -n mingw32-%{name}
%{mingw32_bindir}/libjpegxr.dll
%{mingw32_bindir}/libjxrglue.dll
%{mingw32_bindir}/JxrDecApp.exe
%{mingw32_bindir}/JxrEncApp.exe
%{mingw32_includedir}/jxrlib/
%{mingw32_libdir}/libjpegxr.dll.a
%{mingw32_libdir}/libjxrglue.dll.a
%files -n mingw64-%{name}
%{mingw64_bindir}/libjpegxr.dll
%{mingw64_bindir}/libjxrglue.dll
%{mingw64_bindir}/JxrDecApp.exe
%{mingw64_bindir}/JxrEncApp.exe
%{mingw64_includedir}/jxrlib/
%{mingw64_libdir}/libjpegxr.dll.a
%{mingw64_libdir}/libjxrglue.dll.a
%changelog
* Mon Apr 06 2020 Oliver Falk <oliver@linux-kernel.at> - 1.1-1
- Initial build for EPEL 8
* Thu Jul 24 2025 Fedora Release Engineering <releng@fedoraproject.org> - 1.1-32
- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild
* Wed Jul 16 2025 Sandro Mani <manisandro@gmail.com> - 1.1-31
- Increase minimum cmake version to 3.5
- Port CMakeLists.txt to GNUInstallDirs
* Fri Jan 17 2025 Fedora Release Engineering <releng@fedoraproject.org> - 1.1-30
- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
* Mon Sep 02 2024 Miroslav Suchý <msuchy@redhat.com> - 1.1-29
- convert license to SPDX
* Thu Jul 18 2024 Fedora Release Engineering <releng@fedoraproject.org> - 1.1-28
- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild
* Wed Jan 24 2024 Fedora Release Engineering <releng@fedoraproject.org> - 1.1-27
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Sat Jan 20 2024 Fedora Release Engineering <releng@fedoraproject.org> - 1.1-26
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Thu Jul 20 2023 Fedora Release Engineering <releng@fedoraproject.org> - 1.1-25
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
* Thu Jan 19 2023 Fedora Release Engineering <releng@fedoraproject.org> - 1.1-24
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
* Fri Aug 05 2022 Sandro Mani <manisandro@gmail.com> - 1.1-23
- Don't install guiddef.h for mingw
* Thu Jul 21 2022 Fedora Release Engineering <releng@fedoraproject.org> - 1.1-22
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
* Fri Mar 25 2022 Sandro Mani <manisandro@gmail.com> - 1.1-21
- Rebuild with mingw-gcc-12
* Thu Feb 24 2022 Sandro Mani <manisandro@gmail.com> - 1.1-20
- Make mingw subpackages noarch
* Sun Feb 20 2022 Sandro Mani <manisandro@gmail.com> - 1.1-19
- Add mingw subpackege
* Thu Jan 20 2022 Fedora Release Engineering <releng@fedoraproject.org> - 1.1-18
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
* Thu Jul 22 2021 Fedora Release Engineering <releng@fedoraproject.org> - 1.1-17
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 1.1-16
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
* Tue Jul 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1.1-15
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
* Wed Jan 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1.1-14
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
* Thu Jul 25 2019 Fedora Release Engineering <releng@fedoraproject.org> - 1.1-13
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
* Fri Feb 01 2019 Fedora Release Engineering <releng@fedoraproject.org> - 1.1-12
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
* Fri Jul 13 2018 Fedora Release Engineering <releng@fedoraproject.org> - 1.1-11
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
* Sun Feb 18 2018 Sandro Mani <manisandro@gmail.com> - 1.1-10
- Add missing BR: gcc, make
* Wed Feb 07 2018 Fedora Release Engineering <releng@fedoraproject.org> - 1.1-9
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
* Thu Aug 03 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.1-8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
* Wed Jul 26 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.1-7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
* Fri Feb 10 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.1-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
* Thu Feb 04 2016 Fedora Release Engineering <releng@fedoraproject.org> - 1.1-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
* Fri Sep 11 2015 Sandro Mani <manisandro@gmail.com> - 1.1-4
- Fix typo in jxrlib_warnings.patch
* Tue Sep 08 2015 Sandro Mani <manisandro@gmail.com> - 1.1-3
- Add Patch0 and Source1 upstream links
- Ship pdf variant of JPEGXR_DPK_Spec_1.0.doc in %%doc
- Remove bin folder
* Tue Sep 08 2015 Sandro Mani <manisandro@gmail.com> - 1.1-2
- Comments for Patch0 and Source1
* Wed Sep 02 2015 Sandro Mani <manisandro@gmail.com> - 1.1-1
- Initial package

94
jxrlib_mingw.patch Normal file
View file

@ -0,0 +1,94 @@
diff -rupN jxrlib/common/include/wmspecstring.h jxrlib-new/common/include/wmspecstring.h
--- jxrlib/common/include/wmspecstring.h 2013-03-21 18:58:18.000000000 +0100
+++ jxrlib-new/common/include/wmspecstring.h 2015-09-06 21:10:53.943039237 +0200
@@ -334,7 +334,7 @@ void __pfx_assume(int, const char *);
// Some CE versions don't have specstrings.h, some have very old version without
// __specstrings defined. So we handle CE separately in wmasalce.h
-#if defined(UNDER_CE) || defined(NO_WINDOWS)
+#if defined(UNDER_CE) || defined(NO_WINDOWS) || defined(MINGW)
#include "wmspecstringce.h"
#endif
diff -rupN jxrlib/image/sys/ansi.h jxrlib-new/image/sys/ansi.h
--- jxrlib/image/sys/ansi.h 2013-03-28 18:34:06.000000000 +0100
+++ jxrlib-new/image/sys/ansi.h 2015-09-06 21:18:54.051637086 +0200
@@ -44,13 +44,9 @@
//================================
#define FORCE_INLINE
#define CDECL
-#if __LP64__
-#define UINTPTR_T unsigned long long
-#define INTPTR_T long long
-#else
-#define UINTPTR_T unsigned int
-#define INTPTR_T int
-#endif
+#include <stdint.h>
+#define UINTPTR_T uintptr_t
+#define INTPTR_T intptr_t
//================================
diff -rupN jxrlib/image/sys/strcodec.h jxrlib-new/image/sys/strcodec.h
--- jxrlib/image/sys/strcodec.h 2015-09-06 02:21:20.337316724 +0200
+++ jxrlib-new/image/sys/strcodec.h 2015-09-06 21:18:44.335483326 +0200
@@ -40,7 +40,7 @@
//================================================================
#ifdef ENABLE_OPTIMIZATIONS
-#if defined(WIN32) && !defined(_WIN64)
+#if defined(_MSC_VER) && !defined(_WIN64)
#define WMP_OPT_SSE2
#define WMP_OPT_CC_ENC
@@ -57,9 +57,9 @@
//================================================================
//#ifdef WIN32
-#if defined(WIN32) && !defined(UNDER_CE) // WIN32 seems to be defined always in VS2005 for ARM platform
+#if defined(_MSC_VER) && !defined(UNDER_CE) // WIN32 seems to be defined always in VS2005 for ARM platform
#define PLATFORM_X86
-#include "..\x86\x86.h"
+#include "../x86/x86.h"
#endif
#ifndef UNREFERENCED_PARAMETER
@@ -89,6 +89,7 @@ typedef unsigned __int64 U64;
// The following macros depend on UINTPTR_T and INTPTR_T being properly defined
// so that they are equal to pointer width. Confirm and fail if our assumptions are wrong.
+
CT_ASSERT(sizeof(UINTPTR_T) == sizeof(void*), strcodec1);
CT_ASSERT(sizeof(INTPTR_T) == sizeof(void*), strcodec2);
@@ -450,7 +451,7 @@ typedef struct CWMImageStrCodec {
struct WMPStream ** ppWStream;
-#ifdef WIN32
+#ifdef _MSC_VER
TCHAR **ppTempFile;
#else
char **ppTempFile;
diff -rupN jxrlib/jxrgluelib/JXRMeta.h jxrlib-new/jxrgluelib/JXRMeta.h
--- jxrlib/jxrgluelib/JXRMeta.h 2015-09-06 02:21:20.340316728 +0200
+++ jxrlib-new/jxrgluelib/JXRMeta.h 2015-09-06 21:10:53.944039253 +0200
@@ -28,7 +28,7 @@
#pragma once
#include <windowsmediaphoto.h>
-#ifndef WIN32
+#ifndef _MSC_VER
#include <wmspecstring.h>
#endif
@@ -106,7 +106,7 @@
#define WMP_valWMPhotoID WMP_valCompression
-#ifdef WIN32
+#ifdef _MSC_VER
#define __in_win __in
#define __out_win __out
#endif