Added pre release of stratego libraries, fixed support for configureFlags in MinGW, add binary pkg-config distribution for bootstrapping. Optionally use pkgconfig from the stdenv (again, for bootstrapping)
svn path=/nixpkgs/trunk/; revision=6253
This commit is contained in:
parent
ea7977eb84
commit
961b20c1b7
@ -0,0 +1,22 @@
|
||||
{stdenv, fetchurl, pkgconfig, aterm}:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "stratego-libraries-0.17";
|
||||
src =
|
||||
fetchurl {
|
||||
url = http://www.cs.uu.nl/people/martin/stratego-libraries.tar.gz;
|
||||
md5 = "e99ce18179400c8ef373e8e668a4c576";
|
||||
};
|
||||
|
||||
buildInputs = [pkgconfig aterm];
|
||||
|
||||
configureFlags =
|
||||
if stdenv ? isMinGW && stdenv.isMinGW then "--with-std=C99" else "";
|
||||
|
||||
# avoids loads of warnings about too big description fields because of a broken debug format
|
||||
CFLAGS =
|
||||
if stdenv ? isMinGW && stdenv.isMinGW then "-O2" else null;
|
||||
|
||||
# MinGW bootstrap pkg-config does not support the pkg-config setup-hook yet.
|
||||
PKG_CONFIG_PATH = aterm + "/lib/pkgconfig";
|
||||
}
|
@ -59,7 +59,10 @@ let {
|
||||
stdenvFinal =
|
||||
let {
|
||||
body =
|
||||
stdenv // mkDerivationFun // { inherit fetchurl; };
|
||||
stdenv // mkDerivationFun // {
|
||||
inherit fetchurl;
|
||||
pkgconfig = pkgconfigBin;
|
||||
};
|
||||
|
||||
shell =
|
||||
msys + /bin/sh + ".exe";
|
||||
@ -202,6 +205,12 @@ let {
|
||||
inherit fetchurl;
|
||||
};
|
||||
|
||||
pkgconfigBin =
|
||||
(import ./pkgs).pkgconfigBin {
|
||||
stdenv = stdenvInit3;
|
||||
inherit fetchurl;
|
||||
};
|
||||
|
||||
/**
|
||||
* Source packages, based on stdenvInit3
|
||||
*/
|
||||
|
@ -10,6 +10,7 @@ if test -z "$out"; then
|
||||
succeedOnFailure=$SUCCEEDONFAILURE
|
||||
patches=$PATCHES
|
||||
doCheck=$DOCHECK
|
||||
configureFlags=$CONFIGUREFLAGS
|
||||
fi
|
||||
|
||||
source $@
|
||||
|
@ -114,6 +114,26 @@ rec {
|
||||
};
|
||||
};
|
||||
|
||||
/**
|
||||
* We need a binary pkg-config to bootstrap the compilation of
|
||||
* glib and pkg-config: pkg-config needs glib, glib needs pkg-config.
|
||||
*
|
||||
* This tarball contains pkg-config and all its dependencies. Once we
|
||||
* have bootstrapped pkg-config we really need to use a statically linked
|
||||
* pkg-config (and provide this .exe at the web: it is really missing
|
||||
* on the web).
|
||||
*/
|
||||
pkgconfigBin = {stdenv, fetchurl} :
|
||||
stdenv.mkDerivation {
|
||||
name = "pkg-config-0.20";
|
||||
builder = ./bin-builder.sh;
|
||||
src =
|
||||
fetchurl {
|
||||
url = http://www.cs.uu.nl/people/martin/pkg-config-0.20-bin.tar.gz;
|
||||
md5 = "71f9595a022619b8e8b0f7853790c4c7";
|
||||
};
|
||||
};
|
||||
|
||||
/*
|
||||
pkgs.coreutils
|
||||
pkgs.findutils
|
||||
|
@ -512,9 +512,14 @@ rec {
|
||||
m4 = gnum4;
|
||||
};
|
||||
|
||||
pkgconfig = (import ../development/tools/misc/pkgconfig) {
|
||||
/**
|
||||
* pkgconfig is optionally taken from the stdenv to allow bootstrapping
|
||||
* of glib and pkgconfig itself on MinGW.
|
||||
*/
|
||||
pkgconfig = useFromStdenv (stdenv ? pkgconfig) stdenv.pkgconfig
|
||||
(import ../development/tools/misc/pkgconfig {
|
||||
inherit fetchurl stdenv;
|
||||
};
|
||||
});
|
||||
|
||||
pkgconfig017x = (import ../development/tools/misc/pkgconfig/pkgconfig-0.17.2.nix) {
|
||||
inherit fetchurl stdenv;
|
||||
@ -856,6 +861,10 @@ rec {
|
||||
stdenv = overrideInStdenv stdenv [gnumake380];
|
||||
};
|
||||
|
||||
strategoLibraries = (import ../development/compilers/strategoxt/libraries/stratego-libraries-0.17pre.nix) {
|
||||
inherit stdenv fetchurl pkgconfig aterm;
|
||||
};
|
||||
|
||||
strategoxtUtils = (import ../development/compilers/strategoxt/utils) {
|
||||
inherit fetchurl pkgconfig stdenv aterm sdf strategoxt;
|
||||
};
|
||||
|
@ -5,7 +5,23 @@ let {
|
||||
};
|
||||
|
||||
body = {
|
||||
inherit (pkgs) zlib getopt realCurl aterm pkgconfig_latest;
|
||||
inherit (pkgs.gtkLibs28) glib;
|
||||
inherit (pkgs)
|
||||
aterm
|
||||
getopt
|
||||
pkgconfig
|
||||
realCurl
|
||||
strategoLibraries
|
||||
zlib;
|
||||
# inherit profileTest;
|
||||
};
|
||||
|
||||
# profileTest =
|
||||
# pkgs.stdenv.mkDerivation {
|
||||
# name = "profile-test";
|
||||
# src = ./char-test.c;
|
||||
# builder = ./profile-builder.sh;
|
||||
# strlib = pkgs.strategoLibraries;
|
||||
# aterm = pkgs.aterm;
|
||||
# buildInputs = [pkgs.aterm pkgs.strategoLibraries];
|
||||
# };
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user