#
TGT_LD_FLAGS = $(foreach SYM,$(TGT_LD_PREFIX) $(TGT_LD_DRIVERS) obj_config,\
-u $(SYM) --defsym check_$(SYM)=$(SYM) ) \
- $(patsubst %,--defsym %,$(TGT_LD_IDS))
+ $(patsubst %,--defsym %,$(TGT_LD_IDS)) \
+ $(TGT_LD_FLAGS_PRE)
# Calculate list of debugging versions of objects to be included in
# the target.
NON_AUTO_MEDIA += efi
NON_AUTO_MEDIA += efidrv
+# Specify entry point
+#
+TGT_LD_FLAGS_PRE = -e _$(TGT_PREFIX)_start
+
# Rules for building EFI files
#
$(BIN)/%.efi : $(BIN)/%.efi.tmp $(ELF2EFI)
* @v systab System table
* @ret efirc EFI return status code
*/
-EFI_STATUS EFIAPI _start ( EFI_HANDLE image_handle,
- EFI_SYSTEM_TABLE *systab ) {
+EFI_STATUS EFIAPI _efidrv_start ( EFI_HANDLE image_handle,
+ EFI_SYSTEM_TABLE *systab ) {
EFI_STATUS efirc;
/* Initialise EFI environment */
* @v systab System table
* @ret efirc EFI return status code
*/
-EFI_STATUS EFIAPI _start ( EFI_HANDLE image_handle,
- EFI_SYSTEM_TABLE *systab ) {
+EFI_STATUS EFIAPI _efi_start ( EFI_HANDLE image_handle,
+ EFI_SYSTEM_TABLE *systab ) {
EFI_STATUS efirc;
/* Initialise EFI environment */
*
*/
-ENTRY ( _start )
-
SECTIONS {
/* The file starts at a virtual address of zero, and sections are