52 lines (48 loc) · 2.04 KB
/
build.yml
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
name: Build
on: [pull_request]
jobs:
commontasks:
runs-on: ubuntu-latest
outputs:
matrix: ${{ steps.set-matrix.outputs.matrix }}
steps:
- uses: actions/checkout@v2
- name: Avoid 0x0BDA
#Find devices that not use 0x0BDA instead of const USB_VENDOR_ID_REALTEK
run: grep -c -i "0x0BDA" os_dep/linux/usb_intf.c | grep -w 1
- name: Find duplicates
#Find devices that not use 0x0BDA instead of const USB_VENDOR_ID_REALTEK
run: grep -i "{USB_DEVICE(" os_dep/linux/usb_intf.c | cut -d ')' -f1 | sort | uniq -cd | wc -c | grep -w 0
- name: Get kernel matrix
id: set-matrix
run: |
JSON=$(curl -s https://www.kernel.org/releases.json)
VERSIONSARRAY=$(echo $JSON | jq -c '[.releases[] | {version: .version, moniker: .moniker} | select(.moniker != "linux-next") | .version]')
echo ::set-output name=matrix::${VERSIONSARRAY}
build:
needs: commontasks
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
version: ${{fromJson(needs.commontasks.outputs.matrix)}}
#version: [4.9.248, 4.4.248]
steps:
- name: install deb packages
env:
VERSION: ${{matrix.version }}
run: |
KERNEL_URL=https://kernel.ubuntu.com/~kernel-ppa/mainline/
KERNEL_URL_DETAILS=$(wget --quiet -O - ${KERNEL_URL}v${VERSION}/ | grep -A8 "Build for amd64\|Test amd64")
ALL_DEB=$(echo "$KERNEL_URL_DETAILS" | grep -m1 'all.deb' | cut -d '"' -f 2)
AMD64_DEB=$(echo "$KERNEL_URL_DETAILS" | grep -m1 "amd64.deb" | cut -d '"' -f 2)
[ -z "$ALL_DEB" ] && exit 1
[ -z "$AMD64_DEB" ] && exit 2
wget -nv ${KERNEL_URL}v${VERSION}/$AMD64_DEB
wget -nv ${KERNEL_URL}v${VERSION}/$ALL_DEB
wget -nv http://mirrors.kernel.org/ubuntu/pool/main/g/glibc/libc6_2.33-0ubuntu5_amd64.deb
sudo dpkg --force-all -i *.deb
echo "KVER=$(echo $ALL_DEB | cut -d '_' -f 2 | rev | cut -c14- | rev)-generic" >> $GITHUB_ENV
- uses: actions/checkout@v2
- name: build
run: make KVER=$KVER