forked from OpenViX/enigma2
-
Notifications
You must be signed in to change notification settings - Fork 0
129 lines (116 loc) · 3.69 KB
/
enigma2.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
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
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
name: Enigma2 Python 3
on:
push:
branches: [ Release, Developer, FCC, dm9x0 ]
paths-ignore:
- '**/README'
- '**/DOCS'
pull_request:
branches: [Release, Developer, FCC, dm9x0 ]
paths-ignore:
- '**/README'
- '**/DOCS'
jobs:
build:
runs-on: ubuntu-22.04
strategy:
matrix:
gcc: [13]
python: ['3.12']
steps:
- name: install dev packages
run: |
sudo add-apt-repository -y ppa:ubuntu-toolchain-r/test
sudo apt-get -q update
sudo apt remove -y libunwind-14-dev
sudo apt-get install g++-${{ matrix.gcc }}
sudo apt-get install linux-libc-dev
sudo apt-get install git
sudo apt-get install build-essential
sudo apt-get install automake
sudo apt-get install libtool
sudo apt-get install python3-dev
sudo apt-get install zlib1g-dev
sudo apt-get install gettext
sudo apt-get install swig
sudo apt-get install libgstreamer1.0-dev
sudo apt-get install libgstreamer-plugins-base1.0-dev
sudo apt-get install libfreetype6-dev
sudo apt-get install libfribidi-dev
sudo apt-get install libssl-dev
sudo apt-get install libavahi-client-dev
sudo apt-get install libjpeg-turbo8-dev
sudo apt-get install libgif-dev
sudo apt-get install mm-common
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python }}
- name: Install python ${{ matrix.python }} packages
run: |
pip3 install flake8
- name: Check format PEP8
run: |
echo "checking locale format..."
find . -type f -name "*.po" -exec msgfmt {} -o {}.mo \;
echo "checking PEP8 validation..."
flake8 --builtins="_,ngettext,pgettext" --ignore=W191,W503,W504,E123,E126,E128,E501,E722 . --exit-zero
echo "check format PEP8 completed!"
# PEP8 :- IGNORE CODES
# W191 : indentation contains tabs
# W503 : line break before binary operator
# W504 : line break after binary operator
# E128 : continuation line under-indented for visual indent
# E501 : line too long (> 79 characters)
# E722 : do not use bare 'except'
- name: Build enigma2 dependencies, gcc-${{ matrix.gcc }}
env:
CC: "gcc-${{ matrix.gcc }}"
CXX: "g++-${{ matrix.gcc }}"
run: |
echo "installing libdvbsi++"
pushd .
cd /tmp
git clone --depth 1 https://github.com/oe-alliance/libdvbsi.git
cd libdvbsi
autoreconf -i
./configure
make
sudo make install
popd
echo "installing libsigc++-3"
pushd .
cd /tmp
git clone --depth 1 https://github.com/TwolDE2/libsigc--3.0.git
cd libsigc--3.0
autoreconf -i
./configure
make
sudo make install
popd
echo "installing tuxbox"
pushd .
cd /tmp
git clone --depth 1 https://github.com/OpenPLi/tuxtxt.git
cd tuxtxt/libtuxtxt
autoreconf -i
./configure --with-boxtype=generic DVB_API_VERSION=5
make
sudo make install
cd ../tuxtxt
autoreconf -i
./configure --with-boxtype=generic DVB_API_VERSION=5
make
sudo make install
popd
- name: build enigma2
env:
CC: "gcc-${{ matrix.gcc }}"
CXX: "g++-${{ matrix.gcc }}"
run: |
echo "compiling enigma2"
autoreconf -i
./configure --with-libsdl=no --with-boxtype=nobox --enable-dependency-tracking ac_cv_prog_c_openmp=-fopenmp --with-gstversion=1.0 --with-textlcd
make
python -m compileall .
echo "checking enigma2 compiles completed"