summaryrefslogtreecommitdiff
path: root/Makefile
AgeCommit message (Collapse)Author
2014-02-19Makefile: move some variable definitions to the top MakefileMasahiro Yamada
This commit moves some variable definitions from config.mk to the top Makefile: - HOSTCC, HOSTCFLAGS, HOSTLDFLAGS - AS, LD, CC, CPP, etc. - SHELL (renamed to CONFIG_SHELL) I'd like to slim down config.mk file because it is included from all recursive make. It is redundant to re-define the variables every time descending into sub directories. We should rather define them at the top Makefile and export them. U-Boot makefiles has been used "SHELL" variable to store shell chosen for the user, whereas Linux Kernel uses "CONFIG_SHELL". We should never use "SHELL" variable because it is a special variable for GNU Make. Changing SHELL may cause unpredictable side effects whose root cause is usually difficult to find. We should use a generic variable name "CONFIG_SHELL". We should not use the syntax as follows either: rm -f $(obj)tools/env/{fw_printenv,fw_setenv} This depends on "bash" although GNU Make generally invokes "sh" to run the each rule. Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
2014-02-19nand-spl: Use scripts/Makefile.buildMasahiro Yamada
Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
2014-02-19examples: Use scripts/Makefile.buildMasahiro Yamada
Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
2014-02-19board: samsung: refactor host programsMasahiro Yamada
Some Samsung boards have their own tools under board/samsung/<board>/tools/. This commit refactor more makefiles with "hostprogs-y". Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
2014-02-19tools: convert makefiles to kbuild styleMasahiro Yamada
Before this commit, makefiles under tools/ directory were implemented with their own way. This commit refactors them by using "hostprogs-y" variable. Several C sources have been added to wrap other C sources to simplify Makefile. For example, tools/crc32.c includes lib/crc32.c Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
2014-01-21powerpc:Rename CONFIG_PBLRCW_CONFIG & CONFIG_SYS_FSL_PBL_PBIPrabhakar Kushwaha
Rename CONFIG_PBLRCW_CONFIG and CONFIG_PBLRCW_CONFIG. Also add their details in README. Signed-off-by: Prabhakar Kushwaha <prabhakar@freescale.com> Reviewed-by: York Sun <yorksun@freescale.com>
2014-01-20Prepare v2014.01v2014.01Tom Rini
Signed-off-by: Tom Rini <trini@ti.com>
2014-01-13Prepare v2014.01-rc3v2014.01-rc3Tom Rini
Signed-off-by: Tom Rini <trini@ti.com>
2014-01-10Merge branch 'master' of git://git.denx.de/u-boot-armTom Rini
Bringing in the MMC tree means that CONFIG_BOUNCE_BUFFER needed to be added to include/configs/exynos5-dt.h now. Conflicts: include/configs/exynos5250-dt.h Signed-off-by: Tom Rini <trini@ti.com>
2014-01-09arm64: Make checkarmreloc accept arm64 relocationsScott Wood
Signed-off-by: Scott Wood <scottwood@freescale.com> Signed-off-by: David Feng <fenghua@phytium.com.cn>
2014-01-09arm64: Turn u-boot.bin back into an ELF file after relocate-relaScott Wood
While performing relocations on u-boot.bin should be good enough for booting on real hardware, some simulators insist on booting an ELF file (and yet don't perform ELF relocations), so convert the relocated binary back into an ELF file. This can go away in the future if we change relocate-rela to operate directly on the ELF file, or if and when we stop caring about a simulator with this restriction. Signed-off-by: Scott Wood <scottwood@freescale.com> Signed-off-by: David Feng <fenghua@phytium.com.cn>
2014-01-09arm64: Add tool to statically apply RELA relocationsScott Wood
ARM64 uses the newer RELA-style relocations rather than the older REL. RELA relocations have an addend in the relocation struct, rather than expecting the loader to read a value from the location to be updated. While this is beneficial for ordinary program loading, it's problematic for U-Boot because the location to be updated starts out with zero, rather than a pre-relocation value. Since we need to be able to run C code before relocation, we need a tool to apply the relocations at build time. In theory this tool is applicable to other newer architectures (mainly 64-bit), but currently the only relocations it supports are for arm64, and it assumes a 64-bit little-endian target. If the latter limitation is ever to be changed, we'll need a way to tell the tool what format the image is in. Eventually this may be replaced by a tool that uses libelf or similar and operates directly on the ELF file. I've written some code for such an approach but libelf does not make it easy to poke addresses by memory address (rather than by section), and I was hesitant to write code to manually parse the program headers and do the update outside of libelf (or to iterate over sections) -- especially since it wouldn't get test coverage on things like binaries with multiple PT_LOAD segments. This should be good enough for now to let the manual relocation stuff be removed from the arm64 patches. Signed-off-by: Scott Wood <scottwood@freescale.com> Signed-off-by: David Feng <fenghua@phytium.com.cn>
2013-12-18tegra: allow build to succeed with SPL disabledVidya Sagar
u-boot-dtb-tegra.bin and u-boot-nodtb-tegra.bin binaries are generated only if the SPL build is enabled as they have dependency on SPL build Signed-off-by: Vidya Sagar <vidyas@nvidia.com> Signed-off-by: Tom Warren <twarren@nvidia.com>
2013-12-18Makefile: fix broken pipe error for lcd4_lwmon5 boardMasahiro Yamada
Before this commit, a broken pipe error sometimes happened when building lcd4_lwmon5 board with Buildman. This commit re-writes build rules of u-boot.spr and u-boot-img-spl-at-end.bin more simply without using a pipe. Besides fixing a broken pipe error, this commit gives us other advantages: - Do not generate intermidiate files, spl/u-boot-spl.img and spl/u-boot-spl-pad.img for creating u-boot.spr - Do not generate an intermidiate file, u-boot-pad.img for creating u-boot-img-spl-at-end.bin Such intermidiate files were not deleted by "make clean" or "make mrpropr". Nor u-boot-pad.img was ignored by git. Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com> Acked-by: Stefan Roese <sr@denx.de>
2013-12-18Makefile: fix the typo error for mrproperBo Shen
Fix the typo error for mrproper from mkproper. Signed-off-by: Bo Shen <voice.shen@atmel.com> Acked-by: Simon Glass <sjg@chromium.org>
2013-12-16Prepare v2014.01-rc2v2014.01-rc2Tom Rini
Signed-off-by: Tom Rini <trini@ti.com>
2013-12-16Makefile, .gitignore: Cleanup non-existing binariesMasahiro Yamada
Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
2013-12-16examples: x86: delete 82559_eepromMasahiro Yamada
Commit fea25720 renamed arch/i386 to arch/x86. But it missed to modify examples/standalone/Makefile. Since then, examples/standalone/82559_eeprom has never compiled and nobody has noticed that. After some discussion on ML, we agreed to delete this example. Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
2013-12-16Makefile: Select objects by CONFIG_ rather than $(ARCH) or $(CPU)Masahiro Yamada
Convert like follows: CPU mpc83xx -> CONFIG_MPC83xx CPU mpc85xx -> CONFIG_MPC85xx CPU mpc86xx -> CONFIG_MPC86xx CPU mpc5xxx -> CONFIG_MPC5xxx CPU mpc8xx -> CONFIG_8xx CPU mpc8260 -> CONFIG_8260 CPU ppc4xx -> CONFIG_4xx CPU x86 -> CONFIG_X86 ARCH x86 -> CONFIG_X86 ARCH powerpc -> CONFIG_PPC Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
2013-12-16Makefile: delete unnecessary linesMasahiro Yamada
REMOTE_BUILD is not used any more. Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
2013-12-13Makefile: Move some scripts imported from LinuxMasahiro Yamada
We have some scripts imported from Linux Kernel: setlocalversion, checkstack.pl, checkpatch.pl, cleanpatch They are located under tools/ directory in U-Boot now. But they were originally located under scripts/ directory in Linux Kernel. This commit moves them to the original location. It is true that binutils-version.sh and dtc-version.sh do not originate in Linux Kernel, but they should be moved by analogy to gcc-version.sh. Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
2013-12-13drivers/mtd: descend into sub directories only when it is necessaryMasahiro Yamada
Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
2013-12-13post: descend only when CONFIG_HAS_POST is definedMasahiro Yamada
All objects under post/ directory are enabled by CONFIG_HAS_POST. (post/tests.o is enabled by CONFIG_POST_STD_LIST. But CONFIG_POST_STD_LIST depends on CONFIG_HAS_POST.) We can move CONFIG_HAS_POST switch to the top Makefile. Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
2013-12-13Makefile: delete a make rule of $(LDSCRIPT)Masahiro Yamada
$(LDSCRIPT) is a source file, not a generated file. We do not need a make rule of $(LDSCRIPT). And one more trivial fix: $(obj)/u-boot should not dierectly depend on $(LDSCRIPTS). Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
2013-12-13Makefile: correct dependencies of asm-offsets.[hs]Masahiro Yamada
These four generated files depends on neither {spl,tpl}-autoconf.mk nor autoconf.mk.dep. Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
2013-12-13Makefile: use two double-quotations as a pairMasahiro Yamada
Some editors such as Emacs can highlight source files. But their parser algorithm is not perfect. If you use one double-quotation alone, some editor cannot handle it nicely and mark source lines as a string by mistake. It is preferable to use two double-quotations as a pair. Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
2013-12-13Makefile: Do not create empty autoconf.mk on errorMasahiro Yamada
The build rules of - include/autoconf.mk.dep - include/autoconf.mk - include/spl-autoconf.mk - include/tpl-autoconf.mk were not nice. They created empty files (which are never updated) if an error occurs during preprocessing. Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
2013-12-13Add dumpimage, a tool to extract data from U-Boot imagesGuilherme Maciel Ferreira
Given a multi-file image created through the mkimage's -d option: $ mkimage -A x86 -O linux -T multi -n x86 -d vmlinuz:initrd.img:System.map \ multi.img Image Name: x86 Created: Thu Jul 25 10:29:13 2013 Image Type: Intel x86 Linux Multi-File Image (gzip compressed) Data Size: 13722956 Bytes = 13401.32 kB = 13.09 MB Load Address: 00000000 Entry Point: 00000000 Contents: Image 0: 4040128 Bytes = 3945.44 kB = 3.85 MB Image 1: 7991719 Bytes = 7804.41 kB = 7.62 MB Image 2: 1691092 Bytes = 1651.46 kB = 1.61 MB It is possible to perform the innverse operation -- extracting any file from the image -- by using the dumpimage's -i option: $ dumpimage -i multi.img -p 2 System.map Although it's feasible to retrieve "data files" from image through scripting, the requirement to embed tools such 'dd', 'awk' and 'sed' for this sole purpose is cumbersome and unreliable -- once you must keep track of file sizes inside the image. Furthermore, extracting data files using "dumpimage" tool is faster than through scripting. Signed-off-by: Guilherme Maciel Ferreira <guilherme.maciel.ferreira@gmail.com> Signed-off-by: Simon Glass <sjg@chromium.org>
2013-12-10Merge branch 'master' of git://git.denx.de/u-boot-armTom Rini
Conflicts: board/samsung/trats2/trats2.c include/configs/exynos5250-dt.h Signed-off-by: Tom Rini <trini@ti.com>
2013-12-10Merge branch 'u-boot/master' into 'u-boot-arm/master'Albert ARIBAUD
Conflicts: arch/arm/cpu/armv7/rmobile/Makefile doc/README.scrapyard Needed manual fix: arch/arm/cpu/armv7/omap-common/Makefile board/compulab/cm_t335/u-boot.lds
2013-12-07arm: keep all sections in ELF fileAlbert ARIBAUD
Current LDS files /DISCARD/ a lot of sections when linking ELF files, causing diagnostic tools such as readelf or objdump to produce partial output. Keep all section at link stage, filter only at objcopy time so that .bin remains minimal. Signed-off-by: Albert ARIBAUD <albert.u.boot@aribaud.net> Reviewed-by: Benoît Thébaudeau <benoit.thebaudeau@advansee.com>
2013-12-06blackfin: Do not generate unused header bootrom-asm-offsets.hMasahiro Yamada
Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com> Signed-off-by: Sonic Zhang <sonic.zhang@analog.com>
2013-12-02Merge branch 'master' of git://git.denx.de/u-boot-mpc85xxTom Rini
2013-11-25Prepare v2014.01-rc1v2014.01-rc1Tom Rini
Signed-off-by: Tom Rini <trini@ti.com>
2013-11-25Driver/DDR: Moving Freescale DDR driver to a common driverYork Sun
Freescale DDR driver has been used for mpc83xx, mpc85xx, mpc86xx SoCs. The similar DDR controllers will be used for ARM-based SoCs. Signed-off-by: York Sun <yorksun@freescale.com>
2013-11-25Makefile: move some libraries to lib/MakefileMasahiro Yamada
Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
2013-11-25Makefile: descend into subdirectories only when CONFIG_API is definedMasahiro Yamada
All objects under api/ and examples/api/ directories are selected by CONFIG_API. So we can move CONFIG_API switch to the top Makefile. In order to use CONFIG_API, the definition of SUBDIR_EXAMPLES-y must be moved after "sinlude $(obj)include/autoconf.mk". Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
2013-11-25tools: updater: Remove remainders of dead boardMasahiro Yamada
tools/updater needs board/MAI/AmigaOneG3SE board for compiling. But AmigaOneG3SE board was already deleted by Commit 953b7e6. Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
2013-11-17Makefile: move fs/fat/ entry to drivers/MakefileMasahiro Yamada
Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com> Cc: Simon Glass <sjg@chromium.org> Acked-by: Simon Glass <sjg@chromium.org>
2013-11-17powerpc: mpc824x: Do not create a symbolic link to bedbug_603e.cMasahiro Yamada
Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
2013-11-17powerpc: mpc83xx: Do not create a symbolic link to ddr-gen2.cMasahiro Yamada
Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
2013-11-17Makefile: delete unused linesMasahiro Yamada
Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
2013-11-17Makefile: refactor a littleMasahiro Yamada
Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
2013-11-17Makefile: rename all libraries to built-in.oMasahiro Yamada
Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
2013-11-17drivers/net/npe: descend only when CONFIG_IXP4XX_NPE=yMasahiro Yamada
CONFIG_IXP4XX_NPE is defined only for CPU ixp. It is not necessary to filter by CPU ixp. Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
2013-11-17drivers/net/fm: descend only when CONFIG_FMAN_ENET=yMasahiro Yamada
CONFIG_FMAN_ENET is defined only for CPU mpc85xx. We do not need to filter by CPU mpc85xx. Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
2013-11-17drivers/qe: move the entry to drivers/MakefileMasahiro Yamada
Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
2013-11-17powerpc: move mpc8xxx entry under arch/powerpc/cpu/Masahiro Yamada
Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
2013-11-17Makefile: merge $(LIBBOARD) into $(LIBS)Masahiro Yamada
We do not need to handle $(LIBBOARD) and $(LIBS) separately. Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>
2013-11-17lib: descend into sub directories only when it is necessaryMasahiro Yamada
Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com>