diff options
| author | 2024-11-13 21:46:10 -0500 | |
|---|---|---|
| committer | 2024-11-13 21:46:10 -0500 | |
| commit | 58d38d767442c83e31ae6dbaea7b1fc8ccb00633 (patch) | |
| tree | b5b6e3bb845bc7b18ff2fc41fe60ad09ad30537d | |
| parent | 8c996a5b597bd1cd9c188a0e61eae1ff718c8ca2 (diff) | |
| download | camu-58d38d767442c83e31ae6dbaea7b1fc8ccb00633.tar.gz camu-58d38d767442c83e31ae6dbaea7b1fc8ccb00633.tar.bz2 camu-58d38d767442c83e31ae6dbaea7b1fc8ccb00633.zip | |
Cleanup build
Signed-off-by: Andrew Opalach <andrew@akon.city>
| -rw-r--r-- | flake.nix | 1 | ||||
| -rw-r--r-- | meson.build | 35 | ||||
| -rw-r--r-- | src/buffer/meson.build | 5 | ||||
| -rw-r--r-- | src/codec/meson.build | 6 | ||||
| -rw-r--r-- | src/fruits/cmc/meson.build | 2 | ||||
| -rw-r--r-- | src/fruits/cmsrv/meson.build | 6 | ||||
| -rw-r--r-- | src/fruits/cmv/meson.build | 2 | ||||
| -rw-r--r-- | src/fruits/ctv/meson.build | 2 | ||||
| -rw-r--r-- | src/fruits/droid/ctv/app/src/main/AndroidManifest.xml | 6 | ||||
| -rw-r--r-- | src/libclient/meson.build | 2 | ||||
| -rw-r--r-- | src/libsink/meson.build | 11 | ||||
| -rw-r--r-- | src/mixer/meson.build | 2 | ||||
| -rw-r--r-- | src/render/meson.build | 2 | ||||
| -rw-r--r-- | src/screen/meson.build | 3 | ||||
| -rw-r--r-- | src/screen/screen.h | 2 | ||||
| -rw-r--r-- | src/server/meson.build | 5 | ||||
| -rw-r--r-- | src/sink/meson.build | 2 |
17 files changed, 56 insertions, 38 deletions
@@ -104,7 +104,6 @@ python-pkgs.certifi python-pkgs.requests python-pkgs.beautifulsoup4 - python-pkgs.python-creole ])) perl asciidoctor diff --git a/meson.build b/meson.build index e4bcfd9..1b4a0f9 100644 --- a/meson.build +++ b/meson.build @@ -20,20 +20,23 @@ akiyo_has_curl = akiyo.get_variable('akiyo_has_curl') akiyo_has_mmap = akiyo.get_variable('akiyo_has_mmap') common_deps = [alabaster.get_variable('alabaster'), akiyo.get_variable('akiyo')] -if is_linux - window = 'window=wayland' -elif is_android - window = 'window=glfm' -else - window = 'window=glfw' +no_video = meson.is_subproject() +if not no_video + if is_linux + window = 'window=wayland' + elif is_android + window = 'window=glfm' + else + window = 'window=glfw' + endif + stela = subproject('stela', default_options: [ + get_option('sink-use-vulkan') ? 'api=vulkan' : 'api=opengl', + window, + 'poll=inline', + 'event-buffer=false', + 'pause=true' + ]).get_variable('stela') endif -stela = subproject('stela', default_options: [ - get_option('sink-use-vulkan') ? 'api=vulkan' : 'api=opengl', - window, - 'poll=inline', - 'event-buffer=false', - 'pause=true' -]).get_variable('stela') subdir('src/util') common_deps += [util] @@ -63,8 +66,10 @@ endif if get_option('sink').enabled() subdir('src/buffer') subdir('src/mixer') - subdir('src/render') - subdir('src/screen') + if not no_video + subdir('src/render') + subdir('src/screen') + endif subdir('src/libsink') subdir('src/sink') if not meson.is_subproject() diff --git a/src/buffer/meson.build b/src/buffer/meson.build index a3538f1..debef54 100644 --- a/src/buffer/meson.build +++ b/src/buffer/meson.build @@ -1,11 +1,8 @@ buffer_src = ['audio.c', 'clock.c', 'peak_buffer.c'] -buffer_deps = [common_deps] +buffer_deps = [] buffer_args = [] -no_video = meson.is_subproject() if not no_video buffer_src += ['video.c'] -else - buffer_args += ['-DCAMU_SINK_NO_VIDEO'] endif buffer = declare_dependency(sources: buffer_src, dependencies: buffer_deps, compile_args: buffer_args) diff --git a/src/codec/meson.build b/src/codec/meson.build index fa5ff9a..2a72b55 100644 --- a/src/codec/meson.build +++ b/src/codec/meson.build @@ -77,4 +77,8 @@ if get_option('codecs').contains('wuffs') codec_deps += [wuffs_codec] endif -codecs = declare_dependency(dependencies: [stela, codec_deps]) +if not no_video + codec_deps += [stela] +endif + +codecs = declare_dependency(dependencies: codec_deps) diff --git a/src/fruits/cmc/meson.build b/src/fruits/cmc/meson.build index 4cbe553..6f79b78 100644 --- a/src/fruits/cmc/meson.build +++ b/src/fruits/cmc/meson.build @@ -1,5 +1,5 @@ cmc_src = ['cmc.c'] -cmc_deps = [libclient] +cmc_deps = [common_deps, libclient] cmc_args = [] if get_option('portal').enabled() diff --git a/src/fruits/cmsrv/meson.build b/src/fruits/cmsrv/meson.build index ee8eb91..1ace2c2 100644 --- a/src/fruits/cmsrv/meson.build +++ b/src/fruits/cmsrv/meson.build @@ -1,11 +1,7 @@ cmsrv_src = ['cmsrv.c'] -cmsrv_deps = [server] +cmsrv_deps = [common_deps, server] cmsrv_args = [] -if get_option('portal').enabled() - cmsrv_deps += [portal] -endif - use_tui = true if use_tui cmsrv_src += ['ui.c'] diff --git a/src/fruits/cmv/meson.build b/src/fruits/cmv/meson.build index ba571c3..bdb7d85 100644 --- a/src/fruits/cmv/meson.build +++ b/src/fruits/cmv/meson.build @@ -1,5 +1,5 @@ cmv_src = ['cmv.c'] -cmv_deps = [desktop] +cmv_deps = [common_deps, desktop] cmv_args = [] if get_option('sink-only') cmv_args += ['-DCAMU_SINK_ONLY'] diff --git a/src/fruits/ctv/meson.build b/src/fruits/ctv/meson.build index c06cec3..dff208d 100644 --- a/src/fruits/ctv/meson.build +++ b/src/fruits/ctv/meson.build @@ -1,5 +1,5 @@ ctv_src = ['ctv.c'] -ctv_deps = [common_deps, buffer, render, screen, mixer, libsink] +ctv_deps = [common_deps, libsink] ctv_args = ['-DCAMU_MIXER_THREADED', '-DCAMU_SCREEN_THREADED'] # https://github.com/google/ExoPlayer/issues/9933#issuecomment-1029775358 diff --git a/src/fruits/droid/ctv/app/src/main/AndroidManifest.xml b/src/fruits/droid/ctv/app/src/main/AndroidManifest.xml index 4393ee9..00f96c1 100644 --- a/src/fruits/droid/ctv/app/src/main/AndroidManifest.xml +++ b/src/fruits/droid/ctv/app/src/main/AndroidManifest.xml @@ -1,8 +1,13 @@ <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android"> <uses-permission android:name="android.permission.INTERNET" /> + <uses-feature android:name="android.software.leanback" + android:required="false" /> + <uses-feature android:name="android.hardware.touchscreen" + android:required="false" /> <application android:allowBackup="true" + android:banner="@mipmap/ic_launcher" android:icon="@mipmap/ic_launcher" android:label="@string/app_name" android:hasCode="false" @@ -18,6 +23,7 @@ <intent-filter> <action android:name="android.intent.action.MAIN"/> <category android:name="android.intent.category.LAUNCHER"/> + <category android:name="android.intent.category.LEANBACK_LAUNCHER" /> </intent-filter> </activity> </application> diff --git a/src/libclient/meson.build b/src/libclient/meson.build index 197f0ff..cb0ae2b 100644 --- a/src/libclient/meson.build +++ b/src/libclient/meson.build @@ -1,3 +1,3 @@ libclient_src = ['client.c'] -libclient_deps = [common_deps] +libclient_deps = [] libclient = declare_dependency(sources: libclient_src, dependencies: libclient_deps) diff --git a/src/libsink/meson.build b/src/libsink/meson.build index adc06d2..7f2d1d4 100644 --- a/src/libsink/meson.build +++ b/src/libsink/meson.build @@ -1,3 +1,10 @@ libsink_src = ['sink.c'] -libsink_deps = [liana_client] -libsink = declare_dependency(sources: libsink_src, dependencies: libsink_deps) +libsink_deps = [buffer, mixer, liana_client] +libsink_args = [] +if not no_video + libsink_deps += [screen] +else + libsink_args += ['-DCAMU_SINK_NO_VIDEO'] +endif +libsink = declare_dependency(sources: libsink_src, dependencies: libsink_deps, + compile_args: libsink_args) diff --git a/src/mixer/meson.build b/src/mixer/meson.build index 7adc75c..c09f779 100644 --- a/src/mixer/meson.build +++ b/src/mixer/meson.build @@ -1,5 +1,5 @@ mixer_src = ['mixer.c', 'audio_null.c'] -mixer_deps = [common_deps] +mixer_deps = [] mixer_args = [] use_miniaudio = true diff --git a/src/render/meson.build b/src/render/meson.build index 1b6fd71..74d323e 100644 --- a/src/render/meson.build +++ b/src/render/meson.build @@ -1,5 +1,5 @@ render_src = [] -render_deps = [common_deps] +render_deps = [] render_args = [] if get_option('renderer') == 'tiger' diff --git a/src/screen/meson.build b/src/screen/meson.build index 9c01566..d1118c5 100644 --- a/src/screen/meson.build +++ b/src/screen/meson.build @@ -1,2 +1,3 @@ screen_src = ['screen.c', 'view.c'] -screen = declare_dependency(sources: screen_src, dependencies: [stela]) +screen_deps = [stela, render] +screen = declare_dependency(sources: screen_src, dependencies: screen_deps) diff --git a/src/screen/screen.h b/src/screen/screen.h index bfb2dd3..b81b5e5 100644 --- a/src/screen/screen.h +++ b/src/screen/screen.h @@ -1,8 +1,8 @@ #pragma once #include <al/array.h> -#ifdef CAMU_SCREEN_THREADED #include <al/atomic.h> +#ifdef CAMU_SCREEN_THREADED #include <aki/thread.h> #endif #include <stl/window.h> diff --git a/src/server/meson.build b/src/server/meson.build index 88f80c0..ab100e1 100644 --- a/src/server/meson.build +++ b/src/server/meson.build @@ -4,5 +4,8 @@ server_src = [ 'user.c', 'db.c', ] -server_deps = [common_deps, cache, liana_server] +server_deps = [cache, liana_server] +if get_option('portal').enabled() + server_deps += [portal] +endif server = declare_dependency(sources: server_src, dependencies: server_deps) diff --git a/src/sink/meson.build b/src/sink/meson.build index bd7b3f0..73a9276 100644 --- a/src/sink/meson.build +++ b/src/sink/meson.build @@ -1,5 +1,5 @@ desktop_src = ['desktop.c'] -desktop_deps = [common_deps, buffer, render, screen, mixer, libsink] +desktop_deps = [libsink] desktop_args = ['-DCAMU_MIXER_THREADED', '-DCAMU_SCREEN_THREADED'] desktop = declare_dependency(sources: desktop_src, dependencies: desktop_deps, compile_args: desktop_args) |