[packages/xeve] - new
qboosh
qboosh at pld-linux.org
Sat Apr 13 21:20:08 CEST 2024
commit 9ed3844f48f7df74743dc5cf3cb5f2bf9b8307ba
Author: Jakub Bogusz <qboosh at pld-linux.org>
Date: Sat Apr 13 21:08:40 2024 +0200
- new
xeve-dynamic.patch | 28 ++++++++
xeve-link.patch | 20 ++++++
xeve-string.patch | 22 ++++++
xeve.spec | 205 +++++++++++++++++++++++++++++++++++++++++++++++++++++
4 files changed, 275 insertions(+)
---
diff --git a/xeve.spec b/xeve.spec
new file mode 100644
index 0000000..f564dcd
--- /dev/null
+++ b/xeve.spec
@@ -0,0 +1,205 @@
+#
+# Conditional build:
+%bcond_without static_libs # static libraries
+#
+Summary: eXtra-fast Essential Video Encoder (MPEG-5 EVC)
+Summary(pl.UTF-8): eXtra-fast Essential Video Encoder - szybki koder obrazu MPEG-5 EVC
+Name: xeve
+Version: 0.4.3
+%define gitref %{version}-3890dae6
+Release: 1
+License: BSD
+Group: Libraries
+#Source0Download: https://github.com/mpeg5/xeve/releases
+Source0: https://github.com/mpeg5/xeve/archive/v%{gitref}/%{name}-%{gitref}.tar.gz
+# Source0-md5: 17e7dc3ba36f43e8311d8a88734aeeca
+Patch0: %{name}-string.patch
+Patch1: %{name}-link.patch
+Patch2: %{name}-dynamic.patch
+URL: https://github.com/mpeg5/xeve
+BuildRequires: cmake >= 3.5
+BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
+
+%description
+The eXtra-fast Essential Video Encoder (XEVE) is an opensource and
+fast MPEG-5 EVC encoder.
+
+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
+XEVE (eXtra-fast Essential Video Encoder - bardzo szybki koder obrazu
+zasadniczego) to szybki, mający otwarte źródła koder 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 XEVE library
+Summary(pl.UTF-8): Pliki nagłówkowe biblioteki XEVE
+Group: Development/Libraries
+Requires: %{name} = %{version}-%{release}
+
+%description devel
+Header files for XEVE library.
+
+%description devel -l pl.UTF-8
+Pliki nagłówkowe biblioteki XEVE.
+
+%package static
+Summary: Static XEVE library
+Summary(pl.UTF-8): Statyczna biblioteka XEVE
+Group: Development/Libraries
+Requires: %{name}-devel = %{version}-%{release}
+
+%description static
+Static XEVE library.
+
+%description static -l pl.UTF-8
+Statyczna biblioteka XEVE.
+
+%package base
+Summary: eXtra-fast Essential Video Encoder (MPEG-5 EVC) - Baseline Profile
+Summary(pl.UTF-8): eXtra-fast Essential Video Encoder - szybki koder obrazu MPEG-5 EVC - profil Baseline
+Group: Libraries
+
+%description base
+The eXtra-fast Essential Video Encoder (XEVE) is an opensource and
+fast MPEG-5 EVC encoder.
+
+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
+XEVE (eXtra-fast Essential Video Encoder - bardzo szybki koder
+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 XEVE library (Baseline Profile)
+Summary(pl.UTF-8): Pliki nagłówkowe biblioteki XEVE (profil Baseline)
+Group: Development/Libraries
+Requires: %{name}-base = %{version}-%{release}
+
+%description base-devel
+Header files for XEVE library (Baseline Profile).
+
+%description base-devel -l pl.UTF-8
+Pliki nagłówkowe biblioteki XEVE (profil Baseline).
+
+%package base-static
+Summary: Static XEVE library (Baseline Profile)
+Summary(pl.UTF-8): Statyczna biblioteka XEVE (profil Baseline)
+Group: Development/Libraries
+Requires: %{name}-base-devel = %{version}-%{release}
+
+%description base-static
+Static XEVE library (Baseline Profile).
+
+%description base-static -l pl.UTF-8
+Statyczna biblioteka XEVE (profil Baseline).
+
+%prep
+%setup -q -n %{name}-%{gitref}
+%patch0 -p1
+%patch1 -p1
+%patch2 -p1
+
+echo "v%{version}" > version.txt
+
+%build
+install -d build-main
+cd build-main
+%cmake ..
+
+%{__make}
+cd ..
+
+install -d build-base
+cd build-base
+%cmake .. \
+ -DSET_PROF=BASE
+
+%{__make}
+%install
+rm -rf $RPM_BUILD_ROOT
+
+%{__make} -C build-main install \
+ DESTDIR=$RPM_BUILD_ROOT
+%{__mv} $RPM_BUILD_ROOT%{_libdir}/xeve/lib*.a $RPM_BUILD_ROOT%{_libdir}
+
+%{__make} -C build-base install \
+ DESTDIR=$RPM_BUILD_ROOT
+%{__mv} $RPM_BUILD_ROOT%{_libdir}/xeveb/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}/xeve_app
+%attr(755,root,root) %{_libdir}/libxeve.so.*.*
+%attr(755,root,root) %ghost %{_libdir}/libxeve.so.0
+
+%files devel
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/libxeve.so
+%{_includedir}/xeve
+%{_pkgconfigdir}/xeve.pc
+
+%if %{with static_libs}
+%files static
+%defattr(644,root,root,755)
+%{_libdir}/libxeve.a
+%endif
+
+%files base
+%defattr(644,root,root,755)
+%doc COPYING README.md
+%attr(755,root,root) %{_bindir}/xeveb_app
+%attr(755,root,root) %{_libdir}/libxeveb.so.*.*
+%attr(755,root,root) %ghost %{_libdir}/libxeveb.so.0
+
+%files base-devel
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/libxeveb.so
+%{_includedir}/xeveb
+%{_pkgconfigdir}/xeveb.pc
+
+%if %{with static_libs}
+%files base-static
+%defattr(644,root,root,755)
+%{_libdir}/libxeveb.a
+%endif
diff --git a/xeve-dynamic.patch b/xeve-dynamic.patch
new file mode 100644
index 0000000..742f3a9
--- /dev/null
+++ b/xeve-dynamic.patch
@@ -0,0 +1,28 @@
+--- xeve-0.4.3-3890dae6/app/CMakeLists.txt.orig 2022-12-21 06:54:14.000000000 +0100
++++ xeve-0.4.3-3890dae6/app/CMakeLists.txt 2024-04-13 21:03:51.465792237 +0200
+@@ -11,10 +11,10 @@ if(("${SET_PROF}" STREQUAL "MAIN"))
+ include_directories( ${EXE_NAME} PUBLIC . .. ../inc ../src_base ../src_main ${BASE_SRC_PATH})
+
+ # Comment the following line for dynamic linking
+- target_link_libraries (${EXE_NAME} xeve)
++ # target_link_libraries (${EXE_NAME} xeve)
+
+ # Uncomment the following line for dynamic linking
+- # target_link_libraries (${EXE_NAME} xeve_dynamic)
++ target_link_libraries (${EXE_NAME} xeve_dynamic)
+
+ set_property(TARGET ${EXE_NAME} PROPERTY FOLDER "app")
+ set_target_properties(${EXE_NAME} PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin)
+@@ -39,10 +39,10 @@ if(("${SET_PROF}" STREQUAL "BASE"))
+ include_directories( ${EXE_NAME_BASE} PUBLIC . .. ../inc ../src_base ../src_main ${BASE_SRC_PATH})
+
+ # Comment the following line for dynamic linking
+- target_link_libraries (${EXE_NAME_BASE} xeveb)
++ # target_link_libraries (${EXE_NAME_BASE} xeveb)
+
+ # Uncomment the following line for dynamic linking
+- # target_link_libraries (${EXE_NAME_BASE} xeveb_dynamic)
++ target_link_libraries (${EXE_NAME_BASE} xeveb_dynamic)
+
+ set_property(TARGET ${EXE_NAME_BASE} PROPERTY FOLDER "app")
+ set_target_properties(${EXE_NAME_BASE} PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin)
diff --git a/xeve-link.patch b/xeve-link.patch
new file mode 100644
index 0000000..d46930a
--- /dev/null
+++ b/xeve-link.patch
@@ -0,0 +1,20 @@
+--- xeve-0.4.3-3890dae6/src_main/CMakeLists.txt.orig 2022-12-21 06:54:14.000000000 +0100
++++ xeve-0.4.3-3890dae6/src_main/CMakeLists.txt 2024-04-13 20:53:32.812477103 +0200
+@@ -103,6 +103,7 @@ elseif( UNIX OR MINGW )
+
+ target_compile_definitions( ${LIB_NAME} PUBLIC ANY LINUX )
+ target_link_libraries(${LIB_NAME} m)
++ target_link_libraries(${LIB_NAME}_dynamic m)
+ endif()
+
+ # Install rules
+--- xeve-0.4.3-3890dae6/src_base/CMakeLists.txt.orig 2022-12-21 06:54:14.000000000 +0100
++++ xeve-0.4.3-3890dae6/src_base/CMakeLists.txt 2024-04-13 20:53:45.202409981 +0200
+@@ -91,6 +91,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/xeve-string.patch b/xeve-string.patch
new file mode 100644
index 0000000..70f7345
--- /dev/null
+++ b/xeve-string.patch
@@ -0,0 +1,22 @@
+--- xeve-0.4.3-3890dae6/app/xeve_app_util.h.orig 2022-12-21 06:54:14.000000000 +0100
++++ xeve-0.4.3-3890dae6/app/xeve_app_util.h 2024-04-13 20:33:44.722246873 +0200
+@@ -73,7 +73,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);
+ }
+
+--- xeve-0.4.3-3890dae6/CMakeLists.txt.orig 2022-12-21 06:54:14.000000000 +0100
++++ xeve-0.4.3-3890dae6/CMakeLists.txt 2024-04-13 20:34:16.332075628 +0200
+@@ -104,7 +104,7 @@ elseif( UNIX OR MINGW )
+ endif()
+
+ set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${OPT_DBG} -${OPT_LV} -fomit-frame-pointer -Wall -Wno-unused-function -Wno-unused-but-set-variable -Wno-unused-variable -Wno-attributes -Werror -Wno-strict-overflow -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()
+
================================================================
---- gitweb:
http://git.pld-linux.org/gitweb.cgi/packages/xeve.git/commitdiff/9ed3844f48f7df74743dc5cf3cb5f2bf9b8307ba
More information about the pld-cvs-commit
mailing list