-
Notifications
You must be signed in to change notification settings - Fork 18
117 lines (100 loc) · 3.67 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
name: Build
on: [workflow_dispatch]
jobs:
build-windows:
name: Build for Windows
runs-on: windows-latest
steps:
- name: Checkout code
uses: actions/checkout@v2
- name: Prepare Steamworks SDK
run: |
curl -o sdk135a.zip "${{ secrets.STEAMWORKS_SDK_135A }}"
powershell -command "Expand-Archive -Path sdk135a.zip -DestinationPath ."
mkdir steamworks_sdk_135a
move ./sdk/* ./steamworks_sdk_135a
curl -o sdk142.zip "${{ secrets.STEAMWORKS_SDK_142 }}"
powershell -command "Expand-Archive -Path sdk142.zip -DestinationPath ."
mkdir steamworks_sdk_142
move ./sdk/* ./steamworks_sdk_142
- name: Setup MSBuild
uses: microsoft/setup-msbuild@v1
- name: Build for GMS1
run: msbuild . "/property:Configuration=GMS1 Release" /p:Platform=x86
- name: Upload GMS1 artifact
uses: actions/upload-artifact@v2
with:
name: GMS1
path: ./GMS1 Release/Steamworks.gml.dll
- name: Build for GMS2
run: |
msbuild . "/property:Configuration=GMS2 Release" /p:Platform=x86
Copy-Item "./GMS2 Release/Steamworks.gml.dll" -Destination "./Steamworks.gml.dll"
Copy-Item "./GMS2 Release/Steamworks.gml.dll" -Destination "./Steamworks_gml.dll"
- name: Build for GMS2 x64 runtime
run: |
msbuild . "/property:Configuration=GMS2 Release" /p:Platform=x64
Copy-Item "./x64/GMS2 Release/Steamworks.gml.dll" -Destination "./Steamworks_gml_x64.dll"
- name: Upload GMS2 artifact
uses: actions/upload-artifact@v2
with:
name: GMS2
path: |
./Steamworks.gml.dll
./Steamworks_gml.dll
./Steamworks_gml_x64.dll
build-linux:
name: Build for Linux
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v2
- name: Install GCC
run: sudo apt-get install gcc-multilib g++-multilib
- name: Get Steamworks SDK
run: |
sudo curl -o sdk135a.zip "${{ secrets.STEAMWORKS_SDK_135A }}"
sudo unzip sdk135a.zip
sudo mkdir steamworks_sdk_135a
sudo mv ./sdk/* ./steamworks_sdk_135a
sudo curl -o sdk142.zip "${{ secrets.STEAMWORKS_SDK_142 }}"
sudo unzip sdk142.zip
sudo mkdir steamworks_sdk_142
sudo mv ./sdk/* ./steamworks_sdk_142
- name: Build Linux x86/GMS1
run: sh build_linux_gms1.sh
- name: Upload Linux x86/GMS1
uses: actions/upload-artifact@v2
with:
name: GMS1
path: ./Steamworks.gml.so
if-no-files-found: error
- name: Build Linux x64/GMS2
run: sh build_linux_gms2.sh
- name: Upload Linux x64/GMS2
uses: actions/upload-artifact@v2
with:
name: GMS2
path: ./Steamworks.gml.so
if-no-files-found: error
build-macos:
name: Build for MacOS
runs-on: macos-latest
steps:
- name: Checkout code
uses: actions/checkout@v2
- name: Get Steamworks SDK
run: |
sudo curl -o sdk142.zip "${{ secrets.STEAMWORKS_SDK_142 }}"
sudo unzip sdk142.zip
sudo mkdir steamworks_sdk_142
sudo mv ./sdk/* ./steamworks_sdk_142
sudo mkdir "Steamworks.gmx\extensions\Steamworks_gml"
- name: Build for MacOS x64/GMS2
run: sudo sh build_osx_gms2.sh
- name: Upload MacOS Artifact
uses: actions/upload-artifact@v2
with:
name: GMS2
path: ./Steamworks.gml.dylib
if-no-files-found: error