mirror of
https://github.com/Fishwaldo/Star64_linux.git
synced 2025-06-19 13:11:14 +00:00
kbuild: fix make headers_install when path is too long
If headers_install is executed from a deep/long directory structure, the shell's maximum argument length can be execeeded, which breaks the operation with: | make[2]: execvp: /bin/sh: Argument list too long | make[2]: *** Instead of passing each files name with the entire path, I give only the file name without the source path and give this path as a new argument to headers_install.pl. Because there is three possible paths, I have tree input-files list, one per path. Signed-off-by: Nicolas Dichtel <nicolas.dichtel@6wind.com> Tested-by: Bruce Ashfield <bruce.ashfield@windriver.com> Signed-off-by: Michal Marek <mmarek@suse.cz>
This commit is contained in:
parent
f722406faa
commit
c0ff68f161
2 changed files with 19 additions and 8 deletions
|
@ -2,7 +2,7 @@
|
|||
|
||||
if [ $# -lt 1 ]
|
||||
then
|
||||
echo "Usage: headers_install.sh OUTDIR [FILES...]
|
||||
echo "Usage: headers_install.sh OUTDIR SRCDIR [FILES...]
|
||||
echo
|
||||
echo "Prepares kernel header files for use by user space, by removing"
|
||||
echo "all compiler.h definitions and #includes, removing any"
|
||||
|
@ -10,6 +10,7 @@ then
|
|||
echo "asm/inline/volatile keywords."
|
||||
echo
|
||||
echo "OUTDIR: directory to write each userspace header FILE to."
|
||||
echo "SRCDIR: source directory where files are picked."
|
||||
echo "FILES: list of header files to operate on."
|
||||
|
||||
exit 1
|
||||
|
@ -19,6 +20,8 @@ fi
|
|||
|
||||
OUTDIR="$1"
|
||||
shift
|
||||
SRCDIR="$1"
|
||||
shift
|
||||
|
||||
# Iterate through files listed on command line
|
||||
|
||||
|
@ -34,7 +37,7 @@ do
|
|||
-e 's/(^|[^a-zA-Z0-9])__packed([^a-zA-Z0-9_]|$)/\1__attribute__((packed))\2/g' \
|
||||
-e 's/(^|[ \t(])(inline|asm|volatile)([ \t(]|$)/\1__\2__\3/g' \
|
||||
-e 's@#(ifndef|define|endif[ \t]*/[*])[ \t]*_UAPI@#\1 @' \
|
||||
"$i" > "$OUTDIR/$FILE.sed" || exit 1
|
||||
"$SRCDIR/$i" > "$OUTDIR/$FILE.sed" || exit 1
|
||||
scripts/unifdef -U__KERNEL__ -D__EXPORTED_HEADERS__ "$OUTDIR/$FILE.sed" \
|
||||
> "$OUTDIR/$FILE"
|
||||
[ $? -gt 1 ] && exit 1
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue