-
Notifications
You must be signed in to change notification settings - Fork 23
130 lines (128 loc) · 4.23 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
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
129
130
name: Build
on:
push:
repository_dispatch:
types: [run_build]
# Allows you to run this workflow manually from the Actions tab
workflow_dispatch:
jobs:
build-linux:
runs-on: ubuntu-20.04
steps:
- uses: actions/checkout@v3
- uses: actions/setup-python@v2
- name: Install dependencies
run: |
sudo apt-get update
sudo apt-get install -y software-properties-common
sudo apt-get install -y cmake cmake-data git build-essential autoconf automake libtool texinfo bison flex pkg-config
- name: Clone
run: |
export REV=dirty-$(git describe --always)
git clone https://github.com/vitasdk/buildscripts.git
chmod +x *.sh
- name: Build
run: |
cd buildscripts
git config --global user.email "[email protected]"
git config --global user.name "Travis CI"
mkdir build
cd build
cmake ..
make -j$(nproc) tarball
- name: Upload artifacts
if: ${{ success() }}
uses: actions/upload-artifact@v3
with:
name: vitasdk-linux
path: buildscripts/build/*.tar.bz2
- uses: svenstaro/upload-release-action@v2
if: contains(github.ref,'refs/heads/master')
with:
repo_token: ${{ secrets.GITHUB_TOKEN }}
file: buildscripts/build/*.tar.bz2
overwrite: true
file_glob: true
tag: master-linux-v2.${{github.run_number}}
release_name: master-linux-v2.${{github.run_number}}
build-macos:
runs-on: macos-12
steps:
- uses: actions/checkout@v3
- uses: actions/setup-python@v2
- name: Install dependencies
run: |
brew install autoconf automake libtool
- name: Clone
run: |
export REV=dirty-$(git describe --always)
git clone https://github.com/vitasdk/buildscripts.git
chmod +x *.sh
- name: Build
run: |
cd buildscripts
git config --global user.email "[email protected]"
git config --global user.name "Travis CI"
mkdir build
cd build
cmake ..
make -j$(nproc) tarball
- name: Upload artifacts
if: ${{ success() }}
uses: actions/upload-artifact@v3
with:
name: vitasdk-macos
path: buildscripts/build/*.tar.bz2
- uses: svenstaro/upload-release-action@v2
if: contains(github.ref,'refs/heads/master')
with:
repo_token: ${{ secrets.GITHUB_TOKEN }}
file: buildscripts/build/*.tar.bz2
overwrite: true
file_glob: true
tag: master-osx-v2.${{github.run_number}}
release_name: master-osx-v2.${{github.run_number}}
build-windows:
# TODO match as build-linux
# we don't know reason yet, mingw build was failed when libelf compille.
# mingw output have to be static linking, and that this reason, we are able to use 22.04 in here
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v3
- uses: actions/setup-python@v2
- name: Install dependencies
run: |
sudo apt-get update
sudo apt-get install -y software-properties-common
sudo apt-get install -y cmake cmake-data git build-essential autoconf automake libtool texinfo bison flex pkg-config g++-mingw-w64
- name: Clone
run: |
export REV=dirty-$(git describe --always)
git clone https://github.com/vitasdk/buildscripts.git
chmod +x *.sh
- name: Build
run: |
cd buildscripts
git config --global user.email "[email protected]"
git config --global user.name "Travis CI"
unset CXX
unset CC
mkdir build
cd build
cmake .. -DCMAKE_TOOLCHAIN_FILE=toolchain-x86_64-w64-mingw32.cmake
make -j$(nproc) tarball
- name: Upload artifacts
if: ${{ success() }}
uses: actions/upload-artifact@v3
with:
name: vitasdk-windows
path: buildscripts/build/*.tar.bz2
- uses: svenstaro/upload-release-action@v2
if: contains(github.ref,'refs/heads/master')
with:
repo_token: ${{ secrets.GITHUB_TOKEN }}
file: buildscripts/build/*.tar.bz2
overwrite: true
file_glob: true
tag: master-win-v2.${{github.run_number}}
release_name: master-win-v2.${{github.run_number}}