[IMPROVE] initial version of build.sh and start.sh
[kernel/swap-modules.git] / build.sh
1 #!/bin/bash
2
3 modules_dir=`pwd`
4 # kernel_dir="/home/kain/dev/inperfa/kernel/redwood/linux-3.4-exynos"
5 kernel_dir="/home/kain/dev/inperfa/tizen/da/emulator-kernel"
6 # cross_compile=arm-none-linux-gnueabi-
7 # arch=arm
8 arch=i386
9
10 if [ ${arch} = "arm" ] ; then
11         link_name="arm"
12 elif [ ${arch} = "i386" ] ; then
13         link_name="x86"
14 else
15         echo "Unknown arch $arch"
16         exit 1
17 fi
18
19 buffer_dir=${modules_dir}/buffer
20 writer_dir=${modules_dir}/writer
21 driver_new_dir=${modules_dir}/driver_new
22 kprobe_dir=${modules_dir}/kprobe
23 kprobe_arch_dir=${kprobe_dir}/arch
24 ksyms_dir=${modules_dir}/ksyms
25 ks_manager_dir=${modules_dir}/ks_manager
26 uprobe_dir=${modules_dir}/uprobe
27 uprobe_arch_dir=${uprobe_dir}/arch
28 us_manager_dir=${modules_dir}/us_manager
29 ks_features_dir=${modules_dir}/ks_features
30 sampler_dir=${modules_dir}/sampler
31 parser_dir=${modules_dir}/parser
32
33 driver_dir=${modules_dir}/driver
34 common_dir=${modules_dir}/../common
35
36 install_dir="/opt/swap/sdk"
37
38 rm ${kprobe_arch_dir}/asm
39 ln -s asm-${link_name} ${kprobe_arch_dir}/asm
40 rm ${uprobe_arch_dir}/asm
41 ln -s asm-${link_name} ${uprobe_arch_dir}/asm
42
43 buffer_module_name=swap_buffer.ko
44 buffer_inc=${modules_inc}
45 make CROSS_COMPILE=${cross_compile} ARCH=${arch} -C ${kernel_dir} M=${buffer_dir} modules || exit 1
46
47 writer_module_name=swap_writer.ko
48 writer_inc=${modules_inc}
49 make CROSS_COMPILE=${cross_compile} ARCH=${arch} -C ${kernel_dir} M=${writer_dir} modules || exit 1
50
51 driver_new_module_name=swap_driver_new.ko
52 make CROSS_COMPILE=${cross_compile} ARCH=${arch} -C ${kernel_dir} M=${driver_new_dir} \
53         extra_cflags="-I${modules_dir}" modules || exit 1
54
55 kprobe_module_name=swap_kprobe.ko
56 make CROSS_COMPILE=${cross_compile} ARCH=${arch} -C ${kernel_dir} M=${kprobe_dir} \
57         extra_cflags="-I${modules_dir} -I${kprobe_dir} -I${kprobe_arch_dir} -I${ksyms_dir}" \
58         modules || exit 1
59
60 ks_manager_module_name=swap_ks_manager.ko
61 make CROSS_COMPILE=${cross_compile} ARCH=${arch} -C ${kernel_dir} M=${ks_manager_dir} \
62         extra_cflags="-I${kprobe_dir} -I${kprobe_arch_dir}" \
63         modules || exit 1
64
65 uprobe_module_name=swap_uprobe.ko
66 make CROSS_COMPILE=${cross_compile} ARCH=${arch} -C ${kernel_dir} M=${uprobe_dir} \
67         extra_cflags="-I${kprobe_dir} -I${kprobe_arch_dir} -I${uprobe_dir} -I${uprobe_arch_dir}" \
68         modules || exit 1
69
70 us_manager_module_name=swap_us_manager.ko
71 make CROSS_COMPILE=${cross_compile} ARCH=${arch} -C ${kernel_dir} M=${us_manager_dir} \
72         extra_cflags="-I${modules_dir} -I${us_manager_dir} -I${kprobe_dir} -I${kprobe_arch_dir} -I${uprobe_dir} -I${uprobe_arch_dir} -I${driver_dir} -I${common_dir} -I${ksyms_dir}" \
73         modules || exit 1
74
75 ks_features_module_name=swap_ks_features.ko
76 make CROSS_COMPILE=${cross_compile} ARCH=${arch} -C ${kernel_dir} M=${ks_features_dir} \
77         extra_cflags="-I${modules_dir} -I${kprobe_dir} -I${kprobe_arch_dir} -I${ksyms_dir}" \
78         modules || exit 1
79
80 sampler_module_name=swap_sampler.ko
81 make CROSS_COMPILE=${cross_compile} ARCH=${arch} -C ${kernel_dir} M=${sampler_dir} \
82         extra_cflags="-I${modules_dir}" modules || exit 1
83
84 parser_module_name=swap_message_parser.ko
85 make CROSS_COMPILE=${cross_compile} ARCH=${arch} -C ${kernel_dir} M=${parser_dir} \
86         extra_cflags="-I${modules_dir}" modules || exit 1
87
88 modules=\
89 "${buffer_dir}/${buffer_module_name} \
90 ${writer_dir}/${writer_module_name} \
91 ${driver_new_dir}/${driver_new_module_name} \
92 ${kprobe_dir}/${kprobe_module_name} \
93 ${ks_manager_dir}/${ks_manager_module_name} \
94 ${uprobe_dir}/${uprobe_module_name} \
95 ${us_manager_dir}/${us_manager_module_name} \
96 ${ks_features_dir}/${ks_features_module_name} \
97 ${sampler_dir}/${sampler_module_name} \
98 ${parser_dir}/${parser_module_name}"
99
100 for m in ${modules} ; do
101         sdb -e push $m ${install_dir}
102 done