[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