public inbox for kvm@vger.kernel.org
 help / color / mirror / Atom feed
* [Patch][RFC] fix make rpm
@ 2007-10-30 10:15 Akio Takebe
       [not found] ` <CBC81ADDCF7D33takebe_akio-+CUm20s59erQFUHtdCDX3A@public.gmane.org>
  0 siblings, 1 reply; 7+ messages in thread
From: Akio Takebe @ 2007-10-30 10:15 UTC (permalink / raw)
  To: kvm-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f

Hi,

This patch fix "make rpm".
When I used the rpm option, I got some error.
So I fixed it, but it is a just sample?

What do you think about it?

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

---

--- kvm-49/Makefile	2007-10-29 02:14:57.000000000 +0900
+++ kvm-49.mod/Makefile	2007-10-30 17:29:35.000000000 +0900
@@ -1,9 +1,17 @@
-
 include config.mak
 
 DESTDIR=
+PWD:= `pwd`
+tmpspec = .tmp.kvm.spec
+BUILD_ROOT=${PWD}
+RPMDIR=${BUILD_ROOT}/RPMS
+SOURCES=${BUILD_ROOT}/SOURCES
+BUILD=${BUILD_ROOT}/BUILD
+SRPMS=${BUILD_ROOT}/SRPMS
+SPECS=${BUILD_ROOT}/SPECS
 
-rpmrelease = devel
+VERSION:=$(shell grep 'MODULE_INFO' ./kernel/kvm_main.c| cut -f 2 -d\" |cut -f 
2 -d\- )
+RELEASE:=${VERSION}-devel
 
 .PHONY: kernel user qemu bios clean
 
@@ -38,31 +46,32 @@ install-rpm:
 	cp scripts/kvm $(DESTDIR)/$(initdir)/kvm
 	cp scripts/qemu-ifup $(DESTDIR)/$(confdir)/qemu-ifup
 	install -t $(DESTDIR)/etc/udev/rules.d scripts/*kvm*.rules
+	$(kcmd)make -C kernel DESTDIR=$(DESTDIR)/ install
 
 install:
 	$(kcmd)make -C kernel DESTDIR="$(DESTDIR)" install
 	make -C user DESTDIR="$(DESTDIR)" install
 	make -C qemu DESTDIR="$(DESTDIR)" install
 
-tmpspec = .tmp.kvm.spec
-RPMDIR=$$(pwd)/RPMS
 
 rpm:	srpm
-	mkdir -p BUILD $(RPMDIR)/$$(uname -i)
+	mkdir -p $(BUILD) $(RPMDIR)/$$(uname -i)
 	rpmbuild --rebuild \
 		 --define="_rpmdir $(RPMDIR)" \
-		 --define="_topdir $$(pwd)" \
-		SRPMS/kvm-0.0-$(rpmrelease).src.rpm
+		 --define="_topdir ${PWD}" \
+		SRPMS/kvm-$(RELEASE).src.rpm
 
 srpm:
-	mkdir -p SOURCES SRPMS
-	sed 's/^Release:.*/Release: $(rpmrelease)/' kvm.spec > $(tmpspec)
-	tar czf SOURCES/kvm.tar.gz qemu
-	tar czf SOURCES/user.tar.gz user
-	tar czf SOURCES/kernel.tar.gz kernel
-	tar czf SOURCES/scripts.tar.gz scripts
-	cp Makefile configure kvm_stat SOURCES
-	rpmbuild  --define="_topdir $$(pwd)" -bs $(tmpspec)
+	export WANT_MODULE=y
+	mkdir -p $(SOURCES)
+	mkdir -p $(SRPMS)
+	mkdir -p $(SPECS)
+	mkdir -p ${BUILD_ROOT}/kvm-$(VERSION)
+	cp kvm.spec $(SPECS)/$(tmpspec)
+	cp -ax qemu user kernel scripts Makefile configure kvm_stat 
${BUILD_ROOT}/kvm-$(VERSION)
+	cd ${BUILD_ROOT}
+	tar czf $(SOURCES)/kvm-$(RELEASE).tar.gz ./kvm-$(VERSION)
+	rpmbuild -vv -bs $(SPECS)/$(tmpspec)
 	$(RM) $(tmpspec)
 
 clean:
--- kvm-49/kvm.spec	2007-10-29 02:14:57.000000000 +0900
+++ kvm-49.mod/kvm.spec	2007-10-30 17:39:54.000000000 +0900
@@ -1,106 +1,115 @@
 Name:           kvm
-Version:        0.0
-Release:        0
-Summary:        Kernel Virtual Machine virtualization environment
 
+%define bindir /usr/bin
+%define bin %{bindir}/kvm
+%define initdir /etc/init.d
+%define confdir /etc/kvm
+%define utilsdir /etc/kvm/utils
+%define uname %(uname -r)
+
+Version:        49
+Release:        devel
+Summary:        Kernel Virtual Machine virtualization environment
 Group:          System Environment/Kernel
 License:        GPL
 URL:            http://www.qumranet.com
 BuildRoot:      %{_tmppath}/%{name}-%{version}-%{release}
-
 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
-
+Requires:	bridge-utils
 BuildRequires:  SDL-devel zlib-devel alsa-lib-devel
-
-%define _prebuilt %{?prebuilt:1}%{!?prebuilt:0}
-
-%if !%{_prebuilt}
-Source0: kvm.tar.gz
-Source1: user.tar.gz
-Source2: kernel.tar.gz
-Source3: scripts.tar.gz
-Source4: Makefile
-Source5: configure
-Source5: kvm_stat
-%endif
+Source0:        %{name}-%{version}-%{release}.tar.gz
 
 %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 !%{_prebuilt}
-%setup -T -b 0 -n qemu
-%setup -T -b 1 -n user -D
-%setup -T -b 2 -n kernel -D
-%setup -T -b 3 -n scripts -D
-cd ..
-cp %{_sourcedir}/Makefile %{_sourcedir}/configure %{_sourcedir}/kvm_stat .
-%endif
+%setup
 
 %build
-
 rm -rf %{buildroot}
-
-%if !%{_prebuilt}
-cd ..
 ./configure --prefix=/usr/kvm
-make -C user
-#(cd qemu;
-#    ./co
-#   kpath="$(readlink -f ../kernel/include)"
-#   upath="$(readlink -f ../user)"
-#   ./configure --target-list=$(uname -i)-softmmu \
-#	    --extra-cflags="-I$kpath -I$upath" \
-#	    --extra-ldflags="-L$upath" \
-#	    --disable-kqemu --enable-kvm --prefix=/usr/kvm
-#)
-make -C qemu
-%endif
+make
 
 %install
-
-%if !%{_prebuilt}
-cd ..
-%else
-cd %{objdir}
-%endif
-
 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 
+depmod -a ${uname}
+/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
+depmod -a ${uname}
 
 %clean
 %{__rm} -rf %{buildroot}
 
 %files
+%defattr(-,root,root)
 /usr/bin/kvm
 /usr/bin/kvm_stat
 %{confdir}/qemu-ifup
 %{initdir}/kvm  
 /etc/udev/rules.d/*kvm*.rules
-/usr/kvm
+%dir /usr/kvm
+%dir /usr/kvm/bin
+/usr/kvm/bin/qemu-img
+/usr/kvm/bin/qemu-system-x86_64
+%dir /usr/kvm/share
+%dir /usr/kvm/share/qemu
+/usr/kvm/share/qemu/bios.bin
+%dir /usr/kvm/share/qemu/keymaps
+/usr/kvm/share/qemu/keymaps/ar
+/usr/kvm/share/qemu/keymaps/common
+/usr/kvm/share/qemu/keymaps/da
+/usr/kvm/share/qemu/keymaps/de
+/usr/kvm/share/qemu/keymaps/de-ch
+/usr/kvm/share/qemu/keymaps/en-gb
+/usr/kvm/share/qemu/keymaps/en-us
+/usr/kvm/share/qemu/keymaps/es
+/usr/kvm/share/qemu/keymaps/et
+/usr/kvm/share/qemu/keymaps/fi
+/usr/kvm/share/qemu/keymaps/fo
+/usr/kvm/share/qemu/keymaps/fr
+/usr/kvm/share/qemu/keymaps/fr-be
+/usr/kvm/share/qemu/keymaps/fr-ca
+/usr/kvm/share/qemu/keymaps/fr-ch
+/usr/kvm/share/qemu/keymaps/hr
+/usr/kvm/share/qemu/keymaps/hu
+/usr/kvm/share/qemu/keymaps/is
+/usr/kvm/share/qemu/keymaps/it
+/usr/kvm/share/qemu/keymaps/ja
+/usr/kvm/share/qemu/keymaps/lt
+/usr/kvm/share/qemu/keymaps/lv
+/usr/kvm/share/qemu/keymaps/mk
+/usr/kvm/share/qemu/keymaps/modifiers
+/usr/kvm/share/qemu/keymaps/nl
+/usr/kvm/share/qemu/keymaps/nl-be
+/usr/kvm/share/qemu/keymaps/no
+/usr/kvm/share/qemu/keymaps/pl
+/usr/kvm/share/qemu/keymaps/pt
+/usr/kvm/share/qemu/keymaps/pt-br
+/usr/kvm/share/qemu/keymaps/ru
+/usr/kvm/share/qemu/keymaps/sl
+/usr/kvm/share/qemu/keymaps/sv
+/usr/kvm/share/qemu/keymaps/th
+/usr/kvm/share/qemu/keymaps/tr
+/usr/kvm/share/qemu/openbios-sparc32
+/usr/kvm/share/qemu/ppc_rom.bin
+/usr/kvm/share/qemu/pxe-ne2k_pci.bin
+/usr/kvm/share/qemu/pxe-pcnet.bin
+/usr/kvm/share/qemu/pxe-rtl8139.bin
+/usr/kvm/share/qemu/vgabios-cirrus.bin
+/usr/kvm/share/qemu/vgabios.bin
+/usr/kvm/share/qemu/video.x
+%dir /lib/modules/%{uname}/extra
+/lib/modules/%{uname}/extra/kvm.ko
+/lib/modules/%{uname}/extra/kvm-intel.ko
+/lib/modules/%{uname}/extra/kvm-amd.ko
 %changelog


-------------------------------------------------------------------------
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/

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [Patch][RFC] fix make rpm
       [not found] ` <CBC81ADDCF7D33takebe_akio-+CUm20s59erQFUHtdCDX3A@public.gmane.org>
@ 2007-10-30 11:59   ` Avi Kivity
       [not found]     ` <47271CB2.1020503-atKUWr5tajBWk0Htik3J/w@public.gmane.org>
  0 siblings, 1 reply; 7+ messages in thread
From: Avi Kivity @ 2007-10-30 11:59 UTC (permalink / raw)
  To: Akio Takebe; +Cc: kvm-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f

Akio Takebe wrote:
> Hi,
>
>   

Hi!

> This patch fix "make rpm".
> When I used the rpm option, I got some error.
> So I fixed it, but it is a just sample?
>
>   

'make rpm' works for me on F7 (after I fixed fallout from the libkvm 
separation patch).  What distribution did you run it on?  What error did 
you get?

I think we can't treat it as more than a sample because we can't expect 
it to work everywhere (e.g. debian).  But i will accept patches to 
improve it.

> What do you think about it?
>
> Signed-off-by: Akio Takebe <takebe_akio-+CUm20s59erQFUHtdCDX3A@public.gmane.org>
> -/usr/kvm
> +%dir /usr/kvm
> +%dir /usr/kvm/bin
> +/usr/kvm/bin/qemu-img
> +/usr/kvm/bin/qemu-system-x86_64
> +%dir /usr/kvm/share
> +%dir /usr/kvm/share/qemu
> +/usr/kvm/share/qemu/bios.bin
> +%dir /usr/kvm/share/qemu/keymaps
> +/usr/kvm/share/qemu/keymaps/ar
> +/usr/kvm/share/qemu/keymaps/common
> +/usr/kvm/share/qemu/keymaps/da
> +/usr/kvm/share/qemu/keymaps/de
> +/usr/kvm/share/qemu/keymaps/de-ch
> +/usr/kvm/share/qemu/keymaps/en-gb
> +/usr/kvm/share/qemu/keymaps/en-us
> +/usr/kvm/share/qemu/keymaps/es
> +/usr/kvm/share/qemu/keymaps/et
> +/usr/kvm/share/qemu/keymaps/fi
> +/usr/kvm/share/qemu/keymaps/fo
> +/usr/kvm/share/qemu/keymaps/fr
> +/usr/kvm/share/qemu/keymaps/fr-be
> +/usr/kvm/share/qemu/keymaps/fr-ca
> +/usr/kvm/share/qemu/keymaps/fr-ch
> +/usr/kvm/share/qemu/keymaps/hr
> +/usr/kvm/share/qemu/keymaps/hu
> +/usr/kvm/share/qemu/keymaps/is
> +/usr/kvm/share/qemu/keymaps/it
> +/usr/kvm/share/qemu/keymaps/ja
> +/usr/kvm/share/qemu/keymaps/lt
> +/usr/kvm/share/qemu/keymaps/lv
> +/usr/kvm/share/qemu/keymaps/mk
> +/usr/kvm/share/qemu/keymaps/modifiers
> +/usr/kvm/share/qemu/keymaps/nl
> +/usr/kvm/share/qemu/keymaps/nl-be
> +/usr/kvm/share/qemu/keymaps/no
> +/usr/kvm/share/qemu/keymaps/pl
> +/usr/kvm/share/qemu/keymaps/pt
> +/usr/kvm/share/qemu/keymaps/pt-br
> +/usr/kvm/share/qemu/keymaps/ru
> +/usr/kvm/share/qemu/keymaps/sl
> +/usr/kvm/share/qemu/keymaps/sv
> +/usr/kvm/share/qemu/keymaps/th
> +/usr/kvm/share/qemu/keymaps/tr
> +/usr/kvm/share/qemu/openbios-sparc32
> +/usr/kvm/share/qemu/ppc_rom.bin
> +/usr/kvm/share/qemu/pxe-ne2k_pci.bin
> +/usr/kvm/share/qemu/pxe-pcnet.bin
> +/usr/kvm/share/qemu/pxe-rtl8139.bin
> +/usr/kvm/share/qemu/vgabios-cirrus.bin
> +/usr/kvm/share/qemu/vgabios.bin
> +/usr/kvm/share/qemu/video.x
> +%dir /lib/modules/%{uname}/extra
> +/lib/modules/%{uname}/extra/kvm.ko
> +/lib/modules/%{uname}/extra/kvm-intel.ko
> +/lib/modules/%{uname}/extra/kvm-amd.ko
>  %changelog
>
>   

Why is this change necessary?  Doesn't '/usr/kvm' work?  This way, every 
time qemu adds a file we have to update the rpm spec.


-- 
Any sufficiently difficult bug is indistinguishable from a feature.


-------------------------------------------------------------------------
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/

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [Patch][RFC] fix make rpm
       [not found]     ` <47271CB2.1020503-atKUWr5tajBWk0Htik3J/w@public.gmane.org>
@ 2007-10-30 12:16       ` Akio Takebe
       [not found]         ` <CEC81AEEA48120takebe_akio-+CUm20s59erQFUHtdCDX3A@public.gmane.org>
  2007-10-30 15:10       ` Hollis Blanchard
  1 sibling, 1 reply; 7+ messages in thread
From: Akio Takebe @ 2007-10-30 12:16 UTC (permalink / raw)
  To: Avi Kivity; +Cc: kvm-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f, Akio Takebe

Hi, Avi

Thank you for your comments.


>> This patch fix "make rpm".
>> When I used the rpm option, I got some error.
>> So I fixed it, but it is a just sample?
>>
>>   
>
>'make rpm' works for me on F7 (after I fixed fallout from the libkvm 
>separation patch).  What distribution did you run it on?  What error did 
>you get?
>
I used RHEL5. I got the following error at fist.

[root@vmx08 kvm-49]# make rpm
mkdir -p SOURCES SRPMS
mkdir: `SOURCES' exists but is not a directory
make: *** [srpm] Error 1
[root@vmx08 kvm-49]# 

So I retried it after remaking SOURCES.

[root@vmx08 kvm-49]# rm SOURCES 
rm: remove regular file `SOURCES'? yes
[root@vmx08 kvm-49]# mkdir SOURCES
[root@vmx08 kvm-49]# make rpm
mkdir -p SOURCES SRPMS
sed 's/^Release:.*/Release: devel/' kvm.spec > .tmp.kvm.spec
tar czf SOURCES/kvm.tar.gz qemu
tar czf SOURCES/user.tar.gz user
tar czf SOURCES/kernel.tar.gz kernel
tar czf SOURCES/scripts.tar.gz scripts
cp Makefile configure kvm_stat SOURCES
rpmbuild  --define="_topdir $(pwd)" -bs .tmp.kvm.spec
error: types must match
error: /root/kvm-49/.tmp.kvm.spec:18: parseExpressionBoolean returns -1
error: Package has no %description: kvm
make: *** [srpm] Error 1
[root@vmx08 kvm-49]# 

After I fixed above, I got some more errors...

>I think we can't treat it as more than a sample because we can't expect 
>it to work everywhere (e.g. debian).  But i will accept patches to 
>improve it.
>
OK, I agree.

>> What do you think about it?
>>
>> Signed-off-by: Akio Takebe <takebe_akio-+CUm20s59erQFUHtdCDX3A@public.gmane.org>
>> -/usr/kvm
>> +%dir /usr/kvm
>> +%dir /usr/kvm/bin
>> +/usr/kvm/bin/qemu-img
>> +/usr/kvm/bin/qemu-system-x86_64
>> +%dir /usr/kvm/share
>> +%dir /usr/kvm/share/qemu
>> +/usr/kvm/share/qemu/bios.bin
>> +%dir /usr/kvm/share/qemu/keymaps
>> +/usr/kvm/share/qemu/keymaps/ar
>> +/usr/kvm/share/qemu/keymaps/common
>> +/usr/kvm/share/qemu/keymaps/da
>> +/usr/kvm/share/qemu/keymaps/de
>> +/usr/kvm/share/qemu/keymaps/de-ch
>> +/usr/kvm/share/qemu/keymaps/en-gb
>> +/usr/kvm/share/qemu/keymaps/en-us
>> +/usr/kvm/share/qemu/keymaps/es
>> +/usr/kvm/share/qemu/keymaps/et
>> +/usr/kvm/share/qemu/keymaps/fi
>> +/usr/kvm/share/qemu/keymaps/fo
>> +/usr/kvm/share/qemu/keymaps/fr
>> +/usr/kvm/share/qemu/keymaps/fr-be
>> +/usr/kvm/share/qemu/keymaps/fr-ca
>> +/usr/kvm/share/qemu/keymaps/fr-ch
>> +/usr/kvm/share/qemu/keymaps/hr
>> +/usr/kvm/share/qemu/keymaps/hu
>> +/usr/kvm/share/qemu/keymaps/is
>> +/usr/kvm/share/qemu/keymaps/it
>> +/usr/kvm/share/qemu/keymaps/ja
>> +/usr/kvm/share/qemu/keymaps/lt
>> +/usr/kvm/share/qemu/keymaps/lv
>> +/usr/kvm/share/qemu/keymaps/mk
>> +/usr/kvm/share/qemu/keymaps/modifiers
>> +/usr/kvm/share/qemu/keymaps/nl
>> +/usr/kvm/share/qemu/keymaps/nl-be
>> +/usr/kvm/share/qemu/keymaps/no
>> +/usr/kvm/share/qemu/keymaps/pl
>> +/usr/kvm/share/qemu/keymaps/pt
>> +/usr/kvm/share/qemu/keymaps/pt-br
>> +/usr/kvm/share/qemu/keymaps/ru
>> +/usr/kvm/share/qemu/keymaps/sl
>> +/usr/kvm/share/qemu/keymaps/sv
>> +/usr/kvm/share/qemu/keymaps/th
>> +/usr/kvm/share/qemu/keymaps/tr
>> +/usr/kvm/share/qemu/openbios-sparc32
>> +/usr/kvm/share/qemu/ppc_rom.bin
>> +/usr/kvm/share/qemu/pxe-ne2k_pci.bin
>> +/usr/kvm/share/qemu/pxe-pcnet.bin
>> +/usr/kvm/share/qemu/pxe-rtl8139.bin
>> +/usr/kvm/share/qemu/vgabios-cirrus.bin
>> +/usr/kvm/share/qemu/vgabios.bin
>> +/usr/kvm/share/qemu/video.x
>> +%dir /lib/modules/%{uname}/extra
>> +/lib/modules/%{uname}/extra/kvm.ko
>> +/lib/modules/%{uname}/extra/kvm-intel.ko
>> +/lib/modules/%{uname}/extra/kvm-amd.ko
>>  %changelog
>>
>>   
>
>Why is this change necessary?  Doesn't '/usr/kvm' work?  This way, every 
>time qemu adds a file we have to update the rpm spec.
Exactly, I think better writing these, but actually these are not needed.
So when qemu is updated, we need to update these as you said.
I'll put back them because it's messy.

Best Regards,

Akio Takebe


-------------------------------------------------------------------------
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/

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [Patch][RFC] fix make rpm
       [not found]         ` <CEC81AEEA48120takebe_akio-+CUm20s59erQFUHtdCDX3A@public.gmane.org>
@ 2007-10-30 12:24           ` Avi Kivity
  0 siblings, 0 replies; 7+ messages in thread
From: Avi Kivity @ 2007-10-30 12:24 UTC (permalink / raw)
  To: Akio Takebe; +Cc: kvm-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f

Akio Takebe wrote:
> Hi, Avi
>
> Thank you for your comments.
>
>
>   
>>> This patch fix "make rpm".
>>> When I used the rpm option, I got some error.
>>> So I fixed it, but it is a just sample?
>>>
>>>   
>>>       
>> 'make rpm' works for me on F7 (after I fixed fallout from the libkvm 
>> separation patch).  What distribution did you run it on?  What error did 
>> you get?
>>
>>     
> I used RHEL5. I got the following error at fist.
>
> [root@vmx08 kvm-49]# make rpm
> mkdir -p SOURCES SRPMS
> mkdir: `SOURCES' exists but is not a directory
> make: *** [srpm] Error 1
> [root@vmx08 kvm-49]# 
>   

Ah, SOURCES only exists in the distributed package, not in the git tree. 
That's why I never got an error. It's probably best to push all the rpm 
build directories under a new subdirectory rpm/.

> So I retried it after remaking SOURCES.
>
> [root@vmx08 kvm-49]# rm SOURCES 
> rm: remove regular file `SOURCES'? yes
> [root@vmx08 kvm-49]# mkdir SOURCES
> [root@vmx08 kvm-49]# make rpm
> mkdir -p SOURCES SRPMS
> sed 's/^Release:.*/Release: devel/' kvm.spec > .tmp.kvm.spec
> tar czf SOURCES/kvm.tar.gz qemu
> tar czf SOURCES/user.tar.gz user
> tar czf SOURCES/kernel.tar.gz kernel
> tar czf SOURCES/scripts.tar.gz scripts
> cp Makefile configure kvm_stat SOURCES
> rpmbuild  --define="_topdir $(pwd)" -bs .tmp.kvm.spec
> error: types must match
> error: /root/kvm-49/.tmp.kvm.spec:18: parseExpressionBoolean returns -1
>   

This can be fixed by updating the check on line 18 to include RHEL. We 
do need the BuildRequires below...

> error: Package has no %description: kvm
> make: *** [srpm] Error 1
> [root@vmx08 kvm-49]# 
>
> After I fixed above, I got some more errors...
>   

-- 
Any sufficiently difficult bug is indistinguishable from a feature.


-------------------------------------------------------------------------
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/

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [Patch][RFC] fix make rpm
       [not found]     ` <47271CB2.1020503-atKUWr5tajBWk0Htik3J/w@public.gmane.org>
  2007-10-30 12:16       ` Akio Takebe
@ 2007-10-30 15:10       ` Hollis Blanchard
  2007-10-31  0:39         ` Avi Kivity
  1 sibling, 1 reply; 7+ messages in thread
From: Hollis Blanchard @ 2007-10-30 15:10 UTC (permalink / raw)
  To: Avi Kivity; +Cc: kvm-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f

On Tue, 2007-10-30 at 13:59 +0200, Avi Kivity wrote:
> 
> > -/usr/kvm
> > +%dir /usr/kvm
> > +%dir /usr/kvm/bin
> > +/usr/kvm/bin/qemu-img
> > +/usr/kvm/bin/qemu-system-x86_64
[...]
> 
> Why is this change necessary?  Doesn't '/usr/kvm' work?  This way,
> every time qemu adds a file we have to update the rpm spec.

FYI, I got burned by exactly this problem once. Due to a missing prereq,
a package build didn't produce all the output it should have. However,
because I hadn't listed every output explicitly, rpm happily packaged
everything else, and the package shipped in a distro before anybody
realized anything was missing.

-- 
Hollis Blanchard
IBM Linux Technology Center


-------------------------------------------------------------------------
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/

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [Patch][RFC] fix make rpm
  2007-10-30 15:10       ` Hollis Blanchard
@ 2007-10-31  0:39         ` Avi Kivity
       [not found]           ` <4727CEDF.8060304-atKUWr5tajBWk0Htik3J/w@public.gmane.org>
  0 siblings, 1 reply; 7+ messages in thread
From: Avi Kivity @ 2007-10-31  0:39 UTC (permalink / raw)
  To: Hollis Blanchard; +Cc: kvm-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f

Hollis Blanchard wrote:
> On Tue, 2007-10-30 at 13:59 +0200, Avi Kivity wrote:
>   
>>> -/usr/kvm
>>> +%dir /usr/kvm
>>> +%dir /usr/kvm/bin
>>> +/usr/kvm/bin/qemu-img
>>> +/usr/kvm/bin/qemu-system-x86_64
>>>       
> [...]
>   
>> Why is this change necessary?  Doesn't '/usr/kvm' work?  This way,
>> every time qemu adds a file we have to update the rpm spec.
>>     
>
> FYI, I got burned by exactly this problem once. Due to a missing prereq,
> a package build didn't produce all the output it should have. However,
> because I hadn't listed every output explicitly, rpm happily packaged
> everything else, and the package shipped in a distro before anybody
> realized anything was missing.
>
>   

Yeah, perhaps the script should have a "dangerous" label.  Or all rpm 
scripts.

Listing the files doesn't actually solve the problem.  How does a 
packager know if a file was removed intenrionally or accidentally?

-- 
Any sufficiently difficult bug is indistinguishable from a feature.


-------------------------------------------------------------------------
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/

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [Patch][RFC] fix make rpm
       [not found]           ` <4727CEDF.8060304-atKUWr5tajBWk0Htik3J/w@public.gmane.org>
@ 2007-10-31 15:25             ` Hollis Blanchard
  0 siblings, 0 replies; 7+ messages in thread
From: Hollis Blanchard @ 2007-10-31 15:25 UTC (permalink / raw)
  To: Avi Kivity; +Cc: kvm-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f


On Wed, 2007-10-31 at 02:39 +0200, Avi Kivity wrote:
> Hollis Blanchard wrote:
> > On Tue, 2007-10-30 at 13:59 +0200, Avi Kivity wrote:
> >   
> >>> -/usr/kvm
> >>> +%dir /usr/kvm
> >>> +%dir /usr/kvm/bin
> >>> +/usr/kvm/bin/qemu-img
> >>> +/usr/kvm/bin/qemu-system-x86_64
> >>>       
> > [...]
> >   
> >> Why is this change necessary?  Doesn't '/usr/kvm' work?  This way,
> >> every time qemu adds a file we have to update the rpm spec.
> >>     
> >
> > FYI, I got burned by exactly this problem once. Due to a missing prereq,
> > a package build didn't produce all the output it should have. However,
> > because I hadn't listed every output explicitly, rpm happily packaged
> > everything else, and the package shipped in a distro before anybody
> > realized anything was missing.
> >
> >   
> 
> Yeah, perhaps the script should have a "dangerous" label.  Or all rpm 
> scripts.
> 
> Listing the files doesn't actually solve the problem.  How does a 
> packager know if a file was removed intenrionally or accidentally?

When the package won't build due to a missing file, that draws
attention, and so the packager investigates (and sees for example that
the file in question is no longer listed in any Makefiles).

-- 
Hollis Blanchard
IBM Linux Technology Center


-------------------------------------------------------------------------
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/

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2007-10-31 15:25 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-10-30 10:15 [Patch][RFC] fix make rpm Akio Takebe
     [not found] ` <CBC81ADDCF7D33takebe_akio-+CUm20s59erQFUHtdCDX3A@public.gmane.org>
2007-10-30 11:59   ` Avi Kivity
     [not found]     ` <47271CB2.1020503-atKUWr5tajBWk0Htik3J/w@public.gmane.org>
2007-10-30 12:16       ` Akio Takebe
     [not found]         ` <CEC81AEEA48120takebe_akio-+CUm20s59erQFUHtdCDX3A@public.gmane.org>
2007-10-30 12:24           ` Avi Kivity
2007-10-30 15:10       ` Hollis Blanchard
2007-10-31  0:39         ` Avi Kivity
     [not found]           ` <4727CEDF.8060304-atKUWr5tajBWk0Htik3J/w@public.gmane.org>
2007-10-31 15:25             ` Hollis Blanchard

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox