]>
Commit | Line | Data |
---|---|---|
1 | # TODO: use system nickel (in src/plugins/ni) | |
2 | # | |
3 | # Conditonal build: | |
4 | %bcond_with full # "full" variant (libelektra-full with all plugins linked in) | |
5 | # | |
6 | Summary: A key/value pair database to store software configurations | |
7 | Summary(pl.UTF-8): Baza kluczy/wartości do przechowywania konfiguracji oprogramowania | |
8 | Name: elektra | |
9 | Version: 0.8.6 | |
10 | Release: 1 | |
11 | License: BSD | |
12 | Group: Applications/System | |
13 | Source0: http://www.libelektra.org/ftp/elektra/releases/%{name}-%{version}.tar.gz | |
14 | # Source0-md5: 4a59824e70a29295e9ef9ae7605d9299 | |
15 | Patch0: %{name}-elektraenv.patch | |
16 | URL: http://www.libelektra.org/ | |
17 | BuildRequires: cmake >= 2.6 | |
18 | BuildRequires: dbus-devel | |
19 | BuildRequires: doxygen | |
20 | BuildRequires: gettext-tools | |
21 | BuildRequires: libstdc++-devel | |
22 | BuildRequires: libxml2-devel | |
23 | BuildRequires: libxslt-progs | |
24 | BuildRequires: pkgconfig | |
25 | %{?with_python:BuildRequires: python-devel} | |
26 | BuildRequires: yajl-devel | |
27 | Requires: %{name}-libs = %{version}-%{release} | |
28 | Requires: mktemp | |
29 | Obsoletes: registry | |
30 | BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) | |
31 | ||
32 | %description | |
33 | The Elektra Project provides a framework to store generic | |
34 | configuration data in an hierarchical key-value pair database, instead | |
35 | of a human-readable only text file. | |
36 | ||
37 | This way any software can read/save his configuration using a | |
38 | consistent API. Also, applications can be aware of other applications | |
39 | configurations, leveraging easy application integration. | |
40 | ||
41 | %description -l pl.UTF-8 | |
42 | Projekt Elektra dostarcza szkielet do przechowywania typowych danych | |
43 | konfiguracyjnych w postaci klucz-wartość w hierarchicznej bazie | |
44 | danych, zamiast w pliku tekstowym czytelnym tylko dla człowieka. | |
45 | ||
46 | W ten sposób oprogramowanie może odczytywać/zapisywać konfigurację za | |
47 | pomocą spójnego API. Dodatkowo aplikacje mogą być zorientowane w | |
48 | konfiguracji innych aplikacji, ułatwiając ich integrację. | |
49 | ||
50 | %package libs | |
51 | Summary: Elektra Project libraries | |
52 | Summary(pl.UTF-8): Biblioteki projektu Elektra | |
53 | Group: Libraries | |
54 | Obsoletes: elektra-cpp < 0.8 | |
55 | Conflicts: elektra < 0.7 | |
56 | ||
57 | %description libs | |
58 | The Elektra Project provides a framework to store generic | |
59 | configuration data in an hierarchical key-value pair database, instead | |
60 | of a human-readable only text file. | |
61 | ||
62 | This way any software can read/save his configuration using a | |
63 | consistent API. Also, applications can be aware of other applications | |
64 | configurations, leveraging easy application integration. | |
65 | ||
66 | This package contains Elektra shared libraries. | |
67 | ||
68 | %description libs -l pl.UTF-8 | |
69 | Projekt Elektra dostarcza szkielet do przechowywania typowych danych | |
70 | konfiguracyjnych w postaci klucz-wartość w hierarchicznej bazie | |
71 | danych, zamiast w pliku tekstowym czytelnym tylko dla człowieka. | |
72 | ||
73 | W ten sposób oprogramowanie może odczytywać/zapisywać konfigurację za | |
74 | pomocą spójnego API. Dodatkowo aplikacje mogą być zorientowane w | |
75 | konfiguracji innych aplikacji, ułatwiając ich integrację. | |
76 | ||
77 | Ten pakiet zawiera biblioteki współdzielone Elektry. | |
78 | ||
79 | %package devel | |
80 | Summary: Include files and API documentation for Elektra Project | |
81 | Summary(pl.UTF-8): Pliki nagłówkowe i dokumentacja API projektu Elektra | |
82 | Group: Development/Libraries | |
83 | Requires: %{name}-libs = %{version}-%{release} | |
84 | ||
85 | %description devel | |
86 | This package contains the include files and API manual pages to use | |
87 | the Elektra API in C. | |
88 | ||
89 | %description devel -l pl.UTF-8 | |
90 | Ten pakiet zawiera pliki nagłówkowe oraz strony podręcznika | |
91 | systemowego opisującego sposób użycia API Elektry w C. | |
92 | ||
93 | %package static | |
94 | Summary: Static libraries for Elektra Project | |
95 | Summary(pl.UTF-8): Statyczne biblioteki projektu Elektra | |
96 | Group: Development/Libraries | |
97 | Requires: %{name}-devel = %{version}-%{release} | |
98 | ||
99 | %description static | |
100 | This package contains static libraries for Elektra Project. | |
101 | ||
102 | %description static -l pl.UTF-8 | |
103 | Ten pakiet zawiera statyczne biblioteki projektu Elektra. | |
104 | ||
105 | %package cpp-devel | |
106 | Summary: Header files of C++ interface for Elektra library | |
107 | Summary(pl.UTF-8): Pliki nagłówkowe interfejsu C++ do biblioteki Elektra | |
108 | Group: Development/Libraries | |
109 | Requires: %{name}-devel = %{version}-%{release} | |
110 | Requires: libstdc++-devel | |
111 | Obsoletes: elektra-cpp-static < 0.8 | |
112 | ||
113 | %description cpp-devel | |
114 | Header files of C++ interface for Elektra library. | |
115 | ||
116 | %description cpp-devel -l pl.UTF-8 | |
117 | Pliki nagłówkowe interfejsu C++ do biblioteki Elektra. | |
118 | ||
119 | %prep | |
120 | %setup -q | |
121 | %patch0 -p1 | |
122 | ||
123 | %build | |
124 | install -d build | |
125 | cd build | |
126 | %cmake .. \ | |
127 | %{!?with_full:-DBUILD_FULL=OFF} \ | |
128 | -DPLUGINS=ALL \ | |
129 | -DTARGET_CMAKE_FOLDER=%{_datadir}/cmake/Modules | |
130 | ||
131 | %{__make} -j1 | |
132 | ||
133 | %install | |
134 | rm -rf $RPM_BUILD_ROOT | |
135 | install -d $RPM_BUILD_ROOT/etc/sysconfig | |
136 | ||
137 | %{__make} -C build install \ | |
138 | DESTDIR=$RPM_BUILD_ROOT | |
139 | ||
140 | echo 'RUN="no"' > $RPM_BUILD_ROOT/etc/sysconfig/elektra | |
141 | install -D scripts/elektraenv.sh $RPM_BUILD_ROOT/etc/profile.d/elektraenv.sh | |
142 | install -D src/plugins/xmltool/xmlschema/elektra.xsd $RPM_BUILD_ROOT%{_datadir}/sgml/elektra/elektra.xsd | |
143 | ||
144 | # just tests | |
145 | %{__rm} -r $RPM_BUILD_ROOT%{_prefix}/lib/elektra/tool_exec \ | |
146 | $RPM_BUILD_ROOT%{_datadir}/elektra/test_data | |
147 | ||
148 | # prepare docs | |
149 | %{__rm} -rf installed-doc | |
150 | install -d installed-doc | |
151 | %{__mv} $RPM_BUILD_ROOT%{_docdir}/%{name}-api installed-doc/elektra-api | |
152 | ||
153 | # "static" variant (with libelektra-static and thus all plugins linked in); | |
154 | # we don't need it | |
155 | %{__rm} $RPM_BUILD_ROOT%{_bindir}/kdb-static | |
156 | ||
157 | %clean | |
158 | rm -rf $RPM_BUILD_ROOT | |
159 | ||
160 | %post libs -p /sbin/ldconfig | |
161 | %postun libs -p /sbin/ldconfig | |
162 | ||
163 | %files | |
164 | %defattr(644,root,root,755) | |
165 | %doc doc/{AUTHORS,CHANGES,COPYING,DESIGN,GOALS,NEWS,README,SECURITY,SPECIFICATION,todo} | |
166 | # doc/standards installed-doc/scripts | |
167 | %attr(755,root,root) %{_bindir}/kdb | |
168 | %if %{with full} | |
169 | %attr(755,root,root) %{_bindir}/kdb-full | |
170 | %endif | |
171 | %dir %{_libdir}/elektra | |
172 | %attr(755,root,root) %{_libdir}/elektra/libelektra-ccode.so | |
173 | # R: dbus | |
174 | %attr(755,root,root) %{_libdir}/elektra/libelektra-dbus.so | |
175 | %attr(755,root,root) %{_libdir}/elektra/libelektra-doc.so | |
176 | %attr(755,root,root) %{_libdir}/elektra/libelektra-dump.so | |
177 | %attr(755,root,root) %{_libdir}/elektra/libelektra-error.so | |
178 | %attr(755,root,root) %{_libdir}/elektra/libelektra-fstab.so | |
179 | %attr(755,root,root) %{_libdir}/elektra/libelektra-glob.so | |
180 | %attr(755,root,root) %{_libdir}/elektra/libelektra-hexcode.so | |
181 | %attr(755,root,root) %{_libdir}/elektra/libelektra-hidden.so | |
182 | %attr(755,root,root) %{_libdir}/elektra/libelektra-hosts.so | |
183 | %attr(755,root,root) %{_libdir}/elektra/libelektra-iconv.so | |
184 | %attr(755,root,root) %{_libdir}/elektra/libelektra-network.so | |
185 | %attr(755,root,root) %{_libdir}/elektra/libelektra-ni.so | |
186 | %attr(755,root,root) %{_libdir}/elektra/libelektra-null.so | |
187 | %attr(755,root,root) %{_libdir}/elektra/libelektra-path.so | |
188 | %attr(755,root,root) %{_libdir}/elektra/libelektra-resolver.so | |
189 | %attr(755,root,root) %{_libdir}/elektra/libelektra-simpleini.so | |
190 | %attr(755,root,root) %{_libdir}/elektra/libelektra-struct.so | |
191 | %attr(755,root,root) %{_libdir}/elektra/libelektra-success.so | |
192 | %attr(755,root,root) %{_libdir}/elektra/libelektra-syslog.so | |
193 | %attr(755,root,root) %{_libdir}/elektra/libelektra-tcl.so | |
194 | %attr(755,root,root) %{_libdir}/elektra/libelektra-template.so | |
195 | %attr(755,root,root) %{_libdir}/elektra/libelektra-timeofday.so | |
196 | %attr(755,root,root) %{_libdir}/elektra/libelektra-tracer.so | |
197 | %attr(755,root,root) %{_libdir}/elektra/libelektra-type.so | |
198 | %attr(755,root,root) %{_libdir}/elektra/libelektra-uname.so | |
199 | %attr(755,root,root) %{_libdir}/elektra/libelektra-validation.so | |
200 | # R: libxml2 | |
201 | %attr(755,root,root) %{_libdir}/elektra/libelektra-xmltool.so | |
202 | # R: yajl | |
203 | %attr(755,root,root) %{_libdir}/elektra/libelektra-yajl.so | |
204 | %attr(755,root,root) /etc/profile.d/elektraenv.sh | |
205 | %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/elektra | |
206 | %{_datadir}/sgml/elektra | |
207 | ||
208 | %files libs | |
209 | %defattr(644,root,root,755) | |
210 | %attr(755,root,root) %{_libdir}/libelektra.so.*.*.* | |
211 | %attr(755,root,root) %ghost %{_libdir}/libelektra.so.4 | |
212 | %attr(755,root,root) %{_libdir}/libelektratools.so | |
213 | %if %{with full} | |
214 | %attr(755,root,root) %{_libdir}/libelektra-full.so.*.*.* | |
215 | %attr(755,root,root) %ghost %{_libdir}/libelektra-full.so.4 | |
216 | %endif | |
217 | ||
218 | %files devel | |
219 | %defattr(644,root,root,755) | |
220 | %doc installed-doc/elektra-api/* | |
221 | %attr(755,root,root) %{_libdir}/libelektra.so | |
222 | %if %{with full} | |
223 | %attr(755,root,root) %{_libdir}/libelektra-full.so | |
224 | %endif | |
225 | %dir %{_includedir}/elektra | |
226 | %{_includedir}/elektra/*.h | |
227 | %{_pkgconfigdir}/elektra.pc | |
228 | %{_datadir}/cmake/Modules/FindElektra.cmake | |
229 | %{_mandir}/man3/deprecated.3elektra* | |
230 | %{_mandir}/man3/kdb*.3elektra* | |
231 | %{_mandir}/man3/key*.3elektra* | |
232 | %{_mandir}/man3/plugin.3elektra* | |
233 | ||
234 | %files static | |
235 | %defattr(644,root,root,755) | |
236 | %{_libdir}/libelektra-static.a | |
237 | %{_libdir}/libelektratools-static.a | |
238 | ||
239 | %files cpp-devel | |
240 | %defattr(644,root,root,755) | |
241 | %{_includedir}/elektra/*.hpp | |
242 | # libelektratools API man pages | |
243 | %{_mandir}/man3/backend.hpp.3elektra* | |
244 | %{_mandir}/man3/backends.hpp.3elektra* | |
245 | %{_mandir}/man3/modules.cpp.3elektra* | |
246 | %{_mandir}/man3/modules.hpp.3elektra* | |
247 | %{_mandir}/man3/plugin.cpp.3elektra* | |
248 | %{_mandir}/man3/plugin.hpp.3elektra* | |
249 | %{_mandir}/man3/plugins.cpp.3elektra* | |
250 | %{_mandir}/man3/plugins.hpp.3elektra* | |
251 | %{_mandir}/man3/src_backend.cpp.3elektra* | |
252 | %{_mandir}/man3/toolexcept.hpp.3elektra* |