Commit 6f6fba99 authored by Stanisław Pitucha's avatar Stanisław Pitucha Committed by Stanisław Pitucha
Browse files

StormLib: fix darwin build

Making the framework path relative allows installing under /nix/store.
parent ad4a70b4
Loading
Loading
Loading
Loading
+12 −2
Original line number Diff line number Diff line
{ lib, stdenv, fetchFromGitHub, cmake, bzip2, libtomcrypt, zlib }:
{ lib, stdenv, fetchFromGitHub, cmake, bzip2, libtomcrypt, zlib, darwin }:

stdenv.mkDerivation rec {
  pname = "StormLib";
@@ -11,13 +11,23 @@ stdenv.mkDerivation rec {
    sha256 = "1rcdl6ryrr8fss5z5qlpl4prrw8xpbcdgajg2hpp0i7fpk21ymcc";
  };

  # Fixes a build failure on aarch64-darwin. Define for all Darwin targets for when x86_64-darwin
  # upgrades to a newer SDK.
  NIX_CFLAGS_COMPILE = lib.optional stdenv.isDarwin "-DTARGET_OS_IPHONE=0";

  postPatch = ''
    substituteInPlace CMakeLists.txt \
      --replace "FRAMEWORK DESTINATION /Library/Frameworks" "FRAMEWORK DESTINATION Library/Frameworks"
  '';

  cmakeFlags = [
    "-DBUILD_SHARED_LIBS=ON"
    "-DWITH_LIBTOMCRYPT=ON"
  ];

  nativeBuildInputs = [ cmake ];
  buildInputs = [ bzip2 libtomcrypt zlib ];
  buildInputs = [ bzip2 libtomcrypt zlib ] ++
    lib.optionals stdenv.isDarwin [ darwin.apple_sdk.frameworks.Carbon ];

  meta = with lib; {
    homepage = "https://github.com/ladislav-zezula/StormLib";