summaryrefslogtreecommitdiff
path: root/helper.mk
diff options
context:
space:
mode:
authorTom Rini <trini@ti.com>2013-03-18 12:31:00 -0400
committerTom Rini <trini@ti.com>2013-03-18 14:37:18 -0400
commit0ce033d2582129243aca10d3072a221386bbba44 (patch)
tree6e50a3f4eed22007549dc740d0fa647a6c8cec5b /helper.mk
parentb5bec88434adb52413f1bc33fa63d7642cb8fd35 (diff)
parentb27673ccbd3d5435319b5c09c3e7061f559f925d (diff)
Merge branch 'master' of git://git.denx.de/u-boot-arm
Albert's rework of the linker scripts conflicted with Simon's making everyone use __bss_end. We also had a minor conflict over README.scrapyard being added to in mainline and enhanced in u-boot-arm/master with proper formatting. Conflicts: arch/arm/cpu/ixp/u-boot.lds arch/arm/cpu/u-boot.lds arch/arm/lib/Makefile board/actux1/u-boot.lds board/actux2/u-boot.lds board/actux3/u-boot.lds board/dvlhost/u-boot.lds board/freescale/mx31ads/u-boot.lds doc/README.scrapyard include/configs/tegra-common.h Build tested for all of ARM and run-time tested on am335x_evm. Signed-off-by: Tom Rini <trini@ti.com>
Diffstat (limited to 'helper.mk')
-rw-r--r--helper.mk64
1 files changed, 0 insertions, 64 deletions
diff --git a/helper.mk b/helper.mk
deleted file mode 100644
index 79a1da01e3..0000000000
--- a/helper.mk
+++ /dev/null
@@ -1,64 +0,0 @@
-#
-# Copyright (C) 2012 Marek Vasut <marex@denx.de>
-#
-# See file CREDITS for list of people who contributed to this
-# project.
-#
-# This program is free software; you can redistribute it and/or
-# modify it under the terms of the GNU General Public License as
-# published by the Free Software Foundation; either version 2 of
-# the License, or (at your option) any later version.
-#
-#########################################################################
-
-##
-# make_u_boot_list - Generate contents of u_boot_list section
-# 1: The name of the resulting file (usually u-boot.lst)
-# 2: Files to analyze for possible u_boot_list entries
-#
-# This function generates the contents of the u_boot_list section,
-# including all the border symbols for it's subsections. The operation
-# of this function is as follows, numbering goes per lines:
-#
-# 1) Dump the ELF header sections from all files supplied via $(2)
-# 2) Filter out all other stuff that does not belong into .u_boot_list
-# section.
-# 3) Fix up the lines so that the resulting output is is in format
-# ".u_boot_list.*".
-# 4) Remove the last .something$, since that only contains the name
-# of the variable to be put into a subsection. This name is irelevant
-# for generation of border symbols, thus of no interest, remove it.
-# 5) Take each line and for every dot "." in that line, print the whole
-# line until that dot "." . This is important so that we have all
-# parent border symbols generated as well.
-# 6) Load every line and firstly append "\a" at the end and print the
-# line. Next, append "@" at the end and print the line. Finally,
-# append "~" at the end of line. This will make sense in conjunction
-# with 6) and 7).
-# 7) Sort the lines. It is imperative to use LC_COLLATE=C here because
-# with this, the "\a" symbol is first and "~" symbol is last. Any
-# other symbols fall inbetween. Symbols like "@", which marks the
-# end of current line (representing current section) and ".", which
-# means the line continues and thus represents subsection.
-# 8) With such ordering, all lines ending with "\a" will float at the
-# begining of all lines with the same prefix. Thus it is easy to
-# replace "\a" with __start and make it the __start border symbol.
-# Very similarly for "~", which will be always at the bottom and so
-# can be replaced by "__end" and made into the __end border symbol.
-# Finally, every line ending with "@" symbol will be transformed
-# into " *(SORT(${line}*)); " format, which in the linker parlance
-# will allow it to trap all symbols relevant to the subsection.
-#
-define make_u_boot_list
-$(1): $(2)
- $(OBJDUMP) -h $(2) | \
- sed -n -e '/.*\.u_boot_list[^ ]\+/ ! {d;n}' \
- -e 's/.*\(\.u_boot_list[^ ]\+\).*$$$$/\1/' \
- -e 's/\.[^\.]\+$$$$//' \
- -e ':s /^.\+$$$$/ { p;s/^\(.*\)\.[^\.]*$$$$/\1/;b s }' | \
- sed -n -e 'h;s/$$$$/\a/p;g;s/$$$$/@/p;g;s/$$$$/~/p;' | \
- LC_COLLATE=C sort -u | \
- sed -n -e '/\a$$$$/ { s/\./_/g;s/\a$$$$/__start = .;/p; }'\
- -e '/~$$$$/ { s/\./_/g;s/~$$$$/__end = .;/p; }'\
- -e '/@$$$$/ { s/\(.*\)@$$$$/*(SORT(\1.*));/p }' > $(1)
-endef