In 2009.11, a number of extra files are needed to build mkimage. Adjust
the makefile to add those if available, so it builds with both 2009.11
and older releases.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Closes#757.
Make sure that /usr/bin/ exists, before trying to copy mkimage to that
location. When using an external toolchain, /usr/bin is not guarenteed to
exist.
Signed-off-by: Anders Darander <ad@datarespons.se>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
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>
u-boot 2009.06 changed the tools/ logic, and no longer adds symbolic
links to the needed library files in the tools directory.
Fix build by referencing the library files in their original location.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Provide link using "u-boot.bin"
Add BR2_TARGET_UBOOT_DEFAULT_ENV config
If this is set, Buildroot will generate
a default environment to allow easy downloading
of the kernel and root file system
Both as compile time data and an autoscript.
Make u-boot depend on $(U_BOOT_TARGETS)
Add "u-boot-autoscript" to U_BOOT_TARGETS if
BR2_TARGET_UBOOT_DEFAULT_ENV is set.
Take kernel name from Linux build.
Use correct ARCH when mkimaging the autoscript.
Do not use TARGET_ATMEL_COPYTO for generic u-boot.
Hide dataflash memory configurations when
different boot memory is used.
More u-boot build unbreaking. r24646 added U_BOOT_TARGET which uses the
nonexisting BOARDNAME variable, which means that the filename expands
to -u-boot-*, confusing ln.
There's limited point in having that symlink in the first please, so simply
revert that hunk.
mkimage the autoscript to autoscript.$(PROJECT)-
Move build of u-boot-1.2.0-atmel to target/u-boot
Only visible for AT91 targets.
Fetch prepatched 1.2.0-atmel tarball from $(BR2_ATMEL_MIRROR)
Rest from normal location.
Introduce U_BOOT_CONFIGURE_OPTS
Set to NOSOFT_FLOAT for u-boot-1.2.0-atmel
Disable target/device/Atmel/u-boot
Keep files in target/device/Atmel/u-boot during a test period.
Files:
M target/device/Atmel/Makefile.in
M target/device/Atmel/Config.in
M target/u-boot/Makefile.in
M target/u-boot/Config.in
A target/u-boot/1.2.0-atmel
Patch by Markus Heidelberg <markus.heidelberg@web.de>
Some $(call insert_define, ..., ...) calls were lacking the comma after
the variable. That didn't lead to a syntax error but it didn't have any
effect on the output u-boot/include/config.h
U_BOOT_ARCH seems to race with KERNEL_ARCH in some situations,
so it end up empty. It's only used once, so fix it by using a
use-time evaluated variable instead (=).