| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
Change-Id: Iad8f11341a4a770c14393a50d1b0d3e26c076dbf
|
|
|
|
|
|
|
| |
Also source /etc/bash.bashrc so bash will work properly
if we use it for login
Change-Id: I4a4b238f84c44858904b0a208ef8737a859c355d
|
|
|
|
| |
Change-Id: I8220cd76e947de26335066357d69d2c5c204257c
|
|
|
|
| |
Change-Id: Icb223438e2ed7bc54e8d1ea7573594418ebe0445
|
|
|
|
| |
Change-Id: Ie917edd78e0c7640b86396ed5a5d968a0baaad9b
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This reverts commit a51a8ee9fe2c691a4b2d73fe06c1fde1d18f1153.
This symlink was a bad idea. We found that if the stage1-gcc chunk is
built on an ARM system with EGLIBC 2.15, then run on a system with GLIBC
2.20, the GCC binaries segfault on startup, inside the _dl_addr()
function. This is likely the result of an ABI compatibility between
EGLIBC 2.15 and GLIBC 2.20.
Morph still has a big hole in its caching algorithm whereby 'bootstrap'
mode chunks built against incompatible libc versions get the same
cache-key, and cause random breakages. We either need to fix this, or
ensure that the reference bootstrap is entirely statically linked, as
soon as possible.
Change-Id: I400d293dc8022ca6ab5a0ebda62ce378e9bf3317
|
|
|
|
| |
Change-Id: I55bf8764a105308d965947c3721a193abf7502ac
|
|
|
|
|
|
|
|
|
|
| |
This should be safe as we only build 3.19 in our systems (3.18 in the
case of the jetson)
For reference:
http://www.gnu.org/software/libc/manual/html_node/Configuring-and-compiling.html
Change-Id: I40df10570e3d2602c6f1b223ebb71753c6f86f8e
|
|
|
|
|
|
|
|
|
|
|
|
| |
On non-x86 systems, the linker may not be called ld-linux.so.* but
the older name of ld.so.*
When the linker is ld.so.1, for example, the install script of
stage2-glibc does not exit with an error (as basename/ls are in
subshells), but rather $loader is empty string.
This means that the symlink made is from /lib/lib to /tools/lib
rather than from /lib/ld.so.1 to /tools/lib/ld.so.1.
|
| |
|
|\
| |
| |
| |
| | |
Reviewed-by: Sam Thursfield
Reviewed-by: Pedro Alvarez
|
| | |
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Morph's cache key algorithm doesn't yet take into account the fact that
bootstrap chunks use files from the host system. While we are careful in
the Baserock reference system definitions to minimise the number of
components from the host system that it uses, the GNU C Library is
pretty much unavoidable.
Until we make the cache key algorithm more comprehensive, we need to
ensure that the bootstrap-mode chunks from build-essential will indeed
run on all versions of Baserock 'build' and 'devel' reference systems.
Otherwise cached artifacts built on one system will randomly break for
other people using different systems.
This commit fixes one such breakage, which was due to the name of the
GLIBC dynamic loader (ld.so) changing on ARMv7 hard-float platforms.
|
|
|
|
| |
This should be the default for a tarball release
|
|
|
|
|
| |
Support installing the Linux headers for the morph armv8l64 and armb8b64
archs.
|
| |
|
|\
| |
| |
| |
| |
| |
| | |
Reviewed by:
* Sam Thursfield
* Paul Sherwood
* Josh Malkinson
|
| |
| |
| |
| | |
This will make it easier to advance refs later.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Update the GCC compiler to the 4.9.2 version. It turns out that a C++
compiler is required to build the latest GCC releases, so build one in
stages 1 and 2 as well.
The updated list of GCC configuration options that either don't work in
a cross compiler or are not needed in a temporary compiler, were based
on the latest instructions from Linux From Scratch.
The inclusion of /lib64 in the lib path for the stage 1 linker is an
attempt to turn things more robust rather than to just symlink in /lib
stuff that ends up installed in /lib64 (as it is already being done for
libgcc_s.so). Ideally, we should configure every chunk to install to
/lib, however GCC seems to not honour the `--with-libdir` configuration
flag.
With this version of GCC, it looks like a sysroot needs to be given at
configure time so that `--with-native-system-header-dir` does what it
claims to do. Unfortunately, this has the side effect of making GCC not
passing to the linker the linker sysroot flag: `-Wl,--sysroot=$SYSROOT`.
The workaround is to modify LDFLAGS to give a sysroot directly to GCC,
`--sysroot=$SYSROOT`, which will then be further passed down to the
linker.
As the newest version of GCC finds more warnings than the previous one,
`-Werror` was disabled for the coreutils, GDB and Syslinux projects.
Syslinux's Makefile had to be patched, as it is not possible to disable
`-Werror` for all targets through the NO_WERROR variable.
The hack to handle libgcc_eh being required during eglibc's build was
removed, as it doesn't seem to be the case anymore.
|
| |
| |
| |
| |
| | |
M4 is required to manipulate the assembly code in GMP. GMP is a math
library required to build GCC.
|
| |
| |
| |
| |
| | |
No functional changes here. It will ease the review of the following
commmits.
|
|/
|
|
| |
We will use the pciutils lspci
|
|
|
|
| |
This is automatically configured by systemd
|
| |
|
| |
|
|
|
|
|
| |
This change is to prepare the transition to glibc since
the latter is going to need bash to build.
|
|\
| |
| |
| |
| | |
Reviewed-By: Pedro Alvarez <pedro.alvarez@codethink.co.uk>
Reviewed-By: Richard Maw <richard.maw@codethink.co.uk>
|
| |
| |
| |
| |
| | |
These will have been lost in the automated chunks-in-definitions
transition.
|
|/
|
|
|
|
| |
The 'make mrproper' command now requires GNU Bash, but since we start
from a clean Git checkout of linux.git we can just remove that from the
build command list.
|
|
|