diff options
Diffstat (limited to 'pkgs/by-name/st/stormlib/package.nix')
-rw-r--r-- | pkgs/by-name/st/stormlib/package.nix | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/pkgs/by-name/st/stormlib/package.nix b/pkgs/by-name/st/stormlib/package.nix new file mode 100644 index 0000000000000..d55b93ca48caa --- /dev/null +++ b/pkgs/by-name/st/stormlib/package.nix @@ -0,0 +1,40 @@ +{ lib, stdenv, fetchFromGitHub, cmake, bzip2, libtomcrypt, zlib, darwin }: + +stdenv.mkDerivation rec { + pname = "stormlib"; + version = "9.22"; + + src = fetchFromGitHub { + owner = "ladislav-zezula"; + repo = "StormLib"; + rev = "v${version}"; + sha256 = "1rcdl6ryrr8fss5z5qlpl4prrw8xpbcdgajg2hpp0i7fpk21ymcc"; + }; + + 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 ] ++ + lib.optionals stdenv.isDarwin [ darwin.apple_sdk.frameworks.Carbon ]; + + env.NIX_CFLAGS_COMPILE = toString (lib.optionals stdenv.cc.isClang [ + "-Wno-implicit-function-declaration" + "-Wno-int-conversion" + ]); + + meta = with lib; { + homepage = "https://github.com/ladislav-zezula/StormLib"; + license = licenses.mit; + description = "An open-source project that can work with Blizzard MPQ archives"; + platforms = platforms.all; + maintainers = with maintainers; [ aanderse karolchmist ]; + }; +} |