Compare commits

..

8 commits

Author SHA1 Message Date
Troy Dawson
701155911d epel8-playground decommissioned : https://pagure.io/epel/issue/136 2022-01-31 17:51:14 -08:00
Simone Caronni
ae468a74d4 Fix broken dependency 2020-03-07 09:18:34 +01:00
Simone Caronni
c0d635f452 Update changelog 2020-02-29 17:24:09 +01:00
Simone Caronni
8df1a4cd76 Require python3 for building 2020-02-29 17:22:30 +01:00
Simone Caronni
c7f8157dfc ExclusiveArch for i686 and x86_64 2020-02-29 17:08:55 +01:00
Simone Caronni
8554d19826 Add review patch from Artem 2020-02-29 16:58:17 +01:00
Simone Caronni
d5ddb7427b First import 2020-02-29 16:58:12 +01:00
Igor Raits
fb54339b9c "Adding package.cfg file" 2020-02-29 16:50:18 +01:00
7 changed files with 1 additions and 183 deletions

1
.gitignore vendored
View file

@ -1 +0,0 @@
*.tar.gz

View file

@ -1,3 +0,0 @@
# vapoursynth
The vapoursynth package.

1
dead.package Normal file
View file

@ -0,0 +1 @@
epel8-playground decommissioned : https://pagure.io/epel/issue/136

View file

@ -1 +0,0 @@
SHA512 (vapoursynth-R79.tar.gz) = 8e28a9ff72e5f0c891deeffd0ac0d38a654519910b2227414b8750c74a6198a6811d2271bd447b085a86b82665d38a5fe4fceb55b7537a13d72b2c87deba86fd

View file

@ -1,14 +0,0 @@
--- vapoursynth-R79/src/core/float16_helper.h 2026-08-07 10:48:01.000000000 +0200
+++ vapoursynth-R79/src/core/float16_helper.h 2026-08-10 11:44:16.851849594 +0200
@@ -31,7 +31,10 @@
// Without hardware support the compiler emits __truncsfhf2 / __extendhfsf2
// soft-float builtins, which are not linked under clang-cl + lld-link -- so
// there we fall back to explicit bit manipulation instead.
-#if (defined(__clang__) || defined(__GNUC__)) && (defined(__F16C__) || (!defined(__x86_64__) && !defined(__i386__)))
+// Not every non-x86 target has the type at all: PowerPC has no _Float16, and
+// the compiler rejects it outright. __FLT16_MANT_DIG__ is predefined only
+// where _Float16 is actually available, so test for that as well.
+#if (defined(__clang__) || defined(__GNUC__)) && defined(__FLT16_MANT_DIG__) && (defined(__F16C__) || (!defined(__x86_64__) && !defined(__i386__)))
# define VS_HAVE_NATIVE_FLOAT16 1
#else
# define VS_HAVE_NATIVE_FLOAT16 0

View file

@ -1,10 +0,0 @@
--- vapoursynth-R79/meson.build 2026-08-07 10:48:01.000000000 +0200
+++ vapoursynth-R79/meson.build 2026-08-10 10:52:07.764950878 +0200
@@ -267,6 +267,7 @@ libvsscript = library('vsscript',
include_directories: incdir,
install: true,
install_dir: install_dir,
+ soversion: '0',
)
vsscript_dep = declare_dependency(

View file

@ -1,154 +0,0 @@
Name: vapoursynth
Version: 79
Release: %autorelease
Summary: Video processing framework with simplicity in mind
License: LGPL-2.1-only
URL: http://www.vapoursynth.com
Source0: https://github.com/%{name}/%{name}/archive/R%{version}/%{name}-R%{version}.tar.gz
# Restore soversion that was dropped when libvapoursynth-script was renamed to libvsscript.
Patch0: %{name}-vsscript-soversion.patch
# Check for _Float16 instead of assuming that everything not x86 provides it.
Patch1: %{name}-float16-native-check.patch
BuildRequires: gcc-c++
BuildRequires: meson
BuildRequires: ninja-build
BuildRequires: pkgconfig(zimg)
BuildRequires: python3-devel
BuildRequires: python3-pytest
# Since R79 upstream installs the whole runtime -- the core library, the filter
# plugins, vspipe, the headers and the pkg-config file -- inside the Python
# package directory, and VSCore locates libvapoursynthfilters and the
# third-party plugin directory relative to libvapoursynth.so via dladdr().
# The libraries, vspipe and the plugin directory therefore have to stay there;
# see %%install for the FHS entry points layered on top.
%global vsdir %{python3_sitearch}/%{name}
%description
VapourSynth is an application for video manipulation. Or a plugin. Or a library.
Its hard to tell because it has a core library written in C++ and a Python
module to allow video scripts to be created.
%package libs
Summary: VapourSynth's core library with a C++ API
Obsoletes: lib%{name} < %{version}-%{release}
Provides: lib%{name} == %{version}-%{release}
Obsoletes: %{name}-plugins < %{version}-%{release}
Provides: %{name}-plugins == %{version}-%{release}
%description libs
VapourSynth's core library with a C++ API.
%package -n python3-%{name}
Summary: Python interface for VapourSynth
Requires: %{name}-libs%{?_isa} = %{version}-%{release}
%description -n python3-%{name}
Python interface for VapourSynth/VSSCript.
%package devel
Summary: Development files for %{name}
Requires: %{name}-libs%{?_isa} = %{version}-%{release}
%description devel
Development files for %{name}.
%package tools
Summary: Extra tools for VapourSynth
Requires: python3-vapoursynth%{?_isa} = %{version}-%{release}
%description tools
This package contains the vspipe tool for interfacing with VapourSynth.
%prep
%autosetup -p1 -n %{name}-R%{version}
%generate_buildrequires
%pyproject_buildrequires -R
%build
# CPython 3.15 gained a platform specific stable ABI suffix
# (.abi3-x86_64-linux-gnu.so) which meson-python 0.20 does not recognise as
# abi3, so it refuses to build the wheel. Nothing is gained from the limited
# API in a distribution build against a single Python version, so turn it off.
%pyproject_wheel -C setup-args=-Dpython.allow_limited_api=false
%install
%pyproject_install
%pyproject_save_files -l %{name}
# Let RPM pick up docs in the files section.
rm -fr %{buildroot}%{_docdir}/%{name}
# Third-party plugins are auto-loaded from next to the core library.
mkdir -p %{buildroot}%{vsdir}/plugins
# Headers belong in the usual place.
mkdir -p %{buildroot}%{_includedir}/%{name}
mv %{buildroot}%{vsdir}/include/*.h %{buildroot}%{_includedir}/%{name}/
rmdir %{buildroot}%{vsdir}/include
# Upstream's vapoursynth.pc resolves everything relative to ${pcfiledir}, which
# no longer works once the file sits in %%{_libdir}/pkgconfig, and it ships no
# Libs: at all. Write it out instead.
rm -fr %{buildroot}%{vsdir}/pkgconfig
mkdir -p %{buildroot}%{_libdir}/pkgconfig
cat > %{buildroot}%{_libdir}/pkgconfig/%{name}.pc <<EOF
prefix=%{_prefix}
libdir=%{_libdir}
includedir=%{_includedir}/%{name}
Name: vapoursynth
Description: A frameserver for the 21st century
Version: %{version}
Cflags: -I\${includedir}
Libs: -L\${libdir} -lvapoursynth
EOF
# Make the libraries linkable and resolvable the normal way.
mkdir -p %{buildroot}%{_libdir}
for lib in $(cd %{buildroot}%{vsdir} && ls libvapoursynth.so.* libvsscript.so.*); do
ln -s %{vsdir}/${lib} %{buildroot}%{_libdir}/${lib}
ln -s ${lib} %{buildroot}%{_libdir}/${lib%%.so.*}.so
done
# The core library, its filter plugins and vspipe live inside the Python
# package directory but are packaged in the -libs and -tools subpackages.
sed -i -e '\#/%{name}/lib.*\.so#d' \
-e '\#/%{name}/vspipe$#d' \
-e '\#/%{name}/include#d' \
-e '\#/%{name}/pkgconfig#d' \
-e '\#^%%dir %{vsdir}$#d' \
%{pyproject_files}
%check
%pytest
%files libs
%doc ChangeLog
%license COPYING.LESSER
%dir %{vsdir}
%dir %{vsdir}/plugins
%{vsdir}/lib%{name}.so.*
%{vsdir}/lib%{name}filters*.so
%{vsdir}/libvsscript.so.*
%{_libdir}/lib%{name}.so.*
%{_libdir}/libvsscript.so.*
%files devel
%{_includedir}/%{name}/
%{_libdir}/lib%{name}.so
%{_libdir}/libvsscript.so
%{_libdir}/pkgconfig/%{name}.pc
%files tools
%{_bindir}/%{name}
%{_bindir}/vspipe
%{vsdir}/vspipe
%files -n python3-%{name} -f %{pyproject_files}
%changelog
%autochangelog