3 %bcond_without ocaml_opt # native optimized binaries (bytecode is always built)
5 # not yet available on x32 (ocaml 4.02.1), update when upstream will support it
6 %ifnarch %{ix86} %{x8664} %{arm} aarch64 ppc sparc sparcv9
7 %undefine with_ocaml_opt
10 Summary: Generation of bin_prot readers and writers from types
11 Summary(pl.UTF-8): Generowanie funkcji odczytujących i zapisujących bin_prot z typów
12 Name: ocaml-ppx_bin_prot
17 #Source0Download: https://github.com/janestreet/ppx_bin_prot/tags
18 Source0: https://github.com/janestreet/ppx_bin_prot/archive/v%{version}/ppx_bin_prot-%{version}.tar.gz
19 # Source0-md5: de707369a339cd359897a161b70485b5
20 URL: https://github.com/janestreet/ppx_bin_prot
21 BuildRequires: ocaml >= 1:4.04.2
22 BuildRequires: ocaml-base-devel >= 0.14
23 BuildRequires: ocaml-base-devel < 0.15
24 BuildRequires: ocaml-bin_prot-devel >= 0.14
25 BuildRequires: ocaml-bin_prot-devel < 0.15
26 BuildRequires: ocaml-dune >= 2.0.0
27 BuildRequires: ocaml-ppx_here-devel >= 0.14
28 BuildRequires: ocaml-ppxlib-devel >= 0.11.0
29 %requires_eq ocaml-runtime
30 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
32 %define debug_package %{nil}
35 Generation of binary serialization and deserialization functions from
38 This package contains files needed to run bytecode executables using
41 %description -l pl.UTF-8
42 Generowanie funkcji binarnej serializacji i deserializacji z definicji
45 Pakiet ten zawiera binaria potrzebne do uruchamiania programów
46 używających biblioteki ppx_bin_prot.
49 Summary: Generation of bin_prot readers and writers from types - development part
50 Summary(pl.UTF-8): Generowanie funkcji odczytujących i zapisujących bin_prot z typów - część programistyczna
51 Group: Development/Libraries
52 Requires: %{name} = %{version}-%{release}
54 Requires: ocaml-base-devel >= 0.14
55 Requires: ocaml-bin_prot-devel >= 0.14
56 Requires: ocaml-ppx_here-devel >= 0.14
57 Requires: ocaml-ppxlib-devel >= 0.11.0
60 This package contains files needed to develop OCaml programs using
63 %description devel -l pl.UTF-8
64 Pakiet ten zawiera pliki niezbędne do tworzenia programów w OCamlu
65 używających biblioteki ppx_bin_prot.
68 %setup -q -n ppx_bin_prot-%{version}
74 rm -rf $RPM_BUILD_ROOT
76 dune install --destdir=$RPM_BUILD_ROOT
79 %{__rm} $RPM_BUILD_ROOT%{_libdir}/ocaml/ppx_bin_prot/*.ml
80 %{__rm} $RPM_BUILD_ROOT%{_libdir}/ocaml/ppx_bin_prot/*/*.ml
82 %{__rm} -r $RPM_BUILD_ROOT%{_prefix}/doc/ppx_bin_prot
85 rm -rf $RPM_BUILD_ROOT
88 %defattr(644,root,root,755)
89 %doc CHANGES.md LICENSE.md README.md
90 %dir %{_libdir}/ocaml/ppx_bin_prot
91 %{_libdir}/ocaml/ppx_bin_prot/META
92 %{_libdir}/ocaml/ppx_bin_prot/*.cma
93 %dir %{_libdir}/ocaml/ppx_bin_prot/shape-expander
94 %{_libdir}/ocaml/ppx_bin_prot/shape-expander/*.cma
96 %attr(755,root,root) %{_libdir}/ocaml/ppx_bin_prot/*.cmxs
97 %attr(755,root,root) %{_libdir}/ocaml/ppx_bin_prot/shape-expander/*.cmxs
101 %defattr(644,root,root,755)
102 %{_libdir}/ocaml/ppx_bin_prot/*.cmi
103 %{_libdir}/ocaml/ppx_bin_prot/*.cmt
104 %{_libdir}/ocaml/ppx_bin_prot/*.cmti
105 %{_libdir}/ocaml/ppx_bin_prot/*.mli
106 %{_libdir}/ocaml/ppx_bin_prot/shape-expander/*.cmi
107 %{_libdir}/ocaml/ppx_bin_prot/shape-expander/*.cmt
108 %{_libdir}/ocaml/ppx_bin_prot/shape-expander/*.cmti
109 %{_libdir}/ocaml/ppx_bin_prot/shape-expander/*.mli
110 %if %{with ocaml_opt}
111 %{_libdir}/ocaml/ppx_bin_prot/ppx_bin_prot.a
112 %{_libdir}/ocaml/ppx_bin_prot/*.cmx
113 %{_libdir}/ocaml/ppx_bin_prot/*.cmxa
114 %{_libdir}/ocaml/ppx_bin_prot/shape-expander/bin_shape_expand.a
115 %{_libdir}/ocaml/ppx_bin_prot/shape-expander/*.cmx
116 %{_libdir}/ocaml/ppx_bin_prot/shape-expander/*.cmxa
118 %{_libdir}/ocaml/ppx_bin_prot/dune-package
119 %{_libdir}/ocaml/ppx_bin_prot/opam