| 1 |
%define githead 04387139e3b
|
| 2 |
Name: bochs
|
| 3 |
Version: 2.3.8
|
| 4 |
Release: 0.8.git%{githead}%{?dist}
|
| 5 |
Summary: Portable x86 PC emulator
|
| 6 |
Group: Applications/Emulators
|
| 7 |
License: LGPLv2+
|
| 8 |
URL: http://bochs.sourceforge.net/
|
| 9 |
#Source0: http://downloads.sourceforge.net/%{name}/%{name}-%{version}.tar.gz
|
| 10 |
# git clone git://git.kernel.org/pub/scm/virt/bochs/bochs.git
|
| 11 |
# cd bochs
|
| 12 |
# git archive --format=tar --prefix=%{name}-%{version}/ %{githead} | gzip > ../%{name}-%{version}.tar.gz
|
| 13 |
Source0: %{name}-%{version}.tar.gz
|
| 14 |
|
| 15 |
# This should not live here, but letting it in the kvm package would produce another noarch package we would
|
| 16 |
# then have to get rid of in the future. So let it be.
|
| 17 |
# git clone git://git.kernel.org/pub/scm/linux/kernel/git/avi/qemu-kvm.git
|
| 18 |
# cd kvm
|
| 19 |
# git archive --format=tar --prefix=kvm-bios/ HEAD bios | gzip > ../../kvm-bios.tar.gz
|
| 20 |
Source1: kvm-bios.tar.gz
|
| 21 |
|
| 22 |
Patch0: %{name}-0001_bx-qemu.patch
|
| 23 |
Patch1: %{name}-0002_kvm-bios-update-smbios-table-to-report-memory-above-4g.patch
|
| 24 |
Patch2: %{name}-0003_kvm-bios-generate-mptable-unconditionally.patch
|
| 25 |
Patch3: %{name}-0004_kvm-bios-resolve-memory-device-roll-over-reporting--issues-with-32g-guests.patch
|
| 26 |
Patch4: %{name}-0005_kvm-bios-fix-smbios-memory-device-length-boundary--condition.patch
|
| 27 |
Patch5: %{name}-0006_qemu-bios-use-preprocessor-for-pci-link-routing.patch
|
| 28 |
Patch6: %{name}-0007_bios-add-26-pci-slots,-bringing-the-total-to-32.patch
|
| 29 |
Patch7: %{name}-0008_qemu-bios-provide-gpe-_l0x-methods.patch
|
| 30 |
Patch8: %{name}-0009_qemu-bios-pci-hotplug-support.patch
|
| 31 |
Patch9: %{name}-0010_bios-mark-the-acpi-sci-interrupt-as-connected-to-irq-9.patch
|
| 32 |
Patch10: %{name}-0011_read-additional-acpi-tables-from-a-vm.patch
|
| 33 |
Patch11: %{name}-nonet-build.patch
|
| 34 |
|
| 35 |
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
|
| 36 |
BuildRequires: libXt-devel libXpm-devel SDL-devel readline-devel byacc
|
| 37 |
BuildRequires: docbook-utils
|
| 38 |
BuildRequires: gtk2-devel
|
| 39 |
#BuildRequires: wxGTK-devel
|
| 40 |
%ifarch %{ix86} x86_64
|
| 41 |
BuildRequires: svgalib-devel
|
| 42 |
BuildRequires: dev86 iasl
|
| 43 |
%endif
|
| 44 |
Requires: %{name}-bios = %{version}-%{release}
|
| 45 |
Requires: vgabios
|
| 46 |
|
| 47 |
%description
|
| 48 |
Bochs is a portable x86 PC emulation software package that emulates
|
| 49 |
enough of the x86 CPU, related AT hardware, and BIOS to run DOS,
|
| 50 |
Windows '95, Minix 2.0, and other OS's, all on your workstation.
|
| 51 |
|
| 52 |
|
| 53 |
%package debugger
|
| 54 |
Summary: Bochs with builtin debugger
|
| 55 |
Group: Applications/Emulators
|
| 56 |
Requires: %{name} = %{version}-%{release}
|
| 57 |
|
| 58 |
%description debugger
|
| 59 |
Special version of bochs compiled with the builtin debugger.
|
| 60 |
|
| 61 |
|
| 62 |
%package gdb
|
| 63 |
Summary: Bochs with support for debugging with gdb
|
| 64 |
Group: Applications/Emulators
|
| 65 |
Requires: %{name} = %{version}-%{release}
|
| 66 |
|
| 67 |
%description gdb
|
| 68 |
Special version of bochs compiled with a gdb stub so that the software running
|
| 69 |
inside the emulator can be debugged with gdb.
|
| 70 |
|
| 71 |
%ifarch %{ix86} x86_64
|
| 72 |
# building firmwares are quite tricky, because they often has to be built on
|
| 73 |
# their native architecture (or in a cross-capable compiler, that we lack in
|
| 74 |
# koji), and deployed everywhere. Recent koji builders support a feature
|
| 75 |
# that allow us to build packages in a single architecture, and create noarch
|
| 76 |
# subpackages that will be deployed everywhere. Because the package can only
|
| 77 |
# be built in certain architectures, the main package has to use
|
| 78 |
# BuildArch: <nativearch>, or something like that.
|
| 79 |
# Note that using ExclusiveArch is _wrong_, because it will prevent the noarch
|
| 80 |
# packages from getting into the excluded repositories.
|
| 81 |
%package bios
|
| 82 |
Summary: Bochs bios
|
| 83 |
Group: Applications/Emulators
|
| 84 |
BuildArch: noarch
|
| 85 |
Provides: bochs-bios-data = 2.3.8.1
|
| 86 |
Obsoletes: bochs-bios-data < 2.3.8.1
|
| 87 |
|
| 88 |
|
| 89 |
%description bios
|
| 90 |
Bochs BIOS is a free implementation of a x86 BIOS provided by the Bochs projects.
|
| 91 |
It can also be used in other emulators, such as QEMU
|
| 92 |
%endif
|
| 93 |
|
| 94 |
%prep
|
| 95 |
%setup -q
|
| 96 |
%patch0 -p1
|
| 97 |
%patch1 -p1
|
| 98 |
%patch2 -p1
|
| 99 |
%patch3 -p1
|
| 100 |
%patch4 -p1
|
| 101 |
%patch5 -p1
|
| 102 |
%patch6 -p1
|
| 103 |
%patch7 -p1
|
| 104 |
%patch8 -p1
|
| 105 |
%patch9 -p1
|
| 106 |
%patch10 -p1
|
| 107 |
%patch11 -p0 -z .nonet
|
| 108 |
|
| 109 |
%setup -b 1
|
| 110 |
mv ../kvm-bios ./
|
| 111 |
|
| 112 |
# Fix up some man page paths.
|
| 113 |
sed -i \
|
| 114 |
-e 's|/usr/local/share/doc/bochs/|%{_docdir}/%{name}-%{version}/|' \
|
| 115 |
-e 's|/usr/local/share/|%{_datadir}/|' \
|
| 116 |
doc/man/*.*
|
| 117 |
# remove executable bits from sources to make rpmlint happy with the debuginfo
|
| 118 |
chmod -x `find -name '*.cc' -o -name '*.h' -o -name '*.inc'`
|
| 119 |
# Fix CHANGES encoding
|
| 120 |
iconv -f ISO_8859-2 -t UTF8 CHANGES > CHANGES.tmp
|
| 121 |
mv CHANGES.tmp CHANGES
|
| 122 |
|
| 123 |
|
| 124 |
%build
|
| 125 |
%ifarch %{ix86} x86_64
|
| 126 |
ARCH_CONFIGURE_FLAGS=--with-svga
|
| 127 |
%endif
|
| 128 |
# Note: the CPU level, MMX et al affect what the emulator will emulate, they
|
| 129 |
# are not properties of the build target architecture.
|
| 130 |
# Note2: passing --enable-pcidev will change bochs license from LGPLv2+ to
|
| 131 |
# LGPLv2 (and requires a kernel driver to be usefull)
|
| 132 |
CONFIGURE_FLAGS=" \
|
| 133 |
--enable-plugins \
|
| 134 |
--enable-ne2000 \
|
| 135 |
--enable-pci \
|
| 136 |
--enable-all-optimizations \
|
| 137 |
--enable-vbe \
|
| 138 |
--enable-clgd54xx \
|
| 139 |
--enable-3dnow \
|
| 140 |
--enable-sb16=linux \
|
| 141 |
--with-x11 \
|
| 142 |
--with-nogui \
|
| 143 |
--with-term \
|
| 144 |
--with-rfb \
|
| 145 |
--with-sdl \
|
| 146 |
--without-wx \
|
| 147 |
$ARCH_CONFIGURE_FLAGS"
|
| 148 |
export CXXFLAGS="$RPM_OPT_FLAGS -DPARANOID"
|
| 149 |
|
| 150 |
%configure $CONFIGURE_FLAGS --enable-x86-debugger --enable-debugger
|
| 151 |
make %{?_smp_mflags}
|
| 152 |
mv bochs bochs-debugger
|
| 153 |
make dist-clean
|
| 154 |
|
| 155 |
%configure $CONFIGURE_FLAGS --enable-x86-debugger --enable-gdb-stub
|
| 156 |
make %{?_smp_mflags}
|
| 157 |
mv bochs bochs-gdb
|
| 158 |
make dist-clean
|
| 159 |
|
| 160 |
%configure $CONFIGURE_FLAGS
|
| 161 |
make %{?_smp_mflags}
|
| 162 |
|
| 163 |
%ifarch %{ix86} x86_64
|
| 164 |
cd bios
|
| 165 |
make bios
|
| 166 |
cd ../kvm-bios/bios
|
| 167 |
make bios
|
| 168 |
cp BIOS-bochs-latest ../../bios/BIOS-bochs-kvm
|
| 169 |
%endif
|
| 170 |
|
| 171 |
%install
|
| 172 |
rm -rf $RPM_BUILD_ROOT _installed-docs
|
| 173 |
make install DESTDIR=$RPM_BUILD_ROOT
|
| 174 |
rm -rf $RPM_BUILD_ROOT%{_prefix}/share/bochs/VGABIOS*
|
| 175 |
%ifnarch %{ix86} x86_64
|
| 176 |
rm -rf $RPM_BUILD_ROOT%{_prefix}/share/bochs/*BIOS*
|
| 177 |
%endif
|
| 178 |
install -m 755 bochs-debugger bochs-gdb $RPM_BUILD_ROOT%{_bindir}
|
| 179 |
mv $RPM_BUILD_ROOT%{_docdir}/bochs _installed-docs
|
| 180 |
rm $RPM_BUILD_ROOT%{_mandir}/man1/bochs-dlx.1*
|
| 181 |
|
| 182 |
|
| 183 |
%clean
|
| 184 |
rm -rf $RPM_BUILD_ROOT
|
| 185 |
|
| 186 |
|
| 187 |
%files
|
| 188 |
%defattr(-,root,root,-)
|
| 189 |
%doc _installed-docs/* README-*
|
| 190 |
%{_bindir}/bochs
|
| 191 |
%{_bindir}/bxcommit
|
| 192 |
%{_bindir}/bximage
|
| 193 |
# Note: must include *.la in %{_libdir}/bochs/plugins/
|
| 194 |
%{_libdir}/bochs/
|
| 195 |
%{_mandir}/man1/bochs.1*
|
| 196 |
%{_mandir}/man1/bxcommit.1*
|
| 197 |
%{_mandir}/man1/bximage.1*
|
| 198 |
%{_mandir}/man5/bochsrc.5*
|
| 199 |
%dir %{_datadir}/bochs/
|
| 200 |
%{_datadir}/bochs/keymaps/
|
| 201 |
|
| 202 |
%ifarch %{ix86} x86_64
|
| 203 |
%files bios
|
| 204 |
%defattr(-,root,root,-)
|
| 205 |
%{_datadir}/bochs/BIOS*
|
| 206 |
%endif
|
| 207 |
|
| 208 |
|
| 209 |
%files debugger
|
| 210 |
%defattr(-,root,root,-)
|
| 211 |
%{_bindir}/bochs-debugger
|
| 212 |
|
| 213 |
%files gdb
|
| 214 |
%defattr(-,root,root,-)
|
| 215 |
%{_bindir}/bochs-gdb
|
| 216 |
|
| 217 |
|
| 218 |
%changelog
|
| 219 |
* Fri Jul 31 2009 Glauber Costa <glommer@redhat.com> - 2:0.10.50-14.kvm88
|
| 220 |
- replace kvm-bios with a more modern version, and refresh instructions on how to get it.
|
| 221 |
|
| 222 |
* Fri Jul 24 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.3.8-0.7.git04387139e3b
|
| 223 |
- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild
|
| 224 |
|
| 225 |
* Wed Mar 11 2009 Glauber Costa <glommer@redhat.com> 2.3.8-0.6.git04387139e3b
|
| 226 |
- Fix Obsoletes/Provides pair.
|
| 227 |
|
| 228 |
* Wed Mar 11 2009 Glauber Costa <glommer@redhat.com> 2.3.8-0.5.git04387139e3b
|
| 229 |
- kvm needs a slightly different bios due to irq routing, so build it too.
|
| 230 |
from kvm source. This is not ideal, but avoids the creation of yet another
|
| 231 |
noarch subpackage.
|
| 232 |
|
| 233 |
* Fri Mar 06 2009 Glauber Costa <glommer@redhat.com> 2.3.8-0.4.git04387139e3b
|
| 234 |
- Provide and Obsolete bochs-bios-data to make sure no one is harmed during
|
| 235 |
updates.
|
| 236 |
|
| 237 |
* Thu Mar 05 2009 Glauber Costa <glommer@redhat.com> 2.3.8-0.3.git04387139e3b
|
| 238 |
- added patches ;-)
|
| 239 |
|
| 240 |
* Thu Mar 05 2009 Glauber Costa <glommer@redhat.com> 2.3.8-0.2.git04387139e3b
|
| 241 |
- this time with sources added.
|
| 242 |
|
| 243 |
* Thu Mar 05 2009 Glauber Costa <glommer@redhat.com> 2.3.8-0.1.git04387139e3b
|
| 244 |
- updated to git 04387139e3b, and applied qemu's patch ontop.
|
| 245 |
|
| 246 |
* Mon Feb 23 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.3.7-3
|
| 247 |
- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild
|
| 248 |
|
| 249 |
* Thu Dec 18 2008 Hans de Goede <hdegoede@redhat.com> 2.3.7-2
|
| 250 |
- Remove dlxlinux sub package, we cannot build this from source (rh 476878)
|
| 251 |
|
| 252 |
* Mon Jun 9 2008 Hans de Goede <j.w.r.degoede@hhs.nl> 2.3.7-1
|
| 253 |
- New upstream release 2.3.7
|
| 254 |
|
| 255 |
* Tue Feb 19 2008 Fedora Release Engineering <rel-eng@fedoraproject.org> - 2.3.6-3
|
| 256 |
- Autorebuild for GCC 4.3
|
| 257 |
|
| 258 |
* Fri Jan 11 2008 Hans de Goede <j.w.r.degoede@hhs.nl> 2.3.6-2
|
| 259 |
- Fix compilation with gcc 4.3
|
| 260 |
|
| 261 |
* Mon Dec 24 2007 Hans de Goede <j.w.r.degoede@hhs.nl> 2.3.6-1
|
| 262 |
- New upstream release 2.3.6
|
| 263 |
|
| 264 |
* Sun Sep 16 2007 Hans de Goede <j.w.r.degoede@hhs.nl> 2.3.5-1
|
| 265 |
- New upstream release 2.3.5
|
| 266 |
|
| 267 |
* Wed Aug 22 2007 Hans de Goede <j.w.r.degoede@hhs.nl> 2.3-7
|
| 268 |
- Fix CVE-2007-2894 (really fix bz 241799)
|
| 269 |
|
| 270 |
* Sun Aug 5 2007 Hans de Goede <j.w.r.degoede@hhs.nl> 2.3-6
|
| 271 |
- Update License tag for new Licensing Guidelines compliance
|
| 272 |
|
| 273 |
* Wed Jul 18 2007 Hans de Goede <j.w.r.degoede@hhs.nl> 2.3-5
|
| 274 |
- Fix CVE-2007-2893 (bz 241799)
|
| 275 |
|
| 276 |
* Mon Dec 18 2006 Hans de Goede <j.w.r.degoede@hhs.nl> 2.3-4
|
| 277 |
- rebuilt without wxGTK as wxGTK is even more broken with wxGTK 2.8 then it
|
| 278 |
was with 2.6
|
| 279 |
|
| 280 |
* Thu Oct 05 2006 Christian Iseli <Christian.Iseli@licr.org> 2.3-3
|
| 281 |
- rebuilt for unwind info generation, broken in gcc-4.1.1-21
|
| 282 |
|
| 283 |
* Fri Sep 22 2006 Hans de Goede <j.w.r.degoede@hhs.nl> 2.3-2
|
| 284 |
- Add -debugger and -gdb sub packages which contain special versions of
|
| 285 |
bochs compiled with the buildin debugger resp. the gdb-stub (bz 206508)
|
| 286 |
|
| 287 |
* Sun Aug 27 2006 Hans de Goede <j.w.r.degoede@hhs.nl> 2.3-1
|
| 288 |
- New upstream version 2.3 (final)
|
| 289 |
|
| 290 |
* Thu Aug 10 2006 Hans de Goede <j.w.r.degoede@hhs.nl> 2.3-0.1.pre3
|
| 291 |
- New upstream version 2.3.pre3
|
| 292 |
|
| 293 |
* Mon Jul 17 2006 Hans de Goede <j.w.r.degoede@hhs.nl> 2.3-0.1.pre2
|
| 294 |
- New upstream version 2.3.pre2
|
| 295 |
- Drop upstreamed wx26 patch
|
| 296 |
|
| 297 |
* Wed Feb 15 2006 Hans de Goede <j.w.r.degoede@hhs.nl> - 2.2.6-1
|
| 298 |
- New upstream version 2.2.6
|
| 299 |
- Rebuild for new gcc4.1 and glibc
|
| 300 |
- Remove --enable-pae as that requires a CPU level of 6 with the new version
|
| 301 |
- Remove a few configure switches which are identical to the
|
| 302 |
upstream defaults and thus don't do anything
|
| 303 |
- Add --enable-clgd54xx
|
| 304 |
- Add --with-svga which adds support for svgalib as display (x86(_64) only)
|
| 305 |
- Fix compile with wxGTK-2.6 and unconditionalize wxGTK build
|
| 306 |
|
| 307 |
* Fri Dec 16 2005 Ville Skyttä <ville.skytta at iki.fi> - 2.2.1-2
|
| 308 |
- Adapt to modular X.
|
| 309 |
- Fix build with g++ 4.1.0.
|
| 310 |
- Conditionalize wxGTK build and default it to off (build failures w/2.6.x).
|
| 311 |
- Use sed instead of dos2unix and perl during build.
|
| 312 |
|
| 313 |
* Sat Jul 9 2005 Ville Skyttä <ville.skytta at iki.fi> - 2.2.1-1
|
| 314 |
- 2.2.1, precision patch applied upstream.
|
| 315 |
|
| 316 |
* Sun May 29 2005 Ville Skyttä <ville.skytta at iki.fi> - 2.2-2
|
| 317 |
- Try to fix x86_64 build.
|
| 318 |
|
| 319 |
* Sat May 28 2005 Ville Skyttä <ville.skytta at iki.fi> - 2.2-1
|
| 320 |
- 2.2, buildpaths and fpu-regparms patches applied upstream, pthread and
|
| 321 |
ncurses linking hacks no longer needed.
|
| 322 |
- Use upstream default display library, wx is clunky with wxGTK2 2.4.x.
|
| 323 |
- Enable 3DNow! emulation and the SDL display library.
|
| 324 |
|
| 325 |
* Sun May 22 2005 Jeremy Katz <katzj@redhat.com> - 2.1.1-3
|
| 326 |
- rebuild on all arches
|
| 327 |
|
| 328 |
* Fri Apr 7 2005 Michael Schwendt <mschwendt[AT]users.sf.net> - 2.1.1-2
|
| 329 |
- rebuilt
|
| 330 |
|
| 331 |
* Sun Dec 5 2004 Ville Skyttä <ville.skytta at iki.fi> - 0:2.1.1-1
|
| 332 |
- Update to 2.1.1.
|
| 333 |
- Enable PAE and 4M pages support.
|
| 334 |
- Loosen version in dlxlinux to main dependency.
|
| 335 |
- BuildRequire ncurses-devel instead of ncurses-c++-devel for FC3.
|
| 336 |
- Apply upstream fpu-regparm patch to fix the build on FC3.
|
| 337 |
|
| 338 |
* Fri Jan 16 2004 Ville Skyttä <ville.skytta at iki.fi> - 0:2.1-0.fdr.2
|
| 339 |
- Fix RFB linking, force pthreads.
|
| 340 |
- dos2unix some -dlxlinux files.
|
| 341 |
|
| 342 |
* Mon Jan 12 2004 Ville Skyttä <ville.skytta at iki.fi> - 0:2.1-0.fdr.1
|
| 343 |
- Update to 2.1.
|
| 344 |
- Make sure everything is built with GTK2.
|
| 345 |
- Add "--with debugger" rpmbuild option.
|
| 346 |
- Put SDL build behind the "--with sdl" rpmbuild option due to startup crashes.
|
| 347 |
|
| 348 |
* Sun Nov 30 2003 Ville Skyttä <ville.skytta at iki.fi> - 0:2.1-0.fdr.0.3.pre2
|
| 349 |
- Update to 2.1pre2.
|
| 350 |
|
| 351 |
* Tue Oct 21 2003 Ville Skyttä <ville.skytta at iki.fi> - 0:2.1-0.fdr.0.2.pre1
|
| 352 |
- Remove .cvsignore from docs.
|
| 353 |
|
| 354 |
* Sat Oct 11 2003 Ville Skyttä <ville.skytta at iki.fi> - 0:2.1-0.fdr.0.1.pre1
|
| 355 |
- Update to 2.1pre1.
|
| 356 |
- Enable 3DNow! on athlon.
|
| 357 |
- Other cosmetic tweaks.
|
| 358 |
|
| 359 |
* Sat Jul 19 2003 Ville Skyttä <ville.skytta at iki.fi> - 0:2.0.2-0.fdr.3
|
| 360 |
- List wanted GUIs explicitly, exclude svgalib (bug 306).
|
| 361 |
|
| 362 |
* Wed May 21 2003 Ville Skyttä <ville.skytta at iki.fi> - 0:2.0.2-0.fdr.2
|
| 363 |
- Rebuild with wxGTK2.
|
| 364 |
|
| 365 |
* Tue May 20 2003 Ville Skyttä <ville.skytta at iki.fi> - 0:2.0.2-0.fdr.1
|
| 366 |
- First Fedora release, based on upstream SRPM.
|