Home | History | Annotate | Download | only in testsuite
      1 #!/bin/bash
      2 
      3 set -e
      4 
      5 MODULE_PLAYGROUND=$1
      6 ROOTFS=$2
      7 
      8 declare -A map
      9 map=(
     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"
     12     ["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"
     14     ["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"
     19     ["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"
     21     ["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"
     25     ["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"
     29     ["test-init/"]="mod-simple.ko"
     30     ["test-remove/"]="mod-simple.ko"
     31     ["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"
     34     ["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"
     36     ["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"
     38     ["test-modprobe/force/lib/modules/4.4.4/kernel/"]="mod-simple.ko"
     39     ["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"
     41     ["test-modprobe/alias-to-none/lib/modules/4.4.4/kernel/"]="mod-simple.ko"
     42     ["test-modprobe/module-param-kcmdline/lib/modules/4.4.4/kernel/"]="mod-simple.ko"
     43     ["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"
     46     ["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"
     49     ["test-modinfo/mod-simple-sha1.ko"]="mod-simple.ko"
     50     ["test-modinfo/mod-simple-sha256.ko"]="mod-simple.ko"
     51     ["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"
     53 )
     54 
     55 gzip_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 
     61 attach_sha256_array=(
     62     "test-modinfo/mod-simple-sha256.ko"
     63     )
     64 
     65 attach_sha1_array=(
     66     "test-modinfo/mod-simple-sha1.ko"
     67     )
     68 
     69 for k in ${!map[@]}; do
     70     dst=${ROOTFS}/$k
     71     src=${MODULE_PLAYGROUND}/${map[$k]}
     72 
     73     if test "${dst: -1}" = "/"; then
     74         install -d $dst
     75         install -t $dst $src
     76     else
     77         install -D $src $dst
     78     fi
     79 done
     80 
     81 # start poking the final rootfs...
     82 
     83 # gzip these modules
     84 for m in "${gzip_array[@]}"; do
     85     gzip $ROOTFS/$m
     86 done
     87 
     88 for m in "${attach_sha1_array[@]}"; do
     89     cat ${MODULE_PLAYGROUND}/dummy.sha1 >> ${ROOTFS}/$m
     90 done
     91 
     92 for m in "${attach_sha256_array[@]}"; do
     93     cat ${MODULE_PLAYGROUND}/dummy.sha256 >> ${ROOTFS}/$m
     94 done
     95