Been away for the weekend. Sun was closed on Monday. Signed of by Marc Karasek <[EMAIL PROTECTED]>
/********************* Marc Karasek MTS Sun Microsystems mailto:[EMAIL PROTECTED] ph:770.360.6415 *********************/ Carl-Daniel Hailfinger wrote: > Hi! > > To bring this issue to an end, I resolved all conflicts the patch had > against the current tree and regenerated it without the controversial > id.lds section. > > On 09.01.2008 16:13, Marc Karasek wrote: > >> Attached is the latest. >> >> It uses -ge instead of == or >. This will take care of any time that >> there are more than 1 build-id in the ld -help output. >> >> Myles Watson wrote: >> >>> I like the idea of using grep. It seems much cleaner, and avoids >>> that issue. >>> >>> >>>> Myles Watson wrote: >>>> >>>> >>>>> On Jan 7, 2008 8:15 AM, Marc Karasek <[EMAIL PROTECTED]> wrote: >>>>> Sorry to be picky, but it seems like this breaks if they mention >>>>> build-id more than once in the help in the future. I think >0 would >>>>> be better than ==1. >>>>> >>>>> With that fixed, or if no one thinks that will ever happen: >>>>> Acked-by: Myles Watson <[EMAIL PROTECTED]> >>>>> > > If we used grep, the buildtarget snippet could probably be made a bit > smaller: > ld --help | grep -q build-id && EXTRA_LFLAGS+=" -Wl,--build-id=none" > > > Next try (does not (yet?) use grep): > > Marc, I could not find your Signed-off-by: in the thread. If that patch > is OK for you, please sign off on it. > > > Signed-off-by: Carl-Daniel Hailfinger <[EMAIL PROTECTED]> > > Index: LinuxBIOSv2-ldissue/src/config/Config.lb > =================================================================== > --- LinuxBIOSv2-ldissue/src/config/Config.lb (Revision 3062) > +++ LinuxBIOSv2-ldissue/src/config/Config.lb (Arbeitskopie) > @@ -8,7 +8,7 @@ > makedefine GCC_INC_DIR := $(shell LC_ALL=C $(CC) -print-search-dirs | sed > -ne "s/install: \(.*\)/\1include/gp") > > makedefine CPPFLAGS := -I$(TOP)/src/include > -I$(TOP)/src/arch/$(ARCH)/include -I$(GCC_INC_DIR) $(CPUFLAGS) > -makedefine CFLAGS := $(CPU_OPT) $(CPPFLAGS) -Os -nostdinc -nostdlib > -fno-builtin -Wall > +makedefine CFLAGS := $(CPU_OPT) $(DISTRO_CFLAGS) $(CPPFLAGS) -Os -nostdinc > -nostdlib -fno-builtin -Wall > > makedefine HOSTCFLAGS:= -Os -Wall > > @@ -38,14 +38,15 @@ > action "ar cr coreboot.a $(OBJECTS)" > end > > + > makerule coreboot_ram.o > depends "$(DRIVER) coreboot.a $(LIBGCC_FILE_NAME)" > - action "$(CC) -nostdlib -r -o $@ c_start.o $(DRIVER) coreboot.a > $(LIBGCC_FILE_NAME)" > + action "$(CC) $(DISTRO_LFLAGS) -nostdlib -r -o $@ c_start.o $(DRIVER) > coreboot.a $(LIBGCC_FILE_NAME)" > end > > makerule coreboot_ram > depends "coreboot_ram.o $(TOP)/src/config/coreboot_ram.ld ldoptions" > - action "$(CC) -nostdlib -nostartfiles -static -o $@ -T > $(TOP)/src/config/coreboot_ram.ld coreboot_ram.o" > + action "$(CC) $(DISTRO_LFLAGS) -nostdlib -nostartfiles -static -o $@ > -T $(TOP)/src/config/coreboot_ram.ld coreboot_ram.o" > action "$(CROSS_COMPILE)nm -n coreboot_ram | sort > coreboot_ram.map" > end > > @@ -83,12 +84,12 @@ > > makerule coreboot_apc.o > depends "coreboot_apc.a c_start.o $(LIBGCC_FILE_NAME)" > - action "$(CC) -nostdlib -r -o $@ c_start.o coreboot_apc.a > $(LIBGCC_FILE_NAME)" > + action "$(CC) $(DISTRO_LFLAGS) -nostdlib -r -o $@ c_start.o > coreboot_apc.a $(LIBGCC_FILE_NAME)" > end > > makerule coreboot_apc > depends "coreboot_apc.o $(TOP)/src/config/coreboot_apc.ld > ldoptions" > - action "$(CC) -nostdlib -nostartfiles -static -o $@ -T > $(TOP)/src/config/coreboot_apc.ld coreboot_apc.o" > + action "$(CC) $(DISTRO_LFLAGS) -nostdlib -nostartfiles -static > -o $@ -T $(TOP)/src/config/coreboot_apc.ld coreboot_apc.o" > action "$(CROSS_COMPILE)nm -n coreboot_apc | sort > > coreboot_apc.map" > end > > @@ -121,7 +122,7 @@ > > makerule coreboot > depends "crt0.o $(INIT-OBJECTS) $(COREBOOT_APC) $(COREBOOT_RAM_ROM) > ldscript.ld" > - action "$(CC) -nostdlib -nostartfiles -static -o $@ -T ldscript.ld > crt0.o $(INIT-OBJECTS)" > + action "$(CC) $(DISTRO_LFLAGS) -nostdlib -nostartfiles -static -o $@ > -T ldscript.ld crt0.o $(INIT-OBJECTS)" > action "$(CROSS_COMPILE)nm -n coreboot | sort > coreboot.map" > end > > Index: LinuxBIOSv2-ldissue/targets/buildtarget > =================================================================== > --- LinuxBIOSv2-ldissue/targets/buildtarget (Revision 3062) > +++ LinuxBIOSv2-ldissue/targets/buildtarget (Arbeitskopie) > @@ -69,9 +69,16 @@ > > rm -rf .$$.tmp > > +ld --help | awk '{for (i=1;i<=NF;i++) if ($i ~ /build-id/){n++} }; END {exit > n}' > +build_id=$? > +if [ $build_id -ge 1 ] ; then > + EXTRA_LFLAGS+=" -Wl,--build-id=none" > +fi > + > for i in $build_dir/Makefile.settings $build_dir/*/Makefile.settings > do > - echo CFLAGS+=$EXTRA_CFLAGS >>$i > + echo DISTRO_CFLAGS+=$EXTRA_CFLAGS >>$i > + echo DISTRO_LFLAGS+=$EXTRA_LFLAGS >>$i > done > > exit $? > > > -- coreboot mailing list [email protected] http://www.coreboot.org/mailman/listinfo/coreboot

