1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
|
#!/bin/sh
# Global Variables
bundle_stream_name_path="/anonymous/ci-$bundle_stream_name/"
log_info=$BUILD_URL"consoleText"
pkg_dir=$kernel_version"_output_dir"
echo > hwpack_info # start with empty
echo KERNEL_CONFIG=$kernel_config >> hwpack_info
echo OS_INFO=`cat /etc/lsb-release | grep DISTRIB_DESCRIPTION | cut -d '=' -f 2` >> hwpack_info
echo LOG=$log_info >> hwpack_info
echo BUILD_ID=$BUILD_NUMBER >> hwpack_info
echo GCC_VERSION=`dpkg -s gcc | grep Version | cut -d ' ' -f2` >> hwpack_info
echo GCC_CROSS_COMPILER=`dpkg -s gcc-arm-linux-gnueabi | grep Version | cut -d ' ' -f2` >> hwpack_info
echo BOARD_TYPE=$board_type >> hwpack_info
echo HWPACK_TYPE=$hwpack_type >> hwpack_info
echo ROOTFS_TYPE=$rootfs_type >> hwpack_info
echo BUNDLE_STREAM_NAME=$bundle_stream_name_path >> hwpack_info
echo JOB_URL=http://snapshots.linaro.org/kernel-hwpack/ >> hwpack_info
echo KERNEL_VERSION=`git describe --match='v*'` >> hwpack_info
echo KERNEL_GIT=$KERNEL_GIT >> hwpack_info
echo KERNEL_COMMIT=$KERNEL_COMMIT >> hwpack_info
echo COMMIT_TIME=`git show -s --format=%cD HEAD` >> hwpack_info
echo KERNEL_NAME=$bundle_stream_name >> hwpack_info
echo SUBMIT_LAVA_JOB=$submit_job >> hwpack_info
echo KERNEL_BUILD_URL=$BUILD_URL >> hwpack_info
echo KERNEL_BRANCH=`git branch | grep -e '*' | cut -d '*' -f 2` >> hwpack_info
echo KERNEL_JOB_NAME=$JOB_NAME >> hwpack_info
echo GIT_LOG=`git log -n1 --pretty=oneline` >> hwpack_info
echo GIT_WEB_URL=$git_web_url >> hwpack_info
build_setup()
{
rm -f *.deb
cp scripts/package/builddeb scripts/package/builddeb.orig
cp builddeb scripts/package/builddeb
cpu_count=`cat /proc/cpuinfo | grep processor | wc -l`
if test x$cpu_count = x; then
cpu_count=1
fi
export j_count=`expr $cpu_count '*' 2`
rm -rf $pkg_dir
mkdir $pkg_dir
}
build_instructions()
{
# Calling the function build setup to create build env
build_setup
START=$(date +%s)
make ARCH=arm clean mrproper
make ARCH=arm O=$pkg_dir KERNELVERSION="$kernel_version" KERNELRELEASE="$kernel_version" CROSS_COMPILE=arm-linux-gnueabi- $kernel_config
yes "" | make ARCH=arm O=$pkg_dir KERNELVERSION="$kernel_version" KERNELRELEASE="$kernel_version" CROSS_COMPILE=arm-linux-gnueabi- oldconfig
# Enabling the THUMB2 kernel option as the THUMB kernel does not seem to work
# well with THUMB2 userspace. This fixes the reboot issue(bug: 860556) we have seen
# for THUMB Kernel working with THUMB2 userspace.
echo "CONFIG_ARCH_OMAP2=n" >> $WORKSPACE/$pkg_dir/.config
echo "CONFIG_THUMB2_KERNEL=y" >> $WORKSPACE/$pkg_dir/.config
yes "" | make ARCH=arm O=$pkg_dir KERNELVERSION="$kernel_version" KERNELRELEASE="$kernel_version" CROSS_COMPILE=arm-linux-gnueabi- oldconfig
make ARCH=arm O=$pkg_dir KERNELVERSION="$kernel_version" KERNELRELEASE="$kernel_version" CROSS_COMPILE=arm-linux-gnueabi- -j$j_count uImage
make ARCH=arm O=$pkg_dir KERNELVERSION="$kernel_version" KERNELRELEASE="$kernel_version" CROSS_COMPILE=arm-linux-gnueabi- -j$j_count modules
make ARCH=arm O=$pkg_dir KERNELVERSION="$kernel_version" KERNELRELEASE="$kernel_version" CROSS_COMPILE=arm-linux-gnueabi- KBUILD_DEBARCH=armel V=1 deb-pkg
END=$(date +%s)
EXECUTION_TIME_IN_SEC=$(( $END - $START ))
latest_kernel=`python lci-build-tools/get_latest_slo_hwpack`
latest_hwpack_name=`basename $latest_kernel`
python lci-build-tools/download_file $latest_kernel
rm -rf linaro-image-tools
bzr branch lp:linaro-image-tools
new_hwpack_name=`python linaro-image-tools/linaro-hwpack-replace -t $latest_hwpack_name -p ./linux-image*${kernel_version}*.deb -r linux-image -n $BUILD_NUMBER`
use_hwpack_name=`basename $new_hwpack_name`
echo HWPACK_NAME=$use_hwpack_name >> hwpack_info
echo URL=$JENKINS_HOME/jobs/$JOB_NAME/workspace/$use_hwpack_name >> hwpack_info
echo EXECUTION_TIME_IN_SEC=$(( $END - $START )) >> hwpack_info
echo HWPACK_BUILD_DATE=`echo $use_hwpack_name | cut -d '_' -f3` >>hwpack_info
rm -rf $latest_hwpack_name
cp scripts/package/builddeb.orig scripts/package/builddeb
}
|