]> git.pld-linux.org Git - packages/qemu.git/blobdiff - qemu.spec
- kqemu kernel module build procedure updated
[packages/qemu.git] / qemu.spec
index 2c5394886245522a2171f9a7bb0daab10c399387..92ed82a2ef2bc7c3698659403f60a5f016d6b85f 100644 (file)
--- a/qemu.spec
+++ b/qemu.spec
@@ -6,25 +6,28 @@
 %bcond_with    kqemu                   # with QEMU accelerator module
 %bcond_with    cflags_passing          # with passing rpmcflags to Makefiles
 %bcond_with    nosdlgui                # do not use SDL gui (use X11 instead)
+%bcond_with    gcc4                    # use gcc4 patches (broke build on gcc33)
 %bcond_without dist_kernel             # without distribution kernel
 %bcond_without kernel                  # don't build kernel modules
 %bcond_without smp                     # don't build SMP module
 %bcond_without userspace               # don't build userspace utilities
+
+%define        _kqemu_version  0.7.2
 #
 Summary:       QEMU CPU Emulator
 Summary(pl):   QEMU - emulator procesora
 Name:          qemu
-Version:       0.7.1
-%define                _rel    1.4
+Version:       0.8.0
+%define                _rel    1.1
 Release:       %{_rel}%{?with_kqemu:k}
 License:       GPL
 Group:         Applications/Emulators
 #Source0Download: http://fabrice.bellard.free.fr/qemu/download.html
 Source0:       http://fabrice.bellard.free.fr/qemu/%{name}-%{version}.tar.gz
-# Source0-md5: b0c80d2c082049a5b8ccbc7f55fe165b
+# Source0-md5: eb175b26583280706fe7e4d8910d320d
 %if %{with kqemu}
-Source1:       http://fabrice.bellard.free.fr/qemu/kqemu-%{version}-1.tar.gz
-# NoSource1-md5:       012498dac620eb8c212bf5f622414dd0
+Source1:       http://fabrice.bellard.free.fr/qemu/kqemu-%{_kqemu_version}.tar.gz
+# NoSource1-md5:       02cfdecda90458d6393781496ec6b48b
 NoSource:      1
 %endif
 Patch0:                %{name}-nostatic.patch
@@ -37,8 +40,12 @@ Patch6:              %{name}-gcc4_ppc.patch
 Patch7:                %{name}-parallel.patch
 Patch8:                %{name}-nosdlgui.patch
 Patch9:                %{name}-ifup.patch
+Patch10:       %{name}-gcc33.patch
+Patch11:       %{name}-slirp_throttle.patch
 URL:           http://fabrice.bellard.free.fr/qemu/
 BuildRequires: SDL-devel >= 1.2.1
+BuildRequires: alsa-lib-devel
+%{!?with_gcc4:BuildRequires:   gcc < 5:4.0}
 %if %{with kqemu} && %{with dist_kernel}
 BuildRequires: kernel-module-build >= 2.6.7
 %endif
@@ -91,9 +98,11 @@ aby dzia
 %package -n kernel-misc-kqemu
 Summary:       kqemu - kernel module
 Summary(pl):   kqemu - modu³ j±dra
+Version:       %{_kqemu_version}
 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
 
 %description -n kernel-misc-kqemu
@@ -105,9 +114,11 @@ kqemu - modu
 %package -n kernel-smp-misc-kqemu
 Summary:       kqemu - SMP kernel module
 Summary(pl):   kqemu - modu³ j±dra SMP
+Version:       %{_kqemu_version}
 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
 
 %description -n kernel-smp-misc-kqemu
@@ -123,11 +134,16 @@ kqemu - modu
 %patch2 -p1
 %patch3 -p1
 %patch4 -p1
+%if %{with gcc4}
 %patch5 -p0
 %patch6 -p1
-%patch7 -p1
+%endif
+# probably not needed
+# %patch7 -p1
 %{?with_nosdlgui:%patch8 -p1}
 %patch9 -p1
+%patch10 -p1
+%patch11 -p0
 
 %{__sed} -i -e 's/sdl_static=yes/sdl_static=no/' configure
 %{__sed} -i 's/.*MAKE) -C kqemu$//' Makefile
@@ -135,6 +151,8 @@ kqemu - modu
 # cannot use optflags on x86 - they cause "no register to spill" errors
 %if %{with cflags_passing}
 %{__sed} -i -e 's/-Wall -O2 -g/-Wall %{rpmcflags}/' Makefile Makefile.target
+%else
+%{__sed} -i 's/-Wall -O2 -g/-Wall -O2/' Makefile Makefile.target
 %endif
 
 %{?with_kqemu:echo -n > kqemu/install.sh}
@@ -146,20 +164,21 @@ for cfg in %{?with_dist_kernel:%{?with_smp:smp} up}%{!?with_dist_kernel:nondist}
        if [ ! -r "%{_kernelsrcdir}/config-$cfg" ]; then
                exit 1
        fi
-       rm -rf include
-       install -d include/{linux,config}
-       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
+       install -d o/include/{linux,config}
+       ln -sf %{_kernelsrcdir}/config-$cfg o/.config
+       ln -sf %{_kernelsrcdir}/include/linux/autoconf-$cfg.h o/include/linux/autoconf.h
+       ln -sf %{_kernelsrcdir}/Module.symvers-$cfg o/Module.symvers
 %if %{without dist_kernel}
-       ln -sf %{_kernelsrcdir}/scripts
+       %{__make} -C %{_kernelsrcdir} O=$PWD/o prepare scripts
+%else
+       ln -sf %{_kernelsrcdir}/scripts o/scripts
+       touch o/include/config/MARKER
 %endif
-       touch include/config/MARKER
        %{__make} -C %{_kernelsrcdir} clean \
                RCS_FIND_IGNORE="-name 'kqemu-mod-*.*' -o" \
-               M=$PWD O=$PWD
+               M=$PWD O=$PWD/o
        %{__make} -C %{_kernelsrcdir} modules \
-               M=$PWD O=$PWD
+               M=$PWD O=$PWD/o
        mv kqemu.ko kqemu-mod-$cfg.ko
 done
 cd -
@@ -171,8 +190,11 @@ cd -
 ./configure \
        --prefix=%{_prefix} \
        --cc="%{__cc}" \
+       %{?with_gcc4:--disable-gcc-check} \
        %{!?with_kqemu:--disable-kqemu} \
-       --make="%{__make}"
+       --enable-alsa \
+       --make="%{__make}" \
+       --interp-prefix=%{_libdir}/%{name}
 %{__make}
 %endif
 
@@ -210,7 +232,7 @@ rm -rf $RPM_BUILD_ROOT
 
 %if %{with kqemu}
 %post
-%banner %{name} -e << EOF
+%banner %{name} -e <<EOF
 To enable qemu accelerator (kqemu), the kqemu kernel module must be loaded:
 modprobe kqemu
 EOF
@@ -218,12 +240,20 @@ EOF
 
 %post  -n kernel-misc-kqemu
 %depmod %{_kernel_ver}
+%banner %{name}-module -e <<EOF
+To autoload kqemu module, add to /etc/modprobe.conf:
+alias char-major-250 kqemu
+EOF
 
 %postun -n kernel-misc-kqemu
 %depmod %{_kernel_ver}
 
 %post  -n kernel-smp-misc-kqemu
 %depmod %{_kernel_ver}smp
+%banner %{name}-module -e <<EOF
+To autoload kqemu module, add to /etc/modprobe.conf:
+alias char-major-250 kqemu
+EOF
 
 %postun -n kernel-smp-misc-kqemu
 %depmod %{_kernel_ver}smp
@@ -246,11 +276,13 @@ EOF
 %if %{with kernel}
 %files -n kernel-misc-kqemu
 %defattr(644,root,root,755)
+%doc kqemu/LICENSE
 /lib/modules/%{_kernel_ver}/misc/kqemu.ko*
 
 %if %{with smp} && %{with dist_kernel}
 %files -n kernel-smp-misc-kqemu
 %defattr(644,root,root,755)
+%doc kqemu/LICENSE
 /lib/modules/%{_kernel_ver}smp/misc/kqemu.ko*
 %endif
 %endif
This page took 0.035919 seconds and 4 git commands to generate.