diff options
author | Dominic Shelton <frogamic@protonmail.com> | 2023-11-15 01:54:21 +1100 |
---|---|---|
committer | Weijia Wang <9713184+wegank@users.noreply.github.com> | 2023-11-17 21:55:38 +0100 |
commit | c7aba8ab6069c4dbd9af39657fe4a7fc6645e477 (patch) | |
tree | b2e795c27b4f15c3c563b9827f0bdffadfb658c0 /pkgs/development/libraries/libusbsio | |
parent | 19e27c3547b51e8705855879a4f55846c75ee5fb (diff) |
libusbsio: Add darwin support
Diffstat (limited to 'pkgs/development/libraries/libusbsio')
-rw-r--r-- | pkgs/development/libraries/libusbsio/default.nix | 33 |
1 files changed, 27 insertions, 6 deletions
diff --git a/pkgs/development/libraries/libusbsio/default.nix b/pkgs/development/libraries/libusbsio/default.nix index 1982311919ba6..090683898a16d 100644 --- a/pkgs/development/libraries/libusbsio/default.nix +++ b/pkgs/development/libraries/libusbsio/default.nix @@ -1,7 +1,13 @@ -{ lib, stdenv, fetchzip, pkg-config, libusb1, systemdMinimal }: -let - binDirPrefix = if stdenv.isDarwin then "osx_" else "linux_"; -in +{ lib +, stdenv +, fetchzip +, pkg-config +, fixDarwinDylibNames +, libusb1 +, systemdMinimal +, darwin +}: + stdenv.mkDerivation rec { pname = "libusbsio"; version = "2.1.11"; @@ -15,15 +21,30 @@ stdenv.mkDerivation rec { rm -r bin/* ''; - nativeBuildInputs = [ pkg-config ]; + makeFlags = [ + "CC=${stdenv.cc.targetPrefix}cc" + "BINDIR=" + ]; + + nativeBuildInputs = [ + pkg-config + ] ++ lib.optionals stdenv.isDarwin [ + fixDarwinDylibNames + ]; + buildInputs = [ libusb1 + ] ++ lib.optionals stdenv.isDarwin (with darwin.apple_sdk.frameworks; [ + AppKit + CoreFoundation + IOKit + ]) ++ lib.optionals stdenv.isLinux [ systemdMinimal # libudev ]; installPhase = '' runHook preInstall - install -D bin/${binDirPrefix}${stdenv.hostPlatform.parsed.cpu.name}/libusbsio${stdenv.hostPlatform.extensions.sharedLibrary} $out/lib/libusbsio${stdenv.hostPlatform.extensions.sharedLibrary} + install -D bin/libusbsio${stdenv.hostPlatform.extensions.sharedLibrary} $out/lib/libusbsio${stdenv.hostPlatform.extensions.sharedLibrary} runHook postInstall ''; |