~le-chi-thu/linaro-ci/fixed-snowball-download

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
}