nixpkgs/pkgs/tools/misc/expect/default.nix
Franz Pletz aff1f4ab94 Use general hardening flag toggle lists
The following parameters are now available:

  * hardeningDisable
    To disable specific hardening flags
  * hardeningEnable
    To enable specific hardening flags

Only the cc-wrapper supports this right now, but these may be reused by
other wrappers, builders or setup hooks.

cc-wrapper supports the following flags:

  * fortify
  * stackprotector
  * pie (disabled by default)
  * pic
  * strictoverflow
  * format
  * relro
  * bindnow
2016-03-05 18:55:26 +01:00

43 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 ];
hardeningDisable = [ "format" ];
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 ];
};
}