{"id":818576,"url":"http://patchwork.ozlabs.org/api/patches/818576/?format=json","web_url":"http://patchwork.ozlabs.org/project/qemu-devel/patch/20170926111757.3628-2-kraxel@redhat.com/","project":{"id":14,"url":"http://patchwork.ozlabs.org/api/projects/14/?format=json","name":"QEMU Development","link_name":"qemu-devel","list_id":"qemu-devel.nongnu.org","list_email":"qemu-devel@nongnu.org","web_url":"","scm_url":"","webscm_url":"","list_archive_url":"","list_archive_url_format":"","commit_url_format":""},"msgid":"<20170926111757.3628-2-kraxel@redhat.com>","list_archive_url":null,"date":"2017-09-26T11:17:57","name":"[1/1] add Makefile, add configs for seabios","commit_ref":null,"pull_url":null,"state":"new","archived":false,"hash":"26e542ba29d9f816c54bfb5ada742395157eb590","submitter":{"id":589,"url":"http://patchwork.ozlabs.org/api/people/589/?format=json","name":"Gerd Hoffmann","email":"kraxel@redhat.com"},"delegate":null,"mbox":"http://patchwork.ozlabs.org/project/qemu-devel/patch/20170926111757.3628-2-kraxel@redhat.com/mbox/","series":[{"id":5110,"url":"http://patchwork.ozlabs.org/api/series/5110/?format=json","web_url":"http://patchwork.ozlabs.org/project/qemu-devel/list/?series=5110","date":"2017-09-26T11:17:56","name":"qemu-firmware repo","version":1,"mbox":"http://patchwork.ozlabs.org/series/5110/mbox/"}],"comments":"http://patchwork.ozlabs.org/api/patches/818576/comments/","check":"pending","checks":"http://patchwork.ozlabs.org/api/patches/818576/checks/","tags":{},"related":[],"headers":{"Return-Path":"<qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org>","X-Original-To":"incoming@patchwork.ozlabs.org","Delivered-To":"patchwork-incoming@bilbo.ozlabs.org","Authentication-Results":["ozlabs.org;\n\tspf=pass (mailfrom) smtp.mailfrom=nongnu.org\n\t(client-ip=2001:4830:134:3::11; helo=lists.gnu.org;\n\tenvelope-from=qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org;\n\treceiver=<UNKNOWN>)","ext-mx05.extmail.prod.ext.phx2.redhat.com;\n\tdmarc=none (p=none dis=none) header.from=redhat.com","ext-mx05.extmail.prod.ext.phx2.redhat.com;\n\tspf=fail smtp.mailfrom=kraxel@redhat.com"],"Received":["from lists.gnu.org (lists.gnu.org [IPv6:2001:4830:134:3::11])\n\t(using TLSv1 with cipher AES256-SHA (256/256 bits))\n\t(No client certificate requested)\n\tby ozlabs.org (Postfix) with ESMTPS id 3y1f4B5b0sz9s3w\n\tfor <incoming@patchwork.ozlabs.org>;\n\tTue, 26 Sep 2017 21:34:18 +1000 (AEST)","from localhost ([::1]:46830 helo=lists.gnu.org)\n\tby lists.gnu.org with esmtp (Exim 4.71) (envelope-from\n\t<qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org>)\n\tid 1dwo7z-0003hO-VU\n\tfor incoming@patchwork.ozlabs.org; Tue, 26 Sep 2017 07:34:16 -0400","from eggs.gnu.org ([2001:4830:134:3::10]:37462)\n\tby lists.gnu.org with esmtp (Exim 4.71)\n\t(envelope-from <kraxel@redhat.com>) id 1dwnsd-0007K7-MD\n\tfor qemu-devel@nongnu.org; Tue, 26 Sep 2017 07:18:25 -0400","from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)\n\t(envelope-from <kraxel@redhat.com>) id 1dwnsU-0006rR-NK\n\tfor qemu-devel@nongnu.org; Tue, 26 Sep 2017 07:18:23 -0400","from mx1.redhat.com ([209.132.183.28]:39288)\n\tby eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32)\n\t(Exim 4.71) (envelope-from <kraxel@redhat.com>) id 1dwnsU-0006r9-CO\n\tfor qemu-devel@nongnu.org; Tue, 26 Sep 2017 07:18:14 -0400","from smtp.corp.redhat.com\n\t(int-mx06.intmail.prod.int.phx2.redhat.com [10.5.11.16])\n\t(using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits))\n\t(No client certificate requested)\n\tby mx1.redhat.com (Postfix) with ESMTPS id 5A6945275A\n\tfor <qemu-devel@nongnu.org>; Tue, 26 Sep 2017 11:18:13 +0000 (UTC)","from sirius.home.kraxel.org (ovpn-116-102.ams2.redhat.com\n\t[10.36.116.102])\n\tby smtp.corp.redhat.com (Postfix) with ESMTP id 078C15C550;\n\tTue, 26 Sep 2017 11:18:10 +0000 (UTC)","by sirius.home.kraxel.org (Postfix, from userid 1000)\n\tid 7D9933F113; Tue, 26 Sep 2017 13:18:08 +0200 (CEST)"],"DMARC-Filter":"OpenDMARC Filter v1.3.2 mx1.redhat.com 5A6945275A","From":"Gerd Hoffmann <kraxel@redhat.com>","To":"qemu-devel@nongnu.org","Date":"Tue, 26 Sep 2017 13:17:57 +0200","Message-Id":"<20170926111757.3628-2-kraxel@redhat.com>","In-Reply-To":"<20170926111757.3628-1-kraxel@redhat.com>","References":"<20170926111757.3628-1-kraxel@redhat.com>","X-Scanned-By":"MIMEDefang 2.79 on 10.5.11.16","X-Greylist":"Sender IP whitelisted, not delayed by milter-greylist-4.5.16\n\t(mx1.redhat.com [10.5.110.29]);\n\tTue, 26 Sep 2017 11:18:13 +0000 (UTC)","X-detected-operating-system":"by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic]\n\t[fuzzy]","X-Received-From":"209.132.183.28","Subject":"[Qemu-devel] [PATCH 1/1] add Makefile, add configs for seabios","X-BeenThere":"qemu-devel@nongnu.org","X-Mailman-Version":"2.1.21","Precedence":"list","List-Id":"<qemu-devel.nongnu.org>","List-Unsubscribe":"<https://lists.nongnu.org/mailman/options/qemu-devel>,\n\t<mailto:qemu-devel-request@nongnu.org?subject=unsubscribe>","List-Archive":"<http://lists.nongnu.org/archive/html/qemu-devel/>","List-Post":"<mailto:qemu-devel@nongnu.org>","List-Help":"<mailto:qemu-devel-request@nongnu.org?subject=help>","List-Subscribe":"<https://lists.nongnu.org/mailman/listinfo/qemu-devel>,\n\t<mailto:qemu-devel-request@nongnu.org?subject=subscribe>","Cc":"Gerd Hoffmann <kraxel@redhat.com>","Errors-To":"qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org","Sender":"\"Qemu-devel\"\n\t<qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org>"},"content":"Largely identical to roms/Makefile in qemu repo.\nPaths have been adapted to qemu-firmware repo layout.\nseabios submodule is updated automatically for builds.\n\"make install\" target has been added.\n\"make help\" text is more verbose.\n\nSigned-off-by: Gerd Hoffmann <kraxel@redhat.com>\n---\n Makefile             | 80 ++++++++++++++++++++++++++++++++++++++++++++++++++++\n configs/seabios-128k | 12 ++++++++\n configs/seabios-256k |  3 ++\n configs/vga-cirrus   |  3 ++\n configs/vga-isavga   |  3 ++\n configs/vga-qxl      |  6 ++++\n configs/vga-stdvga   |  3 ++\n configs/vga-virtio   |  6 ++++\n configs/vga-vmware   |  6 ++++\n 9 files changed, 122 insertions(+)\n create mode 100644 Makefile\n create mode 100644 configs/seabios-128k\n create mode 100644 configs/seabios-256k\n create mode 100644 configs/vga-cirrus\n create mode 100644 configs/vga-isavga\n create mode 100644 configs/vga-qxl\n create mode 100644 configs/vga-stdvga\n create mode 100644 configs/vga-virtio\n create mode 100644 configs/vga-vmware","diff":"diff --git a/Makefile b/Makefile\nnew file mode 100644\nindex 0000000000..bf16c3b562\n--- /dev/null\n+++ b/Makefile\n@@ -0,0 +1,80 @@\n+# directories\n+DESTDIR\t?=\n+prefix\t?= /usr/local\n+datadir\t:= $(DESTDIR)$(prefix)/share/qemu-firmware\n+\n+vgabios_variants := stdvga cirrus vmware qxl isavga virtio\n+vgabios_targets  := $(subst -isavga,,$(patsubst %,vgabios-%.bin,$(vgabios_variants)))\n+\n+#\n+# cross compiler auto detection\n+#\n+path := $(subst :, ,$(PATH))\n+system := $(shell uname -s | tr \"A-Z\" \"a-z\")\n+\n+# first find cross binutils in path\n+find-cross-ld = $(firstword $(wildcard $(patsubst %,%/$(1)-*$(system)*-ld,$(path))))\n+# then check we have cross gcc too\n+find-cross-gcc = $(firstword $(wildcard $(patsubst %ld,%gcc,$(call find-cross-ld,$(1)))))\n+# finally strip off path + toolname so we get the prefix\n+find-cross-prefix = $(subst gcc,,$(notdir $(call find-cross-gcc,$(1))))\n+\n+powerpc64_cross_prefix := $(call find-cross-prefix,powerpc64)\n+powerpc_cross_prefix := $(call find-cross-prefix,powerpc)\n+x86_64_cross_prefix := $(call find-cross-prefix,x86_64)\n+\n+# tag our seabios builds\n+SEABIOS_EXTRAVERSION=\"-prebuilt.qemu-project.org\"\n+\n+default help:\n+\t@echo\n+\t@echo \"nothing is done by default\"\n+\t@echo\n+\t@echo \"build targets:\"\n+\t@echo \"  bios           -- update bios.bin (seabios)\"\n+\t@echo \"  vgabios        -- update vgabios binaries (seabios)\"\n+\t@echo\n+\t@echo \"other targets:\"\n+\t@echo \"  clean          -- cleanup\"\n+\t@echo \"  install        -- install blobs to $(datadir)\"\n+\t@echo\n+\t@echo \"You can set DESTDIR and prefix on the command line to\"\n+\t@echo \"to change the install target directory, for example:\"\n+\t@echo \"$ make prefix=/usr install\"\n+\t@echo\n+\n+install:\n+\tmkdir -p $(datadir)\n+\tcp -v blobs/*.bin $(datadir)\n+\n+bios: build-seabios-config-seabios-128k build-seabios-config-seabios-256k\n+\tcp repos/seabios/builds/seabios-128k/bios.bin blobs/bios.bin\n+\tcp repos/seabios/builds/seabios-256k/bios.bin blobs/bios-256k.bin\n+\n+vgabios: $(patsubst %,vgabios-%,$(vgabios_variants))\n+\n+vgabios-isavga: build-seabios-config-vga-isavga\n+\tcp repos/seabios/builds/vga-isavga/vgabios.bin blobs/vgabios.bin\n+\n+vgabios-%: build-seabios-config-vga-%\n+\tcp repos/seabios/builds/vga-$*/vgabios.bin blobs/vgabios-$*.bin\n+\n+build-seabios-config-%: configs/% submodule-seabios\n+\tmkdir -p repos/seabios/builds/$*\n+\tcp $< repos/seabios/builds/$*/.config\n+\t$(MAKE) -C repos/seabios \\\n+\t\tEXTRAVERSION=$(SEABIOS_EXTRAVERSION) \\\n+\t\tCROSS_COMPILE=$(x86_64_cross_prefix) \\\n+\t\tKCONFIG_CONFIG=$(CURDIR)/repos/seabios/builds/$*/.config \\\n+\t\tOUT=$(CURDIR)/repos/seabios/builds/$*/ oldnoconfig\n+\t$(MAKE) -C repos/seabios \\\n+\t\tEXTRAVERSION=$(SEABIOS_EXTRAVERSION) \\\n+\t\tCROSS_COMPILE=$(x86_64_cross_prefix) \\\n+\t\tKCONFIG_CONFIG=$(CURDIR)/repos/seabios/builds/$*/.config \\\n+\t\tOUT=$(CURDIR)/repos/seabios/builds/$*/ all\n+\n+clean:\n+\trm -rf repos/seabios/.config repos/seabios/out repos/seabios/builds\n+\n+submodule-%:\n+\tgit submodule update --init repos/$*\ndiff --git a/configs/seabios-128k b/configs/seabios-128k\nnew file mode 100644\nindex 0000000000..93203af0de\n--- /dev/null\n+++ b/configs/seabios-128k\n@@ -0,0 +1,12 @@\n+# for qemu machine types 1.7 + older\n+# need to turn off features (xhci,uas) to make it fit into 128k\n+CONFIG_QEMU=y\n+CONFIG_ROM_SIZE=128\n+CONFIG_BOOTSPLASH=n\n+CONFIG_XEN=n\n+CONFIG_USB_OHCI=n\n+CONFIG_USB_XHCI=n\n+CONFIG_USB_UAS=n\n+CONFIG_SDCARD=n\n+CONFIG_TCGBIOS=n\n+CONFIG_MPT_SCSI=n\ndiff --git a/configs/seabios-256k b/configs/seabios-256k\nnew file mode 100644\nindex 0000000000..65e5015c2f\n--- /dev/null\n+++ b/configs/seabios-256k\n@@ -0,0 +1,3 @@\n+# for qemu machine types 2.0 + newer\n+CONFIG_QEMU=y\n+CONFIG_ROM_SIZE=256\ndiff --git a/configs/vga-cirrus b/configs/vga-cirrus\nnew file mode 100644\nindex 0000000000..c8fe58239f\n--- /dev/null\n+++ b/configs/vga-cirrus\n@@ -0,0 +1,3 @@\n+CONFIG_BUILD_VGABIOS=y\n+CONFIG_VGA_CIRRUS=y\n+CONFIG_VGA_PCI=y\ndiff --git a/configs/vga-isavga b/configs/vga-isavga\nnew file mode 100644\nindex 0000000000..e55e294a0c\n--- /dev/null\n+++ b/configs/vga-isavga\n@@ -0,0 +1,3 @@\n+CONFIG_BUILD_VGABIOS=y\n+CONFIG_VGA_BOCHS=y\n+CONFIG_VGA_PCI=n\ndiff --git a/configs/vga-qxl b/configs/vga-qxl\nnew file mode 100644\nindex 0000000000..d393f0c34f\n--- /dev/null\n+++ b/configs/vga-qxl\n@@ -0,0 +1,6 @@\n+CONFIG_BUILD_VGABIOS=y\n+CONFIG_VGA_BOCHS=y\n+CONFIG_VGA_PCI=y\n+CONFIG_OVERRIDE_PCI_ID=y\n+CONFIG_VGA_VID=0x1b36\n+CONFIG_VGA_DID=0x0100\ndiff --git a/configs/vga-stdvga b/configs/vga-stdvga\nnew file mode 100644\nindex 0000000000..7d063b787c\n--- /dev/null\n+++ b/configs/vga-stdvga\n@@ -0,0 +1,3 @@\n+CONFIG_BUILD_VGABIOS=y\n+CONFIG_VGA_BOCHS=y\n+CONFIG_VGA_PCI=y\ndiff --git a/configs/vga-virtio b/configs/vga-virtio\nnew file mode 100644\nindex 0000000000..aa7a15ba11\n--- /dev/null\n+++ b/configs/vga-virtio\n@@ -0,0 +1,6 @@\n+CONFIG_BUILD_VGABIOS=y\n+CONFIG_VGA_BOCHS=y\n+CONFIG_VGA_PCI=y\n+CONFIG_OVERRIDE_PCI_ID=y\n+CONFIG_VGA_VID=0x1af4\n+CONFIG_VGA_DID=0x1050\ndiff --git a/configs/vga-vmware b/configs/vga-vmware\nnew file mode 100644\nindex 0000000000..eb10427afd\n--- /dev/null\n+++ b/configs/vga-vmware\n@@ -0,0 +1,6 @@\n+CONFIG_BUILD_VGABIOS=y\n+CONFIG_VGA_BOCHS=y\n+CONFIG_VGA_PCI=y\n+CONFIG_OVERRIDE_PCI_ID=y\n+CONFIG_VGA_VID=0x15ad\n+CONFIG_VGA_DID=0x0405\n","prefixes":["1/1"]}