-
Notifications
You must be signed in to change notification settings - Fork 286
78 lines (64 loc) · 2.27 KB
/
ubuntu-venv.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
name: Ubuntu-python-bindings-venv
# https://www.jeffgeerling.com/blog/2020/running-github-actions-workflow-on-schedule-and-other-events
on:
pull_request:
types: [opened, reopened, synchronize]
schedule:
- cron: '0 2 * * SUN'
# https://stackoverflow.com/questions/66335225/how-to-cancel-previous-runs-in-the-pr-when-you-push-new-commitsupdate-the-curre#comment133398800_72408109
# https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#concurrency
concurrency:
group: ${{ github.workflow }}-${{ github.ref || github.run_id }}
cancel-in-progress: true
jobs:
build-ubuntu-dep-apt-venv:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Print system information
run: lscpu
- name: Print OS information
run: lsb_release -a
- name: Print compiler information
run: dpkg --list | grep compiler
- name: Install dependencies
run: |
sudo apt-get update
sudo apt-get install -y libx11-dev libdc1394-dev libv4l-dev liblapack-dev libopenblas-dev libeigen3-dev
sudo apt-get install libopencv-dev nlohmann-json3-dev
sudo apt-get install python3
- name: Upgrade pip3
run: |
python3 -m pip install --upgrade pip
- name: pip3 version
run: |
pip3 --version
- name: Install virtualenv
run: |
pip3 install virtualenv
- name: Setup PATH
run: |
echo "PATH=$PATH:$HOME/.local/bin" >> $GITHUB_ENV
echo ${PATH}
- name: Create build folder
run: |
mkdir build
cd build
- name: Build Python bindings
working-directory: build
run: |
echo "Create virtual env"
virtualenv venv
echo "Activate virtual env"
. venv/bin/activate
echo "Install pybind11"
pip install pybind11[global]
echo "Configure"
cmake .. -DBUILD_DEPRECATED_FUNCTIONS=OFF -DBUILD_EXAMPLES=OFF -DBUILD_TUTORIALS=OFF -DBUILD_TESTS=OFF -DBUILD_APPS=OFF -DBUILD_DEMOS=OFF
echo "Build python bindings"
make -j$(nproc) visp_python_bindings
echo "Build python tests"
make -j$(nproc) visp_python_bindings_test
echo "Build python doc"
make -j$(nproc) visp_python_bindings_doc