summaryrefslogtreecommitdiff
path: root/BaseTools/Conf/build_rule.template
diff options
context:
space:
mode:
authorArd Biesheuvel <ard.biesheuvel@linaro.org>2016-01-11 08:50:39 +0000
committerHao Wu <hao.a.wu@intel.com>2016-02-24 15:29:37 +0800
commit3c250f53fb2cc67e71341cfd6017b97cdfb12bd5 (patch)
treef5b2e5a705226057aa94bd700d61a5efb3c23c1f /BaseTools/Conf/build_rule.template
parent425af91dc6963a04d87bbeea3b59ea42527bbdf5 (diff)
downloadedk2-platforms-3c250f53fb2cc67e71341cfd6017b97cdfb12bd5.tar.xz
BaseTools AARCH64: add separate GCC build rule for XIP objects
This introduces a special .c to .obj build rule for GCC/AARCH64 that takes into account additional compiler flags that have been specified via *_*_*_CC_XIPFLAGS. These will be passed after (and in addition to) the ordinary CC_FLAGS. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> Reviewed-by: Liming Gao <liming.gao@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@19637 6f19259b-4bc3-4df7-8a09-765794883524 (cherry picked from commit 3a02a87f9f4dd5ba6741e64e20e5ab67fe4f303b)
Diffstat (limited to 'BaseTools/Conf/build_rule.template')
-rw-r--r--BaseTools/Conf/build_rule.template13
1 files changed, 13 insertions, 0 deletions
diff --git a/BaseTools/Conf/build_rule.template b/BaseTools/Conf/build_rule.template
index 3637ef4741..91bcc1828c 100644
--- a/BaseTools/Conf/build_rule.template
+++ b/BaseTools/Conf/build_rule.template
@@ -161,6 +161,19 @@
"$(CC)" $(CC_FLAGS) -o ${dst} $(INC) ${src}
"$(SYMRENAME)" $(SYMRENAME_FLAGS) ${dst}
+[C-Code-File.BASE.AARCH64,C-Code-File.SEC.AARCH64,C-Code-File.PEI_CORE.AARCH64,C-Code-File.PEIM.AARCH64]
+ <InputFile>
+ ?.c
+
+ <ExtraDependency>
+ $(MAKE_FILE)
+
+ <OutputFile>
+ $(OUTPUT_DIR)(+)${s_dir}(+)${s_base}.obj
+
+ <Command.GCC>
+ "$(CC)" $(CC_FLAGS) $(CC_XIPFLAGS) -o ${dst} $(INC) ${src}
+
[C-Header-File]
<InputFile>
*.h, *.H