blob: a7e503603b9505f2b5e5aff01d16b54650a1cc8f [file] [log] [blame]
Lucas De Marchi4002d772015-02-02 22:26:06 -02001#!/bin/bash
2
3set -e
4
5MODULE_PLAYGROUND=$1
6ROOTFS=$2
7
8declare -A map
9map=(
10 ["test-depmod/search-order-simple/lib/modules/4.4.4/kernel/crypto/"]="mod-simple.ko"
11 ["test-depmod/search-order-simple/lib/modules/4.4.4/updates/"]="mod-simple.ko"
Lucas De Marchi8dddac52015-02-02 22:35:02 -020012 ["test-depmod/search-order-same-prefix/lib/modules/4.4.4/foo/"]="mod-simple.ko"
13 ["test-depmod/search-order-same-prefix/lib/modules/4.4.4/foobar/"]="mod-simple.ko"
Lucas De Marchid9ab7ab2015-02-09 14:07:31 -020014 ["test-depmod/detect-loop/lib/modules/4.4.4/kernel/mod-loop-a.ko"]="mod-loop-a.ko"
15 ["test-depmod/detect-loop/lib/modules/4.4.4/kernel/mod-loop-b.ko"]="mod-loop-b.ko"
16 ["test-depmod/detect-loop/lib/modules/4.4.4/kernel/mod-loop-c.ko"]="mod-loop-c.ko"
17 ["test-depmod/detect-loop/lib/modules/4.4.4/kernel/mod-loop-d.ko"]="mod-loop-d.ko"
18 ["test-depmod/detect-loop/lib/modules/4.4.4/kernel/mod-loop-e.ko"]="mod-loop-e.ko"
Mian Yousaf Kaukab965886b2016-11-08 17:45:49 +010019 ["test-depmod/detect-loop/lib/modules/4.4.4/kernel/mod-loop-f.ko"]="mod-loop-f.ko"
20 ["test-depmod/detect-loop/lib/modules/4.4.4/kernel/mod-loop-g.ko"]="mod-loop-g.ko"
Yauheni Kaliuta9be03c52017-02-22 11:41:58 +020021 ["test-depmod/detect-loop/lib/modules/4.4.4/kernel/mod-loop-h.ko"]="mod-loop-h.ko"
22 ["test-depmod/detect-loop/lib/modules/4.4.4/kernel/mod-loop-i.ko"]="mod-loop-i.ko"
23 ["test-depmod/detect-loop/lib/modules/4.4.4/kernel/mod-loop-j.ko"]="mod-loop-j.ko"
24 ["test-depmod/detect-loop/lib/modules/4.4.4/kernel/mod-loop-k.ko"]="mod-loop-k.ko"
Lucas De Marchi450c1f02015-02-03 00:24:33 -020025 ["test-dependencies/lib/modules/4.0.20-kmod/kernel/fs/foo/"]="mod-foo-b.ko"
26 ["test-dependencies/lib/modules/4.0.20-kmod/kernel/"]="mod-foo-c.ko"
27 ["test-dependencies/lib/modules/4.0.20-kmod/kernel/lib/"]="mod-foo-a.ko"
28 ["test-dependencies/lib/modules/4.0.20-kmod/kernel/fs/"]="mod-foo.ko"
Lucas De Marchi1669be82015-02-03 05:17:10 -020029 ["test-init/"]="mod-simple.ko"
30 ["test-remove/"]="mod-simple.ko"
Lucas De Marchieeb62702015-02-10 09:30:49 -020031 ["test-modprobe/show-depends/lib/modules/4.4.4/kernel/mod-loop-a.ko"]="mod-loop-a.ko"
32 ["test-modprobe/show-depends/lib/modules/4.4.4/kernel/mod-loop-b.ko"]="mod-loop-b.ko"
33 ["test-modprobe/show-depends/lib/modules/4.4.4/kernel/mod-simple.ko"]="mod-simple.ko"
Lucas De Marchi1e128242015-02-10 21:45:09 -020034 ["test-modprobe/softdep-loop/lib/modules/4.4.4/kernel/mod-loop-a.ko"]="mod-loop-a.ko"
35 ["test-modprobe/softdep-loop/lib/modules/4.4.4/kernel/mod-loop-b.ko"]="mod-loop-b.ko"
Lucas De Marchi621ac882015-02-11 02:50:06 -020036 ["test-modprobe/install-cmd-loop/lib/modules/4.4.4/kernel/mod-loop-a.ko"]="mod-loop-a.ko"
37 ["test-modprobe/install-cmd-loop/lib/modules/4.4.4/kernel/mod-loop-b.ko"]="mod-loop-b.ko"
Lucas De Marchia1a13692015-02-10 22:01:42 -020038 ["test-modprobe/force/lib/modules/4.4.4/kernel/"]="mod-simple.ko"
Lucas De Marchi33c11852015-02-10 22:11:25 -020039 ["test-modprobe/oldkernel/lib/modules/3.3.3/kernel/"]="mod-simple.ko"
40 ["test-modprobe/oldkernel-force/lib/modules/3.3.3/kernel/"]="mod-simple.ko"
Lucas De Marchibf0b87f2015-02-10 22:19:53 -020041 ["test-modprobe/alias-to-none/lib/modules/4.4.4/kernel/"]="mod-simple.ko"
Lucas De Marchi246d67d2015-02-11 02:59:08 -020042 ["test-modprobe/module-param-kcmdline/lib/modules/4.4.4/kernel/"]="mod-simple.ko"
Lucas De Marchi2a388702015-02-19 19:50:16 -020043 ["test-depmod/modules-order-compressed/lib/modules/4.4.4/kernel/drivers/block/cciss.ko"]="mod-fake-cciss.ko"
44 ["test-depmod/modules-order-compressed/lib/modules/4.4.4/kernel/drivers/scsi/hpsa.ko"]="mod-fake-hpsa.ko"
45 ["test-depmod/modules-order-compressed/lib/modules/4.4.4/kernel/drivers/scsi/scsi_mod.ko"]="mod-fake-scsi-mod.ko"
Lucas De Marchi77fdc662015-02-21 15:09:12 -020046 ["test-modinfo/mod-simple-i386.ko"]="mod-simple-i386.ko"
47 ["test-modinfo/mod-simple-x86_64.ko"]="mod-simple-x86_64.ko"
48 ["test-modinfo/mod-simple-sparc64.ko"]="mod-simple-sparc64.ko"
Lucas De Marchi3f0eb432015-02-21 15:47:16 -020049 ["test-modinfo/mod-simple-sha1.ko"]="mod-simple.ko"
50 ["test-modinfo/mod-simple-sha256.ko"]="mod-simple.ko"
Caio Marcelo de Oliveira Filho03761882015-03-07 10:32:53 -030051 ["test-tools/insert/lib/modules/4.4.4/kernel/"]="mod-simple.ko"
52 ["test-tools/remove/lib/modules/4.4.4/kernel/"]="mod-simple.ko"
Lucas De Marchi4002d772015-02-02 22:26:06 -020053)
54
Lucas De Marchi2a388702015-02-19 19:50:16 -020055gzip_array=(
56 "test-depmod/modules-order-compressed/lib/modules/4.4.4/kernel/drivers/block/cciss.ko"
57 "test-depmod/modules-order-compressed/lib/modules/4.4.4/kernel/drivers/scsi/hpsa.ko"
58 "test-depmod/modules-order-compressed/lib/modules/4.4.4/kernel/drivers/scsi/scsi_mod.ko"
59 )
60
Lucas De Marchi3f0eb432015-02-21 15:47:16 -020061attach_sha256_array=(
62 "test-modinfo/mod-simple-sha256.ko"
63 )
64
65attach_sha1_array=(
66 "test-modinfo/mod-simple-sha1.ko"
67 )
68
Lucas De Marchi4002d772015-02-02 22:26:06 -020069for k in ${!map[@]}; do
70 dst=${ROOTFS}/$k
71 src=${MODULE_PLAYGROUND}/${map[$k]}
72
Lucas De Marchid9ab7ab2015-02-09 14:07:31 -020073 if test "${dst: -1}" = "/"; then
74 install -d $dst
75 install -t $dst $src
76 else
77 install -D $src $dst
78 fi
Lucas De Marchi4002d772015-02-02 22:26:06 -020079done
Lucas De Marchi2a388702015-02-19 19:50:16 -020080
81# start poking the final rootfs...
82
83# gzip these modules
84for m in "${gzip_array[@]}"; do
85 gzip $ROOTFS/$m
86done
Lucas De Marchi3f0eb432015-02-21 15:47:16 -020087
88for m in "${attach_sha1_array[@]}"; do
89 cat ${MODULE_PLAYGROUND}/dummy.sha1 >> ${ROOTFS}/$m
90done
91
92for m in "${attach_sha256_array[@]}"; do
93 cat ${MODULE_PLAYGROUND}/dummy.sha256 >> ${ROOTFS}/$m
94done