Mercurial > hg > Members > taiki > EFIKernel
view boot/Makefile @ 8:d390aa667e3c
program test.
author | taiki |
---|---|
date | Wed, 26 Dec 2012 14:40:17 +0900 |
parents | cae91de64e26 |
children | e6715e03b87a |
line wrap: on
line source
LD = /home/taiki/local/bin/ld OBJCOPY = /home/taiki/local/bin/objcopy ARCH =$(shell uname -m |sed s,i[3456789]86,ia32,) LIB_PATH = /usr/lib64 EFI_INCLUDE = /usr/include/efi EFI_INCLUDES = -nostdinc -I$(EFI_INCLUDE) -I$(EFI_INCLUDE)/$(ARCH) -I$(EFI_INCLUDE)/protocol EFI_PATH = /usr/lib64/gnuefi EFI_CRT_OBJS = $(EFI_PATH)/crt0-efi-$(ARCH).o EFI_LDS = $(EFI_PATH)/elf_$(ARCH)_efi.lds CFLAGS = -O2 -Wall -fno-stack-protector -fpic -fshort-wchar -mno-red-zone $(EFI_INCLUDES) ifeq ($(ARCH),x86_64) CFLAGS += -DEFI_FUNCTION_WRAPPER endif LDFLAGS = -nostdlib -znocombreloc -T $(EFI_LDS) -shared -Bsymbolic -L$(EFI_PATH) -L$(LIB_PATH) \ $(EFI_CRT_OBJS) -lefi -lgnuefi TARGET = bootx64.efi OBJS = bootx64.o SOURCES = bootx64.c all: $(TARGET) bootx64.so: $(OBJS) $(LD) -o $@ $(LDFLAGS) $^ $(EFI_LIBS) %.efi: %.so $(OBJCOPY) -j .text -j .sdata -j .data \ -j .dynamic -j .dynsym -j .rel \ -j .rela -j .reloc -j .eh_frame \ --target=efi-app-$(ARCH) $^ $@ clean: rm -rf $(TARGET) *.o *.so