SPECS: kvm.spec - more
arekm
arekm at pld-linux.org
Thu Jan 11 12:48:12 CET 2007
Author: arekm Date: Thu Jan 11 11:48:12 2007 GMT
Module: SPECS Tag: HEAD
---- Log message:
- more
---- Files affected:
SPECS:
kvm.spec (1.1 -> 1.2)
---- Diffs:
================================================================
Index: SPECS/kvm.spec
diff -u SPECS/kvm.spec:1.1 SPECS/kvm.spec:1.2
--- SPECS/kvm.spec:1.1 Wed Jan 10 20:06:55 2007
+++ SPECS/kvm.spec Thu Jan 11 12:48:07 2007
@@ -1,15 +1,34 @@
# $Revision$, $Date$
-%bcond_with patched_kernel
+%bcond_without dist_kernel # without distribution kernel
+%bcond_with kernel # build for unpatched kernel (which doesn't provide kvm.ko already)
+%bcond_without smp # don't build SMP module
+%bcond_without userspace # don't build userspace utilities
+
+%define no_install_post_strip 1
+
+%define _rel 0.1
+
Summary: Kernel-based Virtual Machine for Linux
Name: kvm
Version: 10
-Release: 0.1
+Release: %{_rel}
License: GPL
Group: Applications/System
Source0: http://dl.sourceforge.net/kvm/%{name}-%{version}.tar.gz
# Source0-md5: 41acb4a19818e70bf5833a2b1fa987a8
URL: http://kvm.sourceforge.net/
BuildRequires: bash
+%if %{with kernel} && %{with dist_kernel}
+BuildRequires: kernel%{_alt_kernel}-module-build >= 3:2.6.7
+BuildRequires: rpmbuild(macros) >= 1.330
+%endif
+%if %{with userspace}
+BuildRequires: SDL-devel
+BuildRequires: alsa-lib-devel
+BuildRequires: gcc < 5:4.0
+BuildRequires: libuuid-devel
+BuildRequires: zlib-devel
+%endif
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
%description
@@ -21,25 +40,138 @@
Linux or Windows images. Each virtual machine has private virtualized
hardware: a network card, disk, graphics adapter, etc.
+%package -n kernel%{_alt_kernel}-misc-kvm
+Summary: kvm - kernel module
+Summary(pl): kvm - moduĹ jÄ
dra
+Release: %{_rel}@%{_kernel_ver_str}
+Group: Base/Kernel
+%{?with_dist_kernel:%requires_releq_kernel_up}
+License: Free to use, non-distributable
+Requires(post,postun): /sbin/depmod
+Requires: module-init-tools >= 3.2.2-2
+
+%description -n kernel%{_alt_kernel}-misc-kvm
+kvm - kernel module.
+
+%description -n kernel%{_alt_kernel}-misc-kvm -l pl
+kvm - moduĹ jÄ
dra.
+
+%package -n kernel%{_alt_kernel}-smp-misc-kvm
+Summary: kvm - SMP kernel module
+Summary(pl): kvm - moduĹ jÄ
dra SMP
+Release: %{_rel}@%{_kernel_ver_str}
+Group: Base/Kernel
+%{?with_dist_kernel:%requires_releq_kernel_smp}
+License: Free to use, non-distributable
+Requires(post,postun): /sbin/depmod
+Requires: module-init-tools >= 3.2.2-2
+
+%description -n kernel%{_alt_kernel}-smp-misc-kvm
+kvm - SMP kernel module.
+
+%description -n kernel%{_alt_kernel}-smp-misc-kvm -l pl
+kvm - moduĹ jÄ
dra SMP.
+
%prep
%setup -q
%build
# not ac stuff
./configure \
- %{?with_patched_kernel:--with-patched-kernel} \
+ %{!?with_kernel:--with-patched-kernel} \
--prefix=%{_libdir}/kvm \
--qemu-cc="%{__cc}"
-%{__make}
+
+%if %{with userspace}
+%{__make} -C user
+%{__make} -C qemu
+%endif
+
+%if %{with kernel}
+cd kernel
+mv include include-kvm
+# kernel module(s)
+for cfg in %{?with_dist_kernel:%{?with_smp:smp} up}%{!?with_dist_kernel:nondist}; do
+ if [ ! -r "%{_kernelsrcdir}/config-$cfg" ]; then
+ exit 1
+ fi
+ rm -rf include
+ install -d include/{linux,config}
+ cp include-kvm/linux/*.h include/linux/
+ ln -sf %{_kernelsrcdir}/config-$cfg .config
+ ln -sf %{_kernelsrcdir}/include/linux/autoconf-$cfg.h include/linux/autoconf.h
+ ln -sf %{_kernelsrcdir}/include/asm-%{_target_base_arch} include/asm
+ ln -sf %{_kernelsrcdir}/Module.symvers-$cfg Module.symvers
+ %if %{without dist_kernel}
+ [ ! -x %{_kernelsrcdir}/scripts/kallsyms ] || ln -sf %{_kernelsrcdir}/scripts
+ %endif
+ touch include/config/MARKER
+ %{__make} -C %{_kernelsrcdir} clean \
+ RCS_FIND_IGNORE="-name '*.ko' -o" \
+ M=$PWD O=$PWD \
+ %{?with_verbose:V=1}
+ %{__make} -C %{_kernelsrcdir} modules \
+ M=$PWD O=$PWD \
+ %{?with_verbose:V=1}
+ mv kvm{,-$cfg}.ko
+done
+cd ..
+%endif
%install
rm -rf $RPM_BUILD_ROOT
+%if %{with userspace}
+%{__make} -C user install \
+ DESTDIR=$RPM_BUILD_ROOT
+%{__make} -C qemu install \
+ DESTDIR=$RPM_BUILD_ROOT
+%endif
+
+%if %{with kernel}
+%install_kernel_modules -m kernel/kvm -d misc
+%endif
+
%clean
rm -rf $RPM_BUILD_ROOT
+%post -n kernel%{_alt_kernel}-misc-kvm
+%depmod %{_kernel_ver}
+
+%postun -n kernel%{_alt_kernel}-misc-kvm
+%depmod %{_kernel_ver}
+
+%post -n kernel%{_alt_kernel}-smp-misc-kvm
+%depmod %{_kernel_ver}smp
+
+%postun -n kernel%{_alt_kernel}-smp-misc-kvm
+%depmod %{_kernel_ver}smp
+
+%if %{with userspace}
%files
%defattr(644,root,root,755)
+%dir %{_libdir}/kvm
+%dir %{_libdir}/kvm/bin
+%attr(755,root,root) %{_libdir}/kvm/bin/*
+%{_libdir}/kvm/include
+%{_libdir}/kvm/lib
+%dir %{_libdir}/kvm/share
+%{_libdir}/kvm/share/man
+%{_libdir}/kvm/share/qemu
+%endif
+
+%if %{with kernel}
+%files -n kernel%{_alt_kernel}-misc-kvm
+%defattr(644,root,root,755)
+/lib/modules/%{_kernel_ver}/misc/kvm.ko*
+
+%if %{with smp} && %{with dist_kernel}
+%files -n kernel%{_alt_kernel}-smp-misc-kvm
+%defattr(644,root,root,755)
+/lib/modules/%{_kernel_ver}smp/misc/kvm.ko*
+%endif
+%endif
+
%define date %(echo `LC_ALL="C" date +"%a %b %d %Y"`)
%changelog
@@ -47,6 +179,9 @@
All persons listed below can be reached at <cvs_login>@pld-linux.org
$Log$
+Revision 1.2 2007/01/11 11:48:07 arekm
+- more
+
Revision 1.1 2007/01/10 19:06:55 arekm
- raw, need gcc3
================================================================
---- CVS-web:
http://cvs.pld-linux.org/SPECS/kvm.spec?r1=1.1&r2=1.2&f=u
More information about the pld-cvs-commit
mailing list