]> git.pld-linux.org Git - packages/protobuf.git/blame - protobuf.spec
- In order to make chromium work after logging to Google, applied
[packages/protobuf.git] / protobuf.spec
CommitLineData
f132b5a5 1# TODO:
079f482d 2# - add bindings for java (maven build)
d7b23517
ER
3#
4# Conditional build:
d7b23517 5%bcond_without python # Python bindings
079f482d 6%bcond_without tests # perform "make check"
b475afd2 7
f132b5a5
JR
8Summary: Protocol Buffers - Google's data interchange format
9Summary(pl.UTF-8): Protocol Buffers - format wymiany danych Google
10Name: protobuf
079f482d 11Version: 2.5.0
18e73e19 12Release: 2
f132b5a5
JR
13License: BSD
14Group: Libraries
380182ab 15#Source0Download: http://code.google.com/p/protobuf/downloads/list
f132b5a5 16Source0: http://protobuf.googlecode.com/files/%{name}-%{version}.tar.bz2
079f482d 17# Source0-md5: a72001a9067a4c2c4e0e836d0f92ece4
8e6a7c84 18Source1: ftdetect-proto.vim
0759da77 19Patch0: system-gtest.patch
f132b5a5 20URL: http://code.google.com/p/protobuf/
b475afd2
ER
21BuildRequires: autoconf
22BuildRequires: automake
99dd6ddb 23%{?with_tests:BuildRequires: gtest-devel}
e2ad8a47 24BuildRequires: libstdc++-devel
b475afd2 25BuildRequires: pkgconfig
0759da77 26BuildRequires: rpmbuild(macros) >= 1.219
b475afd2 27BuildRequires: zlib-devel
d7b23517 28%if %{with python}
71f28181 29BuildRequires: python-setuptools
d7b23517
ER
30BuildRequires: rpm-pythonprov
31%endif
f132b5a5
JR
32Requires: %{name}-libs = %{version}-%{release}
33BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
34
8e6a7c84
ER
35%define _vimdatadir %{_datadir}/vim
36
f132b5a5 37%description
b475afd2
ER
38Protocol Buffers are a way of encoding structured data in an efficient
39yet extensible format. Google uses Protocol Buffers for almost all of
40its internal RPC protocols and file formats.
41
42Protocol buffers are a flexible, efficient, automated mechanism for
380182ab 43serializing structured data - think XML, but smaller, faster, and
b475afd2
ER
44simpler. You define how you want your data to be structured once, then
45you can use special generated source code to easily write and read
46your structured data to and from a variety of data streams and using a
47variety of languages. You can even update your data structure without
48breaking deployed programs that are compiled against the "old" format.
49
50This package contains Protocol Buffers compiler for all programming
380182ab 51languages.
f132b5a5 52
c7c7fabc 53%description -l pl.UTF-8
380182ab
JB
54Bufory protokołowe (Protocol Buffers) to sposób kodowania danych
55strukturalnych w wydajny i rozszerzalny sposób. Google używa buforów
56protokołowych do prawie wszystkich wewnętrznych protokołów RPC i
57formatów plików.
58
c7c7fabc
JB
59Bufory protokołowe to elastyczny, wydajny i zautomatyzowany sposób
60serializacji danych strukturalnych - podobny do XML-a, ale mniejszy,
61szybszy i prostszy. Definiuje się raz, jaką strukturę mają mieć dane,
62a następnie używa specjalnie wygenerowanego kodu źródłowego do łatwego
63zapisu i odczytu danych strukturalnych do i z różnych strumieni
64danych, z poziomu różnych języków. Można nawet uaktualniać strukturę
65danych bez psucia programów skompilowanych w oparciu o "stary" format.
66
380182ab
JB
67Ten pakiet zawiera kompilator buforów protokołowych dla wszystkich
68języków programowania.
f132b5a5
JR
69
70%package libs
380182ab
JB
71Summary: Protocol Buffers library
72Summary(pl.UTF-8): Biblioteka buforów protokołowych (Protocol Buffers)
f132b5a5
JR
73Group: Libraries
74
75%description libs
380182ab 76Protocol Buffers library.
f132b5a5
JR
77
78%description libs -l pl.UTF-8
380182ab 79Biblioteka buforów protokołowych (Protocol Buffers).
f132b5a5 80
b475afd2 81%package lite
380182ab
JB
82Summary: Protocol Buffers LITE_RUNTIME library
83Summary(pl.UTF-8): Biblioteka LITE_RUNTIME buforów protokołowych (Protocol Buffers)
84Group: Libraries
b475afd2
ER
85
86%description lite
380182ab
JB
87Protocol Buffers library for programs built with optimize_for =
88LITE_RUNTIME.
b475afd2
ER
89
90The "optimize_for = LITE_RUNTIME" option causes the compiler to
91generate code which only depends libprotobuf-lite, which is much
92smaller than libprotobuf but lacks descriptors, reflection, and some
93other features.
94
380182ab
JB
95%description lite -l pl.UTF-8
96Biblioteka buforów protokołowych (Protocol Buffers) zbudowana dla
97programów z opcją optimize_for = LITE_RUNTIME.
98
99Opcja ta powoduje, że kompilator generuje kod, który wymaga tylko
100biblioteki libprotobuf-lite, która jest mniejsza niż libprotobuf, ale
101nie ma niektórych elementów, takich jak deskryptory czy refleksje.
102
f132b5a5 103%package devel
380182ab
JB
104Summary: Header files for Protocol Buffers libraries
105Summary(pl.UTF-8): Pliki nagłówkowe bibliotek buforów protokołowych (Protocol Buffers)
f132b5a5 106Group: Development/Libraries
b475afd2 107Requires: %{name} = %{version}-%{release}
f132b5a5 108Requires: %{name}-libs = %{version}-%{release}
55d381f3 109Requires: %{name}-lite = %{version}-%{release}
e2ad8a47 110Requires: libstdc++-devel
f132b5a5
JR
111
112%description devel
380182ab 113Header files for Protocol Buffers libraries.
f132b5a5
JR
114
115%description devel -l pl.UTF-8
380182ab 116Pliki nagłówkowe bibliotek buforów protokołowych (Protocol Buffers).
f132b5a5
JR
117
118%package static
380182ab
JB
119Summary: Static Protocol Buffers libraries
120Summary(pl.UTF-8): Statyczne biblioteki buforów protokołowych (Protocol Buffers)
f132b5a5
JR
121Group: Development/Libraries
122Requires: %{name}-devel = %{version}-%{release}
123
124%description static
380182ab 125Static Protocol Buffers libraries.
f132b5a5
JR
126
127%description static -l pl.UTF-8
380182ab 128Statyczne biblioteki buforów protokołowych (Protocol Buffers).
f132b5a5 129
d7b23517 130%package -n python-protobuf
380182ab
JB
131Summary: Python bindings for Protocol Buffers
132Summary(pl.UTF-8): Wiązania Pythona do buforów protokołowych (Protocol Buffers)
133Group: Development/Languages/Python
d7b23517
ER
134# does not use C++ library at this time
135Conflicts: %{name} < %{version}
136Conflicts: %{name} > %{version}
137
138%description -n python-protobuf
380182ab
JB
139Python bindings for Protocol Buffers.
140
141%description -n python-protobuf -l pl.UTF-8
142Wiązania Pythona do buforów protokołowych (Protocol Buffers).
d7b23517 143
8e6a7c84 144%package -n vim-syntax-protobuf
380182ab
JB
145Summary: Vim syntax highlighting for Protocol Buffers descriptions
146Summary(pl.UTF-8): Podświetlanie składni Vima dla opisów buforów protokołowych (Protocol Buffers)
8e6a7c84
ER
147Group: Development/Libraries
148Requires: vim-rt >= 4:7.2.170
149
150%description -n vim-syntax-protobuf
380182ab
JB
151This package contains syntax highlighting for Protocol Buffers
152descriptions in Vim editor.
153
154%description -n vim-syntax-protobuf -l pl.UTF-8
155Ten pakiet zawiera pliki podświetlania składni edytora Vim dla
156opisów buforów protokołowych (Protocol Buffers).
8e6a7c84 157
f132b5a5
JR
158%prep
159%setup -q
0759da77
ER
160%patch0 -p1
161%{__rm} -r gtest
f132b5a5
JR
162
163%build
0759da77
ER
164%{__aclocal} -I m4
165%{__autoconf}
0759da77 166%{__automake}
18e73e19
LM
167# Additional variables defined according to https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=192821
168%configure \
169 CFLAGS='-DGOOGLE_PROTOBUF_NO_RTTI' \
170 CPPFLAGS='-DGOOGLE_PROTOBUF_NO_RTTI'
f132b5a5
JR
171%{__make}
172
d7b23517
ER
173%if %{with python}
174cd python
175%{__python} setup.py build
176%{__sed} -i -e 1d build/lib/google/protobuf/descriptor_pb2.py
177cd ..
178%endif
179
99dd6ddb
ER
180%if %{with tests}
181%{__make} check
182%endif
183
f132b5a5
JR
184%install
185rm -rf $RPM_BUILD_ROOT
186install -d $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
187
188%{__make} install \
b475afd2
ER
189 STRIPBINARIES=no \
190 INSTALL="install -p" \
191 CPPROG="cp -p" \
f132b5a5
JR
192 DESTDIR=$RPM_BUILD_ROOT
193
8e6a7c84
ER
194install -d $RPM_BUILD_ROOT%{_vimdatadir}/{syntax,ftdetect}
195cp -p editors/proto.vim $RPM_BUILD_ROOT%{_vimdatadir}/syntax/proto.vim
196cp -p %{SOURCE1} $RPM_BUILD_ROOT%{_vimdatadir}/ftdetect/proto.vim
197
d7b23517
ER
198%if %{with python}
199cd python
200%{__python} setup.py install \
201 --root=$RPM_BUILD_ROOT \
202 --single-version-externally-managed \
203 --optimize=2
204%py_postclean
205cd ..
206%endif
207
b475afd2 208cp -p examples/* $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
f132b5a5
JR
209
210%clean
211rm -rf $RPM_BUILD_ROOT
212
b475afd2
ER
213%post -p /sbin/ldconfig
214%postun -p /sbin/ldconfig
215
f132b5a5
JR
216%post libs -p /sbin/ldconfig
217%postun libs -p /sbin/ldconfig
218
b475afd2
ER
219%post lite -p /sbin/ldconfig
220%postun lite -p /sbin/ldconfig
221
f132b5a5
JR
222%files
223%defattr(644,root,root,755)
224%doc CHANGES.txt CONTRIBUTORS.txt README.txt
225%attr(755,root,root) %{_bindir}/protoc
b475afd2 226%attr(755,root,root) %{_libdir}/libprotoc.so.*.*.*
079f482d 227%attr(755,root,root) %ghost %{_libdir}/libprotoc.so.8
f132b5a5
JR
228
229%files libs
230%defattr(644,root,root,755)
e5c615f2 231%attr(755,root,root) %{_libdir}/libprotobuf.so.*.*.*
079f482d 232%attr(755,root,root) %ghost %{_libdir}/libprotobuf.so.8
b475afd2
ER
233
234%files lite
235%defattr(644,root,root,755)
236%attr(755,root,root) %{_libdir}/libprotobuf-lite.so.*.*.*
079f482d 237%attr(755,root,root) %ghost %{_libdir}/libprotobuf-lite.so.8
f132b5a5
JR
238
239%files devel
240%defattr(644,root,root,755)
2d1bc323 241%attr(755,root,root) %{_libdir}/libprotobuf-lite.so
e5c615f2
JB
242%attr(755,root,root) %{_libdir}/libprotobuf.so
243%attr(755,root,root) %{_libdir}/libprotoc.so
2d1bc323 244%{_libdir}/libprotobuf-lite.la
e5c615f2
JB
245%{_libdir}/libprotobuf.la
246%{_libdir}/libprotoc.la
079f482d
JB
247# XXX: dir shared with libtcmalloc
248%dir %{_includedir}/google
249%{_includedir}/google/protobuf
2d1bc323 250%{_pkgconfigdir}/protobuf-lite.pc
251%{_pkgconfigdir}/protobuf.pc
079f482d 252%{_examplesdir}/%{name}-%{version}
f132b5a5
JR
253
254%files static
255%defattr(644,root,root,755)
2d1bc323 256%{_libdir}/libprotobuf-lite.a
e5c615f2
JB
257%{_libdir}/libprotobuf.a
258%{_libdir}/libprotoc.a
8e6a7c84 259
d7b23517
ER
260%if %{with python}
261%files -n python-protobuf
262%defattr(644,root,root,755)
263%doc python/README.txt
264%dir %{py_sitescriptdir}/google
265%{py_sitescriptdir}/google/protobuf
266%{py_sitescriptdir}/protobuf-%{version}-py*.egg-info
267%{py_sitescriptdir}/protobuf-%{version}-py*-nspkg.pth
268%endif
269
8e6a7c84
ER
270%files -n vim-syntax-protobuf
271%defattr(644,root,root,755)
272%{_datadir}/vim/ftdetect/proto.vim
273%{_datadir}/vim/syntax/proto.vim
This page took 0.097393 seconds and 4 git commands to generate.