]> git.pld-linux.org Git - packages/ocaml-findlib.git/blob - ocaml-findlib.spec
- updated to 1.7.3
[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.7.3
15 Release:        1
16 License:        distributable
17 Group:          Development/Tools
18 Source0:        http://download.camlcity.org/download/findlib-%{version}.tar.gz
19 # Source0-md5:  7d57451218359f7b7dfc969e3684a6da
20 Patch0:         %{name}-bytes.patch
21 URL:            http://www.ocaml-programming.de/packages/
22 BuildRequires:  m4
23 BuildRequires:  ncurses-devel
24 BuildRequires:  ocaml >= %{ocaml_ver}
25 BuildRequires:  ocaml-camlp4
26 %{?with_tk:BuildRequires:       ocaml-labltk-devel}
27 BuildRequires:  sed >= 4.0
28 %requires_eq    ocaml
29 Conflicts:      ocaml-curses < 1.0.3-13
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
76 %build
77 ./configure \
78         -bindir %{_bindir} \
79         -mandir %{_mandir} \
80         -config %{_sysconfdir}/ocamlfind.conf \
81         -with-toolbox
82
83 sed -i -e 's/-g//' Makefile
84
85 %{__make} -j1 all %{?with_ocaml_opt:opt}
86
87 %install
88 rm -rf $RPM_BUILD_ROOT
89
90 %{__make} install \
91         prefix=$RPM_BUILD_ROOT
92
93 %{__rm} $RPM_BUILD_ROOT%{_libdir}/ocaml/site-lib/findlib/*.mli
94
95 # now provided by ocaml-dbm.spec (might not exist if building without ocaml-dbm installed)
96 %{__rm} -rf $RPM_BUILD_ROOT%{_libdir}/ocaml/site-lib/dbm
97 # now provided by ocaml-labltk.spec (might not exist if building without ocaml-labltk installed)
98 %{__rm} -rf $RPM_BUILD_ROOT%{_libdir}/ocaml/site-lib/labltk
99 # now provided by ocaml-ocamlbuild.spec (might not exist if building without ocaml-ocamlbuild installed)
100 %{__rm} -rf $RPM_BUILD_ROOT%{_libdir}/ocaml/site-lib/ocamlbuild
101
102 # in PLD only META files are stored in site-lib/pkg
103 sed -i -e 's|/site-lib||' $RPM_BUILD_ROOT%{_libdir}/ocaml/topfind
104 ln -sf topfind $RPM_BUILD_ROOT%{_libdir}/ocaml/ocamlfind
105 %{__mv} $RPM_BUILD_ROOT%{_libdir}/ocaml/site-lib/findlib \
106         $RPM_BUILD_ROOT%{_libdir}/ocaml/findlib
107 install -d $RPM_BUILD_ROOT%{_libdir}/ocaml/site-lib/findlib
108 %{__mv} $RPM_BUILD_ROOT%{_libdir}/ocaml/findlib/META \
109         $RPM_BUILD_ROOT%{_libdir}/ocaml/site-lib/findlib
110 echo 'directory = "+findlib"' >> $RPM_BUILD_ROOT%{_libdir}/ocaml/site-lib/findlib/META
111 %{__mv} $RPM_BUILD_ROOT%{_libdir}/ocaml/site-lib/num-top \
112         $RPM_BUILD_ROOT%{_libdir}/ocaml/num-top
113 install -d $RPM_BUILD_ROOT%{_libdir}/ocaml/site-lib/num-top
114 %{__mv} $RPM_BUILD_ROOT%{_libdir}/ocaml/num-top/META \
115         $RPM_BUILD_ROOT%{_libdir}/ocaml/site-lib/num-top
116 echo 'directory = "+findlib"' >> $RPM_BUILD_ROOT%{_libdir}/ocaml/site-lib/num-top/META
117
118 echo 'ldconf = "ignore"' >> $RPM_BUILD_ROOT%{_sysconfdir}/ocamlfind.conf
119
120 ln -sf ../stublibs $RPM_BUILD_ROOT%{_libdir}/ocaml/site-lib/libexec
121 ln -sf ../stublibs $RPM_BUILD_ROOT%{_libdir}/ocaml/site-lib/stublibs
122
123 %clean
124 rm -rf $RPM_BUILD_ROOT
125
126 %pretrans
127 # handle ocaml-findlib-1.6.2-{2,3} + ocaml-curses < 1.0.3-13 mess
128 [ -L %{_libdir}/ocaml/site-lib/libexec ] || rmdir %{_libdir}/ocaml/site-lib/libexec || :
129 [ -L %{_libdir}/ocaml/site-lib/stublibs ] || rmdir %{_libdir}/ocaml/site-lib/stublibs || :
130
131 %files
132 %defattr(644,root,root,755)
133 %doc doc/README LICENSE doc/*-html
134 %attr(755,root,root) %{_bindir}/ocamlfind
135 %attr(755,root,root) %{_bindir}/safe_camlp4
136 %config %{_sysconfdir}/ocamlfind.conf
137 %dir %{_libdir}/ocaml/findlib
138 %if %{with tk}
139 %attr(755,root,root) %{_libdir}/ocaml/findlib/make_wizard
140 %{_libdir}/ocaml/findlib/make_wizard.pattern
141 %endif
142 %{_libdir}/ocaml/findlib/Makefile.config
143 %{_libdir}/ocaml/findlib/findlib.cma
144 %{_libdir}/ocaml/findlib/findlib_dynload.cma
145 %{_libdir}/ocaml/findlib/findlib_top.cma
146 %if %{with ocaml_opt}
147 %attr(755,root,root) %{_libdir}/ocaml/findlib/findlib.cmxs
148 %attr(755,root,root) %{_libdir}/ocaml/findlib/findlib_dynload.cmxs
149 %attr(755,root,root) %{_libdir}/ocaml/findlib/findlib_top.cmxs
150 %endif
151 %{_libdir}/ocaml/site-lib/findlib
152 # symlinks
153 %{_libdir}/ocaml/site-lib/libexec
154 %{_libdir}/ocaml/site-lib/stublibs
155 # META files for base ocaml packages
156 %{_libdir}/ocaml/site-lib/bigarray
157 %{_libdir}/ocaml/site-lib/bytes
158 %{_libdir}/ocaml/site-lib/compiler-libs
159 %{_libdir}/ocaml/site-lib/dynlink
160 %{_libdir}/ocaml/site-lib/graphics
161 %{_libdir}/ocaml/site-lib/num
162 %{_libdir}/ocaml/site-lib/num-top
163 %{_libdir}/ocaml/site-lib/ocamldoc
164 %{_libdir}/ocaml/site-lib/stdlib
165 %{_libdir}/ocaml/site-lib/str
166 %{_libdir}/ocaml/site-lib/threads
167 %{_libdir}/ocaml/site-lib/unix
168 # camlp4 4.02 doesn't provide its META itself
169 %{_libdir}/ocaml/site-lib/camlp4
170 %{_mandir}/man1/ocamlfind.1*
171 %{_mandir}/man5/META.5*
172 %{_mandir}/man5/findlib.conf.5*
173 %{_mandir}/man5/site-lib.5*
174
175 %files devel
176 %defattr(644,root,root,755)
177 %{_libdir}/ocaml/findlib/findlib.cmi
178 %{_libdir}/ocaml/findlib/fl_*.cmi
179 %{_libdir}/ocaml/findlib/topfind.cmi
180 %if %{with ocaml_opt}
181 %{_libdir}/ocaml/findlib/findlib.a
182 %{_libdir}/ocaml/findlib/findlib.cmxa
183 %{_libdir}/ocaml/findlib/findlib_dynload.a
184 %{_libdir}/ocaml/findlib/findlib_dynload.cmxa
185 %{_libdir}/ocaml/findlib/findlib_top.a
186 %{_libdir}/ocaml/findlib/findlib_top.cmxa
187 %endif
188 %dir %{_libdir}/ocaml/num-top
189 %{_libdir}/ocaml/num-top/num_top.cma
190 %{_libdir}/ocaml/num-top/num_top*.cmi
191 %{_libdir}/ocaml/ocamlfind
192 %{_libdir}/ocaml/topfind
This page took 0.076804 seconds and 3 git commands to generate.