| #
8aba9dce |
| 06-Jan-2011 |
Nobuhiro Iwamatsu <iwamatsu@nigauri.org> |
Divides variable of linker flags to LDFLAGS-u-boot and LDFLAGS
Linker needs to use the proper endian/bfd flags even when doing partial linking. LDFLAGS_u-boot sets linker option which is called it w
Divides variable of linker flags to LDFLAGS-u-boot and LDFLAGS
Linker needs to use the proper endian/bfd flags even when doing partial linking. LDFLAGS_u-boot sets linker option which is called it when U-boot is built (u-boot final). LDFLAGS sets necessary option by partial linking (use in cmd_link_o_target).
CC: Mike Frysinger <vapier@gentoo.org> Signed-off-by: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
show more ...
|
| #
cdc51c29 |
| 22-Dec-2010 |
Wolfgang Denk <wd@denx.de> |
Merge branch 'next' of ../next
|
| #
326a6945 |
| 15-Dec-2010 |
Mike Frysinger <vapier@gentoo.org> |
config.mk: unify duplicated flag setting
Multiple rules are using the expanded AFLAGS/CFLAGS settings and some are getting so long that the rules need to be line wrapped. So unify them in one varia
config.mk: unify duplicated flag setting
Multiple rules are using the expanded AFLAGS/CFLAGS settings and some are getting so long that the rules need to be line wrapped. So unify them in one variable, use that variable in the rule, and then unwrap things. This makes the actual `make` output nicer as it doesn't have line continuations in it anymore.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
show more ...
|
| #
844f07d8 |
| 27-Nov-2010 |
Wolfgang Denk <wd@denx.de> |
Coding Style (white space) cleanup
Signed-off-by: Wolfgang Denk <wd@denx.de>
|
| #
6d8962e8 |
| 05-Nov-2010 |
Sebastien Carlier <sebastien.carlier@gmail.com> |
Switch from archive libraries to partial linking
Before this commit, weak symbols were not overridden by non-weak symbols found in archive libraries when linking with recent versions of binutils. A
Switch from archive libraries to partial linking
Before this commit, weak symbols were not overridden by non-weak symbols found in archive libraries when linking with recent versions of binutils. As stated in the System V ABI, "the link editor does not extract archive members to resolve undefined weak symbols".
This commit changes all Makefiles to use partial linking (ld -r) instead of creating library archives, which forces all symbols to participate in linking, allowing non-weak symbols to override weak symbols as intended. This approach is also used by Linux, from which the gmake function cmd_link_o_target (defined in config.mk and used in all Makefiles) is inspired.
The name of each former library archive is preserved except for extensions which change from ".a" to ".o". This commit updates references accordingly where needed, in particular in some linker scripts.
This commit reveals board configurations that exclude some features but include source files that depend these disabled features in the build, resulting in undefined symbols. Known such cases include: - disabling CMD_NET but not CMD_NFS; - enabling CONFIG_OF_LIBFDT but not CONFIG_QE.
Signed-off-by: Sebastien Carlier <sebastien.carlier@gmail.com>
show more ...
|
| #
14d0a02a |
| 07-Oct-2010 |
Wolfgang Denk <wd@denx.de> |
Rename TEXT_BASE into CONFIG_SYS_TEXT_BASE
The change is currently needed to be able to remove the board configuration scripting from the top level Makefile and replace it by a simple, table driven
Rename TEXT_BASE into CONFIG_SYS_TEXT_BASE
The change is currently needed to be able to remove the board configuration scripting from the top level Makefile and replace it by a simple, table driven script.
Moving this configuration setting into the "CONFIG_*" name space is also desirable because it is needed if we ever should move forward to a Kconfig driven configuration system.
Signed-off-by: Wolfgang Denk <wd@denx.de>
show more ...
|
| #
201532a6 |
| 10-Aug-2010 |
Wolfgang Denk <wd@denx.de> |
Merge branch 'master' of ../master
|
| #
f534c7cd |
| 03-Aug-2010 |
Mike Frysinger <vapier@gentoo.org> |
config.mk: avoid -traditional-cpp on OS X 10.5
Simply trying to include a basic header file like stdlib.h on OS X 10.5 and then building with -traditional-cpp fails with lots of errors like: In file
config.mk: avoid -traditional-cpp on OS X 10.5
Simply trying to include a basic header file like stdlib.h on OS X 10.5 and then building with -traditional-cpp fails with lots of errors like: In file included from /usr/include/stdlib.h:63, from test.c:3: /usr/include/available.h:85: error: stray '#' in program /usr/include/available.h:85: error: syntax error before numeric constant /usr/include/available.h:86: error: stray '#' in program
In the past, I hadn't noticed because the old logic for these flags were restricted to Darwin running on PowerPC systems while I'm running on an Intel system. But after some recent clean ups and changes, the flag was being applied to all Darwin systems and my host tools broke.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
show more ...
|
| #
2271d3dd |
| 06-Jul-2010 |
Minkyu Kang <mk7.kang@samsung.com> |
Merge branch 'master' of git://git.denx.de/u-boot
|
| #
922d27b5 |
| 31-May-2010 |
Minkyu Kang <mk7.kang@samsung.com> |
Merge branch 'master' of git://git.denx.de/u-boot-arm
Conflicts: arch/arm/include/asm/mach-types.h
Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>
|
| #
bd7bb6f8 |
| 28-May-2010 |
Wolfgang Denk <wd@denx.de> |
Merge branch 'next' of git://git.denx.de/u-boot-nios
|
| #
1117cbf2 |
| 28-May-2010 |
Thomas Chou <thomas@wytron.com.tw> |
nios: remove nios-32 arch
The nios-32 arch is obsolete and broken. So it is removed.
Signed-off-by: Thomas Chou <thomas@wytron.com.tw>
|
| #
c7da8c19 |
| 22-May-2010 |
Andreas Biessmann <andreas.devel@googlemail.com> |
config.mk: use different host compiler for OS X 10.6
Compiling tools subdirectory on Mac OS X 10.6 (Snow Leopard) complains about wrong syntax in system includes.
In file included from /usr/include
config.mk: use different host compiler for OS X 10.6
Compiling tools subdirectory on Mac OS X 10.6 (Snow Leopard) complains about wrong syntax in system includes.
In file included from /usr/include/stdio.h:444, from ../source/u-boot/include/compiler.h:26, from ../source/u-boot/lib/crc32.c:15: /usr/include/secure/_stdio.h:46: error: syntax error in macro parameter list
This can be fixed by reverting the workaround for prior OS X releases in config.mk conditionally for OS X 10.6+.
Signed-off-by: Andreas Bießmann <andreas.devel@googlemail.com> Acked-by: Mike Frysinger <vapier@gentoo.org>
show more ...
|
| #
83653121 |
| 19-Apr-2010 |
Minkyu Kang <mk7.kang@samsung.com> |
Merge branch 'master' of git://git.denx.de/u-boot-arm
Conflicts: cpu/arm1176/cpu.c cpu/arm1176/start.S cpu/arm_cortexa8/s5pc1xx/Makefile cpu/arm_cortexa8/s5pc1xx/clock.c drivers/serial/serial_s
Merge branch 'master' of git://git.denx.de/u-boot-arm
Conflicts: cpu/arm1176/cpu.c cpu/arm1176/start.S cpu/arm_cortexa8/s5pc1xx/Makefile cpu/arm_cortexa8/s5pc1xx/clock.c drivers/serial/serial_s5p.c include/asm-arm/arch-s5pc1xx/clk.h include/asm-arm/arch-s5pc1xx/gpio.h include/asm-arm/arch-s5pc1xx/uart.h
Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>
show more ...
|
| #
8d1f2682 |
| 13-Apr-2010 |
Peter Tyser <ptyser@xes-inc.com> |
ppc: Move cpu/$CPU to arch/ppc/cpu/$CPU
Signed-off-by: Peter Tyser <ptyser@xes-inc.com>
|
| #
ea0364f1 |
| 13-Apr-2010 |
Peter Tyser <ptyser@xes-inc.com> |
Move lib_$ARCH directories to arch/$ARCH/lib
Also move lib_$ARCH/config.mk to arch/$ARCH/config.mk
This change is intended to clean up the top-level directory structure and more closely mimic Linux
Move lib_$ARCH directories to arch/$ARCH/lib
Also move lib_$ARCH/config.mk to arch/$ARCH/config.mk
This change is intended to clean up the top-level directory structure and more closely mimic Linux's directory organization.
Signed-off-by: Peter Tyser <ptyser@xes-inc.com>
show more ...
|
| #
89f39e17 |
| 13-Apr-2010 |
Peter Tyser <ptyser@xes-inc.com> |
Change directory-specific CFLAGS to use full path
Previously, a specific file or directory could be compiled with custom CFLAGS by adding a Makefile variable such as: CFLAGS_dlmalloc.o = <custom f
Change directory-specific CFLAGS to use full path
Previously, a specific file or directory could be compiled with custom CFLAGS by adding a Makefile variable such as: CFLAGS_dlmalloc.o = <custom flags for common/dlmalloc.c> or CFLAGS_lib = <custom flags for lib directory>
This method breaks down once multiple files or directories share the same path. Eg FLAGS_fileA = <custom flags> would incorrectly result in both dir1/fileA.c and dir2/fileA.c being compiled with <custom flags>.
This change allows finer grained control which we need once we move lib_$ARCH to arch/$ARCH/lib/ and lib_generic/ to lib/. Without this change all lib/ directories would share the same custom CFLAGS.
Signed-off-by: Peter Tyser <ptyser@xes-inc.com>
show more ...
|
| #
03b7004d |
| 13-Apr-2010 |
Peter Tyser <ptyser@xes-inc.com> |
Create CPUDIR variable
The CPUDIR variable points to the location of a target's CPU directory. Currently, it is set to cpu/$CPU. However, using $CPUDIR will allow for more flexibility in the future
Create CPUDIR variable
The CPUDIR variable points to the location of a target's CPU directory. Currently, it is set to cpu/$CPU. However, using $CPUDIR will allow for more flexibility in the future. It lays the groundwork for reorganizing U-Boot's directory structure to support a layout such as:
arch/$ARCH/cpu/$CPU/* (architecture with multiple CPU types) arch/$ARCH/cpu/* (architecture with one CPU type)
Signed-off-by: Peter Tyser <ptyser@xes-inc.com>
show more ...
|
| #
e598dfc2 |
| 15-Jan-2010 |
Minkyu Kang <mk7.kang@samsung.com> |
Merge branch 'master' of git://git.denx.de/u-boot-arm
Conflicts:
cpu/arm_cortexa8/s5pc1xx/cache.c include/asm-arm/arch-s5pc1xx/sys_proto.h include/sja1000.h
Signed-off-by: Minkyu Kang <mk7.kang
Merge branch 'master' of git://git.denx.de/u-boot-arm
Conflicts:
cpu/arm_cortexa8/s5pc1xx/cache.c include/asm-arm/arch-s5pc1xx/sys_proto.h include/sja1000.h
Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>
show more ...
|
| #
bb3bcfa2 |
| 15-Dec-2009 |
Wolfgang Denk <wd@denx.de> |
Merge branch 'next' of ../next
|
| #
d984fed0 |
| 05-Nov-2009 |
Scott Wood <scottwood@freescale.com> |
makefiles: fixes for building build tools
Currently, some of the tools instead set CC to be HOSTCC in order to re-use some pattern rules -- but this fails when the user overrides CC on the make comm
makefiles: fixes for building build tools
Currently, some of the tools instead set CC to be HOSTCC in order to re-use some pattern rules -- but this fails when the user overrides CC on the make command line. Also, the HOSTCFLAGS in tools/Makefile are currently not being used because config.mk overwrites them.
This patch adds static pattern rules for files that have been requested to be built with the native compiler using $(HOSTSRCS) and $(HOSTOBJS), and converts the tools to use them.
It restores easylogo to using the host compiler, which was broken by commit 38d299c2db81bd889c601b5dfc12c4e83ef83333 (if this was an intentional change, please let me know -- but it seems to be a build tool).
It restores -pedantic and the special flags for darwin and cygwin that were requested in tools/makefile (but keeps the flags added by config.mk) -- hopefully someone can test this on those platforms. It no longer conditionalizes -pedantic on not being darwin; it wasn't clear that that was intentional, and unless there's a real problem it's just inviting people to contribute non-pedantic patches to those files (I'm not a fan of -pedantic personally, but if it's on for one platform it should be on for all).
HOST_LDFLAGS is renamed HOSTLDFLAGS for consistency with the previous HOST_CFLAGS to HOSTCFLAGS rename. A new HOSTCFLAGS_NOPED is made available for those files which currently cannot be built with -pedantic, and replaces the old FIT_CFLAGS.
imls now uses the cross compiler properly, rather than by trying to reconstruct CC using the typoed $(CROSS_COMPILER).
envcrc.c is now dependency-processed unconditionally -- previously it would be built without being on (HOST)SRCS if CONFIG_ENV_IS_EMBEDDED was not selected.
Signed-off-by: Scott Wood <scottwood@freescale.com>
show more ...
|
| #
bbff2d28 |
| 09-Sep-2009 |
Kumar Gala <galak@kernel.crashing.org> |
ppc/85xx: Introduce RESET_VECTOR_ADDRESS to handle non-standard link address
Some board ports place TEXT_BASE at a location that would cause the RESET_VECTOR_ADDRESS not to be at 0xfffffffc when we
ppc/85xx: Introduce RESET_VECTOR_ADDRESS to handle non-standard link address
Some board ports place TEXT_BASE at a location that would cause the RESET_VECTOR_ADDRESS not to be at 0xfffffffc when we link. By default we assume RESET_VECTOR_ADDRESS will be 0xfffffffc if the board doesn't explicitly set it.
Signed-off-by: Kumar Gala <galak@kernel.crashing.org> Acked-by: Wolfgang Denk <wd@denx.de>
show more ...
|
| #
6c97a20d |
| 09-Sep-2009 |
Kumar Gala <galak@kernel.crashing.org> |
ppc/85xx: Introduce RESET_VECTOR_ADDRESS to handle non-standard link address
Some board ports place TEXT_BASE at a location that would cause the RESET_VECTOR_ADDRESS not to be at 0xfffffffc when we
ppc/85xx: Introduce RESET_VECTOR_ADDRESS to handle non-standard link address
Some board ports place TEXT_BASE at a location that would cause the RESET_VECTOR_ADDRESS not to be at 0xfffffffc when we link. By default we assume RESET_VECTOR_ADDRESS will be 0xfffffffc if the board doesn't explicitly set it.
Signed-off-by: Kumar Gala <galak@kernel.crashing.org> Acked-by: Wolfgang Denk <wd@denx.de>
show more ...
|
| #
6ac9f479 |
| 23-Aug-2009 |
Mike Frysinger <vapier@gentoo.org> |
start a linker script helper file
Start a common header file for common linker script code (such as workarounds for older linkers) rather than doing this in the build system.
As fallout, we no long
start a linker script helper file
Start a common header file for common linker script code (such as workarounds for older linkers) rather than doing this in the build system.
As fallout, we no longer execute the linker every time config.mk is included by a build file (which can easily be 70+ times), but rather only execute it once.
This also fixes a bug in the major version checking by creating a macro to easily compare versions and keep people from making the same common mistake (forgetting to check major and minor together).
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
show more ...
|
| #
1aada9cd |
| 17-Aug-2009 |
Wolfgang Denk <wd@denx.de> |
Fix all linker scripts for older binutils versions (pre-2.16)
Commit f62fb99941c6 fixed handling of all rodata sections by using a wildcard combined with calls to ld's builtin functions SORT_BY_ALIG
Fix all linker scripts for older binutils versions (pre-2.16)
Commit f62fb99941c6 fixed handling of all rodata sections by using a wildcard combined with calls to ld's builtin functions SORT_BY_ALIGNMENT() and SORT_BY_NAME(). Unfortunately these functions were only introduced with biunutils version 2.16, so the modification broke building with all tool chains using older binutils.
This patch makes it work again. This is done by omitting the use of these functions for such old tool chains. This will result in slightly larger target binaries, as the rodata sections are no longer in optimal order alignment-wise which reauls in unused gaps, but the effect was found to be insignificant - especially compared to the fact that you cannot build U-Boot at all in the current state.
As ld seems to have no support for conditionals we run the linker script through the C preprocessor which can be easily used to remove the unwanted function calls.
Note that the C preprocessor must be run with the "-ansi" (or a "-std=") option to make sure all the system-specific predefined macros outside the reserved namespace are suppressed. Otherise, cpp might for example substitute "powerpc" to "1", thus corrupting for example "OUTPUT_ARCH(powerpc)" etc.
Signed-off-by: Wolfgang Denk <wd@denx.de> Cc: Mike Frysinger <vapier@gentoo.org>
show more ...
|