summaryrefslogtreecommitdiffstats
path: root/Makefile
Commit message (Collapse)AuthorAgeFilesLines
* Makefile: unexport RUBYOPTGustavo Zacarias2013-07-121-0/+3
| | | | | | | | On Gentoo systems with ruby installed RUBYOPT is set and causes build breakage for some packages that needs host-ruby (example: webkit). Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* system: add option to pass extra args to post-build and post-image scriptsYann E. MORIN2013-07-101-2/+2
| | | | | | | | | | | | | | | | | It can be useful to have different configuration use the same post-build and/or post-image scripts as they share a common infrastructure, but yet have minor differentiation. This option allows passing zero or more additional arguments to each post-build or post-image script. The same set of extra arguments are passed to all scripts, it is not possible to pass different arguments to each script. [Peter: fix help text, post-image gets called with the images dir] Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Cc: Baruch Siach <baruch@tkos.co.il> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* Introduce BR2_TOOLCHAIN_USES_{UCLIBC, GLIBC}Thomas Petazzoni2013-07-041-1/+1
| | | | | | | | | | | | | | | | | Currently, when we need to do a conditional on the type of C library used, we need to take into account the three toolchain backends. As we are going to add eglibc support to the Buildroot toolchain backend, it would become even uglier, so this patch introduces two new hidden options: BR2_TOOLCHAIN_USES_UCLIBC and BR2_TOOLCHAIN_USES_GLIBC, that exist regardless of the toolchain backend. The entire Buildroot code base is converted to use those options. Note that we have intentionally created only one option (BR2_TOOLCHAIN_USES_GLIBC) for both glibc and eglibc, since they are essentially the same, as far as Buildroot is concerned. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* Remove BR2_HAVE_DEVFILESThomas Petazzoni2013-07-041-4/+0
| | | | | | | | | | | | This finally removes the BR2_HAVE_DEVFILES option, that was used to install/keep development files on target. With the recent migration of the internal backend to the package infrastructure, we had anyway lost the ability to build gcc for the target, and install the uClibc development files on the target. [Peter: also remove support/scripts/copy.sh] Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* Use more sensible names for the external/ctng targetsThomas Petazzoni2013-07-041-2/+5
| | | | | | | | | Instead of using the 'uclibc' target for all toolchain backends, introduce more sensible target names for the external toolchain and Crosstool-NG toolchain backend make targets. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* Remove TOOLCHAIN_DIRThomas Petazzoni2013-07-041-5/+4
| | | | | | | | | The $(O)/toolchain directory, also called $(TOOLCHAIN_DIR) is no longer needed, as all packages are now built in $(O)/build/, including gcc and uClibc. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* toolchain: switch to using gcc through package infrastructureThomas Petazzoni2013-07-031-1/+1
| | | | | Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* Normalize separator size to 80 in remaining makefilesAlexandre Belloni2013-06-201-10/+10
| | | | | Signed-off-by: Alexandre Belloni <alexandre.belloni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* Makefile: Fix KERNEL_ARCH for big endian ARCPeter Korsgaard2013-06-101-1/+1
| | | | | | Big endian ARC is called arceb, not arcbe. Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* Makefile: kickoff 2013.08 cyclePeter Korsgaard2013-06-021-1/+1
| | | | Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* Update for 2013.052013.05Peter Korsgaard2013-05-311-1/+1
| | | | Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* Update copyright info for 2013Peter Korsgaard2013-05-311-1/+1
| | | | Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* Update for 2013.05-rc32013.05_rc3Peter Korsgaard2013-05-251-1/+1
| | | | Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* Update for 2013.05-rc22013.05_rc2Peter Korsgaard2013-05-151-1/+1
| | | | Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* Update for 2013.05-rc12013.05_rc1Peter Korsgaard2013-05-081-1/+1
| | | | Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* armv8: Fix defconfig buildMaxime Ripard2013-05-061-1/+2
| | | | | | | | | | | Commit 14f48861 ("arc: Add ARC and ARC BE architecture") introduced a sed match against arc* buildroot architecture to translate it to arc. This causes a problem with armv8, which is called in buildroot aarch64, which is also matching, resulting in a build failure. Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* kernel-headers: Add support for ARC kernel headersMischa Jonker2013-05-041-0/+1
| | | | | | | Also make sure that older kernels are not selected for ARC. Signed-off-by: Mischa Jonker <mjonker@synopsys.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* Makefile: make skeleton rsync options consistentDanomi Manchego2013-05-021-2/+4
| | | | | | | | | | | | | | | | Initially, a "cp" was used for the one-time target skeleton installation, and an "rsync" was used for the every-time overlay skeleton installations. Then, the target skeleton install was changed to also use rsync (1cd3f992fb3659aacbb0cdd3ed64347a37569891). Now there are two rsyncs, but with different filter specs, which seems odd. This patch adds --excludes to both invocations of rsync to make them consistent, and removes the -u option from the initial target skeleton installation. Signed-off-by: Danomi Manchego <danomimanchego123@gmail.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* rootfs-overlay: use a make foreach instead of a shell forLuca Ceresoli2013-04-301-4/+3
| | | | | | | | | Makes the code uniform with the post-build and post-image implementation (which is slightly simpler and, presumably, more efficient). Signed-off-by: Luca Ceresoli <luca@lucaceresoli.net> Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Acked-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
* post-image: show each script filename before executionLuca Ceresoli2013-04-241-3/+1
| | | | | | | | | This also simplifies code by removing the ifneq/endif clauses. Signed-off-by: Luca Ceresoli <luca@lucaceresoli.net> Tested-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* post-build: show each script filename before executionLuca Ceresoli2013-04-241-3/+1
| | | | | | | | | | This also simplifies code by removing the ifneq/endif clauses. [Peter: drop extra space] Signed-off-by: Luca Ceresoli <luca@lucaceresoli.net> Tested-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* support/kconfig: add support for olddefconfigThomas Petazzoni2013-04-111-1/+7
| | | | | | | | | | | | | | | olddefconfig is a new target available in kconfig that allows to take an old .config file, and update it to the latest version of the code, without being asked for questions: it automatically assumes the default value for options whose value was not defined. It for example allows to take a minimal defconfig, copy it as .config, and do 'make olddefconfig' to get the full .config. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Acked-by: Gustavo Zacarias <gustavo@zacarias.com.ar> Tested-by: Gustavo Zacarias <gustavo@zacarias.com.ar> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* Makefile: simplify target skeleton copyingPeter Korsgaard2013-03-261-7/+2
| | | | | | | | | | | | | We already use the .root stamp file to remember if we have copied the skeleton, so we can remove the /bin check. Likewise, we should always have a TARGET_SKELETON (or explicitly error out otherwise), so remove that check as well. Finally, now that we're using rsync to do the copy, we might as well use its exclude support instead of cleaning up unwanted files afterwards. Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* Support .dotfiles in / being copied to the TARGETTilman Keskinöz2013-03-251-1/+1
| | | | | | | An example is .init_enable_core, to enable coredumps in busybox Signed-off-by: Tilman Keskinöz <arved@arved.at> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* unexport TERMINFO to correct ncurses behaviorNathan Lynch2013-03-241-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The ncurses build can become polluted by the user's TERMINFO environment variable, causing the user's ~/.terminfo to be modified and preventing the install from succeeding: /bin/sh ./run_tic.sh ** Building terminfo database, please wait... Running tic to install /home/nathanl/devel/buildroot.git/output/host/usr/i686-unknown-linux-gnu/sysroot/usr/share/emacs/24.0.97/etc/ ... You may see messages regarding extended capabilities, e.g., AX. These are extended terminal capabilities which are compiled using tic -x If you have ncurses 4.2 applications, you should read the INSTALL document, and install the terminfo without the -x option. 1562 entries written to /home/nathanl/.terminfo ** built new /home/nathanl/devel/buildroot.git/output/host/usr/i686-unknown-linux-gnu/sysroot/usr/share/emacs/24.0.97/etc/ installing std installing stdcrt installing vt100 installing vt300 make[2]: Leaving directory `/home/nathanl/devel/buildroot.git/output/build/ncurses-5.7/misc' make[1]: Leaving directory `/home/nathanl/devel/buildroot.git/output/build/ncurses-5.7' for i in $(find /home/nathanl/devel/buildroot.git/output/host/usr/i686-unknown-linux-gnu/sysroot/usr/lib* -name "*.la"); do cp -f $i $i~; /usr/bin/sed -i -e "s:\(['= ]\)/usr:\\1/home/nathanl/devel/buildroot.git/output/host/usr/i686-unknown-linux-gnu/sysroot/usr:g" $i; done >>> ncurses 5.7 Installing to target mkdir -p /home/nathanl/devel/buildroot.git/output/target/usr/lib cp -dpf /home/nathanl/devel/buildroot.git/output/build/ncurses-5.7/lib/libncurses.so* /home/nathanl/devel/buildroot.git/output/target/usr/lib/ ln -snf /usr/share/terminfo /home/nathanl/devel/buildroot.git/output/target/usr/lib/terminfo mkdir -p /home/nathanl/devel/buildroot.git/output/target/usr/share/terminfo/x cp -dpf /home/nathanl/devel/buildroot.git/output/host/usr/i686-unknown-linux-gnu/sysroot/usr/share/terminfo/x/xterm /home/nathanl/devel/buildroot.git/output/target/usr/share/terminfo/x cp: cannot stat `/home/nathanl/devel/buildroot.git/output/host/usr/i686-unknown-linux-gnu/sysroot/usr/share/terminfo/x/xterm': No such file or directory make: *** [/home/nathanl/devel/buildroot.git/output/build/ncurses-5.7/.stamp_target_installed] Error 1 So unexport TERMINFO in the top-level Makefile. Signed-off-by: Nathan Lynch <ntl@pobox.com> Acked-by: Gustavo Zacarias <gustavo@zacarias.com.ar> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* CMake packages: remove .cmake files from target directoryLuca Ceresoli2013-03-101-1/+3
| | | | | | | Just like pkgconfig files. Signed-off-by: Luca Ceresoli <luca@lucaceresoli.net> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* Kickoff 2013.05 cyclePeter Korsgaard2013-03-011-1/+1
| | | | Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* Update for 2013.022013.02Peter Korsgaard2013-02-281-1/+1
| | | | Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* Update for 2013.02-rc32013.02_rc3Peter Korsgaard2013-02-261-1/+1
| | | | Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* Update for 2013.02-rc22013.02_rc2Peter Korsgaard2013-02-191-1/+1
| | | | Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* Update for 2013.02-rc12013.02_rc1Peter Korsgaard2013-02-101-1/+1
| | | | Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* rootfs-overlay: also exclude .empty filesArnout Vandecappelle (Essensium/Mind)2013-02-081-1/+2
| | | | | | | | | This makes it possible to put empty directories in the overlay. Thanks to Aras Vaichas for pointing that out. Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be> Acked-by: Samuel Martin <s.martin49@gmail.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* Add a post-image script mechanismThomas Petazzoni2013-02-081-0/+9
| | | | | | | | | | | | | | | | | | | | Just like we have a post-build script mechanism that gets executed after the build of all packages but before the creation of the filesystem images, let's introduce a post-image script mechanism, that gets executed once all filesystem images have been generated. This can for example be used to call a tool building a firmware image from different images generated by Buildroot, or automatically extract the tarball root filesystem image into some location exported by NFS, or any other custom action. [Peter: fix image script check] Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Tested-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Acked-by: Luca Ceresoli <luca@lucaceresoli.net> Acked-by: Samuel Martin <s.martin49@gmail.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* Make savedefconfig save to a configured file.Arnout Vandecappelle (Essensium/Mind)2013-02-051-4/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | Store BR2_DEFCONFIG in .config, and use it to update the original input defconfig file after updating the configuration. When a config is created by using the BR2_DEFCONFIG=... option, this is saved in the .config file; later runs of savedefconfig will update that same location. It is also possible to configure this place in the interactive configuration. The BR2_DEFCONFIG value itself is not saved into the generated defconfig, since Kconfig considers it at its default. This is intentional, to avoid hard-coding an absolute path in the defconfig. It will anyway be set again when the defconfig is used with the 'make BR2_DEFCONFIG=... defconfig' command. As a side-effect of this change, the *config options have been moved out of the BR2_HAVE_DOT_CONFIG condition. This doesn't make any functional difference, because the .config is still not read for the *config targets. However, the defconfig and savedefconfig targets do need to include .config now, which makes them slightly slower. [Peter: slightly tweak help text] Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be> Acked-by: Luca Ceresoli <luca@lucaceresoli.net> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* target/generic: add filesystem overlay optionArnout Vandecappelle (Essensium/Mind)2013-02-051-0/+7
| | | | | | | | | | | The filesystem overlay is a tree that is copied over the target fs after building everything - which is currently usually done in the post-build script. [Peter: don't ignore missing directories] Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be> Acked-by: Luca Ceresoli <luca@lucaceresoli.net> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* Makefile: rename cross target -> toolchainFabio Porcedda2013-01-151-4/+5
| | | | | | | | | | | | | | | - Use a more descriptive name, the same of the "toolchain" directory. - Add missing dependencies to be able to successfully use the target right after the configuration. - Move to a better position. - Documentation it in the help target. - Use toolchain target in the world target Signed-off-by: Fabio Porcedda <fabio.porcedda@gmail.com> Reviewed-by: Markos Chandras <markos.chandras at imgtec.com> Acked-by: Arnout Vandecappelle (Essensium/Mind) <arnout at mind.be> Acked-by: Samuel Martin <s.martin49 at gmail.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* Integration with Buildroot Toolchain Eclipse pluginThomas Petazzoni2013-01-141-0/+7
| | | | | | | | | | | | | | | | | | The Eclipse plugin at https://github.com/mbats/eclipse-buildroot-toolchain-plugin allows users of Eclipse to easily use the toolchain available in Buildroot. To do so, this plugin reads ~/.buildroot-eclipse.toolchains, which contains the list of Buildroot toolchains available on the system, and then offer those toolchains to compile Eclipse projects. In order to interface with this plugin, this commit adds an option that allows the user to tell whether (s)he wants the Buildroot project toolchain to be visible under this Eclipse plugin. It simply adds a line in this ~/.buildroot-eclipse.toolchains file. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* Makefile: don't export O to the environmentPeter Korsgaard2013-01-141-1/+1
| | | | | | | | Several projects use the kernel style O=<dir> syntax to build out of tree, and atleast uClibc doesn't check that it was explictly passed on the command line, so setting it in the environment breaks the build. Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* Makefile: use newly-introduced BUILDROOT_CONFIGYann E. MORIN2013-01-131-8/+8
| | | | | Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* Makefile: export a few variables to help support scriptsYann E. MORIN2013-01-131-0/+11
| | | | | | | | | | | | | | | | | | | | | | | Support scripts (in support/) may need to parse the .config file, so give them an easy access to it, by exporting BUILDROOT_CONFIG with the fully- qualified path to .config. Also, post-build scripts may need to reference a few locations, so export those, too. Note: we export both O and BASE_DIR. Although they are the same, BASE_DIR is used internally, while O is used on the command line, which makes it a bit ambiguous to know which to use. As users use O= on the command line, they will probably tend to use that in their post-build scripts. Update doc accordingly. [Peter: fixed typo] Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Cc: Arnout Vandecappelle <arnout@mind.be> Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> cc: Peter Korsgaard <jacmet@uclibc.org> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* Makefile: system.mk rootfs modifications should be done before target-finalizePeter Korsgaard2013-01-091-1/+1
| | | | | | | So they don't override E.G. changes done in post build scripts (E.G. password settings). Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* Makefile: kickoff 2013.02 cyclePeter Korsgaard2012-12-021-1/+1
| | | | Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* Update for 2012.112012.11Peter Korsgaard2012-12-021-1/+1
| | | | Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* unexport PKG_CONFIG_SYSROOT_DIRCharles Manning2012-12-021-0/+1
| | | | | | | | | | If this is not done then pkg-config can get confused. Thomas and Arnout really deserve the credit for this - I just did the testing. Signed-off-by: Charles Manning <cdhmanning@gmail.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* {rand,allyes}packageconfig: ensure legacy test options don't get enabledPeter Korsgaard2012-12-011-0/+6
| | | | | | | The legacy BR2_PACKAGE_* options in Config.in.legacy are not supposed to be user selectable, so {rand,allyes}packageconfig shouldn't enable them. Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* Update for 2012.11-rc22012.11_rc2Peter Korsgaard2012-11-301-1/+1
| | | | Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* Makefile: fix thread libraries strippingRichard Braun2012-11-301-1/+9
| | | | | | | | | | | Strip libthread_db the same as any other library, but strip libpthread with --strip-debug. See the relevant mailing list discussion [1] for additional details. [1] http://lists.busybox.net/pipermail/buildroot/2012-October/060126.html Signed-off-by: Richard Braun <rbraun@sceen.net> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* pkg-infra: introduce errors for legacy APIArnout Vandecappelle (Essensium/Mind)2012-11-301-1/+6
| | | | | | | | | | | | | As discussed in the BR developer days, we want to be more strict about API changes in buildroot. I.e., we want to make it less likely that a user's customizations break down after upgrading buildroot. A first step is to make sure that the user is warned about API changes. This patch introduces Makefile.legacy and Config.in.legacy, which will issue clear error messages for such situations. Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* Update for 2012.11-rc12012.11_rc1Peter Korsgaard2012-11-171-1/+1
| | | | Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
* Allow to run severals post build scripts instead of only onePhilippe Reynes2012-11-171-2/+3
| | | | | | | | | Using severals post build scripts is usefull to share script between severals boards/projects. [Peter: fix trailing spaces in Config.in] Signed-off-by: Philippe Reynes <philippe.reynes@sagemcom.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>