[packages/libgav1] - new - system-libs patch to use system abseil-cpp and gtest

qboosh qboosh at pld-linux.org
Wed Jun 30 17:52:13 CEST 2021


commit e2f5e4d6b0b7deb06a576415f4e7a8f4373df5ad
Author: Jakub Bogusz <qboosh at pld-linux.org>
Date:   Wed Jun 30 17:55:12 2021 +0200

    - new
    - system-libs patch to use system abseil-cpp and gtest

 libgav1-system-libs.patch | 464 ++++++++++++++++++++++++++++++++++++++++++++++
 libgav1.spec              | 108 +++++++++++
 2 files changed, 572 insertions(+)
---
diff --git a/libgav1.spec b/libgav1.spec
new file mode 100644
index 0000000..6148c57
--- /dev/null
+++ b/libgav1.spec
@@ -0,0 +1,108 @@
+#
+# Conditional build:
+%bcond_without	tests	# tests building
+
+Summary:	AV1 decoder library (10-bit)
+Summary(pl.UTF-8):	Biblioteka dekodera AV1 (10-bitowego)
+Name:		libgav1
+Version:	0.16.3
+%define	gitref	ac9e35a6a5030fc8f26dcfde24ec8bc19ac12a94
+Release:	1
+License:	Apache v2.0
+Group:		Libraries
+#Source0Download: https://chromium.googlesource.com/codecs/libgav1
+Source0:	https://chromium.googlesource.com/codecs/libgav1/+archive/%{gitref}.tar.gz?/%{name}-%{version}.tar.gz
+# Source0-md5:	e4147c91806c7786404ac493e67511dc
+Patch0:		%{name}-system-libs.patch
+URL:		https://chromium.googlesource.com/codecs/libgav1
+BuildRequires:	abseil-cpp-devel
+BuildRequires:	cmake >= 3.7.1
+BuildRequires:	gtest-devel
+BuildRequires:	libstdc++-devel >= 6:5
+BuildRequires:	rpmbuild(macros) >= 1.605
+BuildRoot:	%{tmpdir}/%{name}-%{version}-root-%(id -u -n)
+
+%description
+libgav1 is a Main profile (0) & High profile (1) compliant AV1
+decoder.
+
+%description -l pl.UTF-8
+libgav1 to dekoder AV1 zgodny z profilami Main (0) i High (1).
+
+%package devel
+Summary:	Header files for libgav1 library
+Summary(pl.UTF-8):	Pliki nagłówkowe biblioteki libgav1
+Group:		Development/Libraries
+Requires:	%{name} = %{version}-%{release}
+Requires:	libstdc++-devel >= 6:5
+
+%description devel
+Header files for libgav1 library.
+
+%description devel -l pl.UTF-8
+Pliki nagłówkowe biblioteki libgav1.
+
+%package static
+Summary:	Static libgav1 library
+Summary(pl.UTF-8):	Statyczna biblioteka libgav1
+Group:		Development/Libraries
+Requires:	%{name}-devel = %{version}-%{release}
+
+%description static
+Static libgav1 library.
+
+%description static -l pl.UTF-8
+Statyczna biblioteka libgav1.
+
+%prep
+%setup -q -c
+%patch0 -p1
+
+%build
+install -d build
+cd build
+%cmake .. \
+	-DCMAKE_INSTALL_BINDIR=bin \
+	-DCMAKE_INSTALL_DATAROOTDIR=share \
+	-DCMAKE_INSTALL_INCLUDEDIR=include \
+	-DCMAKE_INSTALL_LIBDIR=%{_lib} \
+	%{!?with_tests:-DLIBGAV1_ENABLE_TESTS=OFF}
+
+%{__make}
+
+%if %{with tests}
+# how to execute all automatically?
+for f in $(echo ./*_test) ; do
+	$f
+done
+%endif
+
+%install
+rm -rf $RPM_BUILD_ROOT
+
+%{__make} -C build install \
+	DESTDIR=$RPM_BUILD_ROOT
+
+%clean
+rm -rf $RPM_BUILD_ROOT
+
+%post	-p /sbin/ldconfig
+%postun	-p /sbin/ldconfig
+
+%files
+%defattr(644,root,root,755)
+%doc AUTHORS README.md
+%attr(755,root,root) %{_bindir}/gav1_decode
+%attr(755,root,root) %{_libdir}/libgav1.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libgav1.so.0
+
+%files devel
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/libgav1.so
+%{_includedir}/gav1
+%{_pkgconfigdir}/libgav1.pc
+%{_datadir}/cmake/libgav1-config.cmake
+
+%files static
+%defattr(644,root,root,755)
+%{_libdir}/libgav1.a
diff --git a/libgav1-system-libs.patch b/libgav1-system-libs.patch
new file mode 100644
index 0000000..481075d
--- /dev/null
+++ b/libgav1-system-libs.patch
@@ -0,0 +1,464 @@
+--- libgav1-0.16.3/CMakeLists.txt.orig	2021-06-30 16:32:33.000000000 +0200
++++ libgav1-0.16.3/CMakeLists.txt	2021-06-30 16:35:57.392250015 +0200
+@@ -100,9 +100,6 @@ if(LIBGAV1_VERBOSE)
+   libgav1_dump_options()
+ endif()
+ 
+-set(libgav1_abseil_build "${libgav1_build}/abseil")
+-set(libgav1_gtest_build "${libgav1_build}/gtest")
+-
+ # Compiler/linker flags must be lists, but come in from the environment as
+ # strings. Break them up:
+ if(NOT "${LIBGAV1_CXX_FLAGS}" STREQUAL "")
+@@ -115,19 +112,6 @@ endif()
+ # Set test-only flags based on LIBGAV1_CXX_FLAGS.
+ libgav1_set_test_flags()
+ 
+-set(libgav1_abseil "${libgav1_root}/third_party/abseil-cpp")
+-if(NOT EXISTS "${libgav1_abseil}")
+-  message(
+-    FATAL_ERROR
+-      "Abseil not found. This dependency is required by the"
+-      " examples & tests and libgav1 when LIBGAV1_THREADPOOL_USE_STD_MUTEX is"
+-      " not defined. To continue, download the Abseil repository to"
+-      " third_party/abseil-cpp:\n  git \\\n    -C ${libgav1_root} \\\n"
+-      "    clone \\\n"
+-      "    https://github.com/abseil/abseil-cpp.git third_party/abseil-cpp")
+-endif()
+-add_subdirectory("${libgav1_abseil}" "${libgav1_abseil_build}" EXCLUDE_FROM_ALL)
+-
+ libgav1_reset_target_lists()
+ libgav1_add_dsp_targets()
+ libgav1_add_decoder_targets()
+--- libgav1-0.16.3/examples/libgav1_examples.cmake.orig	2021-06-30 16:32:33.000000000 +0200
++++ libgav1-0.16.3/examples/libgav1_examples.cmake	2021-06-30 16:35:57.392250015 +0200
+@@ -56,8 +56,8 @@ macro(libgav1_add_examples_targets)
+                          libgav1_file_reader
+                          libgav1_file_writer
+                          LIB_DEPS
+-                         absl::strings
+-                         absl::str_format_internal
+-                         absl::time
++                         absl_strings
++                         absl_str_format_internal
++                         absl_time
+                          ${libgav1_dependency})
+ endmacro()
+--- libgav1-0.16.3/src/libgav1_decoder.cmake.orig	2021-06-30 16:32:33.000000000 +0200
++++ libgav1-0.16.3/src/libgav1_decoder.cmake	2021-06-30 16:38:48.877987664 +0200
+@@ -108,7 +108,7 @@ macro(libgav1_add_decoder_targets)
+   endif()
+ 
+   if(NOT ANDROID)
+-    list(APPEND libgav1_absl_deps absl::base absl::synchronization)
++    list(APPEND libgav1_absl_deps absl_base absl_synchronization)
+   endif()
+ 
+   libgav1_add_library(NAME libgav1_decoder TYPE OBJECT SOURCES
+@@ -151,6 +151,7 @@ macro(libgav1_add_decoder_targets)
+                         ${libgav1_include_paths}
+                         LIB_DEPS
+                         libgav1_static
++                        pthread
+                         PUBLIC_INCLUDES
+                         ${libgav1_source})
+   endif()
+--- libgav1-0.16.3/tests/libgav1_tests.cmake.orig	2021-06-30 16:32:33.000000000 +0200
++++ libgav1-0.16.3/tests/libgav1_tests.cmake	2021-06-30 16:41:54.316983055 +0200
+@@ -17,24 +17,6 @@ if(LIBGAV1_LIBGAV1_TESTS_CMAKE_)
+ endif() # LIBGAV1_LIBGAV1_TESTS_CMAKE_
+ set(LIBGAV1_LIBGAV1_TESTS_CMAKE_ 1)
+ 
+-set(libgav1_googletest "${libgav1_root}/third_party/googletest")
+-if(NOT LIBGAV1_ENABLE_TESTS OR NOT EXISTS "${libgav1_googletest}")
+-  macro(libgav1_add_tests_targets)
+-
+-  endmacro()
+-
+-  if(LIBGAV1_ENABLE_TESTS AND NOT EXISTS "${libgav1_googletest}")
+-    message(
+-      "GoogleTest not found, setting LIBGAV1_ENABLE_TESTS to false.\n"
+-      "To enable tests download the GoogleTest repository to"
+-      " third_party/googletest:\n\n  git \\\n    -C ${libgav1_root} \\\n"
+-      "    clone \\\n"
+-      "    https://github.com/google/googletest.git third_party/googletest\n")
+-    set(LIBGAV1_ENABLE_TESTS FALSE CACHE BOOL "Enables tests." FORCE)
+-  endif()
+-  return()
+-endif()
+-
+ # Check GoogleTest compiler requirements.
+ if((CMAKE_CXX_COMPILER_ID
+     MATCHES
+@@ -113,32 +95,6 @@ macro(libgav1_add_tests_targets)
+         "This version of libgav1_add_tests_targets() should only be used with"
+         " LIBGAV1_ENABLE_TESTS set to true.")
+   endif()
+-  libgav1_add_library(TEST
+-                      NAME
+-                      libgav1_gtest
+-                      TYPE
+-                      STATIC
+-                      SOURCES
+-                      "${libgav1_googletest}/googletest/src/gtest-all.cc"
+-                      DEFINES
+-                      ${libgav1_defines}
+-                      INCLUDES
+-                      ${libgav1_gtest_include_paths}
+-                      ${libgav1_include_paths})
+-
+-  libgav1_add_library(TEST
+-                      NAME
+-                      libgav1_gtest_main
+-                      TYPE
+-                      STATIC
+-                      SOURCES
+-                      "${libgav1_googletest}/googletest/src/gtest_main.cc"
+-                      DEFINES
+-                      ${libgav1_defines}
+-                      INCLUDES
+-                      ${libgav1_gtest_include_paths}
+-                      ${libgav1_include_paths})
+-
+   if(ANDROID OR IOS)
+     if(DEFINED LIBGAV1_THREADPOOL_USE_STD_MUTEX
+        AND NOT LIBGAV1_THREADPOOL_USE_STD_MUTEX)
+@@ -152,7 +108,7 @@ macro(libgav1_add_tests_targets)
+   endif()
+ 
+   if(use_absl_threading)
+-    list(APPEND libgav1_common_test_absl_deps absl::synchronization)
++    list(APPEND libgav1_common_test_absl_deps absl_synchronization)
+   endif()
+ 
+   libgav1_add_executable(TEST
+@@ -169,10 +125,10 @@ macro(libgav1_add_tests_targets)
+                          libgav1_tests_utils
+                          libgav1_utils
+                          LIB_DEPS
+-                         absl::time
++                         absl_time
+                          ${libgav1_common_test_absl_deps}
+-                         libgav1_gtest
+-                         libgav1_gtest_main)
++                         gtest
++                         gtest_main)
+ 
+   libgav1_add_library(TEST
+                       NAME
+@@ -214,12 +170,12 @@ macro(libgav1_add_tests_targets)
+                          libgav1_tests_utils
+                          libgav1_utils
+                          LIB_DEPS
+-                         absl::str_format_internal
+-                         absl::strings
+-                         absl::time
++                         absl_str_format_internal
++                         absl_strings
++                         absl_time
+                          ${libgav1_common_test_absl_deps}
+-                         libgav1_gtest
+-                         libgav1_gtest_main)
++                         gtest
++                         gtest_main)
+ 
+   libgav1_add_executable(TEST
+                          NAME
+@@ -236,11 +192,11 @@ macro(libgav1_add_tests_targets)
+                          libgav1_tests_utils
+                          libgav1_utils
+                          LIB_DEPS
+-                         absl::strings
+-                         absl::time
++                         absl_strings
++                         absl_time
+                          ${libgav1_common_test_absl_deps}
+-                         libgav1_gtest
+-                         libgav1_gtest_main)
++                         gtest
++                         gtest_main)
+ 
+   libgav1_add_executable(TEST
+                          NAME
+@@ -258,11 +214,12 @@ macro(libgav1_add_tests_targets)
+                          libgav1_tests_utils
+                          libgav1_utils
+                          LIB_DEPS
+-                         absl::str_format_internal
+-                         absl::time
++                         absl_str_format_internal
++                         absl_strings
++                         absl_time
+                          ${libgav1_common_test_absl_deps}
+-                         libgav1_gtest
+-                         libgav1_gtest_main)
++                         gtest
++                         gtest_main)
+ 
+   libgav1_add_executable(TEST
+                          NAME
+@@ -279,11 +236,12 @@ macro(libgav1_add_tests_targets)
+                          libgav1_tests_utils
+                          libgav1_utils
+                          LIB_DEPS
+-                         absl::str_format_internal
+-                         absl::time
++                         absl_str_format_internal
++                         absl_strings
++                         absl_time
+                          ${libgav1_common_test_absl_deps}
+-                         libgav1_gtest
+-                         libgav1_gtest_main)
++                         gtest
++                         gtest_main)
+ 
+   libgav1_add_executable(TEST
+                          NAME
+@@ -300,11 +258,11 @@ macro(libgav1_add_tests_targets)
+                          libgav1_tests_utils
+                          libgav1_utils
+                          LIB_DEPS
+-                         absl::strings
+-                         absl::time
++                         absl_strings
++                         absl_time
+                          ${libgav1_common_test_absl_deps}
+-                         libgav1_gtest
+-                         libgav1_gtest_main)
++                         gtest
++                         gtest_main)
+ 
+   libgav1_add_executable(TEST
+                          NAME
+@@ -322,10 +280,11 @@ macro(libgav1_add_tests_targets)
+                          libgav1_tests_utils
+                          libgav1_utils
+                          LIB_DEPS
+-                         absl::time
++                         absl_throw_delegate
++                         absl_time
+                          ${libgav1_common_test_absl_deps}
+-                         libgav1_gtest
+-                         libgav1_gtest_main)
++                         gtest
++                         gtest_main)
+ 
+   libgav1_add_executable(TEST
+                          NAME
+@@ -343,10 +302,10 @@ macro(libgav1_add_tests_targets)
+                          libgav1_tests_utils
+                          libgav1_utils
+                          LIB_DEPS
+-                         absl::time
++                         absl_time
+                          ${libgav1_common_test_absl_deps}
+-                         libgav1_gtest
+-                         libgav1_gtest_main)
++                         gtest
++                         gtest_main)
+ 
+   libgav1_add_executable(TEST
+                          NAME
+@@ -364,10 +323,10 @@ macro(libgav1_add_tests_targets)
+                          libgav1_tests_utils
+                          libgav1_utils
+                          LIB_DEPS
+-                         absl::time
++                         absl_time
+                          ${libgav1_common_test_absl_deps}
+-                         libgav1_gtest
+-                         libgav1_gtest_main)
++                         gtest
++                         gtest_main)
+ 
+   libgav1_add_executable(TEST
+                          NAME
+@@ -385,10 +344,10 @@ macro(libgav1_add_tests_targets)
+                          libgav1_tests_utils
+                          libgav1_utils
+                          LIB_DEPS
+-                         absl::time
++                         absl_time
+                          ${libgav1_common_test_absl_deps}
+-                         libgav1_gtest
+-                         libgav1_gtest_main)
++                         gtest
++                         gtest_main)
+ 
+   libgav1_add_executable(TEST
+                          NAME
+@@ -405,11 +364,11 @@ macro(libgav1_add_tests_targets)
+                          libgav1_dsp
+                          libgav1_utils
+                          LIB_DEPS
+-                         absl::strings
+-                         absl::time
++                         absl_strings
++                         absl_time
+                          ${libgav1_common_test_absl_deps}
+-                         libgav1_gtest
+-                         libgav1_gtest_main)
++                         gtest
++                         gtest_main)
+ 
+   libgav1_add_executable(TEST
+                          NAME
+@@ -427,11 +386,11 @@ macro(libgav1_add_tests_targets)
+                          libgav1_dsp
+                          libgav1_utils
+                          LIB_DEPS
+-                         absl::strings
+-                         absl::time
++                         absl_strings
++                         absl_time
+                          ${libgav1_common_test_absl_deps}
+-                         libgav1_gtest
+-                         libgav1_gtest_main)
++                         gtest
++                         gtest_main)
+ 
+   libgav1_add_executable(TEST
+                          NAME
+@@ -449,10 +408,10 @@ macro(libgav1_add_tests_targets)
+                          libgav1_tests_utils
+                          libgav1_utils
+                          LIB_DEPS
+-                         absl::time
++                         absl_time
+                          ${libgav1_common_test_absl_deps}
+-                         libgav1_gtest
+-                         libgav1_gtest_main)
++                         gtest
++                         gtest_main)
+ 
+   libgav1_add_executable(TEST
+                          NAME
+@@ -470,10 +429,10 @@ macro(libgav1_add_tests_targets)
+                          libgav1_tests_utils
+                          libgav1_utils
+                          LIB_DEPS
+-                         absl::time
++                         absl_time
+                          ${libgav1_common_test_absl_deps}
+-                         libgav1_gtest
+-                         libgav1_gtest_main)
++                         gtest
++                         gtest_main)
+ 
+   libgav1_add_executable(TEST
+                          NAME
+@@ -490,11 +449,12 @@ macro(libgav1_add_tests_targets)
+                          libgav1_tests_utils
+                          libgav1_utils
+                          LIB_DEPS
+-                         absl::str_format_internal
+-                         absl::time
++                         absl_str_format_internal
++                         absl_strings
++                         absl_time
+                          ${libgav1_common_test_absl_deps}
+-                         libgav1_gtest
+-                         libgav1_gtest_main)
++                         gtest
++                         gtest_main)
+ 
+   libgav1_add_executable(TEST
+                          NAME
+@@ -511,11 +471,11 @@ macro(libgav1_add_tests_targets)
+                          libgav1_tests_utils
+                          libgav1_utils
+                          LIB_DEPS
+-                         absl::str_format_internal
+-                         absl::time
++                         absl_str_format_internal
++                         absl_time
+                          ${libgav1_common_test_absl_deps}
+-                         libgav1_gtest
+-                         libgav1_gtest_main)
++                         gtest
++                         gtest_main)
+ 
+   libgav1_add_executable(TEST
+                          NAME
+@@ -532,11 +492,11 @@ macro(libgav1_add_tests_targets)
+                          libgav1_tests_utils
+                          libgav1_utils
+                          LIB_DEPS
+-                         absl::str_format_internal
+-                         absl::time
++                         absl_str_format_internal
++                         absl_time
+                          ${libgav1_common_test_absl_deps}
+-                         libgav1_gtest
+-                         libgav1_gtest_main)
++                         gtest
++                         gtest_main)
+ 
+   libgav1_add_executable(TEST
+                          NAME
+@@ -554,11 +514,12 @@ macro(libgav1_add_tests_targets)
+                          libgav1_tests_utils
+                          libgav1_utils
+                          LIB_DEPS
+-                         absl::str_format_internal
+-                         absl::time
++                         absl_str_format_internal
++                         absl_strings
++                         absl_time
+                          ${libgav1_common_test_absl_deps}
+-                         libgav1_gtest
+-                         libgav1_gtest_main)
++                         gtest
++                         gtest_main)
+ 
+   libgav1_add_executable(TEST
+                          NAME
+@@ -575,11 +536,13 @@ macro(libgav1_add_tests_targets)
+                          libgav1_tests_utils
+                          libgav1_utils
+                          LIB_DEPS
+-                         absl::str_format_internal
+-                         absl::time
++                         absl_str_format_internal
++                         absl_strings
++                         absl_throw_delegate
++                         absl_time
+                          ${libgav1_common_test_absl_deps}
+-                         libgav1_gtest
+-                         libgav1_gtest_main)
++                         gtest
++                         gtest_main)
+ 
+   libgav1_add_executable(TEST
+                          NAME
+@@ -597,11 +560,12 @@ macro(libgav1_add_tests_targets)
+                          libgav1_tests_utils
+                          libgav1_utils
+                          LIB_DEPS
+-                         absl::str_format_internal
+-                         absl::time
++                         absl_str_format_internal
++                         absl_strings
++                         absl_time
+                          ${libgav1_common_test_absl_deps}
+-                         libgav1_gtest
+-                         libgav1_gtest_main)
++                         gtest
++                         gtest_main)
+ 
+   libgav1_add_executable(TEST
+                          NAME
+@@ -618,9 +582,9 @@ macro(libgav1_add_tests_targets)
+                          libgav1_tests_utils
+                          libgav1_utils
+                          LIB_DEPS
+-                         absl::str_format_internal
+-                         absl::time
++                         absl_str_format_internal
++                         absl_time
+                          ${libgav1_common_test_absl_deps}
+-                         libgav1_gtest
+-                         libgav1_gtest_main)
++                         gtest
++                         gtest_main)
+ endmacro()
================================================================

---- gitweb:

http://git.pld-linux.org/gitweb.cgi/packages/libgav1.git/commitdiff/e2f5e4d6b0b7deb06a576415f4e7a8f4373df5ad



More information about the pld-cvs-commit mailing list