#\r
-# Copyright (c) 2007 - 2015, Intel Corporation. All rights reserved.<BR>\r
+# Copyright (c) 2007 - 2018, Intel Corporation. All rights reserved.<BR>\r
# Portions copyright (c) 2008 - 2010, Apple Inc. All rights reserved.<BR>\r
# This program and the accompanying materials\r
# are licensed and made available under the terms and conditions of the BSD License\r
# $(BIN_DIR) Common directory for executable files\r
# $(FV_DIR) Directory to store flash image files\r
# $(INC) Search path of current module\r
+# $(NASM_INC) Search nasm file path of current module\r
# $(INC_LIST) A file containing search pathes of current module\r
# $(LIBS) Static library files of current module\r
# $(<tool>_FLAGS) Tools flags of current module\r
\r
<Command.GCC, Command.GCCLD, Command.RVCT>\r
# For RVCTCYGWIN CC_FLAGS must be first to work around pathing issues\r
- "$(CC)" $(CC_FLAGS) -o ${dst} $(INC) ${src}\r
+ "$(CC)" $(CC_FLAGS) -c -o ${dst} $(INC) ${src}\r
\r
<Command.XCODE>\r
"$(CC)" $(CC_FLAGS) -o ${dst} $(INC) ${src}\r
\r
-[C-Code-File.COMMON.IPF]\r
+[C-Code-File.BASE.AARCH64,C-Code-File.SEC.AARCH64,C-Code-File.PEI_CORE.AARCH64,C-Code-File.PEIM.AARCH64,C-Code-File.BASE.ARM,C-Code-File.SEC.ARM,C-Code-File.PEI_CORE.ARM,C-Code-File.PEIM.ARM]\r
<InputFile>\r
?.c\r
- ?.C\r
- ?.cc\r
- ?.CC\r
- ?.cpp\r
- ?.Cpp\r
- ?.CPP\r
\r
<ExtraDependency>\r
$(MAKE_FILE)\r
<OutputFile>\r
$(OUTPUT_DIR)(+)${s_dir}(+)${s_base}.obj\r
\r
- <Command.MSFT, Command.INTEL>\r
- "$(CC)" /Fo${dst} $(CC_FLAGS) $(INC) ${src}\r
-\r
<Command.GCC, Command.GCCLD, Command.RVCT>\r
- # For RVCTCYGWIN CC_FLAGS must be first to work around pathing issues\r
- "$(CC)" $(CC_FLAGS) -o ${dst} $(INC) ${src}\r
- "$(SYMRENAME)" $(SYMRENAME_FLAGS) ${dst}\r
-\r
-[C-Code-File.BASE.AARCH64,C-Code-File.SEC.AARCH64,C-Code-File.PEI_CORE.AARCH64,C-Code-File.PEIM.AARCH64]\r
- <InputFile>\r
- ?.c\r
-\r
- <ExtraDependency>\r
- $(MAKE_FILE)\r
-\r
- <OutputFile>\r
- $(OUTPUT_DIR)(+)${s_dir}(+)${s_base}.obj\r
-\r
- <Command.GCC, Command.GCCLD>\r
- "$(CC)" $(CC_FLAGS) $(CC_XIPFLAGS) -o ${dst} $(INC) ${src}\r
+ "$(CC)" $(CC_FLAGS) $(CC_XIPFLAGS) -c -o ${dst} $(INC) ${src}\r
\r
[C-Header-File]\r
<InputFile>\r
\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,Assembly-Code-File.COMMON.AARCH64]\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
<Command>\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
- "$(NASM)" -I${s_path}(+) $(NASM_FLAGS) -o $dst ${d_path}(+)${s_base}.iii\r
+ "$(NASM)" -I${s_path}(+) $(NASM_INC) $(NASM_FLAGS) -o $dst ${d_path}(+)${s_base}.iii\r
\r
-[Assembly-Code-File.COMMON.IPF]\r
+[Device-Tree-Source-File]\r
<InputFile>\r
- ?.s\r
+ ?.dts\r
\r
<ExtraDependency>\r
$(MAKE_FILE)\r
\r
<OutputFile>\r
- $(OUTPUT_DIR)(+)${s_dir}(+)${s_base}.obj\r
+ $(OUTPUT_DIR)(+)${s_dir}(+)${s_base}.dtb\r
\r
- <Command.MSFT, Command.INTEL>\r
- "$(PP)" $(PP_FLAGS) $(INC) ${src} > ${d_path}(+)${s_base}.i\r
- Trim --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} ${d_path}(+)${s_base}.iii\r
+ <Command.GCC>\r
+ "$(DTCPP)" $(DTCPP_FLAGS) $(INC) ${src} > ${d_path}(+)${s_base}.i\r
+ "$(DTC)" $(DTC_FLAGS) -I dts -O dtb -o ${dst} ${d_path}(+)${s_base}.i\r
\r
[Visual-Form-Representation-File]\r
<InputFile>\r
"$(SLINK)" $(SLINK_FLAGS) /OUT:${dst} @$(OBJECT_FILES_LIST)\r
\r
<Command.GCC, Command.GCCLD>\r
- "$(SLINK)" -cr ${dst} $(SLINK_FLAGS) @$(OBJECT_FILES_LIST)\r
+ $(RM) ${dst}\r
+ "$(SLINK)" cr ${dst} $(SLINK_FLAGS) @$(OBJECT_FILES_LIST)\r
\r
<Command.RVCT>\r
"$(SLINK)" $(SLINK_FLAGS) ${dst} --via $(OBJECT_FILES_LIST)\r
$(DEBUG_DIR)(+)$(MODULE_NAME).dll\r
\r
<Command.MSFT, Command.INTEL>\r
+ "$(DLINK)" /OUT:${dst} $(DLINK_FLAGS) $(DLINK2_FLAGS) $(DLINK_SPATH) @$(STATIC_LIBRARY_FILES_LIST)\r
"$(DLINK)" /OUT:${dst} $(DLINK_FLAGS) $(DLINK_SPATH) @$(STATIC_LIBRARY_FILES_LIST)\r
\r
- <Command.GCC, Command.GCCLD>\r
+ <Command.GCC>\r
+ "$(DLINK)" -o ${dst} $(DLINK_FLAGS) -Wl,--start-group,@$(STATIC_LIBRARY_FILES_LIST),--end-group $(CC_FLAGS) $(DLINK2_FLAGS)\r
+ "$(OBJCOPY)" $(OBJCOPY_FLAGS) ${dst}\r
+\r
+ <Command.GCCLD>\r
"$(DLINK)" -o ${dst} $(DLINK_FLAGS) --start-group $(DLINK_SPATH) @$(STATIC_LIBRARY_FILES_LIST) --end-group $(DLINK2_FLAGS)\r
"$(OBJCOPY)" $(OBJCOPY_FLAGS) ${dst}\r
\r
"$(DLINK)" $(DLINK_FLAGS) -o ${dst} $(DLINK_SPATH) -filelist $(STATIC_LIBRARY_FILES_LIST) $(DLINK2_FLAGS)\r
\r
\r
+[Static-Library-File.SEC.AARCH64, Static-Library-File.PEI_CORE.AARCH64, Static-Library-File.PEIM.AARCH64,Static-Library-File.SEC.ARM, Static-Library-File.PEI_CORE.ARM, Static-Library-File.PEIM.ARM]\r
+ <InputFile>\r
+ *.lib\r
+\r
+ <ExtraDependency>\r
+ $(MAKE_FILE)\r
+\r
+ <OutputFile>\r
+ $(DEBUG_DIR)(+)$(MODULE_NAME).dll\r
+\r
+ <Command.GCC>\r
+ "$(DLINK)" -o ${dst} $(DLINK_FLAGS) $(DLINK_XIPFLAGS) -Wl,--start-group,@$(STATIC_LIBRARY_FILES_LIST),--end-group $(CC_FLAGS) $(CC_XIPFLAGS) $(DLINK2_FLAGS)\r
+ "$(OBJCOPY)" $(OBJCOPY_FLAGS) ${dst}\r
+\r
+\r
[Static-Library-File.USER_DEFINED]\r
<InputFile>\r
*.lib\r
<Command.MSFT, Command.INTEL>\r
"$(DLINK)" $(DLINK_FLAGS) $(DLINK_SPATH) @$(STATIC_LIBRARY_FILES_LIST)\r
\r
- <Command.GCC, Command.GCCLD>\r
+ <Command.GCC>\r
+ "$(DLINK)" $(DLINK_FLAGS) -Wl,--start-group,@$(STATIC_LIBRARY_FILES_LIST),--end-group $(DLINK2_FLAGS)\r
+\r
+ <Command.GCCLD>\r
"$(DLINK)" $(DLINK_FLAGS) --start-group $(DLINK_SPATH) @$(STATIC_LIBRARY_FILES_LIST) --end-group $(DLINK2_FLAGS)\r
\r
<Command.RVCT>\r
"$(GENFW)" -o ${dst} -c $(OUTPUT_DIR)(+)${s_dir}(+)${s_base}.dll $(GENFW_FLAGS)\r
\r
<Command.GCC, Command.GCCLD>\r
- "$(ASLCC)" -o $(OUTPUT_DIR)(+)${s_dir}(+)${s_base}.obj $(CC_FLAGS) $(ASLCC_FLAGS) $(INC) ${src}\r
+ "$(ASLCC)" -c -o $(OUTPUT_DIR)(+)${s_dir}(+)${s_base}.obj $(CC_FLAGS) $(ASLCC_FLAGS) $(INC) ${src}\r
"$(ASLDLINK)" -o $(OUTPUT_DIR)(+)${s_dir}(+)${s_base}.dll $(ASLDLINK_FLAGS) $(OUTPUT_DIR)(+)${s_dir}(+)${s_base}.obj\r
"$(GENFW)" -o ${dst} -c $(OUTPUT_DIR)(+)${s_dir}(+)${s_base}.dll $(GENFW_FLAGS)\r
\r
"$(GENFW)" -o ${dst} -c $(OUTPUT_DIR)(+)${s_dir}(+)${s_base}.dll $(GENFW_FLAGS)\r
\r
<Command.GCC, Command.GCCLD>\r
- "$(ASLCC)" -o $(OUTPUT_DIR)(+)${s_dir}(+)${s_base}.obj $(CC_FLAGS) $(ASLCC_FLAGS) $(INC) ${src}\r
+ "$(ASLCC)" -c -o $(OUTPUT_DIR)(+)${s_dir}(+)${s_base}.obj $(CC_FLAGS) $(ASLCC_FLAGS) $(INC) ${src}\r
"$(ASLDLINK)" -o $(OUTPUT_DIR)(+)${s_dir}(+)${s_base}.dll $(ASLDLINK_FLAGS) $(OUTPUT_DIR)(+)${s_dir}(+)${s_base}.obj\r
"$(GENFW)" -o ${dst} -c $(OUTPUT_DIR)(+)${s_dir}(+)${s_base}.dll $(GENFW_FLAGS)\r
\r
<Command.XCODE> \r
"$(ASLCC)" -o $(OUTPUT_DIR)(+)${s_dir}(+)${s_base}.obj $(ASLCC_FLAGS) $(INC) ${src}\r
"$(ASLDLINK)" -o $(OUTPUT_DIR)(+)${s_dir}(+)${s_base}.dll $(ASLDLINK_FLAGS) $(OUTPUT_DIR)(+)${s_dir}(+)${s_base}.obj\r
- "$(MTOC)" -subsystem $(MODULE_TYPE) $(MTOC_FLAGS) $(OUTPUT_DIR)(+)${s_dir}(+)${s_base}.dll $(OUTPUT_DIR)(+)${s_dir}(+)${s_base}.efi\r
- "$(GENFW)" -o ${dst} -c $(OUTPUT_DIR)(+)${s_dir}(+)${s_base}.efi $(GENFW_FLAGS)\r
+ "$(MTOC)" -subsystem $(MODULE_TYPE) $(MTOC_FLAGS) $(OUTPUT_DIR)(+)${s_dir}(+)${s_base}.dll $(OUTPUT_DIR)(+)${s_dir}(+)${s_base}.pecoff\r
+ "$(GENFW)" -o ${dst} -c $(OUTPUT_DIR)(+)${s_dir}(+)${s_base}.pecoff $(GENFW_FLAGS)\r
\r
\r
[Masm16-Code-File]\r
\r
<Command>\r
\r
+[Image-Definition-File]\r
+ <InputFile>\r
+ *.idf, *.Idf, *.IDF\r
+\r
+ <OutputFile>\r
+ $(DEBUG_DIR)(+)AutoGen.c\r
+ $(DEBUG_DIR)(+)$(MODULE_NAME)ImgDefs.h\r
+ $(OUTPUT_DIR)(+)$(MODULE_NAME)Idf.hpk\r
+\r
+ <Command>\r
+\r
[Efi-Image.UEFI_OPTIONROM]\r
<InputFile>\r
?.efi, ?.EFI, ?.Efi\r
\r
<Command>\r
\r
+[Image-Definition-File.UEFI_HII]\r
+ <InputFile>\r
+ *.idf, *.Idf, *.IDF\r
+\r
+ <OutputFile>\r
+ $(DEBUG_DIR)(+)$(MODULE_NAME)ImgDefs.h\r
+ $(OUTPUT_DIR)(+)$(MODULE_NAME)Idf.hpk\r
+\r
+ <Command>\r
+\r
[Visual-Form-Representation-File.UEFI_HII]\r
<InputFile>\r
?.vfr\r