mirror of
https://github.com/crosstool-ng/crosstool-ng.git
synced 2024-12-19 04:47:52 +00:00
commit
cd39285ff8
@ -74,7 +74,7 @@ choice
|
|||||||
config LIBC_GLIBC_V_2_23
|
config LIBC_GLIBC_V_2_23
|
||||||
bool
|
bool
|
||||||
prompt "2.23"
|
prompt "2.23"
|
||||||
select LIBC_GLIBC_2_20_or_later
|
select LIBC_GLIBC_2_23_or_later
|
||||||
|
|
||||||
config LIBC_GLIBC_V_2_22
|
config LIBC_GLIBC_V_2_22
|
||||||
bool
|
bool
|
||||||
@ -109,6 +109,11 @@ endchoice
|
|||||||
|
|
||||||
endif # ! LIBC_GLIBC_CUSTOM
|
endif # ! LIBC_GLIBC_CUSTOM
|
||||||
|
|
||||||
|
# Checked by SPARC build: SPARCv8 is dropped in 2.23.
|
||||||
|
config LIBC_GLIBC_2_23_or_later
|
||||||
|
select LIBC_GLIBC_2_20_or_later
|
||||||
|
bool
|
||||||
|
|
||||||
# DeMark 2.20 as no longer needs to set NPTL as an addon.
|
# DeMark 2.20 as no longer needs to set NPTL as an addon.
|
||||||
# It is no longer possible to build glibc without pthread!
|
# It is no longer possible to build glibc without pthread!
|
||||||
config LIBC_GLIBC_2_20_or_later
|
config LIBC_GLIBC_2_20_or_later
|
||||||
|
13
patches/dmalloc/5.5.2/170-ppc-bogus-assembly.patch
Normal file
13
patches/dmalloc/5.5.2/170-ppc-bogus-assembly.patch
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
diff -ur dmalloc-5.5.2.orig/return.h dmalloc-5.5.2/return.h
|
||||||
|
--- dmalloc-5.5.2.orig/return.h 2016-03-13 13:11:48.090431764 -0700
|
||||||
|
+++ dmalloc-5.5.2/return.h 2016-03-13 13:12:11.246642618 -0700
|
||||||
|
@@ -251,8 +251,7 @@
|
||||||
|
|
||||||
|
#define GET_RET_ADDR(file) \
|
||||||
|
do { \
|
||||||
|
- asm("mflr 0"); \
|
||||||
|
- asm("stw 0,%0" : "=g" (file)); \
|
||||||
|
+ asm("mflr %0" : "=r"(file)); \
|
||||||
|
} while(0)
|
||||||
|
|
||||||
|
#endif /* __powerpc__ && __GNUC__ && !__OPTIMIZE__ */
|
12
patches/uClibc-ng/1.0.12/100-provide-_obstack_free.patch
Normal file
12
patches/uClibc-ng/1.0.12/100-provide-_obstack_free.patch
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
diff -ur uClibc-ng-1.0.12.orig/libc/misc/gnu/obstack.c uClibc-ng-1.0.12/libc/misc/gnu/obstack.c
|
||||||
|
--- uClibc-ng-1.0.12.orig/libc/misc/gnu/obstack.c 2016-03-13 15:08:44.408962824 -0700
|
||||||
|
+++ uClibc-ng-1.0.12/libc/misc/gnu/obstack.c 2016-03-13 15:13:30.129322998 -0700
|
||||||
|
@@ -385,7 +385,7 @@
|
||||||
|
abort ();
|
||||||
|
}
|
||||||
|
|
||||||
|
-# if 0
|
||||||
|
+# if 1
|
||||||
|
/* Older versions of libc used a function _obstack_free intended to be
|
||||||
|
called by non-GCC compilers. */
|
||||||
|
strong_alias (obstack_free, _obstack_free)
|
@ -11,4 +11,3 @@ CT_BINUTILS_LD_WRAPPER=y
|
|||||||
CT_BINUTILS_PLUGINS=y
|
CT_BINUTILS_PLUGINS=y
|
||||||
CT_CC_LANG_CXX=y
|
CT_CC_LANG_CXX=y
|
||||||
CT_DEBUG_gdb=y
|
CT_DEBUG_gdb=y
|
||||||
CT_GDB_CROSS_EXTRA_CONFIG_ARRAY="--with-expat"
|
|
||||||
|
@ -11,4 +11,3 @@ CT_BINUTILS_LD_WRAPPER=y
|
|||||||
CT_BINUTILS_PLUGINS=y
|
CT_BINUTILS_PLUGINS=y
|
||||||
CT_CC_LANG_CXX=y
|
CT_CC_LANG_CXX=y
|
||||||
CT_DEBUG_gdb=y
|
CT_DEBUG_gdb=y
|
||||||
CT_GDB_CROSS_EXTRA_CONFIG_ARRAY="--with-expat"
|
|
||||||
|
@ -12,4 +12,3 @@ CT_BINUTILS_LD_WRAPPER=y
|
|||||||
CT_BINUTILS_PLUGINS=y
|
CT_BINUTILS_PLUGINS=y
|
||||||
CT_CC_LANG_CXX=y
|
CT_CC_LANG_CXX=y
|
||||||
CT_DEBUG_gdb=y
|
CT_DEBUG_gdb=y
|
||||||
CT_GDB_CROSS_EXTRA_CONFIG_ARRAY="--with-expat"
|
|
||||||
|
@ -12,4 +12,3 @@ CT_BINUTILS_LD_WRAPPER=y
|
|||||||
CT_BINUTILS_PLUGINS=y
|
CT_BINUTILS_PLUGINS=y
|
||||||
CT_CC_LANG_CXX=y
|
CT_CC_LANG_CXX=y
|
||||||
CT_DEBUG_gdb=y
|
CT_DEBUG_gdb=y
|
||||||
CT_GDB_CROSS_EXTRA_CONFIG_ARRAY="--with-expat"
|
|
||||||
|
@ -1,6 +1,4 @@
|
|||||||
CT_EXPERIMENTAL=y
|
CT_EXPERIMENTAL=y
|
||||||
CT_DEBUG_CT=y
|
|
||||||
CT_DEBUG_CT_SAVE_STEPS=y
|
|
||||||
CT_LOCAL_TARBALLS_DIR="${HOME}/src"
|
CT_LOCAL_TARBALLS_DIR="${HOME}/src"
|
||||||
CT_SAVE_TARBALLS=y
|
CT_SAVE_TARBALLS=y
|
||||||
# CT_STRIP_HOST_TOOLCHAIN_EXECUTABLES is not set
|
# CT_STRIP_HOST_TOOLCHAIN_EXECUTABLES is not set
|
||||||
|
@ -69,7 +69,11 @@ do_debug_gdb_build() {
|
|||||||
|
|
||||||
cross_extra_config=("${extra_config[@]}")
|
cross_extra_config=("${extra_config[@]}")
|
||||||
cross_extra_config+=("--with-expat")
|
cross_extra_config+=("--with-expat")
|
||||||
cross_extra_config+=("--with-libexpat-prefix=${CT_HOST_COMPLIBS_DIR}")
|
# NOTE: DO NOT USE --with-libexpat-prefix (until GDB configure is smarter)!!!
|
||||||
|
# It conflicts with a static build: GDB's configure script will find the shared
|
||||||
|
# version of expat and will attempt to link that, despite the -static flag.
|
||||||
|
# The link will fail, and configure will abort with "expat missing or unusable"
|
||||||
|
# message.
|
||||||
case "${CT_THREADS}" in
|
case "${CT_THREADS}" in
|
||||||
none) cross_extra_config+=("--disable-threads");;
|
none) cross_extra_config+=("--disable-threads");;
|
||||||
*) cross_extra_config+=("--enable-threads");;
|
*) cross_extra_config+=("--enable-threads");;
|
||||||
@ -88,17 +92,24 @@ do_debug_gdb_build() {
|
|||||||
cross_extra_config+=("--disable-nls")
|
cross_extra_config+=("--disable-nls")
|
||||||
fi
|
fi
|
||||||
|
|
||||||
CC_for_gdb=
|
CC_for_gdb="${CT_HOST}-gcc ${CT_CFLAGS_FOR_HOST} ${CT_LDFLAGS_FOR_HOST}"
|
||||||
LD_for_gdb=
|
LD_for_gdb="${CT_HOST}-ld ${CT_LDFLAGS_FOR_HOST}"
|
||||||
if [ "${CT_GDB_CROSS_STATIC}" = "y" ]; then
|
if [ "${CT_GDB_CROSS_STATIC}" = "y" ]; then
|
||||||
CC_for_gdb="${CT_HOST}-gcc -static"
|
CC_for_gdb+=" -static"
|
||||||
LD_for_gdb="${CT_HOST}-ld -static"
|
LD_for_gdb+=" -static"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Disable binutils options when building from the binutils-gdb repo.
|
# Fix up whitespace. Some older GDB releases (e.g. 6.8a) get confused if there
|
||||||
cross_extra_config+=("--disable-binutils")
|
# are multiple consecutive spaces: sub-configure scripts replace them with a
|
||||||
cross_extra_config+=("--disable-ld")
|
# single space and then complain that $CC value changed from that in
|
||||||
cross_extra_config+=("--disable-gas")
|
# the master directory.
|
||||||
|
CC_for_gdb=`echo $CC_for_gdb`
|
||||||
|
LD_for_gdb=`echo $LD_for_gdb`
|
||||||
|
|
||||||
|
# Disable binutils options when building from the binutils-gdb repo.
|
||||||
|
cross_extra_config+=("--disable-binutils")
|
||||||
|
cross_extra_config+=("--disable-ld")
|
||||||
|
cross_extra_config+=("--disable-gas")
|
||||||
|
|
||||||
CT_DoLog DEBUG "Extra config passed: '${cross_extra_config[*]}'"
|
CT_DoLog DEBUG "Extra config passed: '${cross_extra_config[*]}'"
|
||||||
|
|
||||||
@ -162,6 +173,11 @@ do_debug_gdb_build() {
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
native_extra_config+=("--with-expat")
|
native_extra_config+=("--with-expat")
|
||||||
|
# NOTE: DO NOT USE --with-libexpat-prefix (until GDB configure is smarter)!!!
|
||||||
|
# It conflicts with a static build: GDB's configure script will find the shared
|
||||||
|
# version of expat and will attempt to link that, despite the -static flag.
|
||||||
|
# The link will fail, and configure will abort with "expat missing or unusable"
|
||||||
|
# message.
|
||||||
|
|
||||||
CT_DoLog EXTRA "Configuring native gdb"
|
CT_DoLog EXTRA "Configuring native gdb"
|
||||||
|
|
||||||
|
@ -73,6 +73,7 @@ do_libc_backend() {
|
|||||||
local multi_dir
|
local multi_dir
|
||||||
local multi_flags
|
local multi_flags
|
||||||
local extra_dir
|
local extra_dir
|
||||||
|
local target
|
||||||
local libc_headers libc_startfiles libc_full
|
local libc_headers libc_startfiles libc_full
|
||||||
local hdr
|
local hdr
|
||||||
local arg
|
local arg
|
||||||
@ -136,11 +137,24 @@ do_libc_backend() {
|
|||||||
|
|
||||||
CT_mkdir_pushd "${CT_BUILD_DIR}/build-libc-${libc_mode}${extra_dir//\//_}"
|
CT_mkdir_pushd "${CT_BUILD_DIR}/build-libc-${libc_mode}${extra_dir//\//_}"
|
||||||
|
|
||||||
|
target=${CT_TARGET}
|
||||||
|
case "${target}" in
|
||||||
|
# SPARC quirk: glibc 2.23 and newer dropped support for SPARCv8 and
|
||||||
|
# earlier (corresponding pthread barrier code is missing). Until this
|
||||||
|
# support is reintroduced, configure as sparcv9.
|
||||||
|
sparc-*)
|
||||||
|
if [ "${CT_LIBC_GLIBC_2_23_or_later}" = y ]; then
|
||||||
|
target=${target/#sparc-/sparcv9-}
|
||||||
|
fi
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
do_libc_backend_once extra_dir="${extra_dir}" \
|
do_libc_backend_once extra_dir="${extra_dir}" \
|
||||||
extra_flags="${extra_flags}" \
|
extra_flags="${extra_flags}" \
|
||||||
libc_headers="${libc_headers}" \
|
libc_headers="${libc_headers}" \
|
||||||
libc_startfiles="${libc_startfiles}" \
|
libc_startfiles="${libc_startfiles}" \
|
||||||
libc_full="${libc_full}"
|
libc_full="${libc_full}" \
|
||||||
|
target="${target}"
|
||||||
|
|
||||||
CT_Popd
|
CT_Popd
|
||||||
|
|
||||||
@ -192,6 +206,7 @@ do_libc_backend_once() {
|
|||||||
local glibc_cflags
|
local glibc_cflags
|
||||||
local float_extra
|
local float_extra
|
||||||
local endian_extra
|
local endian_extra
|
||||||
|
local target
|
||||||
local arg
|
local arg
|
||||||
|
|
||||||
for arg in "$@"; do
|
for arg in "$@"; do
|
||||||
@ -341,7 +356,7 @@ do_libc_backend_once() {
|
|||||||
"${src_dir}/configure" \
|
"${src_dir}/configure" \
|
||||||
--prefix=/usr \
|
--prefix=/usr \
|
||||||
--build=${CT_BUILD} \
|
--build=${CT_BUILD} \
|
||||||
--host=${CT_TARGET} \
|
--host=${target} \
|
||||||
--cache-file="$(pwd)/config.cache" \
|
--cache-file="$(pwd)/config.cache" \
|
||||||
--without-cvs \
|
--without-cvs \
|
||||||
--disable-profile \
|
--disable-profile \
|
||||||
|
@ -509,6 +509,8 @@ if [ -z "${CT_RESTART}" ]; then
|
|||||||
CT_CFLAGS_FOR_HOST+=" ${CT_EXTRA_CFLAGS_FOR_HOST}"
|
CT_CFLAGS_FOR_HOST+=" ${CT_EXTRA_CFLAGS_FOR_HOST}"
|
||||||
CT_LDFLAGS_FOR_HOST=
|
CT_LDFLAGS_FOR_HOST=
|
||||||
CT_LDFLAGS_FOR_HOST+=" ${CT_EXTRA_LDFLAGS_FOR_HOST}"
|
CT_LDFLAGS_FOR_HOST+=" ${CT_EXTRA_LDFLAGS_FOR_HOST}"
|
||||||
|
CT_CFLAGS_FOR_HOST+=" -I${CT_HOST_COMPLIBS_DIR}/include"
|
||||||
|
CT_LDFLAGS_FOR_HOST+=" -L${CT_HOST_COMPLIBS_DIR}/lib"
|
||||||
CT_DoLog DEBUG "CFLAGS for host compiler: '${CT_CFLAGS_FOR_HOST}'"
|
CT_DoLog DEBUG "CFLAGS for host compiler: '${CT_CFLAGS_FOR_HOST}'"
|
||||||
CT_DoLog DEBUG "LDFLAGS for host compiler: '${CT_LDFLAGS_FOR_HOST}'"
|
CT_DoLog DEBUG "LDFLAGS for host compiler: '${CT_LDFLAGS_FOR_HOST}'"
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user