ocaml-merlin/ocaml-merlin.spec

73 lines
2.0 KiB
RPMSpec

Name: ocaml-merlin
Version: 3.2.2
Release: 1%{?dist}
Summary: Context sensitive completion for OCaml in Vim and Emacs
%global libname %(echo %{name} | sed -e 's/^ocaml-//')
# The entire source is MIT except orig/ and src/ocaml are QPL
License: MIT and QPL
URL: https://github.com/ocaml/%{libname}
Source0: https://github.com/ocaml/%{libname}/archive/v%{version}/%{libname}-%{version}.tar.gz
BuildRequires: ocaml
BuildRequires: ocaml-dune
BuildRequires: ocaml-findlib-devel
BuildRequires: ocaml-yojson-devel
BuildRequires: ocaml-biniou-devel
BuildRequires: ocaml-easy-format-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
Merlin is an assistant for editing OCaml code. It aims to provide the features
available in modern IDEs: error reporting, auto completion, source browsing and
much more.
%prep
%setup -q -n %{libname}-%{version}
%build
dune build %{?_smp_mflags}
%install
dune install --prefix=%{buildroot}%{_prefix} --libdir=%{buildroot}%{_libdir}
# 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
%check
#dune runtest
%files
%doc doc/* featuremap.* README.md CHANGELOG.md
%license LICENSE_MIT.txt
%{_bindir}/*
%{_libdir}/%{libname}
%{_emacs_sitelispdir}/*
%{vimfiles_root}/*/*
%changelog
* Fri Mar 1 2019 Robin Lee <cheeselee@fedoraproject.org> - 3.2.2-1
- Initial packaging