Changeset 107054 in vbox for trunk/src/VBox/Devices/EFI/Firmware
- Timestamp:
- Nov 20, 2024 11:06:26 AM (3 months ago)
- svn:sync-xref-src-repo-rev:
- 166008
- Location:
- trunk/src/VBox/Devices/EFI/Firmware/BaseTools
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Devices/EFI/Firmware/BaseTools/Conf/build_rule.template
r101291 r107054 345 345 $(OUTPUT_DIR)(+)$(MODULE_NAME).map 346 346 347 # vbox: Fixing no-rule-to-make ..\DEBUG\mod.efi 348 # Note! Listing .efi more than once causes trouble in ModuleAutoGen.py::_ApplyBuildRule for 349 # VBoxVgaDxe, so that required hacking as well to make this fix work. 350 <OutputFile.GCC> 351 $(DEBUG_DIR)(+)$(MODULE_NAME).efi 352 $(DEBUG_DIR)(+)$(MODULE_NAME).debug 353 $(DEBUG_DIR)(+)$(MODULE_NAME).efi-tmp 354 $(DEBUG_DIR)(+)$(MODULE_NAME).map 355 $(BIN_DIR)(+)$(MODULE_NAME_GUID).efi 356 $(BIN_DIR)(+)$(MODULE_NAME_GUID).debug 357 347 358 <Command.MSFT, Command.INTEL, Command.CLANGPDB> 348 359 "$(GENFW)" -e $(MODULE_TYPE) -o ${dst} ${src} $(GENFW_FLAGS) … … 352 363 -$(CP) $(DEBUG_DIR)(+)*.pdb $(OUTPUT_DIR) 353 364 <Command.GCC> 365 # vbox 2024-11-18 bird: This crap modifies the source file, causing EnglishDxe to spin forever 366 # $(CP) ${src} $(DEBUG_DIR)(+)$(MODULE_NAME).debug 367 # "$(OBJCOPY)" $(OBJCOPY_STRIPFLAG) ${src} 368 # 369 # # 370 # #The below 2 lines are only needed for UNIXGCC tool chain, which generates PE image directly 371 # # 372 # -"$(OBJCOPY)" $(OBJCOPY_ADDDEBUGFLAG) ${src} 373 # -$(CP) $(DEBUG_DIR)(+)$(MODULE_NAME).debug $(BIN_DIR)(+)$(MODULE_NAME_GUID).debug 374 # 375 # "$(GENFW)" -e $(MODULE_TYPE) -o ${dst} ${src} $(GENFW_FLAGS) 376 # $(CP) ${dst} $(DEBUG_DIR) 377 # $(CP) ${dst} $(BIN_DIR)(+)$(MODULE_NAME_GUID).efi 378 # -$(CP) $(DEBUG_DIR)(+)*.map $(OUTPUT_DIR) 379 # Rewritten: 354 380 $(CP) ${src} $(DEBUG_DIR)(+)$(MODULE_NAME).debug 355 "$(OBJCOPY)" $(OBJCOPY_STRIPFLAG) ${src} 356 357 # 358 #The below 2 lines are only needed for UNIXGCC tool chain, which generates PE image directly 359 # 360 -"$(OBJCOPY)" $(OBJCOPY_ADDDEBUGFLAG) ${src} 361 -$(CP) $(DEBUG_DIR)(+)$(MODULE_NAME).debug $(BIN_DIR)(+)$(MODULE_NAME_GUID).debug 362 363 "$(GENFW)" -e $(MODULE_TYPE) -o ${dst} ${src} $(GENFW_FLAGS) 381 $(CP) ${src} $(DEBUG_DIR)(+)$(MODULE_NAME).efi-tmp 382 "$(OBJCOPY)" $(OBJCOPY_STRIPFLAG) $(DEBUG_DIR)(+)$(MODULE_NAME).efi-tmp 383 "$(GENFW)" -e $(MODULE_TYPE) -o ${dst} $(DEBUG_DIR)(+)$(MODULE_NAME).efi-tmp $(GENFW_FLAGS) 364 384 $(CP) ${dst} $(DEBUG_DIR) 365 385 $(CP) ${dst} $(BIN_DIR)(+)$(MODULE_NAME_GUID).efi 366 -$(CP) $(DEBUG_DIR)(+)*.map $(OUTPUT_DIR) 386 $(CP) $(DEBUG_DIR)(+)$(MODULE_NAME).debug $(BIN_DIR)(+)$(MODULE_NAME_GUID).debug 387 -$(CP) $(DEBUG_DIR)(+)$(MODULE_NAME).map $(OUTPUT_DIR) 367 388 368 389 <Command.XCODE> -
trunk/src/VBox/Devices/EFI/Firmware/BaseTools/Source/Python/AutoGen/ModuleAutoGen.py
r105670 r107054 907 907 # to avoid cyclic rule 908 908 if FileType in RuleChain: 909 EdkLogger.error("build", ERROR_STATEMENT, "Cyclic dependency detected while generating rule for %s " % str(Source))909 EdkLogger.error("build", ERROR_STATEMENT, "Cyclic dependency detected while generating rule for %s (FileType=%s RuleChain=%s)" % (str(Source), FileType, RuleChain)) 910 910 911 911 RuleChain.add(FileType) 912 SourceList.extend(Target.Outputs) 912 # vbox: HACK ALERT! Only add the first .efi output file, otherwise the cyclic error triggers. # vbox 913 # See modification to [Dynamic-Library-File] in build_rule.template. # vbox 914 if len(Target.Outputs) > 1 and Target.Outputs[0].Ext == '.efi': # vbox 915 SourceList.append(Target.Outputs[0]); # vbox 916 for oOutput in Target.Outputs[1:]: # vbox 917 if oOutput.Ext != '.efi': # vbox 918 SourceList.append(oOutput); # vbox 919 else: # vbox 920 SourceList.extend(Target.Outputs) 913 921 914 922 # For each final target name, retrieve the corresponding TargetDescBlock instance.
Note:
See TracChangeset
for help on using the changeset viewer.