Commit Graph

96 Commits

Author SHA1 Message Date
Anthony Foiani
92898249bd scripts: add "FILE" and "CFG" debug levels.
I ran into some minor difficulties looking through the build log for a
particular file: I wasn't interested in seeing it unpacked, but only
when it is built or installed.  Adding these two levels allows me to
differentiate between those cases.

[Yann E. MORIN: Those are blind log levels, and are used only to search
 in the build-log afterward.]

Signed-off-by: Anthony Foiani <anthony.foiani@gmail.com>
2010-10-22 22:02:57 +02:00
Yann E. MORIN"
0622671d26 debug/gdb: use libexpat
gdb can use libexpat to parse target memory descriptions,
among other things. See:
  http://sourceware.org/ml/crossgcc/2010-08/msg00168.html

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2010-08-23 10:47:00 +02:00
Yann E. MORIN"
7a70e935c6 debug/gdb: install dependable libs in a generic target static libs dir
For now, ncurses is the only dependable target library built for gdb.
But expat is coming, and there's no reason to install each library in
its own place.

So, install ncurses in a generic directory, where other dependable
libraries can be installed as well.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2010-08-23 14:32:16 +02:00
Yann E. MORIN"
e81fe2c778 debug/gdb: companion libs are not used
Although the gdb ./configure advertises for GMP and MPFR, those libraries
are not used by gdb (the ./configure is used across different packages,
hence the check for GMP/MPFR). See:
  http://sourceware.org/ml/crossgcc/2010-08/msg00168.html

The same applies to MPC.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2010-08-23 10:38:15 +02:00
Yann E. MORIN"
8258ad7bcf debug/gdb: properly remove build tic
tic is isntalled in buildtools, not in the toolchain's bin dir.
Plus, it may have an extension...
2010-07-11 22:26:29 +02:00
Yann E. MORIN"
eec696451e debug/gdb: Fix compilation for Mingw hosts
GDB requires PDcurses instead of ncurses while running on Windows.
So, do not always compile ncurses in case GDB needs to build.

PDcurses is provided by an earlier build step and is not described in
this file.

Signed-off-by: Remy Bohmer <linux@bohmer.net>
[yann.morin.1998@anciense.nib.fr: we already have a way to detect ncurses usage]
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2010-07-11 22:23:34 +02:00
Yann E. MORIN"
e8a36ea13c debug/gdb: fix incorrect path
Fix discrepancy between the directory we create,
and the directory into which we install tic.
2010-07-01 01:17:01 +02:00
Yann E. MORIN"
c4e987288e debug/gdb: install tic in the buildtools directory
'tic' is a build tool, its place is in the buildtools
directory, not in the toolchain's bin directory.
2010-04-29 22:14:31 +02:00
Yann E. MORIN"
3fda8a4876 debug/gdb: be less verbose during the ncurses build 2010-04-29 22:12:27 +02:00
Yann E. MORIN"
3ad58b9c50 debug/gdb: remove insight
Insight seems to be very slow to follow up on mainstreram gdb.
Latest snapshots are more than 6 months old.

Moreover, I don't have time to maintain insight support in crosstool-NG;
and, because I don't use it, I am unable to find any breakage.
2010-04-15 20:00:23 +02:00
Yann E. MORIN"
bf86627982 scripts/functions: make CT_Patch dumber
It is the responsibility of the caller to split the package name from
its version. It already knows that.
2010-04-11 23:18:10 +02:00
Yann E. MORIN"
2a6e9ce59a debug/gdb: remove snapshot version 2010-04-11 23:05:48 +02:00
Yann E. MORIN"
2244007325 debug/gdb: gdb>=7.0 can use MPC, enable for cross-gdb 2010-03-15 22:02:02 +01:00
Yann E. MORIN"
2583337c7c debug/gdb: add option to use GMP and MPFR
GMP and MPFR are optional for gdb, so offer a config option.
2010-03-15 21:51:20 +01:00
Yann E. MORIN"
b2c9b2d48f debug/gdb: fix building the native tic
The native 'tic' will _always_ be run on the build
machine, so no need to handle canadian/native/...

Reported by: Trevor Woerner
http://sourceware.org/ml/crossgcc/2010-03/msg00055.html
(transplanted from 26e89d367ea11660fd3a0bf0bcad8763e4fa21cf)
2010-03-16 23:10:46 +01:00
Yann E. MORIN"
8bc58e651d debug/ltrace: properly fix building for powerpc
ltrace uses ppc, whereas crosstool-NG use powerpc.
Fix that by passing the correct value to HOST when calling configure.
2010-03-07 12:30:01 +01:00
Yann E. MORIN"
ecfc6d2e2d debug/ltrace: fix building on x86
ltrace uses i386 and x86_64, whereas crosstool-NG use x86 for both cases.
Fix that by detecting what bitness we're building for, and pass appropriate
i386 or x86_64 to ltrace's configure.
2010-03-06 16:05:20 +01:00
Yann E. MORIN"
2949150cbe complibs: hide companion libraries for target entry
The companion libraries on the target are required only for internal use by
binutils and gdb. The user should not have to know about this, so hide the
option.
2010-02-17 23:50:49 +01:00
Yann E. MORIN"
3eaa187de5 complibs: split-up selection for individual libs 2010-02-17 23:47:47 +01:00
Yann E. MORIN"
e3a4063ac6 scripts/functions: change handling of nochdir
- 'nochdir' must be the first option
- have systematic pushd/popd, even if nochdir
2010-01-12 19:24:03 +01:00
Yann E. MORIN"
ed71d902c9 debug/gdb: fix the space-damage 2010-01-21 22:45:09 +01:00
Yann E. MORIN"
64aae637f8 debug/gdb: do not expose the ncurses version in the menuconfig 2010-01-21 22:33:54 +01:00
Yann E. MORIN"
8f41039a3c debug/gdb: install ncurses in a temporary place
We only build the static ncurses, to be used to build the native gdb,
and it needs not be available for anyone but us. So install it into
a temporary place, and get rid of it once gdb is built.
2010-01-13 22:30:10 +01:00
Yann E. MORIN"
ad943c1a37 debug/gdb: staticaly link to ncurses for the native gdb
Staticaly link the native gdb (the one that runs on the target,
not the cross one that runs on the host) to ncurses.
2010-01-13 20:46:01 +01:00
Yann E. MORIN"
27199362d5 debug/ltrace: fix for a latent bug 2010-01-05 23:27:19 +01:00
Yann E. MORIN"
e950bbfeb2 debug/ltrace: chop long lines 2010-01-05 18:56:44 +01:00
Joachim Nilsson
ac08d4a45e debug/ltrace: set the ltrace extension to .tar.gz
Trying to download every extension in turn does not work.
The Debian server returns a friendly 404-page that is
saved as the orig.tar.bz2 file.  Help the helper by giving
it the extension to retrieve.
2010-01-05 11:43:31 +01:00
Joachim Nilsson
c704137fd6 debug/ltrace: Add support for ltrace-0.5.3
From this version of ltrace the maintainer has removed support for
GNU Autotools, so the patch sets needed to be reworked.

Included is the latest Debian patch, by the Debian ltrace maintainer
Juan Cespedes <cespedes@debian.org>, the OpenEmbedded patches for cross
compiling, by Khem Raj <raj.khem@gmail.com> and a further set of patches
by Joachim Nilsson <jocke@vmlinux.org> for crosstool-NG.
2010-01-03 16:46:58 +01:00
Yann E. MORIN"
8908eb3037 misc: do not use "tar cf - |tar xf -"
Using this: tar cf - -C "/some/place" |tar xf - -C "/some/other/place"
to copy a directory to another place does not properly fail (when it does).

Using this instead: cp -av "/some/place" "/some/other/place"
makes it easy to see why and how it failed.

Impacted:
    libc/uClibc
    debug/ltrace
    tools/sstrip
    scripts/populate
2010-01-02 18:00:54 +01:00
Yann E. MORIN"
da84e43df4 debug/tools: set the ncurses extension to .tar.gz
TRying to download every extension in turn takes ages, so
help the helper by telling what extension to retrieve.
2009-12-30 15:38:03 +01:00
Yann E. MORIN"
c2d4265646 debug/dmalloc: fix handling of threading model 2009-10-21 18:47:16 +02:00
Yann E. MORIN"
c3b2d932d8 debug/gdb: cleanup (remove) the static ncurses build
ncurses is built solely for the sake of building a native gdb.
The user should not rely on this library to build his/her userland,
but should rather build his/her own. So we remove it from the
sysroot after we successfully build the native gdb.
2009-10-03 17:09:18 +02:00
Yann E. MORIN"
922486d2b1 duma: fix downloading by forcing extension to .tar.gz
Downoading a non-existing file from sourceforge gives you a "200 OK"
and an index.html. As we try to retrieve a .tar.bz2 first, and duma
is bundled in a .tar.gz, we won't get appropriate content, so
just force the extension to avoid the problem.

Thanks to Ingmar Schraub <is@eseco.de> for pointing out the issue.
2009-08-28 11:57:29 +02:00
Yann E. MORIN"
59a37160af Make gdb's extra_config an array containing ./configure options
Change extra_config from a string to a array of options.
2009-08-19 19:44:43 +02:00
Yann E. MORIN"
25303fc30a Make dmalloc's extra_config an array containing ./configure options
Change extra_config from a string to a array of options.
2009-08-19 19:44:42 +02:00
Yann E. MORIN"
529d2f6cbe Cleanup the tic build used for native ncurses build, itself needed for native gdb build.
/trunk/scripts/build/debug/300-gdb.sh |   24    12    12     0 ++++++++++++------------
 /trunk/scripts/build/internals.sh     |    1     0     1     0 -
 2 files changed, 12 insertions(+), 13 deletions(-)
2009-03-30 21:17:21 +00:00
Yann E. MORIN"
6c060f2375 Finally make ncurses-5.7 corctly build:
- find the executables extension (needed under some OS, like Winblows)
- build tic in //
- simplify the make and install command lines

 /trunk/scripts/build/debug/300-gdb.sh |   10     7     3     0 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)
2009-03-24 17:39:45 +00:00
Yann E. MORIN"
37d19f8954 Final touch to the ncurses build step:
- use build tools to build tic, instead of native ones.

 /trunk/scripts/build/debug/300-gdb.sh |    9     6     3     0 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)
2009-03-23 23:35:36 +00:00
Yann E. MORIN"
893f21944c xlcwu <xlcwu.taiwan@gmail.com> wrote:
Seems ncurses 5.7 need build host stage for tic step; if use host tic
  (ubuntu) the build process hang in the below step.
  So I guess need to build ncurses host stage to build new tic

and provided a patch to that efect.

And in fact, we do need "tic" to run on the _build_ system to properly
generate the terminfo database.

Note: this is fully functional, but still requires a litle bit of
tweaking so that ${CT_BUILD}-gcc gets used instead of plain gcc.
But that's a minor problem for now...

 /trunk/scripts/build/debug/300-gdb.sh |   35    33     2     0 +++++++++++++++++++++++++++++++++--
 /trunk/scripts/build/internals.sh     |    1     1     0     0 +
 2 files changed, 34 insertions(+), 2 deletions(-)
2009-03-23 23:05:08 +00:00
Yann E. MORIN"
e1063055a2 Use "grep -E" instead of the deprecated "egrep".
/trunk/scripts/build/debug/200-duma.sh |    2     1     1     0 +-
 /trunk/scripts/build/libc/uClibc.sh    |    2     1     1     0 +-
 /trunk/scripts/crosstool-NG.sh.in      |    4     2     2     0 ++--
 3 files changed, 4 insertions(+), 4 deletions(-)
2009-03-08 17:09:39 +00:00
Yann E. MORIN"
a0c6dea176 Fix extracting/patching DUMA:
- DUMA uses an underscore between the name and version, not a dash.

 /trunk/scripts/build/debug/200-duma.sh |    1     1     0     0 +
 1 file changed, 1 insertion(+)
2009-03-06 13:27:40 +00:00
Yann E. MORIN"
6822fae02e Allow user to add a directory component in the sys-root path.
Rename CT_DEBUG_INSTALL_DIR to CT_DEBUGROOT_DIR (to match CT_SYSROOT_DIR).
As a side effect, fix creating lib64->lib symlinks.

 /trunk/scripts/build/debug/100-dmalloc.sh |    2     1     1     0 +-
 /trunk/scripts/build/debug/400-ltrace.sh  |    2     1     1     0 +-
 /trunk/scripts/build/debug/300-gdb.sh     |    6     3     3     0 +++---
 /trunk/scripts/build/debug/500-strace.sh  |    2     1     1     0 +-
 /trunk/scripts/build/debug/200-duma.sh    |    6     3     3     0 +++---
 /trunk/scripts/crosstool-NG.sh.in         |   16     7     9     0 +++++++---------
 /trunk/scripts/functions                  |    2     1     1     0 +-
 /trunk/config/toolchain.in                |   17    17     0     0 +++++++++++++++++
 8 files changed, 34 insertions(+), 19 deletions(-)
2009-03-03 17:41:59 +00:00
Yann E. MORIN"
28176fe21e Fix building ltrace on PowerPC.
On 20090115.0012+0100, "Andy Johnson" <ajohnson@aecno.com> wrote:
  ltrace wouldn't build on PowerPC because in the
  sysdeps/linux-gnu directory in the ltrace source tree
  the powerpc directory is called ppc.  I added some code
  in 400-ltrace.sh to create a symlink for it so it will
  build now.

Patch slightly modified by me before applying.

 /trunk/scripts/build/debug/400-ltrace.sh |    5     5     0     0 +++++
 1 file changed, 5 insertions(+)
2009-01-20 19:05:52 +00:00
Yann E. MORIN"
ebf01acb41 Split CT_ExtractAndPatch in two: CT_Extract and CT_Patch:
- it is unworkable to have CT_ExtactAndPAtch cope with all those silly glibc addons:
  - they can have 'short' (as 'ports') or 'long' (as glibc-ports-2.7) names
  - patches are against eithe the short or long name, but non-uniformly use one or the other
  - it is the reposibility of the component (glibc in this case) to handle corner cases such as those
- update all components to use the new functions

 /trunk/scripts/build/tools/000-template.sh |    3     2     1     0 +-
 /trunk/scripts/build/tools/100-libelf.sh   |    3     2     1     0 +-
 /trunk/scripts/build/tools/200-sstrip.sh   |    3     2     1     0 +-
 /trunk/scripts/build/kernel/linux.sh       |    3     2     1     0 +-
 /trunk/scripts/build/binutils.sh           |    3     2     1     0 +-
 /trunk/scripts/build/cc/gcc.sh             |    3     2     1     0 +-
 /trunk/scripts/build/debug/000-template.sh |    3     2     1     0 +-
 /trunk/scripts/build/debug/100-dmalloc.sh  |    3     2     1     0 +-
 /trunk/scripts/build/debug/400-ltrace.sh   |    3     2     1     0 +-
 /trunk/scripts/build/debug/300-gdb.sh      |    9     6     3     0 +++--
 /trunk/scripts/build/debug/500-strace.sh   |    7     3     4     0 ++--
 /trunk/scripts/build/debug/200-duma.sh     |   19     8    11     0 ++++------
 /trunk/scripts/build/libc/glibc.sh         |   14    12     2     0 ++++++-
 /trunk/scripts/build/libc/uClibc.sh        |   13     9     4     0 +++++--
 /trunk/scripts/build/libc/eglibc.sh        |   14    12     2     0 ++++++-
 /trunk/scripts/build/gmp.sh                |    3     2     1     0 +-
 /trunk/scripts/build/mpfr.sh               |    3     2     1     0 +-
 /trunk/scripts/functions                   |   68    36    32     0 +++++++++++++++++++-----------------
 18 files changed, 108 insertions(+), 69 deletions(-)
2009-01-05 23:02:43 +00:00
Yann E. MORIN"
4bcd72fb16 Fix building DUMA:
- DUMA separates its name from its version with an underscore, not with a dash.

 /trunk/scripts/build/debug/200-duma.sh |    3     2     1     0 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)
2009-01-05 21:09:37 +00:00
Yann E. MORIN"
31cc00829e Get rid of CT_LIBC_FILE, remove useless CT_MakeAbsolutePath.
CT_LIBC_FILE:
- that one was not easy, as it had sneaked into CT_ExtractAndPatch
- which in turn made CT_ExtractAndPatch have references to C library addons
- which in turn relieved the C library _extract functions from doing their own job
- which in turn imposed some nasty tricks in CT_ExtractAndPatch
- which in turn made life easier for the DUMA _get and _extract functions
- which unveiled some bizare behavior for pushd and popd:
  - if using smthg ike: 'pushd foo |bar':
    - the directory is *neither* changed
    - *nor* is it pushed onto the stack
  - which made popd fail

CT_MakeAbsolutePath:
- used only to make CT_LOCAL_TARBALLS_DIR canonical
- which is ((almost) useless:
  - hopefully, the user entered a full path already
  - if it's not the case, too bad...

 /trunk/scripts/build/debug/200-duma.sh |    5     1     4     0 +--
 /trunk/scripts/build/libc/glibc.sh     |   61    32    29     0 +++++++++++++++++---------------
 /trunk/scripts/build/libc/uClibc.sh    |   16    10     6     0 +++++---
 /trunk/scripts/build/libc/eglibc.sh    |   48    26    22     0 ++++++++++++++-----------
 /trunk/scripts/crosstool.sh            |    8     0     8     0 ----
 /trunk/scripts/functions               |   77    15    62     0 ++++++++--------------------------------
 6 files changed, 84 insertions(+), 131 deletions(-)
2009-01-04 22:17:53 +00:00
Yann E. MORIN"
b8b7843bea Get rid of all stuff related to building a /delivery' traball:
- building a delivery tarball has long been broken (since crostool-Ng is installable)
- get rid of implied do_print_filename, that can be mis-leading now tarballs can not be built

 /trunk/scripts/build/kernel/bare-metal.sh  |    4     0     4     0 ----
 /trunk/scripts/build/kernel/linux.sh       |    4     0     4     0 ----
 /trunk/scripts/build/tools/000-template.sh |   11     0    11     0 -----------
 /trunk/scripts/build/tools/100-libelf.sh   |    4     0     4     0 ----
 /trunk/scripts/build/tools/200-sstrip.sh   |   11     1    10     0 +----------
 /trunk/scripts/build/binutils.sh           |    4     0     4     0 ----
 /trunk/scripts/build/cc/gcc.sh             |    5     0     5     0 -----
 /trunk/scripts/build/debug/000-template.sh |   11     0    11     0 -----------
 /trunk/scripts/build/debug/100-dmalloc.sh  |    4     0     4     0 ----
 /trunk/scripts/build/debug/400-ltrace.sh   |    4     0     4     0 ----
 /trunk/scripts/build/debug/300-gdb.sh      |    7     0     7     0 -------
 /trunk/scripts/build/debug/500-strace.sh   |    4     0     4     0 ----
 /trunk/scripts/build/debug/200-duma.sh     |    4     0     4     0 ----
 /trunk/scripts/build/libc/none.sh          |    5     0     5     0 -----
 /trunk/scripts/build/libc/glibc.sh         |   10     0    10     0 ----------
 /trunk/scripts/build/libc/uClibc.sh        |    6     0     6     0 ------
 /trunk/scripts/build/libc/eglibc.sh        |   10     0    10     0 ----------
 /trunk/scripts/build/gmp.sh                |    6     0     6     0 ------
 /trunk/scripts/build/mpfr.sh               |    6     0     6     0 ------
 /trunk/docs/overview.txt                   |    9     0     9     0 ---------
 20 files changed, 1 insertion(+), 128 deletions(-)
2009-01-03 21:11:41 +00:00
Yann E. MORIN"
1daa4db721 Build dmalloc with -fPIC to sucessfully build the shared library with newer binutils.
/trunk/scripts/build/debug/100-dmalloc.sh |    1     1     0     0 +
 1 file changed, 1 insertion(+)
2008-11-24 12:13:36 +00:00
Yann E. MORIN"
8fba8c2732 Merge #1195, #1196 and #1203 from /devel/YEM-build_host_target_cleanup:
- Get rid of CT_CC_NATIVE
- Get rid of CT_CANADIAN_OPT
- Sanitise CT_BUILD vs. CT_HOST

 /trunk/scripts/build/tools/200-sstrip.sh |    4     2     2     0
 /trunk/scripts/build/binutils.sh         |    1     0     1     0 -
 /trunk/scripts/build/cc/gcc.sh           |   11     6     5     0 +-
 /trunk/scripts/build/debug/200-duma.sh   |    3     1     2     0 -
 /trunk/scripts/build/libc/glibc.sh       |   10     5     5     0 +-
 /trunk/scripts/build/libc/eglibc.sh      |    8     4     4     0 +-
 /trunk/scripts/crosstool.sh              |  168   113    55     0 ++++++++++++++++++++++++++------------
 /trunk/config/toolchain.in               |  160   137    23     0 +++++++++++++++++++++++++++++++-----
 8 files changed, 268 insertions(+), 97 deletions(-)
2008-11-13 18:22:23 +00:00
Yann E. MORIN"
ce4431de20 ltrace: remove lingering ".
/trunk/scripts/build/debug/400-ltrace.sh |    2     1     1     0 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
2008-10-26 11:30:34 +00:00