[LinuxBIOS] [PATCH] [v3] create map files, clean up
Stefan Reinauer
stepan at coresystems.de
Mon Jul 23 12:44:24 CEST 2007
* Uwe Hermann <uwe at hermann-uwe.de> [070723 11:54]:
> > +# These are possibly not permanent
> > +INITRAM_OBJ := $(INITRAM_OBJ) $(obj)/lib/console.o
> > +INITRAM_OBJ := $(INITRAM_OBJ) $(obj)/lib/vtxprintf.o
> > +INITRAM_OBJ := $(INITRAM_OBJ) $(obj)/lib/uart8250.o
> > +INITRAM_OBJ := $(INITRAM_OBJ) $(obj)/arch/x86/post_code.o
>
> INITRAM_OBJ := $(obj)/lib/console.o $(obj)/lib/vtxprintf.o \
> $(obj)/lib/uart8250.o $(obj)/arch/x86/post_code.o
>
> (is a bit shorter)
INITRAM_OBJ := $(INITRAM_OBJ) $(obj)/lib/console.o $(obj)/lib/vtxprintf.o \
$(obj)/lib/uart8250.o $(obj)/arch/x86/post_code.o
would be the way to go I think.
> > $(obj)/device/%.o: $(src)/device/%.c
> > - $(Q)mkdir -p $(obj)/device
> > + $(Q)mkdir -p $(dir $@)
> > $(Q)printf " CC $(subst $(shell pwd)/,,$(@))\n"
> > $(Q)$(CC) $(INITCFLAGS) -c $< -o $@
>
> This is for a later patch, but can we have a generic rule for this
> kind of thing? So that you only have to say 'FOO_OBJ += foo.o'
> in the Makefiles?
Yes, that should be the goal I think. I did that for the mainboard/ code
already, but there's still a lot of potential.
> > +$(obj)/southbridge/%.o: $(src)/southbridge/%.c $(obj)/statictree.h
> > + $(Q)mkdir -p $(dir $@)
> > + $(Q)printf " CC $(subst $(shell pwd)/,,$(@))\n"
> > + $(Q)$(CC) $(INITCFLAGS) -c $< -o $@
>
> All of the above are almost identical. Can they be merged easily?
good question. They have a different paths and not all files have the
dependency to statictree.h, otherwise we could hit them with a global
rule. Maybe we can somehow...?
I will play some more to get this right, but I did not want to pile this
stuff up forever, as Marc was waiting for the post_code part while I got
into messing with the Makefiles..
> > printf "Error. Bootblock got too big.\n" || true
> > + $(Q)printf " NM $(subst $(shell pwd)/,,$(@))\n"
> > + $(Q)$(NM) $(obj)/stage0.o |sort -u > $(obj)/stage0.init.map
> ^
> missing space
>
> I'd rename Rules.make to Makefile.rules, but other than that:
>
> Acked-by: Uwe Hermann <uwe at hermann-uwe.de>
Thanks...
--
coresystems GmbH • Brahmsstr. 16 • D-79104 Freiburg i. Br.
Tel.: +49 761 7668825 • Fax: +49 761 7664613
Email: info at coresystems.de • http://www.coresystems.de/
Registergericht: Amtsgericht Freiburg • HRB 7656
Geschäftsführer: Stefan Reinauer • Ust-IdNr.: DE245674866
More information about the coreboot
mailing list