2 # Simple tests of generation of 32-bit and 64-bit modules.dep
4 for ENDIAN
in $TEST_ENDIAN; do
5 for BITNESS
in $TEST_BITS; do
10 MODULE_DIR
=tests
/tmp
/lib
/modules
/$MODTEST_UNAME
11 mkdir
-p $MODULE_DIR/kernel
12 ln tests
/data
/$BITNESS$ENDIAN/normal
/export_dep-
$BITNESS.ko \
13 tests
/data
/$BITNESS$ENDIAN/normal
/noexport_dep-
$BITNESS.ko \
14 tests
/data
/$BITNESS$ENDIAN/normal
/export_nodep-
$BITNESS.ko \
15 tests
/data
/$BITNESS$ENDIAN/normal
/noexport_nodep-
$BITNESS.ko \
16 tests
/data
/$BITNESS$ENDIAN/normal
/noexport_doubledep-
$BITNESS.ko \
20 mkdir
-p $MODULE_DIR/updates
21 ln tests
/data
/$BITNESS$ENDIAN/normal
/export_nodep-
$BITNESS.ko \
24 # First we try update which overrides, then not
25 for iter
in override not-override
; do
28 [ "`depmod 2>&1`" = "" ]
30 # Check modules.dep results: expect 5 lines
31 [ `grep -vc '^#' < $MODULE_DIR/modules.dep` = 5 ]
33 # Other lines must refer to updates/, not kernels/ module.
34 [ "`grep -w export_dep-$BITNESS.ko: $MODULE_DIR/modules.dep`" = "kernel/export_dep-$BITNESS.ko: updates/export_nodep-$BITNESS.ko" ]
35 [ "`grep -w noexport_dep-$BITNESS.ko: $MODULE_DIR/modules.dep`" = "kernel/noexport_dep-$BITNESS.ko: updates/export_nodep-$BITNESS.ko" ]
36 [ "`grep -w noexport_nodep-$BITNESS.ko: $MODULE_DIR/modules.dep`" = "kernel/noexport_nodep-$BITNESS.ko:" ]
37 [ "`grep -w noexport_doubledep-$BITNESS.ko: $MODULE_DIR/modules.dep`" = "kernel/noexport_doubledep-$BITNESS.ko: kernel/export_dep-$BITNESS.ko updates/export_nodep-$BITNESS.ko" ]
38 [ "`grep -w export_nodep-$BITNESS.ko: $MODULE_DIR/modules.dep`" = "updates/export_nodep-$BITNESS.ko:" ]
40 # Check modules.symbols results: expect 3 lines
41 [ `grep -vc '^#' < $MODULE_DIR/modules.symbols` = 3 ]
43 [ "`grep -w symbol:exported1 $MODULE_DIR/modules.symbols`" = "alias symbol:exported1 export_nodep_$BITNESS" ]
44 [ "`grep -w symbol:exported2 $MODULE_DIR/modules.symbols`" = "alias symbol:exported2 export_nodep_$BITNESS" ]
45 [ "`grep -w symbol:exported3 $MODULE_DIR/modules.symbols`" = "alias symbol:exported3 export_dep_$BITNESS" ]
47 mv $MODULE_DIR/modules.dep
$MODULE_DIR/modules.dep.old
48 mv $MODULE_DIR/modules.symbols
$MODULE_DIR/modules.symbols.old
51 [ "`depmod $MODTEST_UNAME`" = "" ]
52 diff -u $MODULE_DIR/modules.dep.old
$MODULE_DIR/modules.dep
>/dev
/null
53 mv $MODULE_DIR/modules.dep
$MODULE_DIR/modules.dep.old
54 diff -u $MODULE_DIR/modules.symbols.old
$MODULE_DIR/modules.symbols
>/dev
/null
55 mv $MODULE_DIR/modules.symbols
$MODULE_DIR/modules.symbols.old
57 [ "`depmod -a`" = "" ]
58 diff -u $MODULE_DIR/modules.dep.old
$MODULE_DIR/modules.dep
>/dev
/null
59 mv $MODULE_DIR/modules.dep
$MODULE_DIR/modules.dep.old
60 diff -u $MODULE_DIR/modules.symbols.old
$MODULE_DIR/modules.symbols
>/dev
/null
61 mv $MODULE_DIR/modules.symbols
$MODULE_DIR/modules.symbols.old
63 [ "`depmod -a $MODTEST_UNAME`" = "" ]
64 diff -u $MODULE_DIR/modules.dep.old
$MODULE_DIR/modules.dep
>/dev
/null
65 mv $MODULE_DIR/modules.dep
$MODULE_DIR/modules.dep.old
66 diff -u $MODULE_DIR/modules.symbols.old
$MODULE_DIR/modules.symbols
>/dev
/null
67 mv $MODULE_DIR/modules.symbols
$MODULE_DIR/modules.symbols.old
69 [ "`depmod -A`" = "" ]
70 diff -u $MODULE_DIR/modules.dep.old
$MODULE_DIR/modules.dep
>/dev
/null
71 mv $MODULE_DIR/modules.dep
$MODULE_DIR/modules.dep.old
72 diff -u $MODULE_DIR/modules.symbols.old
$MODULE_DIR/modules.symbols
>/dev
/null
73 mv $MODULE_DIR/modules.symbols
$MODULE_DIR/modules.symbols.old
75 [ "`depmod -A $MODTEST_UNAME`" = "" ]
76 diff -u $MODULE_DIR/modules.dep.old
$MODULE_DIR/modules.dep
>/dev
/null
77 mv $MODULE_DIR/modules.dep
$MODULE_DIR/modules.dep.old
78 diff -u $MODULE_DIR/modules.symbols.old
$MODULE_DIR/modules.symbols
>/dev
/null
79 mv $MODULE_DIR/modules.symbols
$MODULE_DIR/modules.symbols.old
81 [ "`depmod -e -A`" = "" ]
82 diff -u $MODULE_DIR/modules.dep.old
$MODULE_DIR/modules.dep
>/dev
/null
83 mv $MODULE_DIR/modules.dep
$MODULE_DIR/modules.dep.old
84 diff -u $MODULE_DIR/modules.symbols.old
$MODULE_DIR/modules.symbols
>/dev
/null
85 mv $MODULE_DIR/modules.symbols
$MODULE_DIR/modules.symbols.old
87 [ "`depmod -e -A $MODTEST_VERSION`" = "" ]
88 diff -u $MODULE_DIR/modules.dep.old
$MODULE_DIR/modules.dep
>/dev
/null
89 mv $MODULE_DIR/modules.dep
$MODULE_DIR/modules.dep.old
90 diff -u $MODULE_DIR/modules.symbols.old
$MODULE_DIR/modules.symbols
>/dev
/null
91 mv $MODULE_DIR/modules.symbols
$MODULE_DIR/modules.symbols.old
93 [ "`depmod --all`" = "" ]
94 diff -u $MODULE_DIR/modules.dep.old
$MODULE_DIR/modules.dep
>/dev
/null
95 mv $MODULE_DIR/modules.dep
$MODULE_DIR/modules.dep.old
96 diff -u $MODULE_DIR/modules.symbols.old
$MODULE_DIR/modules.symbols
>/dev
/null
97 mv $MODULE_DIR/modules.symbols
$MODULE_DIR/modules.symbols.old
99 [ "`depmod --quick`" = "" ]
100 diff -u $MODULE_DIR/modules.dep.old
$MODULE_DIR/modules.dep
>/dev
/null
101 mv $MODULE_DIR/modules.dep
$MODULE_DIR/modules.dep.old
102 diff -u $MODULE_DIR/modules.symbols.old
$MODULE_DIR/modules.symbols
>/dev
/null
103 mv $MODULE_DIR/modules.symbols
$MODULE_DIR/modules.symbols.old
105 [ "`depmod -e --quick`" = "" ]
106 diff -u $MODULE_DIR/modules.dep.old
$MODULE_DIR/modules.dep
>/dev
/null
107 mv $MODULE_DIR/modules.dep
$MODULE_DIR/modules.dep.old
108 diff -u $MODULE_DIR/modules.symbols.old
$MODULE_DIR/modules.symbols
>/dev
/null
109 mv $MODULE_DIR/modules.symbols
$MODULE_DIR/modules.symbols.old
111 [ "`depmod -e --quick $MODTEST_VERSION`" = "" ]
112 diff -u $MODULE_DIR/modules.dep.old
$MODULE_DIR/modules.dep
>/dev
/null
113 mv $MODULE_DIR/modules.dep
$MODULE_DIR/modules.dep.old
114 diff -u $MODULE_DIR/modules.symbols.old
$MODULE_DIR/modules.symbols
>/dev
/null
115 mv $MODULE_DIR/modules.symbols
$MODULE_DIR/modules.symbols.old
117 [ "`depmod --errsyms --quick`" = "" ]
118 diff -u $MODULE_DIR/modules.dep.old
$MODULE_DIR/modules.dep
>/dev
/null
119 mv $MODULE_DIR/modules.dep
$MODULE_DIR/modules.dep.old
120 diff -u $MODULE_DIR/modules.symbols.old
$MODULE_DIR/modules.symbols
>/dev
/null
121 mv $MODULE_DIR/modules.symbols
$MODULE_DIR/modules.symbols.old
123 [ "`depmod --errsyms --quick $MODTEST_VERSION`" = "" ]
124 diff -u $MODULE_DIR/modules.dep.old
$MODULE_DIR/modules.dep
>/dev
/null
125 mv $MODULE_DIR/modules.dep
$MODULE_DIR/modules.dep.old
126 diff -u $MODULE_DIR/modules.symbols.old
$MODULE_DIR/modules.symbols
>/dev
/null
127 mv $MODULE_DIR/modules.symbols
$MODULE_DIR/modules.symbols.old
129 # Combined should form stdout versions.
130 grep -vh '^#' $MODULE_DIR/modules.dep.old
$MODULE_DIR/modules.symbols.old
> $MODULE_DIR/modules.all.old
133 depmod
-n |
grep -v '^#' > $MODULE_DIR/modules.all
134 diff -u $MODULE_DIR/modules.all.old
$MODULE_DIR/modules.all
>/dev
/null
135 mv $MODULE_DIR/modules.all
$MODULE_DIR/modules.all.old
137 depmod
-a -n |
grep -v '^#' > $MODULE_DIR/modules.all
138 diff -u $MODULE_DIR/modules.all.old
$MODULE_DIR/modules.all
>/dev
/null
139 mv $MODULE_DIR/modules.all
$MODULE_DIR/modules.all.old
141 depmod
-n -a $MODTEST_VERSION |
grep -v '^#' > $MODULE_DIR/modules.all
142 diff -u $MODULE_DIR/modules.all.old
$MODULE_DIR/modules.all
>/dev
/null
143 mv $MODULE_DIR/modules.all
$MODULE_DIR/modules.all.old
145 depmod
-e -n -A $MODTEST_VERSION |
grep -v '^#' > $MODULE_DIR/modules.all
146 diff -u $MODULE_DIR/modules.all.old
$MODULE_DIR/modules.all
>/dev
/null
147 mv $MODULE_DIR/modules.all
$MODULE_DIR/modules.all.old
149 # For second run, don't override.
150 rm -f $MODULE_DIR/kernel
/export_nodep-
$BITNESS.ko
151 rm -f $MODULE_DIR/modules
*