3 %bcond_without ocaml_opt # build opt (native code)
5 %ifnarch %{ix86} %{x8664} %{arm} aarch64 ppc sparc sparcv9
6 %undefine with_ocaml_opt
9 %define module easy-format
10 Summary: easy(ier) pretty printing for OCaml
11 Summary(pl.UTF-8): Łatwiejsze ładne wypisywanie dla OCamla
17 #Source0Download: https://github.com/ocaml-community/easy-format/releases
18 Source0: https://github.com/ocaml-community/easy-format/releases/download/%{version}/%{module}-%{version}.tbz
19 # Source0-md5: 8e8e2da60d3566ab1bce5e5784ae75f9
20 # https://github.com/ocaml-community/easy-format/commit/c6d5ab5ef62e7a1ec20ae8a22a39b0f06ad710a8.patch
21 Patch0: %{name}-compile.patch
22 URL: https://github.com/ocaml-community/easy-format
23 BuildRequires: ocaml >= 1:4.02.3
24 BuildRequires: ocaml-dune >= 1.10
25 BuildRequires: ocaml-findlib
26 %requires_eq ocaml-runtime
27 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
29 %define debug_package %{nil}
32 easy-format module offers a simplified interface to the Format module
33 of the OCaml standard library. Input data must be converted into a
34 tree using 3 kinds of nodes: atoms, lists and labelled nodes. Each
35 node is bound to its own formatting parameters and a single function
36 call produces the formatted output.
38 %description -l pl.UTF-8
39 Moduł easy-format oferuje uproszczony interfejs do modułu Format
40 biblioteki standardowej OCamla. Dane wejściowe muszą być
41 przekonwertowane do drzewa z użyciem trzech rodzajów węzłów: atomów,
42 list oraz węzłów z etykietami. Każdy węzeł jest powiązany z
43 parametrami formatującymi, a pojedyncze wywołanie funkcji tworzy
47 Summary: easy-format binding for OCaml - development part
48 Summary(pl.UTF-8): Wiązania easy-format dla OCamla - część programistyczna
49 Group: Development/Libraries
51 Requires: %{name} = %{version}-%{release}
54 easy-format module offers a simplified interface to the Format module
55 of the OCaml standard library. Input data must be converted into a
56 tree using 3 kinds of nodes: atoms, lists and labelled nodes. Each
57 node is bound to its own formatting parameters and a single function
58 call produces the formatted output.
60 This package contains files needed to develop OCaml programs using
63 %description devel -l pl.UTF-8
64 Moduł easy-format oferuje uproszczony interfejs do modułu Format
65 biblioteki standardowej OCamla. Dane wejściowe muszą być
66 przekonwertowane do drzewa z użyciem trzech rodzajów węzłów: atomów,
67 list oraz węzłów z etykietami. Każdy węzeł jest powiązany z
68 parametrami formatującymi, a pojedyncze wywołanie funkcji tworzy
71 Pakiet ten zawiera pliki niezbędne do tworzenia programów używających
72 biblioteki easy-format.
75 %setup -q -n %{module}-%{version}
79 dune build @all %{?_smp_mflags} --display=verbose
82 rm -rf $RPM_BUILD_ROOT
84 dune install --destdir=$RPM_BUILD_ROOT
87 %{__rm} $RPM_BUILD_ROOT%{_libdir}/ocaml/%{module}/easy_format.ml
89 %{__rm} -r $RPM_BUILD_ROOT%{_prefix}/doc/%{module}
92 rm -rf $RPM_BUILD_ROOT
95 %defattr(644,root,root,755)
96 %doc CHANGES.md LICENSE README.md
97 %dir %{_libdir}/ocaml/%{module}
98 %{_libdir}/ocaml/%{module}/META
99 %{_libdir}/ocaml/%{module}/easy_format.cma
100 %if %{with ocaml_opt}
101 %attr(755,root,root) %{_libdir}/ocaml/%{module}/easy_format.cmxs
105 %defattr(644,root,root,755)
106 %{_libdir}/ocaml/%{module}/dune-package
107 %{_libdir}/ocaml/%{module}/opam
108 %{_libdir}/ocaml/%{module}/easy_format.cmi
109 %{_libdir}/ocaml/%{module}/easy_format.cmt*
111 %{_libdir}/ocaml/%{module}/easy_format.mli
112 %if %{with ocaml_opt}
113 %{_libdir}/ocaml/%{module}/easy_format.a
114 %{_libdir}/ocaml/%{module}/easy_format.cmx
115 %{_libdir}/ocaml/%{module}/easy_format.cmxa