1 |
%define libname ocaml-mascot-lib |
2 |
|
3 |
Name: mascot |
4 |
Version: 1.0 |
5 |
Release: %mkrel 4 |
6 |
Summary: Style-checker for OCaml sources |
7 |
License: GPL v3 |
8 |
Group: Development/OCaml |
9 |
URL: http://mascot.x9c.fr/ |
10 |
Source0: http://download.ocamlcore.org/mascot/%{version}/sources/mascot-%{version}.tar.gz |
11 |
Source1: mascot-man-page-%{version}.1 |
12 |
Source2: example.conf |
13 |
Patch0: mascot-1.0.fix-build-doc.patch |
14 |
BuildRequires: ocaml-findlib |
15 |
BuildRequires: camlp4-devel |
16 |
|
17 |
%description |
18 |
Mascot is a style-checker for OCaml sources. It provides checks in various |
19 |
categories: code, documentation, interface, metrics, and typography. The |
20 |
goal of the tool is to allow a (team of) developer(s) to enforce style |
21 |
properties over a source codebase for greater coherency and style |
22 |
uniformity. The tool is highly customizable, allowing one to choose the |
23 |
checks to perform, as well as exceptions to those checks in given files. |
24 |
Moreover, a plugin system allows the developer to add its own checks, and |
25 |
output modes. |
26 |
|
27 |
Bundled output modes range from bare text to CheckStyle- and |
28 |
JDepend-compatible XML file in order to allow integration with Jenkins. |
29 |
|
30 |
Help: |
31 |
In order to improve the project, I am primarily looking for testers and bug |
32 |
reporters http://bugs.x9c.fr. Pointing errors in documentation and |
33 |
indicating where it should be enhanced is also very helpful. Of course, |
34 |
aside from bugs, you can also use the tracker to request new features. |
35 |
|
36 |
The darcs repository is http://mascot.x9c.fr/_darcs (read-only, useful to |
37 |
always get the last version). |
38 |
|
39 |
%package -n %{libname} |
40 |
Summary: Development files for %{name} |
41 |
Group: Development/OCaml |
42 |
Requires: %{name} = %{version}-%{release} |
43 |
Requires: ocaml-compiler |
44 |
|
45 |
%description -n %{libname} |
46 |
This package contains libraries and signature files for developing |
47 |
applications with %{name}. |
48 |
|
49 |
%package -n %{libname}-devel |
50 |
Summary: Development files for %{name} |
51 |
Group: Development/OCaml |
52 |
Requires: %{libname} = %{version}-%{release} |
53 |
|
54 |
%description -n %{libname}-devel |
55 |
This package contains native libraries files for developing |
56 |
applications with %{name}. |
57 |
|
58 |
%prep |
59 |
%setup -q -n mascot-%{version} |
60 |
%patch0 -p1 |
61 |
|
62 |
%build |
63 |
sh configure |
64 |
make all |
65 |
make doc |
66 |
mv doc manual |
67 |
|
68 |
%check |
69 |
make tests |
70 |
|
71 |
%install |
72 |
rm -rf %{buildroot} |
73 |
export DESTDIR=%{buildroot} |
74 |
export OCAMLFIND_DESTDIR=%{buildroot}/%{_libdir}/ocaml |
75 |
mkdir -p $OCAMLFIND_DESTDIR/mascot |
76 |
make install PATH_OCAMLFIND="/usr/bin/ocamlfind" |
77 |
|
78 |
# make an easier command line invocation |
79 |
install -d -m 755 %{buildroot}/%{_bindir} |
80 |
pushd %{buildroot}%{_bindir}/ |
81 |
ln -s \ |
82 |
%{_libdir}/ocaml/mascot/mascot.native \ |
83 |
mascot |
84 |
popd |
85 |
|
86 |
mkdir -p %{buildroot}%{_mandir}/man1 |
87 |
cp %{SOURCE1} %{buildroot}%{_mandir}/man1/mascot.1 |
88 |
cp %{SOURCE2} . |
89 |
|
90 |
%files |
91 |
%doc README COPYING CHANGES FEATURES VERSION |
92 |
%doc manual/ |
93 |
%doc example.conf |
94 |
%dir %{_libdir}/ocaml/mascot |
95 |
%{_libdir}/ocaml/mascot/META |
96 |
%{_libdir}/ocaml/mascot/mascot.byte |
97 |
%{_libdir}/ocaml/mascot/mascot.native |
98 |
%{_bindir}/mascot |
99 |
%{_mandir}/man1/mascot.1* |
100 |
|
101 |
%files -n %{libname} |
102 |
%doc tests/ |
103 |
%doc ocamldoc/ |
104 |
%{_libdir}/ocaml/mascot/*.cmi |
105 |
%{_libdir}/ocaml/mascot/*.cmo |
106 |
|
107 |
%files -n %{libname}-devel |
108 |
%{_libdir}/ocaml/mascot/*.cmx |
109 |
%{_libdir}/ocaml/mascot/*.o |