diff options
| -rw-r--r-- | Makefile | 20 | ||||
| -rw-r--r-- | fallback.c | 5 | ||||
| -rw-r--r-- | shim.c | 6 |
3 files changed, 22 insertions, 9 deletions
@@ -33,6 +33,9 @@ CFLAGS = -ggdb -O0 -fno-stack-protector -fno-strict-aliasing -fpic \ "-DDEFAULT_LOADER=L\"$(DEFAULT_LOADER)\"" \ "-DDEFAULT_LOADER_CHAR=\"$(DEFAULT_LOADER)\"" \ $(EFI_INCLUDES) +SHIMNAME = shim +MMNAME = MokManager +FBNAME = fallback ifneq ($(origin OVERRIDE_SECURITY_POLICY), undefined) CFLAGS += -DOVERRIDE_SECURITY_POLICY @@ -45,16 +48,25 @@ ifeq ($(ARCH),x86_64) -DNO_BUILTIN_VA_FUNCS \ "-DEFI_ARCH=L\"x64\"" \ "-DDEBUGDIR=L\"/usr/lib/debug/usr/share/shim/x64-$(VERSION)$(RELEASE)/\"" + MMNAME = mmx64 + FBNAME = fbx64 + SHIMNAME= shimx64 endif ifeq ($(ARCH),ia32) CFLAGS += -mno-mmx -mno-sse -mno-red-zone -nostdinc \ -maccumulate-outgoing-args -m32 \ "-DEFI_ARCH=L\"ia32\"" \ "-DDEBUGDIR=L\"/usr/lib/debug/usr/share/shim/ia32-$(VERSION)$(RELEASE)/\"" + MMNAME = mmia32 + FBNAME = fbia32 + SHIMNAME= shimia32 endif ifeq ($(ARCH),aarch64) CFLAGS += "-DEFI_ARCH=L\"aa64\"" \ "-DDEBUGDIR=L\"/usr/lib/debug/usr/share/shim/aa64-$(VERSION)$(RELEASE)/\"" + MMNAME = mmaa64 + FBNAME = fbaa64 + SHIMNAME= shimaa64 endif ifneq ($(origin VENDOR_CERT_FILE), undefined) @@ -66,7 +78,7 @@ endif LDFLAGS = --hash-style=sysv -nostdlib -znocombreloc -T $(EFI_LDS) -shared -Bsymbolic -L$(EFI_PATH) -L$(LIB_PATH) -LCryptlib -LCryptlib/OpenSSL $(EFI_CRT_OBJS) --build-id=sha1 -TARGET = shim.efi MokManager.efi.signed fallback.efi.signed +TARGET = $(SHIMNAME).efi $(MMNAME).efi.signed $(FBNAME).efi.signed OBJS = shim.o netboot.o cert.o replacements.o tpm.o version.o KEYS = shim_cert.h ocsp.* ca.* shim.crt shim.csr shim.p12 shim.pem shim.key shim.cer SOURCES = shim.c shim.h netboot.c include/PeImage.h include/wincert.h include/console.h replacements.c replacements.h tpm.c tpm.h version.c version.h @@ -105,17 +117,17 @@ shim.o: $(wildcard *.h) cert.o : cert.S $(CC) $(CFLAGS) -c -o $@ $< -shim.so: $(OBJS) Cryptlib/libcryptlib.a Cryptlib/OpenSSL/libopenssl.a lib/lib.a +$(SHIMNAME).so: $(OBJS) Cryptlib/libcryptlib.a Cryptlib/OpenSSL/libopenssl.a lib/lib.a $(LD) -o $@ $(LDFLAGS) $^ $(EFI_LIBS) fallback.o: $(FALLBACK_SRCS) -fallback.so: $(FALLBACK_OBJS) Cryptlib/libcryptlib.a Cryptlib/OpenSSL/libopenssl.a lib/lib.a +$(FBNAME).so: $(FALLBACK_OBJS) Cryptlib/libcryptlib.a Cryptlib/OpenSSL/libopenssl.a lib/lib.a $(LD) -o $@ $(LDFLAGS) $^ $(EFI_LIBS) MokManager.o: $(MOK_SOURCES) -MokManager.so: $(MOK_OBJS) Cryptlib/libcryptlib.a Cryptlib/OpenSSL/libopenssl.a lib/lib.a +$(MMNAME).so: $(MOK_OBJS) Cryptlib/libcryptlib.a Cryptlib/OpenSSL/libopenssl.a lib/lib.a $(LD) -o $@ $(LDFLAGS) $^ $(EFI_LIBS) lib/lib.a Cryptlib/libcryptlib.a: @@ -608,7 +608,8 @@ find_boot_csv(EFI_FILE_HANDLE fh, CHAR16 *dirname) fi = buffer; - if (!StrCaseCmp(fi->FileName, L"boot.csv")) { + if (!StrCaseCmp(fi->FileName, L"boot.csv") + || !StrCaseCmp(fi->FileName, L"boot" EFI_ARCH L".csv")) { EFI_FILE_HANDLE fh2; rc = uefi_call_wrapper(fh->Open, 5, fh, &fh2, fi->FileName, @@ -817,7 +818,7 @@ debug_hook(void) x = 1; Print(L"add-symbol-file "DEBUGDIR - L"fallback.debug %p -s .data %p\n", &_etext, + L"fb" EFI_ARCH L".efi.debug %p -s .data %p\n", &_etext, &_edata); } @@ -51,8 +51,8 @@ #include "console.h" #include "version.h" -#define FALLBACK L"\\fallback.efi" -#define MOK_MANAGER L"\\MokManager.efi" +#define FALLBACK L"\\fb" EFI_ARCH L".efi" +#define MOK_MANAGER L"\\mm" EFI_ARCH L".efi" static EFI_SYSTEM_TABLE *systab; static EFI_HANDLE image_handle; @@ -2527,7 +2527,7 @@ debug_hook(void) } Print(L"add-symbol-file "DEBUGDIR - L"shim.debug 0x%08x -s .data 0x%08x\n", &_text, + L"shim" EFI_ARCH L".efi.debug 0x%08x -s .data 0x%08x\n", &_text, &_data); Print(L"Pausing for debugger attachment.\n"); |
