crosstool-ng/scripts/build
Alexey Brodkin 57f5909285 binutils: Disable glob for better portability
Since glibc 2.27 glob interface was changed [1]  and so
"glob" & "glob64" symbols require glibc 2.27+.

For us that means if we build Binutils on a machine with glibc 2.27+
produced binaries won't be any longer usable on machines with older
glibc.

As an example [2]: build on Ubuntu 18.04 (with glibc 2.27) and try to run
on CentOS 7.x (with glibc 2.17), you'll see this:
---------------------->8-------------------
ldd ld
ld: /lib64/libc.so.6: version `GLIBC_2.27' not found (required by ld)
---------------------->8-------------------

Now given glob is not really used by Binutils itself (only needed by GDB)
and we build Binutils & GDB separately let's make at least Binutils
more portable.

In theory we may even try to do the same hack for GDB forcing it to use
imported glob implementation. But since GDB is now built strictly by C++
compiler we'll get waaay to many incompatibilities due to multiple changes
of C++ ABI in between GCC 7.5 of Ubuntu 18.04 and GCC 4.8.5 of CentOS 7.x,
so there's no point to even try.

[1] https://sourceware.org/git/?p=glibc.git;a=commit;h=ccf970c7a77e86f4f5ef8ecc5e637114b1c0136a
[2] https://github.com/zephyrproject-rtos/sdk-ng/issues/280

Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
2020-10-14 23:10:47 +03:00
..
arch Map picolibc to suitable CT_TARGET_SYS values 2020-09-16 11:52:58 -07:00
binutils binutils: Disable glob for better portability 2020-10-14 23:10:47 +03:00
cc Set --with-cpu-{32,64} for multilib builds 2020-02-26 11:05:19 -08:00
companion_libs Rename JOBSFLAGS -> CT_JOBSFLAGS 2019-04-04 18:57:42 -07:00
companion_tools m4: fix build for mingw32 host 2020-10-06 09:32:40 +02:00
debug Enable static libgcc when CT_GDB_NATIVE_STATIC_LIBSTDCXX is set 2020-05-26 16:34:31 +09:00
kernel Add support for noMMU xtensa 2019-03-23 11:09:43 -07:00
libc glibc: set glibc build system default_cflags empty 2020-10-05 15:37:19 +02:00
test_suite Fix the references to old config variables 2017-07-08 10:57:56 -07:00
arch.sh Add config flags for omitting 'arch' and 'vendor' 2018-12-10 01:10:01 -08:00
companion_libs.sh Build companion libs for target. 2015-11-13 10:24:22 -08:00
companion_tools.sh Some locations were missed while renaming kconfig symbols 2017-07-08 10:57:57 -07:00
debug.sh Some locations were missed while renaming kconfig symbols 2017-07-08 10:57:57 -07:00
internals.sh build/internals.sh: Handle pie executables 2019-09-14 22:21:11 +12:00
libc.sh Use "package ksym" when fetching/extracting 2018-12-14 18:50:51 -08:00
test_suite.sh Some locations were missed while renaming kconfig symbols 2017-07-08 10:57:57 -07:00