de1fd2c429f3da50b90adedb8e3948ea45bc6123
[kernel/swap-modules.git] / build.sh
1 #!/bin/bash
2
3 modules_dir=`pwd`
4
5 if [ "$#" -lt 2 ] ; then
6         echo "Usage: $0 <kernel dir> <arch (arm/i386)> [<cross compile>]"
7         exit 1
8 fi
9
10 kernel_dir=$1
11 arch=$2
12 cross_compile=$3
13
14 if [ ${arch} = "arm" ] ; then
15         link_name="arm"
16 elif [ ${arch} = "i386" ] ; then
17         link_name="x86"
18 else
19         echo "Unknown arch $arch"
20         exit 1
21 fi
22
23 buffer_dir=${modules_dir}/buffer
24 driver_dir=${modules_dir}/driver
25 writer_dir=${modules_dir}/writer
26 kprobe_dir=${modules_dir}/kprobe
27 kprobe_arch_dir=${kprobe_dir}/arch
28 ksyms_dir=${modules_dir}/ksyms
29 ks_manager_dir=${modules_dir}/ks_manager
30 uprobe_dir=${modules_dir}/uprobe
31 uprobe_arch_dir=${uprobe_dir}/arch
32 us_manager_dir=${modules_dir}/us_manager
33 ks_features_dir=${modules_dir}/ks_features
34 sampler_dir=${modules_dir}/sampler
35 energy_dir=${modules_dir}/energy
36 parser_dir=${modules_dir}/parser
37
38 install_dir="/opt/swap/sdk"
39
40 rm -f ${kprobe_arch_dir}/asm
41 ln -s asm-${link_name} ${kprobe_arch_dir}/asm
42 rm -f ${uprobe_arch_dir}/asm
43 ln -s asm-${link_name} ${uprobe_arch_dir}/asm
44
45 make CROSS_COMPILE=${cross_compile} ARCH=${arch} -C ${kernel_dir} \
46         M=${modules_dir} extra_cflags="-Werror -I${modules_dir}" modules || exit 1
47
48 modules=\
49 "${buffer_dir}/${buffer_module_name} \
50 ${driver_dir}/${driver_module_name} \
51 ${writer_dir}/${writer_module_name} \
52 ${kprobe_dir}/${kprobe_module_name} \
53 ${ks_manager_dir}/${ks_manager_module_name} \
54 ${uprobe_dir}/${uprobe_module_name} \
55 ${us_manager_dir}/${us_manager_module_name} \
56 ${ks_features_dir}/${ks_features_module_name} \
57 ${sampler_dir}/${sampler_module_name} \
58 ${energy_dir}/${energy_module_name} \
59 ${parser_dir}/${parser_module_name}"
60
61 # for m in ${modules} ; do
62 #       sdb -e push $m ${install_dir}
63 # done