mirror of
https://github.com/brain-hackers/u-boot-brain
synced 2024-08-19 08:28:51 +09:00
![Wolfgang Denk](/assets/img/avatar_default.png)
When copying the "sed" script to generate the asm-offsets.h file from the Linux Kbuild script into the make-asm-offsets file I missed the fact that the former runs in a "make" context and thus uses double "$$" to escape a single "$", while the latter is a shell script, where this must not be done. Unfortunately the problem did not show up during the initial tests on Power Architecture systems, but on ARM the generated asm-offsets.h was not correct. Signed-off-by: Wolfgang Denk <wd@denx.de> Tested-by: Heiko Schocher <hs@denx.de> Tested-by: Ben Gardiner <bengardiner@nanometrics.ca>
28 lines
689 B
Bash
Executable File
28 lines
689 B
Bash
Executable File
#!/bin/sh
|
|
|
|
# Adapted from Linux kernel's "Kbuild":
|
|
# commit 1cdf25d704f7951d02a04064c97db547d6021872
|
|
# Author: Christoph Lameter <clameter@sgi.com>
|
|
|
|
mkdir -p $(dirname $2)
|
|
|
|
# Default sed regexp - multiline due to syntax constraints
|
|
SED_CMD="/^->/{s:->#\(.*\):/* \1 */:; \
|
|
s:^->\([^ ]*\) [\$#]*\([-0-9]*\) \(.*\):#define \1 (\2) /* \3 */:; \
|
|
s:^->\([^ ]*\) [\$#]*\([^ ]*\) \(.*\):#define \1 \2 /* \3 */:; \
|
|
s:->::; p;}"
|
|
|
|
(set -e
|
|
echo "#ifndef __ASM_OFFSETS_H__"
|
|
echo "#define __ASM_OFFSETS_H__"
|
|
echo "/*"
|
|
echo " * DO NOT MODIFY."
|
|
echo " *"
|
|
echo " * This file was generated by $(basename $0)"
|
|
echo " *"
|
|
echo " */"
|
|
echo ""
|
|
sed -ne "${SED_CMD}" $1
|
|
echo ""
|
|
echo "#endif" ) > $2
|