summaryrefslogtreecommitdiff
path: root/Makefile
AgeCommit message (Collapse)Author
2011-05-18Update for 2011.05-rc12011.05_rc1Peter Korsgaard
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-05-05Get rid of unneeded CFLAGSPeter Korsgaard
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-05Add toolchain wrapper for external toolchainsPeter Korsgaard
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-04-25Makefile: make help: show busybox/ctng/linux/uclibc-menuconfig if enabledPeter Korsgaard
For this we need to read .config. Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-04-25Makefile: remove outdated make targetsPeter Korsgaard
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-04Makefile: remove extra quotes around host linker flags for cygwinPeter Korsgaard
Closes #3541 Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-04-02Fix ccache handlingThomas Petazzoni
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-03-28hostcc/hostcxx: fix noccache variant settingMike Frysinger
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-01kickoff 2011.05 development cyclePeter Korsgaard
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-02-28Update for 2011.022011.02Peter Korsgaard
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-02-24Update for 2011.02-rc22011.02_rc2Peter Korsgaard
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-02-14Update for 2011.02-rc12011.02_rc1Peter Korsgaard
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-02-14Makefile: remove dead code (TARGET_SKELETON_PATCH)Bjørn Forsman
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-07initial support for Blackfin processorsMike Frysinger
[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-02toolchain: introduce HOST_DIR optionGustavo Zacarias
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-02Makefile: savedefconfig: save in O= directory for out-of-tree buildsPeter Korsgaard
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-02-01make help: document ncurses, make V=1 and make O=<dir>Peter Korsgaard
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-01-26Makefile: generate CMake toolchain-file in $(O)Bjørn Forsman
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-25Remove .py or .pyc depending on Python configurationThomas Petazzoni
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-13Update copyright info for 2011Peter Korsgaard
Happy newyear! Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2011-01-02toolchain: do staging symlinkGustavo Zacarias
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-02binutils: make it a proper packageGustavo Zacarias
* 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 3c77bab2eeace3ee675bd745ca335fa3dd1630bb 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>
2010-12-29Reset critical environment variablesDaniel Nyström
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-28toolchain: move sysroot to host dirGustavo Zacarias
* 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-13toolchain: add support for external toolchain profiles and downloadThomas Petazzoni
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-08ccache: rework ccache managementThomas Petazzoni
* 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-07Makefile: document savedefconfig in 'make help', like it's done in LinuxPeter Korsgaard
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-12-03buildroot: kickoff 2011.02 development phasePeter Korsgaard
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-11-30Update for 2010.112010.11Peter Korsgaard
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-11-30Makefile: introduce KSTRIPCMD to strip kernel modulesGustavo Zacarias
When sstrip is selected it tries to strip kernel modules too. Unfortunately this fails with a "unrecognized program segment header size" error thus interrupting the build process. We introduce a new $(KSTRIPCMD) strip command for this, being a regular strip when sstrip is selected and an empty stub when not stripping. At the same time get rid of the REMOVE_SECTION_* variables, as they are only used once. Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-11-28target-finalize: libtread_db: support nonstd toolchain setupsMike Frysinger
Certain toolchain configs (E.G. on blackfin), don't use symlinks, so the file name to match is the actual SONAME (.so.*). Support these toolchains as well. Signed-off-by: Mike Frysinger <vapier@gentoo.org> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-11-27target-finalize: do not strip libthread_dbJavier Viguera
Fix previous commit not to strip libthread_db library. In the previous commit the wildcard was incorrectly matching the symbolic link instead of the real library file. Signed-off-by: Javier Viguera <javier.viguera@digi.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-11-25Update for 2010.11-rc22010.11_rc2Peter Korsgaard
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-11-24target-finalize: do not strip libthread_db.soMike Frysinger
For proper threading debug support, the libthread_db.so library cannot be stripped on the target. This is because the target gdbserver will also load up this library at runtime and poke around its symbols. Signed-off-by: Mike Frysinger <vapier@gentoo.org> Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-11-24auto remove empty /usr/share dirMike Frysinger
Often times, the only reason /usr/share exists is because of documentation installed into it. So once we're done cleaning the docs, attempt to rmdir /usr/share. If it's empty, things will work out nicely. [Peter: use make infrastructure to ignore errors rather than shell] Signed-off-by: Mike Frysinger <vapier@gentoo.org> Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-11-24Makefile: really adjust kernel modules strip invocationPeter Korsgaard
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-11-24linux: strip installed modulesMike Frysinger
The installed kernel modules should have useless build cruft stripped out of them. On my system, a default build went from a very unreasonable 30MB to a normal 3MB (on disk) and from 14MB to 3MB when compressed due to the info stored in the kernel modules alone. [Peter: don't hardcode binutils strip specific options] Signed-off-by: Mike Frysinger <vapier@gentoo.org> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-11-24Makefile: remove outdated flush targetPeter Korsgaard
Not needed any more as we've removed the shared config.cache handling. Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-11-24Makefile: remove outdated .config.cmd handlingPeter Korsgaard
Not used anymore, and forcefully removes config if *config is aborted. Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-11-19Makefile: handle host packages for make source / make external-depsPeter Korsgaard
Ensure host packages (dependencies of target packages) are also handled by make source / make external-deps. This has to be done a explicitly, as we don't list these in Kconfig, and hence also not in a variable like TARGETS, so instead we have to look at the <PKG>_DEPENDENCIES variables for each enabled package and extract the host packages from there. Host packages can in turn also have dependencies, so we have to follow those as well. Ideally this should be done recursively, but as that's pretty hard to do in make, it is limited to 1 level for now. Finally, host packages share source files with target packages, so pipe output of make external-deps through sort -u to ensure duplicates are removed. Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-11-08Update for 2010.11-rc12010.11_rc1Peter Korsgaard
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-11-07Makefile: move target-{finalize,purgelocales} after bootloader/linux stepPeter Korsgaard
Closes #2731 Bootloader and Linux kernel steps can add content to the rootfs, so ensure the cleanup / postprocess steps are moved after those. Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-11-05Remove support for shared configuration cacheThomas Petazzoni
The configuration cache shared between packages, while being in principle a nice idea to speed-up the configuration of packages by avoiding repetitive identical checks, turned out to be unreliable due to the subtle differences between similar but not identical checks in different packages. After spending some time trying to fix those, we concluded that supporting the shared configuration cache is definitely too hard and too unreliable, and that we'd better get rid of it altogether. This patch therefore removes the shared configuration cache infrastructure and usage. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-11-04Makefile: fix release target with make 3.81Peter Korsgaard
It seems that target-specific variables don't mix with target rules. Thanks to Yann for helping debugging the issue. Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-11-03Makefile: use global version string in /etc/br-versionYann E. MORIN
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-11-03Makefile: compute the version string for all to useYann E. MORIN
Some packages use the buildroot version string (to set their own version string). Computing the version string globally will makes it easy for them to use it instead of re-computing it in every packages. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-11-03Makefile: move version string from Config.in into MakefileYann E. MORIN
This re-instates writing the version string in .config headers, and no longer provides it as a kconfig symbol in .config (it is now a variable in the Makefile, and in the environment). Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-11-03Makefile: move .NOTPARALLELYann E. MORIN
Move it down, users should not mess with it. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-10-29Optimize (-O2) host binaries by defaultPeter Korsgaard
Default HOST_CFLAGS to -O2, so host tools (like the cross compiler) are built with optimization by default. Based on a patch by Will Newton <will.newton@gmail.com>. Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-10-17Makefile: move KERNEL_ARCH from kernel-headers to herePeter Korsgaard
Closes #2707 It's not only for kernel headers, and the kernel headers .mk file isn't included for crosstool-ng toolchain, which broke linux/u-boot/.. builds. Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>