summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--config/binutils/binutils.in.23
-rw-r--r--config/libc.in4
-rw-r--r--config/libc/mingw.in8
-rw-r--r--config/libc/uClibc.in.26
-rw-r--r--configure.ac3
-rw-r--r--patches/strace/4.15/020-use-asm-sgidefs.h.patch67
-rw-r--r--patches/uClibc-ng/1.0.20/110-has-lfs.patch31
-rw-r--r--patches/uClibc-ng/1.0.21/110-has-lfs.patch31
-rw-r--r--scripts/build/companion_tools/050-make.sh4
-rw-r--r--scripts/build/companion_tools/100-m4.sh4
-rw-r--r--scripts/build/companion_tools/200-autoconf.sh4
-rw-r--r--scripts/build/companion_tools/300-automake.sh4
-rw-r--r--scripts/build/companion_tools/400-libtool.sh4
-rw-r--r--scripts/build/libc/mingw.sh30
-rw-r--r--scripts/build/libc/uClibc.sh7
15 files changed, 197 insertions, 13 deletions
diff --git a/config/binutils/binutils.in.2 b/config/binutils/binutils.in.2
index 336098b..7a1291f 100644
--- a/config/binutils/binutils.in.2
+++ b/config/binutils/binutils.in.2
@@ -11,13 +11,14 @@ choice
config ELF2FLT_GIT
bool
prompt "git"
+ depends on CONFIGURE_has_git
help
Grab the latest version of elf2flt from the CVS repository
config ELF2FLT_CUSTOM
bool
prompt "Custom elf2flt"
- depends on EXPERIMENTAL
+ depends on EXPERIMENTAL || !CONFIGURE_has_git
help
The choosen elf2flt version shall be not downloaded. Instead use
a custom location to get the source.
diff --git a/config/libc.in b/config/libc.in
index e1eabd2..cd3ccec 100644
--- a/config/libc.in
+++ b/config/libc.in
@@ -55,8 +55,8 @@ choice
bool
prompt "Threading implementation to use:"
default THREADS_NATIVE if LIBC_SUPPORT_THREADS_NATIVE
- default THREADS_THREADS_LT if LIBC_SUPPORT_THREADS_LT
- default THREADS_THREADS_POSIX if LIBC_SUPPORT_THREADS_POSIX
+ default THREADS_LT if LIBC_SUPPORT_THREADS_LT
+ default THREADS_POSIX if LIBC_SUPPORT_THREADS_POSIX
default THREADS_NONE
config THREADS_NATIVE
diff --git a/config/libc/mingw.in b/config/libc/mingw.in
index 6c33d2f..62e7a46 100644
--- a/config/libc/mingw.in
+++ b/config/libc/mingw.in
@@ -74,6 +74,7 @@ config WINAPI_V_DEVEL
bool
prompt "devel"
depends on EXPERIMENTAL
+ depends on CONFIGURE_has_git
endchoice
@@ -103,3 +104,10 @@ config MINGW_DIRECTX
config MINGW_DDK
bool
prompt "Include DDK development files"
+
+config MINGW_TOOLS
+ bool
+ prompt "Include the companion tools"
+ help
+ build the companion tools with mingw such as widl, gendef,
+ and genpeimg
diff --git a/config/libc/uClibc.in.2 b/config/libc/uClibc.in.2
index dc02420..7ac8a44 100644
--- a/config/libc/uClibc.in.2
+++ b/config/libc/uClibc.in.2
@@ -89,3 +89,9 @@ config LIBC_UCLIBC_FENV
If you need fenv.h on other architectures, say 'y' here, but you may
encounter some issues.
+
+config LIBC_UCLIBC_RPC
+ bool
+ prompt "Add support for RPC"
+ help
+ Enable support for remote procedure calls (RPC) in uClibc.
diff --git a/configure.ac b/configure.ac
index 76f0d30..bb9fec5 100644
--- a/configure.ac
+++ b/configure.ac
@@ -342,6 +342,9 @@ ACX_SET_KCONFIG_OPTION([cvs])
AC_CHECK_PROGS([svn], [svn])
ACX_SET_KCONFIG_OPTION([svn])
+AC_CHECK_PROGS([git], [git])
+ACX_SET_KCONFIG_OPTION([git])
+
#--------------------------------------------------------------------
# Now, for some fun...
#--------------------------------------------------------------------
diff --git a/patches/strace/4.15/020-use-asm-sgidefs.h.patch b/patches/strace/4.15/020-use-asm-sgidefs.h.patch
new file mode 100644
index 0000000..06ae5a3
--- /dev/null
+++ b/patches/strace/4.15/020-use-asm-sgidefs.h.patch
@@ -0,0 +1,67 @@
+diff -urpN strace-4.15.orig/configure strace-4.15/configure
+--- strace-4.15.orig/configure 2016-12-14 01:17:44.000000000 -0800
++++ strace-4.15/configure 2017-01-19 22:32:20.167896014 -0800
+@@ -8775,7 +8775,7 @@ $as_echo_n "checking for _MIPS_SIM... "
+ if ${st_cv__MIPS_SIM+:} false; then :
+ $as_echo_n "(cached) " >&6
+ else
+- if ac_fn_c_compute_int "$LINENO" "_MIPS_SIM" "st_cv__MIPS_SIM" "#include <sgidefs.h>"; then :
++ if ac_fn_c_compute_int "$LINENO" "_MIPS_SIM" "st_cv__MIPS_SIM" "#include <asm/sgidefs.h>"; then :
+
+ else
+ as_fn_error $? "_MIPS_SIM cannot be determined" "$LINENO" 5
+@@ -8792,7 +8792,7 @@ if ${st_cv_mips_abi+:} false; then :
+ else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+ /* end confdefs.h. */
+-#include <sgidefs.h>
++#include <asm/sgidefs.h>
+ int
+ main ()
+ {
+@@ -8806,7 +8806,7 @@ if ac_fn_c_try_compile "$LINENO"; then :
+ else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+ /* end confdefs.h. */
+-#include <sgidefs.h>
++#include <asm/sgidefs.h>
+ int
+ main ()
+ {
+@@ -8820,7 +8820,7 @@ if ac_fn_c_try_compile "$LINENO"; then :
+ else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+ /* end confdefs.h. */
+-#include <sgidefs.h>
++#include <asm/sgidefs.h>
+ int
+ main ()
+ {
+diff -urpN strace-4.15.orig/configure.ac strace-4.15/configure.ac
+--- strace-4.15.orig/configure.ac 2016-12-07 02:59:52.000000000 -0800
++++ strace-4.15/configure.ac 2017-01-19 22:32:35.768433437 -0800
+@@ -212,20 +212,20 @@ MIPS_ABI=
+ if test "$arch" = mips; then
+ AC_CACHE_CHECK([for _MIPS_SIM], [st_cv__MIPS_SIM],
+ [AC_COMPUTE_INT([st_cv__MIPS_SIM], [_MIPS_SIM],
+- [#include <sgidefs.h>],
++ [#include <asm/sgidefs.h>],
+ [AC_MSG_ERROR([_MIPS_SIM cannot be determined])])])
+
+ AC_CACHE_CHECK([for MIPS ABI], [st_cv_mips_abi],
+ [AC_COMPILE_IFELSE(
+- [AC_LANG_PROGRAM([[#include <sgidefs.h>]],
++ [AC_LANG_PROGRAM([[#include <asm/sgidefs.h>]],
+ [[int i[_MIPS_SIM == _MIPS_SIM_ABI32 ? 1 : - 1];]])],
+ [st_cv_mips_abi=o32],
+ [AC_COMPILE_IFELSE(
+- [AC_LANG_PROGRAM([[#include <sgidefs.h>]],
++ [AC_LANG_PROGRAM([[#include <asm/sgidefs.h>]],
+ [[int i[_MIPS_SIM == _MIPS_SIM_NABI32 ? 1 : - 1];]])],
+ [st_cv_mips_abi=n32],
+ [AC_COMPILE_IFELSE(
+- [AC_LANG_PROGRAM([[#include <sgidefs.h>]],
++ [AC_LANG_PROGRAM([[#include <asm/sgidefs.h>]],
+ [[int i[_MIPS_SIM == _MIPS_SIM_ABI64 ? 1 : - 1];]])],
+ [st_cv_mips_abi=n64],
+ [st_cv_mips_abi=unknown])])])])
diff --git a/patches/uClibc-ng/1.0.20/110-has-lfs.patch b/patches/uClibc-ng/1.0.20/110-has-lfs.patch
new file mode 100644
index 0000000..c5b90de
--- /dev/null
+++ b/patches/uClibc-ng/1.0.20/110-has-lfs.patch
@@ -0,0 +1,31 @@
+From 2a40d18badc4f0bff8c2e02507cd8d59cfeb3e7c Mon Sep 17 00:00:00 2001
+From: Alexey Neyman <stilor@att.net>
+Date: Mon, 23 Jan 2017 14:21:54 -0800
+Subject: [PATCH] Restore UCLIBC_HAS_LFS as "always enabled".
+
+Otherwise, buildroot rejects uClibc-ng in an external toolchain.
+
+Signed-off-by: Alexey Neyman <stilor@att.net>
+---
+ extra/Configs/Config.in | 5 +++++
+ 1 file changed, 5 insertions(+)
+
+diff --git a/extra/Configs/Config.in b/extra/Configs/Config.in
+index a9d62f5..b2cf977 100644
+--- a/extra/Configs/Config.in
++++ b/extra/Configs/Config.in
+@@ -566,6 +566,11 @@ config UCLIBC_HAS_SYSLOG
+ Support sending messages to the system logger.
+ This requires socket-support.
+
++config UCLIBC_HAS_LFS
++ def_bool y
++ help
++ Large file support (always enabled; config symbol retained for
++ feature test to be compatible with uClibc).
+ choice
+ prompt "Malloc Implementation"
+ default MALLOC if ! ARCH_USE_MMU
+--
+2.9.3
+
diff --git a/patches/uClibc-ng/1.0.21/110-has-lfs.patch b/patches/uClibc-ng/1.0.21/110-has-lfs.patch
new file mode 100644
index 0000000..c5b90de
--- /dev/null
+++ b/patches/uClibc-ng/1.0.21/110-has-lfs.patch
@@ -0,0 +1,31 @@
+From 2a40d18badc4f0bff8c2e02507cd8d59cfeb3e7c Mon Sep 17 00:00:00 2001
+From: Alexey Neyman <stilor@att.net>
+Date: Mon, 23 Jan 2017 14:21:54 -0800
+Subject: [PATCH] Restore UCLIBC_HAS_LFS as "always enabled".
+
+Otherwise, buildroot rejects uClibc-ng in an external toolchain.
+
+Signed-off-by: Alexey Neyman <stilor@att.net>
+---
+ extra/Configs/Config.in | 5 +++++
+ 1 file changed, 5 insertions(+)
+
+diff --git a/extra/Configs/Config.in b/extra/Configs/Config.in
+index a9d62f5..b2cf977 100644
+--- a/extra/Configs/Config.in
++++ b/extra/Configs/Config.in
+@@ -566,6 +566,11 @@ config UCLIBC_HAS_SYSLOG
+ Support sending messages to the system logger.
+ This requires socket-support.
+
++config UCLIBC_HAS_LFS
++ def_bool y
++ help
++ Large file support (always enabled; config symbol retained for
++ feature test to be compatible with uClibc).
+ choice
+ prompt "Malloc Implementation"
+ default MALLOC if ! ARCH_USE_MMU
+--
+2.9.3
+
diff --git a/scripts/build/companion_tools/050-make.sh b/scripts/build/companion_tools/050-make.sh
index d8f6b66..60cfa04 100644
--- a/scripts/build/companion_tools/050-make.sh
+++ b/scripts/build/companion_tools/050-make.sh
@@ -12,7 +12,7 @@ do_companion_tools_make_extract() {
}
do_companion_tools_make_for_build() {
- CT_DoStep EXTRA "Installing make for build"
+ CT_DoStep INFO "Installing make for build"
CT_mkdir_pushd "${CT_BUILD_DIR}/build-make-build"
do_make_backend \
host=${CT_BUILD} \
@@ -27,7 +27,7 @@ do_companion_tools_make_for_build() {
}
do_companion_tools_make_for_host() {
- CT_DoStep EXTRA "Installing make for host"
+ CT_DoStep INFO "Installing make for host"
CT_mkdir_pushd "${CT_BUILD_DIR}/build-make-host"
do_make_backend \
host=${CT_HOST} \
diff --git a/scripts/build/companion_tools/100-m4.sh b/scripts/build/companion_tools/100-m4.sh
index 96cde39..2373c69 100644
--- a/scripts/build/companion_tools/100-m4.sh
+++ b/scripts/build/companion_tools/100-m4.sh
@@ -11,7 +11,7 @@ do_companion_tools_m4_extract() {
}
do_companion_tools_m4_for_build() {
- CT_DoStep EXTRA "Installing m4 for build"
+ CT_DoStep INFO "Installing m4 for build"
CT_mkdir_pushd "${CT_BUILD_DIR}/build-m4-build"
do_m4_backend \
host=${CT_BUILD} \
@@ -23,7 +23,7 @@ do_companion_tools_m4_for_build() {
}
do_companion_tools_m4_for_host() {
- CT_DoStep EXTRA "Installing m4 for host"
+ CT_DoStep INFO "Installing m4 for host"
CT_mkdir_pushd "${CT_BUILD_DIR}/build-m4-host"
do_m4_backend \
host=${CT_HOST} \
diff --git a/scripts/build/companion_tools/200-autoconf.sh b/scripts/build/companion_tools/200-autoconf.sh
index 95b7115..4f9fc63 100644
--- a/scripts/build/companion_tools/200-autoconf.sh
+++ b/scripts/build/companion_tools/200-autoconf.sh
@@ -12,7 +12,7 @@ do_companion_tools_autoconf_extract() {
}
do_companion_tools_autoconf_for_build() {
- CT_DoStep EXTRA "Installing autoconf for build"
+ CT_DoStep INFO "Installing autoconf for build"
CT_mkdir_pushd "${CT_BUILD_DIR}/build-autoconf-build"
do_autoconf_backend host=${CT_BUILD} prefix="${CT_BUILD_COMPTOOLS_DIR}"
CT_Popd
@@ -20,7 +20,7 @@ do_companion_tools_autoconf_for_build() {
}
do_companion_tools_autoconf_for_host() {
- CT_DoStep EXTRA "Installing autoconf for host"
+ CT_DoStep INFO "Installing autoconf for host"
CT_mkdir_pushd "${CT_BUILD_DIR}/build-autoconf-host"
do_autoconf_backend host=${CT_HOST} prefix="${CT_PREFIX_DIR}"
CT_Popd
diff --git a/scripts/build/companion_tools/300-automake.sh b/scripts/build/companion_tools/300-automake.sh
index 85afaea..e936e7b 100644
--- a/scripts/build/companion_tools/300-automake.sh
+++ b/scripts/build/companion_tools/300-automake.sh
@@ -12,7 +12,7 @@ do_companion_tools_automake_extract() {
}
do_companion_tools_automake_for_build() {
- CT_DoStep EXTRA "Installing automake for build"
+ CT_DoStep INFO "Installing automake for build"
CT_mkdir_pushd "${CT_BUILD_DIR}/build-automake-build"
do_automake_backend host=${CT_BUILD} prefix="${CT_BUILD_COMPTOOLS_DIR}"
CT_Popd
@@ -20,7 +20,7 @@ do_companion_tools_automake_for_build() {
}
do_companion_tools_automake_for_host() {
- CT_DoStep EXTRA "Installing automake for host"
+ CT_DoStep INFO "Installing automake for host"
CT_mkdir_pushd "${CT_BUILD_DIR}/build-automake-host"
do_automake_backend host=${CT_HOST} prefix="${CT_PREFIX_DIR}"
CT_Popd
diff --git a/scripts/build/companion_tools/400-libtool.sh b/scripts/build/companion_tools/400-libtool.sh
index 39aa204..cfcc85b 100644
--- a/scripts/build/companion_tools/400-libtool.sh
+++ b/scripts/build/companion_tools/400-libtool.sh
@@ -12,7 +12,7 @@ do_companion_tools_libtool_extract() {
}
do_companion_tools_libtool_for_build() {
- CT_DoStep EXTRA "Installing libtool for build"
+ CT_DoStep INFO "Installing libtool for build"
CT_mkdir_pushd "${CT_BUILD_DIR}/build-libtool-build"
do_libtool_backend host=${CT_BUILD} prefix="${CT_BUILD_COMPTOOLS_DIR}"
CT_Popd
@@ -20,7 +20,7 @@ do_companion_tools_libtool_for_build() {
}
do_companion_tools_libtool_for_host() {
- CT_DoStep EXTRA "Installing libtool for host"
+ CT_DoStep INFO "Installing libtool for host"
CT_mkdir_pushd "${CT_BUILD_DIR}/build-libtool-host"
do_libtool_backend host=${CT_HOST} prefix="${CT_PREFIX_DIR}"
CT_Popd
diff --git a/scripts/build/libc/mingw.sh b/scripts/build/libc/mingw.sh
index 705f8c9..fddf1f7 100644
--- a/scripts/build/libc/mingw.sh
+++ b/scripts/build/libc/mingw.sh
@@ -83,6 +83,31 @@ do_check_mingw_vendor_tuple()
fi
}
+do_mingw_tools() {
+ for f in gendef genidl genlib genpeimg widl
+ do
+ if [[ ! -d "${CT_SRC_DIR}/mingw-w64-${CT_WINAPI_VERSION_DOWNLOADED}/mingw-w64-tools/${f}" ]]; then
+ continue;
+ fi
+
+ CT_mkdir_pushd "${CT_BUILD_DIR}/build-mingw-w64-tools/${f}"
+
+ CT_DoExecLog CFG \
+ "${CT_SRC_DIR}/mingw-w64-${CT_WINAPI_VERSION_DOWNLOADED}/mingw-w64-tools/${f}/configure" \
+ --build=${CT_BUILD} \
+ --host=${CT_HOST} \
+ --target=${CT_TARGET} \
+ --program-prefix=${CT_TARGET}- \
+ --prefix="${CT_PREFIX_DIR}"
+
+ CT_DoExecLog ALL ${make} ${JOBSFLAGS}
+
+ CT_DoExecLog ALL ${make} install
+
+ CT_Popd
+ done
+}
+
do_libc() {
do_check_mingw_vendor_tuple
@@ -109,6 +134,11 @@ do_libc() {
CT_DoLog EXTRA "Installing mingw-w64-crt"
CT_DoExecLog ALL make install DESTDIR=${CT_SYSROOT_DIR}
+ if [[ ${CT_MINGW_TOOLS} == "y" ]]; then
+ CT_DoLog EXTRA "Installing mingw-w64 companion tools"
+ do_mingw_tools
+ fi
+
CT_EndStep
if [ "${CT_THREADS}" = "posix" ]; then
diff --git a/scripts/build/libc/uClibc.sh b/scripts/build/libc/uClibc.sh
index d86ae1a..e58912c 100644
--- a/scripts/build/libc/uClibc.sh
+++ b/scripts/build/libc/uClibc.sh
@@ -299,6 +299,13 @@ manage_uClibc_config() {
esac
if [ "${CT_LIBC_UCLIBC_FENV}" = "y" ]; then
CT_KconfigEnableOption "UCLIBC_HAS_FENV" "${dst}"
+ else
+ CT_KconfigDisableOption "UCLIBC_HAS_FENV" "${dst}"
+ fi
+ if [ "${CT_LIBC_UCLIBC_RPC}" = "y" ]; then
+ CT_KconfigEnableOption "UCLIBC_HAS_RPC" "${dst}"
+ else
+ CT_KconfigDisableOption "UCLIBC_HAS_RPC" "${dst}"
fi
# We always want ctor/dtor