efi-boot-shim/Cryptlib/Makefile
2025-03-24 10:18:24 +01:00

86 lines
2.0 KiB
Makefile

ifneq ($(CCACHE_DISABLE),)
export CCACHE_DISABLE
endif
CRYPTDIR = $(TOPDIR)/Cryptlib
FEATUREFLAGS += -nostdinc
INCLUDES = -I$(CRYPTDIR) -I$(CRYPTDIR)/Include \
$(EFI_INCLUDES) \
-isystem $(TOPDIR)/include/system \
-isystem $(shell $(CC) -print-file-name=include)
WARNFLAGS += -Wno-unused-parameter \
-Wno-unused-but-set-variable
WERRFLAGS += -Wno-error=unused-but-set-variable \
-Wno-error=unused-parameter
CFLAGS = $(FEATUREFLAGS) \
$(OPTIMIZATIONS) \
$(WARNFLAGS) \
$(WERRFLAGS) \
$(INCLUDES) \
$(DEFINES)
CLANG_BUGS = $(if $(findstring gcc,$(CC)),-maccumulate-outgoing-args,)
ifeq ($(ARCH),x86_64)
FEATUREFLAGS += -m64 -mno-mmx -mno-sse -mno-red-zone $(CLANG_BUGS)
DEFINES += -DMDE_CPU_X64
endif
ifeq ($(ARCH),ia32)
FEATUREFLAGS += -m32 -mno-mmx -mno-sse -mno-red-zone $(CLANG_BUGS)
DEFINES += -DMDE_CPU_IA32
endif
ifeq ($(ARCH),aarch64)
DEFINES += -DMDE_CPU_AARCH64
endif
ifeq ($(ARCH),arm)
DEFINES += -DMDE_CPU_ARM
endif
ifeq ($(ENABLE_CODESIGN_EKU),1)
DEFINES += -DENABLE_CODESIGN_EKU
endif
LDFLAGS = -nostdlib -znocombreloc
TARGET = libcryptlib.a
OBJS = Hash/CryptMd4Null.o \
Hash/CryptMd5.o \
Hash/CryptSha1.o \
Hash/CryptSha256.o \
Hash/CryptSha512.o \
Hmac/CryptHmacMd5Null.o \
Hmac/CryptHmacSha1Null.o \
Hmac/CryptHmacSha256Null.o \
Cipher/CryptAesNull.o \
Cipher/CryptTdesNull.o \
Cipher/CryptArc4Null.o \
Rand/CryptRand.o \
Pk/CryptRsaBasic.o \
Pk/CryptRsaExtNull.o \
Pk/CryptPkcs7SignNull.o \
Pk/CryptPkcs7Verify.o \
Pk/CryptDhNull.o \
Pk/CryptTs.o \
Pk/CryptX509.o \
Pk/CryptAuthenticode.o \
Pem/CryptPemNull.o \
SysCall/CrtWrapper.o \
SysCall/TimerWrapper.o \
SysCall/BaseMemAllocation.o \
SysCall/BaseStrings.o
ifeq ($(ENABLE_CODESIGN_EKU),1)
OBJS += Pk/CryptPkcs7VerifyEku.o
endif
all: $(TARGET)
libcryptlib.a: $(OBJS)
ar rcs libcryptlib.a $(OBJS)
clean:
rm -f $(TARGET) $(OBJS)