nixpkgs/pkgs/tools/misc/expect/default.nix
Daniel Fox Franke 36ac761340 expect: fix Darwin linkage
expect's build system doesn't seem to provide the proper linker flags
for the expect programs to be able to find libexpect on Darwin. (Stuff
like this should really just use libtool. *sigh*). Setting
DYLD_LIBRARY_PATH is an inelegant hack, but it gets the job done
without risking affecting other platforms.
2015-08-30 00:50:48 +02:00

42 lines
1.1 KiB
Nix

{ stdenv, fetchurl, tcl, makeWrapper }:
stdenv.mkDerivation rec {
version = "5.45";
name = "expect-${version}";
src = fetchurl {
url = "mirror://sourceforge/expect/Expect/${version}/expect${version}.tar.gz";
sha256 = "0h60bifxj876afz4im35rmnbnxjx4lbdqp2ja3k30fwa8a8cm3dj";
};
buildInputs = [ tcl ];
nativeBuildInputs = [ makeWrapper ];
patchPhase = ''
sed -i "s,/bin/stty,$(type -p stty),g" configure
'';
configureFlags = [
"--with-tcl=${tcl}/lib"
"--with-tclinclude=${tcl}/include"
"--exec-prefix=\${out}"
];
postInstall = ''
for i in $out/bin/*; do
wrapProgram $i \
--prefix PATH : "${tcl}/bin" \
--prefix TCLLIBPATH ' ' $out/lib/* \
${stdenv.lib.optionalString stdenv.isDarwin "--prefix DYLD_LIBRARY_PATH : $out/lib/expect${version}"}
done
'';
meta = with stdenv.lib; {
description = "A tool for automating interactive applications";
homepage = http://expect.nist.gov/;
license = "Expect";
platforms = platforms.unix;
maintainers = with maintainers; [ wkennington ];
};
}