|
1 | 1 | #!/bin/bash |
2 | | -#set -x |
3 | | - |
4 | | -if [ "$1" == "skipkabi" ]; then |
5 | | - echo "kABI check will be skipped" |
6 | | -fi |
| 2 | +set -e |
| 3 | + |
| 4 | +SKIP_MRPROPER=0 |
| 5 | +SKIP_KABI=0 |
| 6 | + |
| 7 | +print_help() { |
| 8 | +cat <<EOF |
| 9 | +Usage: $0 [OPTIONS] |
| 10 | +
|
| 11 | +Options: |
| 12 | + -m, --skip-mrproper Skip 'make mrproper' |
| 13 | + -k, --skip-kabi Skip kABI check |
| 14 | + -h, --help Show this help message |
| 15 | +EOF |
| 16 | +} |
| 17 | + |
| 18 | +# Parse arguments |
| 19 | +while [ "$#" -gt 0 ]; do |
| 20 | + case "$1" in |
| 21 | + -m|--skip-mrproper) SKIP_MRPROPER=1 ;; |
| 22 | + -k|--skip-kabi) SKIP_KABI=1 ;; |
| 23 | + -h|--help) print_help; exit 0 ;; |
| 24 | + --) shift; break ;; |
| 25 | + -*) |
| 26 | + echo "Unknown option: $1" |
| 27 | + print_help |
| 28 | + exit 1 |
| 29 | + ;; |
| 30 | + *) break ;; |
| 31 | + esac |
| 32 | + shift |
| 33 | +done |
7 | 34 |
|
8 | 35 | pwd |
9 | 36 |
|
10 | 37 | BRANCH=$(git branch | grep \* | cut -d ' ' -f2 | sed 's/[{}()]//g; s/\//_/g') |
11 | 38 |
|
12 | 39 | START=$(date +%s) |
13 | 40 | START_MRPROPER=$(date +%s) |
14 | | -if [ -e .config ]; then |
| 41 | + |
| 42 | +if [ "$SKIP_MRPROPER" -ne 1 ]; then |
| 43 | + echo "Running make mrproper..." |
15 | 44 | make mrproper | tee "/tmp/${BRANCH}_make_mrproper.log" |
16 | | - if [ $? -ne 0 ]; then |
| 45 | + if [[ $? -ne 0 ]]; then |
17 | 46 | echo "Error: make mrproper failed" |
18 | 47 | echo "[TIMER]{MRPROPER} $(( $(date +%s) - $START_MRPROPER ))s" |
19 | 48 | exit 1 |
20 | 49 | fi |
21 | 50 | else |
22 | | - echo "no .config file found, moving on" |
| 51 | + echo "Skipping make mrproper" |
23 | 52 | fi |
24 | 53 |
|
25 | 54 | END_MRPROPER=$(date +%s) |
26 | 55 | echo "[TIMER]{MRPROPER}: $(( $END_MRPROPER - $START_MRPROPER ))s" |
27 | 56 |
|
28 | | - |
29 | 57 | ARCH=$(uname -m) |
30 | 58 | if [ "x86_64" == "${ARCH}" ] || [ "aarch64" == "${ARCH}" ]; then |
31 | 59 | VERSION=$(uname -r | cut -d '-' -f1) |
|
87 | 115 | END_INSTALL=$(date +%s) |
88 | 116 | echo "[TIMER]{INSTALL}: $(( $END_INSTALL - $START_INSTALL ))s" |
89 | 117 |
|
90 | | -echo "Checking kABI" |
91 | | -# ../kernel-dist-git/SOURCES/check-kabi -k ../kernel-dist-git/SOURCES/Module.kabi_x86_64 -s Module.symvers || echo "kABI failed" |
92 | | -if [ "$1" == "skipkabi" ]; then |
93 | | - echo "kABI check skipped" |
| 118 | +# Run kABI check unless skipped |
| 119 | +if [ "$SKIP_KABI" -eq 1 ]; then |
| 120 | + echo "Skipping kABI check" |
94 | 121 | else |
95 | 122 | echo "Checking kABI" |
96 | | - KABI_CHECK=$(../kernel-dist-git/SOURCES/check-kabi -k ../kernel-dist-git/SOURCES/Module.kabi_${ARCH} -s Module.symvers) |
| 123 | + ../kernel-dist-git/SOURCES/check-kabi -k ../kernel-dist-git/SOURCES/Module.kabi_${ARCH} -s Module.symvers |
97 | 124 | if [ $? -ne 0 ]; then |
98 | 125 | echo "Error: kABI check failed" |
99 | 126 | exit 1 |
|
0 commit comments