Skip to content

Commit 06d809f

Browse files
committed
0.1.0
0 parents  commit 06d809f

File tree

3,658 files changed

+1228039
-0
lines changed

Some content is hidden

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

3,658 files changed

+1228039
-0
lines changed

.gitignore

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
# Exclude everything
2+
/*
3+
4+
# Except for default project files
5+
!/.github
6+
!/build-aux
7+
!/cmake
8+
!/data
9+
!/src
10+
!.clang-format
11+
!.cmake-format.json
12+
!.gitattributes
13+
!.gitignore
14+
!buildspec.json
15+
!CMakeLists.txt
16+
!CMakePresets.json
17+
!LICENSE*
18+
!README.md
19+
20+
!/lib
21+
!.vscode
22+
23+
# Exclude lock files
24+
*.lock.json
25+
26+
# Exclude macOS legacy resource forks
27+
.DS_Store
28+
29+
# Exclude CMake build number cache
30+
/cmake/.CMakeBuildNumber

CMakeLists.txt

Lines changed: 51 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,51 @@
1+
cmake_minimum_required(VERSION 3.28...3.30)
2+
3+
include("${CMAKE_CURRENT_SOURCE_DIR}/cmake/common/bootstrap.cmake")
4+
string(JSON _displayName GET ${buildspec} displayName)
5+
6+
project(${_name} VERSION ${_version})
7+
8+
if(WIN32)
9+
set(CMAKE_INSTALL_PREFIX "$ENV{ProgramData}/obs-studio/plugins/${CMAKE_PROJECT_NAME}" CACHE STRING "Default plugin installation directory" FORCE)
10+
endif()
11+
12+
option(ENABLE_FRONTEND_API "Use obs-frontend-api for UI functionality" OFF)
13+
option(ENABLE_QT "Use Qt functionality" OFF)
14+
15+
include(compilerconfig)
16+
include(defaults)
17+
include(helpers)
18+
19+
add_library(${CMAKE_PROJECT_NAME} MODULE)
20+
21+
find_package(libobs REQUIRED)
22+
target_link_libraries(${CMAKE_PROJECT_NAME} PRIVATE OBS::libobs)
23+
24+
if(ENABLE_FRONTEND_API)
25+
find_package(obs-frontend-api REQUIRED)
26+
target_link_libraries(${CMAKE_PROJECT_NAME} PRIVATE OBS::obs-frontend-api)
27+
endif()
28+
29+
if(ENABLE_QT)
30+
find_package(Qt6 COMPONENTS Widgets Core)
31+
target_link_libraries(${CMAKE_PROJECT_NAME} PRIVATE Qt6::Core Qt6::Widgets)
32+
target_compile_options(
33+
${CMAKE_PROJECT_NAME}
34+
PRIVATE $<$<C_COMPILER_ID:Clang,AppleClang>:-Wno-quoted-include-in-framework-header -Wno-comma>
35+
)
36+
set_target_properties(
37+
${CMAKE_PROJECT_NAME}
38+
PROPERTIES AUTOMOC ON AUTOUIC ON AUTORCC ON
39+
)
40+
endif()
41+
42+
file(GLOB_RECURSE _sources CONFIGURE_DEPENDS src/*.c*)
43+
target_sources(${CMAKE_PROJECT_NAME} PRIVATE ${_sources})
44+
45+
set_target_properties_plugin(${CMAKE_PROJECT_NAME} PROPERTIES OUTPUT_NAME ${_name})
46+
47+
configure_file(src/config.h.in config.h @ONLY)
48+
49+
set_target_properties(${CMAKE_PROJECT_NAME} PROPERTIES CXX_STANDARD 23)
50+
51+
add_subdirectory(lib/atkaudio)

CMakePresets.json

Lines changed: 214 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,214 @@
1+
{
2+
"version": 3,
3+
"cmakeMinimumRequired": {
4+
"major": 3,
5+
"minor": 22,
6+
"patch": 0
7+
},
8+
"configurePresets": [
9+
{
10+
"name": "template",
11+
"hidden": true,
12+
"cacheVariables": {
13+
"ENABLE_FRONTEND_API": false,
14+
"ENABLE_QT": false
15+
}
16+
},
17+
{
18+
"name": "macos",
19+
"displayName": "macOS Universal",
20+
"description": "Build for macOS 11.0+ (Universal binary)",
21+
"inherits": [
22+
"template"
23+
],
24+
"binaryDir": "${sourceDir}/build_macos",
25+
"condition": {
26+
"type": "equals",
27+
"lhs": "${hostSystemName}",
28+
"rhs": "Darwin"
29+
},
30+
"generator": "Xcode",
31+
"warnings": {
32+
"dev": true,
33+
"deprecated": true
34+
},
35+
"cacheVariables": {
36+
"CMAKE_OSX_DEPLOYMENT_TARGET": "11.0",
37+
"CODESIGN_IDENTITY": "$penv{CODESIGN_IDENT}",
38+
"CODESIGN_TEAM": "$penv{CODESIGN_TEAM}"
39+
}
40+
},
41+
{
42+
"name": "macos-ci",
43+
"inherits": [
44+
"macos"
45+
],
46+
"displayName": "macOS Universal CI build",
47+
"description": "Build for macOS 11.0+ (Universal binary) for CI",
48+
"generator": "Xcode",
49+
"cacheVariables": {
50+
"CMAKE_COMPILE_WARNING_AS_ERROR": false
51+
}
52+
},
53+
{
54+
"name": "windows-x64",
55+
"displayName": "Windows x64",
56+
"description": "Build for Windows x64",
57+
"inherits": [
58+
"template"
59+
],
60+
"binaryDir": "${sourceDir}/build_x64",
61+
"condition": {
62+
"type": "equals",
63+
"lhs": "${hostSystemName}",
64+
"rhs": "Windows"
65+
},
66+
"generator": "Visual Studio 17 2022",
67+
"architecture": "x64",
68+
"warnings": {
69+
"dev": true,
70+
"deprecated": true
71+
},
72+
"cacheVariables": {
73+
"CMAKE_SYSTEM_VERSION": "10.0.18363.657"
74+
}
75+
},
76+
{
77+
"name": "windows-ci-x64",
78+
"inherits": [
79+
"windows-x64"
80+
],
81+
"displayName": "Windows x64 CI build",
82+
"description": "Build for Windows x64 on CI",
83+
"cacheVariables": {
84+
"CMAKE_COMPILE_WARNING_AS_ERROR": true
85+
}
86+
},
87+
{
88+
"name": "linux-x86_64",
89+
"displayName": "Linux x86_64",
90+
"description": "Build for Linux x86_64",
91+
"inherits": [
92+
"template"
93+
],
94+
"binaryDir": "${sourceDir}/build_x86_64",
95+
"condition": {
96+
"type": "equals",
97+
"lhs": "${hostSystemName}",
98+
"rhs": "Linux"
99+
},
100+
"generator": "Ninja",
101+
"warnings": {
102+
"dev": true,
103+
"deprecated": true
104+
},
105+
"cacheVariables": {
106+
"CMAKE_BUILD_TYPE": "Debug"
107+
}
108+
},
109+
{
110+
"name": "linux-ci-x86_64",
111+
"inherits": [
112+
"linux-x86_64"
113+
],
114+
"displayName": "Linux x86_64 CI build",
115+
"description": "Build for Linux x86_64 on CI",
116+
"cacheVariables": {
117+
"CMAKE_BUILD_TYPE": "Release",
118+
"CMAKE_COMPILE_WARNING_AS_ERROR": false
119+
}
120+
},
121+
{
122+
"name": "linux-aarch64",
123+
"displayName": "Linux aarch64",
124+
"description": "Build for Linux aarch64",
125+
"inherits": [
126+
"template"
127+
],
128+
"binaryDir": "${sourceDir}/build_aarch64",
129+
"condition": {
130+
"type": "equals",
131+
"lhs": "${hostSystemName}",
132+
"rhs": "Linux"
133+
},
134+
"generator": "Ninja",
135+
"warnings": {
136+
"dev": true,
137+
"deprecated": true
138+
},
139+
"cacheVariables": {
140+
"CMAKE_BUILD_TYPE": "Debug"
141+
}
142+
},
143+
{
144+
"name": "linux-ci-aarch64",
145+
"inherits": [
146+
"linux-aarch64"
147+
],
148+
"displayName": "Linux aarch64 CI build",
149+
"description": "Build for Linux aarch64 on CI",
150+
"cacheVariables": {
151+
"CMAKE_BUILD_TYPE": "Release",
152+
"CMAKE_COMPILE_WARNING_AS_ERROR": false
153+
}
154+
}
155+
],
156+
"buildPresets": [
157+
{
158+
"name": "macos",
159+
"configurePreset": "macos",
160+
"displayName": "macOS Universal",
161+
"description": "macOS build for Universal architectures",
162+
"configuration": "Debug"
163+
},
164+
{
165+
"name": "macos-ci",
166+
"configurePreset": "macos-ci",
167+
"displayName": "macOS Universal CI",
168+
"description": "macOS CI build for Universal architectures",
169+
"configuration": "Release"
170+
},
171+
{
172+
"name": "windows-x64",
173+
"configurePreset": "windows-x64",
174+
"displayName": "Windows x64",
175+
"description": "Windows build for x64",
176+
"configuration": "Debug"
177+
},
178+
{
179+
"name": "windows-ci-x64",
180+
"configurePreset": "windows-ci-x64",
181+
"displayName": "Windows x64 CI",
182+
"description": "Windows CI build for x64 (Release configuration)",
183+
"configuration": "Release"
184+
},
185+
{
186+
"name": "linux-x86_64",
187+
"configurePreset": "linux-x86_64",
188+
"displayName": "Linux x86_64",
189+
"description": "Linux build for x86_64",
190+
"configuration": "Debug"
191+
},
192+
{
193+
"name": "linux-ci-x86_64",
194+
"configurePreset": "linux-ci-x86_64",
195+
"displayName": "Linux x86_64 CI",
196+
"description": "Linux CI build for x86_64",
197+
"configuration": "Release"
198+
},
199+
{
200+
"name": "linux-aarch64",
201+
"configurePreset": "linux-aarch64",
202+
"displayName": "Linux aarch64",
203+
"description": "Linux build for aarch64",
204+
"configuration": "Debug"
205+
},
206+
{
207+
"name": "linux-ci-aarch64",
208+
"configurePreset": "linux-ci-aarch64",
209+
"displayName": "Linux aarch64 CI",
210+
"description": "Linux CI build for aarch64",
211+
"configuration": "Release"
212+
}
213+
]
214+
}

0 commit comments

Comments
 (0)