summaryrefslogtreecommitdiff
path: root/scripts/build
diff options
context:
space:
mode:
authorAlexey Neyman <stilor@att.net>2017-10-01 01:47:35 (GMT)
committerAlexey Neyman <stilor@att.net>2017-10-01 01:47:35 (GMT)
commitca45a8f9abd672189dbef5bcb242ac465df7b0f6 (patch)
treebf0c6d296987c2e21b9ca77e1532c9fb8c5bdb96 /scripts/build
parent4c321260b2a144bf143d44bb1e1c01238bdc2a9e (diff)
Add -D__GLIBC__ to target CFLAGS
... when using musl to compile strace. Also, honor CT_TARGET_CFLAGS in scripts compiling target libs/binaries. Signed-off-by: Alexey Neyman <stilor@att.net>
Diffstat (limited to 'scripts/build')
-rw-r--r--scripts/build/companion_libs/200-libelf.sh1
-rw-r--r--scripts/build/companion_libs/210-expat.sh1
-rw-r--r--scripts/build/companion_libs/220-ncurses.sh1
-rw-r--r--scripts/build/debug/200-duma.sh4
-rw-r--r--scripts/build/debug/300-gdb.sh33
-rw-r--r--scripts/build/debug/500-strace.sh21
6 files changed, 44 insertions, 17 deletions
diff --git a/scripts/build/companion_libs/200-libelf.sh b/scripts/build/companion_libs/200-libelf.sh
index d1ac0b4..5f1a8d7 100644
--- a/scripts/build/companion_libs/200-libelf.sh
+++ b/scripts/build/companion_libs/200-libelf.sh
@@ -81,6 +81,7 @@ do_libelf_for_target() {
libelf_opts+=( "destdir=${CT_SYSROOT_DIR}" )
libelf_opts+=( "host=${CT_TARGET}" )
+ libelf_opts+=( "cflags=${CT_TARGET_CFLAGS}" )
libelf_opts+=( "prefix=${prefix}" )
libelf_opts+=( "shared=${CT_SHARED_LIBS}" )
do_libelf_backend "${libelf_opts[@]}"
diff --git a/scripts/build/companion_libs/210-expat.sh b/scripts/build/companion_libs/210-expat.sh
index 36399b5..f848541 100644
--- a/scripts/build/companion_libs/210-expat.sh
+++ b/scripts/build/companion_libs/210-expat.sh
@@ -54,6 +54,7 @@ do_expat_for_target() {
prefix="/usr"
;;
esac
+ expat_opts+=( "cflags=${CT_TARGET_CFLAGS}" )
expat_opts+=( "prefix=${prefix}" )
expat_opts+=( "destdir=${CT_SYSROOT_DIR}" )
expat_opts+=( "shared=${CT_SHARED_LIBS}" )
diff --git a/scripts/build/companion_libs/220-ncurses.sh b/scripts/build/companion_libs/220-ncurses.sh
index 815cf4b..a32df42 100644
--- a/scripts/build/companion_libs/220-ncurses.sh
+++ b/scripts/build/companion_libs/220-ncurses.sh
@@ -96,6 +96,7 @@ do_ncurses_for_target() {
prefix="${prefix}" \
destdir="${CT_SYSROOT_DIR}" \
shared="${CT_SHARED_LIBS}" \
+ cflags="${CT_TARGET_CFLAGS}" \
"${opts[@]}"
CT_Popd
CT_EndStep
diff --git a/scripts/build/debug/200-duma.sh b/scripts/build/debug/200-duma.sh
index bd35030..0d98c38 100644
--- a/scripts/build/debug/200-duma.sh
+++ b/scripts/build/debug/200-duma.sh
@@ -19,8 +19,8 @@ do_debug_duma_build() {
make_args=(
prefix="${CT_DEBUGROOT_DIR}/usr"
HOSTCC="${CT_BUILD}-gcc"
- CC="${CT_TARGET}-${CT_CC}"
- CXX="${CT_TARGET}-g++"
+ CC="${CT_TARGET}-${CT_CC} ${CT_TARGET_CFLAGS}"
+ CXX="${CT_TARGET}-g++ ${CT_TARGET_CFLAGS}"
RANLIB="${CT_TARGET}-ranlib"
OS="${CT_KERNEL}"
)
diff --git a/scripts/build/debug/300-gdb.sh b/scripts/build/debug/300-gdb.sh
index e3a40d0..11378ec 100644
--- a/scripts/build/debug/300-gdb.sh
+++ b/scripts/build/debug/300-gdb.sh
@@ -13,11 +13,6 @@ do_debug_gdb_build() {
gdb_src_dir="${CT_SRC_DIR}/gdb"
- # Version 6.3 and below behave badly with gdbmi
- case "${CT_GDB_VERSION}" in
- 6.2*|6.3) extra_config+=("--disable-gdbmi");;
- esac
-
if [ "${CT_GDB_HAS_PKGVERSION_BUGURL}" = "y" ]; then
[ -n "${CT_PKGVERSION}" ] && extra_config+=("--with-pkgversion=${CT_PKGVERSION}")
[ -n "${CT_TOOLCHAIN_BUGURL}" ] && extra_config+=("--with-bugurl=${CT_TOOLCHAIN_BUGURL}")
@@ -219,15 +214,19 @@ do_debug_gdb_build() {
[ "${CT_TOOLCHAIN_ENABLE_NLS}" != "y" ] && \
native_extra_config+=("--disable-nls")
- CPP_for_gdb="${CT_TARGET}-cpp"
- CC_for_gdb="${CT_TARGET}-${CT_CC}"
- CXX_for_gdb="${CT_TARGET}-g++"
- LD_for_gdb="${CT_TARGET}-ld"
+ CPP_for_gdb="${CT_TARGET}-cpp ${CT_TARGET_CFLAGS}"
+ CC_for_gdb="${CT_TARGET}-${CT_CC} ${CT_TARGET_CFLAGS} ${CT_TARGET_LDFLAGS}"
+ CXX_for_gdb="${CT_TARGET}-g++ ${CT_TARGET_CFLAGS} ${CT_TARGET_LDFLAGS}"
+ LD_for_gdb="${CT_TARGET}-ld ${CT_TARGET_LDFLAGS}"
if [ "${CT_GDB_NATIVE_STATIC}" = "y" ]; then
CC_for_gdb+=" -static"
CXX_for_gdb+=" -static"
LD_for_gdb+=" -static"
fi
+ CPP_for_gdb=`echo $CPP_for_gdb`
+ CC_for_gdb=`echo $CC_for_gdb`
+ CXX_for_gdb=`echo $CXX_for_gdb`
+ LD_for_gdb=`echo $LD_for_gdb`
export ac_cv_func_strncmp_works=yes
@@ -321,13 +320,23 @@ do_debug_gdb_build() {
gdbserver_extra_config+=("--disable-ld")
gdbserver_extra_config+=("--disable-gas")
+ CPP_for_gdb="${CT_TARGET}-cpp ${CT_TARGET_CFLAGS}"
+ CC_for_gdb="${CT_TARGET}-${CT_CC} ${CT_TARGET_CFLAGS} ${CT_TARGET_LDFLAGS}"
+ CXX_for_gdb="${CT_TARGET}-g++ ${CT_TARGET_CFLAGS} ${CT_TARGET_LDFLAGS}"
+ LD_for_gdb="${CT_TARGET}-ld ${CT_TARGET_LDFLAGS}"
+ CPP_for_gdb=`echo $CPP_for_gdb`
+ CC_for_gdb=`echo $CC_for_gdb`
+ CXX_for_gdb=`echo $CXX_for_gdb`
+ LD_for_gdb=`echo $LD_for_gdb`
+
CT_DoExecLog CFG \
CC_FOR_BUILD="${CT_BUILD}-gcc" \
CFLAGS_FOR_BUILD="${CT_CFLAGS_FOR_BUILD}" \
LDFLAGS_FOR_BUILD="${CT_LDFLAGS_FOR_BUILD}" \
- CC="${CT_TARGET}-${CT_CC}" \
- CPP="${CT_TARGET}-cpp" \
- LD="${CT_TARGET}-ld" \
+ CPP="${CPP_for_gdb}" \
+ CC="${CC_for_gdb}" \
+ CXX="${CXX_for_gdb}" \
+ LD="${LD_for_gdb}" \
LDFLAGS="${gdbserver_LDFLAGS}" \
${CONFIG_SHELL} \
"${gdb_src_dir}/gdb/gdbserver/configure" \
diff --git a/scripts/build/debug/500-strace.sh b/scripts/build/debug/500-strace.sh
index cb4643a..305a76c 100644
--- a/scripts/build/debug/500-strace.sh
+++ b/scripts/build/debug/500-strace.sh
@@ -1,21 +1,36 @@
# Build script for strace
-do_debug_strace_get() {
+do_debug_strace_get()
+{
CT_Fetch STRACE
}
-do_debug_strace_extract() {
+do_debug_strace_extract()
+{
CT_ExtractPatch STRACE
}
-do_debug_strace_build() {
+do_debug_strace_build()
+{
+ local cflags="${CT_TARGET_CFLAGS}"
+
CT_DoStep INFO "Installing strace"
+ if [ "${CT_LIBC_MUSL}" = "y" ]; then
+ # Otherwise kernel headers cause errors when included, e.g.
+ # <netinet/in.h> and <linux/in6.h>. Kernel's libc-compat.h
+ # only cares about GLIBC. uClibc-ng does the same
+ # internally, pretending it's GLIBC for kernel headers inclusion.
+ cflags+=" -D__GLIBC__"
+ fi
+
CT_mkdir_pushd "${CT_BUILD_DIR}/build-strace"
CT_DoLog EXTRA "Configuring strace"
CT_DoExecLog CFG \
CC="${CT_TARGET}-${CT_CC}" \
+ CFLAGS="${cflags}" \
+ LDFLAGS="${CT_TARGET_LDFLAGS}" \
CPP="${CT_TARGET}-cpp" \
LD="${CT_TARGET}-ld" \
${CONFIG_SHELL} \