Commit Graph

131 Commits

Author SHA1 Message Date
Thomas Petazzoni
55098e5048 busybox: make sure architecture flags are used at link time
When compiling Busybox, according to readelf -A, all object files were
properly compiled according to the select architecture (-march=armv4t
for example), but the final busybox binary could be of a different
architecture (ARMv5t even if ARMv4t was selected).

This patch changes the way we configure/compile Busybox so that our
CFLAGS aren't anymore passed through the make EXTRA_CFLAGS variable,
but through the .config CONFIG_EXTRA_CFLAGS variable. Unfortunately,
those variables don't have exactly the same semantic for the Busybox
build system.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2010-04-17 02:10:58 +02:00
Thomas Petazzoni
7a0263525f Remove BR2_PREFER_IMA
This option is barely used, no-one is maintaining it or extending
it. So let's remove it.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2010-04-11 05:59:59 +02:00
Peter Korsgaard
3ef9b6969c busybox: respect BR2_PREFER_STATIC_LIB
Build static version if requested in BR config.

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2010-04-05 13:29:01 +02:00
Peter Korsgaard
57922bfbf3 busybox: look at kernel headers for include files as well
E.G. for flash_* applets.

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2009-11-28 14:25:13 +01:00
Thomas Petazzoni
397fe5cc0b Remove the "project" feature
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>
2009-09-16 20:28:25 +02:00
Thomas Petazzoni
3c35d55ea9 packages: use qstrip
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2009-09-05 14:43:17 +02:00
Will Newton
422ce6536b package: Remove unnecessary dependencies on uclibc.
A C library will have been built by the toolchain makefiles, so there is no
need for packages to explicitly depend on uclibc.

Signed-off-by: Will Newton <will.newton@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2009-09-03 20:22:38 +02:00
Peter Korsgaard
4ae691ecb9 busybox: also enable ipv6 support in ifupdown if ipv6 support is enabled
Reported by: Chris Smith <chris.smith@tandberg.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2009-08-24 23:27:53 +02:00
Peter Korsgaard
ab5208886e busybox: autodetect nfs mount support based on BR2_INET_RPC setting
Override nfs mount support based on BR2_INET_RPC setting, so BR will DTRT.
This way you will automatically get NFS support in busybox if available in
the toolchain, and the build won't break if the defconfig enables it but
the user has it disabled in the toolchain.

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2009-06-22 15:28:36 +02:00
Peter Korsgaard
8843ded099 busybox: fix brown paper bag typo introduced in a7ed91a
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2009-05-26 22:49:06 +02:00
Peter Korsgaard
a7ed91a957 busybox: additional 1.14.0 fixes
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2009-05-19 12:01:57 +02:00
Peter Korsgaard
55b03d6115 busybox: remove ancient versions 2009-04-15 13:42:08 +00:00
Peter Korsgaard
c19a51f993 busybox: add 1.14.x 2009-04-15 13:42:03 +00:00
Peter Korsgaard
6e7f92310a busybox: rebuild if .config changed
As reported on irc - Fixes busybox-menuconfig
2009-01-29 11:29:49 +00:00
Peter Korsgaard
85d756d5cc busybox: remove unused handling of ancient versions no longer in BR 2009-01-29 11:27:20 +00:00
Peter Korsgaard
4a7bfd2775 package/: convert to DOWNLOAD helper 2009-01-16 11:42:52 +00:00
Peter Korsgaard
82569c48fe busybox: fixup id applet on 1.13.0 for old uclibc versions
The id applet in 1.13.0 only compiles with uclibc < 0.9.30 if the
busybox internal passwd/grp functions are used.

Therefore, automatically enable CONFIG_USE_BB_PWD_GRP if that situation
is detected and warn the user.
2008-11-21 14:36:48 +00:00
Peter Korsgaard
bf4c77cca0 busybox: fix missing dependencies in unpacked and config rules
Aadds dependency to host-sed and $(PROJECT_BUILD_DIR) when running
make busybox-config and busybox-unpacked.

Signed-off-by: Hans-Christian Egtvedt <hans-christian.egtvedt@atmel.com>
2008-08-06 12:56:31 +00:00
John Voltz
69ae3cec84 confusing busybox config option description patch, busybox can be built as shared libs, hardlinks ... etc. rename to full install. Patch from Nigel Kukard 2008-03-21 17:56:00 +00:00
Peter Korsgaard
1af1c77554 busybox: remove config dependency on busybox-source
busybox-source target doesn't need to depend on the config file.
Patch by Simon Pasch.
2008-03-11 08:17:03 +00:00
Bernhard Reutner-Fischer
14a71561a3 - just use the strip binary to avoid confusing libtool (quotes)
- use $(STRIPCMD) in packages to avoid clashes with $(STRIP)
2007-10-01 16:15:31 +00:00
Bernhard Reutner-Fischer
b1681007f1 - no need to $(strip ..) bool/tristate values (Cristian Ionescu-Idbohrn) 2007-09-30 12:48:25 +00:00
Ulf Samuelsson
6acce2cf1f Add more management to linux and buysbox packages 2007-09-26 22:12:51 +00:00
Bernhard Reutner-Fischer
5f0baad293 - remove inadequate dependencies prerequisite.
If needed, this should be done slightly different, otherwise the source target runs dependencies, which is not correct.
2007-09-22 10:25:09 +00:00
Bernhard Reutner-Fischer
6547bced93 - global whitespace trimming 2007-08-22 12:35:41 +00:00
Bernhard Reutner-Fischer
6c6cb06709 - sed -i -e "/;$/s/;$//g" $(egrep ";$" package/* package/*/*.mk toolchain/* toolchain/*/*.mk */Makefile.in -l) 2007-08-21 19:20:18 +00:00
Ulf Samuelsson
412ca2a4d4 BSP Patch:
=========================================================
	The purpose of the BSP patch is to allow building
	several boards inside the same buildroot tree.
	For this to work, each board has to have its
	own "$(TARGET_DIR)" and all *configurable* packages
	must be rebuilt for each board.
	They are now built in the "$(PROJECT_BUILD_DIR)"
	All non configurable packages can and should still
	be built in the "$(BUILD_DIR)".
	If a package is built for one board, then when
	you build for a second board of the same architecture
	the build becomes a simple copy of the resulting
	binaries.

	-----
	Define BR2_PROJECT which will be used as the selector
	between different boards. Note that BR2_PROJECT allow
	you to build multiple root file systems for a single 
	board, and should not be confused with BR2_BOARD_NAME
	which relates to the H/W.

	-----
	Define PROJECT_BUILD_DIR as 	"PROJECT_BUILD_DIR/$(PROJECT)"
	Define BINARIES_DIR as 		"binaries/$(PROJECT)"
	Define TARGET_DIR as		"$(PROJECT_BUILD_DIR)/root"
	(some prefix/postfix may apply)

	Resulting images are stored in	"$(BINARIES_DIR)"

	-----
	Define a few new environment variables in Makefile

	PROJECT:	Stripped BR2_PROJECT
	DATE:		Date of build in YYYY-MM-DD format
	HOSTNAME:	Stripped BR2_HOSTNAME	=> /etc/hostname
	BANNER:		Stripped BR2_BANNER	=> /etc/issue

	Linux and Busybox will be built in $(PROJECT_BUILD_DIR)
	More patches will be needed later to ensure all
	configurable packages are built in this directory.
2007-07-12 13:11:03 +00:00
Bernhard Reutner-Fischer
d99aa31062 - CONFIG_FDISK_SUPPORT_LARGE_DISKS depends on LFS 2007-07-08 12:10:21 +00:00
Bernhard Reutner-Fischer
e89cffadee - use BR2_INET_IPV6 2007-06-27 21:07:09 +00:00
"Steven J. Hill"
58ef6b3ca7 If any of the netkit packages were selected, we disable their counterparts in Busybox and warn the user. 2007-05-07 04:04:34 +00:00
Bernhard Reutner-Fischer
d5b53a1763 - strip quotes. Thanks to Heikki Lindholm for pointing this out. 2007-03-24 12:08:57 +00:00
Bernhard Reutner-Fischer
e835e0e2a3 - make sure we have a build_$arch dir for -menuconfig even when in a pristine checkout 2007-03-23 13:26:51 +00:00
Bernhard Reutner-Fischer
d7d4d7f220 - bump version 2007-03-23 13:24:56 +00:00
Bernhard Reutner-Fischer
415d655a74 - simplify busybox version fiddling 2007-03-20 09:51:37 +00:00
Bernhard Reutner-Fischer
d9ae4dd945 - add busybox-1.4.2 2007-03-20 08:53:17 +00:00
Peter Korsgaard
4e65a9271e Set CONFIG_PREFIX for all versions 2007-02-23 11:55:27 +00:00
Bernhard Reutner-Fischer
df0d821460 - add skeleton to use busybox and mdev for a rather small skeleton 2007-02-16 14:32:22 +00:00
Peter Korsgaard
b79483adc1 Made _DIR/_SOURCE/_SITE common for all non-snapshot versions 2007-02-06 16:34:54 +00:00
Peter Korsgaard
94ffbabaa3 v1.0.1 tarball is called busybox-1.01 2007-02-06 16:31:59 +00:00
Peter Korsgaard
0d809dde0b CONFIG_PREFIX hack (r17670) no longer needed 2007-02-06 16:23:33 +00:00
Peter Korsgaard
7deacb0d2d busybox 1.4.1 support 2007-02-06 16:18:12 +00:00
Bernhard Reutner-Fischer
5776937251 - fix patch application. Use busybox-$(VER)-\*.patch for versions and busybox.\*.patch for snapshot 2007-01-31 14:21:08 +00:00
Peter Korsgaard
446f4f912d busybox 1.4.0 seems to use CONFIG_PREFIX instead of PREFIX 2007-01-30 16:47:27 +00:00
Peter Korsgaard
799b1ee4fe Busybox 1.4.0 support 2007-01-30 13:36:10 +00:00
Bernhard Reutner-Fischer
93ab6d3021 - add an experimental BR2_PREFER_IMA.
Currently disfunctional for gcc-4.2 due to PR30620 and possibly others
2007-01-28 12:03:58 +00:00
Bernhard Reutner-Fischer
f6c0fd635a - copy the _CONFIG_FILES back
- use the BUSYBOX_CONFIG_FILE if specified by the user
2007-01-19 14:17:34 +00:00
Bernhard Reutner-Fischer
b3d0f31bdc - make sure to agree on the installation CONFIG_PREFIX 2006-12-13 22:51:37 +00:00
Eric Andersen
162a23c220 update busybox defaults a bit 2006-12-13 09:14:10 +00:00
Eric Andersen
5ec906557c let people select different versions of busybox to suit their needs 2006-12-13 06:58:14 +00:00
Bernhard Reutner-Fischer
7ba97716ce - pass the target (kernel-) arch in. 2006-12-07 16:31:21 +00:00
Bernhard Reutner-Fischer
110f7dbfbf - adjust busybox-source dependencies 2006-12-02 18:36:04 +00:00
Bernhard Reutner-Fischer
6e2823c1fa - add and use BR2_BZCAT config option. 2006-11-17 15:43:51 +00:00
Bernhard Reutner-Fischer
3e2f3e5579 - Adjust the install prefix for current busybox. 2006-11-17 12:57:21 +00:00
Bernhard Reutner-Fischer
0032d37174 - newer busyboxen want CROSS_COMPILE rather than the old CROSS. 2006-11-17 11:37:47 +00:00
Bernhard Reutner-Fischer
870cb9e826 - check if busybox' Rules.mak exists.
- add target dirs to ensure that all required dirs do exist so make busybox-menuconfig works in a pristine checkout.
2006-11-17 11:21:23 +00:00
Peter Korsgaard
31e658dc24 Bump to upstream v1.2.2 2006-10-25 08:10:26 +00:00
Bernhard Reutner-Fischer
302ac099bb - repair deps. 2006-08-29 16:45:47 +00:00
Bernhard Reutner-Fischer
9752387b89 - make sure that the prerequisites of 'make busybox-menuconfig' are met 2006-08-24 19:48:31 +00:00
Peter Korsgaard
54044da973 Bump to upstream v1.2.1 2006-07-31 16:01:15 +00:00
Eric Andersen
9377ea7149 fix dependancy 2006-07-09 00:38:38 +00:00
Bernhard Reutner-Fischer
df1496abee - busybox recently renamed CROSS to CROSS_COMPILE. Pass in both for now. 2006-07-05 11:23:17 +00:00
Peter Korsgaard
d503cac9fa Bump to upstream v1.1.3 2006-05-18 17:36:17 +00:00
Eric Andersen
ef9e8c4fec per bug 825, bump busybox to stable rev 1.1.2 2006-04-11 17:29:42 +00:00
Mike Frysinger
8ca0e33cd1 ver bump 2006-01-16 09:40:13 +00:00
Mike Frysinger
0b940a8ed1 make updating configs easier 2005-11-15 06:47:15 +00:00
Mike Frysinger
dba033e7a4 add an option for installing symlinks for supported busybox applets #536 2005-11-10 02:59:20 +00:00
Eric Andersen
f2dd639c9f if we have external syslogd, force busybox to use it 2005-09-13 21:04:12 +00:00
Mike Frysinger
257dcdeabf busybox-1.01 has been released 2005-08-18 02:04:15 +00:00
Eric Andersen
369864cf10 be a bit more consistant with naming, always escape wildcards 2005-06-24 08:36:13 +00:00
Eric Andersen
9fc890fc1f Make busybox config file location a config option 2005-04-12 20:32:45 +00:00
Eric Andersen
2460dadf07 Trivial updates 2005-02-25 01:30:13 +00:00
Eric Andersen
6970a92158 give uclibc and busybox config files consistant variable names 2005-02-15 22:48:08 +00:00
Eric Andersen
d06645d8ed There is no need to have a separate 'Makefile.in' file in the
general case, therefore, combine the toplevel Makefile options
such as setting TARGETS into the per-package *.mk file
2005-02-10 03:06:39 +00:00
Mike Frysinger
b715166993 merge some updates from George Joseph 2005-01-11 03:05:11 +00:00
Mike Frysinger
c04d0fca9a busybox 1.00 2004-10-13 18:37:16 +00:00
Eric Andersen
e697a16e5a Andrew May writes:
A few more little ones.

busybox fdisk with large files should be removed without large files.

gdbtarget/gdb_client got mixed up in the Makefile.in.
I think gdbtarget should have a depend on ncurses but I am not
sure if it should go in the config or in the .mk.
It may be nice to split out the server and client.

uclibc.mk was checking BR2_SOFT_FLOAT for true not y.
2004-10-10 01:12:46 +00:00
Eric Andersen
bb05a9ad46 Make the TAR_VERBOSITY option a bit more sane 2004-10-09 21:19:47 +00:00
Mike Frysinger
3a7b488366 use $(TAR_VERBOSITY) 2004-10-09 19:05:40 +00:00
Mike Frysinger
40fbbbad2a add support for using busybox snapshot 2004-10-09 18:00:34 +00:00
Eric Andersen
44eedc5c44 facelift step number two 2004-10-09 02:49:33 +00:00
Eric Andersen
2d523c2317 Major buildroot facelift, step one.
-Erik
2004-10-09 01:06:03 +00:00