1 # TODO: __pycache__ in python3-hivex
4 %bcond_without static_libs # don't build static libraries
5 %bcond_without python3 # CPython 3 module
6 %bcond_without ocaml_opt # skip building native optimized binaries (bytecode is always built)
8 %ifnarch %{ix86} %{x8664} arm aarch64 ppc sparc sparcv9
9 %undefine with_ocaml_opt
12 %include /usr/lib/rpm/macros.perl
13 Summary: Windows Registry "hive" extraction library
14 Summary(pl.UTF-8): Biblioteka do wydobywania danych z plików "hive" Rejestru Windows
20 Source0: http://libguestfs.org/download/hivex/%{name}-%{version}.tar.gz
21 # Source0-md5: a4c9cb138c0cb839759c54b59e52793f
22 URL: http://libguestfs.org/
23 BuildRequires: autoconf >= 2.50
24 BuildRequires: automake
25 BuildRequires: gettext-tools >= 0.17
26 BuildRequires: libtool
27 BuildRequires: libxml2-devel >= 2.0
29 BuildRequires: ocaml-findlib
30 BuildRequires: perl-ExtUtils-MakeMaker
31 BuildRequires: perl-IO-stringy
32 BuildRequires: perl-Test-Simple
33 BuildRequires: perl-base
34 BuildRequires: perl-tools-pod
35 BuildRequires: pkgconfig
36 BuildRequires: python >= 2
37 BuildRequires: python-devel >= 2
39 BuildRequires: python3 >= 1:3.2
40 BuildRequires: python3-devel >= 1:3.2
42 BuildRequires: readline-devel
43 BuildRequires: rpmbuild(macros) >= 1.527
44 BuildRequires: ruby-devel
45 BuildRequires: ruby-rake
46 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
49 Hivex is a library for extracting the contents of Windows Registry
50 "hive" files. It is designed to be secure against buggy or malicious
53 %description -l pl.UTF-8
54 Hivex to biblioteka do wydobywania zawartości plików "hive" Rejestru
55 Windows. Została zaprojektowana w celu ochrony przez błędnymi lub
56 niebezpiecznymi plikami rejestru.
59 Summary: Header files for hivex library
60 Summary(pl.UTF-8): Pliki nagłówkowe biblioteki hivex
61 Group: Development/Libraries
62 Requires: %{name} = %{version}-%{release}
65 Header files for hivex library.
67 %description devel -l pl.UTF-8
68 Pliki nagłówkowe biblioteki hivex.
71 Summary: Static hivex library
72 Summary(pl.UTF-8): Statyczna biblioteka hivex
73 Group: Development/Libraries
74 Requires: %{name}-devel = %{version}-%{release}
79 %description static -l pl.UTF-8
80 Statyczna biblioteka hivex.
82 %package -n ocaml-hivex
83 Summary: OCaml bindings for hivex library
84 Summary(pl.UTF-8): Wiązania OCamla do biblioteki hivex
86 Requires: %{name} = %{version}-%{release}
88 %description -n ocaml-hivex
89 OCaml bindings for hivex library.
91 %description -n ocaml-hivex -l pl.UTF-8
92 Wiązania OCamla do biblioteki hivex.
94 %package -n ocaml-hivex-devel
95 Summary: Development files for hivex OCaml bindings
96 Summary(pl.UTF-8): Pliki programistyczne wiązań OCamla do biblioteki hivex
97 Group: Development/Libraries
98 Requires: ocaml-hivex = %{version}-%{release}
100 %description -n ocaml-hivex-devel
101 Development files for hivex OCaml bindings.
103 %description -n ocaml-hivex-devel -l pl.UTF-8
104 Pliki programistyczne wiązań OCamla do biblioteki hivex.
106 %package -n perl-hivex
107 Summary: Perl bindings for hivex library
108 Summary(pl.UTF-8): Wiązania Perla do biblioteki hivex
109 Group: Development/Languages/Perl
110 Requires: %{name} = %{version}-%{release}
112 %description -n perl-hivex
113 Perl bindings for hivex library.
115 %description -n perl-hivex -l pl.UTF-8
116 Wiązania Perla do biblioteki hivex.
118 %package -n python-hivex
119 Summary: Python 2 bindings for hivex library
120 Summary(pl.UTF-8): Wiązania Pythona 2 do biblioteki hivex
121 Group: Development/Languages/Python
122 Requires: %{name} = %{version}-%{release}
124 %description -n python-hivex
125 Python 2 bindings for hivex library.
127 %description -n python-hivex -l pl.UTF-8
128 Wiązania Pythona 2 do biblioteki hivex.
130 %package -n python3-hivex
131 Summary: Python 3 bindings for hivex library
132 Summary(pl.UTF-8): Wiązania Pythona 3 do biblioteki hivex
133 Group: Development/Languages/Python
134 Requires: %{name} = %{version}-%{release}
136 %description -n python3-hivex
137 Python 3 bindings for hivex library.
139 %description -n python3-hivex -l pl.UTF-8
140 Wiązania Pythona 3 do biblioteki hivex.
142 %package -n ruby-hivex
143 Summary: Ruby bindings for hivex library
144 Summary(pl.UTF-8): Wiązania języka Ruby do biblioteki hivex
145 Group: Development/Languages
146 Requires: %{name} = %{version}-%{release}
148 %description -n ruby-hivex
149 Ruby bindings for hivex library.
151 %description -n ruby-hivex -l pl.UTF-8
152 Wiązania języka Ruby do biblioteki hivex.
166 PYTHON="%{__python3}" \
176 --disable-silent-rules \
177 %{__enable_disable static_libs static}
183 rm -rf $RPM_BUILD_ROOT
186 # lib is needed for relink on install
187 %{__make} -C build-py3/lib install \
188 DESTDIR=$RPM_BUILD_ROOT
189 %{__make} -C build-py3/python install \
190 DESTDIR=$RPM_BUILD_ROOT
191 %{__rm} $RPM_BUILD_ROOT%{py3_sitedir}/*.la
196 DESTDIR=$RPM_BUILD_ROOT
198 %{__rm} $RPM_BUILD_ROOT%{_libdir}/*.la \
199 $RPM_BUILD_ROOT%{py_sitedir}/*.la
201 %py_comp $RPM_BUILD_ROOT%{py_sitedir}
202 %py_ocomp $RPM_BUILD_ROOT%{py_sitedir}
208 rm -rf $RPM_BUILD_ROOT
210 %post -p /sbin/ldconfig
211 %postun -p /sbin/ldconfig
213 %files -f %{name}.lang
214 %defattr(644,root,root,755)
215 %doc ChangeLog README TODO
216 %attr(755,root,root) %{_bindir}/hivexget
217 %attr(755,root,root) %{_bindir}/hivexml
218 %attr(755,root,root) %{_bindir}/hivexsh
219 %attr(755,root,root) %{_libdir}/libhivex.so.*.*.*
220 %attr(755,root,root) %ghost %{_libdir}/libhivex.so.0
221 %{_mandir}/man1/hivexget.1*
222 %{_mandir}/man1/hivexml.1*
223 %{_mandir}/man1/hivexsh.1*
226 %defattr(644,root,root,755)
227 %attr(755,root,root) %{_libdir}/libhivex.so
228 %{_includedir}/hivex.h
229 %{_pkgconfigdir}/hivex.pc
230 %{_mandir}/man3/hivex.3*
232 %if %{with static_libs}
234 %defattr(644,root,root,755)
235 %{_libdir}/libhivex.a
238 %files -n ocaml-hivex
239 %defattr(644,root,root,755)
240 %attr(755,root,root) %{_libdir}/ocaml/stublibs/dllmlhivex.so
241 %{_libdir}/ocaml/stublibs/dllmlhivex.so.owner
243 %files -n ocaml-hivex-devel
244 %defattr(644,root,root,755)
245 %dir %{_libdir}/ocaml/hivex
246 %{_libdir}/ocaml/hivex/META
247 %{_libdir}/ocaml/hivex/hivex.cmi
248 %{_libdir}/ocaml/hivex/hivex.mli
249 %{_libdir}/ocaml/hivex/libmlhivex.a
250 %{_libdir}/ocaml/hivex/mlhivex.cma
251 %if %{with ocaml_opt}
252 %{_libdir}/ocaml/hivex/hivex.cmx
253 %{_libdir}/ocaml/hivex/mlhivex.a
254 %{_libdir}/ocaml/hivex/mlhivex.cmxa
258 %defattr(644,root,root,755)
259 %attr(755,root,root) %{_bindir}/hivexregedit
260 %dir %{perl_vendorarch}/Win
261 %dir %{perl_vendorarch}/Win/Hivex
262 %{perl_vendorarch}/Win/Hivex.pm
263 %{perl_vendorarch}/Win/Hivex/Regedit.pm
264 %dir %{perl_vendorarch}/auto/Win
265 %dir %{perl_vendorarch}/auto/Win/Hivex
266 %attr(755,root,root) %{perl_vendorarch}/auto/Win/Hivex/Hivex.so
267 %{_mandir}/man1/hivexregedit.1*
268 %{_mandir}/man3/Win::Hivex.3pm*
269 %{_mandir}/man3/Win::Hivex::Regedit.3pm*
271 %files -n python-hivex
272 %defattr(644,root,root,755)
273 %attr(755,root,root) %{py_sitedir}/libhivexmod.so
274 %dir %{py_sitedir}/hivex
275 %{py_sitedir}/hivex/*.py[co]
278 %files -n python3-hivex
279 %defattr(644,root,root,755)
280 %attr(755,root,root) %{py3_sitedir}/libhivexmod.cpython-*.so
285 %defattr(644,root,root,755)
286 %attr(755,root,root) %{ruby_vendorarchdir}/_hivex.so
287 %{ruby_vendorlibdir}/hivex.rb