Name: ocaml-ocp-indent Version: 1.7.0 Release: 3%{?dist} Summary: A simple tool to indent OCaml programs %global libname %(echo %{name} | sed -e 's/^ocaml-//') # The entire source code is LGPLv2 with exceptions except # src/approx_tokens.ml is QPL License: (LGPLv2 with exceptions) and QPL URL: https://github.com/OCamlPro/%{libname} Source0: https://github.com/OCamlPro/%{libname}/archive/%{version}/%{libname}-%{version}.tar.gz BuildRequires: ocaml BuildRequires: ocaml-dune BuildRequires: ocaml-findlib-devel BuildRequires: ocaml-cmdliner-devel BuildRequires: ocaml-result-devel # Required for tests, not available in Fedora #BuildRequires: craml BuildRequires: emacs # For byte-compile elisp #BuildRequires: emacs-auto-complete #BuildRequires: emacs-tuareg # The following two are not yet available in Fedora. # So byte compilation is disabled #BuildRequires: emacs-company #BuildRequires: emacs-iedit BuildRequires: vim-enhanced Requires: emacs-filesystem >= %{_emacs_version} Requires: vim-filesystem %description Ocp-indent is based on an approximate, tolerant OCaml parser and a simple stack machine ; this is much faster and more reliable than using regexps. Presets and configuration options available, with the possibility to set them project-wide. Supports most common syntax extensions, and extensible for others. Includes: - An indentor program, callable from the command-line or from within editors - Bindings for popular editors - A library that can be directly used by editor writers, or just for fault-tolerant/approximate parsing. %package devel Summary: Development files for %{name} Requires: %{name}%{?_isa} = %{version}-%{release} %description devel The %{name}-devel package contains libraries and signature files for developing applications that use %{name}. %prep %setup -q -n %{libname}-%{version} %build dune build %{?_smp_mflags} --profile=release %install dune install --prefix=%{buildroot}%{_prefix} --libdir=%{buildroot}%{_libdir}/ocaml chmod 755 %{buildroot}%{_libdir}/ocaml/%{libname}/*/*.cmxs # Reinstall vim files to Fedora default location mkdir -p %{buildroot}%{vimfiles_root} mv %{buildroot}%{_datadir}/%{libname}/vim/* %{buildroot}%{vimfiles_root} rmdir %{buildroot}%{_datadir}/%{libname}/vim rmdir %{buildroot}%{_datadir}/%{libname} # Reinstall documents using %%doc later rm -fr %{buildroot}%{_prefix}/doc mkdir -p %{buildroot}%{_datadir} mv %{buildroot}%{_prefix}/man %{buildroot}%{_datadir} %check #Tests only run on a git checkout # ./tests/test.sh %files %doc README.md CHANGELOG %license LICENSE %{_bindir}/* %{_libdir}/ocaml/%{libname} %ifarch %{ocaml_native_compiler} %exclude %{_libdir}/ocaml/%{libname}/*/*.a %exclude %{_libdir}/ocaml/%{libname}/*/*.cmxa %exclude %{_libdir}/ocaml/%{libname}/*/*.cmx %endif %exclude %{_libdir}/ocaml/%{libname}/*/*.mli %exclude %{_libdir}/ocaml/%{libname}/*/*.ml %{_emacs_sitelispdir}/* %{vimfiles_root}/*/* %{_mandir}/man1/%{libname}* %files devel %ifarch %{ocaml_native_compiler} %{_libdir}/ocaml/%{libname}/*/*.a %{_libdir}/ocaml/%{libname}/*/*.cmxa %{_libdir}/ocaml/%{libname}/*/*.cmx %endif %{_libdir}/ocaml/%{libname}/*/*.mli %{_libdir}/ocaml/%{libname}/*/*.ml %changelog * Thu Jul 25 2019 Fedora Release Engineering - 1.7.0-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild * Sat Apr 6 2019 Robin Lee - 1.7.0-2 - Make cmxs files executable to properly generate debuginfo * Fri Apr 5 2019 Robin Lee - 1.7.0-1 - Initial packaging