File libpostproc.spec of Package libpostproc

#
# spec file for package ffmpeg-8
#
# Copyright (c) 2025 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.

# Please submit bugfixes or comments via https://bugs.opensuse.org/
#


Name:           libpostproc
%define rev e4982b227779f24f7c54d699d2e247652f69c475
Version:        7.1+ge4982b22
Release:        0
Summary:        FFmpeg post-processing library
License:        GPL-2.0-or-later
Group:          Productivity/Multimedia/Video/Editors and Convertors
URL:            https://github.com/michaelni/libpostproc
Source:         https://github.com/michaelni/libpostproc/archive/%rev.tar.gz
Source98:       http://ffmpeg.org/ffmpeg-devel.asc#/libpostproc.keyring
Source99:       baselibs.conf
BuildRequires:  c_compiler
BuildRequires:  nasm
BuildRequires:  ffmpeg-8-libavutil-devel

%description
libpostproc is a library for filtering images and videos. It supports
the MPEG4 deblocking and deringing filters and some old basic
deinterlacing methods and old basic denoise. These deblocking methods
are effective on a wide range of old formats, including jpeg, mpeg1,
mpeg2, mpeg4, h261, h262, h263, msmpeg4v1, msmpeg4v2, msmpeg4v3 and
many other similar formats.

%package -n libpostproc59
Summary:        FFmpeg post-processing library
Group:          System/Libraries
Requires:       libavutil60 = %version-%release

%description -n libpostproc59
libpostproc is a library for filtering images and videos. It supports
the MPEG4 deblocking and deringing filters and some old basic
deinterlacing methods and old basic denoise. These deblocking methods
are effective on a wide range of old formats, including jpeg, mpeg1,
mpeg2, mpeg4, h261, h262, h263, msmpeg4v1, msmpeg4v2, msmpeg4v3 and
many other similar formats.

%package devel
Summary:        Development files for the FFmpeg post-processing library
Group:          Development/Libraries/C and C++
Requires:       libpostproc59 = %version-%release

%description devel
A library with video postprocessing filters, such as deblocking and
deringing filters, noise reduction, automatic contrast and brightness
correction, linear/cubic interpolating deinterlacing.

This subpackage contains the headers for FFmpeg libpostproc.

%prep
%autosetup -p1 -n %name-%rev

%build
# Note we are mixing headers between libavutil-60.8 (system ffmpeg-8) and
# libavutil-60.1 (postproc)
ln -s %_libdir/libavutil.so libavutil/
./configure \
	--prefix="%_prefix" \
	--libdir="%_libdir" \
	--shlibdir="%_libdir" \
	--incdir="%_includedir/ffmpeg" \
	--extra-cflags="%optflags" \
	--optflags="%optflags" \
	--disable-htmlpages \
	--enable-pic \
	--disable-stripping \
	--enable-shared \
	--disable-static \
	--enable-gpl \
	--enable-version3 \
	--disable-avutil

cat config.h
%make_build

%install
b="%buildroot"
%make_install
rm -Rfv "$b/%_datadir/postproc/examples"

%ldconfig_scriptlets -n libpostproc59

%files -n libpostproc59
%_libdir/libpostproc.so.59*

%files devel
%_includedir/ffmpeg/
%_libdir/libpostproc.so
%_libdir/pkgconfig/libpostproc.pc
%license LIC* COPY*

%changelog
openSUSE Build Service is sponsored by