Commit Graph

64 Commits

Author SHA1 Message Date
Peter Korsgaard
2c6390a5d0 dependencies: check for extract tools as well
Most of the extract tools (gzip/bzip/..) we already check for explicitly
in dependencies.sh (as they are used outside GENTARGETS), but not for
xzcat.
The .xz format is used fairly rarely, and it is likely to not be available
on build hosts, so an explicit (hardcoded) check for it isn't optimal.
Instead, add the inflate tools used to DL_TOOLS_DEPENDENCIES, similar to
how we do it for svn/git/bzr/...

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-12-04 20:27:21 +01:00
Thomas De Schampheleire
8810f5a195 dependencies: remove unused lzma checking scripts
Files package/lzma/lzmacheck.sh and toolchain/dependencies/check-host-lzma.sh
are present since the very beginning of buildroot, but do not appear to be
used (anymore). Let's remove them.

Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
Acked-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-11-17 23:19:37 +01:00
Thomas De Schampheleire
4932c8a7cc dependencies: check core dependencies before anything else
Currently, the dependencies target (that runs dependencies.sh) depends on
DEPENDENCIES_HOST_PREREQ. This means that the dependencies listed in
DEPENDENCIES_HOST_PREREQ (currently host-sstrip if sstrip is selected) are
built *before* the dependencies.sh script is run.

As a result, if e.g. there is no gcc compiler present on the build system, the
dependencies in DEPENDENCIES_HOST_PREREQ will fail to build, and buildroot
will fail non-gracefully.

This patch makes sure that the DEPENDENCIES_HOST_PREREQ are checked *after* the
dependencies.sh script, so that any problem in the build system is reported in
a clean way by dependencies.sh.

Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
Acked-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-11-17 23:18:50 +01:00
Thomas Petazzoni
211916ed46 dependencies: additional check for PERL_MM_OPT
When the user has Perl local::lib installed, its environment contains
a PERL_MM_OPT variables which defines
INSTALL_BASE="/some/location". Unfortunately, having this makes the
build of libxml-parser-perl (and probably other Perl related packages)
fail, because it complains that both PREFIX (passed in our .mk file)
and INSTALL_BASE (passed from the PERL_MM_OPT environment variable)
are defined. Since in Buildroot we want our PREFIX to be considered,
we error out when the user has PERL_MM_OPT defined.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-10-15 23:01:03 +02:00
Thomas Petazzoni
4d33cb7021 dependencies: add rsync as a required dependency
rsync can now be used for overriden package, and will also be used for
other purposes in the future (optimization of toolchain copy time,
etc.).

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-09-20 22:58:28 +02:00
Daniel Nyström
2bf3c16609 Reset critical environment variables
Reset them early in top-level Makefile to ensure they're keept unset
all the way through the build process.

This also removes the requirement of these variables being unset
globally prior the build.

Signed-off-by: Daniel Nyström <daniel.nystrom@timeterminal.se>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-12-29 23:35:52 +01:00
Gustavo Zacarias
f78b344ea8 sstrip: make it a proper package
* Convert sstrip to a proper gentargets package
* Use openwrt svn version, it's basically the same one we used
* Change the hooks from old toolchain/sstrip to new package/sstrip
* Drop the old toolchain/sstrip directory
* sstrip for the target is now in Package -> Development

Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-12-28 20:43:58 +01:00
Thomas Petazzoni
960d268b25 infrastructure: only require download tools when needed
Instead of having to require svn, git or bzr unconditionally, only
require them when one package needs them to be downloaded.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2010-12-24 17:48:26 +01:00
Thomas Petazzoni
ba62fde481 dependencies: add unzip
unzip is needed to uncompress at91bootstrap, so let's add it as a
dependency. This can be discussed, and if we think it shouldn't be a
new dependency, we can also build a host-unzip.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-12-16 14:43:17 +01:00
Thomas Petazzoni
17b66affdf ccache: rework ccache management
* ccache is now a normal package (both for the host and the target).

 * ccache option is now part of the "Build options" menu. It will
   automatically build ccache for the host before building anything,
   and will use it to cache builds for both host compilations and
   target compilations.

 * bump ccache to 3.1.3

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-12-08 17:51:49 +01:00
Peter Korsgaard
d0c3d1cf43 sed: get rid of host-sed variant
And all the infrastructure surrounding it. A broken sed implementation
is quite rare nowadays, as seen by the fact that the current host-sed
support has been broken for a while, so just get rid of it.

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-09-30 23:09:39 +02:00
Thomas Petazzoni
01c1279f9f Detect early if an UTF-8 locale is needed
Check in toolchain/dependencies/dependencies.sh if an UTF-8 locale is
properly present on the system before trying to build a locale enabled
toolchain. As this test is only needed when a locale enabled toolchain
is going to be built, we pass the configuration file path to the
dependencies.sh script so that it can grep for the current value of
various options.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2010-08-11 13:10:54 +02:00
Thomas Petazzoni
3b207de011 dependencies: add svn as a mandatory tool
Now that two packages (tremor and libsvgtiny) are being downloaded
from svn, svn becomes a mandatory tool to run Buildroot.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2010-07-29 16:04:38 +02:00
Peter Korsgaard
bec3480a44 check-host-sed.sh: use mktemp for temporary file
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-06-21 23:02:31 +02:00
Nick Leverton
016eb67078 dependencies.sh: fix CWD in PATH check
Closes #1999

Signed-off-by: Nick Leverton <nick@leverton.org>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-06-09 12:04:25 +02:00
Thomas Petazzoni
c87eb21e00 dependencies: check that . is not in the PATH
Having . in the PATH makes the toolchain build process fail because it
confuses host tools and target tools.

This fixes bug #75.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2010-05-22 00:56:14 +02:00
Thomas Petazzoni
6b8b829508 dependencies: fix tests on LD_LIBRARY_PATH
Things like LD_LIBRARY_PATH=. or even LD_LIBRARY_PATH=.:/usr/lib were
not detected as incorrect.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2010-05-22 00:56:14 +02:00
Thomas Petazzoni
4880edd506 libxcb: fix path to Python modules
When building libxcb, the variable XCBPROTO_XCBPYTHONDIR must point to
the location where the Python modules needed to run the c_client.py
program are installed. The path
$(STAGING_DIR)/usr/lib/python2.6/site-packages was hardcoded. However,
it doesn't work when the version of Python installed on the host is
Python 2.5.

Therefore, add a little bit of magic to compute the host Python
version.

We also verify that Python is available on the host, as we don't build
it in Buildroot.

Fixes bug #1531.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2010-05-07 21:28:33 +02:00
Peter Korsgaard
29df95079d check-host-sed.sh: add missing shebang line
Bash seems to be smart enough to source the file when execve returns
ENOEXEC, but other shells might not be.

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-05-06 21:08:04 +02:00
Thomas Petazzoni
4bcefe826b target/cpio: cleanup
* Remove the dependency on BR2_HOST_FAKEROOT, since we don't have
   config option for host tools.

 * Remove a few useless things.

 * Check that cpio is available on the host in
   toolchain/dependencies/dependencies.sh.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2010-04-09 11:04:32 +02:00
Peter Korsgaard
d5b0bb4bc8 dependencies: we need tar and wget as well
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-04-06 16:40:42 +02:00
Thomas Petazzoni
496078a0a0 dependencies: add perl as a mandatory dependency
Now that we might happen to build libxml-parser-perl and intltool,
Perl becomes a mandatory dependency. This shouldn't be a problem since
most distributions install Perl by default anyway.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2010-02-23 20:34:32 +01:00
Thomas Petazzoni
a47ce9d3df dependencies: add gzip and bzip2 as base dependencies
They are needed to uncompress the tarballs we download. bzip2, for
instance, is not necessarly installed by default on basic Debian
systems.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2010-02-23 20:33:43 +01:00
Thomas Petazzoni
e07e1b45f7 dependencies: cleanup
Factorize some of the tests done by
toolchain/dependencies/dependencies.sh (check for unset environment
variables and check for required programs).

Make the output less verbose by only showing something when something
is not present. Some messages were really silly.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2009-12-16 08:33:38 +01:00
Thomas Petazzoni
84b1e44e92 dependencies: remove useless test doing nothing
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2009-12-15 21:09:53 +01:00
Thomas Petazzoni
8dba09de9d dependencies: bail out if makeinfo isn't found
makeinfo is mandatory at least to build a toolchain. Currently,
dependencies.sh doesn't fail if makeinfo is not present and only
displays a message that can easily be lost. The user will then
encounter the issue later, when it is more difficult to understand
what's happening.

So, this patch simply does for makeinfo what the script does for the
other dependencies: bail out if they aren't available.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2009-12-15 21:03:50 +01:00
Peter Korsgaard
7f7bf9637e dependencies: check for 'patch'
We need patch for patch-kernel.sh, so verify that it's available
before building.

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2009-10-02 09:06:51 +02:00
Peter Korsgaard
44c10ff6b4 dependencies: check for >= make 3.81
Reported by Andrew Dyer <amdyer@gmail.com> and
Lionel Landwerlin <lionel.landwerlin@openwide.fr>.

Seems like make 3.80 has problems with our Makefile.autotools.in
infrastructure.

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2009-09-30 09:03:40 +02:00
Peter Korsgaard
160d559b81 dependencies: simplistic SHELL = bash check 2009-01-01 21:20:46 +00:00
Hamish Moffatt
ea8e74bcbe Applied change from Ben Nizette and Hans-Christian Egtvedt to
correctly detect version of gcc on recent distros.  Supplied 
patch was against git and didn't apply cleanly to svn, so applied 
by hand.
2008-09-04 02:30:56 +00:00
Peter Korsgaard
0c462a82ec dependencies: check for awk 2008-06-18 13:11:52 +00:00
Bernhard Reutner-Fischer
aa81a06508 - improve the way host prerequisites for "dependencies" are established 2007-08-22 09:22:07 +00:00
Bernhard Reutner-Fischer
11b82356cf - make sure that sstrip is available early enough 2007-08-21 20:14:23 +00:00
Bernhard Reutner-Fischer
e99518277a - add handling of lzma for the host (unconditionally for now)
- remove non-working attempt to install an lzma to the host via sudo
2007-08-21 15:33:33 +00:00
Ulf Samuelsson
adbc5a18cb Add BUILDROOT_DL_DIR to dependencies.sh and fix whitespace damage (sorry) 2007-08-20 15:47:42 +00:00
Bernhard Reutner-Fischer
0abc368c5c - check for clean environment variables ARCH, CROSS_COMPILE, GREP_OPTIONS 2007-06-26 13:26:51 +00:00
Bernhard Reutner-Fischer
eb84b6dba3 - fix typo in version check 2007-06-05 07:38:07 +00:00
Bernhard Reutner-Fischer
beca59b090 - ignore eventual errors from which(1) 2007-05-11 12:50:15 +00:00
Bernhard Reutner-Fischer
44d3e98efa - ignore errors when looking at hostcc and hostcxx 2007-03-21 18:15:02 +00:00
Bernhard Reutner-Fischer
22c0b6ee5c - stop using head and use sed -e '1d' at the end instead 2007-03-21 10:54:24 +00:00
Bernhard Reutner-Fischer
9c5b374d8d - fix syntax 2007-03-12 08:55:20 +00:00
Bernhard Reutner-Fischer
f506f7c893 - fixes for bugs introduced with the MacOS10 support (Heikki Lindholm) 2007-03-10 10:29:08 +00:00
Bernhard Reutner-Fischer
1506b0cfd5 Improve the checking of sed by adding some common GNU sed installation
names (gsed/gnused), checking for a basic OS X sed feature in command
line option handling, checking the actual result of the sed run against
the expected result, and placing common code for the check under
toolchain/dependencies/.  (Heikki Lindholm)
2007-03-09 08:33:34 +00:00
Bernhard Reutner-Fischer
78e6cbb4ee - Propagate HOST_SED_DIR to the dependencies script so that it may use the
local sed build as well (Heikki Lindholm).
2007-03-08 16:44:20 +00:00
Bernhard Reutner-Fischer
1e4d4391bd - mention the package that usually provides makeinfo 2007-02-16 09:34:11 +00:00
Bernhard Reutner-Fischer
0fed2766a4 - might make sense not to print ok if it was nak 2007-02-15 14:30:56 +00:00
Bernhard Reutner-Fischer
f3c50a6cf2 - warn about missing makeinfo on the host. 2007-02-15 14:07:08 +00:00
Bernhard Reutner-Fischer
2d70eb0b89 - cosmetics 2007-02-12 10:41:59 +00:00
Bernhard Reutner-Fischer
13c1b92973 - add paranoia warning about $INCLUDES 2007-02-09 17:28:27 +00:00
Bernhard Reutner-Fischer
078013d8ae - add purely informational check of HOSTCXX 2007-02-09 12:32:21 +00:00