]> git.pld-linux.org Git - packages/ocaml-findlib.git/blob - ocaml-findlib.spec
- rebuild with ocaml 4.04.1
[packages/ocaml-findlib.git] / ocaml-findlib.spec
1 #
2 # Conditional build:
3 %bcond_without  ocaml_opt               # build opt
4 %bcond_without  tk                      # build without tk support
5
6 %ifnarch %{ix86} %{x8664} arm aarch64 ppc sparc sparcv9 
7 %undefine       with_ocaml_opt
8 %endif
9
10 %define         ocaml_ver       1:4.02
11 Summary:        OCaml module manager
12 Summary(pl.UTF-8):      Zarządca modułów OCamla
13 Name:           ocaml-findlib
14 Version:        1.6.2
15 Release:        3
16 License:        distributable
17 Group:          Development/Tools
18 Source0:        http://download.camlcity.org/download/findlib-%{version}.tar.gz
19 # Source0-md5:  530ff275d6b96e140f0d3a03ed14b68e
20 Patch0:         %{name}-bytes.patch
21 Patch1:         %{name}-man.patch
22 URL:            http://www.ocaml-programming.de/packages/
23 BuildRequires:  m4
24 BuildRequires:  ncurses-devel
25 BuildRequires:  ocaml >= %{ocaml_ver}
26 BuildRequires:  ocaml-camlp4
27 %{?with_tk:BuildRequires:       ocaml-labltk-devel}
28 BuildRequires:  sed >= 4.0
29 %requires_eq    ocaml
30 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
31
32 %if %{without ocaml_opt}
33 %define         no_install_post_strip   1
34 # debug package strips binaries which renders ocamlfind broken
35 %define         _enable_debug_packages  0
36 %endif
37
38 %description
39 The "findlib" library provides a scheme to manage reusable software
40 components (packages), and includes tools that support this scheme.
41 Packages are collections of OCaml modules for which metainformation
42 can be stored.
43
44 %description -l pl.UTF-8
45 Biblioteka "findlib" udostępnia metodę zarządzania komponentami
46 oprogramowania (pakietami) oraz zawiera narzędzia, które ową metodę
47 wspierają. Pakiety są kolekcjami modułów w OCamlu, dla których mogą
48 być przechowywane metainformacje.
49
50 %package devel
51 Summary:        OCaml module manager
52 Summary(pl.UTF-8):      Zarządca modułów OCamla
53 Group:          Development/Libraries
54 Requires:       %{name} = %{version}-%{release}
55
56 %description devel
57 The "findlib" library provides a scheme to manage reusable software
58 components (packages), and includes tools that support this scheme.
59 Packages are collections of OCaml modules for which metainformation
60 can be stored.
61
62 This package includes libraries and compiled interfaces of findlib.
63
64 %description devel -l pl.UTF-8
65 Biblioteka "findlib" udostępnia metodę zarządzania komponentami
66 oprogramowania (pakietami) oraz zawiera narzędzia, które ową metodę
67 wspierają. Pakiety są kolekcjami modułów w OCamlu, dla których mogą
68 być przechowywane metainformacje.
69
70 Ten pakiet zawiera biblioteki i skompilowane interfejsy findliba.
71
72 %prep
73 %setup -q -n findlib-%{version}
74 %patch0 -p1
75 %patch1 -p1
76
77 %build
78 ./configure \
79         -bindir %{_bindir} \
80         -mandir %{_mandir} \
81         -config %{_sysconfdir}/ocamlfind.conf \
82         -with-toolbox
83
84 sed -i -e 's/-g//' Makefile
85
86 %{__make} -j1 all %{?with_ocaml_opt:opt}
87
88 %install
89 rm -rf $RPM_BUILD_ROOT
90
91 %{__make} install \
92         prefix=$RPM_BUILD_ROOT
93
94 %{__rm} $RPM_BUILD_ROOT%{_libdir}/ocaml/site-lib/findlib/*.mli
95
96 # now provided by ocaml-labltk.spec (might not exist if building without ocaml-labltk installed)
97 %{__rm} -rf $RPM_BUILD_ROOT%{_libdir}/ocaml/site-lib/labltk
98 # now provided by ocaml-dbm.spec (might not exist if building without ocaml-dbm installed)
99 %{__rm} -rf $RPM_BUILD_ROOT%{_libdir}/ocaml/site-lib/dbm
100
101 # in PLD only META files are stored in site-lib/pkg
102 sed -i -e 's|/site-lib||' $RPM_BUILD_ROOT%{_libdir}/ocaml/topfind
103 ln -sf topfind $RPM_BUILD_ROOT%{_libdir}/ocaml/ocamlfind
104 %{__mv} $RPM_BUILD_ROOT%{_libdir}/ocaml/site-lib/findlib \
105         $RPM_BUILD_ROOT%{_libdir}/ocaml/findlib
106 install -d $RPM_BUILD_ROOT%{_libdir}/ocaml/site-lib/findlib
107 %{__mv} $RPM_BUILD_ROOT%{_libdir}/ocaml/findlib/META \
108         $RPM_BUILD_ROOT%{_libdir}/ocaml/site-lib/findlib
109 echo 'directory = "+findlib"' >> $RPM_BUILD_ROOT%{_libdir}/ocaml/site-lib/findlib/META
110 %{__mv} $RPM_BUILD_ROOT%{_libdir}/ocaml/site-lib/num-top \
111         $RPM_BUILD_ROOT%{_libdir}/ocaml/num-top
112 install -d $RPM_BUILD_ROOT%{_libdir}/ocaml/site-lib/num-top
113 %{__mv} $RPM_BUILD_ROOT%{_libdir}/ocaml/num-top/META \
114         $RPM_BUILD_ROOT%{_libdir}/ocaml/site-lib/num-top
115 echo 'directory = "+findlib"' >> $RPM_BUILD_ROOT%{_libdir}/ocaml/site-lib/num-top/META
116
117 echo 'ldconf = "ignore"' >> $RPM_BUILD_ROOT%{_sysconfdir}/ocamlfind.conf
118
119 ln -sf ../stublibs $RPM_BUILD_ROOT%{_libdir}/ocaml/site-lib/libexec
120 ln -sf ../stublibs $RPM_BUILD_ROOT%{_libdir}/ocaml/site-lib/stublibs
121
122 %clean
123 rm -rf $RPM_BUILD_ROOT
124
125 %files
126 %defattr(644,root,root,755)
127 %doc doc/README LICENSE doc/*-html
128 %attr(755,root,root) %{_bindir}/ocamlfind
129 %attr(755,root,root) %{_bindir}/safe_camlp4
130 %config %{_sysconfdir}/ocamlfind.conf
131 %dir %{_libdir}/ocaml/findlib
132 %if %{with tk}
133 %attr(755,root,root) %{_libdir}/ocaml/findlib/make_wizard
134 %{_libdir}/ocaml/findlib/make_wizard.pattern
135 %endif
136 %{_libdir}/ocaml/findlib/Makefile.config
137 %{_libdir}/ocaml/findlib/findlib.cma
138 %{_libdir}/ocaml/findlib/findlib_dynload.cma
139 %{_libdir}/ocaml/findlib/findlib_top.cma
140 %if %{with ocaml_opt}
141 %attr(755,root,root) %{_libdir}/ocaml/findlib/findlib.cmxs
142 %attr(755,root,root) %{_libdir}/ocaml/findlib/findlib_dynload.cmxs
143 %endif
144 %{_libdir}/ocaml/site-lib/findlib
145 # META files for base ocaml packages
146 %{_libdir}/ocaml/site-lib/bigarray
147 %{_libdir}/ocaml/site-lib/bytes
148 %{_libdir}/ocaml/site-lib/compiler-libs
149 %{_libdir}/ocaml/site-lib/dynlink
150 %{_libdir}/ocaml/site-lib/graphics
151 %{_libdir}/ocaml/site-lib/num
152 %{_libdir}/ocaml/site-lib/num-top
153 %{_libdir}/ocaml/site-lib/ocamlbuild
154 %{_libdir}/ocaml/site-lib/ocamldoc
155 %{_libdir}/ocaml/site-lib/stdlib
156 %{_libdir}/ocaml/site-lib/str
157 %{_libdir}/ocaml/site-lib/threads
158 %{_libdir}/ocaml/site-lib/unix
159 # camlp4 4.02 doesn't provide its META itself
160 %{_libdir}/ocaml/site-lib/camlp4
161 %{_mandir}/man1/ocamlfind.1*
162 %{_mandir}/man5/META.5*
163 %{_mandir}/man5/findlib.conf.5*
164 %{_mandir}/man5/site-lib.5*
165
166 %files devel
167 %defattr(644,root,root,755)
168 %{_libdir}/ocaml/findlib/findlib.cmi
169 %{_libdir}/ocaml/findlib/fl_*.cmi
170 %{_libdir}/ocaml/findlib/topfind.cmi
171 %if %{with ocaml_opt}
172 %{_libdir}/ocaml/findlib/findlib.a
173 %{_libdir}/ocaml/findlib/findlib.cmxa
174 %{_libdir}/ocaml/findlib/findlib_dynload.a
175 %{_libdir}/ocaml/findlib/findlib_dynload.cmxa
176 %endif
177 %dir %{_libdir}/ocaml/num-top
178 %{_libdir}/ocaml/num-top/num_top.cma
179 %{_libdir}/ocaml/num-top/num_top*.cmi
180 %{_libdir}/ocaml/ocamlfind
181 %{_libdir}/ocaml/topfind
This page took 0.066261 seconds and 3 git commands to generate.