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