summaryrefslogtreecommitdiff
path: root/scripts/build/companion_libs/200-libelf.sh
diff options
context:
space:
mode:
authorYann Diorcet <diorcet.yann@gmail.com>2012-11-16 14:25:57 (GMT)
committerYann Diorcet <diorcet.yann@gmail.com>2012-11-16 14:25:57 (GMT)
commitb43fdf40f1f90c4c313dda5b74955cc725a88b40 (patch)
tree70c65d158f49bc2c50fdbc3e4a61a7f62cbe747b /scripts/build/companion_libs/200-libelf.sh
parent1af4a119d20cd1f806262f5a951ba0a356da3d8a (diff)
scripts: add BUILD/HOST extra cflags/ldflags
On some hosts, and for certain toolchains (eg. toolchain targetting the upcoming Darwin), it may be necessary to pass arbitrary CFLAGS and/or LDFLAGS when building the components. And necessary infrastructure: - EXTRA_{CFLAGS,LDFLAGS}_FOR_{BUILD,HOST} as config options - pass those extra flags to components Fix-up a slight typo in elf2flt at the same time (misnamed cflags). Signed-off-by: Yann Diorcet <diorcet.yann@gmail.com> Message-Id: <d24043276c9243a35421.1353077450@macbook-smorlat.local> Patchwork-Id: 199645
Diffstat (limited to 'scripts/build/companion_libs/200-libelf.sh')
-rw-r--r--scripts/build/companion_libs/200-libelf.sh8
1 files changed, 7 insertions, 1 deletions
diff --git a/scripts/build/companion_libs/200-libelf.sh b/scripts/build/companion_libs/200-libelf.sh
index e7b140b..e404897 100644
--- a/scripts/build/companion_libs/200-libelf.sh
+++ b/scripts/build/companion_libs/200-libelf.sh
@@ -38,6 +38,8 @@ do_libelf_for_build() {
libelf_opts+=( "host=${CT_BUILD}" )
libelf_opts+=( "prefix=${CT_BUILDTOOLS_PREFIX_DIR}" )
+ libelf_opts+=( "cflags=${CT_CFLAGS_FOR_BUILD}" )
+ libelf_opts+=( "ldflags=${CT_LDFLAGS_FOR_BUILD}" )
do_libelf_backend "${libelf_opts[@]}"
CT_Popd
@@ -54,6 +56,7 @@ do_libelf_for_host() {
libelf_opts+=( "host=${CT_HOST}" )
libelf_opts+=( "prefix=${CT_HOST_COMPLIBS_DIR}" )
libelf_opts+=( "cflags=${CT_CFLAGS_FOR_HOST}" )
+ libelf_opts+=( "ldflags=${CT_LDFLAGS_FOR_HOST}" )
do_libelf_backend "${libelf_opts[@]}"
CT_Popd
@@ -87,13 +90,15 @@ fi # CT_LIBELF_TARGET
# destdir : out-of-tree install dir : string : /
# host : machine to run on : tuple : (none)
# prefix : prefix to install into : dir : (none)
-# cflags : host cflags to use : string : (empty)
+# cflags : cflags to use : string : (empty)
+# ldflags : ldflags to use : string : (empty)
# shared : also buils shared lib : bool : n
do_libelf_backend() {
local destdir="/"
local host
local prefix
local cflags
+ local ldflags
local shared
local -a extra_config
local arg
@@ -114,6 +119,7 @@ do_libelf_backend() {
CC="${host}-gcc" \
RANLIB="${host}-ranlib" \
CFLAGS="${cflags} -fPIC" \
+ LDFLAGS="${ldflags}" \
"${CT_SRC_DIR}/libelf-${CT_LIBELF_VERSION}/configure" \
--build=${CT_BUILD} \
--host=${host} \