missing piece hopefully fixing server build
svn path=/nixpkgs/trunk/; revision=11820
This commit is contained in:
parent
c59433ffda
commit
aa8cc3222b
@ -1378,11 +1378,18 @@ let pkgs = rec {
|
|||||||
ghcCabalDerivation = args : with args;
|
ghcCabalDerivation = args : with args;
|
||||||
let buildInputs = (if (args ? buildInputs) then args.buildInputs else [])
|
let buildInputs = (if (args ? buildInputs) then args.buildInputs else [])
|
||||||
++ [ ghcPkgUtil ] ++ ( if args ? pass && args.pass ? buildInputs then args.pass.buildInputs else []);
|
++ [ ghcPkgUtil ] ++ ( if args ? pass && args.pass ? buildInputs then args.pass.buildInputs else []);
|
||||||
|
configure = if (args ? useLocalPkgDB)
|
||||||
|
then "nix_ghc_pkg_tool join localDb\n" +
|
||||||
|
"\$CABAL_SETUP configure --package-db=localDb \$profiling \$cabalFlags"
|
||||||
|
else "\$CABAL_SETUP configure --by-env=\$PACKAGE_DB \$profiling \$cabalFlags";
|
||||||
in stdenv.mkDerivation ({
|
in stdenv.mkDerivation ({
|
||||||
srcDir = if (args ? srcDir) then args.srcDir else ".";
|
srcDir = if (args ? srcDir) then args.srcDir else ".";
|
||||||
inherit (args) name src propagatedBuildInputs;
|
inherit (args) name src propagatedBuildInputs;
|
||||||
phases = "unpackPhase patchPhase buildPhase";
|
phases = "unpackPhase patchPhase buildPhase";
|
||||||
profiling = if getConfig [ "ghc68" "profiling" ] false then "-p" else "";
|
profiling = if getConfig [ "ghc68" "profiling" ] false then "-p" else "";
|
||||||
|
cabalFlags = map lib.escapeShellArg
|
||||||
|
(getConfig [ "cabal" "flags" ] []
|
||||||
|
++ (if args ? cabalFlags then args.cabalFlags else []) );
|
||||||
# TODO remove echo line
|
# TODO remove echo line
|
||||||
buildPhase ="
|
buildPhase ="
|
||||||
createEmptyPackageDatabaseAndSetupHook
|
createEmptyPackageDatabaseAndSetupHook
|
||||||
@ -1392,7 +1399,7 @@ let pkgs = rec {
|
|||||||
ghc --make Setup.*hs -o setup
|
ghc --make Setup.*hs -o setup
|
||||||
CABAL_SETUP=./setup
|
CABAL_SETUP=./setup
|
||||||
|
|
||||||
\$CABAL_SETUP configure --by-env=\$PACKAGE_DB \$profiling
|
" + configure +"
|
||||||
\$CABAL_SETUP build
|
\$CABAL_SETUP build
|
||||||
\$CABAL_SETUP copy --destdir=\$out
|
\$CABAL_SETUP copy --destdir=\$out
|
||||||
\$CABAL_SETUP register --gen-script
|
\$CABAL_SETUP register --gen-script
|
||||||
@ -1424,19 +1431,19 @@ let pkgs = rec {
|
|||||||
name = deriv.name + "-src-with-tags";
|
name = deriv.name + "-src-with-tags";
|
||||||
createTagFiles = [
|
createTagFiles = [
|
||||||
{ name = "${deriv.name}_haskell";
|
{ name = "${deriv.name}_haskell";
|
||||||
# tagCmd = "${toString ghcsAndLibs.ghc68.ghc}/bin/hasktags --ctags `find . -type f -name \"*.*hs\"`; sort tags > \$TAG_FILE"; }
|
# tagCmd = "${toString ghcsAndLibs.ghc68.ghc}/bin/hasktags --ignore-close-implementation --ctags `find . -type f -name \"*.*hs\"`; sort tags > \$TAG_FILE"; }
|
||||||
tagCmd = "${toString hasktags}/bin/hasktags-modified --ctags `find . -type f -name \"*.*hs\"`; sort tags > \$TAG_FILE"; }
|
tagCmd = "${toString hasktags}/bin/hasktags-modified --ignore-close-implementation --ctags `find . -type f -name \"*.*hs\"`; sort tags > \$TAG_FILE"; }
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
# this may change in the future
|
# this may change in the future
|
||||||
ghc68extraLibs = (import ../misc/ghc68extraLibs ) {
|
ghc68extraLibs = (import ../misc/ghc68extraLibs ) {
|
||||||
# lib like stuff
|
# lib like stuff
|
||||||
inherit bleedingEdgeRepos fetchurl lib addHasktagsTaggingInfo ghcCabalDerivation pkgconfig unzip zlib;
|
inherit bleedingEdgeRepos fetchurl lib addHasktagsTaggingInfo ghcCabalDerivation pkgconfig unzip zlib;
|
||||||
# used (non haskell) libraries (ffi etc)
|
# used (non haskell) libraries (ffi etc)
|
||||||
inherit postgresql mysql sqlite gtkLibs gnome xlibs freetype getConfig libpng;
|
inherit postgresql mysql sqlite gtkLibs gnome xlibs freetype getConfig libpng bzip2 pcre;
|
||||||
|
|
||||||
executables = ghc68executables;
|
executables = ghc68executables;
|
||||||
wxGTK = wxGTK26;
|
wxGTK = wxGTK26;
|
||||||
@ -1445,9 +1452,10 @@ let pkgs = rec {
|
|||||||
|
|
||||||
# Executables compiled by this ghc68 - I'm too lazy to add them all as additional file in here
|
# Executables compiled by this ghc68 - I'm too lazy to add them all as additional file in here
|
||||||
ghc68executables = recurseIntoAttrs (import ../misc/ghc68executables {
|
ghc68executables = recurseIntoAttrs (import ../misc/ghc68executables {
|
||||||
inherit ghcCabalExecutableFun fetchurl lib bleedingEdgeRepos autoconf zlib;
|
inherit ghcCabalExecutableFun fetchurl lib bleedingEdgeRepos autoconf zlib getConfig;
|
||||||
inherit X11;
|
inherit X11;
|
||||||
inherit (xlibs) xmessage;
|
inherit (xlibs) xmessage;
|
||||||
|
inherit pkgs; # passing pkgs to add the possibility for the user to add his own executables. pkgs is passed.
|
||||||
});
|
});
|
||||||
|
|
||||||
# the wrappers basically does one thing: It defines GHC_PACKAGE_PATH before calling ghc{i,-pkg}
|
# the wrappers basically does one thing: It defines GHC_PACKAGE_PATH before calling ghc{i,-pkg}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user