From d1f3a668a018f13199947b7e839309dad12ec8a6 Mon Sep 17 00:00:00 2001 From: Martin Bravenboer Date: Wed, 16 Aug 2006 18:35:39 +0000 Subject: [PATCH] Victory: mingw stdenv with mingw-runtime from source svn path=/nixpkgs/trunk/; revision=6136 --- pkgs/stdenv/mingw/default.nix | 40 ++++++++++++++++++- pkgs/stdenv/mingw/pkgs/default.nix | 29 ++++++++++++-- .../mingw/pkgs/mingw-runtime-builder.sh | 11 +++++ 3 files changed, 74 insertions(+), 6 deletions(-) create mode 100644 pkgs/stdenv/mingw/pkgs/mingw-runtime-builder.sh diff --git a/pkgs/stdenv/mingw/default.nix b/pkgs/stdenv/mingw/default.nix index 5a66a65021b..8d75fdd063f 100644 --- a/pkgs/stdenv/mingw/default.nix +++ b/pkgs/stdenv/mingw/default.nix @@ -36,7 +36,19 @@ let { inherit system; name = "stdenv-init3-mingw"; shell = msysShell; - path = [ (make + /bin) (msys + /bin) (binutils /bin) (gccCore + /bin) ]; + path = [ + (make + /bin) + (binutils + /bin) + (gccCore + /bin) + (mingwRuntimeBin + /bin) + (w32apiBin + /bin) + (msys + /bin) + ]; + + extraEnv = { + C_INCLUDE_PATH = mingwRuntimeBin + "/include" + ":" + w32apiBin + "/include"; + LIBRARY_PATH = mingwRuntimeBin + "/lib" + ":" + w32apiBin + "/lib"; + }; }; /** @@ -73,7 +85,7 @@ let { builder = ./builder.sh; substitute = ../../build-support/substitute/substitute.sh; setup = ./setup.sh; - initialPath = [make msys]; + initialPath = [mingwRuntimeSrc make msys]; gcc = gccWrapper; shell = msysShell; }; @@ -128,6 +140,9 @@ let { msysShell = msys + /bin/sh + ".exe"; + /** + * Binary packages, based on stdenvInit2 + */ gccCore = (import ./pkgs).gccCore { stdenv = stdenvInit2; @@ -145,4 +160,25 @@ let { stdenv = stdenvInit2; inherit fetchurl; }; + + mingwRuntimeBin = + (import ./pkgs).mingwRuntimeBin { + stdenv = stdenvInit2; + inherit fetchurl; + }; + + w32apiBin = + (import ./pkgs).w32apiBin { + stdenv = stdenvInit2; + inherit fetchurl; + }; + + /** + * Source packages, based on stdenvInit3 + */ + mingwRuntimeSrc = + (import ./pkgs).mingwRuntimeSrc { + stdenv = stdenvInit3; + inherit fetchurl; + }; } diff --git a/pkgs/stdenv/mingw/pkgs/default.nix b/pkgs/stdenv/mingw/pkgs/default.nix index 59794fc3224..cb47e737424 100755 --- a/pkgs/stdenv/mingw/pkgs/default.nix +++ b/pkgs/stdenv/mingw/pkgs/default.nix @@ -45,12 +45,21 @@ rec { }; }; - /** - * MinGW Runtime. Source. - */ - mingwRuntime = {stdenv, fetchurl} : + mingwRuntimeBin = {stdenv, fetchurl} : stdenv.mkDerivation { name = "mingw-runtime-3.10"; + builder = ./bin-builder.sh; + src = + fetchurl { + url = http://surfnet.dl.sourceforge.net/sourceforge/mingw/mingw-runtime-3.10.tar.gz; + md5 = "7fa2638d23136fd84d5d627bef3b408a"; + }; + }; + + mingwRuntimeSrc = {stdenv, fetchurl} : + stdenv.mkDerivation { + name = "mingw-runtime-3.10"; + builder = ./mingw-runtime-builder.sh; src = fetchurl { url = http://surfnet.dl.sourceforge.net/sourceforge/mingw/mingw-runtime-3.10-src.tar.gz; @@ -58,6 +67,18 @@ rec { }; }; + w32apiBin = {stdenv, fetchurl} : + stdenv.mkDerivation { + name = "w32api-3.7"; + builder = ./bin-builder.sh; + src = + fetchurl { + url = http://surfnet.dl.sourceforge.net/sourceforge/mingw/w32api-3.7.tar.gz; + md5 = "0b3a6d08136581c93b3a3207588acea9"; + }; + }; + + /* pkgs.coreutils pkgs.findutils diff --git a/pkgs/stdenv/mingw/pkgs/mingw-runtime-builder.sh b/pkgs/stdenv/mingw/pkgs/mingw-runtime-builder.sh new file mode 100644 index 00000000000..225d3e4d608 --- /dev/null +++ b/pkgs/stdenv/mingw/pkgs/mingw-runtime-builder.sh @@ -0,0 +1,11 @@ +source $STDENV/setup + +tar zxvf $SRC +cd mingw-runtime-* +./configure --prefix=$OUT +make +make install + + + +