From 4d25878cd2dd60edf4a819d578d5a6381eae1fa3 Mon Sep 17 00:00:00 2001 From: Vikram Narayanan Date: Thu, 11 Nov 2021 11:25:49 -0800 Subject: [PATCH 1/2] libewf: Add bzip2 dependency for darwin This is part of the series to support radare2 on darwin platforms. When built from sources on darwin platforms, libewf fails as it depends on lbz2. --- pkgs/development/libraries/libewf/default.nix | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/libewf/default.nix b/pkgs/development/libraries/libewf/default.nix index 5d86dd12246b..1935c7d947ff 100644 --- a/pkgs/development/libraries/libewf/default.nix +++ b/pkgs/development/libraries/libewf/default.nix @@ -1,4 +1,4 @@ -{ fetchurl, lib, stdenv, zlib, openssl, libuuid, pkg-config }: +{ fetchurl, lib, stdenv, zlib, openssl, libuuid, pkg-config, bzip2 }: stdenv.mkDerivation rec { version = "20201230"; @@ -10,7 +10,8 @@ stdenv.mkDerivation rec { }; nativeBuildInputs = [ pkg-config ]; - buildInputs = [ zlib openssl libuuid ]; + buildInputs = [ zlib openssl libuuid ] + ++ lib.optionals stdenv.isDarwin [ bzip2 ]; meta = { description = "Library for support of the Expert Witness Compression Format"; From 0996886c85dd50c91ae9e0f143d14cecf9c224a6 Mon Sep 17 00:00:00 2001 From: Vikram Narayanan Date: Thu, 11 Nov 2021 12:40:28 -0800 Subject: [PATCH 2/2] radare2: Add darwin support --- .../tools/analysis/radare2/default.nix | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-) diff --git a/pkgs/development/tools/analysis/radare2/default.nix b/pkgs/development/tools/analysis/radare2/default.nix index 64301a383b42..8cbfed0b16f9 100644 --- a/pkgs/development/tools/analysis/radare2/default.nix +++ b/pkgs/development/tools/analysis/radare2/default.nix @@ -51,6 +51,12 @@ stdenv.mkDerivation rec { chmod -R +w libr/asm/arch/arm/v35arm64/arch-arm64 ''; + postFixup = lib.optionalString stdenv.isDarwin '' + for file in $out/bin/rasm2 $out/bin/ragg2 $out/bin/rabin2 $out/lib/libr_asm.${version}.dylib; do + install_name_tool -change libcapstone.4.dylib ${capstone}/lib/libcapstone.4.dylib $file + done + ''; + postInstall = '' install -D -m755 $src/binr/r2pm/r2pm $out/bin/r2pm ''; @@ -59,7 +65,10 @@ stdenv.mkDerivation rec { makeFlags = [ "GITTAP=${version}" "RANLIB=${stdenv.cc.bintools.bintools}/bin/${stdenv.cc.bintools.targetPrefix}ranlib" + "CC=${stdenv.cc.targetPrefix}cc" + "HOST_CC=${stdenv.cc.targetPrefix}cc" ]; + configureFlags = [ "--with-sysmagic" "--with-syszip" @@ -94,11 +103,11 @@ stdenv.mkDerivation rec { xxHash ]; - meta = { + meta = with lib; { description = "unix-like reverse engineering framework and commandline tools"; - homepage = "http://radare.org/"; - license = lib.licenses.gpl2Plus; - maintainers = with lib.maintainers; [ raskin makefu mic92 ]; - platforms = with lib.platforms; linux; + homepage = "https://radare.org/"; + license = licenses.gpl2Plus; + maintainers = with maintainers; [ raskin makefu mic92 arkivm ]; + platforms = platforms.unix; }; }