[packages/xevd] - new
qboosh
qboosh at pld-linux.org
Sat Apr 13 20:36:57 CEST 2024
commit a2bc6e56c2f0fe6ab6b53081c2bf17f7e81aba1c
Author: Jakub Bogusz <qboosh at pld-linux.org>
Date: Sat Apr 13 20:21:30 2024 +0200
- new
xevd-link.patch | 20 ++++++
xevd-string.patch | 33 +++++++++
xevd.spec | 206 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
3 files changed, 259 insertions(+)
---
diff --git a/xevd.spec b/xevd.spec
new file mode 100644
index 0000000..cda1571
--- /dev/null
+++ b/xevd.spec
@@ -0,0 +1,206 @@
+#
+# Conditional build:
+%bcond_without static_libs # static libraries
+#
+Summary: eXtra-fast Essential Video Decoder (MPEG-5 EVC)
+Summary(pl.UTF-8): eXtra-fast Essential Video Decoder - szybki dekoder obrazu MPEG-5 EVC
+Name: xevd
+Version: 0.4.1
+%define gitref %{version}-4e76654c
+Release: 1
+License: BSD
+Group: Libraries
+#Source0Download: https://github.com/mpeg5/xevd/releases
+Source0: https://github.com/mpeg5/xevd/archive/v%{gitref}/%{name}-%{gitref}.tar.gz
+# Source0-md5: d1642df4b69196430e669d6b278e73d7
+Patch0: %{name}-string.patch
+Patch1: %{name}-link.patch
+URL: https://github.com/mpeg5/xevd
+BuildRequires: cmake >= 3.5
+BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
+
+%description
+The eXtra-fast Essential Video Decoder (XEVD) is an opensource and
+fast MPEG-5 EVC decoder.
+
+MPEG-5 Essential Video Coding (EVC) is a video compression standard of
+ISO/IEC Moving Picture Experts Group (MPEG). The main goal of the EVC
+is to provide a significantly improved compression capability over
+existing video coding standards with timely publication of terms.
+
+This package contains the library with Main Profile (with additional
+tools).
+
+%description -l pl.UTF-8
+XEVD (eXtra-fast Essential Video Decoder - bardzo szybki dekoder
+obrazu zasadniczego) to szybki, mający otwarte źródła dekoder MPEG-5
+EVC.
+
+MPEG-5 Essential Video Coding (EVC) to standard kompresji obrazu
+tworzony przez ISO/IEC Moving Picture Experts Group (MPEG). Głównym
+celem EVC jest zapewnienie znacząco lepszych mozliwości kompresji niż
+istniejące standardy kodowania obrazu.
+
+Ten pakiet zawiera bibliotekę o profilu Main (z dodatkowymi
+narzędziami).
+
+%package devel
+Summary: Header files for XEVD library
+Summary(pl.UTF-8): Pliki nagłówkowe biblioteki XEVD
+Group: Development/Libraries
+Requires: %{name} = %{version}-%{release}
+
+%description devel
+Header files for XEVD library.
+
+%description devel -l pl.UTF-8
+Pliki nagłówkowe biblioteki XEVD.
+
+%package static
+Summary: Static XEVD library
+Summary(pl.UTF-8): Statyczna biblioteka XEVD
+Group: Development/Libraries
+Requires: %{name}-devel = %{version}-%{release}
+
+%description static
+Static XEVD library.
+
+%description static -l pl.UTF-8
+Statyczna biblioteka XEVD.
+
+%package base
+Summary: eXtra-fast Essential Video Decoder (MPEG-5 EVC) - Baseline Profile
+Summary(pl.UTF-8): eXtra-fast Essential Video Decoder - szybki dekoder obrazu MPEG-5 EVC - profil Baseline
+Group: Libraries
+
+%description base
+The eXtra-fast Essential Video Decoder (XEVD) is an opensource and
+fast MPEG-5 EVC decoder.
+
+MPEG-5 Essential Video Coding (EVC) is a video compression standard of
+ISO/IEC Moving Picture Experts Group (MPEG). The main goal of the EVC
+is to provide a significantly improved compression capability over
+existing video coding standards with timely publication of terms.
+
+This package contains the library with Baseline Profile (which contain
+only technologies that are older than 20 years or otherwise freely
+available for use in the standard).
+
+%description base -l pl.UTF-8
+XEVD (eXtra-fast Essential Video Decoder - bardzo szybki dekoder
+obrazu zasadniczego) to szybki, mający otwarte źródła dekoder MPEG-5
+EVC.
+
+MPEG-5 Essential Video Coding (EVC) to standard kompresji obrazu
+tworzony przez ISO/IEC Moving Picture Experts Group (MPEG). Głównym
+celem EVC jest zapewnienie znacząco lepszych mozliwości kompresji niż
+istniejące standardy kodowania obrazu.
+
+Ten pakiet zawiera bibliotekę o profilu Baseline (zawierający jedynie
+technologie starsze niż 20 lat albo w inny sposób wolnodostępne do
+użycia w standardzie).
+
+%package base-devel
+Summary: Header files for XEVD library (Baseline Profile)
+Summary(pl.UTF-8): Pliki nagłówkowe biblioteki XEVD (profil Baseline)
+Group: Development/Libraries
+Requires: %{name}-base = %{version}-%{release}
+
+%description base-devel
+Header files for XEVD library (Baseline Profile).
+
+%description base-devel -l pl.UTF-8
+Pliki nagłówkowe biblioteki XEVD (profil Baseline).
+
+%package base-static
+Summary: Static XEVD library (Baseline Profile)
+Summary(pl.UTF-8): Statyczna biblioteka XEVD (profil Baseline)
+Group: Development/Libraries
+Requires: %{name}-base-devel = %{version}-%{release}
+
+%description base-static
+Static XEVD library (Baseline Profile).
+
+%description base-static -l pl.UTF-8
+Statyczna biblioteka XEVD (profil Baseline).
+
+%prep
+%setup -q -n %{name}-%{gitref}
+%patch0 -p1
+%patch1 -p1
+
+echo "v%{version}" > version.txt
+
+%build
+install -d build-main
+cd build-main
+%cmake .. \
+ -DXEVD_APP_STATIC_BUILD=OFF
+
+%{__make}
+cd ..
+
+install -d build-base
+cd build-base
+%cmake .. \
+ -DSET_PROF=BASE \
+ -DXEVD_APP_STATIC_BUILD=OFF
+
+%{__make}
+%install
+rm -rf $RPM_BUILD_ROOT
+
+%{__make} -C build-main install \
+ DESTDIR=$RPM_BUILD_ROOT
+%{__mv} $RPM_BUILD_ROOT%{_libdir}/xevd/lib*.a $RPM_BUILD_ROOT%{_libdir}
+
+%{__make} -C build-base install \
+ DESTDIR=$RPM_BUILD_ROOT
+%{__mv} $RPM_BUILD_ROOT%{_libdir}/xevdb/lib*.a $RPM_BUILD_ROOT%{_libdir}
+
+%clean
+rm -rf $RPM_BUILD_ROOT
+
+%post -p /sbin/ldconfig
+%postun -p /sbin/ldconfig
+
+%post base -p /sbin/ldconfig
+%postun base -p /sbin/ldconfig
+
+%files
+%defattr(644,root,root,755)
+%doc COPYING README.md
+%attr(755,root,root) %{_bindir}/xevd_app
+%attr(755,root,root) %{_libdir}/libxevd.so.*.*
+%attr(755,root,root) %ghost %{_libdir}/libxevd.so.0
+
+%files devel
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/libxevd.so
+%{_includedir}/xevd
+%{_pkgconfigdir}/xevd.pc
+
+%if %{with static_libs}
+%files static
+%defattr(644,root,root,755)
+%{_libdir}/libxevd.a
+%endif
+
+%files base
+%defattr(644,root,root,755)
+%doc COPYING README.md
+%attr(755,root,root) %{_bindir}/xevdb_app
+%attr(755,root,root) %{_libdir}/libxevdb.so.*.*
+%attr(755,root,root) %ghost %{_libdir}/libxevdb.so.0
+
+%files base-devel
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/libxevdb.so
+%{_includedir}/xevdb
+%{_pkgconfigdir}/xevdb.pc
+
+%if %{with static_libs}
+%files base-static
+%defattr(644,root,root,755)
+%{_libdir}/libxevdb.a
+%endif
diff --git a/xevd-link.patch b/xevd-link.patch
new file mode 100644
index 0000000..f1c22aa
--- /dev/null
+++ b/xevd-link.patch
@@ -0,0 +1,20 @@
+--- xevd-0.4.1-4e76654c/src_main/CMakeLists.txt.orig 2022-12-21 06:54:35.000000000 +0100
++++ xevd-0.4.1-4e76654c/src_main/CMakeLists.txt 2024-04-13 19:47:21.643990768 +0200
+@@ -115,6 +115,7 @@ elseif( UNIX OR MINGW )
+ LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib)
+ target_compile_definitions( ${LIB_NAME} PUBLIC ANY LINUX )
+ target_link_libraries(${LIB_NAME} m)
++ target_link_libraries(${LIB_NAME}_dynamic m)
+ endif()
+
+ # Install rules
+--- xevd-0.4.1-4e76654c/src_base/CMakeLists.txt.orig 2022-12-21 06:54:35.000000000 +0100
++++ xevd-0.4.1-4e76654c/src_base/CMakeLists.txt 2024-04-13 19:47:49.867171203 +0200
+@@ -94,6 +94,7 @@ elseif( UNIX OR MINGW )
+ LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib)
+ target_compile_definitions( ${LIB_NAME_BASE} PUBLIC ANY LINUX )
+ target_link_libraries(${LIB_NAME_BASE} m)
++ target_link_libraries(${LIB_NAME_BASE}_dynamic m)
+ endif()
+
+ # Install rules
diff --git a/xevd-string.patch b/xevd-string.patch
new file mode 100644
index 0000000..81f1e0d
--- /dev/null
+++ b/xevd-string.patch
@@ -0,0 +1,33 @@
+--- xevd-0.4.1-4e76654c/CMakeLists.txt.orig 2024-04-13 17:49:01.992452880 +0200
++++ xevd-0.4.1-4e76654c/CMakeLists.txt 2024-04-13 17:55:36.726981086 +0200
+@@ -106,7 +106,7 @@ elseif( UNIX OR MINGW )
+ endif()
+
+ set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -${OPT_LV} ${OPT_DBG} -fomit-frame-pointer -Wall -Wno-unused-function -Wno-unused-but-set-variable -Wno-unused-variable -Wno-attributes -Werror -Wno-unknown-pragmas -Wno-stringop-overflow -std=c99")
+- set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-pointer-sign -pthread -Wno-pointer-to-int-cast -Wno-maybe-uninitialized")
++ set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-pointer-sign -pthread -Wno-pointer-to-int-cast -Wno-maybe-uninitialized -Wno-format-truncation")
+ set (CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -lm")
+ endif()
+
+--- xevd-0.4.1-4e76654c/src_base/xevd_port.c.orig 2022-12-21 06:54:35.000000000 +0100
++++ xevd-0.4.1-4e76654c/src_base/xevd_port.c 2024-04-13 17:47:12.533045873 +0200
+@@ -49,7 +49,7 @@ void xevd_trace_line(char * pre)
+ int len = (pre == NULL) ? 0 : (int)strlen(pre);
+ if (len > 0)
+ {
+- sprintf(str, "%s ", pre);
++ snprintf(str, 128, "%s ", pre);
+ len = (int)strlen(str);
+ }
+ for (int i = len; i < chars; i++) { str[i] = '='; }
+--- xevd-0.4.1-4e76654c/app/xevd_app_util.h.orig 2022-12-21 06:54:35.000000000 +0100
++++ xevd-0.4.1-4e76654c/app/xevd_app_util.h 2024-04-13 18:05:49.166996547 +0200
+@@ -67,7 +67,7 @@ static void log_line(char * pre)
+ len = (pre == NULL)? 0: (int)strlen(pre);
+ if(len > 0)
+ {
+- sprintf(str + 3, " %s ", pre);
++ snprintf(str + 3, 125, " %s ", pre);
+ len = (int)strlen(str);
+ }
+
================================================================
---- gitweb:
http://git.pld-linux.org/gitweb.cgi/packages/xevd.git/commitdiff/a2bc6e56c2f0fe6ab6b53081c2bf17f7e81aba1c
More information about the pld-cvs-commit
mailing list