]> git.pld-linux.org Git - packages/xen.git/blame_incremental - xen.spec
Set /local/domain/0/domid on xenstored start
[packages/xen.git] / xen.spec
... / ...
CommitLineData
1#
2# TODO:
3# - check if other tools/libs are not usable in domU, move them to -guest
4# packages if so
5# - pass bconds to qemu configure script (tricky, as the script is called from
6# Xen Makefiles)
7# - fix %doc - some files are installed in docdir both by make install and %d,
8# other are installed once
9#
10# Conditional build:
11%bcond_without qemu_traditional # without qemu-xen-traditional
12%bcond_without opengl # OpenGL support in Xen qemu
13%bcond_without sdl # SDL support in Xen qemu
14%bcond_without bluetooth # bluetooth support in Xen qemu
15%bcond_without brlapi # brlapi support in Xen qemu
16%bcond_without ocaml # Ocaml libraries for Xen tools
17%bcond_without efi # EFI hypervisor
18%bcond_without hypervisor # Xen hypervisor build
19%bcond_without stubdom # stubdom build
20%bcond_without xsm # XSM security module (by default, Flask)
21%bcond_without blktap1 # blktap1 support
22%bcond_without xend # include the obsolete xend & xm
23
24%ifnarch %{x8664} arm
25%undefine with_hypervisor
26%endif
27%ifnarch %{x8664}
28%undefine with_efi
29%endif
30%ifnarch %{ix86} %{x8664}
31%undefine with_stubdom
32%endif
33
34# from Config.mk:
35%define seabios_version 1.6.3.2
36
37# from ./stubdom/configure.ac
38%define polarssl_version 1.1.4
39%define tpm_emulator_version 0.7.4
40%define gmp_version 4.3.2
41
42%define xen_extfiles_url http://xenbits.xensource.com/xen-extfiles
43Summary: Xen - a virtual machine monitor
44Summary(pl.UTF-8): Xen - monitor maszyny wirtualnej
45Name: xen
46Version: 4.4.0
47Release: 0.1
48License: GPL v2, interface parts on BSD-like
49Group: Applications/System
50Source0: http://bits.xensource.com/oss-xen/release/%{version}/%{name}-%{version}.tar.gz
51# Source0-md5: fd9031d499af38c5d04108681734027e
52# used by stubdoms
53Source10: %{xen_extfiles_url}/lwip-1.3.0.tar.gz
54# Source10-md5: 36cc57650cffda9a0269493be2a169bb
55Source11: %{xen_extfiles_url}/newlib-1.16.0.tar.gz
56# Source11-md5: bf8f1f9e3ca83d732c00a79a6ef29bc4
57Source12: %{xen_extfiles_url}/zlib-1.2.3.tar.gz
58# Source12-md5: debc62758716a169df9f62e6ab2bc634
59Source13: %{xen_extfiles_url}/pciutils-2.2.9.tar.bz2
60# Source13-md5: cec05e7785497c5e19da2f114b934ffd
61Source14: %{xen_extfiles_url}/grub-0.97.tar.gz
62# Source14-md5: cd3f3eb54446be6003156158d51f4884
63Source15: http://xenbits.xen.org/xen-extfiles/ipxe-git-9a93db3f0947484e30e753bbd61a10b17336e20e.tar.gz
64# Source15-md5: 7496268cebf47d5c9ccb0696e3b26065
65# http://xenbits.xen.org/git-http/seabios.git/
66# git archive --prefix=tools/firmware/seabios/ --format=tar rel-%{seabios_version} | xz > seabios-%{seabios_version}.tar.xz
67Source16: seabios-%{seabios_version}.tar.xz
68# Source16-md5: 145e07ff5618a3999f94f2e830d06b05
69Source17: %{xen_extfiles_url}/polarssl-%{polarssl_version}-gpl.tgz
70# Source17-md5: 7b72caf22b01464ee7d6165f2fd85f44
71Source18: http://xenbits.xen.org/xen-extfiles/tpm_emulator-%{tpm_emulator_version}.tar.gz
72# Source18-md5: e26becb8a6a2b6695f6b3e8097593db8
73Source19: ftp://ftp.gmplib.org/pub/gmp-%{gmp_version}/gmp-%{gmp_version}.tar.bz2
74# Source19-md5: dd60683d7057917e34630b4a787932e8
75Source30: proc-xen.mount
76Source31: var-lib-xenstored.mount
77Source32: blktapctrl.service
78Source33: blktapctrl.sysconfig
79Source34: xenconsoled.service
80Source35: xenconsoled.sysconfig
81Source36: xenstored.service
82Source37: xenstored.sysconfig
83Source38: xenstored.tmpfiles
84Source39: xend.service
85Source40: xend.tmpfiles
86Source41: xen-watchdog.service
87Source42: xen-dom0-modules-load.conf
88Source43: xendomains.sh
89Source44: xendomains.service
90# sysvinit scripts
91Source50: xend.init
92Source51: xenconsoled.init
93Source52: xenstored.init
94Source53: xen-watchdog.init
95Source54: xendomains.init
96Source55: xen.logrotate
97Source56: xen.tmpfiles
98Source57: xen.cfg
99Source58: xen.efi-boot-update
100Source59: vif-openvswitch
101Source60: xen-init-list
102Source61: xen-toolstack
103Patch0: %{name}-python_scripts.patch
104Patch1: %{name}-symbols.patch
105Patch2: %{name}-curses.patch
106Patch3: pygrubfix.patch
107Patch4: xend.catchbt.patch
108Patch5: xend-pci-loop.patch
109Patch6: %{name}-dumpdir.patch
110# Warning: this disables ingress filtering implemented in xen scripts!
111Patch7: %{name}-net-disable-iptables-on-bridge.patch
112Patch8: %{name}-configure-xend.patch
113Patch10: %{name}-qemu.patch
114Patch11: %{name}-ulong.patch
115Patch12: %{name}-doc.patch
116Patch13: %{name}-paths.patch
117Patch14: %{name}-no_fetcher.patch
118Patch15: odd-glib2-fix.patch
119URL: http://www.xen.org/products/xenhyp.html
120%if %{with qemu_traditional}
121%{?with_opengl:BuildRequires: OpenGL-devel}
122%{?with_sdl:BuildRequires: SDL-devel >= 1.2.1}
123%endif
124%ifarch %{ix86} %{x8664}
125BuildRequires: acpica
126BuildRequires: autoconf
127BuildRequires: bcc
128BuildRequires: bin86
129%endif
130%if %{with qemu_traditional}
131%{?with_bluetooth:BuildRequires: bluez-libs-devel}
132%{?with_brlapi:BuildRequires: brlapi-devel}
133%endif
134%{?with_efi:BuildRequires: binutils >= 3:2.23.51.0.3-2}
135BuildRequires: bzip2-devel
136BuildRequires: curl-devel
137BuildRequires: cyrus-sasl-devel >= 2
138%if %{with xsm}
139BuildRequires: checkpolicy
140%endif
141BuildRequires: e2fsprogs-devel
142BuildRequires: gcc >= 6:4.1
143BuildRequires: gettext-devel
144BuildRequires: glib2-devel >= 1:2.12
145BuildRequires: glusterfs-devel >= 3.4
146BuildRequires: gnutls-devel
147BuildRequires: keyutils-devel
148BuildRequires: latex2html >= 2008
149BuildRequires: libaio-devel
150BuildRequires: libcap-devel
151BuildRequires: libcap-ng-devel
152BuildRequires: libiscsi-devel
153BuildRequires: libjpeg-devel
154BuildRequires: libpng-devel
155BuildRequires: libseccomp-devel >= 1.0.0
156BuildRequires: libuuid-devel
157BuildRequires: lzo-devel >= 2
158BuildRequires: ncurses-devel
159%if %{with ocaml}
160BuildRequires: ocaml >= 3.04-7
161BuildRequires: ocaml-findlib
162%endif
163BuildRequires: nss-devel >= 3.12.8
164BuildRequires: openssl-devel
165BuildRequires: pciutils-devel
166BuildRequires: perl-base
167BuildRequires: perl-tools-pod
168BuildRequires: pixman-devel
169BuildRequires: pkgconfig
170BuildRequires: python-devel
171BuildRequires: rpm-pythonprov
172BuildRequires: rpmbuild(macros) >= 1.647
173BuildRequires: texi2html
174BuildRequires: texlive-dvips
175BuildRequires: texlive-latex-psnfss
176BuildRequires: texlive-xetex
177BuildRequires: transfig
178BuildRequires: usbredir-devel >= 0.5.3
179BuildRequires: vde2-devel
180BuildRequires: which
181# for xfsctl (<xfs/xfs.h>)
182BuildRequires: xfsprogs-devel
183%if %{with qemu_traditional}
184BuildRequires: xorg-lib-libX11-devel
185BuildRequires: xorg-lib-libXext-devel
186%endif
187BuildRequires: xz-devel
188BuildRequires: yajl-devel
189BuildRequires: zlib-devel
190%if %{with qemu_traditional}
191# FIXME: see qemu configure comments on top of spec
192%{!?with_opengl:BuildConflicts: OpenGL-devel}
193%{!?with_sdl:BuildConflicts: SDL-devel}
194%{!?with_sdl:BuildConflicts: SDL-devel}
195%{!?with_bluetooth:BuildConflicts: bluez-libs-devel}
196%{!?with_brlapi:BuildConflicts: brlapi-devel}
197%endif
198Requires(post,preun): /sbin/chkconfig
199Requires(post,preun,postun): systemd-units >= 38
200Requires: %{name}-libs = %{version}-%{release}
201Requires: ZopeInterface
202Requires: bridge-utils
203Requires: coreutils
204Requires: diffutils
205Requires: gawk
206Requires: iptables
207Requires: losetup
208Requires: net-tools
209Requires: python-%{name} = %{version}-%{release}
210Requires: rc-scripts
211Requires: sed
212Requires: systemd-units >= 38
213Requires: util-linux
214Requires: which
215Requires: %{name}-guest = %{version}-%{release}
216Obsoletes: xen-doc
217Obsoletes: xen-udev
218ExclusiveArch: %{ix86} %{x8664} arm
219%ifarch %{ix86} %{x8664}
220# for HVM
221Suggests: qemu-system-x86
222%endif
223BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
224
225# some PPC/SPARC boot images in ELF format
226%define _noautostrip .*%{_datadir}/\\(xen\\|qemu-xen\\)/qemu/\\(openbios-.*\\|palcode-clipper\\|s390-ccw.img\\)
227
228%description
229This package contains the Xen hypervisor and Xen tools, needed to run
230virtual machines on x86 systems, together with the kernel-xen*
231packages. Information on how to use Xen can be found at the Xen
232project pages.
233
234Virtualisation can be used to run multiple versions or multiple Linux
235distributions on one system, or to test untrusted applications in a
236sandboxed environment. Note that the Xen technology is still in
237development, and this RPM has received extremely little testing. Don't
238be surprised if this RPM eats your data, drinks your coffee or makes
239fun of you in front of your friends.
240
241%description -l pl.UTF-8
242Ten pakiet zawiera nadzorcę oraz narzędzia Xen, potrzebne do
243uruchamiania wirtualnych maszyn w systemach x86, wraz z pakietami
244kernel-xen*. Informacje jak używać Xena można znaleźć na stronach
245projektu.
246
247Wirtualizacja może być używana do uruchamiania wielu wersji lub wielu
248dystrybucji Linuksa na jednym systemie lub do testowania nie zaufanych
249aplikacji w odizolowanym środowisku. Należy zauważyć, że technologia
250Xen jest ciągle rozwijana, a ten RPM był słabo testowany. Nie należy
251być zdziwionym, jeśli ten pakiet zje dane, wypije całą kawę czy będzie
252się wyśmiewał w obecności przyjaciół.
253
254%package guest
255Summary: Xen tools for virtual machines
256Summary(pl.UTF-8): Narzędzia Xen dla maszyn virtualnych
257Group: Applications/System
258Requires: %{name}-libs-guest = %{version}-%{release}
259
260%description guest
261Xen utilities for both dom0 and domU virtual domains.
262
263%description guest -l pl.UTF-8
264Narzędzia Xena dla maszyn wirtualnych dom0 i domU.
265
266%package libs
267Summary: Xen libraries
268Summary(pl.UTF-8): Biblioteki Xena
269Group: Libraries
270Requires: %{name}-libs-guest = %{version}-%{release}
271
272%description libs
273Xen libraries.
274
275%description libs -l pl.UTF-8
276Biblioteki Xena.
277
278%package libs-guest
279Summary: Xen libraries for virtual machines
280Summary(pl.UTF-8): Biblioteki Xena dla maszyn wirtualnych
281Group: Libraries
282
283%description libs-guest
284Xen libraries for both dom0 and domU virtual machines.
285
286%description libs-guest -l pl.UTF-8
287Biblioteki Xena dla maszyn wirtualnych dom0 i domU.
288
289%package devel
290Summary: Header files for Xen
291Summary(pl.UTF-8): Pliki nagłówkowe Xena
292Group: Development/Libraries
293Requires: %{name}-libs = %{version}-%{release}
294
295%description devel
296Header files for Xen.
297
298%description devel -l pl.UTF-8
299Pliki nagłówkowe Xena.
300
301%package static
302Summary: Static Xen libraries
303Summary(pl.UTF-8): Statyczne biblioteki Xena
304Group: Development/Libraries
305Requires: %{name}-devel = %{version}-%{release}
306
307%description static
308Static Xen libraries.
309
310%description static -l pl.UTF-8
311Statyczne biblioteki Xena.
312
313%package xend
314Summary: xend daemon
315Summary(pl.UTF-8): Demon xend
316Group: Daemons
317Requires(post,preun,postun): systemd-units >= 38
318Requires: systemd-units >= 38
319
320%description xend
321xend daemon.
322
323%description xend -l pl.UTF-8
324Demon xend.
325
326%package -n ocaml-xen
327Summary: OCaml bindings for Xen
328Summary(pl.UTF-8): Wiązania OCamla dla Xena
329License: LGPL v2.1 with linking exception
330Group: Libraries
331Requires: %{name}-libs = %{version}-%{release}
332%if %{with ocaml}
333%requires_eq ocaml-runtime
334%endif
335
336%description -n ocaml-xen
337OCaml bindings for Xen.
338
339%description -n ocaml-xen -l pl.UTF-8
340Wiązania OCamla dla Xena.
341
342%package -n ocaml-xen-devel
343Summary: OCaml bindings for Xen - development files
344Summary(pl.UTF-8): Wiązania OCamla dla Xena - pliki programistyczne
345License: LGPL v2.1 with linking exception
346Group: Development/Libraries
347Requires: ocaml-xen = %{version}-%{release}
348%if %{with ocaml}
349%requires_eq ocaml
350%endif
351
352%description -n ocaml-xen-devel
353OCaml bindings for Xen - development files.
354
355%description -n ocaml-xen-devel -l pl.UTF-8
356Wiązania OCamla dla Xena - pliki programistyczne.
357
358%package -n python-xen
359Summary: Xen Python modules
360Summary(pl.UTF-8): Moduły Pythona dla Xena
361Group: Libraries
362Requires: %{name}-libs = %{version}-%{release}
363Conflicts: xen < 3.2.1-0.3
364
365%description -n python-xen
366Xen Python modules.
367
368%description -n python-xen -l pl.UTF-8
369Moduły Pythona dla Xena.
370
371%package -n python-xen-guest
372Summary: Xen Python modules for virtual machines
373Summary(pl.UTF-8): Moduły Pythona dla maszyn wirtualnych Xena
374Group: Libraries
375Requires: %{name}-libs-guest = %{version}-%{release}
376Conflicts: xen < 3.2.1-0.3
377
378%description -n python-xen-guest
379Xen Python modules for both dom0 and domU virtual machines.
380
381%description -n python-xen-guest -l pl.UTF-8
382Moduły Pythona dla maszyn wirtualnych dom0 i domU.
383
384%package -n bash-completion-%{name}
385Summary: bash-completion for Xen (xl)
386Summary(pl.UTF-8): Bashowe dopełnianie poleceń dla Xena (xl)
387Group: Applications/Shells
388Requires: %{name} = %{version}-%{release}
389Requires: bash-completion
390
391%description -n bash-completion-%{name}
392This package provides bash-completion for Xen (xl).
393
394%description -n bash-completion-%{name} -l pl.UTF-8
395Ten pakiet zapewnia bashowe dopełnianie poleceń dla Xena (xl).
396
397%package efi
398Summary: Xen hypervisor binary for EFI
399Summary(pl.UTF-8): Hipernadzorca Xen dla EFI
400Group: Applications/System
401Requires: %{name}-libs-guest = %{version}-%{release}
402
403%description efi
404Xen hypervisor EFI binary, which can be booted directly from (U)EFI
405firmware without help from any additional bootloader.
406
407%description efi -l pl.UTF-8
408Nadzorca Xen w postaci, która może być uruchomiona wprost z firmware
409(U)EFI, bez potrzeby oddzielnego bootloadera.
410
411%prep
412%setup -q -a 16
413%patch0 -p1
414%patch1 -p1
415%patch2 -p1
416%patch3 -p1
417%patch4 -p1
418%patch5 -p1
419%patch6 -p1
420%patch7 -p1
421%patch8 -p1
422%patch10 -p1
423%patch11 -p1
424%patch12 -p1
425%patch13 -p1
426%patch14 -p1
427%patch15 -p1
428
429# stubdom sources
430ln -s %{SOURCE10} %{SOURCE11} %{SOURCE12} %{SOURCE13} %{SOURCE14} stubdom
431ln -s %{SOURCE17} %{SOURCE18} %{SOURCE19} stubdom
432ln -s %{SOURCE15} tools/firmware/etherboot/ipxe.tar.gz
433
434# do not allow fetching anything via git
435echo GIT=/bin/false >> Config.mk
436
437%build
438# based on the 'autoconf.sh' from the sources
439%{__autoconf}
440cd tools
441%{__autoconf}
442%{__autoheader}
443cd ../stubdom
444%{__autoconf}
445cd ../docs
446%{__autoconf}
447cd ..
448
449# if gold is used then bioses and grub doesn't build
450install -d our-ld
451ln -f -s /usr/bin/ld.bfd our-ld/ld
452export PATH=$(pwd)/our-ld:$PATH
453
454export CFLAGS="%{rpmcflags} -I/usr/include/ncurses"
455export CXXFLAGS="%{rpmcflags} -I/usr/include/ncurses"
456
457# NOTE:
458# - there is a quoting bug (in tools/driver/Makefile) that causes
459# openssl is used instead of gcrypt; that's OK, openssl is obligatory
460# anyway (see configure), gcrypt is optional
461# - prevent libiconv from being detected (not needed with glibc)
462%configure \
463 CPPFLAGS="%{rpmcppflags} -I/usr/include/ncurses" \
464 ac_cv_lib_iconv_libiconv_open=no \
465 %{__enable_disable qemu_traditional qemu-traditional} \
466 %{__enable_disable blktap1 blktap1} \
467 %{__enable_disable xend xend} \
468%ifarch %{x8664}
469 --with-system-qemu=/usr/bin/qemu-system-x86_64 \
470%else
471 --with-system-qemu=/usr/bin/qemu-system-i386 \
472%endif
473 --disable-debug
474
475%{__make} -j1 dist-xen dist-tools dist-docs \
476 %{!?with_ocaml:OCAML_TOOLS=n} \
477 XSM_ENABLE=%{?with_xsm:y}%{!?with_xsm:n} \
478 CC="%{__cc}" \
479 CXX="%{__cxx}" \
480 V=1
481
482unset CFLAGS
483unset CXXFLAGS
484
485%if %{with stubdom}
486%{__make} -j1 dist-stubdom \
487 %{!?with_ocaml:OCAML_TOOLS=n} \
488 XSM_ENABLE=%{?with_xsm:y}%{!?with_xsm:n} \
489 CC="%{__cc}" \
490 CXX="%{__cxx}" \
491 V=1
492%endif
493
494%install
495rm -rf $RPM_BUILD_ROOT
496install -d $RPM_BUILD_ROOT/etc/{xen/examples,modules-load.d,logrotate.d} \
497 $RPM_BUILD_ROOT{%{systemdtmpfilesdir},%{systemdunitdir},/var/log/xen/console}
498
499%if %{with efi}
500install -d $RPM_BUILD_ROOT/etc/efi-boot/update.d
501%endif
502
503%{__make} -j1 install-xen install-tools %{?with_stubdom:install-stubdom} install-docs \
504 %{!?with_ocaml:OCAML_TOOLS=n} \
505 XSM_ENABLE=%{?with_xsm:y}%{!?with_xsm:n} \
506 DESTDIR=$RPM_BUILD_ROOT \
507 HOTPLUGS=install-udev
508
509%if %{with qemu_traditional}
510%if "%{_lib}" == "lib64"
511ln -s %{_prefix}/lib/%{name}/bin/qemu-dm $RPM_BUILD_ROOT%{_libdir}/%{name}/bin/qemu-dm
512%endif
513%endif
514
515install %{SOURCE30} $RPM_BUILD_ROOT%{systemdunitdir}/proc-xen.mount
516install %{SOURCE31} $RPM_BUILD_ROOT%{systemdunitdir}/var-lib-xenstored.mount
517%if %{with blktap1}
518install %{SOURCE32} $RPM_BUILD_ROOT%{systemdunitdir}/blktapctrl.service
519install %{SOURCE33} $RPM_BUILD_ROOT/etc/sysconfig/blktapctrl
520%endif
521install %{SOURCE34} $RPM_BUILD_ROOT%{systemdunitdir}/xenconsoled.service
522install %{SOURCE35} $RPM_BUILD_ROOT/etc/sysconfig/xenconsoled
523install %{SOURCE36} $RPM_BUILD_ROOT%{systemdunitdir}/xenstored.service
524install %{SOURCE37} $RPM_BUILD_ROOT/etc/sysconfig/xenstored
525install %{SOURCE38} $RPM_BUILD_ROOT%{systemdtmpfilesdir}/xenstored.conf
526%if %{with xend}
527install %{SOURCE39} $RPM_BUILD_ROOT%{systemdunitdir}/xend.service
528install %{SOURCE40} $RPM_BUILD_ROOT%{systemdtmpfilesdir}/xend.conf
529%endif
530install %{SOURCE41} $RPM_BUILD_ROOT%{systemdunitdir}/xen-watchdog.service
531install %{SOURCE42} $RPM_BUILD_ROOT/etc/modules-load.d/xen-dom0.conf
532install %{SOURCE43} $RPM_BUILD_ROOT%{_prefix}/lib/%{name}/bin/xendomains.sh
533install %{SOURCE44} $RPM_BUILD_ROOT%{systemdunitdir}/xendomains.service
534# sysvinit scripts
535%{__rm} $RPM_BUILD_ROOT/etc/rc.d/init.d/*
536%{__rm} $RPM_BUILD_ROOT/etc/sysconfig/xencommons
537%if %{with xend}
538install %{SOURCE50} $RPM_BUILD_ROOT/etc/rc.d/init.d/xend
539%endif
540install %{SOURCE51} $RPM_BUILD_ROOT/etc/rc.d/init.d/xenconsoled
541install %{SOURCE52} $RPM_BUILD_ROOT/etc/rc.d/init.d/xenstored
542install %{SOURCE53} $RPM_BUILD_ROOT/etc/rc.d/init.d/xen-watchdog
543install %{SOURCE54} $RPM_BUILD_ROOT/etc/rc.d/init.d/xendomains
544install %{SOURCE55} $RPM_BUILD_ROOT/etc/logrotate.d/xen
545install %{SOURCE56} $RPM_BUILD_ROOT%{systemdtmpfilesdir}/xen.conf
546
547install %{SOURCE60} $RPM_BUILD_ROOT%{_prefix}/lib/%{name}/bin/xen-init-list
548install %{SOURCE61} $RPM_BUILD_ROOT%{_prefix}/lib/%{name}/bin/xen-toolstack
549
550%if %{with efi}
551install %{SOURCE57} $RPM_BUILD_ROOT/etc/efi-boot/xen.cfg
552sed -e's;@libdir@;%{_libdir};g' -e's;@target_cpu@;%{_target_cpu};g' \
553 %{SOURCE58} > $RPM_BUILD_ROOT/etc/efi-boot/update.d/xen.conf
554%endif
555
556mv $RPM_BUILD_ROOT/etc/xen/{xlexample*,examples}
557
558install %{SOURCE59} $RPM_BUILD_ROOT%{_sysconfdir}/xen/scripts/vif-openvswitch
559
560# for %%doc
561install -d _doc
562for tool in blktap blktap2 pygrub xenmon ; do
563 cp -p tools/$tool/README _doc/README.$tool
564done
565
566%py_comp $RPM_BUILD_ROOT%{py_sitedir}
567%py_ocomp $RPM_BUILD_ROOT%{py_sitedir}
568
569%py_postclean
570
571# remove unneeded files
572%if %{with hypervisor}
573%{__rm} $RPM_BUILD_ROOT/boot/xen-4.4.gz
574%{__rm} $RPM_BUILD_ROOT/boot/xen-4.gz
575%endif
576%{__rm} -r $RPM_BUILD_ROOT%{_docdir}/xen
577%{__rm} $RPM_BUILD_ROOT%{_includedir}/%{name}/COPYING
578
579%if %{without xend}
580%{__rm} -r $RPM_BUILD_ROOT/var/run/xend
581%endif
582
583%clean
584rm -rf $RPM_BUILD_ROOT
585
586%post
587/sbin/chkconfig --add xen-watchdog
588/sbin/chkconfig --add xenconsoled
589/sbin/chkconfig --add xenstored
590/sbin/chkconfig --add xendomains
591NORESTART=1
592%systemd_post xen-watchdog.service xenconsoled.service xenstored.service xendomains.service
593
594%preun
595if [ "$1" = "0" ]; then
596 %service xendomains stop
597 /sbin/chkconfig --del xendomains
598
599 %service xenconsoled stop
600 /sbin/chkconfig --del xenconsoled
601
602 %service xenstored stop
603 /sbin/chkconfig --del xenstored
604
605 %service xen-watchdog stop
606 /sbin/chkconfig --del xen-watchdog
607fi
608%systemd_preun xen-watchdog.service xenconsoled.service xenstored.service xendomains.service
609
610%postun
611%systemd_reload
612
613%post xend
614/sbin/chkconfig --add xend
615%systemd_post xend.service
616
617%preun xend
618if [ "$1" = "0" ]; then
619 %service xend stop
620 /sbin/chkconfig --del xend
621fi
622%systemd_preun xend.service
623
624%postun xend
625%systemd_reload
626
627%post libs -p /sbin/ldconfig
628%postun libs -p /sbin/ldconfig
629
630%post libs-guest -p /sbin/ldconfig
631%postun libs-guest -p /sbin/ldconfig
632
633%post efi
634[ -x /sbin/efi-boot-update ] && /sbin/efi-boot-update --auto || :
635
636%files
637%defattr(644,root,root,755)
638%doc COPYING README* docs/misc/* docs/html/* _doc/*
639%if %{with hypervisor}
640/boot/%{name}-syms-%{version}
641/boot/%{name}-%{version}.gz
642/boot/%{name}.gz
643%endif
644%if %{with xsm}
645/boot/xenpolicy.24
646%endif
647%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/xenconsoled
648%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/xenstored
649%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/xendomains
650%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/xen
651%attr(754,root,root) /etc/rc.d/init.d/xen-watchdog
652%attr(754,root,root) /etc/rc.d/init.d/xenconsoled
653%attr(754,root,root) /etc/rc.d/init.d/xenstored
654%attr(754,root,root) /etc/rc.d/init.d/xendomains
655%config(noreplace) %verify(not md5 mtime size) /etc/modules-load.d/xen-dom0.conf
656%{systemdunitdir}/proc-xen.mount
657%{systemdunitdir}/var-lib-xenstored.mount
658%{systemdunitdir}/xen-watchdog.service
659%{systemdunitdir}/xenconsoled.service
660%{systemdunitdir}/xenstored.service
661%{systemdunitdir}/xendomains.service
662%dir %{_sysconfdir}/xen
663%dir %{_sysconfdir}/xen/auto
664%dir %{_sysconfdir}/xen/examples
665%dir %{_sysconfdir}/xen/scripts
666%attr(755,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/xen/scripts/*
667%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/xen/examples/*
668%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/xen/README*
669%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/xen/cpupool
670%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/xen/xl.conf
671%config(noreplace) %verify(not md5 mtime size) /etc/udev/rules.d/xen-backend.rules
672%attr(755,root,root) %{_bindir}/pygrub
673%if %{with qemu_traditional}
674%attr(755,root,root) %{_bindir}/qemu-img-xen
675%attr(755,root,root) %{_bindir}/qemu-nbd-xen
676%endif
677%attr(755,root,root) %{_bindir}/remus
678%attr(755,root,root) %{_bindir}/xencons
679%attr(755,root,root) %{_bindir}/xencov_split
680%attr(755,root,root) %{_bindir}/xentrace*
681%if %{with blktap1}
682%attr(755,root,root) %{_sbindir}/blktapctrl
683%endif
684%if %{with xsm}
685%attr(755,root,root) %{_sbindir}/flask-*
686%endif
687%attr(755,root,root) %{_sbindir}/gdbsx
688%attr(755,root,root) %{_sbindir}/gtrace*
689%attr(755,root,root) %{_sbindir}/img2qcow
690%attr(755,root,root) %{_sbindir}/kdd
691%attr(755,root,root) %{_sbindir}/lock-util
692%attr(755,root,root) %{_sbindir}/qcow-create
693%attr(755,root,root) %{_sbindir}/qcow2raw
694%attr(755,root,root) %{_sbindir}/tap-ctl
695%attr(755,root,root) %{_sbindir}/tapdisk*
696%attr(755,root,root) %{_sbindir}/td-util
697%attr(755,root,root) %{_sbindir}/vhd-*
698%attr(755,root,root) %{_sbindir}/xen-*
699%attr(755,root,root) %{_sbindir}/xenbaked
700%attr(755,root,root) %{_sbindir}/xenconsoled
701%attr(755,root,root) %{_sbindir}/xencov
702%attr(755,root,root) %{_sbindir}/xenlockprof
703%attr(755,root,root) %{_sbindir}/xenmon.py
704%attr(755,root,root) %{_sbindir}/xenperf
705%attr(755,root,root) %{_sbindir}/xenpm
706%attr(755,root,root) %{_sbindir}/xenpmd
707%attr(755,root,root) %{_sbindir}/xenstored
708%attr(755,root,root) %{_sbindir}/xentop
709%attr(755,root,root) %{_sbindir}/xentrace_setmask
710%attr(755,root,root) %{_sbindir}/xenwatchdogd
711%attr(755,root,root) %{_sbindir}/xl
712%dir %{_libdir}/%{name}
713%dir %{_libdir}/%{name}/bin
714%attr(744,root,root) %{_libdir}/%{name}/bin/*
715%if "%{_lib}" != "lib"
716%dir %{_prefix}/lib/%{name}
717%dir %{_prefix}/lib/%{name}/bin
718%attr(755,root,root) %{_prefix}/lib/%{name}/bin/*
719%endif
720%dir %{_prefix}/lib/%{name}/boot
721%if %{with stubdom}
722%if %{with qemu_traditional}
723%{_prefix}/lib/%{name}/boot/ioemu-stubdom.gz
724%endif
725%ifarch %{ix86} %{x8664}
726%{_prefix}/lib/%{name}/boot/pv-grub-x86_32.gz
727%endif
728%ifarch %{x8664}
729%{_prefix}/lib/%{name}/boot/pv-grub-x86_64.gz
730%endif
731%{_prefix}/lib/%{name}/boot/vtpm-stubdom.gz
732%{_prefix}/lib/%{name}/boot/vtpmmgr-stubdom.gz
733%{_prefix}/lib/%{name}/boot/xenstore-stubdom.gz
734%endif
735%attr(744,root,root) %{_prefix}/lib/%{name}/boot/hvmloader
736%{_mandir}/man1/xenstore-chmod.1*
737%{_mandir}/man1/xenstore-ls.1*
738%{_mandir}/man1/xenstore.1*
739%{_mandir}/man1/xentop.1*
740%{_mandir}/man1/xentrace_format.1*
741%{_mandir}/man1/xl.1*
742%if %{with xend}
743%{_mandir}/man1/xm.1*
744%{_mandir}/man5/xend-config.sxp.5*
745%endif
746%{_mandir}/man5/xl.cfg.5*
747%{_mandir}/man5/xl.conf.5*
748%{_mandir}/man5/xlcpupool.cfg.5*
749%{_mandir}/man5/xmdomain.cfg.5*
750%{_mandir}/man8/xentrace.8*
751%{_sharedstatedir}/xen
752%{_sharedstatedir}/xenstored
753%dir /var/run/xenstored
754%{systemdtmpfilesdir}/xenstored.conf
755%{systemdtmpfilesdir}/xen.conf
756%dir %attr(0700,root,root) /var/log/xen
757%dir %attr(0700,root,root) /var/log/xen/console
758%if %{with qemu_traditional}
759%{_datadir}/xen
760%endif
761
762%files guest
763%defattr(644,root,root,755)
764%attr(755,root,root) %{_bindir}/xen-detect
765%attr(755,root,root) %{_bindir}/xenstore*
766
767%files libs
768%defattr(644,root,root,755)
769%if %{with blktap1}
770%attr(755,root,root) %{_libdir}/libblktap.so.*.*.*
771%attr(755,root,root) %ghost %{_libdir}/libblktap.so.3.0
772%endif
773%attr(755,root,root) %{_libdir}/libblktapctl.so.*.*.*
774%attr(755,root,root) %ghost %{_libdir}/libblktapctl.so.1.0
775%attr(755,root,root) %{_libdir}/libfsimage.so.*.*.*
776%attr(755,root,root) %ghost %{_libdir}/libfsimage.so.1.0
777%attr(755,root,root) %{_libdir}/libvhd.so.*.*.*
778%attr(755,root,root) %ghost %{_libdir}/libvhd.so.1.0
779%attr(755,root,root) %{_libdir}/libxenctrl.so.*.*.*
780%attr(755,root,root) %ghost %{_libdir}/libxenctrl.so.4.4
781%attr(755,root,root) %{_libdir}/libxenguest.so.*.*.*
782%attr(755,root,root) %ghost %{_libdir}/libxenguest.so.4.4
783%attr(755,root,root) %{_libdir}/libxenlight.so.*.*.*
784%attr(755,root,root) %ghost %{_libdir}/libxenlight.so.4.4
785%attr(755,root,root) %{_libdir}/libxenstat.so.*.*
786%attr(755,root,root) %ghost %{_libdir}/libxenstat.so.0
787%attr(755,root,root) %{_libdir}/libxenvchan.so.*.*.*
788%attr(755,root,root) %ghost %{_libdir}/libxenvchan.so.1.0
789%attr(755,root,root) %{_libdir}/libxlutil.so.*.*.*
790%attr(755,root,root) %ghost %{_libdir}/libxlutil.so.4.3
791%dir %{_libdir}/fs
792%dir %{_libdir}/fs/ext2fs-lib
793%dir %{_libdir}/fs/fat
794%dir %{_libdir}/fs/iso9660
795%dir %{_libdir}/fs/reiserfs
796%dir %{_libdir}/fs/ufs
797%dir %{_libdir}/fs/xfs
798%dir %{_libdir}/fs/zfs
799%attr(755,root,root) %{_libdir}/fs/*/fsimage.so
800
801%files libs-guest
802%defattr(644,root,root,755)
803%attr(755,root,root) %{_libdir}/libxenstore.so.*.*.*
804%attr(755,root,root) %ghost %{_libdir}/libxenstore.so.3.0
805
806%files devel
807%defattr(644,root,root,755)
808%if %{with blktap1}
809%attr(755,root,root) %{_libdir}/libblktap.so
810%endif
811%attr(755,root,root) %{_libdir}/libblktapctl.so
812%attr(755,root,root) %{_libdir}/libfsimage.so
813%attr(755,root,root) %{_libdir}/libvhd.so
814%attr(755,root,root) %{_libdir}/libxenctrl.so
815%attr(755,root,root) %{_libdir}/libxenguest.so
816%attr(755,root,root) %{_libdir}/libxenlight.so
817%attr(755,root,root) %{_libdir}/libxenstat.so
818%attr(755,root,root) %{_libdir}/libxenstore.so
819%attr(755,root,root) %{_libdir}/libxenvchan.so
820%attr(755,root,root) %{_libdir}/libxlutil.so
821%{_includedir}/_libxl_list.h
822%{_includedir}/_libxl_types.h
823%{_includedir}/_libxl_types_json.h
824%if %{with blktap1}
825%{_includedir}/blktaplib.h
826%endif
827%{_includedir}/fsimage*.h
828%{_includedir}/libxenvchan.h
829%{_includedir}/libxl*.h
830%{_includedir}/xen*.h
831%{_includedir}/xs*.h
832%{_includedir}/xen
833%{_includedir}/xenstore-compat
834
835%files static
836%defattr(644,root,root,755)
837%if %{with blktap1}
838%{_libdir}/libblktap.a
839%endif
840%{_libdir}/libblktapctl.a
841%{_libdir}/libvhd.a
842%{_libdir}/libxenctrl.a
843%{_libdir}/libxenguest.a
844%{_libdir}/libxenlight.a
845%{_libdir}/libxenvchan.a
846%{_libdir}/libxenstat.a
847%{_libdir}/libxenstore.a
848%{_libdir}/libxlutil.a
849
850%if %{with xend}
851%files xend
852%defattr(644,root,root,755)
853%if %{with blktap1}
854%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/blktapctrl
855%{systemdunitdir}/blktapctrl.service
856%endif
857%{systemdunitdir}/xend.service
858%attr(754,root,root) %{_sysconfdir}/rc.d/init.d/xend
859%config(noreplace) %verify(not md5 mtime size) /etc/udev/rules.d/xend.rules
860%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/xen/xm*
861%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/xen/xend*
862%attr(755,root,root) %{_sbindir}/xend
863%attr(755,root,root) %{_sbindir}/xm
864%dir %attr(700,root,root) /var/run/xend
865%{systemdtmpfilesdir}/xend.conf
866%endif
867
868%if %{with ocaml}
869%files -n ocaml-xen
870%defattr(644,root,root,755)
871%doc tools/ocaml/LICENSE
872%attr(755,root,root) %{_sbindir}/oxenstored
873%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/xen/oxenstored.conf
874%dir %{_libdir}/ocaml/site-lib/xenbus
875%attr(755,root,root) %{_libdir}/ocaml/site-lib/xenbus/dllxenbus_stubs.so
876%dir %{_libdir}/ocaml/site-lib/xenctrl
877%attr(755,root,root) %{_libdir}/ocaml/site-lib/xenctrl/dllxenctrl_stubs.so
878%dir %{_libdir}/ocaml/site-lib/xeneventchn
879%attr(755,root,root) %{_libdir}/ocaml/site-lib/xeneventchn/dllxeneventchn_stubs.so
880%dir %{_libdir}/ocaml/site-lib/xenlight
881%attr(755,root,root) %{_libdir}/ocaml/site-lib/xenlight/dllxenlight_stubs.so
882%dir %{_libdir}/ocaml/site-lib/xenmmap
883%attr(755,root,root) %{_libdir}/ocaml/site-lib/xenmmap/dllxenmmap_stubs.so
884%dir %{_libdir}/ocaml/site-lib/xentoollog
885%attr(755,root,root) %{_libdir}/ocaml/site-lib/xentoollog/dllxentoollog_stubs.so
886
887%files -n ocaml-xen-devel
888%defattr(644,root,root,755)
889%{_libdir}/ocaml/site-lib/xenbus/META
890%{_libdir}/ocaml/site-lib/xenbus/libxenbus_stubs.a
891%{_libdir}/ocaml/site-lib/xenbus/xenbus.a
892%{_libdir}/ocaml/site-lib/xenbus/*.cm[aixo]*
893%{_libdir}/ocaml/site-lib/xenctrl/META
894%{_libdir}/ocaml/site-lib/xenctrl/libxenctrl_stubs.a
895%{_libdir}/ocaml/site-lib/xenctrl/xenctrl.a
896%{_libdir}/ocaml/site-lib/xenctrl/xenctrl.cm[aix]*
897%{_libdir}/ocaml/site-lib/xeneventchn/META
898%{_libdir}/ocaml/site-lib/xeneventchn/libxeneventchn_stubs.a
899%{_libdir}/ocaml/site-lib/xeneventchn/xeneventchn.a
900%{_libdir}/ocaml/site-lib/xeneventchn/xeneventchn.cm[aix]*
901%{_libdir}/ocaml/site-lib/xenmmap/META
902%{_libdir}/ocaml/site-lib/xenmmap/libxenmmap_stubs.a
903%{_libdir}/ocaml/site-lib/xenmmap/xenmmap.a
904%{_libdir}/ocaml/site-lib/xenmmap/xenmmap.cm[aix]*
905%{_libdir}/ocaml/site-lib/xenlight/META
906%{_libdir}/ocaml/site-lib/xenlight/libxenlight_stubs.a
907%{_libdir}/ocaml/site-lib/xenlight/xenlight.a
908%{_libdir}/ocaml/site-lib/xenlight/xenlight.cm[aix]*
909%dir %{_libdir}/ocaml/site-lib/xenstore
910%{_libdir}/ocaml/site-lib/xenstore/META
911%{_libdir}/ocaml/site-lib/xenstore/xenstore.a
912%{_libdir}/ocaml/site-lib/xenstore/*.cm[aixo]*
913%{_libdir}/ocaml/site-lib/xentoollog/META
914%{_libdir}/ocaml/site-lib/xentoollog/libxentoollog_stubs.a
915%{_libdir}/ocaml/site-lib/xentoollog/xentoollog.a
916%{_libdir}/ocaml/site-lib/xentoollog/*.cm[aixo]*
917%endif
918
919%files -n python-xen
920%defattr(644,root,root,755)
921%attr(755,root,root) %{py_sitedir}/fsimage.so
922%{py_sitedir}/grub
923%attr(755,root,root) %{py_sitedir}/xen/lowlevel/checkpoint.so
924%attr(755,root,root) %{py_sitedir}/xen/lowlevel/flask.so
925%attr(755,root,root) %{py_sitedir}/xen/lowlevel/netlink.so
926%attr(755,root,root) %{py_sitedir}/xen/lowlevel/ptsname.so
927%attr(755,root,root) %{py_sitedir}/xen/lowlevel/xc.so
928%if %{with xend}
929%{py_sitedir}/xen/remus
930%{py_sitedir}/xen/util
931%{py_sitedir}/xen/web
932%{py_sitedir}/xen/xend
933%{py_sitedir}/xen/xm
934%endif
935%if "%{py_ver}" > "2.4"
936%{py_sitedir}/pygrub-0.3-py*.egg-info
937%{py_sitedir}/xen-3.0-py*.egg-info
938%endif
939
940%files -n python-xen-guest
941%defattr(644,root,root,755)
942%dir %{py_sitedir}/xen
943%{py_sitedir}/xen/__init__.py*
944%dir %{py_sitedir}/xen/lowlevel
945%{py_sitedir}/xen/lowlevel/__init__.py*
946%attr(755,root,root) %{py_sitedir}/xen/lowlevel/xs.so
947
948%files -n bash-completion-%{name}
949%defattr(644,root,root,755)
950/etc/bash_completion.d/xl.sh
951
952%if %{with efi}
953%files efi
954%defattr(644,root,root,755)
955%dir %{_libdir}/efi
956%{_libdir}/efi/*.efi
957%attr(644,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/efi-boot/xen.cfg
958%attr(644,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/efi-boot/update.d/xen.conf
959%endif
This page took 0.044412 seconds and 4 git commands to generate.