Browse Source

Add full Data Directories table

Microsoft dumpbin doesn't like the binary if
the full table doesn't exist

Signed-off-by: Callum Farmer <gmbr3@opensuse.org>
Callum Farmer 1 năm trước cách đây
mục cha
commit
039ca9d93c
4 tập tin đã thay đổi với 44 bổ sung4 xóa
  1. 11 1
      gnuefi/crt0-efi-arm.S
  2. 11 1
      gnuefi/crt0-efi-loongarch64.S
  3. 11 1
      gnuefi/crt0-efi-mips64el.S
  4. 11 1
      gnuefi/crt0-efi-riscv64.S

+ 11 - 1
gnuefi/crt0-efi-arm.S

@@ -76,7 +76,7 @@ extra_header_fields:
 	.4byte	0				// SizeOfHeapReserve
 	.4byte	0				// SizeOfHeapCommit
 	.4byte	0				// LoaderFlags
-	.4byte	0x6				// NumberOfRvaAndSizes
+	.4byte	0x10				// NumberOfRvaAndSizes
 
 	.8byte	0				// ExportTable
 	.8byte	0				// ImportTable
@@ -84,6 +84,16 @@ extra_header_fields:
 	.8byte	0				// ExceptionTable
 	.8byte	0				// CertificationTable
 	.8byte	0				// BaseRelocationTable
+	.8byte	0				// Debug
+	.8byte	0				// Architecture
+	.8byte	0				// Global Ptr
+	.8byte	0				// TLS Table
+	.8byte	0				// Load Config Table
+	.8byte	0				// Bound Import
+	.8byte	0				// IAT
+	.8byte	0				// Delay Import Descriptor
+	.8byte	0				// CLR Runtime Header
+	.8byte	0				// Reserved, must be zero
 
 	// Section table
 section_table:

+ 11 - 1
gnuefi/crt0-efi-loongarch64.S

@@ -78,7 +78,7 @@ extra_header_fields:
 	.8byte	0				// SizeOfHeapReserve
 	.8byte	0				// SizeOfHeapCommit
 	.4byte	0				// LoaderFlags
-	.4byte	0x6				// NumberOfRvaAndSizes
+	.4byte	0x10				// NumberOfRvaAndSizes
 
 	.8byte	0				// ExportTable
 	.8byte	0				// ImportTable
@@ -86,6 +86,16 @@ extra_header_fields:
 	.8byte	0				// ExceptionTable
 	.8byte	0				// CertificationTable
 	.8byte	0				// BaseRelocationTable
+	.8byte	0				// Debug
+	.8byte	0				// Architecture
+	.8byte	0				// Global Ptr
+	.8byte	0				// TLS Table
+	.8byte	0				// Load Config Table
+	.8byte	0				// Bound Import
+	.8byte	0				// IAT
+	.8byte	0				// Delay Import Descriptor
+	.8byte	0				// CLR Runtime Header
+	.8byte	0				// Reserved, must be zero
 
 	// Section table
 section_table:

+ 11 - 1
gnuefi/crt0-efi-mips64el.S

@@ -75,7 +75,7 @@ extra_header_fields:
 	.8byte	0				// SizeOfHeapReserve
 	.8byte	0				// SizeOfHeapCommit
 	.4byte	0				// LoaderFlags
-	.4byte	0x6				// NumberOfRvaAndSizes
+	.4byte	0x10				// NumberOfRvaAndSizes
 
 	.8byte	0				// ExportTable
 	.8byte	0				// ImportTable
@@ -83,6 +83,16 @@ extra_header_fields:
 	.8byte	0				// ExceptionTable
 	.8byte	0				// CertificationTable
 	.8byte	0				// BaseRelocationTable
+	.8byte	0				// Debug
+	.8byte	0				// Architecture
+	.8byte	0				// Global Ptr
+	.8byte	0				// TLS Table
+	.8byte	0				// Load Config Table
+	.8byte	0				// Bound Import
+	.8byte	0				// IAT
+	.8byte	0				// Delay Import Descriptor
+	.8byte	0				// CLR Runtime Header
+	.8byte	0				// Reserved, must be zero
 
 	// Section table
 section_table:

+ 11 - 1
gnuefi/crt0-efi-riscv64.S

@@ -78,7 +78,7 @@ extra_header_fields:
 	.8byte	0				// SizeOfHeapReserve
 	.8byte	0				// SizeOfHeapCommit
 	.4byte	0				// LoaderFlags
-	.4byte	0x6				// NumberOfRvaAndSizes
+	.4byte	0x10				// NumberOfRvaAndSizes
 
 	.8byte	0				// ExportTable
 	.8byte	0				// ImportTable
@@ -86,6 +86,16 @@ extra_header_fields:
 	.8byte	0				// ExceptionTable
 	.8byte	0				// CertificationTable
 	.8byte	0				// BaseRelocationTable
+	.8byte	0				// Debug
+	.8byte	0				// Architecture
+	.8byte	0				// Global Ptr
+	.8byte	0				// TLS Table
+	.8byte	0				// Load Config Table
+	.8byte	0				// Bound Import
+	.8byte	0				// IAT
+	.8byte	0				// Delay Import Descriptor
+	.8byte	0				// CLR Runtime Header
+	.8byte	0				// Reserved, must be zero
 
 	// Section table
 section_table: