]> git.proxmox.com Git - efi-boot-shim.git/blob - lib/Makefile
New upstream version 15.3
[efi-boot-shim.git] / lib / Makefile
1 TARGET = lib.a
2
3 LIBFILES_UNSORTED := $(foreach x,$(wildcard *.c),$(patsubst %.c,%.o,$(x)))
4 LIBFILES := $(sort $(LIBFILES_UNSORTED))
5
6 CRYPTDIR = $(TOPDIR)/Cryptlib
7
8 INCLUDES = $(EFI_INCLUDES) \
9 -I$(TOPDIR)/include \
10 -I$(CRYPTDIR)/Include/openssl/ \
11 -I$(CRYPTDIR)/Include/ \
12 -I$(CRYPTDIR) \
13 -I$(TOPDIR) \
14 -isystem $(TOPDIR)/include/system \
15 -isystem $(shell $(CC) -print-file-name=include)
16
17 CLANG_BUGS = $(if $(findstring gcc,$(CC)),-maccumulate-outgoing-args,)
18
19 ifeq ($(ARCH),x86_64)
20 FEATUREFLAGS += -m64 -mno-mmx -mno-sse -mno-red-zone -nostdinc $(CLANG_BUGS)
21 DEFINES += -DMDE_CPU_X64
22 endif
23 ifeq ($(ARCH),ia32)
24 FEATUREFLAGS += -m32 -mno-mmx -mno-sse -mno-red-zone -nostdinc $(CLANG_BUGS)
25 DEFINES += -DMDE_CPU_IA32
26 endif
27 ifeq ($(ARCH),aarch64)
28 DEFINES += -DMDE_CPU_AARCH64
29 endif
30 ifeq ($(ARCH),arm)
31 DEFINES += -DMDE_CPU_ARM
32 endif
33
34 LDFLAGS = -nostdlib -znocombreloc
35
36
37 CFLAGS = $(FEATUREFLAGS) \
38 $(OPTIMIZATIONS) \
39 $(WARNFLAGS) \
40 $(WERRFLAGS) \
41 $(INCLUDES) \
42 $(DEFINES)
43
44 lib.a: $(LIBFILES)
45 $(AR) rcs lib.a $(LIBFILES)
46
47 all: $(TARGET)
48
49 clean:
50 rm -f lib.a
51 rm -f $(LIBFILES)
52