]> git.proxmox.com Git - mirror_edk2.git/blobdiff - BaseTools/Conf/build_rule.template
New EdkShell binaries.
[mirror_edk2.git] / BaseTools / Conf / build_rule.template
index ff5af1ce783928769efbe6e583d20e5a5b430c35..4a21aba8545c57109bf0772e00e2e910a60b5ad8 100644 (file)
 #   Unicode-Text-File\r
 #\r
 \r
+## Build Rule Version Number\r
+#  build_rule_version=0.1\r
+#\r
+\r
 [C-Code-File]\r
     <InputFile>\r
         ?.c\r
         "$(CC)" $(CC_FLAGS) -o ${dst} $(INC) ${src}\r
         "$(SYMRENAME)" $(SYMRENAME_FLAGS) ${dst}\r
 \r
-    <Command.ARMGCC>\r
+    <Command.ARMGCC, Command.ARMLINUXGCC>\r
         "$(CC)" $(CC_FLAGS) -o ${dst} $(INC) ${src}\r
 \r
 \r
         $(DEBUG_DIR)(+)${s_dir}(+)${s_base}.c\r
 \r
     <Command>\r
-        -$(MD) $(OUTPUT_DIR)(+)${s_dir} > NUL 2>&1\r
-        "$(VFRPP)" $(VFRPP_FLAGS) $(INC) ${src} > $(OUTPUT_DIR)(+)${s_dir}(+)${s_base}.i\r
-        -$(MD) ${d_path} > NUL 2>&1\r
-        "$(VFR)" $(VFR_FLAGS) --string-db $(OUTPUT_DIR)(+)$(MODULE_NAME)StrDefs.hpk --output-directory ${d_path} $(OUTPUT_DIR)(+)${s_dir}(+)${s_base}.i\r
+        "$(VFRPP)" $(VFRPP_FLAGS) $(INC) ${src} > $(OUTPUT_DIR)(+)${s_base}.i\r
+        "$(VFR)" $(VFR_FLAGS) --string-db $(OUTPUT_DIR)(+)$(MODULE_NAME)StrDefs.hpk --output-directory ${d_path} $(OUTPUT_DIR)(+)${s_base}.i\r
 \r
 [Object-File]\r
     <InputFile>\r
     <Command.RVCT>\r
         "$(SLINK)" $(SLINK_FLAGS) ${dst} --via $(OBJECT_FILES_LIST)\r
     \r
-    <Command.RVCTCYGWIN, Command.ARMGCC>\r
+    <Command.RVCTCYGWIN, Command.ARMGCC, Command.ARMLINUXGCC>\r
         # $(OBJECT_FILES_LIST) has wrong paths for cygwin\r
         "$(SLINK)" $(SLINK_FLAGS) ${dst} $(OBJECT_FILES)\r
 \r
         "$(DLINK)" -o ${dst} $(DLINK_FLAGS) -\( $(DLINK_SPATH) @$(STATIC_LIBRARY_FILES_LIST) -\) $(DLINK2_FLAGS)\r
         "$(OBJCOPY)" $(OBJCOPY_FLAGS) ${dst}\r
 \r
-    <Command.ARMGCC>\r
+    <Command.ARMGCC, Command.ARMLINUXGCC>\r
         "$(DLINK)" -o ${dst} $(DLINK_FLAGS) -\( $(DLINK_SPATH) $(STATIC_LIBRARY_FILES) -\) $(DLINK2_FLAGS)\r
 \r
     <Command.RVCT>\r
     <Command.GCC>\r
         "$(DLINK)" $(DLINK_FLAGS) -\( $(DLINK_SPATH) @$(STATIC_LIBRARY_FILES_LIST) -\) $(DLINK2_FLAGS)\r
 \r
-    <Command.ARMGCC>\r
+    <Command.ARMGCC, Command.ARMLINUXGCC>\r
         "$(DLINK)" $(DLINK_FLAGS) -\( $(DLINK_SPATH) $(STATIC_LIBRARY_FILES) -\) $(DLINK2_FLAGS)\r
 \r
     <Command.RVCT>\r
     <OutputFile>\r
         $(DEBUG_DIR)(+)$(MODULE_NAME).efi\r
 \r
-    <Command.MSFT, Command.INTEL, Command.RVCT, Command.ARMGCC>  \r
+    <Command.MSFT, Command.INTEL, Command.RVCT, Command.ARMGCC, Command.ARMLINUXGCC>  \r
         "$(GENFW)" -e $(MODULE_TYPE) -o ${dst} ${src} $(GENFW_FLAGS)\r
         $(CP) ${dst} $(OUTPUT_DIR)\r
         $(CP) ${dst} $(BIN_DIR)\r
         -$(CP) $(DEBUG_DIR)(+)*.map $(OUTPUT_DIR)\r
 \r
     <Command.GCC>\r
-        $(OBJCOPY) --only-keep-debug ${src} $(DEBUG_DIR)(+)$(MODULE_NAME).debug\r
-        $(OBJCOPY) --strip-unneeded ${src}\r
+        $(CP) ${src} $(DEBUG_DIR)(+)$(MODULE_NAME).debug\r
+        $(OBJCOPY) --strip-unneeded -R .eh_frame ${src}\r
 \r
         #\r
         #The below 2 lines are only needed for UNIXGCC tool chain, which genereates PE image directly\r
         #\r
-        -$(OBJCOPY) --add-gnu-debuglink=$(DEBUG_DIR)(+)$(MODULE_NAME).debug ${src}\r
+        -$(OBJCOPY) $(OBJCOPY_ADDDEBUGFLAG) ${src}\r
         -$(CP) $(DEBUG_DIR)(+)$(MODULE_NAME).debug $(BIN_DIR)\r
 \r
         "$(GENFW)" -e $(MODULE_TYPE) -o ${dst} ${src} $(GENFW_FLAGS)\r
         $(OUTPUT_DIR)(+)${s_dir}(+)${s_base}.hpk\r
 \r
     <Command>\r
-        -$(MD) $(OUTPUT_DIR)(+)${s_dir} > NUL 2>&1\r
         "$(VFRPP)" $(VFRPP_FLAGS) $(INC) ${src} > $(OUTPUT_DIR)(+)${s_dir}(+)${s_base}.i\r
-        -$(MD) $(OUTPUT_DIR)(+)${s_dir} > NUL 2>&1\r
         "$(VFR)" $(VFR_FLAGS) --create-ifr-package --string-db $(OUTPUT_DIR)(+)$(MODULE_NAME)StrDefs.hpk --output-directory $(OUTPUT_DIR)(+)${s_dir} $(OUTPUT_DIR)(+)${s_dir}(+)${s_base}.i\r
 \r
 [Hii-Binary-Package.UEFI_HII]\r
         "$(GENFW)" -o $(OUTPUT_DIR)(+)$(MODULE_NAME)hii.rc -g $(MODULE_GUID) --hiibinpackage $(HII_BINARY_PACKAGES) $(GENFW_FLAGS)\r
         "$(RC)" $(RC_FLAGS) $(OUTPUT_DIR)(+)$(MODULE_NAME)hii.rc ${dst}\r
         \r
-    <Command.XCODE, Command.RVCT, Command.ARMGCC>  \r
+    <Command.XCODE, Command.RVCT, Command.ARMGCC, Command.ARMLINUXGCC>  \r
         GenFw -o $(OUTPUT_DIR)(+)$(MODULE_NAME)hii.rc -g $(MODULE_GUID) --hiibinpackage $(HII_BINARY_PACKAGES)\r
         \r
         \r