commit bd445b547dbc883a4932e13deebd5bef24f7df3d
Author: Jakub Bogusz <[email protected]>
Date:   Sun Dec 5 19:37:18 2021 +0100

    - updated to 0.4
    - old install patch obsolete, updated to skip static gdk-pixbuf module 
installation
    - added bash-completion- and gdk-pixbuf2-loader- packages

 flif-install.patch |  72 ++++++++++++++--------------------
 flif.spec          | 111 +++++++++++++++++++++++++++++++++++++++++++++++++++--
 2 files changed, 137 insertions(+), 46 deletions(-)
---
diff --git a/flif.spec b/flif.spec
index ae481a1..516162f 100644
--- a/flif.spec
+++ b/flif.spec
@@ -1,22 +1,36 @@
+#
+# Conditional build:
+%bcond_without static_libs     # static libraries
+
 Summary:       Free Lossless Image Format library
 Summary(pl.UTF-8):     Biblioteka do obsługi formatu FLIF (Free Lossless Image 
Format)
 Name:          flif
-Version:       0.3
+Version:       0.4
 Release:       1
 License:       LGPL v3+ (libflif and programs), Apache v2.0 (libflif_dec)
 Group:         Libraries
 #Source0Download: https://github.com/FLIF-hub/FLIF/releases
 Source0:       
https://github.com/FLIF-hub/FLIF/archive/v%{version}/%{name}-%{version}.tar.gz
-# Source0-md5: 0bc4d0a71d67b2c6e040e2d5a93dcd2d
+# Source0-md5: c9615a4a525ecd39b27317ceb8365652
 Patch0:                %{name}-install.patch
 URL:           http://flif.info/
 BuildRequires: SDL2-devel >= 2
 BuildRequires: cmake >= 2.8.12
+BuildRequires: gdk-pixbuf2-devel >= 2.10
 BuildRequires: libpng-devel
 BuildRequires: libstdc++-devel >= 6:4.7
 BuildRequires: pkgconfig
+BuildRequires: rpmbuild(macros) >= 1.605
+BuildRequires: shared-mime-info
 BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
+%if "%{_lib}" != "lib"
+%define                libext          %(lib="%{_lib}"; echo ${lib#lib})
+%define                pqext           -%{libext}
+%else
+%define                pqext           %{nil}
+%endif
+
 %description
 FLIF is a lossless image format based on MANIAC compression. MANIAC
 (Meta-Adaptive Near-zero Integer Arithmetic Coding) is a variant of
@@ -57,6 +71,18 @@ Header files for FLIF libraries.
 %description devel -l pl.UTF-8
 Pliki nagłówkowe bibliotek FLIF.
 
+%package static
+Summary:       Static FLIF library
+Summary(pl.UTF-8):     Statyczna biblioteka FLIF
+Group:         Development/Libraries
+Requires:      %{name}-devel = %{version}-%{release}
+
+%description static
+Static FLIF library.
+
+%description static -l pl.UTF-8
+Statyczna biblioteka FLIF.
+
 %package dec
 Summary:       FLIF decoder library
 Summary(pl.UTF-8):     Biblioteka dekodera FLIF
@@ -84,6 +110,18 @@ Development files for FLIF decoder library.
 %description dec-devel -l pl.UTF-8
 Pliki programistyczne biblioteki dekodera FLIF.
 
+%package dec-static
+Summary:       Static FLIF decoder library
+Summary(pl.UTF-8):     Statyczna biblioteka dekodera FLIF
+Group:         Development/Libraries
+Requires:      %{name}-devel = %{version}-%{release}
+
+%description dec-static
+Static FLIF decoder library.
+
+%description dec-static -l pl.UTF-8
+Statyczna biblioteka dekodera FLIF.
+
 %package tools
 Summary:       Tools to convert from/to FLIF image format
 Summary(pl.UTF-8):     Narzędzia do konwersji do/z formatu obrazów FLIF
@@ -111,6 +149,33 @@ SDL2 based FLIF viewer.
 %description view -l pl.UTF-8
 Przeglądarka plików FLIF oparta na bibliotece SDL2.
 
+%package -n bash-completion-flif
+Summary:       Bash completion for flif command
+Summary(pl.UTF-8):     Bashowe dopełnianie parametrów polecenia flif
+Group:         Applications/Shells
+Requires:      %{name}-tools = %{version}-%{release}
+Requires:      bash-completion >= 2.0
+
+%description -n bash-completion-flif
+Bash completion for flif command.
+
+%description -n bash-completion-flif -l pl.UTF-8
+Bashowe dopełnianie parametrów polecenia flif.
+
+%package -n gdk-pixbuf2-loader-flif
+Summary:       FLIF loader module for gdk-pixbuf2 library
+Summary(pl.UTF-8):     Moduł biblioteki gdk-pixbuf2 wczytujący pliki FLIF
+Group:         Libraries
+Requires:      %{name} = %{version}-%{release}
+Requires:      gdk-pixbuf2 >= 2.10
+Requires:      shared-mime-info
+
+%description -n gdk-pixbuf2-loader-flif
+FLIF loader module for gdk-pixbuf2 library.
+
+%description -n gdk-pixbuf2-loader-flif -l pl.UTF-8
+Moduł biblioteki gdk-pixbuf2 wczytujący pliki FLIF.
+
 %prep
 %setup -q -n FLIF-%{version}
 %patch0 -p1
@@ -118,7 +183,8 @@ Przeglądarka plików FLIF oparta na bibliotece SDL2.
 %build
 install -d src/build
 cd src/build
-%cmake ..
+%cmake .. \
+       %{!?with_static_libs:-DBUILD_STATIC_LIBS=OFF}
 %{__make}
 
 %install
@@ -127,7 +193,11 @@ rm -rf $RPM_BUILD_ROOT
 %{__make} -C src/build install \
        DESTDIR=$RPM_BUILD_ROOT
 
+# already in file
+%{__rm} $RPM_BUILD_ROOT%{_datadir}/FLIF/flif.magic
+
 install -Dp doc/flif.1 $RPM_BUILD_ROOT%{_mandir}/man1/flif.1
+install -Dp doc/flif.bash-completion $RPM_BUILD_ROOT%{bash_compdir}/flif
 install tools/{apng2flif,gif2flif} $RPM_BUILD_ROOT%{_bindir}
 
 %clean
@@ -139,6 +209,19 @@ rm -rf $RPM_BUILD_ROOT
 %post  dec -p /sbin/ldconfig
 %postun        dec -p /sbin/ldconfig
 
+%post  -n gdk-pixbuf2-loader-flif
+umask 022
+%{_bindir}/gdk-pixbuf-query-loaders%{pqext} --update-cache || :
+%update_mime_database
+
+%postun        -n gdk-pixbuf2-loader-flif
+%update_mime_database
+if [ "$1" != "0" ]; then
+       umask 022
+       [ ! -x %{_bindir}/gdk-pixbuf-query-loaders%{pqext} ] || \
+       %{_bindir}/gdk-pixbuf-query-loaders%{pqext} --update-cache || :
+fi
+
 %files
 %defattr(644,root,root,755)
 %doc LICENSE README.md
@@ -150,6 +233,12 @@ rm -rf $RPM_BUILD_ROOT
 %attr(755,root,root) %{_libdir}/libflif.so
 %{_includedir}/flif*.h
 
+%if %{with static_libs}
+%files static
+%defattr(644,root,root,755)
+%{_libdir}/libflif.a
+%endif
+
 %files dec
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_libdir}/libflif_dec.so.0
@@ -158,9 +247,16 @@ rm -rf $RPM_BUILD_ROOT
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_libdir}/libflif_dec.so
 
+%if %{with static_libs}
+%files dec-static
+%defattr(644,root,root,755)
+%{_libdir}/libflif_dec.a
+%endif
+
 %files tools
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_bindir}/apng2flif
+%attr(755,root,root) %{_bindir}/dflif
 %attr(755,root,root) %{_bindir}/flif
 %attr(755,root,root) %{_bindir}/gif2flif
 %{_mandir}/man1/flif.1*
@@ -168,3 +264,12 @@ rm -rf $RPM_BUILD_ROOT
 %files view
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_bindir}/viewflif
+
+%files -n bash-completion-flif
+%defattr(644,root,root,755)
+%{bash_compdir}/flif
+
+%files -n gdk-pixbuf2-loader-flif
+%defattr(644,root,root,755)
+%attr(755,root,root) 
%{_libdir}/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-flif.so
+%{_datadir}/mime/packages/flif-mime.xml
diff --git a/flif-install.patch b/flif-install.patch
index 6e4c209..77ff2c4 100644
--- a/flif-install.patch
+++ b/flif-install.patch
@@ -1,44 +1,30 @@
---- FLIF-0.2.2/src/CMakeLists.txt.orig 2016-11-08 12:33:17.000000000 +0100
-+++ FLIF-0.2.2/src/CMakeLists.txt      2016-12-03 22:07:35.902563666 +0100
-@@ -95,6 +95,8 @@
-     target_compile_definitions(flif_exe PRIVATE 
${DEFINITIONS_FOR_ALL_TARGETS} STATIC_GETOPT ) # prevents dllexporting symbols 
for getopt
- endif()
+--- FLIF-0.4/src/CMakeLists.txt.orig   2021-11-21 14:31:43.000000000 +0100
++++ FLIF-0.4/src/CMakeLists.txt        2021-12-05 19:12:26.665932118 +0100
+@@ -243,18 +243,10 @@ if(GDK_FOUND AND (BUILD_SHARED_LIBS OR B
+     target_link_libraries(pixbufloader-flif ${GDK_LIBRARIES})
+     set_target_properties(pixbufloader-flif PROPERTIES OUTPUT_NAME 
pixbufloader-flif)
  
-+install(TARGETS flif_exe DESTINATION bin)
-+
- # library
- 
- add_library(flif_lib SHARED ${COMMON_SOURCES} ${FLIF_SRC_DIR}/flif-enc.cpp 
${FLIF_SRC_DIR}/library/flif-interface.cpp)
-@@ -105,8 +105,8 @@
- target_link_libraries(flif_lib ${PNG_LIBRARY} ${STATIC_LINKED_LIBS})
- target_link_libraries(flif_lib_dec ${PNG_LIBRARY} ${STATIC_LINKED_LIBS})
- 
--set_target_properties(flif_lib PROPERTIES OUTPUT_NAME flif)
--set_target_properties(flif_lib_dec PROPERTIES OUTPUT_NAME flif_dec)
-+set_target_properties(flif_lib PROPERTIES OUTPUT_NAME flif SOVERSION 0)
-+set_target_properties(flif_lib_dec PROPERTIES OUTPUT_NAME flif_dec SOVERSION 
0)
- 
- target_compile_definitions(flif_lib PRIVATE ${DEFINITIONS_FOR_ALL_TARGETS} 
FLIF_BUILD_DLL )
- target_compile_definitions(flif_lib_dec PRIVATE 
${DEFINITIONS_FOR_ALL_TARGETS} FLIF_BUILD_DLL DECODER_ONLY )
-@@ -113,6 +115,13 @@
- target_include_directories(flif_lib PRIVATE ${FLIF_SRC_DIR}/../extern)
- target_include_directories(flif_lib_dec PRIVATE ${FLIF_SRC_DIR}/../extern)
- 
-+install(TARGETS flif_lib flif_lib_dec DESTINATION lib${LIB_SUFFIX})
-+install(FILES ${FLIF_SRC_DIR}/library/flif.h
-+              ${FLIF_SRC_DIR}/library/flif_common.h
-+              ${FLIF_SRC_DIR}/library/flif_dec.h
-+              ${FLIF_SRC_DIR}/library/flif_enc.h
-+        DESTINATION include)
-+
- # viewflif
- 
- if(${SDL2_FOUND})
-@@ -121,6 +130,7 @@
-     target_link_libraries(viewflif flif_lib_dec ${SDL2_LIBRARY} 
${SDL2MAIN_LIBRARY})
-     target_include_directories(viewflif PRIVATE ${FLIF_SRC_DIR}/library 
${SDL2_INCLUDE_DIR})
-     target_compile_definitions(viewflif PRIVATE FLIF_USE_DLL)
-+    install(TARGETS viewflif DESTINATION bin)
- endif()
- 
- # test
+-    add_library(pixbufloader-flif-static STATIC flif-pixbuf-loader.c)
+-    target_include_directories(pixbufloader-flif-static PRIVATE 
${FLIF_SRC_DIR}/library ${GDK_INCLUDE_DIRS})
+-    target_compile_options(pixbufloader-flif-static PRIVATE ${GDK_CFLAGS})
+-    target_compile_definitions(pixbufloader-flif-static PRIVATE 
${DEFINITIONS_FOR_ALL_TARGETS})
+-    target_link_libraries(pixbufloader-flif-static ${GDK_LIBRARIES})
+-    set_target_properties(pixbufloader-flif-static PROPERTIES OUTPUT_NAME 
pixbufloader-flif)
+     if (BUILD_SHARED_LIBS)
+        target_link_libraries(pixbufloader-flif flif_lib)
+-       target_link_libraries(pixbufloader-flif-static flif_lib) 
+     else()
+        target_link_libraries(pixbufloader-flif flif_lib_static)
+-       target_link_libraries(pixbufloader-flif-static flif_lib_static)
+     endif(BUILD_SHARED_LIBS)
+ #We have to be sure that the "-dont-define-prefix", otherwise, on mingw-w64, 
a complete path
+ #is given with pkg-config and that's not desirable for some packaging systems.
+@@ -266,7 +258,7 @@ if(GDK_FOUND AND (BUILD_SHARED_LIBS OR B
+            message(FATAL_ERROR "Error: ${RES_VAR}")
+     endif(("${RES_VAR}" STREQUAL "") OR ("${RES_VAR}" STREQUAL "0"))
+     if ("${GDK_RES_ERROR}" STREQUAL "")
+-    install(TARGETS pixbufloader-flif pixbufloader-flif-static 
++    install(TARGETS pixbufloader-flif
+       RUNTIME DESTINATION ${GDK_MODULES_DIR}
+       LIBRARY DESTINATION ${GDK_MODULES_DIR}
+       ARCHIVE DESTINATION ${GDK_MODULES_DIR}) 
================================================================

---- gitweb:

http://git.pld-linux.org/gitweb.cgi/packages/flif.git/commitdiff/bd445b547dbc883a4932e13deebd5bef24f7df3d

_______________________________________________
pld-cvs-commit mailing list
[email protected]
http://lists.pld-linux.org/mailman/listinfo/pld-cvs-commit

Reply via email to