Enable building expat/ncurses for host.

Then re-enable cross-gdb for nios2-spico-elf sample, previously
disabled.
This commit is contained in:
Alexey Neyman 2015-11-09 16:08:28 -08:00
parent 6102726147
commit 4d2d2ba954
5 changed files with 56 additions and 3 deletions

View File

@ -8,6 +8,8 @@ config GDB_CROSS
prompt "Cross-gdb"
default y
select GDB_GDBSERVER if ! BARE_METAL
select EXPAT_NEEDED
select NCURSES_NEEDED
help
Build and install a cross-gdb for the target, to run on host.

View File

@ -12,7 +12,6 @@ CT_HOST="i686-w64-mingw32"
CT_BINUTILS_V_2_25=y
CT_CC_LANG_CXX=y
CT_DEBUG_gdb=y
# CT_GDB_CROSS is not set
CT_MPFR_V_3_1_2=y
CT_ISL_V_0_12_2=y
CT_MPC_V_1_0_2=y

View File

@ -18,6 +18,21 @@ do_expat_extract() {
CT_Patch "expat" "${CT_EXPAT_VERSION}"
}
if [ "${CT_EXPAT}" = "y" ]; then
# Do not need expat for build at this time.
do_expat_for_host() {
CT_DoStep INFO "Installing expat for host"
CT_mkdir_pushd "${CT_BUILD_DIR}/build-expat-host-${CT_HOST}"
do_expat_backend host="${CT_HOST}" \
prefix="${CT_HOST_COMPLIBS_DIR}"
CT_Popd
CT_EndStep
}
fi
if [ "${CT_EXPAT_TARGET}" = "y" ]; then
do_expat_for_target() {
CT_DoStep INFO "Installing expat for target"

View File

@ -23,6 +23,7 @@ do_ncurses_extract() {
# We need tic that runs on the build when building ncurses for host/target
do_ncurses_for_build() {
local -a opts
CT_DoStep INFO "Installing ncurses for build"
CT_mkdir_pushd "${CT_BUILD_DIR}/build-ncurses-build-${CT_BUILD}"
opts=("--enable-symlinks" \
@ -38,6 +39,33 @@ do_ncurses_for_build() {
CT_EndStep
}
if [ "${CT_NCURSES}" = "y" ]; then
do_ncurses_for_host() {
local -a opts
# Unlike other companion libs, we skip host build if build==host
# (i.e. in simple cross or native): ncurses may not be needed for
# host, but we still need them on build to produce 'tic'.
case "${CT_TOOLCHAIN_TYPE}" in
native|cross) return 0;;
esac
CT_DoStep INFO "Installing ncurses for host"
CT_mkdir_pushd "${CT_BUILD_DIR}/build-ncurses-host-${CT_HOST}"
opts=("--enable-symlinks" \
"--without-manpages" \
"--without-tests" \
"--without-cxx" \
"--without-cxx-binding" \
"--without-ada")
do_ncurses_backend host="${CT_HOST}" \
prefix="${CT_HOST_COMPLIBS_DIR}" \
"${opts[@]}"
CT_Popd
CT_EndStep
}
fi
if [ "${CT_NCURSES_TARGET}" = "y" ]; then
do_ncurses_for_target() {
CT_DoStep INFO "Installing ncurses for target"
@ -81,6 +109,15 @@ do_ncurses_backend() {
esac
done
case "$host" in
*-*-mingw*)
# Needed to build for mingw, see
# http://lists.gnu.org/archive/html/info-gnu/2011-02/msg00020.html
ncurses_opts+=("--enable-term-driver")
ncurses_opts+=("--enable-sp-funcs")
;;
esac
CT_DoLog EXTRA "Configuring ncurses"
CT_DoExecLog CFG \
"${CT_SRC_DIR}/ncurses-${CT_NCURSES_VERSION}/configure" \

View File

@ -96,8 +96,8 @@ do_debug_gdb_build() {
cd "${CT_BUILD_DIR}/build-gdb-cross"
cross_extra_config=("${extra_config[@]}")
cross_extra_config+=("--enable-expat")
cross_extra_config+=("--with-expat=yes")
cross_extra_config+=("--with-expat")
cross_extra_config+=("--with-libexpat-prefix=${CT_HOST_COMPLIBS_DIR}")
case "${CT_THREADS}" in
none) cross_extra_config+=("--disable-threads");;
*) cross_extra_config+=("--enable-threads");;