3 %bcond_without static_libs # static library
5 %bcond_with golang # Go binding [only gccgo build is supported]
6 %bcond_without java # Java binding
7 %bcond_without python # Python binding
8 %bcond_without ruby # Ruby binding
10 Summary: Cryptographic library for EAC version 2
11 Summary(pl.UTF-8): Biblioteka kryptograficzna do EAC v2
17 #Source0Download: https://github.com/frankmorgner/openpace/releases
18 Source0: https://github.com/frankmorgner/openpace/archive/%{version}/%{name}-%{version}.tar.gz
19 # Source0-md5: 55f22686b89026fd40f60358cc2247d0
20 Patch0: %{name}-optflags.patch
21 Patch1: %{name}-ruby.patch
23 URL: https://frankmorgner.github.io/openpace/
24 BuildRequires: autoconf >= 2.67
25 BuildRequires: automake
26 BuildRequires: doxygen
27 %{?with_golang:BuildRequires: gcc-go}
28 BuildRequires: gengetopt
29 BuildRequires: help2man
30 %{?with_java:BuildRequires: jdk}
31 BuildRequires: libtool
32 BuildRequires: openssl-devel >= 1.0.2
33 BuildRequires: pkgconfig
34 %{?with_python:BuildRequires: python-devel >= 2}
35 %{?with_ruby:BuildRequires: ruby-devel}
36 BuildRequires: sphinx-pdg
38 %{?with_python:BuildRequires: swig-python}
39 %{?with_ruby:BuildRequires: swig-ruby}
40 Requires: openssl >= 1.0.2
41 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
44 Cryptographic library for EAC version 2.
46 %description -l pl.UTF-8
47 Biblioteka kryptograficzna do EAC v2.
50 Summary: Header files for OpenPACE library
51 Summary(pl.UTF-8): Pliki nagłówkowe biblioteki OpenPACE
52 Group: Development/Libraries
53 Requires: %{name} = %{version}-%{release}
54 Requires: openssl-devel >= 1.0.2
57 Header files for OpenPACE library.
59 %description devel -l pl.UTF-8
60 Pliki nagłówkowe biblioteki OpenPACE.
63 Summary: Static OpenPACE library
64 Summary(pl.UTF-8): Statyczna biblioteka OpenPACE
65 Group: Development/Libraries
66 Requires: %{name}-devel = %{version}-%{release}
69 Static OpenPACE library.
71 %description static -l pl.UTF-8
72 Statyczna biblioteka OpenPACE.
75 Summary: API documentation for OpenPACE library
76 Summary(pl.UTF-8): Dokumentacja API biblioteki OpenPACE
81 API documentation for OpenPACE library.
83 %description apidocs -l pl.UTF-8
84 Dokumentacja API biblioteki OpenPACE.
86 %package -n golang-openpace
87 Summary: Go language binding for OpenPACE library
88 Summary(pl.UTF-8): Wiązania języka Go do biblioteki OpenPACE
89 Group: Development/Languages
90 Requires: %{name} = %{version}-%{release}
92 %description -n golang-openpace
93 Go language binding for OpenPACE library.
95 %description -n golang-openpace -l pl.UTF-8
96 Wiązania języka Go do biblioteki OpenPACE.
98 %package -n java-openpace
99 Summary: Java binding for OpenPACE library
100 Summary(pl.UTF-8): Wiązania Javy do biblioteki OpenPACE
101 Group: Development/Languages/Java
102 Requires: %{name} = %{version}-%{release}
105 %description -n java-openpace
106 Java binding for OpenPACE library.
108 %description -n java-openpace -l pl.UTF-8
109 Wiązania Javy do biblioteki OpenPACE.
111 %package -n python-openpace
112 Summary: Python binding for OpenPACE library
113 Summary(pl.UTF-8): Wiązania Pythona do biblioteki OpenPACE
114 Group: Development/Languages/Python
115 Requires: %{name} = %{version}-%{release}
116 Requires: python-modules
118 %description -n python-openpace
119 Python binding for OpenPACE library.
121 %description -n python-openpace -l pl.UTF-8
122 Wiązania Pythona do biblioteki OpenPACE.
124 %package -n ruby-openpace
125 Summary: Ruby binding for OpenPACE library
126 Summary(pl.UTF-8): Wiązania języka Ruby do biblioteki OpenPACE
127 Group: Development/Languages
128 Requires: %{name} = %{version}-%{release}
131 %description -n ruby-openpace
132 Ruby binding for OpenPACE library.
134 %description -n ruby-openpace -l pl.UTF-8
135 Wiązania języka Ruby do biblioteki OpenPACE.
144 %{__rm} -r docs/_static/{bootstrap-2.3.2,bootswatch-2.3.2}
155 %{?with_golang:--enable-go} \
156 %{?with_java:--enable-java} \
157 %{?with_python:--enable-python} \
158 %{?with_ruby:--enable-ruby} \
159 --disable-silent-rules \
160 %{!?with_static_libs:--disable-static}
165 rm -rf $RPM_BUILD_ROOT
168 DESTDIR=$RPM_BUILD_ROOT
171 %{__rm} $RPM_BUILD_ROOT%{_bindir}/example
172 %{__rm} docs/_static/Makefile*
173 # obsoleted by pkg-config
174 %{__rm} $RPM_BUILD_ROOT%{_libdir}/lib*eac.la
176 %{__rm} -r $RPM_BUILD_ROOT%{_docdir}/openpace
179 %py_ocomp $RPM_BUILD_ROOT%{py_sitedir}
184 rm -rf $RPM_BUILD_ROOT
186 %post -p /sbin/ldconfig
187 %postun -p /sbin/ldconfig
190 %defattr(644,root,root,755)
191 %attr(755,root,root) %{_bindir}/cvc-create
192 %attr(755,root,root) %{_bindir}/cvc-print
193 %attr(755,root,root) %{_bindir}/eactest
194 %attr(755,root,root) %{_libdir}/libeac.so.*.*.*
195 %attr(755,root,root) %ghost %{_libdir}/libeac.so.3
196 %dir %{_sysconfdir}/eac
197 %dir %{_sysconfdir}/eac/cvc
198 %{_sysconfdir}/eac/cvc/DECVC*
199 %dir %{_sysconfdir}/eac/x509
200 %{_sysconfdir}/eac/x509/*
201 %{_mandir}/man1/cvc-create.1*
202 %{_mandir}/man1/cvc-print.1*
205 %defattr(644,root,root,755)
206 %attr(755,root,root) %{_libdir}/libeac.so
208 %{_pkgconfigdir}/libeac.pc
210 %if %{with static_libs}
212 %defattr(644,root,root,755)
217 %defattr(644,root,root,755)
218 %doc docs/{_static,*.html,*.js}
221 %files -n golang-openpace
222 %defattr(644,root,root,755)
223 %attr(755,root,root) %{_libdir}/libgeac.so.*.*.*
224 %attr(755,root,root) %ghost %{_libdir}/libgeac.so.0
225 %attr(755,root,root) %{_libdir}/libgeac.so
229 %files -n java-openpace
230 %defattr(644,root,root,755)
231 %attr(755,root,root) %{_libdir}/libjeac.so.*.*.*
232 %attr(755,root,root) %ghost %{_libdir}/libjeac.so.0
233 %attr(755,root,root) %{_libdir}/libjeac.so
234 %dir %{_datadir}/openpace
235 %{_datadir}/openpace/java
239 %files -n python-openpace
240 %defattr(644,root,root,755)
241 %attr(755,root,root) %{_bindir}/cvc_rehash
242 %attr(755,root,root) %{py_sitedir}/_eac.so
243 %{py_sitedir}/chat.py[co]
244 %{py_sitedir}/eac.py[co]
245 %{py_sitedir}/pace_entity.py[co]
246 %{py_sitedir}/OpenPACE-%{version}-py*.egg-info
250 %files -n ruby-openpace
251 %defattr(644,root,root,755)
252 %attr(755,root,root) %{ruby_vendorarchdir}/eac.so