summaryrefslogtreecommitdiff
path: root/python-jxlpy.spec
diff options
context:
space:
mode:
authorCoprDistGit <infra@openeuler.org>2023-05-10 09:43:59 +0000
committerCoprDistGit <infra@openeuler.org>2023-05-10 09:43:59 +0000
commite8239f1cd380767aa24f6f5fd23773ba6f263491 (patch)
treec1b6b1db9fd3289c812f2904533410987adf4b91 /python-jxlpy.spec
parente7c1bdaf3eb12ed4a2d97d75e7c93135fa4e0f0a (diff)
automatic import of python-jxlpy
Diffstat (limited to 'python-jxlpy.spec')
-rw-r--r--python-jxlpy.spec327
1 files changed, 327 insertions, 0 deletions
diff --git a/python-jxlpy.spec b/python-jxlpy.spec
new file mode 100644
index 0000000..9c14b01
--- /dev/null
+++ b/python-jxlpy.spec
@@ -0,0 +1,327 @@
+%global _empty_manifest_terminate_build 0
+Name: python-jxlpy
+Version: 0.9.2
+Release: 1
+Summary: JPEG XL integration in Python
+License: MIT License
+URL: http://github.com/olokelo/jxlpy
+Source0: https://mirrors.nju.edu.cn/pypi/web/packages/c2/68/d0bba2b7987ab78c4f64021735abc4e45f0444287451d12a4820ca28a426/jxlpy-0.9.2.tar.gz
+BuildArch: noarch
+
+
+%description
+# JXLPy
+
+This module introduces reading and writing support for JPEG XL directly from Python 3.
+
+JXLPy is based on JPEG XL implementation in [imagecodecs](https://github.com/cgohlke/imagecodecs) but doesn't it require Numpy and any external dependencies besides Cython and [libjxl](https://github.com/libjxl/libjxl).
+
+It also provides support for Pillow via plugin.
+
+**This project is still in alpha stages and needs testing. It may contain bugs!**
+
+## Install via PIP
+
+```shell
+$ pip install jxlpy
+```
+
+## Build it yourself
+
+* Make sure you are using Python 3.x and pip for that version
+
+* Build and install libjxl according to instructions [here](https://github.com/libjxl/libjxl#building)
+
+* Install patchelf and auditwheel
+
+ ```shell
+ $ sudo apt-get install patchelf
+ $ pip install auditwheel
+ ```
+
+* For Pillow plugin, make sure that Pillow is installed *(optional)*
+
+ ```shell
+ $ pip install ---upgrade pillow
+ ```
+
+* Clone this repository
+
+ ```shell
+ $ git clone https://github.com/olokelo/jxlpy
+ $ cd jxlpy
+ ```
+
+* Build wheels
+
+ ```shell
+ $ pip wheel .
+ ```
+
+* Use auditwheel to put necessary libraries into your wheel
+
+ ```shell
+ $ export LD_LIBRARY_PATH=/usr/local/lib
+ $ python -m auditwheel repair --plat linux_x86_64 jxlpy-*.whl
+ ```
+* Install newly created wheel
+
+ ```shell
+ $ cd wheelhouse
+ $ pip install jxlpy-*.whl
+ ```
+
+* Now you should be good to go :)
+
+ You can run examples to check if everything works correctly
+
+*Installation steps were tested on Ubuntu 20.04*
+
+## Support status
+
+| Feature | Status | Importance | Notes |
+| :---------------------------------------------------: | :-----------: | :--------: | :-----------------------------------: |
+| Reading and writing non-animated 8 bit RGB/RGBA image | Done | - | - |
+| Creating lossless images | Done | - | - |
+| Reading animations | Done | - | - |
+| Pillow plugin | Partial | High | Animation seeking? |
+| Creating animations | Failed | Medium | - |
+| Reading HDR images | Needs testing | Medium | - |
+| Writing HDR images | Not started | Low | - |
+| Reading and writing floating point images | Not started | Low | - |
+| Support EXIF metadata | Failed | High | It seems like there's no API for that |
+| Support for other colorspaces | Not started | Low | - |
+| Support for lossless JPEG recompression | Not started | Medium | - |
+| Support for progressive and responsive mode | Failed | Medium | Again... no high level API? |
+| Installing on Windows | Needs testing | Low | - |
+
+
+
+%package -n python3-jxlpy
+Summary: JPEG XL integration in Python
+Provides: python-jxlpy
+BuildRequires: python3-devel
+BuildRequires: python3-setuptools
+BuildRequires: python3-pip
+%description -n python3-jxlpy
+# JXLPy
+
+This module introduces reading and writing support for JPEG XL directly from Python 3.
+
+JXLPy is based on JPEG XL implementation in [imagecodecs](https://github.com/cgohlke/imagecodecs) but doesn't it require Numpy and any external dependencies besides Cython and [libjxl](https://github.com/libjxl/libjxl).
+
+It also provides support for Pillow via plugin.
+
+**This project is still in alpha stages and needs testing. It may contain bugs!**
+
+## Install via PIP
+
+```shell
+$ pip install jxlpy
+```
+
+## Build it yourself
+
+* Make sure you are using Python 3.x and pip for that version
+
+* Build and install libjxl according to instructions [here](https://github.com/libjxl/libjxl#building)
+
+* Install patchelf and auditwheel
+
+ ```shell
+ $ sudo apt-get install patchelf
+ $ pip install auditwheel
+ ```
+
+* For Pillow plugin, make sure that Pillow is installed *(optional)*
+
+ ```shell
+ $ pip install ---upgrade pillow
+ ```
+
+* Clone this repository
+
+ ```shell
+ $ git clone https://github.com/olokelo/jxlpy
+ $ cd jxlpy
+ ```
+
+* Build wheels
+
+ ```shell
+ $ pip wheel .
+ ```
+
+* Use auditwheel to put necessary libraries into your wheel
+
+ ```shell
+ $ export LD_LIBRARY_PATH=/usr/local/lib
+ $ python -m auditwheel repair --plat linux_x86_64 jxlpy-*.whl
+ ```
+* Install newly created wheel
+
+ ```shell
+ $ cd wheelhouse
+ $ pip install jxlpy-*.whl
+ ```
+
+* Now you should be good to go :)
+
+ You can run examples to check if everything works correctly
+
+*Installation steps were tested on Ubuntu 20.04*
+
+## Support status
+
+| Feature | Status | Importance | Notes |
+| :---------------------------------------------------: | :-----------: | :--------: | :-----------------------------------: |
+| Reading and writing non-animated 8 bit RGB/RGBA image | Done | - | - |
+| Creating lossless images | Done | - | - |
+| Reading animations | Done | - | - |
+| Pillow plugin | Partial | High | Animation seeking? |
+| Creating animations | Failed | Medium | - |
+| Reading HDR images | Needs testing | Medium | - |
+| Writing HDR images | Not started | Low | - |
+| Reading and writing floating point images | Not started | Low | - |
+| Support EXIF metadata | Failed | High | It seems like there's no API for that |
+| Support for other colorspaces | Not started | Low | - |
+| Support for lossless JPEG recompression | Not started | Medium | - |
+| Support for progressive and responsive mode | Failed | Medium | Again... no high level API? |
+| Installing on Windows | Needs testing | Low | - |
+
+
+
+%package help
+Summary: Development documents and examples for jxlpy
+Provides: python3-jxlpy-doc
+%description help
+# JXLPy
+
+This module introduces reading and writing support for JPEG XL directly from Python 3.
+
+JXLPy is based on JPEG XL implementation in [imagecodecs](https://github.com/cgohlke/imagecodecs) but doesn't it require Numpy and any external dependencies besides Cython and [libjxl](https://github.com/libjxl/libjxl).
+
+It also provides support for Pillow via plugin.
+
+**This project is still in alpha stages and needs testing. It may contain bugs!**
+
+## Install via PIP
+
+```shell
+$ pip install jxlpy
+```
+
+## Build it yourself
+
+* Make sure you are using Python 3.x and pip for that version
+
+* Build and install libjxl according to instructions [here](https://github.com/libjxl/libjxl#building)
+
+* Install patchelf and auditwheel
+
+ ```shell
+ $ sudo apt-get install patchelf
+ $ pip install auditwheel
+ ```
+
+* For Pillow plugin, make sure that Pillow is installed *(optional)*
+
+ ```shell
+ $ pip install ---upgrade pillow
+ ```
+
+* Clone this repository
+
+ ```shell
+ $ git clone https://github.com/olokelo/jxlpy
+ $ cd jxlpy
+ ```
+
+* Build wheels
+
+ ```shell
+ $ pip wheel .
+ ```
+
+* Use auditwheel to put necessary libraries into your wheel
+
+ ```shell
+ $ export LD_LIBRARY_PATH=/usr/local/lib
+ $ python -m auditwheel repair --plat linux_x86_64 jxlpy-*.whl
+ ```
+* Install newly created wheel
+
+ ```shell
+ $ cd wheelhouse
+ $ pip install jxlpy-*.whl
+ ```
+
+* Now you should be good to go :)
+
+ You can run examples to check if everything works correctly
+
+*Installation steps were tested on Ubuntu 20.04*
+
+## Support status
+
+| Feature | Status | Importance | Notes |
+| :---------------------------------------------------: | :-----------: | :--------: | :-----------------------------------: |
+| Reading and writing non-animated 8 bit RGB/RGBA image | Done | - | - |
+| Creating lossless images | Done | - | - |
+| Reading animations | Done | - | - |
+| Pillow plugin | Partial | High | Animation seeking? |
+| Creating animations | Failed | Medium | - |
+| Reading HDR images | Needs testing | Medium | - |
+| Writing HDR images | Not started | Low | - |
+| Reading and writing floating point images | Not started | Low | - |
+| Support EXIF metadata | Failed | High | It seems like there's no API for that |
+| Support for other colorspaces | Not started | Low | - |
+| Support for lossless JPEG recompression | Not started | Medium | - |
+| Support for progressive and responsive mode | Failed | Medium | Again... no high level API? |
+| Installing on Windows | Needs testing | Low | - |
+
+
+
+%prep
+%autosetup -n jxlpy-0.9.2
+
+%build
+%py3_build
+
+%install
+%py3_install
+install -d -m755 %{buildroot}/%{_pkgdocdir}
+if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi
+if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi
+if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi
+if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi
+pushd %{buildroot}
+if [ -d usr/lib ]; then
+ find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+if [ -d usr/lib64 ]; then
+ find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+if [ -d usr/bin ]; then
+ find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+if [ -d usr/sbin ]; then
+ find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+touch doclist.lst
+if [ -d usr/share/man ]; then
+ find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst
+fi
+popd
+mv %{buildroot}/filelist.lst .
+mv %{buildroot}/doclist.lst .
+
+%files -n python3-jxlpy -f filelist.lst
+%dir %{python3_sitelib}/*
+
+%files help -f doclist.lst
+%{_docdir}/*
+
+%changelog
+* Wed May 10 2023 Python_Bot <Python_Bot@openeuler.org> - 0.9.2-1
+- Package Spec generated