~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/scripts/nsdeps

Version: ~ [ linux-6.12-rc7 ] ~ [ linux-6.11.7 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.60 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.116 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.171 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.229 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.285 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.323 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.12 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

Diff markup

Differences between /scripts/nsdeps (Version linux-6.12-rc7) and /scripts/nsdeps (Version linux-5.7.19)


  1 #!/bin/sh                                           1 #!/bin/sh
  2 # SPDX-License-Identifier: GPL-2.0                  2 # SPDX-License-Identifier: GPL-2.0
  3 # Linux kernel symbol namespace import generat      3 # Linux kernel symbol namespace import generator
  4 #                                                   4 #
  5 # This script requires a minimum spatch versio      5 # This script requires a minimum spatch version.
  6 SPATCH_REQ_VERSION="1.0.4"                          6 SPATCH_REQ_VERSION="1.0.4"
  7                                                     7 
  8 DIR="$(dirname $(readlink -f $0))/.."               8 DIR="$(dirname $(readlink -f $0))/.."
  9 SPATCH="`which ${SPATCH:=spatch}`"                  9 SPATCH="`which ${SPATCH:=spatch}`"
 10 if [ ! -x "$SPATCH" ]; then                        10 if [ ! -x "$SPATCH" ]; then
 11         echo 'spatch is part of the Coccinelle     11         echo 'spatch is part of the Coccinelle project and is available at http://coccinelle.lip6.fr/'
 12         exit 1                                     12         exit 1
 13 fi                                                 13 fi
 14                                                    14 
                                                   >>  15 SPATCH_REQ_VERSION_NUM=$(echo $SPATCH_REQ_VERSION | ${DIR}/scripts/ld-version.sh)
 15 SPATCH_VERSION=$($SPATCH --version | head -1 |     16 SPATCH_VERSION=$($SPATCH --version | head -1 | awk '{print $3}')
                                                   >>  17 SPATCH_VERSION_NUM=$(echo $SPATCH_VERSION | ${DIR}/scripts/ld-version.sh)
 16                                                    18 
 17 if ! { echo "$SPATCH_REQ_VERSION"; echo "$SPAT !!  19 if [ "$SPATCH_VERSION_NUM" -lt "$SPATCH_REQ_VERSION_NUM" ] ; then
 18         echo "spatch needs to be version $SPAT     20         echo "spatch needs to be version $SPATCH_REQ_VERSION or higher"
 19         exit 1                                     21         exit 1
 20 fi                                                 22 fi
 21                                                    23 
 22 if [ "$KBUILD_EXTMOD" ]; then                      24 if [ "$KBUILD_EXTMOD" ]; then
 23         src_prefix=                                25         src_prefix=
 24 else                                               26 else
 25         src_prefix=$srctree/                       27         src_prefix=$srctree/
 26 fi                                                 28 fi
 27                                                    29 
 28 generate_deps_for_ns() {                           30 generate_deps_for_ns() {
 29         $SPATCH --very-quiet --in-place --sp-f     31         $SPATCH --very-quiet --in-place --sp-file \
 30                 $srctree/scripts/coccinelle/mi     32                 $srctree/scripts/coccinelle/misc/add_namespace.cocci -D nsdeps -D ns=$1 $2
 31 }                                                  33 }
 32                                                    34 
 33 generate_deps() {                                  35 generate_deps() {
 34         local mod=${1%.ko:}                        36         local mod=${1%.ko:}
 35         shift                                      37         shift
 36         local namespaces="$*"                      38         local namespaces="$*"
 37         local mod_source_files=$(sed "s|^\(.*\ !!  39         local mod_source_files="`cat $mod.mod | sed -n 1p                      \
 38                                                !!  40                                               | sed -e 's/\.o/\.c/g'           \
                                                   >>  41                                               | sed "s|[^ ]* *|${src_prefix}&|g"`"
 39         for ns in $namespaces; do                  42         for ns in $namespaces; do
 40                 echo "Adding namespace $ns to      43                 echo "Adding namespace $ns to module $mod.ko."
 41                 generate_deps_for_ns $ns "$mod     44                 generate_deps_for_ns $ns "$mod_source_files"
 42                 # sort the imports                 45                 # sort the imports
 43                 for source_file in $mod_source     46                 for source_file in $mod_source_files; do
 44                         sed '/MODULE_IMPORT_NS     47                         sed '/MODULE_IMPORT_NS/Q' $source_file > ${source_file}.tmp
 45                         offset=$(wc -l ${sourc     48                         offset=$(wc -l ${source_file}.tmp | awk '{print $1;}')
 46                         cat $source_file | gre !!  49                         cat $source_file | grep MODULE_IMPORT_NS | LANG=C sort -u >> ${source_file}.tmp
 47                         tail -n +$((offset +1)     50                         tail -n +$((offset +1)) ${source_file} | grep -v MODULE_IMPORT_NS >> ${source_file}.tmp
 48                         if ! diff -q ${source_     51                         if ! diff -q ${source_file} ${source_file}.tmp; then
 49                                 mv ${source_fi     52                                 mv ${source_file}.tmp ${source_file}
 50                         else                       53                         else
 51                                 rm ${source_fi     54                                 rm ${source_file}.tmp
 52                         fi                         55                         fi
 53                 done                               56                 done
 54         done                                       57         done
 55 }                                                  58 }
 56                                                    59 
 57 while read line                                    60 while read line
 58 do                                                 61 do
 59         generate_deps $line                        62         generate_deps $line
 60 done < $MODULES_NSDEPS                             63 done < $MODULES_NSDEPS
                                                      

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php