aboutsummaryrefslogtreecommitdiffhomepage
path: root/meson.build
diff options
context:
space:
mode:
authordec05eba <dec05eba@protonmail.com>2026-08-01 23:22:38 +0200
committerdec05eba <dec05eba@protonmail.com>2026-08-01 23:22:38 +0200
commit8272e61823e04733123a17a47645e7097eac45c0 (patch)
treef419c6d5b286692d0bff31b47da0316589deac72 /meson.build
parent9dda64c39d0fdd6409305faff33c217dcf161e60 (diff)
Rewrite main.cpp in C as a thin CLI on top of a new gsr_recorder library API
The recording setup, record loop and teardown moved into a gsr_recorder pseudo class that reports saved recordings through callbacks, so the CLI only parses arguments, handles signals and prints results. The project is now built as pure C.
Diffstat (limited to 'meson.build')
-rw-r--r--meson.build19
1 files changed, 10 insertions, 9 deletions
diff --git a/meson.build b/meson.build
index 5bece63..0653470 100644
--- a/meson.build
+++ b/meson.build
@@ -1,10 +1,10 @@
-project('gpu-screen-recorder', ['c', 'cpp'], version : '5.15.3', default_options : ['warning_level=2', 'cpp_std=c++17'])
+project('gpu-screen-recorder', 'c', version : '5.15.3', default_options : ['warning_level=2'])
-add_project_arguments('-Wshadow', language : ['c', 'cpp'])
+add_project_arguments('-Wshadow', language : 'c')
if get_option('buildtype') == 'debug'
- add_project_arguments('-g3', language : ['c', 'cpp'])
+ add_project_arguments('-g3', language : 'c')
elif get_option('buildtype') == 'release'
- add_project_arguments('-DNDEBUG', language : ['c', 'cpp'])
+ add_project_arguments('-DNDEBUG', language : 'c')
endif
src = [
@@ -44,6 +44,7 @@ src = [
'src/recorder/muxer.c',
'src/recorder/replay_save.c',
'src/recorder/screenshot.c',
+ 'src/recorder/recorder.c',
'src/cli/commands.c',
'src/egl.c',
'src/cuda.c',
@@ -61,7 +62,7 @@ src = [
'src/plugins.c',
'src/wayland_host_bridge.c',
'src/sound.c',
- 'src/main.cpp',
+ 'src/cli/main.c',
]
subdir('protocol')
@@ -105,7 +106,7 @@ if get_option('portal') == true
'src/dbus.c',
'src/pipewire_video.c',
]
- add_project_arguments('-DGSR_PORTAL', language : ['c', 'cpp'])
+ add_project_arguments('-DGSR_PORTAL', language : 'c')
uses_pipewire = true
endif
@@ -113,7 +114,7 @@ if get_option('app_audio') == true
src += [
'src/pipewire_audio.c',
]
- add_project_arguments('-DGSR_APP_AUDIO', language : ['c', 'cpp'])
+ add_project_arguments('-DGSR_APP_AUDIO', language : 'c')
uses_pipewire = true
endif
@@ -123,10 +124,10 @@ if uses_pipewire == true
dependency('libspa-0.2'),
dependency('dbus-1'),
]
- add_project_arguments('-DGSR_DBUS', language : ['c', 'cpp'])
+ add_project_arguments('-DGSR_DBUS', language : 'c')
endif
-add_project_arguments('-DGSR_VERSION="' + meson.project_version() + '"', language: ['c', 'cpp'])
+add_project_arguments('-DGSR_VERSION="' + meson.project_version() + '"', language: 'c')
executable('gsr-kms-server', 'kms/server/kms_server.c', dependencies : dependency('libdrm'), c_args : '-fstack-protector-all', install : true)
executable('gpu-screen-recorder', src, dependencies : dep, install : true)