]> git.proxmox.com Git - qemu.git/blame - pc-bios/optionrom/Makefile
Fix non-ACPI Timer Interrupt Routing - v3
[qemu.git] / pc-bios / optionrom / Makefile
CommitLineData
253d0942
AG
1all: build-all
2
3include ../../config-host.mak
4
5VPATH=$(SRC_PATH)/pc-bios/optionrom
6OBJCOPY=objcopy
7
8# from kernel sources - scripts/Kbuild.include
9# try-run
10# Usage: option = $(call try-run, $(CC)...-o "$$TMP",option-ok,otherwise)
11# Exit code chooses option. "$$TMP" is can be used as temporary file and
12# is automatically cleaned up.
13try-run = $(shell set -e; \
14 TMP="$(TMPOUT).$$$$.tmp"; \
15 if ($(1)) >/dev/null 2>&1; \
16 then echo "$(2)"; \
17 else echo "$(3)"; \
18 fi; \
19 rm -f "$$TMP")
20
21# cc-option-yn
22# Usage: flag := $(call cc-option-yn,-march=winchip-c6)
23cc-option-yn = $(call try-run,\
24 $(CC) $(KBUILD_CFLAGS) $(1) -S -xc /dev/null -o "$$TMP",y,n)
25
26CFLAGS = -Wall -Wstrict-prototypes -Werror -fomit-frame-pointer -fno-builtin
27CFLAGS += -I$(SRC_PATH)
28ifeq ($(call cc-option-yn,-fno-stack-protector),y)
29CFLAGS += -fno-stack-protector
30endif
31
32build-all: multiboot.bin
33
34%.o: %.S
35 $(CC) $(CFLAGS) -o $@ -c $<
36
37%.img: %.o
38 $(LD) --oformat binary -Ttext 0 -o $@ $<
39
89e671e3
AG
40%.bin: %.img
41 $(SRC_PATH)/pc-bios/optionrom/signrom.sh $< $@
253d0942
AG
42 cp $@ $(SRC_PATH)/pc-bios/
43
253d0942 44clean:
89e671e3 45 $(RM) *.o *.img *.bin *~