mirror of https://github.com/ARMmbed/mbed-os.git
				
				
				
			Merge pull request #3061 from theotherjimmy/makefile-lib-fix
Exporters: Use correct names for library files in makefile exporterpull/3089/head
						commit
						9fce16dddf
					
				| 
						 | 
					@ -53,8 +53,8 @@ PROJECT := {{name}}
 | 
				
			||||||
{% endfor %}
 | 
					{% endfor %}
 | 
				
			||||||
{% for path in include_paths %}INCLUDE_PATHS += -I{{path}}
 | 
					{% for path in include_paths %}INCLUDE_PATHS += -I{{path}}
 | 
				
			||||||
{% endfor %}
 | 
					{% endfor %}
 | 
				
			||||||
LIBRARY_PATHS :={% for p in library_paths %} -L{{p}} {% endfor %}
 | 
					LIBRARY_PATHS :={% for p in library_paths %} {{user_library_flag}}{{p}} {% endfor %}
 | 
				
			||||||
LIBRARIES :={% for lib in libraries %} -l{{lib}} {% endfor %}
 | 
					LIBRARIES :={% for lib in libraries %} {{lib}} {% endfor %}
 | 
				
			||||||
LINKER_SCRIPT := {{linker_script}}
 | 
					LINKER_SCRIPT := {{linker_script}}
 | 
				
			||||||
{%- block additional_variables -%}{% endblock %}
 | 
					{%- block additional_variables -%}{% endblock %}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -44,7 +44,8 @@ class Makefile(Exporter):
 | 
				
			||||||
                          self.resources.c_sources +
 | 
					                          self.resources.c_sources +
 | 
				
			||||||
                          self.resources.cpp_sources]
 | 
					                          self.resources.cpp_sources]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        libraries = [splitext(lib)[0][3:] for lib in self.resources.libraries]
 | 
					        libraries = [self.prepare_lib(basename(lib)) for lib
 | 
				
			||||||
 | 
					                     in self.resources.libraries]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        ctx = {
 | 
					        ctx = {
 | 
				
			||||||
            'name': self.project_name,
 | 
					            'name': self.project_name,
 | 
				
			||||||
| 
						 | 
					@ -70,6 +71,7 @@ class Makefile(Exporter):
 | 
				
			||||||
            'elf2bin_cmd': "\'" + self.toolchain.elf2bin + "\'",
 | 
					            'elf2bin_cmd': "\'" + self.toolchain.elf2bin + "\'",
 | 
				
			||||||
            'link_script_ext': self.toolchain.LINKER_EXT,
 | 
					            'link_script_ext': self.toolchain.LINKER_EXT,
 | 
				
			||||||
            'link_script_option': self.LINK_SCRIPT_OPTION,
 | 
					            'link_script_option': self.LINK_SCRIPT_OPTION,
 | 
				
			||||||
 | 
					            'user_library_flag': self.USER_LIBRARY_FLAG,
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        for key in ['include_paths', 'library_paths', 'linker_script',
 | 
					        for key in ['include_paths', 'library_paths', 'linker_script',
 | 
				
			||||||
| 
						 | 
					@ -108,6 +110,11 @@ class GccArm(Makefile):
 | 
				
			||||||
    NAME = 'Make-GCC-ARM'
 | 
					    NAME = 'Make-GCC-ARM'
 | 
				
			||||||
    TOOLCHAIN = "GCC_ARM"
 | 
					    TOOLCHAIN = "GCC_ARM"
 | 
				
			||||||
    LINK_SCRIPT_OPTION = "-T"
 | 
					    LINK_SCRIPT_OPTION = "-T"
 | 
				
			||||||
 | 
					    USER_LIBRARY_FLAG = "-L"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @staticmethod
 | 
				
			||||||
 | 
					    def prepare_lib(libname):
 | 
				
			||||||
 | 
					        return "-l:" + libname
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
class Armc5(Makefile):
 | 
					class Armc5(Makefile):
 | 
				
			||||||
| 
						 | 
					@ -117,6 +124,11 @@ class Armc5(Makefile):
 | 
				
			||||||
    NAME = 'Make-ARMc5'
 | 
					    NAME = 'Make-ARMc5'
 | 
				
			||||||
    TOOLCHAIN = "ARM"
 | 
					    TOOLCHAIN = "ARM"
 | 
				
			||||||
    LINK_SCRIPT_OPTION = "--scatter"
 | 
					    LINK_SCRIPT_OPTION = "--scatter"
 | 
				
			||||||
 | 
					    USER_LIBRARY_FLAG = "--userlibpath "
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @staticmethod
 | 
				
			||||||
 | 
					    def prepare_lib(libname):
 | 
				
			||||||
 | 
					        return libname
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
class IAR(Makefile):
 | 
					class IAR(Makefile):
 | 
				
			||||||
| 
						 | 
					@ -126,3 +138,10 @@ class IAR(Makefile):
 | 
				
			||||||
    NAME = 'Make-IAR'
 | 
					    NAME = 'Make-IAR'
 | 
				
			||||||
    TOOLCHAIN = "IAR"
 | 
					    TOOLCHAIN = "IAR"
 | 
				
			||||||
    LINK_SCRIPT_OPTION = "--config"
 | 
					    LINK_SCRIPT_OPTION = "--config"
 | 
				
			||||||
 | 
					    USER_LIBRARY_FLAG = "-L"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @staticmethod
 | 
				
			||||||
 | 
					    def prepare_lib(libname):
 | 
				
			||||||
 | 
					        if "lib" == libname[:3]:
 | 
				
			||||||
 | 
					            libname = libname[3:]
 | 
				
			||||||
 | 
					        return "-l" + splitext(libname)[0]
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in New Issue