summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrew Opalach <andrew@akon.city> 2024-11-27 11:44:45 -0500
committerAndrew Opalach <andrew@akon.city> 2024-11-27 11:44:45 -0500
commitff8d09f72dda8e3285fda30626ab7bae18cc7ed6 (patch)
tree6a1cbd480af5466c0b957d3b682ce4201e23b8b6
parent28f56a9e1324fbde6854c72d6b234c2f00748d03 (diff)
downloadcamu-ff8d09f72dda8e3285fda30626ab7bae18cc7ed6.tar.gz
camu-ff8d09f72dda8e3285fda30626ab7bae18cc7ed6.tar.bz2
camu-ff8d09f72dda8e3285fda30626ab7bae18cc7ed6.zip
Use system BLAKE3, update flake
Signed-off-by: Andrew Opalach <andrew@akon.city>
-rw-r--r--flake.nix24
-rw-r--r--src/util/meson.build13
2 files changed, 31 insertions, 6 deletions
diff --git a/flake.nix b/flake.nix
index a57b423..454b16a 100644
--- a/flake.nix
+++ b/flake.nix
@@ -38,7 +38,28 @@
default = with pkgs; stdenv.mkDerivation {
name = "camu";
version = "0.01";
- src = self;
+ src = fetchgit {
+ url = "https://git.akon.city/camu";
+ rev = "28f56a9e1324fbde6854c72d6b234c2f00748d03";
+ postFetch = ''
+ export NIX_SSL_CERT_FILE=${cacert}/etc/ssl/certs/ca-bundle.crt
+
+ cd "$out"
+ ${lib.getExe meson} subprojects download \
+ libalabaster libakiyo stela miniaudio
+
+ cd "$out/subprojects/libalabaster"
+ ${lib.getExe meson} subprojects download c89atomic
+
+ cd "$out/subprojects/libakiyo"
+ ${lib.getExe meson} subprojects download libev
+
+ cd "$out"
+
+ find subprojects -type d -name .git -prune -execdir rm -r {} +
+ '';
+ sha256 = "INzlYEjiWtib+hHHHaMJqiSDkOUOfSRtsAhJNOgwSyo=";
+ };
outputs = [ "out" "dev" ];
nativeBuildInputs = [
git
@@ -59,6 +80,7 @@
buildInputs = [
(curl.override { websocketSupport = true; })
jansson
+ libblake3
libspng
ffmpeg-headless
libcdio
diff --git a/src/util/meson.build b/src/util/meson.build
index 57b07d9..dd67515 100644
--- a/src/util/meson.build
+++ b/src/util/meson.build
@@ -1,8 +1,11 @@
util_src = ['color_palette.c', 'blocking_ring_buffer.c']
-blake3_opts = cmake.subproject_options()
-reltype = is_minsize ? 'MinSizeRel' : 'Release'
-blake3_opts.add_cmake_defines({ 'CMAKE_BUILD_TYPE': is_debug ? 'Debug' : reltype })
-blake3_opts.add_cmake_defines({ 'CMAKE_POSITION_INDEPENDENT_CODE': true })
-blake3 = cmake.subproject('BLAKE3', options: blake3_opts).dependency('blake3')
+blake3 = dependency('libblake3', required: false, allow_fallback: false)
+if not blake3.found()
+ blake3_opts = cmake.subproject_options()
+ reltype = is_minsize ? 'MinSizeRel' : 'Release'
+ blake3_opts.add_cmake_defines({ 'CMAKE_BUILD_TYPE': is_debug ? 'Debug' : reltype })
+ blake3_opts.add_cmake_defines({ 'CMAKE_POSITION_INDEPENDENT_CODE': true })
+ blake3 = cmake.subproject('BLAKE3', options: blake3_opts).dependency('blake3')
+endif
util_deps = [blake3]
util = declare_dependency(sources: util_src, dependencies: util_deps)