Skip to content

Commit a1a944f

Browse files
authored
Merge branch 'main' into dev/data_model_module
2 parents 1204ec3 + e0690b6 commit a1a944f

File tree

499 files changed

+135371
-52259
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

499 files changed

+135371
-52259
lines changed

.clang-format

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ IndentWidth: 4
4242
IndentWrappedFunctionNames: true
4343
IndentPPDirectives: BeforeHash
4444
KeepEmptyLinesAtTheStartOfBlocks: false
45-
LambdaBodyIndentation: Signature
45+
LambdaBodyIndentation: OuterScope
4646
MaxEmptyLinesToKeep: 1
4747
NamespaceIndentation: None
4848
PackConstructorInitializers: Never
@@ -70,7 +70,7 @@ SpacesInSquareBrackets: false
7070
Standard: "c++17"
7171
TabWidth: 4
7272
UseTab: Never
73-
WhitespaceSensitiveMacros: ['EM_ASM', 'EM_JS', 'EM_ASM_INT', 'EM_ASM_DOUBLE', 'EM_ASM_PTR', 'MAIN_THREAD_EM_ASM', 'MAIN_THREAD_EM_ASM_INT', 'MAIN_THREAD_EM_ASM_DOUBLE', 'MAIN_THREAD_EM_ASM_DOUBLE', 'MAIN_THREAD_ASYNC_EM_ASM']
73+
WhitespaceSensitiveMacros: ['JUCE_NTH_ARG_', 'EM_ASM', 'EM_JS', 'EM_ASM_INT', 'EM_ASM_DOUBLE', 'EM_ASM_PTR', 'MAIN_THREAD_EM_ASM', 'MAIN_THREAD_EM_ASM_INT', 'MAIN_THREAD_EM_ASM_DOUBLE', 'MAIN_THREAD_EM_ASM_DOUBLE', 'MAIN_THREAD_ASYNC_EM_ASM']
7474
---
7575
Language: ObjC
7676
BasedOnStyle: Chromium
Lines changed: 144 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,144 @@
1+
name: Android
2+
3+
# See https://medium.com/@dcostalloyd90/automating-android-builds-with-github-actions-a-step-by-step-guide-2a02a54f59cd
4+
5+
on:
6+
push:
7+
paths:
8+
- "CMakeLists.txt"
9+
- "**/workflows/build_android.yml"
10+
- "**/cmake/**"
11+
- "**/examples/**"
12+
- "**/modules/**"
13+
- "**/tests/**"
14+
- "**/thirdparty/**"
15+
- "!**/native/*_apple.*"
16+
- "!**/native/*_emscripten.*"
17+
- "!**/native/*_ios.*"
18+
- "!**/native/*_linux.*"
19+
- "!**/native/*_mac.*"
20+
- "!**/native/*_wasm.*"
21+
- "!**/native/*_windows.*"
22+
branches:
23+
- "**"
24+
25+
concurrency:
26+
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
27+
cancel-in-progress: true
28+
29+
env:
30+
JAVA_VERSION: 17
31+
JAVA_DISTRIBUTION: 'temurin'
32+
NDK_VERSION: r26d
33+
34+
jobs:
35+
configure:
36+
runs-on: ubuntu-latest
37+
38+
steps:
39+
- uses: actions/checkout@v4
40+
- uses: seanmiddleditch/gha-setup-ninja@master
41+
- name: Setup Java
42+
uses: actions/setup-java@v3
43+
with:
44+
distribution: ${{env.JAVA_DISTRIBUTION}}
45+
java-version: ${{env.JAVA_VERSION}}
46+
- name: Setup Android SDK
47+
uses: android-actions/setup-android@v2.0.10
48+
- name: Setup Android NDK
49+
uses: nttld/setup-ndk@v1
50+
with:
51+
ndk-version: ${{env.NDK_VERSION}}
52+
53+
- name: Create Build Environment
54+
run: cmake -E make_directory ${{runner.workspace}}/build
55+
56+
- name: Configure
57+
working-directory: ${{runner.workspace}}/build
58+
run: cmake $GITHUB_WORKSPACE -G "Ninja Multi-Config" -DYUP_TARGET_ANDROID=ON -DYUP_ENABLE_TESTS=ON -DYUP_ENABLE_EXAMPLES=ON
59+
60+
- name: Cache Configure
61+
id: cache-build
62+
uses: actions/cache/save@v4
63+
with:
64+
path: ${{runner.workspace}}/build
65+
key: android-build-${{ github.sha }}
66+
67+
build_app:
68+
runs-on: ubuntu-latest
69+
needs: [configure]
70+
steps:
71+
- uses: actions/checkout@v4
72+
- uses: seanmiddleditch/gha-setup-ninja@master
73+
- name: Setup Java
74+
uses: actions/setup-java@v3
75+
with:
76+
distribution: ${{env.JAVA_DISTRIBUTION}}
77+
java-version: ${{env.JAVA_VERSION}}
78+
- name: Setup Android SDK
79+
uses: android-actions/setup-android@v2.0.10
80+
- name: Setup Android NDK
81+
uses: nttld/setup-ndk@v1
82+
with:
83+
ndk-version: ${{env.NDK_VERSION}}
84+
- uses: actions/cache/restore@v4
85+
with:
86+
path: ${{runner.workspace}}/build
87+
key: android-build-${{ github.sha }}
88+
- working-directory: ${{runner.workspace}}/build/examples/app
89+
run: ./gradlew assembleDebug
90+
- working-directory: ${{runner.workspace}}/build/examples/app
91+
run: ./gradlew assemble
92+
93+
94+
build_graphics:
95+
runs-on: ubuntu-latest
96+
needs: [configure]
97+
steps:
98+
- uses: actions/checkout@v4
99+
- uses: seanmiddleditch/gha-setup-ninja@master
100+
- name: Setup Java
101+
uses: actions/setup-java@v3
102+
with:
103+
distribution: ${{env.JAVA_DISTRIBUTION}}
104+
java-version: ${{env.JAVA_VERSION}}
105+
- name: Setup Android SDK
106+
uses: android-actions/setup-android@v2.0.10
107+
- name: Setup Android NDK
108+
uses: nttld/setup-ndk@v1
109+
with:
110+
ndk-version: ${{env.NDK_VERSION}}
111+
- uses: actions/cache/restore@v4
112+
with:
113+
path: ${{runner.workspace}}/build
114+
key: android-build-${{ github.sha }}
115+
- working-directory: ${{runner.workspace}}/build/examples/graphics
116+
run: ./gradlew assembleDebug
117+
- working-directory: ${{runner.workspace}}/build/examples/graphics
118+
run: ./gradlew assemble
119+
120+
build_render:
121+
runs-on: ubuntu-latest
122+
needs: [configure]
123+
steps:
124+
- uses: actions/checkout@v4
125+
- uses: seanmiddleditch/gha-setup-ninja@master
126+
- name: Setup Java
127+
uses: actions/setup-java@v3
128+
with:
129+
distribution: 'temurin'
130+
java-version: 17
131+
- name: Setup Android SDK
132+
uses: android-actions/setup-android@v2.0.10
133+
- name: Setup Android NDK
134+
uses: nttld/setup-ndk@v1
135+
with:
136+
ndk-version: r26d
137+
- uses: actions/cache/restore@v4
138+
with:
139+
path: ${{runner.workspace}}/build
140+
key: android-build-${{ github.sha }}
141+
- working-directory: ${{runner.workspace}}/build/examples/render
142+
run: ./gradlew assembleDebug
143+
- working-directory: ${{runner.workspace}}/build/examples/render
144+
run: ./gradlew assemble

.github/workflows/build_ios.yml

Lines changed: 87 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -3,52 +3,119 @@ name: iOS
33
on:
44
push:
55
paths:
6+
- "CMakeLists.txt"
67
- "**/workflows/build_ios.yml"
78
- "**/cmake/**"
89
- "**/modules/**"
910
- "**/tests/**"
1011
- "**/thirdparty/**"
11-
- "CMakeLists.txt"
12-
pull_request:
12+
- "!**/native/*_android.*"
13+
- "!**/native/*_emscripten.*"
14+
- "!**/native/*_linux.*"
15+
- "!**/native/*_mac.*"
16+
- "!**/native/*_wasm.*"
17+
- "!**/native/*_windows.*"
1318
branches:
1419
- "**"
1520

1621
concurrency:
1722
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
1823
cancel-in-progress: true
1924

25+
env:
26+
DEVELOPER_DIR: /Applications/Xcode_15.1.app/Contents/Developer
27+
IOS_PLATFORM: OS64
28+
2029
jobs:
21-
test:
30+
configure:
2231
runs-on: macos-latest
23-
env:
24-
DEVELOPER_DIR: /Applications/Xcode_15.1.app/Contents/Developer
2532

2633
steps:
2734
- uses: actions/checkout@v4
35+
- uses: seanmiddleditch/gha-setup-ninja@master
2836

2937
- name: Create Build Environment
3038
run: cmake -E make_directory ${{runner.workspace}}/build
3139

3240
- name: Configure
3341
working-directory: ${{runner.workspace}}/build
3442
run: |
35-
cmake ${{ github.workspace }} -G Xcode -DCMAKE_TOOLCHAIN_FILE=cmake/toolchains/ios.cmake -DPLATFORM=OS64 \
36-
-DYUP_ENABLE_TESTS=ON -DYUP_ENABLE_EXAMPLES=OFF
43+
cmake ${{ github.workspace }} -G "Ninja Multi-Config" -DCMAKE_TOOLCHAIN_FILE=cmake/toolchains/ios.cmake \
44+
-DPLATFORM=${{ env.IOS_PLATFORM }} -DYUP_ENABLE_TESTS=ON -DYUP_ENABLE_EXAMPLES=ON
3745
38-
- name: Build Debug
39-
working-directory: ${{runner.workspace}}/build
46+
- name: Build SDL2
4047
run: |
41-
cmake --build . --config Debug --parallel 4 --target yup_tests
48+
cmake --build ${{runner.workspace}}/build --config Debug --parallel 4 --target SDL2-static
49+
cmake --build ${{runner.workspace}}/build --config Release --parallel 4 --target SDL2-static
4250
43-
#- name: Test Debug
44-
# working-directory: ${{runner.workspace}}/build/tests/Debug
45-
# run: ./yup_tests
51+
- name: Cache Configure
52+
id: cache-build
53+
uses: actions/cache/save@v4
54+
with:
55+
path: ${{runner.workspace}}/build
56+
key: ios-build-${{ github.sha }}
4657

47-
- name: Build Release
48-
working-directory: ${{runner.workspace}}/build
49-
run: |
50-
cmake --build . --config Release --parallel 4 --target yup_tests
58+
build_tests:
59+
runs-on: macos-latest
60+
needs: [configure]
61+
steps:
62+
- uses: actions/checkout@v4
63+
- uses: seanmiddleditch/gha-setup-ninja@master
64+
- uses: actions/cache/restore@v4
65+
with:
66+
path: ${{runner.workspace}}/build
67+
key: ios-build-${{ github.sha }}
68+
- run: cmake --build ${{runner.workspace}}/build --config Debug --parallel 4 --target yup_tests
69+
- run: cmake --build ${{runner.workspace}}/build --config Release --parallel 4 --target yup_tests
70+
71+
build_console:
72+
runs-on: macos-latest
73+
needs: [configure]
74+
steps:
75+
- uses: actions/checkout@v4
76+
- uses: seanmiddleditch/gha-setup-ninja@master
77+
- uses: actions/cache/restore@v4
78+
with:
79+
path: ${{runner.workspace}}/build
80+
key: ios-build-${{ github.sha }}
81+
- run: cmake --build ${{runner.workspace}}/build --config Debug --parallel 4 --target example_console
82+
- run: cmake --build ${{runner.workspace}}/build --config Release --parallel 4 --target example_console
83+
84+
build_app:
85+
runs-on: macos-latest
86+
needs: [configure]
87+
steps:
88+
- uses: actions/checkout@v4
89+
- uses: seanmiddleditch/gha-setup-ninja@master
90+
- uses: actions/cache/restore@v4
91+
with:
92+
path: ${{runner.workspace}}/build
93+
key: ios-build-${{ github.sha }}
94+
- run: cmake --build ${{runner.workspace}}/build --config Debug --parallel 4 --target example_app
95+
- run: cmake --build ${{runner.workspace}}/build --config Release --parallel 4 --target example_app
96+
97+
build_graphics:
98+
runs-on: macos-latest
99+
needs: [configure]
100+
steps:
101+
- uses: actions/checkout@v4
102+
- uses: seanmiddleditch/gha-setup-ninja@master
103+
- uses: actions/cache/restore@v4
104+
with:
105+
path: ${{runner.workspace}}/build
106+
key: ios-build-${{ github.sha }}
107+
- run: cmake --build ${{runner.workspace}}/build --config Debug --parallel 4 --target example_graphics
108+
- run: cmake --build ${{runner.workspace}}/build --config Release --parallel 4 --target example_graphics
51109

52-
#- name: Test Release
53-
# working-directory: ${{runner.workspace}}/build/tests/Release
54-
# run: ./yup_tests
110+
build_render:
111+
runs-on: macos-latest
112+
needs: [configure]
113+
steps:
114+
- uses: actions/checkout@v4
115+
- uses: seanmiddleditch/gha-setup-ninja@master
116+
- uses: actions/cache/restore@v4
117+
with:
118+
path: ${{runner.workspace}}/build
119+
key: ios-build-${{ github.sha }}
120+
- run: cmake --build ${{runner.workspace}}/build --config Debug --parallel 4 --target example_render
121+
- run: cmake --build ${{runner.workspace}}/build --config Release --parallel 4 --target example_render

0 commit comments

Comments
 (0)