diff options
Diffstat (limited to 'pkgs/development/compilers/pakcs/default.nix')
-rw-r--r-- | pkgs/development/compilers/pakcs/default.nix | 111 |
1 files changed, 0 insertions, 111 deletions
diff --git a/pkgs/development/compilers/pakcs/default.nix b/pkgs/development/compilers/pakcs/default.nix deleted file mode 100644 index 739804646c2a..000000000000 --- a/pkgs/development/compilers/pakcs/default.nix +++ /dev/null @@ -1,111 +0,0 @@ -{ stdenv, fetchurl, cabal, swiProlog, either, mtl, syb -, glibcLocales, makeWrapper, rlwrap, tk, which }: - -let - fname = "pakcs-1.11.4"; - - fsrc = fetchurl { - url = "http://www.informatik.uni-kiel.de/~pakcs/download/${fname}-src.tar.gz"; - sha256 = "1xsn8h58pi1jp8wr4abyrqdps840j8limyv5i812z49npf91fy5c"; - }; - -in -stdenv.mkDerivation rec { - - name = fname; - - curryBase = cabal.mkDerivation(self: { - pname = "curryBase"; - version = "local"; - src = fsrc; - sourceRoot = "${name}/frontend/curry-base"; - isLibrary = true; - buildDepends = [ mtl syb ]; - }); - - curryFront = cabal.mkDerivation(self: { - pname = "curryFront"; - version = "local"; - src = fsrc; - sourceRoot = "${name}/frontend/curry-frontend"; - isLibrary = true; - isExecutable = true; - buildDepends = [ either mtl syb curryBase ]; - }); - - src = fsrc; - - buildInputs = [ swiProlog makeWrapper glibcLocales rlwrap tk which ]; - - patches = [ ./adjust-buildsystem.patch ]; - - configurePhase = '' - # Phony HOME. - mkdir phony-home - export HOME=$(pwd)/phony-home - - # SWI Prolog - sed -i 's@SWIPROLOG=@SWIPROLOG='${swiProlog}/bin/swipl'@' pakcsinitrc - ''; - - buildPhase = '' - # Some comments in files are in UTF-8, so include the locale needed by GHC runtime. - export LC_ALL=en_US.UTF-8 - - # PAKCS must be build in place due to embedded filesystem references placed by swi. - - # Prepare PAKCSHOME directory. - mkdir -p $out/pakcs/bin - - # Set up link to cymake, which has been built already. - ln -s ${curryFront}/bin/cymake $out/pakcs/bin/ - - # Prevent embedding the derivation build directory as temp. - export TEMP=/tmp - - # Copy to in place build location and run the build. - cp -r * $out/pakcs - (cd $out/pakcs ; make) - ''; - - installPhase = '' - # Install bin. - mkdir -p $out/bin - for b in $(ls $out/pakcs/bin) ; do - ln -s $out/pakcs/bin/$b $out/bin/ ; - done - - # Place emacs lisp files in expected locations. - mkdir -p $out/share/emacs/site-lisp/curry-pakcs - for e in "$out/tools/emacs/"*.el ; do - cp $e $out/share/emacs/site-lisp/curry-pakcs/ ; - done - - # Wrap for rlwrap and tk support. - wrapProgram $out/pakcs/bin/pakcs \ - --prefix PATH ":" "${rlwrap}/bin" \ - --prefix PATH ":" "${tk}/bin" \ - ''; - - meta = { - homepage = "http://www.informatik.uni-kiel.de/~pakcs/"; - description = "An implementation of the multi-paradigm declarative language Curry"; - license = stdenv.lib.licenses.bsd3; - - longDescription = '' - PAKCS is an implementation of the multi-paradigm declarative language - Curry jointly developed by the Portland State University, the Aachen - University of Technology, and the University of Kiel. Although this is - not a highly optimized implementation but based on a high-level - compilation of Curry programs into Prolog programs, it is not a toy - implementation but has been used for a variety of applications (e.g., - graphical programming environments, an object-oriented front-end for - Curry, partial evaluators, database applications, HTML programming - with dynamic web pages, prototyping embedded systems). - ''; - - maintainers = [ stdenv.lib.maintainers.kkallio ]; - platforms = stdenv.lib.platforms.linux; - hydraPlatforms = stdenv.lib.platforms.none; - }; -} |