Implement Linker command/response files in make export

pull/9596/head
Jimmy Brisson 2018-07-23 10:43:45 -05:00 committed by Volodymyr Medvid
parent a12ab30f98
commit a8a21d30a1
2 changed files with 6 additions and 1 deletions

View File

@ -135,8 +135,9 @@ $(PROJECT).link_script{{link_script_ext}}: $(LINKER_SCRIPT)
{% block target_project_elf %}
$(PROJECT).elf: $(OBJECTS) $(SYS_OBJECTS) {% if pp_cmd -%} $(PROJECT).link_script{{link_script_ext}} {% else%} $(LINKER_SCRIPT) {% endif %}
$(file > $@.in, $(filter %.o, $^))
+@echo "link: $(notdir $@)"
@$(LD) $(LD_FLAGS) {{link_script_option}} $(filter-out %.o, $^) $(LIBRARY_PATHS) --output $@ $(filter %.o, $^) $(LIBRARIES) $(LD_SYS_LIBS)
@$(LD) $(LD_FLAGS) {{link_script_option}} $(filter-out %.o, $^) $(LIBRARY_PATHS) --output $@ {{response_option}}$@.in $(LIBRARIES) $(LD_SYS_LIBS)
{% endblock %}
$(PROJECT).bin: $(PROJECT).elf

View File

@ -113,6 +113,7 @@ class Makefile(Exporter):
'user_library_flag': self.USER_LIBRARY_FLAG,
'needs_asm_preproc': self.PREPROCESS_ASM,
'shell_escape': shell_escape,
'response_option': self.RESPONSE_OPTION,
}
if hasattr(self.toolchain, "preproc"):
@ -233,6 +234,7 @@ class GccArm(Makefile):
TOOLCHAIN = "GCC_ARM"
LINK_SCRIPT_OPTION = "-T"
USER_LIBRARY_FLAG = "-L"
RESPONSE_OPTION = "@"
@staticmethod
def prepare_lib(libname):
@ -250,6 +252,7 @@ class Arm(Makefile):
LINK_SCRIPT_OPTION = "--scatter"
USER_LIBRARY_FLAG = "--userlibpath "
TEMPLATE = 'make-arm'
RESPONSE_OPTION = "--via "
@staticmethod
def prepare_lib(libname):
@ -289,6 +292,7 @@ class IAR(Makefile):
TOOLCHAIN = "IAR"
LINK_SCRIPT_OPTION = "--config"
USER_LIBRARY_FLAG = "-L"
RESPONSE_OPTION = "-f "
@staticmethod
def prepare_lib(libname):