From aaa1912b97bc455cd14077600bac957e7275b42e Mon Sep 17 00:00:00 2001 From: Nathan Rennie-Waldock Date: Sun, 27 Sep 2020 00:27:51 +0100 Subject: [PATCH 1/6] modules/coreboot: Only check version if we're building coreboot (fixes #841) Signed-off-by: Nathan Rennie-Waldock --- modules/coreboot | 2 ++ 1 file changed, 2 insertions(+) diff --git a/modules/coreboot b/modules/coreboot index 04d8f943b..452210088 100644 --- a/modules/coreboot +++ b/modules/coreboot @@ -1,5 +1,6 @@ modules-$(CONFIG_COREBOOT) += coreboot +ifeq "$(CONFIG_COREBOOT)" "y" ifeq "$(CONFIG_COREBOOT_VERSION)" "4.8.1" coreboot_version := 4.8.1 coreboot_hash := f0ddf4db0628c1fe1e8348c40084d9cbeb5771400c963fd419cda3995b69ad23 @@ -12,6 +13,7 @@ else ifeq "$(CONFIG_COREBOOT_VERSION)" "4.12" else $(error "$(BOARD): does not specify coreboot version under CONFIG_COREBOOT_VERSION") endif +endif #coreboot_version := git #coreboot_repo := https://github.com/osresearch/coreboot From c20c890678222be0bda20e5d77f8db4e642f8328 Mon Sep 17 00:00:00 2001 From: Nathan Rennie-Waldock Date: Tue, 29 Sep 2020 21:41:46 +0100 Subject: [PATCH 2/6] modules/coreboot: Unindent error, we're not in a recipe Signed-off-by: Nathan Rennie-Waldock --- modules/coreboot | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules/coreboot b/modules/coreboot index 452210088..4b87ebc87 100644 --- a/modules/coreboot +++ b/modules/coreboot @@ -11,7 +11,7 @@ else ifeq "$(CONFIG_COREBOOT_VERSION)" "4.12" coreboot-blobs_hash := 4735ee6850d55d1e65dee8b08cc9b28b8af00b42acf31365f5d9545406579104 coreboot_depends := $(if $(CONFIG_PURISM_BLOBS), purism-blobs) else - $(error "$(BOARD): does not specify coreboot version under CONFIG_COREBOOT_VERSION") +$(error "$(BOARD): does not specify coreboot version under CONFIG_COREBOOT_VERSION") endif endif From bb3df899cbea1250098a3d126d0717c3ebb1751b Mon Sep 17 00:00:00 2001 From: Nathan Rennie-Waldock Date: Tue, 29 Sep 2020 21:54:07 +0100 Subject: [PATCH 3/6] CircleCI: Readd linuxboot Signed-off-by: Nathan Rennie-Waldock --- .circleci/config.yml | 44 ++++++++++++++++++++------------------------ 1 file changed, 20 insertions(+), 24 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index bd0806e4e..b0edbb0aa 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -34,30 +34,26 @@ jobs: #If precedent fails. Restore cache for musl-cross module checksum validated to be exactly the same as in github current commit - heads-cross-musl-{{ checksum "/tmp/musl-cross_module_and_patches.sha256sums" }}{{ .Environment.CACHE_VERSION }} -# linuxboot steps need something to pass in the kernel header path -# skipping for now -# - run: -# name: qemu-linuxboot-edk2 -# command: | -# ./build/make-4.2.1/make \ -# CROSS=/cross/bin/x86_64-linux-musl- \ -# BOARD=qemu-linuxboot \ -# `/bin/pwd`/build/linuxboot-git/build/qemu/.configured \ -# # Run first to avoid too many processes -# -# - run: -# name: qemu-linuxboot -# command: | -# ./build/make-4.2.1/make \ -# CROSS=/cross/bin/x86_64-linux-musl- \ -# CPUS=4 \ -# V=1 \ -# BOARD=qemu-linuxboot \ -# -# - store-artifacts: -# path: build/qemu-linuxboot/linuxboot.rom -# - store-artifacts: -# path: build/qemu-linuxboot/hashes.txt + - run: + name: qemu-linuxboot-edk2 + command: | + make \ + BOARD=qemu-linuxboot \ + `/bin/pwd`/build/linuxboot-git/build/qemu/.configured \ + # Run first to avoid too many processes + + - run: + name: qemu-linuxboot + command: | + make \ + CPUS=4 \ + V=1 \ + BOARD=qemu-linuxboot \ + + - store-artifacts: + path: build/qemu-linuxboot/linuxboot.rom + - store-artifacts: + path: build/qemu-linuxboot/hashes.txt - run: name: librem_mini-NoTPM From 54b862a4303a57747350d83489b1131d3e1f8f9c Mon Sep 17 00:00:00 2001 From: Nathan Rennie-Waldock Date: Wed, 30 Sep 2020 19:21:08 +0100 Subject: [PATCH 4/6] modules/linuxboot: Fix qemu build after c745640 > Running edk2 build for OvmfPkgX64 > Usage: build.exe [options] [all|fds|genc|genmake|clean|cleanall|cleanlib|modules|libraries|run] > > build.exe: error: option -n: invalid integer value: 'PUS' Signed-off-by: Nathan Rennie-Waldock --- modules/linuxboot | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules/linuxboot b/modules/linuxboot index 57ea31a23..955fbd09e 100644 --- a/modules/linuxboot +++ b/modules/linuxboot @@ -21,7 +21,7 @@ linuxboot_configure := \ if [ "$(linuxboot_board)" = "qemu" ]; then \ echo >&2 "Pre-building edk2 OVMF" ; \ ( cd $(build)/$(linuxboot_base_dir)/edk2/OvmfPkg ; \ - ./build.sh -n $$CPUS \ + ./build.sh -n $(CPUS) \ ) || exit 1 ; \ fi ; \ touch .config ; \ From 5b7eb07b6d50fdc3010e48cee74b831377641208 Mon Sep 17 00:00:00 2001 From: Nathan Rennie-Waldock Date: Mon, 19 Oct 2020 21:49:20 +0100 Subject: [PATCH 5/6] modules/linuxboot: Use a specific commit * add linuxboot-edk2 module (if not building latest git) * patch linuxboot-edk2 Makefile to not conflict with ours * update linuxboot build dir in circleci and boards/winterfell Signed-off-by: Nathan Rennie-Waldock --- .circleci/config.yml | 2 +- boards/winterfell/winterfell.config | 2 +- modules/linuxboot | 32 ++++++++++++++- modules/linuxboot-edk2 | 2 + ...configured-stamp-to-avoid-conflict-w.patch | 39 +++++++++++++++++++ 5 files changed, 73 insertions(+), 4 deletions(-) create mode 100644 modules/linuxboot-edk2 create mode 100644 patches/linuxboot-edk2-b7c299e4799012e8a20958a68693ab95b7626aa9/0000-Makefile-Rename-configured-stamp-to-avoid-conflict-w.patch diff --git a/.circleci/config.yml b/.circleci/config.yml index b0edbb0aa..bdcba30cb 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -39,7 +39,7 @@ jobs: command: | make \ BOARD=qemu-linuxboot \ - `/bin/pwd`/build/linuxboot-git/build/qemu/.configured \ + `/bin/pwd`/build/linuxboot-b5376a441e8e85cbf722e943bb8294958e87c784/build/qemu/.configured \ # Run first to avoid too many processes - run: diff --git a/boards/winterfell/winterfell.config b/boards/winterfell/winterfell.config index fe1cc3b4b..cd6e608a7 100644 --- a/boards/winterfell/winterfell.config +++ b/boards/winterfell/winterfell.config @@ -52,7 +52,7 @@ dxe_offset := 860000 dxe_size := 6a0000 flash-dxe: $(build)/$(BOARD)/linuxboot.rom ( echo u$(dxe_offset) $(dxe_size) ; \ - pv $(build)/linuxboot-git/build/$(BOARD)/dxe.vol \ + pv $(build)/linuxboot-b5376a441e8e85cbf722e943bb8294958e87c784/build/$(BOARD)/dxe.vol \ ) > /dev/ttyACM0 flash: $(build)/$(BOARD)/linuxboot.rom diff --git a/modules/linuxboot b/modules/linuxboot index 955fbd09e..49739d9ae 100644 --- a/modules/linuxboot +++ b/modules/linuxboot @@ -1,7 +1,13 @@ modules-$(CONFIG_LINUXBOOT) += linuxboot -linuxboot_version := git -linuxboot_repo := https://github.com/osresearch/linuxboot +#linuxboot_version := git +#linuxboot_repo := https://github.com/osresearch/linuxboot + +linuxboot_version := b5376a441e8e85cbf722e943bb8294958e87c784 +linuxboot_hash := ccbe2a1ce344dd5831a774a038ed619f988029cc123a87202d62f3d0ec7aad62 +linuxboot_tar := linuxboot-$(linuxboot_version).tar.gz +linuxboot_url := https://github.com/osresearch/linuxboot/archive/$(linuxboot_version).tar.gz + linuxboot_base_dir := linuxboot-$(linuxboot_version) # linuxboot builds are specialized on a per-target basis. @@ -77,3 +83,25 @@ linuxboot.run: $(build)/$(BOARD)/linuxboot.rom INITRD=$(build)/$(BOARD)/initrd.cpio.xz \ CUSTOM=$(CUSTOMPWD) \ run + +# If we are not building from a git checkout, +# we must also download the linuxboot-edk2 tree +ifneq "$(linuxboot_version)" "git" + +linuxboot_depends += linuxboot-edk2 +modules-$(CONFIG_LINUXBOOT) += linuxboot-edk2 + +linuxboot-edk2_version := b7c299e4799012e8a20958a68693ab95b7626aa9 +linuxboot-edk2_hash := 78f48f46414b019b5fcd2d7049fd79e955d25f2965123d0bbdf7226564db33e5 + +linuxboot-edk2_tar := linuxboot-edk2-$(linuxboot-edk2_version).tar.gz +linuxboot-edk2_url := https://github.com/linuxboot/edk2/archive/$(linuxboot-edk2_version).tar.gz +linuxboot-edk2_dir := $(linuxboot_base_dir)/edk2 + +# We don't need to build edk2 ourselves +# It will be done as part of the linuxboot build process +linuxboot-edk2_output := .git +linuxboot-edk2_target := .git +linuxboot-edk2_configure := echo -e '\n.git:\n\ttouch .git' >> Makefile + +endif diff --git a/modules/linuxboot-edk2 b/modules/linuxboot-edk2 new file mode 100644 index 000000000..834b47d70 --- /dev/null +++ b/modules/linuxboot-edk2 @@ -0,0 +1,2 @@ +# empty placeholder file +# This submodule is defined in modules/linuxboot if necessary diff --git a/patches/linuxboot-edk2-b7c299e4799012e8a20958a68693ab95b7626aa9/0000-Makefile-Rename-configured-stamp-to-avoid-conflict-w.patch b/patches/linuxboot-edk2-b7c299e4799012e8a20958a68693ab95b7626aa9/0000-Makefile-Rename-configured-stamp-to-avoid-conflict-w.patch new file mode 100644 index 000000000..1db03e80b --- /dev/null +++ b/patches/linuxboot-edk2-b7c299e4799012e8a20958a68693ab95b7626aa9/0000-Makefile-Rename-configured-stamp-to-avoid-conflict-w.patch @@ -0,0 +1,39 @@ +From d1a4d98a9ddf8e7e7f1e00ca2c143b5d5dc01afd Mon Sep 17 00:00:00 2001 +From: Nathan Rennie-Waldock +Date: Sun, 18 Oct 2020 23:58:29 +0100 +Subject: [PATCH] Makefile: Rename configured stamp to avoid conflict with + heads build system + +Signed-off-by: Nathan Rennie-Waldock +--- + Makefile | 8 ++++---- + 1 file changed, 4 insertions(+), 4 deletions(-) + +diff --git a/Makefile b/Makefile +index 2c58529031..d400904442 100644 +--- a/Makefile ++++ b/Makefile +@@ -26,16 +26,16 @@ $(EDK2_OUTPUTS): build-dxe + ia32: + build -a IA32 + +-build-dxe: .configured ++build-dxe: .edk2-configured + cd MdeModulePkg ; build + +-build-cpu: .configured ++build-cpu: .edk2-configured + cd UefiCpuPkg ; build +-build-quark: .configured ++build-quark: .edk2-configured + cd QuarkPlatformPkg ; build + build: build-dxe + +- .configured: ++ .edk2-configured: + $(MAKE) -C BaseTools + . ./edksetup.sh + touch $@ +-- +2.25.1 + From 8a1eb755c3999e3decb58fa42237702ea8a53422 Mon Sep 17 00:00:00 2001 From: Nathan Rennie-Waldock Date: Mon, 19 Oct 2020 21:58:19 +0100 Subject: [PATCH 6/6] patches/linuxboot-edk2: Import upstream patches to fix building with gcc 8 Signed-off-by: Nathan Rennie-Waldock --- ...-silence-false-stringop-overflow-war.patch | 64 +++++++++++++++++ ....makefile-add-Wno-stringop-truncatio.patch | 72 +++++++++++++++++++ ...def.template-Add-GCC-link-script-opt.patch | 34 +++++++++ 3 files changed, 170 insertions(+) create mode 100644 patches/linuxboot-edk2-b7c299e4799012e8a20958a68693ab95b7626aa9/0001-BaseTools-GenVtf-silence-false-stringop-overflow-war.patch create mode 100644 patches/linuxboot-edk2-b7c299e4799012e8a20958a68693ab95b7626aa9/0001-BaseTools-header.makefile-add-Wno-stringop-truncatio.patch create mode 100644 patches/linuxboot-edk2-b7c299e4799012e8a20958a68693ab95b7626aa9/0001-BaseTools-tools_def.template-Add-GCC-link-script-opt.patch diff --git a/patches/linuxboot-edk2-b7c299e4799012e8a20958a68693ab95b7626aa9/0001-BaseTools-GenVtf-silence-false-stringop-overflow-war.patch b/patches/linuxboot-edk2-b7c299e4799012e8a20958a68693ab95b7626aa9/0001-BaseTools-GenVtf-silence-false-stringop-overflow-war.patch new file mode 100644 index 000000000..8ed4840ba --- /dev/null +++ b/patches/linuxboot-edk2-b7c299e4799012e8a20958a68693ab95b7626aa9/0001-BaseTools-GenVtf-silence-false-stringop-overflow-war.patch @@ -0,0 +1,64 @@ +From 9de306701312f986c9638cb819d3f1f848d55cab Mon Sep 17 00:00:00 2001 +From: Laszlo Ersek +Date: Fri, 2 Mar 2018 17:11:52 +0100 +Subject: [PATCH] BaseTools/GenVtf: silence false "stringop-overflow" warning + with memcpy() + +gcc-8 (which is part of Fedora 28) enables the new warning +"-Wstringop-overflow" in "-Wall". This warning is documented in detail at +; the +introduction says + +> Warn for calls to string manipulation functions such as memcpy and +> strcpy that are determined to overflow the destination buffer. + +It breaks the BaseTools build with: + +> GenVtf.c: In function 'ConvertVersionInfo': +> GenVtf.c:132:7: error: 'strncpy' specified bound depends on the length +> of the source argument [-Werror=stringop-overflow=] +> strncpy (TemStr + 4 - Length, Str, Length); +> ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +> GenVtf.c:130:14: note: length computed here +> Length = strlen(Str); +> ^~~~~~~~~~~ + +It is a false positive because, while the bound equals the length of the +source argument, the destination pointer is moved back towards the +beginning of the destination buffer by the same amount (and this amount is +range-checked first, so we can't precede the start of the dest buffer). + +Replace both strncpy() calls with memcpy(). + +Cc: Ard Biesheuvel +Cc: Cole Robinson +Cc: Liming Gao +Cc: Paolo Bonzini +Cc: Yonghong Zhu +Reported-by: Cole Robinson +Contributed-under: TianoCore Contribution Agreement 1.1 +Signed-off-by: Laszlo Ersek +Reviewed-by: Liming Gao +--- + BaseTools/Source/C/GenVtf/GenVtf.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/BaseTools/Source/C/GenVtf/GenVtf.c b/BaseTools/Source/C/GenVtf/GenVtf.c +index 65ae08eece..fc7ae02203 100644 +--- a/BaseTools/Source/C/GenVtf/GenVtf.c ++++ b/BaseTools/Source/C/GenVtf/GenVtf.c +@@ -129,9 +129,9 @@ Returns: + } else { + Length = strlen(Str); + if (Length < 4) { +- strncpy (TemStr + 4 - Length, Str, Length); ++ memcpy (TemStr + 4 - Length, Str, Length); + } else { +- strncpy (TemStr, Str + Length - 4, 4); ++ memcpy (TemStr, Str + Length - 4, 4); + } + + sscanf ( +-- +2.25.1 + diff --git a/patches/linuxboot-edk2-b7c299e4799012e8a20958a68693ab95b7626aa9/0001-BaseTools-header.makefile-add-Wno-stringop-truncatio.patch b/patches/linuxboot-edk2-b7c299e4799012e8a20958a68693ab95b7626aa9/0001-BaseTools-header.makefile-add-Wno-stringop-truncatio.patch new file mode 100644 index 000000000..3b4e6363b --- /dev/null +++ b/patches/linuxboot-edk2-b7c299e4799012e8a20958a68693ab95b7626aa9/0001-BaseTools-header.makefile-add-Wno-stringop-truncatio.patch @@ -0,0 +1,72 @@ +From 1d212a83df0eaf32a6f5d4159beb2d77832e0231 Mon Sep 17 00:00:00 2001 +From: Laszlo Ersek +Date: Fri, 2 Mar 2018 17:11:52 +0100 +Subject: [PATCH 01/11] BaseTools/header.makefile: add + "-Wno-stringop-truncation" + +gcc-8 (which is part of Fedora 28) enables the new warning +"-Wstringop-truncation" in "-Wall". This warning is documented in detail +at ; the +introduction says + +> Warn for calls to bounded string manipulation functions such as strncat, +> strncpy, and stpncpy that may either truncate the copied string or leave +> the destination unchanged. + +It breaks the BaseTools build with: + +> EfiUtilityMsgs.c: In function 'PrintMessage': +> EfiUtilityMsgs.c:484:9: error: 'strncat' output may be truncated copying +> between 0 and 511 bytes from a string of length 511 +> [-Werror=stringop-truncation] +> strncat (Line, Line2, MAX_LINE_LEN - strlen (Line) - 1); +> ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +> EfiUtilityMsgs.c:469:9: error: 'strncat' output may be truncated copying +> between 0 and 511 bytes from a string of length 511 +> [-Werror=stringop-truncation] +> strncat (Line, Line2, MAX_LINE_LEN - strlen (Line) - 1); +> ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +> EfiUtilityMsgs.c:511:5: error: 'strncat' output may be truncated copying +> between 0 and 511 bytes from a string of length 511 +> [-Werror=stringop-truncation] +> strncat (Line, Line2, MAX_LINE_LEN - strlen (Line) - 1); +> ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +The right way to fix the warning would be to implement string concat with +snprintf(). However, Microsoft does not appear to support snprintf() +before VS2015 +, +so we just have to shut up the warning. The strncat() calls flagged above +are valid BTW. + +Cc: Ard Biesheuvel +Cc: Cole Robinson +Cc: Liming Gao +Cc: Paolo Bonzini +Cc: Yonghong Zhu +Contributed-under: TianoCore Contribution Agreement 1.1 +Signed-off-by: Laszlo Ersek +Reviewed-by: Liming Gao +--- + BaseTools/Source/C/Makefiles/header.makefile | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/BaseTools/Source/C/Makefiles/header.makefile b/BaseTools/Source/C/Makefiles/header.makefile +index 0976973bdd..550f8b35bc 100644 +--- a/BaseTools/Source/C/Makefiles/header.makefile ++++ b/BaseTools/Source/C/Makefiles/header.makefile +@@ -71,9 +71,9 @@ INCLUDE = $(TOOL_INCLUDE) -I $(MAKEROOT) -I $(MAKEROOT)/Include/Common -I $(MAKE + BUILD_CPPFLAGS = $(INCLUDE) -O2 + ifeq ($(DARWIN),Darwin) + # assume clang or clang compatible flags on OS X +-BUILD_CFLAGS = -MD -fshort-wchar -fno-strict-aliasing -Wall -Werror -Wno-deprecated-declarations -Wno-self-assign -Wno-unused-result -nostdlib -c -g ++BUILD_CFLAGS = -MD -fshort-wchar -fno-strict-aliasing -Wall -Werror -Wno-deprecated-declarations -Wno-stringop-truncation -Wno-self-assign -Wno-unused-result -nostdlib -c -g + else +-BUILD_CFLAGS = -MD -fshort-wchar -fno-strict-aliasing -Wall -Werror -Wno-deprecated-declarations -Wno-unused-result -nostdlib -c -g ++BUILD_CFLAGS = -MD -fshort-wchar -fno-strict-aliasing -Wall -Werror -Wno-deprecated-declarations -Wno-stringop-truncation -Wno-unused-result -nostdlib -c -g + endif + BUILD_LFLAGS = + BUILD_CXXFLAGS = -Wno-unused-result +-- +2.25.1 + diff --git a/patches/linuxboot-edk2-b7c299e4799012e8a20958a68693ab95b7626aa9/0001-BaseTools-tools_def.template-Add-GCC-link-script-opt.patch b/patches/linuxboot-edk2-b7c299e4799012e8a20958a68693ab95b7626aa9/0001-BaseTools-tools_def.template-Add-GCC-link-script-opt.patch new file mode 100644 index 000000000..800e6338c --- /dev/null +++ b/patches/linuxboot-edk2-b7c299e4799012e8a20958a68693ab95b7626aa9/0001-BaseTools-tools_def.template-Add-GCC-link-script-opt.patch @@ -0,0 +1,34 @@ +From 88e8498f8a72cff1f7af6852ec8166772913399e Mon Sep 17 00:00:00 2001 +From: Liming Gao +Date: Thu, 1 Nov 2018 22:35:29 +0800 +Subject: [PATCH] BaseTools tools_def.template: Add GCC link script option in + ASLDLINK_FLAGS + +GCC link script is used to discard the unused section data from ELF image. +ASLDLINK_FLAGS requires it to remove the unnecessary section data, then +GenFw can be used to retrieve the correct data section from ELF image. + +Contributed-under: TianoCore Contribution Agreement 1.1 +Signed-off-by: Liming Gao +Cc: Yonghong Zhu +Reviewed-by: Yonghong Zhu +--- + BaseTools/Conf/tools_def.template | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/BaseTools/Conf/tools_def.template b/BaseTools/Conf/tools_def.template +index a22b96c0b8..e0e68fd7fb 100755 +--- a/BaseTools/Conf/tools_def.template ++++ b/BaseTools/Conf/tools_def.template +@@ -4253,7 +4253,7 @@ DEFINE GCC48_AARCH64_ASLDLINK_FLAGS = DEF(GCC47_AARCH64_ASLDLINK_FLAGS) + DEFINE GCC49_IA32_CC_FLAGS = DEF(GCC48_IA32_CC_FLAGS) + DEFINE GCC49_X64_CC_FLAGS = DEF(GCC48_X64_CC_FLAGS) + DEFINE GCC49_IA32_X64_DLINK_COMMON = -nostdlib -Wl,-n,-q,--gc-sections -z common-page-size=0x40 +-DEFINE GCC49_IA32_X64_ASLDLINK_FLAGS = DEF(GCC49_IA32_X64_DLINK_COMMON) -Wl,--entry,ReferenceAcpiTable -u ReferenceAcpiTable ++DEFINE GCC49_IA32_X64_ASLDLINK_FLAGS = DEF(GCC49_IA32_X64_DLINK_COMMON) -Wl,--defsym=PECOFF_HEADER_SIZE=0 DEF(GCC_DLINK2_FLAGS_COMMON) -Wl,--entry,ReferenceAcpiTable -u ReferenceAcpiTable + DEFINE GCC49_IA32_X64_DLINK_FLAGS = DEF(GCC49_IA32_X64_DLINK_COMMON) -Wl,--entry,$(IMAGE_ENTRY_POINT) -u $(IMAGE_ENTRY_POINT) -Wl,-Map,$(DEST_DIR_DEBUG)/$(BASE_NAME).map,--whole-archive + DEFINE GCC49_IA32_DLINK2_FLAGS = DEF(GCC48_IA32_DLINK2_FLAGS) + DEFINE GCC49_X64_DLINK_FLAGS = DEF(GCC49_IA32_X64_DLINK_FLAGS) -Wl,-melf_x86_64,--oformat=elf64-x86-64,-pie +-- +2.25.1 +