diff options
author | Matthew Bauer <matthew.bauer@obsidian.systems> | 2018-08-06 16:25:25 -0400 |
---|---|---|
committer | Matthew Bauer <matthew.bauer@obsidian.systems> | 2018-08-07 14:16:55 -0400 |
commit | 9cee386f38cff036b48cfd8af916411eb84c6b3b (patch) | |
tree | c37fcf6c98d1d0b081f1ab56f9a4ab77990f15e9 /pkgs/os-specific/windows | |
parent | 31e11bdd60fd164bc7f52c0a4f59024382a58851 (diff) |
windows: refactor
Diffstat (limited to 'pkgs/os-specific/windows')
-rw-r--r-- | pkgs/os-specific/windows/default.nix | 29 | ||||
-rw-r--r-- | pkgs/os-specific/windows/jom/default.nix | 2 | ||||
-rw-r--r-- | pkgs/os-specific/windows/mingw-w64/common.nix | 4 | ||||
-rw-r--r-- | pkgs/os-specific/windows/mingwrt/common.nix | 12 | ||||
-rw-r--r-- | pkgs/os-specific/windows/mingwrt/default.nix | 14 | ||||
-rw-r--r-- | pkgs/os-specific/windows/mingwrt/headers.nix | 17 | ||||
-rw-r--r-- | pkgs/os-specific/windows/pthread-w32/default.nix | 4 | ||||
-rw-r--r-- | pkgs/os-specific/windows/w32api/common.nix | 14 | ||||
-rw-r--r-- | pkgs/os-specific/windows/w32api/default.nix | 14 | ||||
-rw-r--r-- | pkgs/os-specific/windows/w32api/headers.nix | 17 |
10 files changed, 56 insertions, 71 deletions
diff --git a/pkgs/os-specific/windows/default.nix b/pkgs/os-specific/windows/default.nix new file mode 100644 index 000000000000..4621c2da10fb --- /dev/null +++ b/pkgs/os-specific/windows/default.nix @@ -0,0 +1,29 @@ +{ newScope, crossLibcStdenv }: let + + callPackage = newScope self; + + self = { + cygwinSetup = callPackage ./cygwin-setup { }; + + jom = callPackage ./jom { }; + + w32api = callPackage ./w32api { }; + + mingwrt = callPackage ./mingwrt { }; + mingw_runtime = self.mingwrt; + + mingw_w64 = callPackage ./mingw-w64 { + stdenv = crossLibcStdenv; + }; + + mingw_w64_headers = callPackage ./mingw-w64/headers.nix { }; + + mingw_w64_pthreads = callPackage ./mingw-w64/pthreads.nix { }; + + pthreads = callPackage ./pthread-w32 { }; + + wxMSW = callPackage ./wxMSW-2.8 { }; + + libgnurx = callPackage ./libgnurx { }; + }; +in self diff --git a/pkgs/os-specific/windows/jom/default.nix b/pkgs/os-specific/windows/jom/default.nix index 1b64ad745991..ee8f00790754 100644 --- a/pkgs/os-specific/windows/jom/default.nix +++ b/pkgs/os-specific/windows/jom/default.nix @@ -16,7 +16,7 @@ stdenv.mkDerivation { nativeBuildInputs = [ flex qmake4Hook ]; QTDIR = qt48; - + # cmakeFlags = "-DWIN32=1 -DCMAKE_SYSTEM_NAME=Windows -DCMAKE_RC_COMPILER=${stdenv.cc.targetPrefix}windres"; preBuild = stdenv.lib.optionalString (stdenv.hostPlatform != stdenv.buildPlatform) '' diff --git a/pkgs/os-specific/windows/mingw-w64/common.nix b/pkgs/os-specific/windows/mingw-w64/common.nix index 102d9489fe9f..3f75ef00afed 100644 --- a/pkgs/os-specific/windows/mingw-w64/common.nix +++ b/pkgs/os-specific/windows/mingw-w64/common.nix @@ -1,12 +1,12 @@ { fetchurl }: rec { - version = "5.0.3"; + version = "5.0.4"; name = "mingw-w64-${version}"; src = fetchurl { url = "mirror://sourceforge/mingw-w64/mingw-w64-v${version}.tar.bz2"; - sha256 = "1d4wrjfdlq5xqpv9zg6ssw4lm8jnv6522xf7d6zbjygmkswisq1a"; + sha256 = "00zq3z1hbzd5yzmskskjg79xrzwsqx7ihyprfaxy4hb897vf29sm"; }; configureFlags = [ diff --git a/pkgs/os-specific/windows/mingwrt/common.nix b/pkgs/os-specific/windows/mingwrt/common.nix deleted file mode 100644 index 7dc2ae56aa84..000000000000 --- a/pkgs/os-specific/windows/mingwrt/common.nix +++ /dev/null @@ -1,12 +0,0 @@ -{ lib, fetchurl }: - -rec { - name = "mingwrt-3.20"; - - src = fetchurl { - url = "mirror://sourceforge/mingw/MinGW/Base/mingw-rt/${name}-mingw32-src.tar.gz"; - sha256 = "02pydg1m8y35nxb4k34nlb5c341y2waq76z42mgdzlcf661r91pi"; - }; - - meta.platforms = [ lib.systems.inspect.isMinGW ]; -} diff --git a/pkgs/os-specific/windows/mingwrt/default.nix b/pkgs/os-specific/windows/mingwrt/default.nix index 3429f7564ade..b3c7ef310981 100644 --- a/pkgs/os-specific/windows/mingwrt/default.nix +++ b/pkgs/os-specific/windows/mingwrt/default.nix @@ -1,7 +1,15 @@ -{ stdenv, callPackage }: +{ stdenv, callPackage, lib, fetchurl }: + +stdenv.mkDerivation rec { + name = "mingwrt-5.0.2"; + + src = fetchurl { + url = "mirror://sourceforge/mingw/MinGW/Base/mingw-rt/${name}-mingw32-src.tar.gz"; + sha256 = "02pydg1m8y35nxb4k34nlb5c341y2waq76z42mgdzlcf661r91p0"; + }; + + meta.platforms = [ lib.systems.inspect.isMinGW ]; -stdenv.mkDerivation { - inherit (callPackage ./common.nix {}) name src meta; dontStrip = true; hardeningDisable = [ "stackprotector" "fortify" ]; } diff --git a/pkgs/os-specific/windows/mingwrt/headers.nix b/pkgs/os-specific/windows/mingwrt/headers.nix deleted file mode 100644 index 51180af0fc73..000000000000 --- a/pkgs/os-specific/windows/mingwrt/headers.nix +++ /dev/null @@ -1,17 +0,0 @@ -{ stdenvNoCC, callPackage }: - -let - inherit (callPackage ./common.nix {}) name src meta; - -in stdenvNoCC.mkDerivation { - name = name + "-headers"; - - inherit src meta; - - phases = [ "unpackPhase" "installPhase" ]; - - installPhase = '' - mkdir -p $out - cp -R include $out - ''; -} diff --git a/pkgs/os-specific/windows/pthread-w32/default.nix b/pkgs/os-specific/windows/pthread-w32/default.nix index 7cd414a97b08..e84270270f8a 100644 --- a/pkgs/os-specific/windows/pthread-w32/default.nix +++ b/pkgs/os-specific/windows/pthread-w32/default.nix @@ -1,4 +1,4 @@ -{ fetchurl, stdenv, hostPlatform, buildPlatform }: +{ fetchurl, stdenv, hostPlatform, buildPlatform, mingwrt }: # This file is tweaked for cross-compilation only. assert hostPlatform != buildPlatform; @@ -18,7 +18,7 @@ stdenv.mkDerivation { s/dlltool/i686-pc-mingw32-dlltool/g' ''; - buildInputs = [ mingw_headers ]; + buildInputs = [ mingwrt ]; buildPhase = "make GC"; # to build the GNU C dll with C cleanup code diff --git a/pkgs/os-specific/windows/w32api/common.nix b/pkgs/os-specific/windows/w32api/common.nix deleted file mode 100644 index 273ae2c8df4b..000000000000 --- a/pkgs/os-specific/windows/w32api/common.nix +++ /dev/null @@ -1,14 +0,0 @@ -{ fetchurl, xz }: - -rec { - name = "w32api-3.17-2"; - - src = fetchurl { - url = "mirror://sourceforge/mingw/MinGW/Base/w32api/w32api-3.17/${name}-mingw32-src.tar.lzma"; - sha256 = "09rhnl6zikmdyb960im55jck0rdy5z9nlg3akx68ixn7khf3j8wb"; - }; - - nativeBuildInputs = [ xz ]; - - meta.platforms = [ lib.systems.inspect.isMinGW ]; -} diff --git a/pkgs/os-specific/windows/w32api/default.nix b/pkgs/os-specific/windows/w32api/default.nix index 51b88201998c..51d8dafd9c88 100644 --- a/pkgs/os-specific/windows/w32api/default.nix +++ b/pkgs/os-specific/windows/w32api/default.nix @@ -1,6 +1,14 @@ -{ stdenv, callPackage }: +{ stdenv, fetchurl, xz, lib }: + +stdenv.mkDerivation rec { + name = "w32api-3.17-2"; + + src = fetchurl { + url = "mirror://sourceforge/mingw/MinGW/Base/w32api/w32api-3.17/${name}-mingw32-src.tar.lzma"; + sha256 = "09rhnl6zikmdyb960im55jck0rdy5z9nlg3akx68ixn7khf3j8wb"; + }; + + meta.platforms = [ lib.systems.inspect.isMinGW ]; -stdenv.mkDerivation { - inherit (callPackage ./common.nix {}) name src nativeBuildInputs meta; dontStrip = true; } diff --git a/pkgs/os-specific/windows/w32api/headers.nix b/pkgs/os-specific/windows/w32api/headers.nix deleted file mode 100644 index 3083118bb366..000000000000 --- a/pkgs/os-specific/windows/w32api/headers.nix +++ /dev/null @@ -1,17 +0,0 @@ -{ stdenvNoCC, callPackage }: - -let - inherit (callPackage ./common.nix {}) name src meta; - -in stdenvNoCC.mkDerivation { - name = name + "-headers"; - - inherit src nativeBuildInputs meta; - - phases = [ "unpackPhase" "installPhase" ]; - - installPhase = '' - mkdir -p $out - cp -R include $out - ''; -} |