From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1LDdI8-0000Dh-FH for qemu-devel@nongnu.org; Fri, 19 Dec 2008 06:13:12 -0500 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1LDdI6-0000AJ-O7 for qemu-devel@nongnu.org; Fri, 19 Dec 2008 06:13:11 -0500 Received: from [199.232.76.173] (port=34029 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1LDdI6-0000AA-Ix for qemu-devel@nongnu.org; Fri, 19 Dec 2008 06:13:10 -0500 Received: from outbound-wa4.frontbridge.com ([216.32.181.16]:39595 helo=WA4EHSOBE001.bigfish.com) by monty-python.gnu.org with esmtps (TLS-1.0:RSA_ARCFOUR_MD5:16) (Exim 4.60) (envelope-from ) id 1LDdI6-0001sL-5b for qemu-devel@nongnu.org; Fri, 19 Dec 2008 06:13:10 -0500 Message-ID: <494B81EE.4090800@amd.com> Date: Fri, 19 Dec 2008 12:13:50 +0100 From: Andre Przywara MIME-Version: 1.0 Subject: Re: [Qemu-devel] New way of working with upstream Bochs BIOS References: <49497394.3010106@us.ibm.com> In-Reply-To: <49497394.3010106@us.ibm.com> Content-Type: text/plain; charset="ISO-8859-1"; format=flowed Content-Transfer-Encoding: 7bit Reply-To: qemu-devel@nongnu.org List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Anthony Liguori Cc: qemu-devel@nongnu.org Anthony Liguori wrote: > I've setup a git mirror of Bochs on repo.or.cz. I've also restructured > the bios.diff into a patch queue and recorded what changeset we're > using. Now, to recreate the bios.bin that we ship, use the following > instructions: Nice. But is requiring guilt (ever googled for it ;-) and poking around in .git really necessary? I'd suggest to force all patches to be in a (at least simulated) mbox format (as 0002-0005 are) and using "git am" in a for loop. > $ export QEMUSRC=/path/to/qemu/svn > $ git clone git://repo.or.cz/bochs-mirror.git > $ cd bochs-mirror > $ git checkout -b qemu-bios $(cat $QEMUSRC/pc-bios/bios-pq/HEAD) If you would create a branch on the remote repo, one could use $ git init && git fetch git://... qemu-bios:qemu-bios which would directly get the desired branch only. > $ mkdir -p .git/patches > $ ln -s $QEMUSRC/pc-bios/bios-pq .git/patches/qemu-bios > $ touch .git/patches/qemu-bios/status > $ guilt push -a could be replaced with $ for p in $(cat $QEMUSRC/pc-bios/bios-pq/series); do git am $p; done > $ ./configure > $ cd bios > $ make > $ cp BIOS-bochs-latest $QEMUSRC/pc-bios/bios.bin $ make bios covers the above three steps. > New patches against bochs should go in pc-bios/bios-pq with series being > updated appropriately. When we bump to a new version of the bochs bios, > we should update pc-bios/HEAD appropriately. The bochs mirror gets > updated daily with a cron job for now. BTW: I think the #define BX_QEMU does not belong in a header file, but in a Makefile. What about pouring the above commands in a Makefile, which automatically fetches, patches and builds the BIOS? Normally this process would not be triggered, but only on explicit request. Or patch the Makefile in the bochs-mirror.git:qemu-bios branch: diff --git a/bios/Makefile.in b/bios/Makefile.in index 5c7bd4f..0205dbe 100644 --- bochs-mirror/bios/Makefile.in +++ bochs-mirror/bios/Makefile.in @@ -41,7 +41,7 @@ RANLIB = @RANLIB@ BCC = bcc GCC = gcc -GCC32 = gcc -m32 -fno-stack-protector +GCC32 = gcc -m32 -fno-stack-protector -DBX_QEMU AS86 = as86 BX_INCDIRS = -I.. -I$(srcdir)/.. -I../iodev -I$(srcdir)/../iodev Regards, Andre. -- Andre Przywara AMD-Operating System Research Center (OSRC), Dresden, Germany Tel: +49 351 277-84917 ----to satisfy European Law for business letters: AMD Saxony Limited Liability Company & Co. KG, Wilschdorfer Landstr. 101, 01109 Dresden, Germany Register Court Dresden: HRA 4896, General Partner authorized to represent: AMD Saxony LLC (Wilmington, Delaware, US) General Manager of AMD Saxony LLC: Dr. Hans-R. Deppe, Thomas McCoy