diff options
Diffstat (limited to 'scripts/link-vmlinux.sh')
| -rwxr-xr-x | scripts/link-vmlinux.sh | 18 |
1 files changed, 15 insertions, 3 deletions
diff --git a/scripts/link-vmlinux.sh b/scripts/link-vmlinux.sh index 86a4fe75f453..1a10d8ac8162 100755 --- a/scripts/link-vmlinux.sh +++ b/scripts/link-vmlinux.sh | |||
| @@ -82,7 +82,7 @@ kallsyms() | |||
| 82 | kallsymopt="${kallsymopt} --all-symbols" | 82 | kallsymopt="${kallsymopt} --all-symbols" |
| 83 | fi | 83 | fi |
| 84 | 84 | ||
| 85 | if [ -n "${CONFIG_ARM}" ] && [ -n "${CONFIG_PAGE_OFFSET}" ]; then | 85 | if [ -n "${CONFIG_ARM}" ] && [ -z "${CONFIG_XIP_KERNEL}" ] && [ -n "${CONFIG_PAGE_OFFSET}" ]; then |
| 86 | kallsymopt="${kallsymopt} --page-offset=$CONFIG_PAGE_OFFSET" | 86 | kallsymopt="${kallsymopt} --page-offset=$CONFIG_PAGE_OFFSET" |
| 87 | fi | 87 | fi |
| 88 | 88 | ||
| @@ -111,7 +111,6 @@ sortextable() | |||
| 111 | } | 111 | } |
| 112 | 112 | ||
| 113 | # Delete output files in case of error | 113 | # Delete output files in case of error |
| 114 | trap cleanup SIGHUP SIGINT SIGQUIT SIGTERM ERR | ||
| 115 | cleanup() | 114 | cleanup() |
| 116 | { | 115 | { |
| 117 | rm -f .old_version | 116 | rm -f .old_version |
| @@ -124,6 +123,20 @@ cleanup() | |||
| 124 | rm -f vmlinux.o | 123 | rm -f vmlinux.o |
| 125 | } | 124 | } |
| 126 | 125 | ||
| 126 | on_exit() | ||
| 127 | { | ||
| 128 | if [ $? -ne 0 ]; then | ||
| 129 | cleanup | ||
| 130 | fi | ||
| 131 | } | ||
| 132 | trap on_exit EXIT | ||
| 133 | |||
| 134 | on_signals() | ||
| 135 | { | ||
| 136 | exit 1 | ||
| 137 | } | ||
| 138 | trap on_signals HUP INT QUIT TERM | ||
| 139 | |||
| 127 | # | 140 | # |
| 128 | # | 141 | # |
| 129 | # Use "make V=1" to debug this script | 142 | # Use "make V=1" to debug this script |
| @@ -231,7 +244,6 @@ if [ -n "${CONFIG_KALLSYMS}" ]; then | |||
| 231 | if ! cmp -s System.map .tmp_System.map; then | 244 | if ! cmp -s System.map .tmp_System.map; then |
| 232 | echo >&2 Inconsistent kallsyms data | 245 | echo >&2 Inconsistent kallsyms data |
| 233 | echo >&2 Try "make KALLSYMS_EXTRA_PASS=1" as a workaround | 246 | echo >&2 Try "make KALLSYMS_EXTRA_PASS=1" as a workaround |
| 234 | cleanup | ||
| 235 | exit 1 | 247 | exit 1 |
| 236 | fi | 248 | fi |
| 237 | fi | 249 | fi |
