Commit Graph

520 Commits

Author SHA1 Message Date
Thomas Petazzoni
b90a10303e Support KERNEL_ARCH for AArch64
The architecture tuple is 'aarch64', but the kernel people decided to
call it 'arm64', so we have to do some mungling to get the kernel
architecture name from the Buildroot architecture name.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-11-02 21:08:50 +01:00
Valentine Barshak
94d3aa171c Makefile: Remove more pkgconfig files
The pkgconfig files are located in  /usr/lib/pkgconfig
and /usr/share/pkgconfig directories.
However, only /usr/lib/pkgconfig is removed when no
development files are needed in the target filesystem.

Remove pkgconfig directory from $(TARGET_DIR)/usr/share
as well if BR2_HAVE_DEVFILES is not set.

Signed-off-by: Valentine Barshak <gvaxon@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-10-04 23:03:48 +02:00
Thomas Petazzoni
669d07bdd4 Remove the Xtensa architecture
As stated in commit 555c2585bf, the
Xtensa architecture has been introduced in 2009 and never changed
since its initial introduction. It requires some special handling that
is a bit annoying, and despite our call to the initial developers, and
the announcement of the deprecation of the architecture during the
2012.05, nothing has happened. Therefore, drop support for this
architecture.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Acked-by: me
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-09-20 22:31:08 +02:00
Peter Korsgaard
a77ee7fd40 pkg-download: allow relative BR2_DL_DIR
And move the BUILDROOT_DL_DIR override here as well for consistency.

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-09-10 16:00:50 +02:00
Peter Korsgaard
f9686563b4 Kickoff 2012.11 cycle
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-09-03 21:27:41 +02:00
Thomas Petazzoni
288b73995a Prepare for 2012.08
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2012-08-31 10:49:41 +02:00
Thomas Petazzoni
8437b56258 Prepare for 2012.08-rc3
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2012-08-25 22:47:23 +02:00
Stephan Hoffmann
32314b4471 Added QMAKESPEC to the list of unexported symbols
Building QT might fail if QMAKESPEC is defined.

Signed-off-by: Stephan Hoffmann <sho@relinux.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2012-08-17 18:02:19 +02:00
Thomas Petazzoni
b58c83ae99 Update for 2012.08-rc2
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2012-08-15 12:11:48 +02:00
Thomas Petazzoni
4009cbbbf9 Update for 2012.08-rc1
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2012-08-01 20:46:31 +02:00
Francois Perrad
1d4104f0d0 add host arch detection and Kconfig BR2_HOSTARCH
This will allow to install binary package only if they are supported by the
host. As example Atmel SAM-BA (x86 only).

Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Acked-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
2012-07-18 19:33:29 +02:00
Luca Ceresoli
7e76f904d2 legal-info: infrastructure to collect legally-relevant material
This allows to automatically collect material that may be needed to comply with
the license of packages that Buildroot prepares for the target device.

The core of the implementation is made by the following parts:
 - in package/pkg-utils.mk some helper functions are defined for common actions
   such as generating a warning, producing info about a package etc;
 - in package/pkg-gentargets.mk, within the GENTARGETS framework, a new
   <PKG>-legal-info target produces all the info for a given package;
 - Makefile implements the top-level targets:
   - legal-info-prepare creates the output directory and produces legal info
     about Buildroot itself and the toolchain, which mostly means just warning
     the user that this is not implemented;
   - legal-info, the only target that is supposed to be used directly, depends
     on all of the above and finishes things by producing the README files from
     the various pieces.

Signed-off-by: Luca Ceresoli <luca@lucaceresoli.net>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2012-07-17 19:05:49 +02:00
Thomas Petazzoni
91123a6fab Ensure DESTDIR will not confuse the build
Having DESTDIR defined will confuse the build of certain packages, so
we ensure that it is undefined from the environment when Buildroot
starts.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-07-02 20:22:50 +02:00
Arnout Vandecappelle
670cb30670 Globally disable PKG_CONFIG_PATH
If PKG_CONFIG_PATH is set in the environment, it allows pkg-config to
look for libraries outside of the buildroot tree.  This is a problem
both for host and target builds.  To avoid it, globally set an empty
PKG_CONFIG_PATH in the environment.

Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-07-01 00:27:39 +02:00
Thomas De Schampheleire
07bae75635 source-check: change behavior to check only selected packages / add source-check-all
The original 'source-check' target first selects all packages, and then checks
whether the package tarballs can be found. This is useful for Buildroot
maintainers, but less useful for developers working on a specific project. The
latter only care about the packages used in that project.

This patch removes the allyesconfig dependency to source-check so that only
selected packages are checked. The original behavior is moved to a new target
'source-check-all'.

[Peter: removed source-check-all, people can just make allyesconfig before]
Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
Acked-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Acked-by: Luca Ceresoli <luca@lucaceresoli.net>
Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-06-23 23:18:39 +02:00
Thomas De Schampheleire
2a97045d5d build: add option to exclude executables/dirs from being stripped
Sometimes it may be desirable to keep debug symbols for some binaries and
libraries on the target. This commit introduces the config option
BR2_STRIP_EXCLUDE_FILES, which is interpreted as a list of such binaries
and libraries, and the option BR2_STRIP_EXCLUDE_DIRS, which indicates
directories excluded from stripping entirely.
These exclusions are passed to the find command in the target-finalize step.

Signed-off-by: Sven Neumann <s.neumann@raumfeld.com>
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>
2012-06-23 23:14:59 +02:00
Peter Korsgaard
5b11223fb6 Kickoff 2012.08 cycle
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-05-31 09:17:10 +02:00
Peter Korsgaard
bce34ab199 Update for 2012.05
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-05-30 23:23:07 +02:00
Peter Korsgaard
0b0d7badb0 Update for 2012.05-rc3
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-05-25 21:09:50 +02:00
Peter Korsgaard
b07ad40c1d Update for 2012.05-rc2
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-05-18 22:50:37 +02:00
Thomas De Schampheleire
433290761f ccache: allow dynamic selection of cache directory
The existing ccache infrastructure sets the cache directory hardcoded in the
ccache binary. As this directory was set to ~/.buildroot-ccache, the cache
is not necessarily local (e.g. in corporate environments the home directories
may be mounted over NFS.)
Previous versions of buildroot did allow to set the cache directory, but this
was also hardcoded (so you had to rebuild ccache to change it), plus that
support was removed.
See http://lists.busybox.net/pipermail/buildroot/2011-July/044511.html for
a discussion on this.

This patch modifies ccache to respect a new shell variable (exported from
the Makefile, based on a configuration option) instead of CCACHE_DIR.
The name CCACHE_DIR itself is already used by autotargets for the ccache
package.

Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-05-18 10:42:29 +02:00
Peter Korsgaard
9f7bf3b63d Update for 2012.05-rc1
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-05-10 19:07:20 +02:00
Thomas Petazzoni
aebf199ff0 Add support to generate locale data
In order to use locale support on a Linux system, you need locale data
to be present:

 * on a (e)glibc based system, this data is typically in the
   /usr/lib/locale/locale-archive file, which can be created and
   extended using the localedef program

 * on an uClibc based system, the set of supported locales is defined
   at build time by an uClibc configuration option.

This patch implements generating locale data for the following cases:

 * Internal toolchain

 * External toolchain based on (e)glibc. uClibc external toolchains
   are not supported, because with uClibc, the set of supported
   locales is defined at build time. CodeSourcery and Linaro
   toolchains have been tested, Crosstool-NG toolchains are believed
   to work properly as well.

 * Toolchains built using the Crosstool-NG backend, but only (e)glibc
   toolchains.

This feature was runtime tested with internal uClibc toolchain,
CodeSourcery ARM toolchain and Linaro ARM toolchain, thanks to a
simple C program that shows the data and a gettext translated message.

Note that this option differs from the "purge locales" option, which
is responsible for removing translation files and other locale stuff
installed by packages. At some point in the future, we may want to
clarify the respective roles of those options.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-05-09 00:26:21 +02:00
Arnout Vandecappelle
33f454bbef config: make it possible to specify which config file to use for 'make defconfig'
So that this works:

 % make defconfig BR2_DEFCONFIG=~/buildroot-defconfig

Right now we have to do:

 % cp ~/buildroot-defconfig configs/buildroot_defconfig
 % make buildroot_defconfig

That would dirty the buildroot tree and requires it to be writable.

Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com>
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Acked-by: Luca Ceresoli <luca@lucaceresoli.net>
Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-05-05 23:38:53 +02:00
Thomas Petazzoni
ce1acfb5ea toolchain: remove toolchain/Makefile.in and toolchain/gcc/Makefile.in
Re-integrate in gcc-uclibc-4.x.mk things from
toolchain/gcc/Makefile.in that were completely gcc-specific. There was
no reason to pull that when building with other backends than the
internal one.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-04-25 09:00:51 +02:00
Thomas Petazzoni
ad5af75732 Remove unused GNU_TARGET_SUFFIX
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-04-25 08:52:29 +02:00
Thomas Petazzoni
486253db30 cmake: move creation of toolchain file to package/pkg-cmaketargets.mk
This also requires moving a few include directives below the "all:"
target in the main Makefile, otherwise the new target to create the
toolchain file in pkg-cmaketargets.mk gets used as the default make
target instead of "all:".

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-04-20 00:01:03 +02:00
Thomas Petazzoni
b7285d0058 Move the manual build infrastructure to docs/manual/manual.mk
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-04-20 00:00:29 +02:00
Thomas Petazzoni
4ef7ec585c Remove unused .fakeroot.* mechanism
There used to be a mechanism using which packages could leave a
.fakeroot.<something> file which could contain commands to be executed
within the fakeroot environment. Since this mechanism is no longer
used by any package, remove it from the common infrastructure.

The latest user was nfs-utils, which used this mechanism to do the
"make install" as root, since doing otherwise was not supported. But
since 16e7b8255c, nfs-utils has been
upgraded and converted to the package infrastructure, and this hack is
no longer necessary. Another past user was the ltp-testsuite package,
for the same reason, and since
a72a670489, the fakeroot hack is no
longer needed.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-04-19 16:09:30 +02:00
Thomas Petazzoni
aba915fe2b Remove filename extension crap for OS compatibility
The only variable that is used is HOST_LOADLIBES, defined for the
cygwin case in the kconfig build. Since we don't support cygwin,
simply get rid of this.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-04-19 16:02:48 +02:00
Thomas Petazzoni
338c6d7cf2 Remove cc-option: not used anywhere
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-04-19 15:53:53 +02:00
Stephan Hoffmann
040f6a325f Add documentation for <pkg>-rebuild and <pkg>-reconfigure
Since these two special make targets are very useful but not yet
mentioned in the documentation I added them to the make help and
the manual.

Signed-off-by: Stephan Hoffmann <sho@reLinux.de>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-04-07 19:38:44 +02:00
Arnout Vandecappelle (Essensium/Mind)
2b91ab7a20 Add target to print buildroot version
It's convenient to have a target to print the buildroot version, for use
in external scripts calling buildroot.

Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Acked-by: Luca Ceresoli <luca@lucaceresoli.net>
Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-03-13 13:10:29 +01:00
Peter Korsgaard
7a58ed7317 Merge branch 'next' 2012-03-01 14:05:41 +01:00
Peter Korsgaard
9fc4359144 Update copyright year
We're in 2012 by now.

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-03-01 14:04:54 +01:00
Peter Korsgaard
5c3a337387 kickoff 2012.05 development cycle
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-03-01 14:03:39 +01:00
Peter Korsgaard
03ceab6d16 Update for 2012.02
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-02-29 23:19:47 +01:00
Peter Korsgaard
6d24b41b09 Update for 2012.02-rc3
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-02-27 16:49:38 +01:00
Peter Korsgaard
ed7791e2e8 Makefile: move cmake toolchain file to $HOST_DIR/usr/share/buildroot
To make it part of the SDK installation.

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-02-25 23:18:03 +01:00
Peter Korsgaard
3d6ff4f527 Update for 2012.02-rc2
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-02-19 23:16:50 +01:00
Luca Ceresoli
eb8fad2805 Print a message before executing the post-build script
Signed-off-by: Luca Ceresoli <luca@lucaceresoli.net>
Acked-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-02-19 23:05:34 +01:00
Peter Korsgaard
451a887894 Makefile: use /etc/os-release for version info rather than /etc/br-version
/etc/os-release is becoming a standard interface for distribution
name/version info, so let's use that instead of the nonstandard
/etc/br-version. Format of the file is something like:

NAME=Buildroot
VERSION=2012.02-rc1-00003-g2d10e81
ID=buildroot
VERSION_ID=2012.02-rc1
PRETTY_NAME="Buildroot 2012.02-rc1"

For more details, see:

http://0pointer.de/public/systemd-man/os-release.html

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-02-14 13:08:23 +01:00
Peter Korsgaard
14c2442858 Update for 2012.02-rc1
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-02-12 23:22:29 +01:00
Peter Korsgaard
8139e21c97 Makefile: fix old make check thinko
So it doesn't fail with 3.81.

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-02-09 22:59:20 +01:00
Thomas De Schampheleire
ee7f92e19f Makefile: change order of dirs and dependencies
If during the dependencies step, a package needs to be downloaded, the
download directory already has to be present. If not, the file will be
downloaded under the name 'dl' instead of in the directory 'dl'.

This patch changes the order of dirs and dependencies in the world target to
fix this.

Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-02-09 22:10:43 +01:00
Thomas De Schampheleire
0edfb24c38 dependencies: check minimal make version early on
Although support/dependencies/dependencies.sh checks for the version of make,
this script doesn't get a chance to run if make encounters a syntax error as a
result of being too old.

For example, the following syntax is only supported from make 3.81 onwards:

ifeq ($(BR2_TOOLCHAIN_BUILDROOT),y)
include toolchain/toolchain-buildroot.mk
else ifeq ($(BR2_TOOLCHAIN_EXTERNAL),y)
include toolchain/toolchain-external.mk
else ifeq ($(BR2_TOOLCHAIN_CTNG),y)
include toolchain/toolchain-crosstool-ng.mk
endif

This patch adds a check for the version of make very early in the Makefile, so
that old make versions are handled gracefully.

[Peter: simplify check]
Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-02-09 22:06:05 +01:00
Thomas De Schampheleire
a792668b58 dependencies: move from toolchain/ to support/
As suggested by Arnout Vandecappelle, move toolchain/dependencies to
support/dependencies, as it really is not toolchain-specific anymore.

Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Acked-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-02-09 21:45:59 +01:00
Peter Korsgaard
134ab1ce4f make release: add html/text/pdf manual and create .tar.bz2 format as well
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-02-07 11:39:41 +01:00
Peter Korsgaard
3ec57751fa Makefile: GENDOC_INNER: don't create subdirs for generated manuals
The output files are generated directly in $(O)/docs/manual.

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-02-07 10:52:35 +01:00
Peter Korsgaard
d0880f70fa gcc-uclibc-4.x.mk: get rid of BR2_DEPENDS_DIR
Now that we have dropped the make-write-deps patch.

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-01-15 20:59:37 +01:00
Peter Korsgaard
12c9f7dd6d Makefile: ensure CONFIG_SITE isn't set
Fixes lib/lib64 issue when building on OpenSUSE.

Reported-by: Guillaume Gardet <guillaume.gardet@free.fr>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-12-12 10:25:50 +01:00
Peter Korsgaard
f7c26a2678 kickoff 2012.02 development cycle
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-11-11 22:45:28 +01:00
Peter Korsgaard
1507c39b76 Update for 2011.11-rc1
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-11-11 20:26:10 +01:00
Peter Korsgaard
67a7d7b7d3 Makefile: build all manuals in $(O)/docs/manual
Like Arnouts' patch originally did.

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-10-26 07:52:03 +02:00
Arnout Vandecappelle (Essensium/Mind)
22c547fba9 manual: refactor the targets into GENDOC macro.
Also add a clean target, give absolute path to a2x, add a dependency
on the output file, and add to .PHONY.

Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
[Peter: build in docs/manual/<format>, fix clean targets]
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-10-25 12:05:39 +02:00
Thomas Petazzoni
8792cf9e0d manual: provide make targets to build the documentation
Special thanks for Yann E. Morin for giving input and suggestions to
implement this.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Acked-by: Luca Ceresoli <luca@lucaceresoli.net>
Reviewed by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Acked-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
[Peter: skip double mention of manual target in make help]
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-10-25 09:59:22 +02:00
Thomas Petazzoni
ee0246e1e1 package: add configuration option to specify a local override file
The user can now create a custom local override file to override the
source directory for various packages.

An example override file:

 ZLIB_OVERRIDE_SRCDIR = /tmp/zlib
 STRACE_OVERRIDE_SRCDIR = /opt/strace-4.5.20

would tell Buildroot to use the zlib and strace source code from the
specified directories, instead of download, extracting and patching
the code has done usually by Buildroot.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-09-29 22:19:08 +02:00
Thomas Petazzoni
102a93bdca support: move package/gnuconfig to support/gnuconfig
The CONFIG_UPDATE macro is no longer defined in
package/gnuconfig/gnuconfig.mk, but instead in
package/Makefile.autotools.in. It it also changed a little bit to take
the directory of the package sources as argument, and the AUTOTARGETS
infrastructure is updated to use this macro.

[Peter: drop echo in CONFIG_UPDATE]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-09-17 08:22:12 +02:00
Thomas Petazzoni
56da3859c7 support: move kconfig stuff from package/config to support/kconfig
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-09-17 08:17:06 +02:00
Thomas Petazzoni
f082c7c5cf support: move scripts/ to a new support/ directory
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-09-17 08:14:11 +02:00
Peter Korsgaard
5427c506bd kickoff 2011.11 development cycle
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-09-05 22:14:33 +02:00
Peter Korsgaard
facd602dca Update for 2011.08
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-08-31 13:44:55 +02:00
Peter Korsgaard
73f131ce7d Update for 2011.08-rc2
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-08-29 11:21:17 +02:00
Jean-Christophe PLAGNIOL-VILLARD
83f1bf9e45 barebox: add barebox-<n/x/menu>config and barebox-savedefconfig support
[Peter: only activate if barebox is enabled, fix deps]
Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-08-24 14:43:56 +02:00
Jean-Christophe PLAGNIOL-VILLARD
f5777ce8fb linux: add linux/linux26-savedefconfig support
Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-08-22 22:15:35 +02:00
Peter Korsgaard
7ff457cdb5 Update for 2011.08-rc1
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-08-04 22:31:30 +02:00
Thomas De Schampheleire
4eb982cf90 'source' target should depend on 'dirs'
In the following command flow:
make distclean
make <board>_defconfig
make source

the dl directory would normally be created by the first wget download. If there are no such downloads, e.g. because you use a local download mirror (e.g. scp, file) or only use git/svn/hg/bzr repositories, the dl directory is not created automatically. This causes e.g. the 'pushd' command in the respective _DOWNLOAD commands to fail.

This patch adds a dependency to the 'dirs' target to 'source', fixing this scenario.

Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-08-04 21:44:56 +02:00
Danomi Mocelopolis
b979619973 make help: sort defconfigs for make 3.82
Closes #3985

The wildcard function in make 3.82 no longer sorts the output, so
add an explicit sort so the defconfigs are listed in a sensible order.

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-07-17 22:19:19 +02:00
Yann E. MORIN
7c29745969 Makefile: unbreak source-check
'source-check' breaks because the *_DEFCONFIG options are empty strings.
There is an explicit check to avoid erroring-out when doing 'source', but
not when doing 'source-check'.

This patch set DL_MODE right from the first sub-make call.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-07-15 20:57:59 +02:00
Allan W. Nielsen
177b4b4ac0 Makefile.package.in: Add BR2_XZCAT for LZMA compression type
Signed-off-by: Allan W. Nielsen <a@awn.dk>
Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-07-12 23:14:44 +02:00
Thomas Petazzoni
97fafb9adc Remove unused variable definitions
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-06-12 21:56:09 +02:00
Peter Korsgaard
0a5e7905a6 kickoff 2011.08 development cycle
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-06-06 13:36:55 +02:00
Peter Korsgaard
9ab73b51e8 Update for 2011.05
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-05-27 16:18:21 +02:00
Peter Korsgaard
effcc9a2a2 Update for 2011.05-rc2
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-05-24 15:02:23 +02:00
Peter Korsgaard
137a4d7e92 Update for 2011.05-rc1
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-05-18 22:03:57 +02:00
Peter Korsgaard
125e2558b2 Get rid of unneeded CFLAGS
Now that we use a wrapper for external toolchains (and internal ones
default to the correct setting), we no longer need to explicitly pass
sysroot/march/mtune/mabi/floating point mode in TARGET_CFLAGS.

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-05-05 23:39:03 +02:00
Peter Korsgaard
85dc57f6fd Add toolchain wrapper for external toolchains
Add a simple toolchain wrapper for external toolchains, which forces the
correct sysroot/march/mtune/floating point options needed to use it
with buildroot.

With this in place the external toolchain behaves similar to the internal
ones, and the special handling can be removed. This also means that the
toolchain is usable outside buildroot without having to pass any special
compiler flags.

Also adjust the downloadable external toolchain support to install under
HOST_DIR so it can be used after the temporary build files are removed.

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-05-05 23:38:58 +02:00
Peter Korsgaard
4bb33dce49 Makefile: make help: show busybox/ctng/linux/uclibc-menuconfig if enabled
For this we need to read .config.

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-04-25 00:10:45 +02:00
Peter Korsgaard
b052862f02 Makefile: remove outdated make targets
busybox and linux26 no longer have a -config target, and prepatch only makes
sense for a very specific configuration (BR toolchain with GDB enabled).

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-04-25 00:00:23 +02:00
Peter Korsgaard
f894e85e85 Makefile: remove extra quotes around host linker flags for cygwin
Closes #3541

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-04-04 15:44:35 +02:00
Thomas Petazzoni
c729829c6c Fix ccache handling
When ccache support is enabled and 'make silentoldconfig' is being
started from the following rule:

$(BUILD_DIR)/buildroot-config/auto.conf: $(CONFIG_DIR)/.config
	$(MAKE) $(EXTRAMAKEARGS) HOSTCC="$(HOSTCC_NOCCACHE)" HOSTCXX="$(HOSTCXX_NOCCACHE)" silentoldconfig

then, the Makefile in package/config inherits from HOSTCC/HOSTCXX
values with the ccache prefix. However, if we start from a cleaned
build (after make clean), ccache is not compiled yet, so things break.

To solve this, we pass a noccache variant of HOSTCC/HOSTCXX down to
the package/config Makefile.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-04-02 22:34:09 +02:00
Mike Frysinger
0df02e1233 hostcc/hostcxx: fix noccache variant setting
The current code accidentally sets up HOSTCC_NOCCACHE and HOSTCXX_NOCCACHE
only when the respective HOSTCC or HOSTCXX values are not set.  So if you
do something like:
	make HOSTCC=gcc menuconfig
The build fails because HOSTCC_NOCCACHE is not set anywhere.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-03-28 10:29:35 +02:00
Peter Korsgaard
da5e5a5aa2 kickoff 2011.05 development cycle
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-03-01 14:13:06 +01:00
Peter Korsgaard
f3e79a7aae Update for 2011.02
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-02-28 21:54:22 +01:00
Peter Korsgaard
2d3d618b6a Update for 2011.02-rc2
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-02-24 10:10:16 +01:00
Peter Korsgaard
51f8802d87 Update for 2011.02-rc1
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-02-14 22:38:01 +01:00
Bjørn Forsman
f16f2a5fee Makefile: remove dead code (TARGET_SKELETON_PATCH)
TARGET_SKELETON_PATCH is no longer in use, so remove it.

Signed-off-by: Bjørn Forsman <bjorn.forsman@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-02-14 22:27:30 +01:00
Mike Frysinger
871db074b1 initial support for Blackfin processors
[Peter: don't allow MMU on bfin]
Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-02-07 14:29:19 +01:00
Gustavo Zacarias
a2b4f7fbbd toolchain: introduce HOST_DIR option
Allow the user to define HOST_DIR in the config menu.

This way when building an internal toolchain a separate (maybe shared)
output directory may be defined and the toolchain can be used by
multiple users and/or projects.

Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-02-02 22:46:13 +01:00
Peter Korsgaard
35ac32d150 Makefile: savedefconfig: save in O= directory for out-of-tree builds
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-02-02 15:54:50 +01:00
Peter Korsgaard
15f5bef053 make help: document ncurses, make V=1 and make O=<dir>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-02-01 08:41:01 +01:00
Bjørn Forsman
73144a6e02 Makefile: generate CMake toolchain-file in $(O)
A CMake toolchain-file makes it easy to develop CMake-based packages
outside of Buildroot. Just give the toolchain-file to CMake via the
-DCMAKE_TOOLCHAIN_FILE=... option.

Signed-off-by: Bjørn Forsman <bjorn.forsman@gmail.com>
Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-01-26 23:22:32 +01:00
Thomas Petazzoni
b0c86bcc57 Remove .py or .pyc depending on Python configuration
We do this at a global level since several packages can install
Python modules.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2011-01-25 08:59:57 +01:00
Peter Korsgaard
877044a738 Update copyright info for 2011
Happy newyear!

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-01-13 00:18:39 +01:00
Gustavo Zacarias
5ad139ebc9 toolchain: do staging symlink
Make an output/staging -> sysroot symlink just for compatibility
purposes.
This may be gone in the future so don't count on it, use $(STAGING_DIR)
instead.

Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-01-02 22:55:36 +01:00
Gustavo Zacarias
009407e6be binutils: make it a proper package
* Convert binutils to a proper autotargets package

* Add version 2.21 and drop version 2.17

* Hook up packaged binutils for target gcc

* Build tools are on HOST_DIR now so change it

* Move cross/host gcc to HOST_DIR

* Drop kludge from commit 3c77bab2ee
  This is fixed in the next commit "gcc: install copies of libgcc,
  libstdc++ and libgcj to the sysroot" - tested for arm & x86_64
  targets.

* TARGET_CROSS now pointed to HOST_DIR too

[Peter: Config.in tweaks]
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-01-02 22:55:16 +01: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
87b81bb56f toolchain: move sysroot to host dir
* Drop the BR2_STAGING_DIR option
* Hardcode STAGING_DIR to $(HOST_DIR)/usr/TUPLE/sysroot

Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-12-28 22:38:47 +01:00
Thomas Petazzoni
6c492d5e7b toolchain: add support for external toolchain profiles and download
Instead of letting the user define all the details of his external
toolchain, we define a set of profiles for well-known external
toolchains (CodeSourcery ones only at the moment, can easily be
extended with other toolchains).

Once a profile has been choosen, the user is offered the choice of
either letting Buildroot download and install the external toolchain,
or (as before) to tell Buildroot where the toolchain is installed on
the system.

We of course provide a "custom profile", through which the user can
configure Buildroot to use a custom external toolchain for which no
profile is available.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-12-13 21:56:49 +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