Commit Graph

1195 Commits

Author SHA1 Message Date
Zhenqiang Chen
fd26fc9b1d scripts: Use ${CT_TARGET}-strip to strip gdbserver
Signed-off-by: Zhenqiang Chen <zhenqiang.chen@linaro.org>
[yann.morin.1998@free.fr: quote variables]
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Message-Id: <CACgzC7BU9CPZ2cE+EYqnMe2WNz-wYby6f4tsmjJi715WmPmbWw@mail.gmail.com>
PatchWork-Id: 185303
2012-09-20 11:20:16 +08:00
Erik Inge Bolsø
8ab3a18e21 scripts: unset LIBRARY_PATH and LPATH
These environment variables set search path for gcc at link time, which can break the build.

Signed-off-by: Erik Inge Bolsø <knan-ct@anduin.net>
Message-Id: <alpine.BSF.2.00.1205130131550.21551@anduin.net>
PatchWork-Id: 186872
2012-05-13 01:09:20 +02:00
Jang, Bongseo
f1be07d210 kernel/linux: symlink custom kernel source dir with '-f'
build fails to symlink to custom kernel dir when the build is not the first time
because of 'ln -s' without '-f' option.

Signed-off-by: "Jang, Bongseo" <graycells@gmail.com>
Message-ID: <543e2981f2b723ecd850.1348370892@localhost.localdomain>
PatchWork-ID: 186178
2012-09-23 11:59:28 +09:00
David Holsgrove
395dca5ea8 arch/microblaze: add new architecture
Add Microblaze architecture support.

This depends on EXPERIMENTAL, as upstream projects do not yet
include full support to build a modern microblaze compiler.
This is in the process of being updated, but is not currently
publicly accessible.

Signed-off-by: "David Holsgrove" <david.holsgrove@xilinx.com>
Message-Id: <9c93e18b3d68b19303f3.1348113870@localhost.localdomain>
PatchWork-ID: 185305
2012-09-20 14:01:38 +10:00
Yann E. MORIN"
15bde07c86 scripts: add option to only use the mirror
Currently, if downloads are forbidden, the mirror is still tried for.

Change this way:
  - if downlaods forbidden, do not try neither upstream locations nor mirror
  - add option to only use the mirror, and avoid upstream locations

Signed-off-by: Austin Morton <austinpmorton@gmail.com>
[yann.morin.1998@free.fr: broaden the if USE_MIRRORto enclode mirror location]
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
2012-08-12 07:45:42 -04:00
Zhenqiang Chen
649c04594a scripts: strip gdbserver
Signed-off-by: Zhenqiang Chen <zhenqiang.chen@linaro.org>
2012-09-12 17:42:38 +08:00
Yann E. MORIN"
8c43cdb436 cc/gcc: Add the ability to build gcc from svn
I took some of the svn functionality from eglibc.

Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
[yann.morin.1998@free.fr: fix the conditional test in build script]
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
2012-08-22 12:26:10 -07:00
Yann E. MORIN"
3127749581 libc/{,e}glibc: remove rude wordings in commetns
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
2012-08-22 23:11:03 +02:00
Yann E. MORIN"
bb74a0544d scripts/functions: remove rude wordings
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
2012-08-22 18:28:07 +02:00
Yann E. MORIN"
a7eb2dea72 cc/gcc: cleanup comments from rude wordings
That comes from way back when nothing would work as expected, and I would
easily get heated as soon as anything would break. Sigh, those were the
old days.

Apologies.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
2012-08-22 18:08:39 +02:00
Bryan Hundven
0997c18f1e debug/expat: Update expat to 2.1.0
Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
Message-Id: <c59009fdaf23d82822c6.1345364052@flambe.is-a-geek.org>
2012-08-19 01:11:45 -07:00
Bryan Hundven
6e65a05261 scripts: use generic urls for sourceforge
For expat, duma, and strace, use the generic url and 302 to the mirror
instead of trying to download a file from a downed mirror and
failing.

Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
Message-Id: <b69ebeb72fef93c04c84.1345364051@flambe.is-a-geek.org>
2012-08-19 01:09:40 -07:00
Zhenqiang Chen
270b8ddf64 binutils/binutils: CT_BINUTILS_GOLD_THREADED should be CT_BINUTILS_GOLD_THREADS
Signed-off-by: Zhenqiang Chen <zhenqiang.chen@linaro.org>
2012-08-07 14:03:03 +08:00
Yann E. MORIN"
989d474a64 scripts: update config.{guess,sub}
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
2012-08-04 23:40:16 +02:00
Yann E. MORIN"
fa0ca9dfea cc/gcc: remove duplicate code in core pass-1
Whatever the threading model (NPTL, LT...), we build the same
core pass-1 compiler, so there is no need to have a case-esac
construct.

Remove now mis-leading and incorect comment.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
2012-08-04 23:15:02 +02:00
Yann E. MORIN"
0b187b2b12 scripts/xldd: fix pattern matching with new binutils
New binutils (circa 2.2x?) append 'program interpreter' to the
(NEEDED) line for the dynamic linker, which breaks our current
pattern.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
2012-08-02 21:38:41 +02:00
Yann E. MORIN"
c74fa76e4d cc/gcc: remove now useless condition-variable
Both core pass-1 and -2 compilers are unconditionally built,
so we no longer require a condition variable.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
2012-08-01 19:07:37 +02:00
Yann E. MORIN"
9d64a6b29e cc/gcc: always build core pass-1
Up until now, all conditions requiring a core pass-1 was when the
threading implementation used was NPTL. So we only built the core
pass-1 when NPTL was used.

Now, things have changed (what? when? Dunno...), and some bare-metal
canadian toolchains fail to build if a core pass-1 is not present.

OTOH, a core pass-1, although not needed for non-NPTL builds, does
no harm at all if it is present.

So, unconditionally build a core pass-1 (but still pass conditional
options to the core backend).

Reported-by: Per Arnold Blaasmo <Per-Arnold.Blaasmo@atmel.com>
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
2012-08-01 19:02:06 +02:00
Yann E. MORIN"
e16e5f44f5 scripts/showSample: also print the threading implementation
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
2012-08-01 22:02:26 +02:00
Yann E. MORIN"
52b7a1973e complibs/cloog: create missing m4 dir
Because we now patch configure.in and configure, the Makefile quicks
in a re-build rule as the source files are now more recent than the
bundled generated files, and that fails because the m4 directory
is missing, although on some systems where aclocal is not installed,
the re-build rule does nothing (except a warning).

Always create tht directory.

Reported-by: Per Arnold Blaasmo <per-arnold.blaasmo@atmel.com>
[Also thanks to Thomas De Schampheleire <patrickdepinguin@gmail.com>
 for some digging works on this issue]
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
2012-07-31 22:27:29 +02:00
Yann E. MORIN"
542bb18409 scripts+samples: fix listings the samples
Since we use defconfigs to save the samples, listing all the
samples can no longer be done by passing all the sample names
at one to the script; we need to pass them one-by-one after
we expand the sample's defconfig ibnto a complete .config.

Reported-by: Bryan Hundven <bryanhundven@gmail.com>
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
2012-07-23 22:02:23 +02:00
Yann E. MORIN"
f8ffee3dda debug/duma: fix download url
Sourceforge has again changed its mirroring system... :-(

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
2012-06-10 23:51:40 +02:00
Yann E. MORIN"
9d8035bbaf debug/gdb: add option to enable/disable the IPA lib for gdbserver
gdbserver >= 7.2 comes with an optional library to use tracepoints, the
In Process Agent (IPA) library, libinproctrace.so.

Currently, we build gdbserver staticaly, but that breaks the build of
the IPA lib.

Add an option to biuld the IPA lib, but not if statically linking.

Reported-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
2012-05-17 17:56:27 +02:00
Yann E. MORIN"
4e8f04012c cc/gcc: do not build manuals in parallel
Reported-by: Benoît Thébaudeau <benoit.thebaudeau@advansee.com>
Reported-by: Johannes Stezenbach <js@sig21.net>
Tested-by: Johannes Stezenbach <js@sig21.net>
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
2012-05-09 18:17:17 +02:00
Yann E. MORIN"
33a6cdd7ec samples: rework show-tuple
Now that we are using defconfig files, the samples do not contain
the full configuration, so we can not simply parse them to show
their content.

Instead, we must fake recalling a sample, and parse the generated
.config file.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
2012-05-07 21:37:59 +02:00
Yann E. MORIN"
99a6ddf3be samples: use savedefconfig when saving samples
When saving a sample, use savedefconfig instead of copying
the full .config file.

This reduces the saved .config, and reduces clutter when it
is later upgraded.

Also use defconfig when retrieving a sample.

Reported-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
2012-05-07 00:27:05 +02:00
Yann E. MORIN"
27e8b280f9 cc/gcc: add option to enable/disable libquadmath
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
2012-05-06 15:32:56 +02:00
Yann E. MORIN"
0a33870578 scripts: fix mk-release
mk-release was not adding the SoB lines in the commit messages.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
2012-05-08 22:30:05 +02:00
Yann E. MORIN"
4f5fca1947 scripts: fix catching build failures, the proper way, now
Serves me for pushing too fast... :-(

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
2012-05-08 23:29:38 +02:00
Yann E. MORIN"
5f54193297 scripts/functions: tweak the endianness LDFLAGS
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
2012-05-06 16:42:59 +02:00
Yann E. MORIN"
08f2b68bfb scripts: fix catching failures
POSIX 1003.1-2008 does not say whether "set -e" should catch a sub-shell
that exits with !0 (it has a list of conditions to catch, but no list of
conditions not to catch, and this situation is not listed).

bash-3 does not catch such a failure, but bash-4 does. That why, on my
Squeeze system I did not see the issue, while Thomas did on is Lenny chroot.

Reported-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
2012-05-08 18:31:10 +02:00
Yann E. MORIN"
8891442c9b scripts: update config.{guess,sub}
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
2012-05-06 15:11:24 +02:00
Johannes Stezenbach
2aee11ccf2 libc/uClibc: add additional debug level between "minimal" and "all"
During application development it is desirable to enable malloc
debugging and LD_DEBUG support, but the extensive debug spew from
SUPPORT_LD_DEBUG_EARLY is only useful when working on
uClibc's ld.so.

Signed-off-by: Johannes Stezenbach <js@sig21.net>
2012-02-24 16:08:32 +01:00
Anthony Foiani
e9cb0c788c Allow multi-word "install" command.
Autoconf can determine that the correct install command includes flags,
e.g., "/usr/bin/install -c".  When using this as a command, we can't
enclose the value in double-quotes, as that makes some shells use the
whole expression as a filename:

  # this is the value returned by autoconf and stored in CT_install
  $ ins="/usr/bin/install -c"

  # if we call it with quotes, the command is not found
  $ "${ins}"
  bash: /usr/bin/install -c: No such file or directory

  # removing the quotes lets it work as expected
  $ ${ins}
  /usr/bin/install: missing file operand
  Try `/usr/bin/install --help' for more information.

Signed-Off-By: Anthony Foiani <anthony.foiani@gmail.com>
2012-04-26 19:55:59 -06:00
Yann E. MORIN"
1db6c63e33 samples: . accepts previous comment as-is
When updating a sample configuration with a comment, a dot '.'
in the new comment keeps the previous comment.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
2012-04-09 11:19:51 +02:00
Yann E. MORIN"
d776140189 cc/gcc: build core compilers for canadian
Currently, we rely on an existing external cross-compiler targetting
the target, to build the C library.

This can pause quite a few problems if that compiler is different from
the one we are building, because it could introduce some ABI issues.

This patch removes this dependency, by building the core compilers
as we do for standard cross, and also by building the binutils and
gcc, for running on the build machine.

This means we no longer need to offer the cross-sompiler selection in
the menuconfig.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2012-01-03 22:57:25 +01:00
Yann E. MORIN"
b485733f26 cc/gcc: add build frontend
Bizarrely enough, the core gcc are not enough to be able to build a
canadian cross, and a real, full cross compiler is required so that
the canadian cross can be properly built... WTF?!? Sigh...

Add a build-frontend, as was done for the binutils and the complibs.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
2012-04-02 22:54:30 +02:00
Yann E. MORIN"
6471f1598c cc/gcc: frontends are responsible for selecting the list of languages
Do for the final step the same as for the core step: compute the list
of selected langauages from the frontend, not in the backend.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
2012-04-01 19:07:11 +02:00
Yann E. MORIN"
7b360e7a22 cc/gcc: pass the language list to the core backend
As the core backend can be used to also build the bare-metal compiler,
we have to tel it what languages to build.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-08-15 22:52:51 +02:00
Yann E. MORIN"
1a7cf0ea9e cc/gcc: add language helper function
Add a function that prepares the language configure option.
It is needed in at least two places, some commonalisation is needed. ;-)

Unfortunately, it is no longer possible to print warnings about experimental
languages any more. Anyway, the experimental status is clearly indicated
in the menuconfig. so it should not be a surprise if the build breaks. :-/

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-08-15 21:42:28 +02:00
Yann E. MORIN"
2f718dd60c complibs: fixup the host complibs install dir
It's easier to have as much as possible stuff in the same place to
ease backup/restore, and make things easier to follow.

Move the host companion libraries install dir as a sub-dir of the
build-tools install dir (but not directly in it, it would break
for canadian or cross-native).

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-07-25 19:04:17 +02:00
Yann E. MORIN"
4a8daa02e3 cc/gcc: cleanup the frontends
A few noop fix-ups:
 - fix the comments in core pass-1
 - commonalise settings that can be

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-07-25 19:04:00 +02:00
Yann E. MORIN"
ae3b564fb8 complibs: add frontends for building to run on the build machine
In canadian-cross, we need the companion libraries running on the
build machine, to be able to build the two core gcc.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-07-24 23:53:14 +02:00
Yann E. MORIN"
518a1ff137 binutils: add frontends for building to run on the build machine
In canadian-cross, we need binutils running on the build machine to be
able to build the target C library.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-07-24 23:52:28 +02:00
Yann E. MORIN"
2e3cc45633 complibs: split companion libraries to backend/frontend, a-la cc_core
Move the actual complibs codes to backend functions that builds the
required combo of build/host/target as requested by a frontend.

This split is currently a no-op, but is required for the upcoming
canadian-cross rework, where we'll be needing to build the complibs
twice, one for build/build, and one for build/host.

This applies to the six companion libraries:
 - GMP
 - MPFR
 - PPL
 - Cloog/PPL
 - MPC
 - libelf

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-07-17 18:56:30 +02:00
Yann E. MORIN"
533e5c128c binutils: split binutils to backend/frontend, a-la cc_core
Move the actual binutils code to a backend function that builds the
required combo of build/host/target as requested by a frontend.

This split is currently a no-op, but is required for the upcoming
canadian-cross rework, where we'll be needing to build two binutils,
one for build/build/target, and one for build/host/target.

This applies to the three binutils:
 - GNU binutils
 - elf2flt
 - sstrip

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-07-17 18:29:35 +02:00
Yann E. MORIN"
08161250ed cc/gcc: always build core compilers to run on the build machine
The core compilers are used to build the C library, so they
should always run on the build machine, not on the host.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-07-17 18:28:19 +02:00
Yann E. MORIN"
e960f66953 cc/gcc: install the core compilers in the build-tools dir
There really is no good reason to install the core compilers in their
own places, one for each pass. We can install them with the other
build tools.

Also, this implies that:
 - there are fewer directories to save/restore
 - there are fewer symlinks to create for binutils
 - the PATH is shorter

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2012-01-01 17:49:44 +01:00
Yann E. MORIN"
ad1aa7079e binutils/binutils: don't install symlinks when in canadian
When building a canadian-cross, the binutils are not executable on
the build machine, so there is no point in installing the symlinks
in the gcc static/shared install dirs.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2012-01-02 21:38:12 +01:00
Yann E. MORIN"
c427fcce6b debug/strace: fix download URL
strace upstream location has slightly changed.

Reported-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
2012-03-12 21:19:26 +01:00