Kbuild: Support toolchain auxiliary libraries per variant

This allows a toolchain to define the auxiliary libraries in
scripts/Makefile.toolchain.{variant} with more flexibility.

Change-Id: Iaae9c7613ddcbcc8376b7e756aa4b675db680737
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
This commit is contained in:
Anas Nashif 2015-05-17 08:55:21 -04:00
commit 369cf08e29
4 changed files with 13 additions and 4 deletions

View file

@ -903,8 +903,11 @@ export KBUILD_ALLDIRS := $(sort $(filter-out arch/%,$(tinymountain-alldirs)) arc
tinymountain-deps := $(KBUILD_LDS) $(KBUILD_TIMO_INIT) $(KBUILD_TIMO_MAIN)
ALL_LIBS += $(TOOLCHAIN_LIBS)
export ALL_LIBS
# Final link of tinymountain
cmd_link-tinymountain = $(CONFIG_SHELL) $< $(LD) $(LDFLAGS) $(LDFLAGS_tinymountain) $(LIB_INCLUDE_DIR)
cmd_link-tinymountain = $(CONFIG_SHELL) $< $(LD) $(LDFLAGS) $(LDFLAGS_tinymountain) $(LIB_INCLUDE_DIR) $(ALL_LIBS)
quiet_cmd_link-tinymountain = LINK $@
# Include targets which we want to

View file

@ -13,4 +13,6 @@ CROSS_COMPILE_x86=${XTOOLS_TOOLCHAIN_PATH}/${CROSS_COMPILE_TARGET_x86}/bin/${CRO
CROSS_COMPILE= $(CROSS_COMPILE_$(ARCH))
export CROSS_COMPILE
TOOLCHAIN_LIBS = gcc
export CROSS_COMPILE TOOLCHAIN_LIBS

View file

@ -29,4 +29,6 @@ LIB_INCLUDE_DIR_arc = -L ${YOCTO_SDK_INSTALL_DIR}/sysroots/arc-poky-elf/usr/lib/
CROSS_COMPILE= $(CROSS_COMPILE_$(ARCH))
LIB_INCLUDE_DIR = $(LIB_INCLUDE_DIR_$(ARCH))
export LIB_INCLUDE_DIR CROSS_COMPILE
TOOLCHAIN_LIBS = gcc
export LIB_INCLUDE_DIR CROSS_COMPILE TOOLCHAIN_LIBS

View file

@ -42,13 +42,15 @@ info()
# {2} symbol map file
linker_params()
{
LIBS=""
for tcl in ${ALL_LIBS}; do LIBS="${LIBS} -l${tcl}"; done
echo "${LDFLAGS_tinymountain}" > ${1}
echo "-Wl,-Map,./${2}" >> ${1}
echo "-L ${objtree}/include/generated" >> ${1}
echo "-u _OffsetAbsSyms -u _ConfigAbsSyms" >> ${1}
echo "-Wl,--start-group ${KBUILD_TIMO_MAIN}" >> ${1}
echo "${LIB_INCLUDE_DIR} ${LDLIBS_TOOLCHAIN}" >> ${1}
echo "${objtree}/include/generated/offsets.o" >> ${1}
echo "${LIB_INCLUDE_DIR} ${LIBS}" >> ${1}
}
#Creates linker command file