Compare commits

...
Sign in to create a new pull request.

20 commits

Author SHA1 Message Date
Simone Caronni
e341dc574e Fix build on ppc64le 2026-08-10 11:48:34 +02:00
Simone Caronni
2838510604 Add missing patch 2026-08-10 11:27:54 +02:00
Simone Caronni
d7291116c4 Update to R79, switch to Python build that invokes meson 2026-08-10 11:21:10 +02:00
Python Maint
35508c85c5 Rebuilt for Python 3.15.0b4 ABI change 2026-07-22 10:16:19 +02:00
Fedora Release Engineering
cc9743f437 Rebuilt for https://fedoraproject.org/wiki/Fedora_45_Mass_Rebuild 2026-07-17 08:22:04 +00:00
Python Maint
cc283b39cf Rebuilt for Python 3.15 2026-06-03 22:49:51 +02:00
Simone Caronni
049d7e69f5 Update to R73 2026-02-18 09:45:39 +01:00
Fedora Release Engineering
c1fc16f567 Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild 2026-01-17 19:47:15 +00:00
Simone Caronni
49d9c76a88 Update to version R72, reset library version according to packaging guidelines. 2025-10-26 18:38:28 +01:00
Fedora Release Engineering
0b86d4ae26 Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild 2025-07-25 19:58:00 +00:00
Python Maint
5cffe93226 Rebuilt for Python 3.14 2025-06-02 22:55:37 +02:00
Simone Caronni
3af34ce8ae Tools require pyhton library (#2290426) 2025-04-26 09:06:10 +02:00
Simone Caronni
a037a96f31 Drop installing tox test requirements 2025-04-20 12:03:48 +02:00
Simone Caronni
dfae774360 Update to version R71 2025-04-20 11:53:07 +02:00
Simone Caronni
b4ea3fe31e Convert to %autorelease and %autochangelog
[skip changelog]
2025-04-20 11:49:18 +02:00
Simone Caronni
62b0585e08 Fix tests 2025-04-20 11:49:11 +02:00
Simone Caronni
18c6cabf1f Update changelog 2025-01-29 10:42:54 +01:00
Simone Caronni
cb5277e507 Fix python libraries build 2025-01-29 10:42:26 +01:00
Simone Caronni
40151ad653 Update to 70, clean up SPEC file 2025-01-29 10:02:44 +01:00
Fedora Release Engineering
cf34cf42fa Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild 2025-01-19 14:06:54 +00:00
7 changed files with 111 additions and 180 deletions

8
.gitignore vendored
View file

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

View file

@ -1,6 +1,3 @@
# vapoursynth
The vapoursynth package. The upstream project does not provide any versioning
for the shared library, even with ABI changes. This package sets the library
version to the upstream release version, to avoid having an unversioned shared
object that might get updated by mistake.
The vapoursynth package.

View file

@ -1 +1 @@
SHA512 (vapoursynth-R68.tar.gz) = b40e5f8cf6200af91e21772f24443c43fe03d2406fabdaeba5cb3e34241071f49e12b2b1552408d3523d29edca9a9a3f36a9e8592a189058808b4a9bda6648ab
SHA512 (vapoursynth-R79.tar.gz) = 8e28a9ff72e5f0c891deeffd0ac0d38a654519910b2227414b8750c74a6198a6811d2271bd447b085a86b82665d38a5fe4fceb55b7537a13d72b2c87deba86fd

View file

@ -0,0 +1,14 @@
--- 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,12 +0,0 @@
diff -Naur vapoursynth-R65.old/Makefile.am vapoursynth-R65/Makefile.am
--- vapoursynth-R65.old/Makefile.am 2023-11-02 09:22:50.859928603 +0100
+++ vapoursynth-R65/Makefile.am 2023-11-02 09:23:43.376805703 +0100
@@ -89,7 +89,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)"' -DVS_CURRENT_RELEASE='$(VSCURRENTRELEASE)'
libvapoursynth_la_LIBADD = $(PTHREAD_LIBS) $(ZIMG_LIBS) $(DLOPENLIB)

View file

@ -0,0 +1,10 @@
--- 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,31 +1,30 @@
Name: vapoursynth
Version: 68
Release: 4%{?dist}
Version: 79
Release: %autorelease
Summary: Video processing framework with simplicity in mind
# Automatically converted from old format: LGPLv2 - review is highly recommended.
License: LicenseRef-Callaway-LGPLv2
License: LGPL-2.1-only
URL: http://www.vapoursynth.com
Source0: https://github.com/%{name}/%{name}/archive/R%{version}/%{name}-R%{version}.tar.gz
Patch0: %{name}-version-info.patch
# 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: make
BuildRequires: autoconf
BuildRequires: automake
BuildRequires: gcc-c++
BuildRequires: libtool
BuildRequires: nasm
BuildRequires: pkgconfig(python3)
BuildRequires: pkgconfig(tesseract)
BuildRequires: meson
BuildRequires: ninja-build
BuildRequires: pkgconfig(zimg)
BuildRequires: python3
BuildRequires: python3-Cython
BuildRequires: python3-setuptools
BuildRequires: python3-devel
BuildRequires: python3-pytest
%{?_with_tests:
BuildRequires: %{name}-devel
BuildRequires: python3dist(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.
@ -44,6 +43,7 @@ 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,6 +57,7 @@ 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.
@ -64,163 +65,90 @@ This package contains the vspipe tool for interfacing with VapourSynth.
%prep
%autosetup -p1 -n %{name}-R%{version}
%build
autoreconf -vif
%configure \
--disable-static \
--enable-x86-asm \
--enable-core \
--enable-vsscript \
--enable-vspipe \
--enable-python-module
%generate_buildrequires
%pyproject_buildrequires -R
%make_build
%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
%py3_install
%make_install
find %{buildroot} -type f -name "*.la" -delete
%pyproject_install
%pyproject_save_files -l %{name}
# Create plugin directory
mkdir -p %{buildroot}%{_libdir}/%{name}
# Let RPM pick up docs in the files section
# Let RPM pick up docs in the files section.
rm -fr %{buildroot}%{_docdir}/%{name}
%ldconfig_scriptlets libs
%ldconfig_scriptlets -n python3-%{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}
%{?_with_tests:
%check
%{python3} -m pytest -v
}
%pytest
%files libs
%doc ChangeLog
%license COPYING.LESSER
%dir %{_libdir}/%{name}
%dir %{vsdir}
%dir %{vsdir}/plugins
%{vsdir}/lib%{name}.so.*
%{vsdir}/lib%{name}filters*.so
%{vsdir}/libvsscript.so.*
%{_libdir}/lib%{name}.so.*
%{_libdir}/lib%{name}-script.so.*
%files -n python3-%{name}
%{python3_sitearch}/%{name}.so
%{python3_sitearch}/VapourSynth-*.egg-info
%{_libdir}/libvsscript.so.*
%files devel
%{_includedir}/%{name}/
%{_libdir}/lib%{name}.so
%{_libdir}/lib%{name}-script.so
%{_libdir}/libvsscript.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
* Wed Sep 04 2024 Miroslav Suchý <msuchy@redhat.com> - 68-4
- convert license to SPDX
* Sat Jul 20 2024 Fedora Release Engineering <releng@fedoraproject.org> - 68-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild
* Fri Jun 07 2024 Python Maint <python-maint@redhat.com> - 68-2
- Rebuilt for Python 3.13
* Wed May 22 2024 Simone Caronni <negativo17@gmail.com> - 68-1
- Update to R68.
* Sat Jan 27 2024 Fedora Release Engineering <releng@fedoraproject.org> - 65-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Thu Nov 02 2023 Simone Caronni <negativo17@gmail.com> - 65-1
- Update to version R65.
* 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.
%autochangelog