Compare commits

..

No commits in common. "rawhide" and "f39" have entirely different histories.

7 changed files with 156 additions and 111 deletions

6
.gitignore vendored
View file

@ -1 +1,5 @@
*.tar.gz
/vapoursynth-R48.tar.gz
/vapoursynth-R51.tar.gz
/vapoursynth-R57.tar.gz
/vapoursynth-R58.tar.gz
/vapoursynth-R63.tar.gz

View file

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

View file

@ -1 +1 @@
SHA512 (vapoursynth-R79.tar.gz) = 8e28a9ff72e5f0c891deeffd0ac0d38a654519910b2227414b8750c74a6198a6811d2271bd447b085a86b82665d38a5fe4fceb55b7537a13d72b2c87deba86fd
SHA512 (vapoursynth-R63.tar.gz) = 301985de6ea87f077129b801422b000671e8a2139743beaa473db68b86fa80f08997fdac7be258c056fa5a3c9764c3920976fb8e51829361ebc2e8819b3a666a

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

@ -0,0 +1,12 @@
diff -Naur vapoursynth-R57.old/Makefile.am vapoursynth-R57/Makefile.am
--- vapoursynth-R57.old/Makefile.am 2022-03-02 08:35:44.861454145 +0100
+++ vapoursynth-R57/Makefile.am 2022-03-02 08:36:52.981729877 +0100
@@ -88,7 +88,7 @@
pkgconfig_DATA += pc/vapoursynth.pc
-libvapoursynth_la_LDFLAGS = -no-undefined -avoid-version $(UNDEFINEDLDFLAGS)
+libvapoursynth_la_LDFLAGS = -no-undefined -version-info $(PACKAGE_VERSION) $(UNDEFINEDLDFLAGS)
libvapoursynth_la_CPPFLAGS = $(PTHREAD_CFLAGS) $(ZIMG_CFLAGS) -DVS_PATH_PLUGINDIR='"$(PLUGINDIR)"'
libvapoursynth_la_LIBADD = $(PTHREAD_LIBS) $(ZIMG_LIBS) $(DLOPENLIB)

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,30 +1,30 @@
Name: vapoursynth
Version: 79
Release: %autorelease
Version: 63
Release: 3%{?dist}
Summary: Video processing framework with simplicity in mind
License: LGPL-2.1-only
License: LGPLv2
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
Patch0: %{name}-version-info.patch
BuildRequires: make
BuildRequires: autoconf
BuildRequires: automake
BuildRequires: gcc-c++
BuildRequires: meson
BuildRequires: ninja-build
BuildRequires: libtool
BuildRequires: nasm
BuildRequires: pkgconfig(python3)
BuildRequires: pkgconfig(tesseract)
BuildRequires: pkgconfig(zimg)
BuildRequires: python3-devel
BuildRequires: python3-pytest
BuildRequires: python3
BuildRequires: python3-Cython
BuildRequires: python3-setuptools
# 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}
%{?_with_tests:
BuildRequires: %{name}-devel
BuildRequires: python3dist(pytest)
}
%description
VapourSynth is an application for video manipulation. Or a plugin. Or a library.
@ -43,7 +43,6 @@ 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.
@ -57,7 +56,6 @@ 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.
@ -65,90 +63,145 @@ 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
autoreconf -vif
%configure \
--disable-static \
--enable-x86-asm \
--enable-core \
--enable-vsscript \
--enable-vspipe \
--enable-python-module
%make_build
%install
%pyproject_install
%pyproject_save_files -l %{name}
%py3_install
%make_install
find %{buildroot} -type f -name "*.la" -delete
# Let RPM pick up docs in the files section.
# Create plugin directory
mkdir -p %{buildroot}%{_libdir}/%{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}
%ldconfig_scriptlets libs
%ldconfig_scriptlets -n python3-%{name}
%{?_with_tests:
%check
%pytest
%{python3} -m pytest -v
}
%files libs
%doc ChangeLog
%license COPYING.LESSER
%dir %{vsdir}
%dir %{vsdir}/plugins
%{vsdir}/lib%{name}.so.*
%{vsdir}/lib%{name}filters*.so
%{vsdir}/libvsscript.so.*
%dir %{_libdir}/%{name}
%{_libdir}/lib%{name}.so.*
%{_libdir}/libvsscript.so.*
%{_libdir}/lib%{name}-script.so.*
%files -n python3-%{name}
%{python3_sitearch}/%{name}.so
%{python3_sitearch}/VapourSynth-*.egg-info
%files devel
%{_includedir}/%{name}/
%{_libdir}/lib%{name}.so
%{_libdir}/libvsscript.so
%{_libdir}/lib%{name}-script.so
%{_libdir}/pkgconfig/%{name}.pc
%{_libdir}/pkgconfig/%{name}-script.pc
%files tools
%{_bindir}/%{name}
%{_bindir}/vspipe
%{vsdir}/vspipe
%files -n python3-%{name} -f %{pyproject_files}
%changelog
%autochangelog
* Sat Jul 22 2023 Fedora Release Engineering <releng@fedoraproject.org> - 63-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
* Sat Jul 01 2023 Python Maint <python-maint@redhat.com> - 63-2
- Rebuilt for Python 3.12
* Fri Jun 30 2023 Simone Caronni <negativo17@gmail.com> - 63-1
- Update to R63.
* Tue Jun 13 2023 Python Maint <python-maint@redhat.com> - 58-5
- Rebuilt for Python 3.12
* Sat Jan 21 2023 Fedora Release Engineering <releng@fedoraproject.org> - 58-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
* Sat Jul 23 2022 Fedora Release Engineering <releng@fedoraproject.org> - 58-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
* Mon Jun 13 2022 Python Maint <python-maint@redhat.com> - 58-2
- Rebuilt for Python 3.11
* Wed May 25 2022 Simone Caronni <negativo17@gmail.com> - 58-1
- Update to R58.
* Thu Mar 10 2022 Sandro Mani <manisandro@gmail.com> - 57-2
- Rebuild for tesseract 5.1.0
* Wed Mar 02 2022 Simone Caronni <negativo17@gmail.com> - 57-1
- Update to R57.
- Plugins are now separate.
* Sat Jan 22 2022 Fedora Release Engineering <releng@fedoraproject.org> - 51-7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
* Sun Dec 19 2021 Sandro Mani <manisandro@gmail.com> - 51-6
- Rebuild (tesseract)
* Tue Dec 14 2021 Sandro Mani <manisandro@gmail.com> - 51-5
- Rebuild (tesseract)
* Fri Jul 23 2021 Fedora Release Engineering <releng@fedoraproject.org> - 51-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
* Fri Jun 04 2021 Python Maint <python-maint@redhat.com> - 51-3
- Rebuilt for Python 3.10
* Tue Mar 30 2021 Jonathan Wakely <jwakely@redhat.com> - 51-2
- Rebuilt for removed libstdc++ symbol (#1937698)
* Tue Mar 23 2021 Simone Caronni <negativo17@gmail.com> - 51-1
- Update to R51.
- Allow building for other archs beside x86.
* Wed Jan 27 2021 Fedora Release Engineering <releng@fedoraproject.org> - 48-11
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
* Sat Oct 17 2020 Jeff Law <law@redhat.com> - 48-10
- Fix missing #include for gcc-11
* Wed Jul 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 48-9
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
* Tue May 26 2020 Miro Hrončok <mhroncok@redhat.com> - 48-8
- Rebuilt for Python 3.9
* Sat Mar 07 2020 Simone Caronni <negativo17@gmail.com> - 48-7
- Fix broken dependency.
* Sat Feb 29 2020 Simone Caronni <negativo17@gmail.com> - 48-6
- Make it exclusive for i686/x86_64.
- Fix build on RHEL/CentOS 8.
* Tue Feb 25 2020 Artem Polishchuk <ego.cordatus@gmail.com> - 48-5
- Add tests
- Cosmetic spec file improvements
* Thu Feb 20 2020 Simone Caronni <negativo17@gmail.com> - 48-4
- More review fixes.
- Use upstream patch for Python 3.8.
* Fri Feb 07 2020 Simone Caronni <negativo17@gmail.com> - 48-3
- Review fixes.
* Sun Jan 26 2020 Simone Caronni <negativo17@gmail.com> - 48-2
- Move script library into main library package.
- Fix build with Python 3.8.
* Thu Jan 16 2020 Simone Caronni <negativo17@gmail.com> - 48-1
- First build.