Skip to contentSkip to conversation

Make installing bios files optional

PATCH New Riku Voipio 1 participant 1 message Nov 26, 2008 Kbuild

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 Make installing bios files optional

Some distributions (such as Debian) prefer to ship BIOS files from their respective upstream projects (openhackware, etherboot, proll, bochbios, vgabios, ...). Or do not need it because they just compile user emulator. However, most users will find it convenient that known good BIOS files are shipped together with qemu.

Introduce --disable-blobs option (default no)

Obsoletes 00_bios.patch in Debian.

---
 Makefile  |   14 +++++++++++---
 configure |    8 ++++++++
 2 files changed, 19 insertions(+), 3 deletions(-)
Makefile +11 -3
index bbd54fc..76470a4 100644
@@ -221,6 +221,14 @@ KEYMAPS=da     en-gb  et  fr     fr-ch  is  lt  modifiers  no  pt-br  sv \
 ar      de     en-us  fi  fr-be  hr     it  lv  nl         pl  ru     th \
 common  de-ch  es     fo  fr-ca  hu     ja  mk  nl-be      pt  sl     tr
 
+ifdef INSTALL_BLOBS
+BLOBS=bios.bin vgabios.bin vgabios-cirrus.bin ppc_rom.bin \
+video.x openbios-sparc32 openbios-sparc64 pxe-ne2k_pci.bin \
+pxe-rtl8139.bin pxe-pcnet.bin pxe-e1000.bin
+else
+BLOBS=
+endif
+
 install-doc: $(DOCS)
 	mkdir -p "$(DESTDIR)$(docdir)"
 	$(INSTALL) -m 644 qemu-doc.html  qemu-tech.html "$(DESTDIR)$(docdir)"
@@ -236,12 +244,12 @@ install: all $(if $(BUILD_DOCS),install-doc)
 ifneq ($(TOOLS),)
 	$(INSTALL) -m 755 -s $(TOOLS) "$(DESTDIR)$(bindir)"
 endif
+ifneq ($(BLOBS),)
 	mkdir -p "$(DESTDIR)$(datadir)"
-	set -e; for x in bios.bin vgabios.bin vgabios-cirrus.bin ppc_rom.bin \
-		video.x openbios-sparc32 openbios-sparc64 pxe-ne2k_pci.bin \
-		pxe-rtl8139.bin pxe-pcnet.bin pxe-e1000.bin; do \
+	set -e; for x in $(BLOBS); do \
 		$(INSTALL) -m 644 $(SRC_PATH)/pc-bios/$$x "$(DESTDIR)$(datadir)"; \
 	done
+endif
 ifndef CONFIG_WIN32
 	mkdir -p "$(DESTDIR)$(datadir)/keymaps"
 	set -e; for x in $(KEYMAPS); do \
configure +8 -0
index 5886ea0..3e890c1 100755
@@ -118,6 +118,7 @@ bluez="yes"
 kvm="yes"
 kerneldir=""
 aix="no"
+blobs="yes"
 
 # OS specific
 targetos=`uname -s`
@@ -372,6 +373,8 @@ for opt do
   ;;
   --disable-aio) aio="no"
   ;;
+  --disable-blobs) blobs="no"
+  ;;
   --kerneldir=*) kerneldir="$optarg"
   ;;
   *) echo "ERROR: unknown option $opt"; show_help="yes"
@@ -483,6 +486,7 @@ echo "  --enable-uname-release=R Return R for uname -r in usermode emulation"
 echo "  --sparc_cpu=V            Build qemu for Sparc architecture v7, v8, v8plus, v8plusa, v9"
 echo "  --disable-vde            disable support for vde network"
 echo "  --disable-aio            disable AIO support"
+echo "  --disable-blobs          disable installing provided firmware blobs"
 echo "  --kerneldir=PATH         look for kernel includes in PATH"
 echo ""
 echo "NOTE: The object files are built at the place where configure is launched"
@@ -1083,6 +1087,7 @@ echo "uname -r          $uname_release"
 echo "NPTL support      $nptl"
 echo "vde support       $vde"
 echo "AIO support       $aio"
+echo "Install blobs     $blobs"
 echo "KVM support       $kvm"
 
 if test $sdl_too_old = "yes"; then
@@ -1357,6 +1362,9 @@ if test "$aio" = "yes" ; then
   echo "#define CONFIG_AIO 1" >> $config_h
   echo "CONFIG_AIO=yes" >> $config_mak
 fi
+if test "$blobs" = "yes" ; then
+  echo "INSTALL_BLOBS=yes" >> $config_mak
+fi
 
 # XXX: suppress that
 if [ "$bsd" = "yes" ] ; then
Signature · 5 lines
1.5.6.5


-- 
"rm -rf" only sounds scary if you don't have backups