On 03/07/13 08:02, Don Slutz wrote:
On 03/07/13 03:43, Aurelien Jarno wrote:
On Wed, Mar 06, 2013 at 07:53:51PM -0500, Kevin O'Connor wrote:
> On Thu, Mar 07, 2013 at 12:12:08AM +0100, Aurelien Jarno wrote:
> > On Wed, Mar 06, 2013 at 08:21:11AM +0000, Dietmar Maurer wrote:
[snip]
Maybe I am doing something wrong or there is a bug in my toolchain (Debian Sid). It would be nice if someone could try to reproduce that on another distro/system.
-- Aurelien Jarno GPG: 1024D/F1BCDB73 aurelien@aurel32.net http://www.aurel32.net

I reproduced this on "Fedora release 17 (Beefy Miracle)" 3.7.3-101.fc17.x86_64 doing the steps provided.
   -Don Slutz

Turns out that this is not the normal kind of issue.  Newer seabios works, older does not:

good   * 88cb66e (HEAD, tag: rel-1.7.2.1, origin/1.7.2-stable, 1.7.2-stable) seabios: Add a dummy PCI slot to irq mapping funct
good   * 985a9d3 seabios q35: Add new PCI slot to irq routing function
good   * 2b57726 seabios q35: Enable all PIRQn IRQs at startup
good   * e5fe4f9 Verify CC is valid during build tests.
good   * 4219149 build: Don't require $(OUT) to be a sub-directory of the main directory.
bad    * d75c22f Fix Makefile - don't reference "out/" directly, instead use "$(OUT)".
bad    * 12e8199 USB-EHCI: Fix null pointer assignment
bad    * f396871 Update tools/acpi_extract.py to handle iasl 20130117 release.
bad    * 4bd8aeb (tag: rel-1.7.2) vgabios: implement AX=1120H..1124H functions


good:
Version: rel-1.7.2-4-g4219149-20130307_085117-don-lt.don.CloudSwitch.com
Fixed space: 0xe05b-0x10000  total: 8101  slack: 5  Percent slack: 0.1%
16bit size:           39856
32bit segmented size: 1430
32bit flat size:      18778
32bit flat init size: 62400
Lowmem size:          2176

bad:
Version: rel-1.7.2-3-gd75c22f-20130307_085345-don-lt.don.CloudSwitch.com
Fixed space: 0xe05b-0x10000  total: 8101  slack: 5  Percent slack: 0.1%
16bit size:           39808
32bit segmented size: 1430
32bit flat size:      18778
32bit flat init size: 62400
Lowmem size:          2176


The 16bit size change is the only output change.

The changed that fixed it:

commit 4219149ad2b783abfa61e80e9e9f6910db0c76c9
Author: Kevin O'Connor <kevin@koconnor.net>
Date:   Sun Feb 17 10:56:10 2013 -0500

    build: Don't require $(OUT) to be a sub-directory of the main directory.
   
    Remove references to "../" and "out/" from the build so that "make
    OUT=/a/b/c/" will work.
   
    Signed-off-by: Kevin O'Connor <kevin@koconnor.net>

diff --git a/Makefile b/Makefile
index a482c94..20da6d0 100644
--- a/Makefile
+++ b/Makefile
@@ -84,7 +84,7 @@ vpath %.S src vgasrc
 ################ Common build rules
 
 # Verify the build environment works.
-TESTGCC:=$(shell CC="$(CC)" LD="$(LD)" IASL="$(IASL)" tools/test-build.sh)
+TESTGCC:=$(shell OUT="$(OUT)" CC="$(CC)" LD="$(LD)" IASL="$(IASL)" tools/test-build.sh)
 ifeq "$(TESTGCC)" "-1"
 $(error "Please upgrade the build environment")
 endif
@@ -97,7 +97,7 @@ endif
 # Do a whole file compile by textually including all C code.
 define whole-compile
 @echo "  Compiling whole program $3"
-$(Q)printf '$(foreach i,$2,#include "../$i"\n)' > $3.tmp.c
+$(Q)printf '$(foreach i,$2,#include "$(CURDIR)/$i"\n)' > $3.tmp.c
 $(Q)$(CC) $1 $(CFLAGSWHOLE) -c $3.tmp.c -o $3
 endef
 
diff --git a/src/Kconfig b/src/Kconfig
index 0b112ed..2c9100d 100644
--- a/src/Kconfig
+++ b/src/Kconfig
@@ -367,7 +367,7 @@ menu "BIOS Tables"
             Support generation of ACPI tables.
 endmenu
 
-source ../vgasrc/Kconfig
+source vgasrc/Kconfig
 
 menu "Debugging"
     config DEBUG_LEVEL
diff --git a/tools/test-build.sh b/tools/test-build.sh
index 7bd6d1f..ce0aca9 100755
--- a/tools/test-build.sh
+++ b/tools/test-build.sh
@@ -14,13 +14,13 @@ if [ $? -ne 0 ]; then
     exit 0
 fi
 
-mkdir -p out
-TMPFILE1=out/tmp_testcompile1.c
-TMPFILE1o=out/tmp_testcompile1.o
-TMPFILE1_ld=out/tmp_testcompile1.lds
-TMPFILE2=out/tmp_testcompile2.c
-TMPFILE2o=out/tmp_testcompile2.o
-TMPFILE3o=out/tmp_testcompile3.o
+mkdir -p ${OUT}
+TMPFILE1=${OUT}/tmp_testcompile1.c
+TMPFILE1o=${OUT}/tmp_testcompile1.o
+TMPFILE1_ld=${OUT}/tmp_testcompile1.lds
+TMPFILE2=${OUT}/tmp_testcompile2.c
+TMPFILE2o=${OUT}/tmp_testcompile2.o
+TMPFILE3o=${OUT}/tmp_testcompile3.o
 
 # Test if ld's alignment handling is correct.  This is a known problem
 # with the linker that ships with Ubuntu 11.04.

  -Don Slutz