Do not link against libxtos if not needed
This commit is contained in:
parent
c4450e88ab
commit
c98007a4a5
@ -15,7 +15,7 @@ list(APPEND XTLDR_FB_O_SOURCE
|
|||||||
add_executable(fb_o ${XTLDR_FB_O_SOURCE})
|
add_executable(fb_o ${XTLDR_FB_O_SOURCE})
|
||||||
|
|
||||||
# Add linker libraries
|
# Add linker libraries
|
||||||
target_link_libraries(fb_o libxtos libxtldr)
|
target_link_libraries(fb_o libxtldr)
|
||||||
|
|
||||||
# Set proper binary name and install target
|
# Set proper binary name and install target
|
||||||
set_target_properties(fb_o PROPERTIES SUFFIX .efi)
|
set_target_properties(fb_o PROPERTIES SUFFIX .efi)
|
||||||
|
@ -14,7 +14,7 @@ list(APPEND XTLDR_PECOFF_O_SOURCE
|
|||||||
add_executable(pecoff_o ${XTLDR_PECOFF_O_SOURCE})
|
add_executable(pecoff_o ${XTLDR_PECOFF_O_SOURCE})
|
||||||
|
|
||||||
# Add linker libraries
|
# Add linker libraries
|
||||||
target_link_libraries(pecoff_o libxtos libxtldr)
|
target_link_libraries(pecoff_o libxtldr)
|
||||||
|
|
||||||
# Set proper binary name and install target
|
# Set proper binary name and install target
|
||||||
set_target_properties(pecoff_o PROPERTIES SUFFIX .efi)
|
set_target_properties(pecoff_o PROPERTIES SUFFIX .efi)
|
||||||
|
@ -283,7 +283,7 @@ PeLoadImage(IN PEFI_FILE_HANDLE FileHandle,
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* Copy all sections */
|
/* Copy all sections */
|
||||||
RtlCopyMemory(ImageData->Data, Data, ImageData->PeHeader->OptionalHeader.SizeOfHeaders);
|
XtLdrProtocol->Memory.CopyMemory(ImageData->Data, Data, ImageData->PeHeader->OptionalHeader.SizeOfHeaders);
|
||||||
|
|
||||||
/* Find section header */
|
/* Find section header */
|
||||||
SectionHeader = (PPECOFF_IMAGE_SECTION_HEADER)((PUCHAR)&ImageData->PeHeader->OptionalHeader +
|
SectionHeader = (PPECOFF_IMAGE_SECTION_HEADER)((PUCHAR)&ImageData->PeHeader->OptionalHeader +
|
||||||
@ -308,16 +308,16 @@ PeLoadImage(IN PEFI_FILE_HANDLE FileHandle,
|
|||||||
if(SectionSize > 0 && SectionHeader[Index].PointerToRawData != 0)
|
if(SectionSize > 0 && SectionHeader[Index].PointerToRawData != 0)
|
||||||
{
|
{
|
||||||
/* Copy section */
|
/* Copy section */
|
||||||
RtlCopyMemory((PUINT8)ImageData->Data + SectionHeader[Index].VirtualAddress,
|
XtLdrProtocol->Memory.CopyMemory((PUINT8)ImageData->Data + SectionHeader[Index].VirtualAddress,
|
||||||
Data + SectionHeader[Index].PointerToRawData, SectionSize);
|
Data + SectionHeader[Index].PointerToRawData, SectionSize);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Check if raw size is shorter than virtual size */
|
/* Check if raw size is shorter than virtual size */
|
||||||
if(SectionSize < SectionHeader[Index].Misc.VirtualSize)
|
if(SectionSize < SectionHeader[Index].Misc.VirtualSize)
|
||||||
{
|
{
|
||||||
/* Fill remaining space with zeroes */
|
/* Fill remaining space with zeroes */
|
||||||
RtlZeroMemory((PUINT8)ImageData->Data + SectionHeader[Index].VirtualAddress + SectionSize,
|
XtLdrProtocol->Memory.ZeroMemory((PUINT8)ImageData->Data + SectionHeader[Index].VirtualAddress + SectionSize,
|
||||||
SectionHeader[Index].Misc.VirtualSize - SectionSize);
|
SectionHeader[Index].Misc.VirtualSize - SectionSize);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user