diff --git a/horizon.dhall b/horizon.dhall index e69242035366253cdf25166ccdf6e420ad15bb96..3495b8143fbdab86c2486bdeecc4b43eb0a2c504 100644 --- a/horizon.dhall +++ b/horizon.dhall @@ -44,7 +44,8 @@ let callGitServant (Some subdir) let packages = - { Cabal = H.callHackage "Cabal" "3.8.1.0" + { BNFC = H.callHackage "BNFC" "2.9.4.1" + , Cabal = H.callHackage "Cabal" "3.8.1.0" , Cabal-QuickCheck = callGitCabal "Cabal-QuickCheck" , Cabal-described = callGitCabal "Cabal-described" , Cabal-syntax = callGitCabal "Cabal-syntax" diff --git a/initial-packages.nix b/initial-packages.nix index 700d400fa3d0a857ed11900090616e2e9eb078ae..fdb0b776599be40c164239af8d0947976d67efda 100644 --- a/initial-packages.nix +++ b/initial-packages.nix @@ -1,6 +1,8 @@ { pkgs, lib, callPackage, ... }: self: with pkgs.haskell.lib; { + BNFC = self.callPackage (./pkgs/BNFC.nix) { }; + Cabal = self.callPackage (./pkgs/Cabal.nix) { }; Cabal-QuickCheck = self.callPackage (./pkgs/Cabal-QuickCheck.nix) { }; diff --git a/pkgs/BNFC.nix b/pkgs/BNFC.nix new file mode 100644 index 0000000000000000000000000000000000000000..4fac7769810cffa63a1b17898ed0c62ad1864ba3 --- /dev/null +++ b/pkgs/BNFC.nix @@ -0,0 +1,75 @@ +{ mkDerivation +, HUnit +, QuickCheck +, alex +, array +, base +, containers +, deepseq +, directory +, filepath +, happy +, hspec +, hspec-discover +, lib +, mtl +, pretty +, process +, string-qq +, temporary +, time +, transformers +}: +mkDerivation { + pname = "BNFC"; + version = "2.9.4.1"; + sha256 = "5e93609c1633e4b6636d0ac2b52c1d35228c13bd704a7849cb4e92b00ce27250"; + isLibrary = true; + isExecutable = true; + enableSeparateDataOutput = false; + libraryHaskellDepends = [ + array + base + containers + deepseq + directory + filepath + mtl + pretty + process + string-qq + time + transformers + ]; + libraryToolDepends = [ alex happy ]; + executableHaskellDepends = [ base ]; + testHaskellDepends = [ + array + base + containers + deepseq + directory + filepath + hspec + HUnit + mtl + pretty + process + QuickCheck + string-qq + temporary + time + ]; + testToolDepends = [ alex happy hspec-discover ]; + enableLibraryProfiling = true; + enableExecutableProfiling = true; + doHaddock = false; + jailbreak = true; + doCheck = false; + doBenchmark = false; + hyperlinkSource = false; + homepage = "http://bnfc.digitalgrammars.com/"; + description = "A compiler front-end generator"; + license = lib.licenses.bsd3; + broken = false; +}