public inbox for kvm@vger.kernel.org
 help / color / mirror / Atom feed
From: Akio Takebe <takebe_akio-+CUm20s59erQFUHtdCDX3A@public.gmane.org>
To: kvm-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org
Subject: [Patch] improvement of "make rpm"
Date: Wed, 31 Oct 2007 23:32:40 +0900	[thread overview]
Message-ID: <EAC81BCAE411F0takebe_akio@jp.fujitsu.com> (raw)

Hi,

I updated the patch of the following thread.
http://thread.gmane.org/gmane.comp.emulators.kvm.devel/8899
Changelog:
- don't change Makefile
- put back some options (BuildRequires and so on).

If you try my patch with kvm-49, you can do the below.
1. rm SOURCES 
2. mkdir SOURCES
3. ./configure
4. make rpm

I tested this patch on RHEL5.

Signed-off-by: Akio Takebe <takebe_akio-+CUm20s59erQFUHtdCDX3A@public.gmane.org>

Best Regards,

Akio Takebe

---

--- kvm-49.orig/kvm.spec	2007-10-29 02:14:57.000000000 +0900
+++ kvm-49/kvm.spec	2007-10-31 23:24:05.000000000 +0900
@@ -1,3 +1,12 @@
+%define Distribution %(rpm -q -qf /etc/redhat-release --qf '%{name}' | cut -d - 
-f 1)
+%define os_release %(rpm -q --qf '%%{version}' /etc/redhat-release)
+%define bindir /usr/bin
+%define bin %{bindir}/kvm
+%define initdir /etc/init.d
+%define confdir /etc/kvm
+%define utilsdir /etc/kvm/utils
+%define _prebuilt %{?prebuilt:1}%{!?prebuilt:0}
+
 Name:           kvm
 Version:        0.0
 Release:        0
@@ -11,20 +20,8 @@ BuildRoot:      %{_tmppath}/%{name}-%{ve
 ExclusiveArch:  i386 x86_64
 
 Requires:	kvm-kmod bridge-utils
-
-%define Distribution %(cat /etc/redhat-release | awk '{ print $1}' | tr [A-Z] 
[a-z])
-%define os_release %(rpm -q --qf '%%{version}' %{Distribution}-release)
-
-%if %{Distribution} == "fedora" && %{os_release} == 5 || %{Distribution} == 
"centos" && %{os_release} == 4
-BuildRequires: compat-gcc-32
-%else
-BuildRequires: compat-gcc-34
-%endif
-
 BuildRequires:  SDL-devel zlib-devel alsa-lib-devel
 
-%define _prebuilt %{?prebuilt:1}%{!?prebuilt:0}
-
 %if !%{_prebuilt}
 Source0: kvm.tar.gz
 Source1: user.tar.gz
@@ -32,15 +29,32 @@ Source2: kernel.tar.gz
 Source3: scripts.tar.gz
 Source4: Makefile
 Source5: configure
-Source5: kvm_stat
+Source6: kvm_stat
 %endif
 
 %description
 The Kernel Virtual Machine provides a virtualization enviroment for processors
 with hardware support for virtualization: Intel's VT and AMD's AMD-V.
 
-%prep
+%if %([ x"%{Distribution}" = x"fedora" -a x"%{os_release}" = x"5" ] && echo 1 |
| echo 0)
+%define fedora5 1
+%endif
+
+%if %([ x"%{Distribution}" = x"centos" -a x"%{os_release}" = x"4" ] && echo 1 |
| echo 0)
+%define centos4 1
+%endif
+
+%if %([ %{fedora5} -o  %{centos4} ] && echo 1 || echo 0)
+BuildRequires: compat-gcc-32
+%else
+BuildRequires: compat-gcc-34
+%endif
 
+%if %([ -f "/etc/redhat-release" ] && echo 0 || echo 1)
+BuildRequires: compat-gcc-34
+%endif
+
+%prep
 %if !%{_prebuilt}
 %setup -T -b 0 -n qemu
 %setup -T -b 1 -n user -D
@@ -51,9 +65,7 @@ cp %{_sourcedir}/Makefile %{_sourcedir}/
 %endif
 
 %build
-
 rm -rf %{buildroot}
-
 %if !%{_prebuilt}
 cd ..
 ./configure --prefix=/usr/kvm
@@ -71,7 +83,6 @@ make -C qemu
 %endif
 
 %install
-
 %if !%{_prebuilt}
 cd ..
 %else
@@ -80,18 +91,16 @@ cd %{objdir}
 
 make DESTDIR=%{buildroot} install-rpm
 
-%define bindir /usr/bin
-%define bin %{bindir}/kvm
-%define initdir /etc/init.d
-%define confdir /etc/kvm
-%define utilsdir /etc/kvm/utils
-
 %post 
+/sbin/chkconfig --add kvm
 /sbin/chkconfig --level 2345 kvm on
 /sbin/chkconfig --level 16 kvm off
 /usr/sbin/groupadd -fg 444 kvm
 
 %postun
+/sbin/service kvm stop
+/sbin/chkconfig --level 2345 kvm off
+/sbin/chkconfig --del kvm
 
 %clean
 %{__rm} -rf %{buildroot}


-------------------------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems?  Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/

             reply	other threads:[~2007-10-31 14:32 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-10-31 14:32 Akio Takebe [this message]
     [not found] ` <EAC81BCAE411F0takebe_akio-+CUm20s59erQFUHtdCDX3A@public.gmane.org>
2007-11-01 12:39   ` [Patch] improvement of "make rpm" Avi Kivity
     [not found]     ` <4729C8FF.8020607-atKUWr5tajBWk0Htik3J/w@public.gmane.org>
2007-11-06  1:16       ` Akio Takebe
     [not found]         ` <6C82012B93D81takebe_akio-+CUm20s59erQFUHtdCDX3A@public.gmane.org>
2007-11-06  9:01           ` Avi Kivity

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=EAC81BCAE411F0takebe_akio@jp.fujitsu.com \
    --to=takebe_akio-+cum20s59erqfuhtdcdx3a@public.gmane.org \
    --cc=kvm-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox