From f8d83938a757b26802535af14ab1281d369f0fe4 Mon Sep 17 00:00:00 2001 From: Orivej Desh Date: Thu, 1 Aug 2019 09:23:53 +0000 Subject: [PATCH] swig4: init at 4.0.0 SWIG 4 is not a complete replacement for SWIG 3 because it has removed support for CFFI, Allegrocl, Chicken, CLISP, S-EXP, UFFI, Pike, Modula3. --- pkgs/development/tools/misc/swig/4.nix | 37 ++++++++++++++++++++++++++ pkgs/top-level/all-packages.nix | 1 + 2 files changed, 38 insertions(+) create mode 100644 pkgs/development/tools/misc/swig/4.nix diff --git a/pkgs/development/tools/misc/swig/4.nix b/pkgs/development/tools/misc/swig/4.nix new file mode 100644 index 00000000000..68febba3813 --- /dev/null +++ b/pkgs/development/tools/misc/swig/4.nix @@ -0,0 +1,37 @@ +{ stdenv, fetchFromGitHub, autoconf, automake, libtool, bison, pcre }: + +stdenv.mkDerivation rec { + pname = "swig"; + version = "4.0.0"; + + src = fetchFromGitHub { + owner = "swig"; + repo = "swig"; + rev = "rel-${version}"; + sha256 = "0yx33972jd3214xr3mrap0j5clma9bvs42qz8x38dfz62xlsi78v"; + }; + + PCRE_CONFIG = "${pcre.dev}/bin/pcre-config"; + nativeBuildInputs = [ autoconf automake libtool bison ]; + buildInputs = [ pcre ]; + + configureFlags = [ "--without-tcl" ]; + + # Disable ccache documentation as it needs yodl + postPatch = '' + sed -i '/man1/d' CCache/Makefile.in + ''; + + preConfigure = '' + ./autogen.sh + ''; + + meta = with stdenv.lib; { + description = "SWIG, an interface compiler that connects C/C++ code to higher-level languages"; + homepage = http://swig.org/; + # Different types of licenses available: http://www.swig.org/Release/LICENSE . + license = licenses.gpl3Plus; + maintainers = with maintainers; [ orivej ]; + platforms = with platforms; linux ++ darwin; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 05df1e619da..bf8e64f3800 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -9870,6 +9870,7 @@ in swig1 = callPackage ../development/tools/misc/swig { }; swig2 = callPackage ../development/tools/misc/swig/2.x.nix { }; swig3 = callPackage ../development/tools/misc/swig/3.x.nix { }; + swig4 = callPackage ../development/tools/misc/swig/4.nix { }; swig = swig3; swigWithJava = swig;