From 67a45c1d25a01c0972f0934bef2f84481e97777e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Mon, 30 Jan 2012 09:53:39 +0000 Subject: MinGW 3.20, and w32api 3.17-2. svn path=/nixpkgs/trunk/; revision=31926 --- pkgs/os-specific/windows/mingwrt/default.nix | 6 +++--- pkgs/os-specific/windows/w32api/default.nix | 13 ++++++++----- 2 files changed, 11 insertions(+), 8 deletions(-) (limited to 'pkgs/os-specific/windows') diff --git a/pkgs/os-specific/windows/mingwrt/default.nix b/pkgs/os-specific/windows/mingwrt/default.nix index aecf43c9123b..e5b42c29467a 100644 --- a/pkgs/os-specific/windows/mingwrt/default.nix +++ b/pkgs/os-specific/windows/mingwrt/default.nix @@ -1,14 +1,14 @@ {stdenv, fetchurl, binutilsCross ? null, gccCross ? null, onlyHeaders ? false}: let - name = "mingwrt-3.18"; + name = "mingwrt-3.20"; in stdenv.mkDerivation (rec { inherit name; src = fetchurl { - url = "mirror://sourceforge/mingw/${name}-mingw32-src.tar.gz"; - sha256 = "0hmxgkxnf6an70g07gmyik46sw1qm204izh6sp923szddvypjjfy"; + url = "mirror://sourceforge/mingw/MinGW/Base/mingw-rt/${name}-mingw32-src.tar.gz"; + sha256 = "02pydg1m8y35nxb4k34nlb5c341y2waq76z42mgdzlcf661r91pi"; }; } // diff --git a/pkgs/os-specific/windows/w32api/default.nix b/pkgs/os-specific/windows/w32api/default.nix index 570b83f671e5..09484911bc1a 100644 --- a/pkgs/os-specific/windows/w32api/default.nix +++ b/pkgs/os-specific/windows/w32api/default.nix @@ -1,16 +1,19 @@ -{stdenv, fetchurl, binutilsCross ? null, gccCross ? null, onlyHeaders ? false}: +{ stdenv, fetchurl, xz, binutilsCross ? null +, gccCross ? null, onlyHeaders ? false }: let - name = "w32api-3.14"; + name = "w32api-3.17-2"; in stdenv.mkDerivation ({ inherit name; - + src = fetchurl { - url = "mirror://sourceforge/mingw/${name}-mingw32-src.tar.gz"; - sha256 = "128ax8a4dlspxsi5fi7bi1aslppqx3kczr1ibzj1z1az48bvwp21"; + url = "mirror://sourceforge/mingw/MinGW/Base/w32api/w32api-3.17/${name}-mingw32-src.tar.lzma"; + sha256 = "09rhnl6zikmdyb960im55jck0rdy5z9nlg3akx68ixn7khf3j8wb"; }; + buildNativeInputs = [ xz ]; + } // (if onlyHeaders then { name = name + "-headers"; -- cgit v1.2.3 From 010edf825c32d90e3ee14eb15d35ef4e40e0184a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Mon, 30 Jan 2012 09:53:45 +0000 Subject: Add pthreads-w32. svn path=/nixpkgs/trunk/; revision=31927 --- pkgs/os-specific/windows/pthread-w32/default.nix | 53 ++++++++++++++++++++++++ 1 file changed, 53 insertions(+) create mode 100644 pkgs/os-specific/windows/pthread-w32/default.nix (limited to 'pkgs/os-specific/windows') diff --git a/pkgs/os-specific/windows/pthread-w32/default.nix b/pkgs/os-specific/windows/pthread-w32/default.nix new file mode 100644 index 000000000000..39afd119643b --- /dev/null +++ b/pkgs/os-specific/windows/pthread-w32/default.nix @@ -0,0 +1,53 @@ +{ fetchurl, stdenv, mingw_headers }: + +# This file is tweaked for cross-compilation only. +assert stdenv ? cross; + +stdenv.mkDerivation { + name = "pthread-w32-1.10.0"; + + src = fetchurl { + url = "ftp://sourceware.org/pub/pthreads-win32/pthreads-w32-1-10-0-release.tar.gz"; + sha256 = "1vllxxfa9a7mssb1x98a2r736vsv5ll3sjizbr7a8hw8j9p18j7n"; + }; + + configurePhase = + '' sed -i GNUmakefile \ + -e 's/CC=gcc/CC=i686-pc-mingw32-gcc/g ; + s/windres/i686-pc-mingw32-windres/g ; + s/dlltool/i686-pc-mingw32-dlltool/g' + ''; + + buildInputs = [ mingw_headers ]; + + buildPhase = "make GC"; # to build the GNU C dll with C cleanup code + + installPhase = + '' mkdir -p "$out" "$out/include" "$out/lib" + cp -v *pthread*{dll,a} "$out/lib" + cp -v pthread.h semaphore.h sched.h "$out/include" + ''; + + meta = { + description = "POSIX threads for Woe32"; + + longDescription = + '' The POSIX 1003.1-2001 standard defines an application programming + interface (API) for writing multithreaded applications. This + interface is known more commonly as pthreads. A good number of + modern operating systems include a threading library of some kind: + Solaris (UI) threads, Win32 threads, DCE threads, DECthreads, or any + of the draft revisions of the pthreads standard. The trend is that + most of these systems are slowly adopting the pthreads standard API, + with application developers following suit to reduce porting woes. + + Woe32 does not, and is unlikely to ever, support pthreads natively. + This project seeks to provide a freely available and high-quality + solution to this problem. + ''; + + homepage = http://sourceware.org/pthreads-win32/; + + license = "LGPLv2.1+"; + }; +} -- cgit v1.2.3