# OCaml packages not built on i686 since OCaml 5 / Fedora 39. ExcludeArch: %{ix86} %global giturl https://github.com/ocsigen/tyxml Name: ocaml-tyxml Version: 4.6.0 Release: 14%{?dist} Summary: Build valid HTML and SVG documents License: LGPL-2.1-only WITH OCaml-LGPL-linking-exception URL: https://ocsigen.org/tyxml/ VCS: git:%{giturl}.git Source: %{giturl}/releases/download/%{version}/tyxml-%{version}.tbz # Fedora's OCaml is new enough that we do not need the seq shim Patch: %{name}-seq.patch BuildRequires: ocaml >= 4.04 BuildRequires: ocaml-alcotest-devel BuildRequires: ocaml-dune >= 2.7 BuildRequires: ocaml-markup-devel >= 0.7.2 BuildRequires: ocaml-ppxlib-devel >= 0.18 BuildRequires: ocaml-re-devel >= 1.5.0 BuildRequires: ocaml-uutf-devel >= 1.0.0 %description TyXML provides a set of convenient combinators that uses the OCaml type system to ensure the validity of the generated documents. TyXML can be used with any representation of HTML and SVG: the textual one, provided directly by this package, or DOM trees (`js_of_ocaml-tyxml`), virtual DOM (`virtual-dom`) and reactive or replicated trees (`eliom`). You can also create your own representation and use it to instantiate a new set of combinators. %package devel Summary: Development files for %{name} Requires: %{name}%{?_isa} = %{version}-%{release} Requires: ocaml-re-devel%{?_isa} Requires: ocaml-uutf-devel%{?_isa} %description devel The %{name}-devel package contains libraries and signature files for developing applications that use %{name}. %package syntax Summary: Common layer for the JSX and PPX syntaxes for TyXML %description syntax This package contains common code used by both the JSX and the PPX syntaxes for TyXML. %package syntax-devel Summary: Development files for %{name}-syntax Requires: %{name}-syntax%{?_isa} = %{version}-%{release} Requires: ocaml-ppxlib-devel%{?_isa} Requires: ocaml-re-devel%{?_isa} Requires: ocaml-uutf-devel%{?_isa} %description syntax-devel The %{name}-syntax-devel package contains libraries and signature files for developing applications that use %{name}-syntax. %package jsx Summary: JSX syntax for writing TyXML documents Requires: %{name}%{?_isa} = %{version}-%{release} Requires: %{name}-syntax%{?_isa} = %{version}-%{release} %description jsx This package enables writing TyXML documents with reasons's JSX syntax, from textual trees to reactive virtual DOM trees. open Tyxml let to_ocaml = "OCaml!" ; %package jsx-devel Summary: Development files for %{name}-jsx Requires: %{name}-devel%{?_isa} = %{version}-%{release} Requires: %{name}-syntax-devel%{?_isa} = %{version}-%{release} Requires: %{name}-jsx%{?_isa} = %{version}-%{release} Requires: ocaml-ppxlib-devel%{?_isa} %description jsx-devel The %{name}-jsx-devel package contains libraries and signature files for developing applications that use %{name}-jsx. %package ppx Summary: PPX for writing TyXML documents with HTML syntax Requires: %{name}%{?_isa} = %{version}-%{release} Requires: %{name}-syntax%{?_isa} = %{version}-%{release} %description ppx This package contains PPX for writing TyXML documents with HTML syntax. open Tyxml let%%html to_ocaml = "OCaml!" The TyXML PPX is compatible with all TyXML instance, from textual trees to reactive virtual DOM trees. %package ppx-devel Summary: Development files for %{name}-ppx Requires: %{name}-devel%{?_isa} = %{version}-%{release} Requires: %{name}-syntax-devel%{?_isa} = %{version}-%{release} Requires: %{name}-ppx%{?_isa} = %{version}-%{release} Requires: ocaml-markup-devel%{?_isa} Requires: ocaml-ppxlib-devel%{?_isa} Requires: ocaml-re-devel%{?_isa} %description ppx-devel The %{name}-ppx-devel package contains libraries and signature files for developing applications that use %{name}-ppx. %prep %autosetup -n tyxml-%{version} -p1 %build %dune_build %install %dune_install -s %check # As of version 4.4.0, the tyxml-jsx tests fail due to lack of the reason # package in Fedora. %dune_check -p tyxml,tyxml-syntax,tyxml-ppx %files -f .ofiles-tyxml %doc CHANGES.md README.md %license LICENSE %files devel -f .ofiles-tyxml-devel %files syntax -f .ofiles-tyxml-syntax %files syntax-devel -f .ofiles-tyxml-syntax-devel %files jsx -f .ofiles-tyxml-jsx %files jsx-devel -f .ofiles-tyxml-jsx-devel %files ppx -f .ofiles-tyxml-ppx %files ppx-devel -f .ofiles-tyxml-ppx-devel %changelog * Sat Dec 14 2024 Jerry James - 4.6.0-14 - OCaml 5.3.0 rebuild * Sun Oct 6 2024 Jerry James - 4.6.0-13 - Rebuild for ocaml-re 1.13.3 * Mon Aug 5 2024 Jerry James - 4.6.0-12 - Rebuild for ocaml-ppxlib 0.33.0 * Thu Jul 18 2024 Fedora Release Engineering - 4.6.0-11 - Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild * Wed Jul 3 2024 Jerry James - 4.6.0-10 - Rebuild for ocaml-sexplib0 0.17.0 * Wed Jun 19 2024 Richard W.M. Jones - 4.6.0-9 - OCaml 5.2.0 ppc64le fix * Wed May 29 2024 Richard W.M. Jones - 4.6.0-8 - OCaml 5.2.0 for Fedora 41 * Fri Feb 2 2024 Jerry James - 4.6.0-7 - Rebuild for changed ocamlx(Location) hash * Thu Jan 25 2024 Fedora Release Engineering - 4.6.0-6 - Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild * Sun Jan 21 2024 Fedora Release Engineering - 4.6.0-5 - Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild * Mon Dec 18 2023 Richard W.M. Jones - 4.6.0-4 - OCaml 5.1.1 + s390x code gen fix for Fedora 40 * Tue Dec 12 2023 Richard W.M. Jones - 4.6.0-3 - OCaml 5.1.1 rebuild for Fedora 40 * Thu Oct 05 2023 Richard W.M. Jones - 4.6.0-2 - OCaml 5.1 rebuild for Fedora 40 * Wed Oct 4 2023 Jerry James - 4.6.0-1 - Version 4.6.0 * Thu Jul 20 2023 Fedora Release Engineering - 4.5.0-19 - Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild * Wed Jul 12 2023 Richard W.M. Jones - 4.5.0-18 - OCaml 5.0 rebuild for Fedora 39 * Mon Jul 10 2023 Jerry James - 4.5.0-17.20230622git407f41b - Build from git HEAD for OCaml 5.0.0 * Tue Jan 24 2023 Richard W.M. Jones - 4.5.0-16 - Rebuild OCaml packages for F38 * Thu Jan 19 2023 Fedora Release Engineering - 4.5.0-15 - Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild * Tue Nov 1 2022 Jerry James - 4.5.0-14 - Rebuild for ocaml-ppxlib 0.28.0 * Thu Aug 18 2022 Jerry James - 4.5.0-13 - Rebuild for ocaml-ppxlib 0.27.0 - Convert License tag to SPDX * Fri Jul 22 2022 Fedora Release Engineering - 4.5.0-12 - Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild * Wed Jul 20 2022 Jerry James - 4.5.0-11 - Use new OCaml macros * Sun Jun 19 2022 Richard W.M. Jones - 4.5.0-11 - OCaml 4.14.0 rebuild * Mon Feb 28 2022 Jerry James - 4.5.0-10 - Rebuild for ocaml-uutf 1.0.3 - Build in release mode * Fri Feb 04 2022 Richard W.M. Jones - 4.5.0-9 - OCaml 4.13.1 rebuild to remove package notes * Thu Jan 20 2022 Fedora Release Engineering - 4.5.0-8 - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild * Mon Dec 27 2021 Jerry James - 4.5.0-7 - Rebuild for ocaml-ppxlib 0.24.0 * Tue Oct 05 2021 Richard W.M. Jones - 4.5.0-6 - OCaml 4.13.1 build * Wed Sep 1 2021 Jerry James - 4.5.0-5 - Rebuild for ocaml-ppxlib 0.23.0 * Thu Jul 29 2021 Jerry James - 4.5.0-4 - Rebuild for ocaml-ppxlib 0.22.2 * Thu Jul 22 2021 Fedora Release Engineering - 4.5.0-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild * Tue Jun 22 2021 Jerry James - 4.5.0-2 - Rebuild for ocaml-markup 1.0.1 * Fri Apr 23 2021 Jerry James - 4.5.0-1 - Version 4.5.0 - Drop all patches * Mon Mar 1 21:39:52 GMT 2021 Richard W.M. Jones - 4.4.0-10 - OCaml 4.12.0 build * Sat Feb 20 2021 Jerry James - 4.4.0-9 - Apply upstream merge request to migrate to ppxlib * Tue Feb 2 2021 Richard W.M. Jones - 4.4.0-8 - Bump and rebuild for updated ocaml-camomile dep (RHBZ#1923853). * Tue Jan 26 2021 Fedora Release Engineering - 4.4.0-7 - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild * Mon Dec 7 2020 Jerry James - 4.4.0-6 - Rebuild for ocaml-migrate-parsetree 1.8.0 * Wed Dec 2 2020 Jerry James - 4.4.0-5 - Rebuild for the re-release of ocaml-markup 1.0.0 * Fri Oct 23 2020 Jerry James - 4.4.0-4 - Rebuild for ocaml-markup 1.0.0 * Tue Sep 01 2020 Richard W.M. Jones - 4.4.0-3 - OCaml 4.11.1 rebuild * Fri Aug 21 2020 Richard W.M. Jones - 4.4.0-2 - OCaml 4.11.0 rebuild * Tue Aug 4 2020 Jerry James - 4.4.0-1 - Version 4.4.0 - Drop documentation subpackage until dependency loop can be handled - Disable tests since no reason package is available * Sat Aug 01 2020 Fedora Release Engineering - 4.3.0-9 - Second attempt - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild * Tue Jul 28 2020 Fedora Release Engineering - 4.3.0-8 - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild * Tue May 05 2020 Richard W.M. Jones - 4.3.0-7 - OCaml 4.11.0+dev2-2020-04-22 rebuild * Tue Apr 21 2020 Richard W.M. Jones - 4.3.0-6 - OCaml 4.11.0 pre-release attempt 2 * Sat Apr 04 2020 Richard W.M. Jones - 4.3.0-5 - Update all OCaml dependencies for RPM 4.16. * Wed Feb 26 2020 Richard W.M. Jones - 4.3.0-4 - OCaml 4.10.0 final. * Wed Jan 29 2020 Fedora Release Engineering - 4.3.0-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild * Thu Jan 16 2020 Jerry James - 4.3.0-2 - Add ocaml-re-dvel and ocaml-uutf-devel Rs to -devel - Add ocaml-ppx-derivers-devel and ocaml-ppx-tools-versioned-devel Rs to -ppx-devel - Build in parallel * Fri Jan 10 2020 Jerry James - 4.3.0-1 - Initial RPM