diff options
author | kashw2 <supra4keanu@hotmail.com> | 2023-09-06 12:28:12 +1000 |
---|---|---|
committer | Weijia Wang <9713184+wegank@users.noreply.github.com> | 2023-09-09 10:37:58 +0200 |
commit | d8baf4220740e79a34e976e9ebfa789760659695 (patch) | |
tree | 22a39e479b29ffaf8c3d7fde216205e660e81788 /pkgs/development/misc | |
parent | 128f91c6c30b86b66428fbdbbf2b56d911415bd2 (diff) |
juce: init at 7.0.7
Diffstat (limited to 'pkgs/development/misc')
-rw-r--r-- | pkgs/development/misc/juce/default.nix | 69 |
1 files changed, 69 insertions, 0 deletions
diff --git a/pkgs/development/misc/juce/default.nix b/pkgs/development/misc/juce/default.nix new file mode 100644 index 0000000000000..113cabc0440f6 --- /dev/null +++ b/pkgs/development/misc/juce/default.nix @@ -0,0 +1,69 @@ +{ lib +, stdenv +, fetchFromGitHub +, fetchpatch + +# Native build inputs +, cmake +, pkg-config +, makeWrapper + +# Dependencies +, alsa-lib +, freetype +, curl +, libglvnd +, webkitgtk +, pcre +, darwin +}: + +stdenv.mkDerivation (finalAttrs: { + pname = "juce"; + version = "7.0.7"; + + src = fetchFromGitHub { + owner = "juce-framework"; + repo = "juce"; + rev = finalAttrs.version; + hash = "sha256-r+Wf/skPDexm3rsrVBoWrygKvV9HGlCQd7r0iHr9avM="; + }; + + patches = [ + (fetchpatch { + name = "juce-6.1.2-cmake_install.patch"; + url = "https://gitlab.archlinux.org/archlinux/packaging/packages/juce/-/raw/4e6d34034b102af3cd762a983cff5dfc09e44e91/juce-6.1.2-cmake_install.patch"; + hash = "sha256-fr2K/dH0Zam5QKS63zos7eq9QLwdr+bvQL5ZxScagVU="; + }) + ]; + + nativeBuildInputs = [ + cmake + pkg-config + makeWrapper + ]; + + buildInputs = [ + freetype # libfreetype.so + curl # libcurl.so + stdenv.cc.cc.lib # libstdc++.so libgcc_s.so + pcre # libpcre2.pc + ] ++ lib.optionals stdenv.isLinux [ + alsa-lib # libasound.so + libglvnd # libGL.so + webkitgtk # webkit2gtk-4.0 + ] ++ lib.optionals stdenv.isDarwin [ + darwin.apple_sdk_11_0.frameworks.Cocoa + darwin.apple_sdk_11_0.frameworks.MetalKit + darwin.apple_sdk_11_0.frameworks.WebKit + ]; + + meta = with lib; { + description = "Cross-platform C++ application framework"; + longDescription = "JUCE is an open-source cross-platform C++ application framework for desktop and mobile applications, including VST, VST3, AU, AUv3, RTAS and AAX audio plug-ins"; + homepage = "https://github.com/juce-framework/JUCE"; + license = with licenses; [ isc gpl3Plus ]; + maintainers = with maintainers; [ kashw2 ]; + platforms = platforms.all; + }; +}) |