1a762ba
%global pypi_name PyMuPDF
1a762ba
%global desc This is PyMuPDF, a Python binding for MuPDF - a lightweight PDF and XPS\
1a762ba
viewer.  MuPDF can access files in PDF, XPS, OpenXPS, epub, comic and fiction\
1a762ba
book formats, and it is known for its top performance and high rendering\
1a762ba
quality.  With PyMuPDF you therefore can also access files with extensions\
1a762ba
*.pdf, *.xps, *.oxps, *.epub, *.cbz or *.fb2 from your Python scripts.
1a762ba
1a762ba
Name:           python-%{pypi_name}
67712b4
Version:        1.14.17
fa2d5aa
Release:        2%{?dist}
1a762ba
Summary:        Python binding for MuPDF - a lightweight PDF and XPS viewer
1a762ba
1a762ba
# PyMuPDF itself is GPLv3+.  MuPDF (statically linked) is AGPLv3+.
1a762ba
License:        GPLv3+ and AGPLv3+
1a762ba
URL:            https://github.com/rk700/PyMuPDF
1a762ba
Source0:        %{url}/archive/%{version}/%{pypi_name}-%{version}.tar.gz
1d381c5
Source1:        https://mupdf.com/downloads/archive/mupdf-1.14.0-source.tar.gz
1a762ba
# Can be removed if mupdf provides a shared library
1a762ba
Patch0:         fix-library-linking.patch
1d381c5
Patch1:         build-mupdf.patch
1d381c5
Patch2:         0001-fix-build-on-big-endian.patch
1a762ba
fc7287e
BuildRequires:  python3-devel
1a762ba
BuildRequires:  gcc
67712b4
BuildRequires:  swig
fc7287e
BuildRequires:  zlib-devel
1d381c5
#BuildRequires:  mupdf-static
1a762ba
# Can be removed if mupdf provides a shared library
fc7287e
BuildRequires:  libjpeg-devel
fc7287e
BuildRequires:  openjpeg2-devel
fc7287e
BuildRequires:  jbig2dec-devel
fc7287e
BuildRequires:  freetype-devel
fc7287e
BuildRequires:  harfbuzz-devel
1a762ba
1a762ba
%description
1a762ba
%{desc}
1a762ba
1a762ba
%package -n     python3-%{pypi_name}
1a762ba
Summary:        %{summary}
1a762ba
%{?python_provide:%python_provide python3-%{pypi_name}}
1a762ba
1a762ba
%description -n python3-%{pypi_name}
1a762ba
%{desc}
1a762ba
1a762ba
%package        doc
1a762ba
Summary:        Documentation for python-%{pypi_name}
1a762ba
BuildArch:      noarch
1a762ba
1a762ba
%description    doc
1a762ba
python-%{pypi_name}-doc contains documentation and examples for PyMuPDF
1a762ba
1a762ba
%prep
1d381c5
%autosetup -N -n %{pypi_name}-%{version}
1d381c5
# TEMP build mupdf
1d381c5
%setup -T -D -q -a 1 -n %{pypi_name}-%{version}
1d381c5
%autopatch -p1
1d381c5
cd mupdf-1.14.0-source
1d381c5
for d in $(ls thirdparty | grep -v -e freeglut -e lcms2 -e mujs)
1d381c5
do
1d381c5
  rm -rf thirdparty/$d
1d381c5
done
1d381c5
#%patch0 -p1 -d thirdparty/lcms2
1d381c5
echo > user.make "\
1d381c5
  USE_SYSTEM_FREETYPE := yes
1d381c5
  USE_SYSTEM_HARFBUZZ := yes
1d381c5
  USE_SYSTEM_JBIG2DEC := yes
1d381c5
  USE_SYSTEM_JPEGXR := yes # not used without HAVE_JPEGXR
1d381c5
  USE_SYSTEM_LCMS2 := no # need lcms2-art fork
1d381c5
  USE_SYSTEM_LIBJPEG := yes
1d381c5
  USE_SYSTEM_MUJS := no # build needs source anyways
1d381c5
  USE_SYSTEM_OPENJPEG := yes
1d381c5
  USE_SYSTEM_ZLIB := yes
1d381c5
  USE_SYSTEM_GLUT := no # need freeglut2-art frok
1d381c5
  USE_SYSTEM_CURL := yes
1d381c5
"
1d381c5
cd -
1a762ba
1a762ba
%build
1d381c5
cd mupdf-1.14.0-source
1d381c5
export XCFLAGS="%{optflags} -fPIC -DJBIG_NO_MEMENTO -DTOFU -DTOFU_CJK"
1d381c5
make HAVE_X11=no HAVE_GLFW=no HAVE_GLUT=no prefix=$(pwd)/install %{?_smp_mflags}
1d381c5
make HAVE_X11=no HAVE_GLFW=no HAVE_GLUT=no prefix=$(pwd)/install install
1d381c5
unset XCFLAGS
1d381c5
cd -
1a762ba
%py3_build
1a762ba
1a762ba
%install
1a762ba
%py3_install
1a762ba
0ada11f
%check
0ada11f
PYTHONPATH=%{buildroot}%{python3_sitearch} \
0ada11f
  %{__python3} -c 'import sys; sys.path.remove(""); import fitz'
0ada11f
1a762ba
1a762ba
%files -n python3-%{pypi_name}
1a762ba
%license COPYING "GNU AFFERO GPL V3"
1a762ba
%{python3_sitearch}/fitz/
1a762ba
%{python3_sitearch}/PyMuPDF*
1a762ba
1a762ba
%files doc
1a762ba
%doc demo doc/PyMuPDF.pdf examples README.md
1a762ba
1a762ba
%changelog
fa2d5aa
* Fri Jul 26 2019 Fedora Release Engineering <releng@fedoraproject.org> - 1.14.17-2
fa2d5aa
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
fa2d5aa
67712b4
* Tue Jul 09 2019 Scott Talbert <swt@techie.net> - 1.14.17-1
67712b4
- Update to new upstream release 1.14.17 (#1727474)
67712b4
47df36d
* Thu Jun 13 2019 Scott Talbert <swt@techie.net> - 1.14.16-1
47df36d
- Update to new upstream release 1.14.16 (#1713110)
47df36d
1d381c5
* Wed Jun 12 2019 Scott Talbert <swt@techie.net> - 1.14.14-3
1d381c5
- Temporarily build our own copy of mupdf to fix FTBFS (#1716518)
1d381c5
0ada11f
* Tue May 07 2019 Scott Talbert <swt@techie.net> - 1.14.14-2
0ada11f
- Restore linking with harfbuzz (#1706753)
0ada11f
86b71e6
* Thu Apr 18 2019 Scott Talbert <swt@techie.net> - 1.14.14-1
86b71e6
- New upstream release 1.14.14
86b71e6
6dabf2f
* Mon Apr 08 2019 Scott Talbert <swt@techie.net> - 1.14.13-1
6dabf2f
- New upstream release 1.14.13
6dabf2f
d75865e
* Fri Mar 22 2019 Scott Talbert <swt@techie.net> - 1.14.12-1
d75865e
- New upstream release 1.14.12
d75865e
070b243
* Tue Mar 12 2019 Scott Talbert <swt@techie.net> - 1.14.10-1
070b243
- New upstream release 1.14.10
070b243
81c9df3
* Fri Mar 08 2019 Scott Talbert <swt@techie.net> - 1.14.9-1
81c9df3
- New upstream release 1.14.9
81c9df3
712b00d
* Thu Jan 31 2019 Scott Talbert <swt@techie.net> - 1.14.8-1
712b00d
- New upstream release 1.14.8
712b00d
716e2c3
* Fri Jan 25 2019 Scott Talbert <swt@techie.net> - 1.14.7-1
716e2c3
- New upstream release 1.14.7
716e2c3
f4dd606
* Tue Nov 20 2018 Scott Talbert <swt@techie.net> - 1.14.1-1
f4dd606
- New upstream release 1.14.1
f4dd606
fc7287e
* Wed Oct 17 2018 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> - 1.13.20-2
fc7287e
- Subpackage python2-PyMuPDF has been removed
fc7287e
  See https://fedoraproject.org/wiki/Changes/Mass_Python_2_Package_Removal
fc7287e
3b8b32d
* Fri Sep 14 2018 Scott Talbert <swt@techie.net> - 1.13.20-1
3b8b32d
- New upstream release 1.13.20
3b8b32d
53ac4cb
* Sat Aug 04 2018 Scott Talbert <swt@techie.net> - 1.13.16-1
53ac4cb
- New upstream release 1.13.16
53ac4cb
0929a31
* Tue Jul 31 2018 Florian Weimer <fweimer@redhat.com> - 1.13.15-2
0929a31
- Rebuild with fixed binutils
0929a31
455a5d5
* Sat Jul 28 2018 Scott Talbert <swt@techie.net> - 1.13.15-1
455a5d5
- New upstream release 1.13.15
455a5d5
d1d449b
* Fri Jul 20 2018 Scott Talbert <swt@techie.net> - 1.13.14-1
d1d449b
- New upstream release 1.13.14
d1d449b
0e8cd7e
* Fri Jul 13 2018 Fedora Release Engineering <releng@fedoraproject.org> - 1.13.13-2
0e8cd7e
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
0e8cd7e
c242645
* Wed Jul 11 2018 Scott Talbert <swt@techie.net> - 1.13.13-1
c242645
- New upstream release 1.13.13
c242645
f048a95
* Wed Jun 27 2018 Scott Talbert <swt@techie.net> - 1.13.12-1
f048a95
- New upstream release 1.13.12
f048a95
b16cdca
* Tue Jun 26 2018 Scott Talbert <swt@techie.net> - 1.13.11-1
b16cdca
- New upstream release 1.13.11
b16cdca
8a7bfd8
* Tue Jun 19 2018 Miro Hrončok <mhroncok@redhat.com> - 1.13.10-2
8a7bfd8
- Rebuilt for Python 3.7
8a7bfd8
d38a9ae
* Fri Jun 15 2018 Scott Talbert <swt@techie.net> - 1.13.10-1
d38a9ae
- New upstream release 1.13.10
d38a9ae
1a762ba
* Sun Jun 10 2018 Scott Talbert <swt@techie.net> - 1.13.9-1
1a762ba
- Initial package.