forked from BabylonJS/BabylonNative
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathazure-pipelines.yml
137 lines (118 loc) · 4.16 KB
/
azure-pipelines.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
131
132
133
134
135
136
137
trigger:
- master
jobs:
- job: macOS
pool:
vmImage: 'macOS-10.14'
steps:
- script: |
git submodule update --init --recursive
displayName: 'Checkout dependencies'
- script: |
mkdir buildmacOS
cd buildmacOS
cmake .. -GXcode
displayName: 'Generate macOS solution'
- task: CmdLine@2
inputs:
script: 'sudo xcode-select --switch /Applications/Xcode_10.3.app/Contents/Developer'
- task: Xcode@5
inputs:
xcWorkspacePath: 'buildmacOS/BabylonNative.xcodeproj'
scheme: 'TestApp'
sdk: 'macosx'
useXcpretty: false
displayName: 'Build macOS'
- job: iOS
pool:
vmImage: 'macOS-10.14'
steps:
- script: |
git submodule update --init --recursive
displayName: 'Checkout dependencies'
- script: |
mkdir buildiOS
cd buildiOS
cmake .. -G Xcode -DCMAKE_TOOLCHAIN_FILE=../Library/Dependencies/ios-cmake/ios.toolchain.cmake -DPLATFORM=OS64COMBINED -DENABLE_ARC=0 -DDEPLOYMENT_TARGET=12 -DHTTP_ONLY=OFF -DCMAKE_USE_OPENSSL=OFF -DBUILD_CURL_EXE=OFF -DBUILD_CURL_TESTS=OFF -DCURL_STATICLIB=ON -DUSE_UNIX_SOCKETS=0 -DHAVE_FSETXATTR=0 -DHAVE_LIBSOCKET=0 -DCURL_DISABLE_FTP=OFF -DCURL_DISABLE_LDAP=ON -DCURL_DISABLE_TELNET=ON -DCURL_DISABLE_DICT=ON -DCURL_DISABLE_TFTP=ON -DCURL_DISABLE_IMAP=ON -DCURL_DISABLE_POP3=ON -DCURL_DISABLE_SMTP=ON -DENABLE_GLSLANG_BINARIES=OFF -DSPIRV_CROSS_CLI=OFF -DHAVE_LIBIDN2=OFF
displayName: 'Generate iOS solution'
- task: CmdLine@2
inputs:
script: 'sudo xcode-select --switch /Applications/Xcode_10.3.app/Contents/Developer'
- task: Xcode@5
inputs:
xcWorkspacePath: 'buildiOS/BabylonNative.xcodeproj'
scheme: 'TestApp'
sdk: 'iphoneos'
useXcpretty: false
displayName: 'Build iOS'
- job: win32
pool:
vmImage: 'windows-latest'
steps:
- script: |
git submodule update --init --recursive
displayName: 'Checkout dependencies'
- script: |
mkdir buildWin32
cd buildWin32
cmake ..
displayName: 'Generate Win32 solution'
- task: MSBuild@1
inputs:
solution: 'buildWin32/BabylonNative.sln'
maximumCpuCount: true
configuration: 'Release'
displayName: 'Build WIN32'
- job: uwp
pool:
vmImage: 'windows-latest'
steps:
- script: |
git submodule update --init --recursive
displayName: 'Checkout dependencies'
- script: |
mkdir buildUWP
cd buildUWP
cmake .. -DCMAKE_SYSTEM_NAME=WindowsStore -DCMAKE_SYSTEM_VERSION=10.0
displayName: 'Generate UWP solution'
- task: VSBuild@1
inputs:
solution: 'buildUWP/BabylonNative.sln'
maximumCpuCount: true
configuration: 'Release'
msbuildArgs: '/p:AppxPackageSigningEnabled=false'
displayName: 'Build UWP'
- job: androidJNI
pool:
vmImage: 'macOS-10.14'
steps:
- script: |
git submodule update --init --recursive
displayName: 'Checkout dependencies'
- script: |
set -eu
curl -Ls https://github.com/ninja-build/ninja/releases/download/v1.9.0/ninja-mac.zip -o ninja-mac.zip
unzip ninja-mac.zip
sudo cp -v ninja /usr/local/bin/
displayName: 'Install Ninja'
- script: |
npm install --prefix . [email protected]
unxz node_modules/v8-android/dist/lib.unstripped/v8-android/7.5.1/libs.tar.xz
tar -xf node_modules/v8-android/dist/lib.unstripped/v8-android/7.5.1/libs.tar
mkdir Library/Dependencies/v8
mkdir Library/Dependencies/v8/include
mkdir TestApp/Source/Android/app/src/main/jniLibs
cp -r node_modules/v8-android/dist/include Library/Dependencies/v8
cp -r arm64-v8a TestApp/Source/Android/app/src/main/jniLibs
cp -r armeabi-v7a TestApp/Source/Android/app/src/main/jniLibs
cp -r x86 TestApp/Source/Android/app/src/main/jniLibs
cp -r x86_64 TestApp/Source/Android/app/src/main/jniLibs
displayName: 'Install V8 npm'
- task: Gradle@2
inputs:
workingDirectory: 'TestApp/Source/Android'
gradleWrapperFile: 'TestApp/Source/Android/gradlew'
gradleOptions: '-Xmx1536m'
publishJUnitResults: false
tasks: 'assembleDebug'
displayName: 'Build androidJNI'