Factor out the headers_*_all support to a seperate shell script and add support for arch specific header files can be located in either arch/$ARCH/include/asm or include/asm-$ARCH/ In "make help" always display the headers_* targets.
Showing the changes to scripts (1 of 2 files). Show all
Unified · Split
| @@ -0,0 +1,41 @@ | |||
| 1 | #!/bin/sh | ||
| 2 | # Run headers_$1 command for all suitable architectures | ||
| 3 | |||
| 4 | # Stop on error | ||
| 5 | set -e | ||
| 6 | |||
| 7 | do_command() | ||
| 8 | { | ||
| 9 | if [ -f ${srctree}/arch/$2/include/asm/Kbuild ]; then | ||
| 10 | make ARCH=$2 KBUILD_HEADERS=$1 headers_$1 | ||
| 11 | elif [ -f ${srctree}/include/asm-$2/Kbuild ]; then | ||
| 12 | make ARCH=$2 KBUILD_HEADERS=$1 headers_$1 | ||
| 13 | else | ||
| 14 | printf "Ignoring arch: %s\n" ${arch} | ||
| 15 | fi | ||
| 16 | } | ||
| 17 | |||
| 18 | # Do not try this architecture | ||
| 19 | drop="generic um ppc sparc64 cris" | ||
| 20 | |||
| 21 | archs=$(ls ${srctree}/arch) | ||
| 22 | |||
| 23 | for arch in ${archs}; do | ||
| 24 | case ${arch} in | ||
| 25 | um) # no userspace export | ||
| 26 | ;; | ||
| 27 | ppc) # headers exported by powerpc | ||
| 28 | ;; | ||
| 29 | sparc64) # headers exported by sparc | ||
| 30 | ;; | ||
| 31 | cris) # headers export are known broken | ||
| 32 | ;; | ||
| 33 | *) | ||
| 34 | if [ -d ${srctree}/arch/${arch} ]; then | ||
| 35 | do_command $1 ${arch} | ||
| 36 | fi | ||
| 37 | ;; | ||
| 38 | esac | ||
| 39 | done | ||
| 40 | |||
| 41 | |||