Compare commits

..

1 Commits
rawhide ... f32

Author SHA1 Message Date
Richard W.M. Jones 6e882c3b09 OCaml 4.10.0 final (Fedora 32). 2020-02-28 02:13:08 +00:00
4 changed files with 95 additions and 155 deletions

View File

@ -1,12 +1,3 @@
# ocaml-odoc # ocaml-odoc
This package contains [odoc](https://github.com/ocaml/odoc), a documentation The ocaml-odoc package
generator for [OCaml](https://ocaml.org/) and
[Reason](https://reasonml.github.io/). It reads doc comments, delimited with
`(** ... *)`, and outputs HTML. Text inside doc comments is marked up in
[ocamldoc syntax](https://ocaml.org/manual/ocamldoc.html).
Odoc's main advantage over ocamldoc is an accurate cross-referencer, which
handles the complexity of the OCaml module system. Odoc also offers a good
opportunity to improve HTML output compared to ocamldoc, but this is very much
a work in progress.

11
ocaml-odoc.rpmlintrc Normal file
View File

@ -0,0 +1,11 @@
# THIS FILE IS FOR WHITELISTING RPMLINT ERRORS AND WARNINGS IN TASKOTRON
# https://fedoraproject.org/wiki/Taskotron/Tasks/dist.rpmlint#Whitelisting_errors
# The dictionary is missing some technical terms
addFilter(r'W: spelling-error .* (ocamldoc|referencer)')
# OCaml does this to us. We have no control over it.
addFilter(r'ocaml-odoc\.[^:]+: E: missing-call-to-chdir-with-chroot')
# Documentation is in the doc subpackage
addFilter(r'ocaml-odoc-devel\.[^:]+: W: no-documentation')

View File

@ -1,43 +1,38 @@
%undefine _package_note_flags
%ifnarch %{ocaml_native_compiler} %ifnarch %{ocaml_native_compiler}
%global debug_package %{nil} %global debug_package %{nil}
%endif %endif
Name: ocaml-odoc %global srcname odoc
Version: 2.2.0
Release: 4%{?dist} Name: ocaml-%{srcname}
Version: 1.5.0
Release: 2%{?dist}.1
Summary: Documentation compiler for OCaml and Reason Summary: Documentation compiler for OCaml and Reason
# ISC: The project as a whole License: MIT
# BSD-3-Clause: src/html_support_files/highlight.pack.js
License: ISC AND BSD-3-Clause
URL: https://github.com/ocaml/odoc URL: https://github.com/ocaml/odoc
Source0: %{url}/archive/%{version}/odoc-%{version}.tar.gz Source0: %{url}/archive/%{version}/%{srcname}-%{version}.tar.gz
BuildRequires: jq
BuildRequires: ocaml >= 4.02.0 BuildRequires: ocaml >= 4.02.0
BuildRequires: ocaml-alcotest-devel >= 0.8.3
BuildRequires: ocaml-astring-devel BuildRequires: ocaml-astring-devel
BuildRequires: ocaml-bisect-ppx-devel > 2.5.0 BuildRequires: ocaml-bisect-ppx-devel >= 1.3.0
BuildRequires: ocaml-bos-devel BuildRequires: ocaml-cmdliner-devel
BuildRequires: ocaml-cmdliner-devel >= 1.0.0 BuildRequires: ocaml-cppo
BuildRequires: ocaml-cppo >= 1.1.0 BuildRequires: ocaml-dune
BuildRequires: ocaml-dune >= 2.9.1
BuildRequires: ocaml-findlib BuildRequires: ocaml-findlib
BuildRequires: ocaml-fmt-devel
BuildRequires: ocaml-fpath-devel BuildRequires: ocaml-fpath-devel
BuildRequires: ocaml-mdx-devel BuildRequires: ocaml-markup-devel >= 0.8.0
BuildRequires: ocaml-odoc-parser-devel >= 0.9.0
BuildRequires: ocaml-ppx-expect-devel
BuildRequires: ocaml-result-devel BuildRequires: ocaml-result-devel
BuildRequires: ocaml-sexplib0-devel BuildRequires: ocaml-sexplib-devel
BuildRequires: ocaml-tyxml-devel >= 4.3.0 BuildRequires: ocaml-tyxml-devel >= 4.3.0
BuildRequires: ocaml-yojson-devel BuildRequires: ocaml-uuidm-devel
BuildRequires: tidy
%description %description
This package contains odoc, a documentation generator for OCaml and This package contains odoc, a documentation generator for OCaml. It
Reason. It reads doc comments, delimited with `(** ... *)`, and outputs reads doc comments, delimited with `(** ... *)`, and outputs HTML. Text
HTML. Text inside doc comments is marked up in ocamldoc syntax. inside doc comments is marked up in ocamldoc syntax.
Odoc's main advantage over ocamldoc is an accurate cross-referencer, Odoc's main advantage over ocamldoc is an accurate cross-referencer,
which handles the complexity of the OCaml module system. Odoc also which handles the complexity of the OCaml module system. Odoc also
@ -45,12 +40,10 @@ offers a good opportunity to improve HTML output compared to ocamldoc,
but this is very much a work in progress. but this is very much a work in progress.
%package devel %package devel
License: ISC
Summary: Development files for %{name} Summary: Development files for %{name}
Requires: %{name}%{?_isa} = %{version}-%{release} Requires: %{name}%{?_isa} = %{version}-%{release}
Requires: ocaml-fmt-devel%{?_isa} Requires: ocaml-astring-devel%{?_isa}
Requires: ocaml-fpath-devel%{?_isa} Requires: ocaml-fpath-devel%{?_isa}
Requires: ocaml-odoc-parser-devel%{?_isa}
Requires: ocaml-result-devel%{?_isa} Requires: ocaml-result-devel%{?_isa}
Requires: ocaml-tyxml-devel%{?_isa} Requires: ocaml-tyxml-devel%{?_isa}
@ -59,7 +52,6 @@ The %{name}-devel package contains libraries and signature files for
developing applications that use %{name}. developing applications that use %{name}.
%package doc %package doc
License: ISC
Summary: Documentation for %{name} Summary: Documentation for %{name}
BuildArch: noarch BuildArch: noarch
@ -67,141 +59,87 @@ BuildArch: noarch
Documentation for %{name}. Documentation for %{name}.
%prep %prep
%autosetup -n odoc-%{version} %autosetup -n %{srcname}-%{version} -p1
# The opam file has not been updated since the great renumbering.
sed -i 's/113\.33\.00/0.13.0/' odoc.opam
# Replace version markers
for fil in src/html/tree.ml $(find test -name index.html -o -name mld.html); do
sed -i.orig 's,%%%%VERSION%%%%,%{version},' $fil
touch -r $fil.orig $fil
rm $fil.orig
done
%build %build
%dune_build @default @doc dune build %{?_smp_mflags}
dune build %{?_smp_mflags} @doc
%install %install
%dune_install dune install --destdir=%{buildroot}
# We do not want the test files
rm -fr %{buildroot}%{_libdir}/ocaml/dune_odoc_test
# We do not want the dune markers
find _build/default/_doc/_html -name .dune-keep -delete
# We install the documentation with the doc macro
rm -fr %{buildroot}%{_prefix}/doc
%ifarch %{ocaml_native_compiler}
# Add missing executable bits
find %{buildroot}%{_libdir}/ocaml -name \*.cmxs -exec chmod 0755 {} \+
%endif
# Install the man page # Install the man page
mkdir -p %{buildroot}%{_mandir}/man1 mkdir -p %{buildroot}%{_mandir}/man1
_build/install/default/bin/odoc --help groff > %{buildroot}%{_mandir}/man1/odoc.1 _build/install/default/bin/odoc --help groff > %{buildroot}%{_mandir}/man1/odoc.1
# It is no longer possible to run the tests because Fedora lacks ocaml-crunch. %check
#check dune runtest
#dune_check
%files -f .ofiles %files
%doc CHANGES.md README.md %doc CHANGES.md README.md
%license LICENSE.md src/html_support_files/LICENSE %license LICENSE.md
%{_bindir}/odoc
%{_datadir}/odoc/
%{_mandir}/man1/odoc.1* %{_mandir}/man1/odoc.1*
%dir %{_libdir}/ocaml/%{srcname}/
%dir %{_libdir}/ocaml/%{srcname}/compat/
%dir %{_libdir}/ocaml/%{srcname}/html/
%dir %{_libdir}/ocaml/%{srcname}/loader/
%dir %{_libdir}/ocaml/%{srcname}/model/
%dir %{_libdir}/ocaml/%{srcname}/odoc/
%dir %{_libdir}/ocaml/%{srcname}/parser/
%dir %{_libdir}/ocaml/%{srcname}/xref/
%{_libdir}/ocaml/%{srcname}/META
%{_libdir}/ocaml/%{srcname}/*/*.cma
%{_libdir}/ocaml/%{srcname}/*/*.cmi
%ifarch %{ocaml_native_compiler}
%{_libdir}/ocaml/%{srcname}/*/*.cmxs
%endif
%files devel -f .ofiles-devel %files devel
%{_libdir}/ocaml/%{srcname}/dune-package
%{_libdir}/ocaml/%{srcname}/opam
%ifarch %{ocaml_native_compiler}
%{_libdir}/ocaml/%{srcname}/*/*.a
%{_libdir}/ocaml/%{srcname}/*/*.cmx
%{_libdir}/ocaml/%{srcname}/*/*.cmxa
%endif
%{_libdir}/ocaml/%{srcname}/*/*.cmt
%{_libdir}/ocaml/%{srcname}/*/*.cmti
%{_libdir}/ocaml/%{srcname}/*/*.ml
%{_libdir}/ocaml/%{srcname}/*/*.mli
%files doc %files doc
%doc _build/default/_doc/_html/* %doc _build/default/_doc/_html/*
%license LICENSE.md %license LICENSE.md
%changelog %changelog
* Tue Mar 21 2023 Jerry James <loganjerry@gmail.com> - 2.2.0-4 * Fri Feb 28 2020 Richard W.M. Jones <rjones@redhat.com> - 1.5.0-2.1
- Re-enable debuginfo now that dune is fixed - OCaml 4.10.0 final (Fedora 32).
* Tue Jan 24 2023 Richard W.M. Jones <rjones@redhat.com> - 2.2.0-3
- Rebuild OCaml packages for F38
* Thu Jan 19 2023 Fedora Release Engineering <releng@fedoraproject.org> - 2.2.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
* Mon Jan 9 2023 Jerry James <loganjerry@gmail.com> - 2.2.0-1
- Version 2.2.0
- Disable tests due to missing dependency
* Mon Dec 12 2022 Jerry James <loganjerry@gmail.com> - 2.1.1-2
- Convert License tags to SPDX
* Thu Sep 15 2022 Jerry James <loganjerry@gmail.com> - 2.1.1-2
- Rebuild for ocaml-cmdliner 1.1.1
* Tue Aug 2 2022 Jerry James <loganjerry@gmail.com> - 2.1.1-1
- Version 2.1.1
* Fri Jul 22 2022 Fedora Release Engineering <releng@fedoraproject.org> - 2.1.0-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
* Thu Jul 21 2022 Jerry James <loganjerry@gmail.com> - 2.1.0-2
- Use new OCaml macros
- Add temporary workaround for a failing test
* Sun Jun 19 2022 Richard W.M. Jones <rjones@redhat.com> - 2.1.0-2
- OCaml 4.14.0 rebuild
* Wed Feb 9 2022 Jerry James <loganjerry@gmail.com> - 2.1.0-1
- Version 2.1.0
- License is ISC, not MIT
- Trim BuildRequires
* Fri Feb 04 2022 Richard W.M. Jones <rjones@redhat.com> - 2.0.2-3
- OCaml 4.13.1 rebuild to remove package notes
* Thu Jan 20 2022 Fedora Release Engineering <releng@fedoraproject.org> - 2.0.2-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
* Mon Jan 17 2022 Jerry James <loganjerry@gmail.com> - 2.0.2-1
- Version 2.0.2
* Tue Oct 05 2021 Richard W.M. Jones <rjones@redhat.com> - 1.5.3-2
- OCaml 4.13.1 build
* Wed Aug 11 2021 Jerry James <loganjerry@gmail.com> - 1.5.3-1
- Version 1.5.3
* Thu Jul 29 2021 Jerry James <loganjerry@gmail.com> - 1.5.2-8
- Rebuild for changed ocamlx(Dynlink)
* Thu Jul 22 2021 Fedora Release Engineering <releng@fedoraproject.org> - 1.5.2-7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
* Tue Jun 22 2021 Jerry James <loganjerry@gmail.com> - 1.5.2-6
- Rebuild for ocaml-markup 1.0.1
* Fri Apr 23 2021 Jerry James <loganjerry@gmail.com> - 1.5.2-5
- Rebuild for ocaml-tyxml 4.5.0
* Mon Mar 1 2021 Richard W.M. Jones <rjones@redhat.com> - 1.5.2-4
- OCaml 4.12.0 build
* Tue Feb 2 2021 Richard W.M. Jones <rjones@redhat.com> - 1.5.2-3
- Bump and rebuild for updated ocaml-camomile dep (RHBZ#1923853).
* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 1.5.2-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
* Wed Dec 2 2020 Jerry James <loganjerry@gmail.com> - 1.5.2-1
- Version 1.5.2
* Fri Oct 23 2020 Jerry James <loganjerry@gmail.com> - 1.5.1-5
- Rebuild for ocaml-markup 1.0.0
* Fri Sep 25 2020 Jerry James <loganjerry@gmail.com> - 1.5.1-4
- Rebuild for ocaml-fpath 0.7.3
* Tue Sep 01 2020 Richard W.M. Jones <rjones@redhat.com> - 1.5.1-3
- OCaml 4.11.1 rebuild
* Fri Aug 21 2020 Richard W.M. Jones <rjones@redhat.com> - 1.5.1-2
- OCaml 4.11.0 rebuild
* Wed Aug 5 2020 Jerry James <loganjerry@gmail.com> - 1.5.1-1
- Version 1.5.1
- Drop upstreamed odoc-1.5.0-ocaml411.patch
* Sat Aug 01 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1.5.0-7
- Second attempt - Rebuilt for
https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
* Tue Jul 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1.5.0-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
* Tue May 05 2020 Richard W.M. Jones <rjones@redhat.com> - 1.5.0-5
- OCaml 4.11.0+dev2-2020-04-22 rebuild
* Wed Apr 22 2020 Richard W.M. Jones <rjones@redhat.com> - 1.5.0-4
- OCaml 4.11.0 pre-release attempt 2
* Sat Apr 04 2020 Richard W.M. Jones <rjones@redhat.com> - 1.5.0-3
- Update all OCaml dependencies for RPM 4.16.
* Wed Feb 26 2020 Richard W.M. Jones <rjones@redhat.com> - 1.5.0-2 * Wed Feb 26 2020 Richard W.M. Jones <rjones@redhat.com> - 1.5.0-2
- OCaml 4.10.0 final. - OCaml 4.10.0 final.

View File

@ -1 +1 @@
SHA512 (odoc-2.2.0.tar.gz) = 1f1b0f00bef5b4a01b25823dc71ccba4a0425ba950042636dbb2140d16df87eff185d3c6c213263878bb997708e81d60d7f34ec980bf48a7e7e745f620521c57 SHA512 (odoc-1.5.0.tar.gz) = 2facdb46f656b7aa6071035777aa87f9cc02a57cb2d182af56a1d0fd1edb57d760eac658017fa8c3b4ecbe3fe902545fadc1ae9c185a2d8c29bf6a228ac9ca29