summaryrefslogtreecommitdiff
path: root/Makefile
AgeCommit message (Collapse)Author
2010-07-01Makefile: fixup make distclean after kconfig build in BUILD_DIRPeter Korsgaard
We don't actually need to explicitly clean the kconfig stuff, as distclean already removes the entire BUILD_DIR, but fix up the packag/config makefile to do the right thing if make clean/distclean is called manually for completeness. Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-06-29Fix: convert leftover $(CONFIG)/conf to $(BUILD_DIR)/buildroot-config/confDaniel Hobi
Signed-off-by: Daniel Hobi <daniel.hobi@schmid-telecom.ch> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-06-22Remove old Linux infrastructureThomas Petazzoni
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2010-06-22New, simpler, infrastructure for building the Linux kernelThomas Petazzoni
This patch introduces a single, simple, infrastructure to build the Linux kernel. The configuration is limited to : * Kernel version: a fixed recent stable version, same as kernel headers version (for internal toolchains only), custom stable version, or custom tarball URL * Kernel patch: either a local file, directory or an URL * Kernel configuration: either the name of a defconfig or the location of a custom configuration file * Kernel image: either uImage, bzImage, zImage or vmlinux. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2010-06-21kconfig: build in BUILD_DIR/buildroot-configPeter Korsgaard
This way the main buildroot dir can be completely read-only for out-of-tree builds Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-06-21Makefile: fix make <blah>_defconfigPeter Korsgaard
Make sure we only pass O=<path> if we were originally called like that, otherwise we might end up looking for the .config in the wrong place. Likewise, when changing between using O= or not (or simply running make <blah>_defconfig in a pristine source tree), we do end up having a .config, but no .config.cmd. It isn't really critical so just continue even if we couldn't read it. Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-06-21Move config files into output directory for out-of-tree buildWill Wagner
Closes #1213 Signed-off-by: Will Wagner <will_wagner@carallon.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-06-15toolchain: remove gcc 4.1.2 and non-sysroot supportPeter Korsgaard
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-06-10bootloaders: move bootloader build code to boot/Thomas Petazzoni
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2010-06-05Makefile: support gconfig (GTK-based configurator) similar to xconfigPeter Korsgaard
Support the GTK variant of the graphical kconfig configurator as an alternative to the Qt3-based one. Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-06-05Makefile: cleanup *conf targetsPeter Korsgaard
The make targets for the kconfig conf/mconf/qconf are almost identical, so us a single rule for it. Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-05-27Merge branch 'graph-dependencies' of ↵Peter Korsgaard
git://git.busybox.net/~tpetazzoni/git/buildroot
2010-05-21Makefile: move filesystem stuff after u-boot build againPeter Korsgaard
Otherwise u-boot tools / kernel modules are only added to target AFTER the filesystems are built. Long term u-boot/kernel stuff should get splitted from target/device, but this is the safest solution for now. Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-05-21Add a show-targets targetThomas Petazzoni
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2010-05-06Makefile: make GNU_HOST_NAME a simply expanded variable (:=)Peter Korsgaard
GNU_HOST_NAME is referred more than 100 times in the tree, used 5 times during startup, and is relatively expensive to run - so make it a simple expanded variable (:=) rather than recursively expanded one (=). Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-05-05Remove gtk-doc documentations from targetPaulius Zaleckas
On my target rootfs it is installed documentation for: atk, cairo, gdk, gdk-pixbuf, gio, glib, gobject, gtk, pango It ocupies 34M of space. Configure option --disable-gtk-doc doesn't prevent installation of it. So we should remove them manually if documentation is disabled. [Peter: also remove manual rm's from hal/libxml2/libglade] Signed-off-by: Paulius Zaleckas <paulius.zaleckas@gmail.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-05-03Remove BR2_GNU_TARGET_SUFFIX and compute GNU_TARGET_NAMEThomas Petazzoni
Instead of asking the user about the GNU target suffix, just compute it automatically from the other configuration options. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-05-03Commonalize the definition of TOOLCHAIN_DIRThomas Petazzoni
The definition of TOOLCHAIN_DIR is the same regardless of whether external or internal toolchains are used. Moreover, move its definition together with all the other *_DIR definitions. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-04-11Get rid of unused variablesThomas Petazzoni
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2010-04-11Guess build system and remove BR2_GNU_BUILD_SUFFIXThomas Petazzoni
Instead of having a configuration option BR2_GNU_BUILD_SUFFIX, let's use config.guess to guess the build system type. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2010-04-11Remove all documentation when BR2_HAVE_DOCUMENTATION is not setThomas Petazzoni
Until now, we had BR2_HAVE_MANPAGES, BR2_HAVE_INFOPAGES and BR2_HAVE_DOCUMENTATION, but there's no need to have such a fine-grained control over what documentation gets kept or not. Therefore, just remove all the documentation (man pages, info pages and documentation in $(TARGET_DIR)/usr/doc and $(TARGET_DIR)/usr/share/doc) when BR2_HAVE_DOCUMENTATION is not set. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2010-04-09Move all filesystem generation code to fs/Thomas Petazzoni
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2010-04-05Makefile: out-of-tree fix for uclibc 0.9.31Peter Korsgaard
Strangely enough O is still passed to submakes with MAKEOVERRIDES (with make 3.81 atleast), the only thing that changes is the output of the origin function (command line -> environment). Unfortunately some packages don't look at origin (E.G. uClibc 0.9.31+) To really make O go away, we have to override it. Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-03-31toolchain: prepare for more than two alternativesYann E. MORIN
Lay down the path to add more than two toolchain kinds: - check the type of toolchain as: ifeq (toolchain_buildroot,y) blabla buildroot-specific else ifeq (toolchain_external,y) blabla external-specific endif - prefer using positive checks, a-la: ifeq (foo,y) instead of: ifneq (bar,y) (where foo and bar are mutually exclusive) - have the toolchain_buildroot case always appear first - gettext is handled differently, because we want to add an option only if not using the buildroot toolchain, hence we use ifneq. Signed-off-by: Yann E. MORIN <yann.morin.1998@anciens.enib.fr> Acked-By: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-02-24buildroot: we're in 2010 nowPeter Korsgaard
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-02-09Create $(STAGING_DIR)/usr/bin unconditionnallyThomas Petazzoni
This fixes the build of libcap, with external toolchain, when it is the first package being built. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2010-02-09Makefile: release: use git archivePeter Korsgaard
Create tarballs with git-archive so we're sure they don't contain anything not in git (E.G. local backup configs). Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-02-09toolchain/gdb: get rid of another legacy and unused variableYann E. MORIN
BR2_VENDOR_GDB_VERSION and VENDOR_GDB_VERSION are no longer settable. The only user is gdb, and it's totally useless in this case. Signed-off-by: Yann E. MORIN <yann.morin.1998@anciens.enib.fr> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-02-08toolchain/gdb: get rid of legacy & unused variablesYann E. MORIN
The BR2_VENDOR_SUFFIX and VENDOR_SUFFIX variables are no longer settable. The only user is gdb, and is totally useless in this case. Signed-off-by: Yann E. MORIN <yann.morin.1998@anciens.enib.fr> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2009-12-23Remove backup-files from the TARGET_DIR.Anders Darander
Closes #823. ~ is commonly used as a suffix to editor backup files. Remove these files, just as we remove CVS-directories and .empty-files. [Peter: tweaked to remove in same find invocation as .empty] Signed-off-by: Anders Darander <ad@datarespons.se> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2009-12-14Use BR2_TOOLCHAIN_BUILDROOT instead of BR2_TOOLCHAIN_SOURCEThomas Petazzoni
The BR2_TOOLCHAIN_SOURCE option is removed in a future commit. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2009-12-13Makefile: fix build if CDPATH is set in environmentPeter Korsgaard
Reported by Bjørn Forsman <bjorn.forsman@gmail.com>. If CDPATH is set in the environment, cd <dir> will print the absolute path of <dir>, causing various trouble (The most critical being BASE_DIR ending up as <path> <path> which breaks basically everything). Fix it by clearing CDPATH. Notice that export doesn't affect the environment of $(shell ..) calls, so explicitly throw away any output from cd in the BASE_DIR shell call. Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2009-12-12Makefile: document configure cache handlingPeter Korsgaard
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2009-12-12Makefile: drop config cache on .config changesPeter Korsgaard
The config cache might contain invalid values when .config is changed (E.G. when adding/removing libraries), so drop it so config checks are rerun for new packages (existing package still won't be rebuilt). Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2009-11-30Makefile: use absolute path for TOPDIRPeter Korsgaard
Reported by mr_claus on IRC. This ensure DL_DIR is always an absolute path, like it was before the build dir reorganization - Fixes vim (patch) build. Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2009-11-20Makefile: cleanup *clean targetsPeter Korsgaard
As discussed on the list, fixup the *clean targets, so we now have: clean: remove all generated files (E.G. everything in output/) distclean: same as clean, but also remove the kconfig build and .config Also tweak 'make help' output to match. This also merges the two different clean / distclean targets we had depending on if there was a .config present or not (most variables are not defined for !.config case, so E.G. the clean target ends up being a noop). Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2009-10-04buildroot; move defconfigs to configs/ and print in helpPeter Korsgaard
As discussed earlier on the mailing list. It simplifies code, gives more sensible error message on typos and makes the defconfigs easier to find for users. Furthermore, update documentation to match. Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2009-10-04Makefile: add rand/allyes/allno package config targetsPeter Korsgaard
Similar to the normal targets, but only affects the BR2_PACKAGE_* options. E.G. handy for keeping your current toolchain config while testing (random) packages. Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2009-10-04Makefile: update help textPeter Korsgaard
get rid of the removed saveconfig/getconfig targets, and instead document randconfig/defconfig/allyesconfig/allnoconfig. Furthermore, get rid of the unused tags target. Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2009-09-30Makefile: reinstate /etc/br-versionPeter Korsgaard
Got lost in the recent cleanup, but is handy to know BR version. Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2009-09-30Makefile: be more quiet when make -s is usedPeter Korsgaard
Somehow got lost in the recent reorganisation. Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2009-09-23Makefile: Remove ancient 'sourceball' targetMichael Roth
Signed-off-by: Michael Roth <mroth@nessie.de> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2009-09-23Remove unneeded trailing slash from TOPDIRMichael Roth
Signed-off-by: Michael Roth <mroth@nessie.de> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2009-09-23Move download directory 'dl' back to the top hierachy of buildrootMichael Roth
Signed-off-by: Michael Roth <mroth@nessie.de> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2009-09-23rename TOOL_BUILD_DIR to TOOLCHAIN_DIRMichael Roth
To reflect the new output directory hierachy rename the Makefile variable TOOL_BUILD_DIR to TOOLCHAIN_DIR. Signed-off-by: Michael Roth <mroth@nessie.de> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2009-09-16Rename the output directoriesThomas Petazzoni
In the output directory, we now have - build/ where all the packages are built - images/ where the final kernel and rootfs images are stored - staging/ the staging directory (containing the development files and libraries compiled for the target) - target/ which contains the target root filesystem - host/ which contains all the host programs - stamps/ which contains the stamps files Therefore, the build_ARCH and toolchain_build_ARCH have been removed. People willing to use the same Buildroot sources to compile for different architectures are invited to use the O= command line option for out-of-tree compilation. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2009-09-16Remove BR2_TOPDIR_PREFIX and BR2_TOPDIR_SUFFIXThomas Petazzoni
The same effect can be done using out-of-tree build with O= Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2009-09-16By default, put the output in an output/ directoryThomas Petazzoni
Instead of putting all the build-related stuff as a mess in the Buildroot sources, group them in an output/ directory. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2009-09-16Remove the BOARD/LOCAL featureThomas Petazzoni
This can be achieved by adding a new target in target/device/, and I will later propose a mechanism to add external boards and packages, so that our users not willing to get their target-specific or package-specific things merged can keep them cleanly separated from Buildroot tree. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2009-09-16Remove the "project" featureThomas Petazzoni
The "project" feature was designed to allow to several projects to be built inside the same Buildroot source tree and allowing the toolchain and non-configurable packages to be shared between the different projects on the same architecture. While being interesting in theory, this feature adds a level of complexity to Buildroot, both from an user perspective and from a developer perspective, while one of the main Buildroot strengh is to be simple. Moreover, this feature is only seldomly used by our users. From a user-level perspective, this for example allows to remove the project_build_ARCH directory, which was very confusing. The autotools-stamps directory is also removed, since these stamps are back at their normal location. Description of the changes involved : * project/, directory removed * Makefile - Don't include project/Makefile.in and project/project.mk anymore - Grab a copy of the contents of project/Makefile.in at the location it was imported, but remove the definition related to PROJECT_BUILD_DIR. The TARGET_DIR is now in $(BUILD_DIR)/target_dir - Remove the creation/removal of the $(PROJECT_BUILD_DIR) and $(PROJECT_BUILD_DIR)/autotools-stamps directories - Don't make world depends on target-host-info. This target was defined by project/project.mk to customize /etc/issue, /etc/hostname and create /etc/br-version depending on the project definitions. We can of course imagine re-adding such a feature later. - Replace PROJECT_BUILD_DIR by BUILD_DIR everywhere - Remove the update, log and lognr.$(PROJECT) target, they were specific to the project feature. * package/Makefile.autotools.in - Replace PROJECT_BUILD_DIR by BUILD_DIR for the location of the configure cache - Move the INSTALL_TARGET and HOOK_POST_INSTALL stamps to the same directory as the other stamps (i.e, in the package directory). * package/Makefile.in - Replace PROJECT_BUILD_DIR by BUILD_DIR for the location of the configure cache * package/at/at.mk, package/busybox/busybox.mk, package/busybox/initramfs.mk, package/customize/customize.mk, package/linux-fusion/linux-fusion.mk, package/ltp-testsuite/ltp-testsuite.mk, package/nfs-utils/nfs-utils.mk, target/cpio/cpioroot.mk, target/cramfs/cramfs.mk, target/device/Atmel/DataFlashBoot/DataflashBoot.mk, target/device/Atmel/Makefile.in, target/device/Atmel/at91bootstrap/at91bootstrap.mk, target/device/KwikByte/Makefile.in, target/ext2/ext2root.mk, target/initramfs/initramfs.mk, target/iso9660/iso9660.mk, target/jffs2/jffs2root.mk, target/linux/Makefile.in, target/romfs/romfs.mk, target/squashfs/squashfsroot.mk, target/tar/tarroot.mk, target/ubifs/ubifsroot.mk - Replace PROJECT_BUILD_DIR by BUILD_DIR * target/device/Config.in - Do not include project/Config.in anymore * target/linux/Makefile.in.advanced - Replace PROJECT_BUILD_DIR by BUILD_DIR - Store the stamps file in $(STAMP_DIR) instead of $(PROJECT_BUILD_DIR)/autotools-stamps * target/u-boot/Makefile.in - Replace PROJECT_BUILD_DIR by BUILD_DIR - Remove $(PROJECT) from the U-Boot target binary name - Remove the insertion in the configuration of the project name as the hostname - The u-boot-autoscript target now generates $(U_BOOT_AUTOSCRIPT).img instead of $(U_BOOT_AUTOSCRIPT).$(PROJECT) * toolchain/gcc/gcc-uclibc-3.x.mk toolchain/gcc/gcc-uclibc-4.x.mk - Move the stamps files to $(STAMP_DIR) Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>