]> git.proxmox.com Git - mirror_edk2.git/blobdiff - BaseTools/Conf/build_rule.template
BaseTools/Conf: Add VS2017/ARM support
[mirror_edk2.git] / BaseTools / Conf / build_rule.template
index a5e471eb3c1026a1797f64fe4539863e17d4a194..77ed282e0311cd94b30e758869efd46d3e08712c 100755 (executable)
 \r
     <Command>\r
 \r
-\r
 [Assembly-Code-File.COMMON.COMMON]\r
     <InputFile.MSFT, InputFile.INTEL, InputFile.RVCT>\r
         ?.asm, ?.Asm, ?.ASM\r
         # For RVCTCYGWIN ASM_FLAGS must be first to work around pathing issues\r
         "$(ASM)" $(ASM_FLAGS) -o ${dst} $(INC) ${d_path}(+)${s_base}.iii\r
 \r
+[Assembly-Code-File.COMMON.ARM]\r
+    # Remove --convert-hex for ARM as it breaks MSFT assemblers\r
+    <InputFile.MSFT, InputFile.INTEL, InputFile.RVCT>\r
+        ?.asm, ?.Asm, ?.ASM\r
+\r
+    <InputFile.GCC, InputFile.GCCLD>\r
+        ?.S, ?.s\r
+\r
+    <ExtraDependency>\r
+        $(MAKE_FILE)\r
+\r
+    <OutputFile>\r
+        $(OUTPUT_DIR)(+)${s_dir}(+)${s_base}.obj\r
+\r
+    <Command.INTEL>\r
+        "$(PP)" $(PP_FLAGS) $(INC) ${src} > ${d_path}(+)${s_base}.i\r
+        Trim --source-code --convert-hex --trim-long -o ${d_path}(+)${s_base}.iii ${d_path}(+)${s_base}.i\r
+        "$(ASM)" /Fo${dst} $(ASM_FLAGS) /I${s_path} $(INC) ${d_path}(+)${s_base}.iii\r
+\r
+    <Command.MSFT>\r
+        "$(PP)" $(PP_FLAGS) $(INC) ${src} > ${d_path}(+)${s_base}.i\r
+        Trim --source-code --trim-long -o ${d_path}(+)${s_base}.iii ${d_path}(+)${s_base}.i\r
+        "$(ASM)" /Fo${dst} $(ASM_FLAGS) /I${s_path} $(INC) ${d_path}(+)${s_base}.iii\r
+\r
+    <Command.GCC, Command.GCCLD, Command.RVCT>\r
+        "$(PP)" $(PP_FLAGS) $(INC) ${src} > ${d_path}(+)${s_base}.i\r
+        Trim --trim-long --source-code -o ${d_path}(+)${s_base}.iii ${d_path}(+)${s_base}.i\r
+        # For RVCTCYGWIN ASM_FLAGS must be first to work around pathing issues\r
+        "$(ASM)" $(ASM_FLAGS) -o ${dst} $(INC) ${d_path}(+)${s_base}.iii\r
+\r
 [Nasm-Assembly-Code-File.COMMON.COMMON]\r
     <InputFile>\r
         ?.nasm\r