11Vendor: Microsoft Corporation
22Distribution: Azure Linux
3- %ifnarch %{ocaml_native_compiler }
4- %global debug_package %{nil }
5- %endif
3+ # OCaml packages not built on i686 since OCaml 5 / Fedora 39.
4+ ExcludeArch: %{ix86}
65
7- %global srcname tyxml
6+ %global giturl https://github.com/ocsigen/ tyxml
87
9- # This package is needed to build ocaml-odoc, but ocaml-odoc is needed to build
10- # documentation for this package. Skip building documentation for now until we
11- # develop a strategy for handling dependency loops.
12-
13- Name: ocaml-%{srcname }
14- Version: 4.5.0
15- Release: 2%{?dist }
8+ Name: ocaml-tyxml
9+ Version: 4.6.0
10+ Release: 13%{?dist }
1611Summary: Build valid HTML and SVG documents
1712
18- License: LGPLv2 with exceptions
13+ License: LGPL-2.1 -only WITH OCaml-LGPL-linking-exception
1914URL: https://ocsigen.org/tyxml/
20- Source0: https://github.com/ocsigen/tyxml/releases/download/%{version }/%{srcname }-%{version }.tbz
15+ VCS: git:%{giturl }.git
16+ Source: %{giturl }/releases/download/%{version }/tyxml-%{version }.tbz
17+ # Fedora's OCaml is new enough that we do not need the seq shim
18+ Patch: %{name }-seq.patch
2119
2220BuildRequires: ocaml >= 4.04
2321BuildRequires: ocaml-alcotest-devel
24- BuildRequires: ocaml-astring-devel
25- BuildRequires: ocaml-dune >= 2.0
22+ BuildRequires: ocaml-dune >= 2.7
2623BuildRequires: ocaml-markup-devel >= 0.7.2
27- BuildRequires: ocaml-ppxlib-devel
24+ BuildRequires: ocaml-ppxlib-devel >= 0.18
2825BuildRequires: ocaml-re-devel >= 1.5.0
29- BuildRequires: ocaml-seq-devel
3026BuildRequires: ocaml-uutf-devel >= 1.0.0
3127
32- # See comment above about dependency loops. If the issue is not resolved by
33- # Fedora 36, this can be removed.
34- Obsoletes: %{name }-doc < 4.4.0-1
35- Provides: %{name }-doc = %{version }-%{release }
36-
3728%description
3829TyXML provides a set of convenient combinators that uses the OCaml type
3930system to ensure the validity of the generated documents. TyXML can be
@@ -47,7 +38,6 @@ combinators.
4738Summary: Development files for %{name }
4839Requires: %{name }%{?_isa } = %{version }-%{release }
4940Requires: ocaml-re-devel%{?_isa }
50- Requires: ocaml-seq-devel%{?_isa }
5141Requires: ocaml-uutf-devel%{?_isa }
5242
5343%description devel
@@ -65,6 +55,8 @@ syntaxes for TyXML.
6555Summary: Development files for %{name }-syntax
6656Requires: %{name }-syntax%{?_isa } = %{version }-%{release }
6757Requires: ocaml-ppxlib-devel%{?_isa }
58+ Requires: ocaml-re-devel%{?_isa }
59+ Requires: ocaml-uutf-devel%{?_isa }
6860
6961%description syntax-devel
7062The %{name }-syntax-devel package contains libraries and signature files
@@ -114,136 +106,49 @@ Requires: %{name}-syntax-devel%{?_isa} = %{version}-%{release}
114106Requires: %{name }-ppx%{?_isa } = %{version }-%{release }
115107Requires: ocaml-markup-devel%{?_isa }
116108Requires: ocaml-ppxlib-devel%{?_isa }
109+ Requires: ocaml-re-devel%{?_isa }
117110
118111%description ppx-devel
119112The %{name }-ppx-devel package contains libraries and signature files for
120113developing applications that use %{name }-ppx.
121114
122115%prep
123- %autosetup -n %{ srcname } -%{version } -p1
116+ %autosetup -n tyxml -%{version } -p1
124117
125118%build
126- dune build %{? _smp_mflags } @install
119+ % dune_build
127120
128121%install
129- dune install --destdir=%{buildroot }
130-
131- # We do not want the ml files
132- find %{buildroot }%{_libdir }/ocaml -name \*.ml -delete
133-
134- # We install the documentation with the doc macro
135- rm -fr %{buildroot }%{_prefix }/doc
122+ %dune_install -s
136123
137124%check
138125# As of version 4.4.0, the tyxml-jsx tests fail due to lack of the reason
139126# package in Fedora.
140- dune runtest -p tyxml,tyxml-syntax,tyxml-ppx
127+ % dune_check -p tyxml,tyxml-syntax,tyxml-ppx
141128
142- %files
129+ %files -f .ofiles-tyxml
143130%doc CHANGES.md README.md
144131%license LICENSE
145- %dir %{_libdir }/ocaml/%{srcname }/
146- %dir %{_libdir }/ocaml/%{srcname }/functor/
147- %{_libdir }/ocaml/%{srcname }/META
148- %{_libdir }/ocaml/%{srcname }/%{srcname }* .cma
149- %{_libdir }/ocaml/%{srcname }/%{srcname }* .cmi
150- %{_libdir }/ocaml/%{srcname }/functor/* .cma
151- %{_libdir }/ocaml/%{srcname }/functor/* .cmi
152- %ifarch %{ocaml_native_compiler }
153- %{_libdir }/ocaml/%{srcname }/%{srcname }* .cmxs
154- %{_libdir }/ocaml/%{srcname }/functor/* .cmxs
155- %endif
156-
157- %files devel
158- %{_libdir }/ocaml/%{srcname }/dune-package
159- %{_libdir }/ocaml/%{srcname }/opam
160- %ifarch %{ocaml_native_compiler }
161- %{_libdir }/ocaml/%{srcname }/%{srcname }* .a
162- %{_libdir }/ocaml/%{srcname }/%{srcname }* .cmx
163- %{_libdir }/ocaml/%{srcname }/%{srcname }* .cmxa
164- %{_libdir }/ocaml/%{srcname }/functor/* .a
165- %{_libdir }/ocaml/%{srcname }/functor/* .cmx
166- %{_libdir }/ocaml/%{srcname }/functor/* .cmxa
167- %endif
168- %{_libdir }/ocaml/%{srcname }/%{srcname }* .cmt
169- %{_libdir }/ocaml/%{srcname }/%{srcname }* .cmti
170- %{_libdir }/ocaml/%{srcname }/%{srcname }* .mli
171- %{_libdir }/ocaml/%{srcname }/functor/* .cmt
172- %{_libdir }/ocaml/%{srcname }/functor/* .cmti
173- %{_libdir }/ocaml/%{srcname }/functor/* .mli
174-
175- %files syntax
176- %dir %{_libdir }/ocaml/%{srcname }-syntax/
177- %{_libdir }/ocaml/%{srcname }-syntax/META
178- %{_libdir }/ocaml/%{srcname }-syntax/%{srcname }* .cma
179- %{_libdir }/ocaml/%{srcname }-syntax/%{srcname }* .cmi
180- %ifarch %{ocaml_native_compiler }
181- %{_libdir }/ocaml/%{srcname }-syntax/%{srcname }* .cmxs
182- %endif
183-
184- %files syntax-devel
185- %{_libdir }/ocaml/%{srcname }-syntax/dune-package
186- %{_libdir }/ocaml/%{srcname }-syntax/opam
187- %ifarch %{ocaml_native_compiler }
188- %{_libdir }/ocaml/%{srcname }-syntax/%{srcname }* .a
189- %{_libdir }/ocaml/%{srcname }-syntax/%{srcname }* .cmx
190- %{_libdir }/ocaml/%{srcname }-syntax/%{srcname }* .cmxa
191- %endif
192- %{_libdir }/ocaml/%{srcname }-syntax/%{srcname }* .cmt
193- %{_libdir }/ocaml/%{srcname }-syntax/%{srcname }* .cmti
194- %{_libdir }/ocaml/%{srcname }-syntax/* .mli
195-
196- %files jsx
197- %dir %{_libdir }/ocaml/%{srcname }-jsx/
198- %{_libdir }/ocaml/%{srcname }-jsx/META
199- %{_libdir }/ocaml/%{srcname }-jsx/ppx.exe
200- %{_libdir }/ocaml/%{srcname }-jsx/%{srcname }* .cma
201- %{_libdir }/ocaml/%{srcname }-jsx/%{srcname }* .cmi
202- %ifarch %{ocaml_native_compiler }
203- %{_libdir }/ocaml/%{srcname }-jsx/%{srcname }* .cmxs
204- %endif
205-
206- %files jsx-devel
207- %{_libdir }/ocaml/%{srcname }-jsx/dune-package
208- %{_libdir }/ocaml/%{srcname }-jsx/opam
209- %ifarch %{ocaml_native_compiler }
210- %{_libdir }/ocaml/%{srcname }-jsx/%{srcname }* .a
211- %{_libdir }/ocaml/%{srcname }-jsx/%{srcname }* .cmx
212- %{_libdir }/ocaml/%{srcname }-jsx/%{srcname }* .cmxa
213- %endif
214- %{_libdir }/ocaml/%{srcname }-jsx/%{srcname }* .cmt
215-
216- %files ppx
217- %dir %{_libdir }/ocaml/%{srcname }-ppx/
218- %dir %{_libdir }/ocaml/%{srcname }-ppx/internal/
219- %{_libdir }/ocaml/%{srcname }-ppx/META
220- %{_libdir }/ocaml/%{srcname }-ppx/ppx.exe
221- %{_libdir }/ocaml/%{srcname }-ppx/%{srcname }* .cma
222- %{_libdir }/ocaml/%{srcname }-ppx/%{srcname }* .cmi
223- %{_libdir }/ocaml/%{srcname }-ppx/internal/* .cma
224- %{_libdir }/ocaml/%{srcname }-ppx/internal/* .cmi
225- %ifarch %{ocaml_native_compiler }
226- %{_libdir }/ocaml/%{srcname }-ppx/%{srcname }* .cmxs
227- %{_libdir }/ocaml/%{srcname }-ppx/internal/* .cmxs
228- %endif
229-
230- %files ppx-devel
231- %{_libdir }/ocaml/%{srcname }-ppx/dune-package
232- %{_libdir }/ocaml/%{srcname }-ppx/opam
233- %ifarch %{ocaml_native_compiler }
234- %{_libdir }/ocaml/%{srcname }-ppx/%{srcname }* .a
235- %{_libdir }/ocaml/%{srcname }-ppx/%{srcname }* .cmx
236- %{_libdir }/ocaml/%{srcname }-ppx/%{srcname }* .cmxa
237- %{_libdir }/ocaml/%{srcname }-ppx/internal/* .a
238- %{_libdir }/ocaml/%{srcname }-ppx/internal/* .cmx
239- %{_libdir }/ocaml/%{srcname }-ppx/internal/* .cmxa
240- %endif
241- %{_libdir }/ocaml/%{srcname }-ppx/%{srcname }* .cmt
242- %{_libdir }/ocaml/%{srcname }-ppx/internal/* .cmt
243- %{_libdir }/ocaml/%{srcname }-ppx/internal/* .cmti
244- %{_libdir }/ocaml/%{srcname }-ppx/internal/* .mli
132+
133+ %files devel -f .ofiles-tyxml-devel
134+
135+ %files syntax -f .ofiles-tyxml-syntax
136+
137+ %files syntax-devel -f .ofiles-tyxml-syntax-devel
138+
139+ %files jsx -f .ofiles-tyxml-jsx
140+
141+ %files jsx-devel -f .ofiles-tyxml-jsx-devel
142+
143+ %files ppx -f .ofiles-tyxml-ppx
144+
145+ %files ppx-devel -f .ofiles-tyxml-ppx-devel
245146
246147%changelog
148+ * Mon Dec 23 2024 Durga Jagadeesh Palli <v-dpalli@microsoft.com> - 4.6.0-13
149+ - Initial Azure Linux import from Fedora 41 (license: MIT)
150+ - License verified
151+
247152* Fri Oct 15 2021 Pawel Winogrodzki <pawelwi@microsoft.com> - 4.5.0-2
248153- Initial CBL-Mariner import from Fedora 34 (license: MIT).
249154
0 commit comments