Blame ocaml-pyml.spec

b56a235
# OCaml packages not built on i686 since OCaml 5 / Fedora 39.
b56a235
ExcludeArch: %{ix86}
b56a235
efb6148
Name:           ocaml-pyml
fff10de
Version:        20231101
fc459e1
Release:        8%{?dist}
9d8ecef
Summary:        OCaml bindings for Python
9d8ecef
7a41c30
# The project is BSD-2-Clause except for pycaml.mli, which is LGPLv2+
d986145
License:        BSD-2-Clause AND LGPL-2.1-or-later
9d8ecef
URL:            https://github.com/thierry-martinez/pyml
efb6148
Source0:        %{url}/archive/%{version}/pyml-%{version}.tar.gz
fff10de
# Fix various incompatibilities with python 3.13.  See:
b4a81c7
# https://github.com/thierry-martinez/pyml/issues/84
fff10de
Patch0:         %{name}-python3.13.patch
fff10de
# Guard against passing NULL to memcpy
fff10de
Patch1:         %{name}-memcpy.patch
9d8ecef
9d8ecef
BuildRequires:  ocaml >= 3.12.1
efb6148
BuildRequires:  ocaml-dune >= 2.8
9d8ecef
BuildRequires:  ocaml-findlib
efb6148
BuildRequires:  ocaml-stdcompat-devel >= 18
9d8ecef
BuildRequires:  python3-devel
9d8ecef
BuildRequires:  %{py3_dist ipython}
9d8ecef
BuildRequires:  %{py3_dist numpy}
efb6148
fff10de
# This can be removed when F39 reaches EOL
efb6148
Obsoletes:      pymltop < 20220322
efb6148
Obsoletes:      pymlutop < 20220322
9d8ecef
8d1f1d5
# This can be removed when F40 reaches EOL
8d1f1d5
Obsoletes:      ocaml-pyml-doc < 20220615-3
8d1f1d5
9d8ecef
%description
9d8ecef
py.ml provides OCaml bindings for Python 2 and Python 3.  This library
9d8ecef
subsumes the pycaml library, which is no longer actively maintained.
9d8ecef
9d8ecef
The Python library is linked at runtime and the same executable can be
9d8ecef
run in a Python 2 or a Python 3 environment.  py.ml does not require any
9d8ecef
Python library at compile time.  The only compile time dependency is
9d8ecef
Stdcompat to ensure compatibility with all OCaml compiler versions from
9d8ecef
3.12.
9d8ecef
9d8ecef
Bindings are split in three modules:
9d8ecef
9d8ecef
- Py provides the initialization functions and some high-level bindings,
9d8ecef
  with error handling and naming conventions closer to OCaml usages.
9d8ecef
9d8ecef
- Pycaml provides a signature close to the old Pycaml module, so as to
9d8ecef
  ease migration.
9d8ecef
9d8ecef
- Pywrappers provides low-level bindings, which follow closely the
9d8ecef
  conventions of the C bindings for Python.  Submodules
9d8ecef
  Pywrappers.Python2 and Pywrappers.Python3 contain version-specific
9d8ecef
  bindings.
9d8ecef
9d8ecef
%package        devel
9d8ecef
Summary:        Development files for %{name}
9d8ecef
Requires:       %{name}%{?_isa} = %{version}-%{release}
9d8ecef
Requires:       ocaml-stdcompat-devel%{?_isa}
9d8ecef
9d8ecef
%description    devel
9d8ecef
The %{name}-devel package contains libraries and signature
9d8ecef
files for developing applications that use %{name}.
9d8ecef
9d8ecef
%prep
efb6148
%autosetup -n pyml-%{version} -p1
9d8ecef
9d8ecef
%build
8d1f1d5
%dune_build
9d8ecef
9d8ecef
%install
8d1f1d5
%dune_install
9d8ecef
9d8ecef
%check
8d1f1d5
%dune_check
9d8ecef
8d1f1d5
%files -f .ofiles
9d8ecef
%doc CHANGES.md README.md
9d8ecef
%license LICENSE
9d8ecef
8d1f1d5
%files devel -f .ofiles-devel
9d8ecef
9d8ecef
%changelog
fc459e1
* Wed Jun 19 2024 Richard W.M. Jones <rjones@redhat.com> - 20231101-8
fc459e1
- OCaml 5.2.0 ppc64le fix
fc459e1
9fd5814
* Wed May 29 2024 Richard W.M. Jones <rjones@redhat.com> - 20231101-7
9fd5814
- OCaml 5.2.0 for Fedora 41
9fd5814
d986145
* Tue Feb 20 2024 Jerry James <loganjerry@gmail.com> - 20231101-6
d986145
- Fix the SPDX expression
d986145
de86206
* Thu Jan 25 2024 Fedora Release Engineering <releng@fedoraproject.org> - 20231101-5
de86206
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
de86206
5722033
* Sun Jan 21 2024 Fedora Release Engineering <releng@fedoraproject.org> - 20231101-4
5722033
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
5722033
345ccd1
* Mon Dec 18 2023 Richard W.M. Jones <rjones@redhat.com> - 20231101-3
345ccd1
- OCaml 5.1.1 + s390x code gen fix for Fedora 40
345ccd1
bff7c2e
* Tue Dec 12 2023 Richard W.M. Jones <rjones@redhat.com> - 20231101-2
bff7c2e
- OCaml 5.1.1 rebuild for Fedora 40
bff7c2e
fff10de
* Mon Nov  6 2023 Jerry James <loganjerry@gmail.com> - 20231101-1
fff10de
- Version 20231101
fff10de
- Drop the library-unload patch
fff10de
- Drop support for the custom toplevels
fff10de
- Add memcpy patch
fff10de
41f6e58
* Thu Oct 05 2023 Richard W.M. Jones <rjones@redhat.com> - 20220905-5
41f6e58
- OCaml 5.1 rebuild for Fedora 40
41f6e58
655294f
* Thu Jul 20 2023 Fedora Release Engineering <releng@fedoraproject.org> - 20220905-4
655294f
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
655294f
7aa0b54
* Wed Jul 12 2023 Richard W.M. Jones <rjones@redhat.com> - 20220905-3
7aa0b54
- OCaml 5.0 rebuild for Fedora 39
7aa0b54
394d13d
* Mon Jul 10 2023 Jerry James <loganjerry@gmail.com> - 20220905-2
394d13d
- OCaml 5.0.0 rebuild
394d13d
7a41c30
* Wed Feb 15 2023 Jerry James <loganjerry@gmail.com> - 20220905-1
7a41c30
- Version 20220905
7a41c30
- Add library-unload patch to fix test suite crashes
7a41c30
- Convert License tag to SPDX
7a41c30
d01e9ae
* Tue Jan 24 2023 Richard W.M. Jones <rjones@redhat.com> - 20220615-5
d01e9ae
- Rebuild OCaml packages for F38
d01e9ae
a6465ef
* Thu Jan 19 2023 Fedora Release Engineering <releng@fedoraproject.org> - 20220615-4
a6465ef
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
a6465ef
b4a81c7
* Mon Aug  1 2022 Jerry James <loganjerry@gmail.com> - 20220615-3
b4a81c7
- Add patch for compatibility with python 3.11
b4a81c7
ec3f380
* Fri Jul 22 2022 Fedora Release Engineering <releng@fedoraproject.org> - 20220615-3
ec3f380
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
ec3f380
8d1f1d5
* Wed Jul 20 2022 Jerry James <loganjerry@gmail.com> - 20220615-2
8d1f1d5
- Use new OCaml macros
8d1f1d5
ad27e7c
* Sun Jun 19 2022 Richard W.M. Jones <rjones@redhat.com> - 20220615-2
ad27e7c
- OCaml 4.14.0 rebuild
ad27e7c
d2ee3a9
* Thu Jun 16 2022 Jerry James <loganjerry@gmail.com> - 20220615-1
d2ee3a9
- Version 20220615
d2ee3a9
efb6148
* Wed Apr 27 2022 Jerry James <loganjerry@gmail.com> - 20220325-1
efb6148
- Version 20220325
efb6148
- Drop upstreamed -wide-character patch
efb6148
- Conditionally build the custom toplevels
efb6148
93d2d8c
* Mon Feb 28 2022 Jerry James <loganjerry@gmail.com> - 20211015-5
93d2d8c
- Rebuild for ocaml-stdcompat 18
93d2d8c
5cc9327
* Fri Feb 04 2022 Richard W.M. Jones <rjones@redhat.com> - 20211015-4
5cc9327
- OCaml 4.13.1 rebuild to remove package notes
5cc9327
4ac26f3
* Thu Jan 20 2022 Fedora Release Engineering <releng@fedoraproject.org> - 20211015-3
4ac26f3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
4ac26f3
9d8ecef
* Fri Jan  7 2022 Jerry James <loganjerry@gmail.com> - 20211015-2
9d8ecef
- Modify license to include LGPLv2+
9d8ecef
- Change doc subpackage to noarch
9d8ecef
- Build the binaries without rebuilding the entire library
9d8ecef
9d8ecef
* Fri Dec 31 2021 Jerry James <loganjerry@gmail.com> - 20211015-1
9d8ecef
- Initial RPM