Merge pull request #119126 from fabaff/pycomfoconnect
[NixPkgs.git] / pkgs / development / interpreters / tcl / generic.nix
blobe665e8cfb1eadcb78ad83a9622102b4337548d31
1 { lib, stdenv
3 # Version specific stuff
4 , release, version, src
5 , ...
6 }:
8 stdenv.mkDerivation {
9   pname = "tcl";
10   inherit version;
12   inherit src;
14   outputs = [ "out" "man" ];
16   setOutputFlags = false;
18   preConfigure = ''
19     cd unix
20   '';
22   configureFlags = [
23     "--enable-threads"
24     # Note: using $out instead of $man to prevent a runtime dependency on $man.
25     "--mandir=${placeholder "out"}/share/man"
26     "--enable-man-symlinks"
27     # Don't install tzdata because NixOS already has a more up-to-date copy.
28     "--with-tzdata=no"
29     "tcl_cv_strtod_unbroken=ok"
30   ] ++ lib.optional stdenv.is64bit "--enable-64bit";
32   enableParallelBuilding = true;
34   postInstall = let
35     dllExtension = stdenv.hostPlatform.extensions.sharedLibrary;
36   in ''
37     make install-private-headers
38     ln -s $out/bin/tclsh${release} $out/bin/tclsh
39     ln -s $out/lib/libtcl${release}${dllExtension} $out/lib/libtcl${dllExtension}
40   '';
42   meta = with lib; {
43     description = "The Tcl scripting language";
44     homepage = "https://www.tcl.tk/";
45     license = licenses.tcltk;
46     platforms = platforms.all;
47     maintainers = with maintainers; [ vrthra ];
48   };
50   passthru = rec {
51     inherit release version;
52     libPrefix = "tcl${release}";
53     libdir = "lib/${libPrefix}";
54   };