Skip to content

Commit b2b6344

Browse files
authored
Merge pull request #1 from hardcpp/dev-1-35-0
Update for 1.35.0
2 parents 27033a6 + 5bd7f1d commit b2b6344

File tree

24 files changed

+474
-425
lines changed

24 files changed

+474
-425
lines changed
Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
name: "Setup canary ndk"
2+
description: "Sets up canary ndk"
3+
outputs:
4+
ndk-path:
5+
value: ${{ steps.path.outputs.path }}
6+
description: "Output path of the ndk"
7+
cache-hit:
8+
value: ${{ steps.cache.outputs.cache-hit }}
9+
description: "Whether a cache hit occurred for the ndk"
10+
runs:
11+
using: "composite"
12+
steps:
13+
- name: NDK cache
14+
id: cache
15+
uses: actions/cache@v3
16+
with:
17+
path: ${HOME}/android-ndk-r27-canary/
18+
key: ${{ runner.os }}-ndk-r27-canary
19+
20+
- name: Download canary ndk
21+
if: ${{ !steps.cache.outputs.cache-hit }}
22+
env:
23+
CANARY_URL: https://github.com/QuestPackageManager/ndk-canary-archive/releases/download/27.0.1/android-ndk-10883340-linux-x86_64.zip
24+
run: wget ${CANARY_URL} -O ${HOME}/ndk.zip
25+
shell: bash
26+
27+
- name: Unzip ndk
28+
if: ${{ !steps.cache.outputs.cache-hit }}
29+
run: 7z x "${HOME}/ndk.zip" -o"${HOME}/"
30+
shell: bash
31+
32+
- name: Set output
33+
id: path
34+
shell: bash
35+
run: echo "path=${HOME}/android-ndk-r27-canary" >> ${GITHUB_OUTPUT}

.github/workflows/build-ndk.yml

Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,11 +38,24 @@ jobs:
3838

3939
- uses: seanmiddleditch/gha-setup-ninja@v3
4040

41+
# Use canary NDK to avoid lesser known compile bugs
42+
- name: Setup canary NDK
43+
id: setup-ndk
44+
uses: ./.github/actions/canary-ndk
45+
4146
- name: Create ndkpath.txt
4247
run: |
43-
echo "$ANDROID_NDK_LATEST_HOME" > ${GITHUB_WORKSPACE}/ndkpath.txt
48+
echo ${{ steps.setup-ndk.outputs.ndk-path }} > ${GITHUB_WORKSPACE}/ndkpath.txt
4449
cat ${GITHUB_WORKSPACE}/ndkpath.txt
4550
51+
# get version from pushed tag
52+
- name: Extract version
53+
if: startsWith(github.ref, 'refs/tags/v')
54+
id: version
55+
run: |
56+
echo "TAG=${GITHUB_REF#refs/tags/}" >> ${GITHUB_OUTPUT}
57+
echo "VERSION=${GITHUB_REF#refs/tags/v}" >> ${GITHUB_OUTPUT}
58+
4659
- name: Setup qpm
4760
uses: Fernthedev/qpm-action@main
4861
with:

.github/workflows/publish.yml

Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,11 +22,24 @@ jobs:
2222

2323
- uses: seanmiddleditch/gha-setup-ninja@v3
2424

25+
# Use canary NDK to avoid lesser known compile bugs
26+
- name: Setup canary NDK
27+
id: setup-ndk
28+
uses: ./.github/actions/canary-ndk
29+
2530
- name: Create ndkpath.txt
2631
run: |
27-
echo "$ANDROID_NDK_LATEST_HOME" > ${GITHUB_WORKSPACE}/ndkpath.txt
32+
echo ${{ steps.setup-ndk.outputs.ndk-path }} > ${GITHUB_WORKSPACE}/ndkpath.txt
2833
cat ${GITHUB_WORKSPACE}/ndkpath.txt
2934
35+
# get version from pushed tag
36+
- name: Extract version
37+
if: startsWith(github.ref, 'refs/tags/v')
38+
id: version
39+
run: |
40+
echo "TAG=${GITHUB_REF#refs/tags/}" >> ${GITHUB_OUTPUT}
41+
echo "VERSION=${GITHUB_REF#refs/tags/v}" >> ${GITHUB_OUTPUT}
42+
3043
- name: Get Tag Version
3144
id: get_tag_version
3245
run: |

.vscode/c_cpp_properties.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"env": {
3-
"ndkPath": "D:/User/Repositories/GitHubQuestModding/android-ndk-r24"
3+
"ndkPath": "D:/User/Repositories/GitHubQuestModding/android-ndk-r27-canary"
44
},
55
"configurations": [
66
{
@@ -13,7 +13,7 @@
1313
],
1414
"includePath": [
1515
"${workspaceFolder}/extern/includes/libil2cpp/il2cpp/libil2cpp",
16-
"${workspaceFolder}/extern/includes/codegen/include",
16+
"${workspaceFolder}/extern/includes/bs-cordl/include",
1717
"${workspaceFolder}/extern/includes/chatplex-sdk-bs/shared",
1818
"${workspaceFolder}/extern/includes",
1919
"${workspaceFolder}/include",

.vscode/settings.json

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -123,10 +123,11 @@
123123
"stop_token": "cpp",
124124
"__std_stream": "cpp",
125125
"memory_resource": "cpp",
126-
"ranges": "cpp"
126+
"ranges": "cpp",
127+
"__verbose_abort": "cpp"
127128
},
128129
"editor.formatOnSave": false,
129130
"editor.trimAutoWhitespace": true,
130131
"cmake.configureOnOpen": false,
131-
"cmake.automaticReconfigure": true
132+
"cmake.automaticReconfigure": false
132133
}

CMakeLists.txt

Lines changed: 29 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
# include some defines automatically made by qpm
22
include(qpm_defines.cmake)
3+
include(${EXTERN_DIR}/includes/kaleb/shared/cmake/assets.cmake)
34

45
add_definitions(-DCP_SDK_BMBF)
56

@@ -31,6 +32,29 @@ set(SHARED_DIR ${CMAKE_CURRENT_SOURCE_DIR}/shared)
3132
# compile options used
3233
add_compile_options(-frtti -fexceptions)
3334
add_compile_options(-O3)
35+
36+
# get git info
37+
execute_process(COMMAND git config user.name OUTPUT_VARIABLE GIT_USER)
38+
execute_process(COMMAND git branch --show-current OUTPUT_VARIABLE GIT_BRANCH)
39+
execute_process(COMMAND git rev-parse --short HEAD OUTPUT_VARIABLE GIT_COMMIT)
40+
execute_process(COMMAND git diff-index --quiet HEAD RESULT_VARIABLE GIT_MODIFIED)
41+
42+
string(STRIP "${GIT_USER}" GIT_USER)
43+
string(STRIP "${GIT_BRANCH}" GIT_BRANCH)
44+
string(STRIP "${GIT_COMMIT}" GIT_COMMIT)
45+
string(STRIP "${GIT_MODIFIED}" GIT_MODIFIED)
46+
47+
message(STATUS "GIT_USER: ${GIT_USER}")
48+
message(STATUS "GIT_BRANCH: ${GIT_BRANCH}")
49+
message(STATUS "GIT_COMMIT: 0x${GIT_COMMIT}")
50+
message(STATUS "GIT_MODIFIED: ${GIT_MODIFIED}")
51+
52+
# set git defines
53+
add_compile_definitions(GIT_USER=\"${GIT_USER}\")
54+
add_compile_definitions(GIT_BRANCH=\"${GIT_BRANCH}\")
55+
add_compile_definitions(GIT_COMMIT=0x${GIT_COMMIT})
56+
add_compile_definitions(GIT_MODIFIED=${GIT_MODIFIED})
57+
3458
# compile definitions used
3559
add_compile_definitions(VERSION=\"${MOD_VERSION}\")
3660
add_compile_definitions(MOD_ID=\"${MOD_ID}\")
@@ -55,6 +79,9 @@ add_library(
5579
${c_file_list}
5680
)
5781

82+
# Add any assets
83+
add_assets(assets_${COMPILE_ID} STATIC ${CMAKE_CURRENT_LIST_DIR}/assets ${INCLUDE_DIR}/assets.hpp)
84+
5885
# get the vcpkg dir from env variables
5986
if(EXISTS $ENV{VCPKG_ROOT})
6087
set(VCPKG_ROOT $ENV{VCPKG_ROOT})
@@ -76,6 +103,7 @@ target_include_directories(${COMPILE_ID} PRIVATE ${EXTERN_DIR}/includes/${CODEGE
76103
target_include_directories(${COMPILE_ID} PRIVATE ${EXTERN_DIR}/includes/chatplex-sdk-bs/shared)
77104

78105
target_link_libraries(${COMPILE_ID} PRIVATE -llog)
106+
target_link_libraries(${COMPILE_ID} PRIVATE assets_${COMPILE_ID})
79107

80108
# add extern stuff like libs and other includes
81109
include(extern.cmake)
@@ -119,7 +147,4 @@ add_custom_command(TARGET ${COMPILE_ID} POST_BUILD
119147
add_custom_command(TARGET ${COMPILE_ID} POST_BUILD
120148
COMMAND ${CMAKE_COMMAND} -E copy ${a_file} debug/${file}
121149
COMMENT "Copy a files for ndk stack")
122-
endforeach()
123-
124-
125-
include(assets_include.cmake)
150+
endforeach()

assets_include.cmake

Lines changed: 0 additions & 116 deletions
This file was deleted.

copy.ps1

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -56,9 +56,18 @@ $modFiles = $modJson.modFiles
5656

5757
foreach ($fileName in $modFiles) {
5858
if ($useDebug -eq $true) {
59-
& adb push build/debug/$fileName /sdcard/Android/data/com.beatgames.beatsaber/files/mods/$fileName
59+
& adb push build/debug/$fileName /sdcard/ModData/com.beatgames.beatsaber/Modloader/mods/$fileName
6060
} else {
61-
& adb push build/$fileName /sdcard/Android/data/com.beatgames.beatsaber/files/mods/$fileName
61+
& adb push build/$fileName /sdcard/ModData/com.beatgames.beatsaber/Modloader/mods/$fileName
62+
}
63+
}
64+
65+
$modFiles = $modJson.lateModFiles
66+
foreach ($fileName in $modFiles) {
67+
if ($useDebug -eq $true) {
68+
& adb push build/debug/$fileName /sdcard/ModData/com.beatgames.beatsaber/Modloader/mods/$fileName
69+
} else {
70+
& adb push build/$fileName /sdcard/ModData/com.beatgames.beatsaber/Modloader/mods/$fileName
6271
}
6372
}
6473

createqmod.ps1

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,17 @@ foreach ($mod in $modJson.modFiles) {
3232
}
3333
$filelist += $path
3434
}
35+
foreach ($mod in $modJson.lateModFiles) {
36+
$path = "./build/" + $mod
37+
if (-not (Test-Path $path)) {
38+
$path = "./extern/libs/" + $mod
39+
}
40+
if (-not (Test-Path $path)) {
41+
Write-Output "Error: could not find dependency: $path"
42+
exit 1
43+
}
44+
$filelist += $path
45+
}
3546

3647
foreach ($lib in $modJson.libraryFiles) {
3748
#if ($lib -eq "libchatplex-sdk-bs.so") {

0 commit comments

Comments
 (0)