aboutsummaryrefslogtreecommitdiff
path: root/Makefile
diff options
context:
space:
mode:
authorKevin O'Connor <kevin@koconnor.net>2013-09-02 19:58:48 -0400
committerKevin O'Connor <kevin@koconnor.net>2013-09-02 19:58:48 -0400
commit3cb0f504a782c1a9c790b939631854473c039397 (patch)
treef3b84b329afea2dddc25eb7ca46531a6853982b6 /Makefile
parent09c1ebbf28ab41e1bd664f8d0d7d7d1a1a268027 (diff)
downloadseabios-hppa-3cb0f504a782c1a9c790b939631854473c039397.zip
seabios-hppa-3cb0f504a782c1a9c790b939631854473c039397.tar.gz
seabios-hppa-3cb0f504a782c1a9c790b939631854473c039397.tar.bz2
build: Don't use vpath makefile directive.
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
Diffstat (limited to 'Makefile')
-rw-r--r--Makefile26
1 files changed, 12 insertions, 14 deletions
diff --git a/Makefile b/Makefile
index 1588522..bafa246 100644
--- a/Makefile
+++ b/Makefile
@@ -20,6 +20,7 @@ SRC32FLAT=$(SRCBOTH) post.c shadow.c memmap.c pmm.c coreboot.c boot.c \
lzmadecode.c bootsplash.c jpeg.c usb-hub.c paravirt.c \
biostables.c xen.c bmp.c romfile.c csm.c
SRC32SEG=util.c output.c pci.c pcibios.c apm.c stacks.c
+DIRS=src vgasrc
# Default compiler flags
cc-option=$(shell if test -z "`$(1) $(2) -S -o /dev/null -xc /dev/null 2>&1`" \
@@ -71,7 +72,7 @@ IASL:=iasl
# Default targets
-include $(KCONFIG_CONFIG)
-target-y = $(OUT) $(OUT)bios.bin
+target-y = $(OUT) $(addprefix $(OUT), $(DIRS)) $(OUT)bios.bin
target-$(CONFIG_BUILD_VGABIOS) += $(OUT)vgabios.bin
all: $(target-y)
@@ -80,9 +81,6 @@ all: $(target-y)
.PHONY : all clean distclean FORCE
.DELETE_ON_ERROR:
-vpath %.c src vgasrc
-vpath %.S src vgasrc
-
################ Common build rules
@@ -125,17 +123,17 @@ $(OUT)%.lds: %.lds.S
$(OUT)asm-offsets.s: $(OUT)autoconf.h
-$(OUT)asm-offsets.h: $(OUT)asm-offsets.s
+$(OUT)asm-offsets.h: $(OUT)src/asm-offsets.s
@echo " Generating offset file $@"
$(Q)./scripts/gen-offsets.sh $< $@
-$(OUT)ccode16.o: $(OUT)autoconf.h $(patsubst %.c, $(OUT)%.o,$(SRC16)) ; $(call whole-compile, $(CFLAGS16), $(addprefix src/, $(SRC16)),$@)
+$(OUT)ccode16.o: $(OUT)autoconf.h $(patsubst %.c, $(OUT)src/%.o,$(SRC16)) ; $(call whole-compile, $(CFLAGS16), $(addprefix src/, $(SRC16)),$@)
-$(OUT)code32seg.o: $(OUT)autoconf.h $(patsubst %.c, $(OUT)%.o,$(SRC32SEG)) ; $(call whole-compile, $(CFLAGS32SEG), $(addprefix src/, $(SRC32SEG)),$@)
+$(OUT)code32seg.o: $(OUT)autoconf.h $(patsubst %.c, $(OUT)src/%.o,$(SRC32SEG)) ; $(call whole-compile, $(CFLAGS32SEG), $(addprefix src/, $(SRC32SEG)),$@)
-$(OUT)ccode32flat.o: $(OUT)autoconf.h $(patsubst %.c, $(OUT)%.o,$(SRC32FLAT)) ; $(call whole-compile, $(CFLAGS32FLAT), $(addprefix src/, $(SRC32FLAT)),$@)
+$(OUT)ccode32flat.o: $(OUT)autoconf.h $(patsubst %.c, $(OUT)src/%.o,$(SRC32FLAT)) ; $(call whole-compile, $(CFLAGS32FLAT), $(addprefix src/, $(SRC32FLAT)),$@)
-$(OUT)romlayout.o: romlayout.S $(OUT)asm-offsets.h
+$(OUT)romlayout.o: src/romlayout.S $(OUT)asm-offsets.h
@echo " Compiling (16bit) $@"
$(Q)$(CC) $(CFLAGS16) -c -D__ASSEMBLY__ $< -o $@
@@ -191,15 +189,15 @@ $(OUT)vgaccode16.o: $(OUT)vgaccode16.raw.s scripts/vgafixup.py
$(Q)$(PYTHON) ./scripts/vgafixup.py $< $(OUT)vgaccode16.s
$(Q)$(AS) --32 src/code16gcc.s $(OUT)vgaccode16.s -o $@
-$(OUT)vgaentry.o: vgaentry.S $(OUT)autoconf.h
+$(OUT)vgaentry.o: vgasrc/vgaentry.S $(OUT)autoconf.h
@echo " Compiling (16bit) $@"
$(Q)$(CC) $(CFLAGS16VGA) -c -D__ASSEMBLY__ $< -o $@
-$(OUT)vgarom.o: $(OUT)vgaccode16.o $(OUT)vgaentry.o $(OUT)vgalayout.lds scripts/buildversion.sh
+$(OUT)vgarom.o: $(OUT)vgaccode16.o $(OUT)vgaentry.o $(OUT)vgasrc/vgalayout.lds scripts/buildversion.sh
@echo " Linking $@"
$(Q)./scripts/buildversion.sh $(OUT)vgaversion.c VAR16
$(Q)$(CC) $(CFLAGS16VGA) -c $(OUT)vgaversion.c -o $(OUT)vgaversion.o
- $(Q)$(LD) --gc-sections -T $(OUT)vgalayout.lds $(OUT)vgaccode16.o $(OUT)vgaentry.o $(OUT)vgaversion.o -o $@
+ $(Q)$(LD) --gc-sections -T $(OUT)vgasrc/vgalayout.lds $(OUT)vgaccode16.o $(OUT)vgaentry.o $(OUT)vgaversion.o -o $@
$(OUT)vgabios.bin.raw: $(OUT)vgarom.o
@echo " Extracting binary $@"
@@ -223,7 +221,7 @@ $(OUT)%.hex: src/%.dsl ./scripts/acpi_extract_preprocess.py ./scripts/acpi_extra
$(Q)$(PYTHON) ./scripts/acpi_extract.py $(OUT)$*.lst > $(OUT)$*.off
$(Q)cat $(OUT)$*.off > $@
-$(OUT)acpi.o: $(OUT)acpi-dsdt.hex $(OUT)ssdt-proc.hex $(OUT)ssdt-pcihp.hex $(OUT)ssdt-misc.hex $(OUT)q35-acpi-dsdt.hex
+$(OUT)src/acpi.o: $(OUT)acpi-dsdt.hex $(OUT)ssdt-proc.hex $(OUT)ssdt-pcihp.hex $(OUT)ssdt-misc.hex $(OUT)q35-acpi-dsdt.hex
################ Kconfig rules
@@ -247,7 +245,7 @@ clean:
distclean: clean
$(Q)rm -f .config .config.old
-$(OUT):
+$(OUT) $(addprefix $(OUT), $(DIRS)):
$(Q)mkdir $@
-include $(OUT)*.d