summary refs log tree commit diff
path: root/pkgs/os-specific
diff options
context:
space:
mode:
authorYury G. Kudryashov <urkud.urkud@gmail.com>2012-02-06 23:03:12 +0000
committerYury G. Kudryashov <urkud.urkud@gmail.com>2012-02-06 23:03:12 +0000
commit215a07c1a9d6d208c1ba0037eccaaba7de9d6b68 (patch)
treef31e835b16c30957eb4ae3710cbfa922e8a64fbd /pkgs/os-specific
parentb31c67e24d56c90a6732d3a310ff13684b73e200 (diff)
parent4e3dcd925499547314567107366cae26a99c4ef7 (diff)
downloadnixpkgs-215a07c1a9d6d208c1ba0037eccaaba7de9d6b68.tar
nixpkgs-215a07c1a9d6d208c1ba0037eccaaba7de9d6b68.tar.gz
nixpkgs-215a07c1a9d6d208c1ba0037eccaaba7de9d6b68.tar.bz2
nixpkgs-215a07c1a9d6d208c1ba0037eccaaba7de9d6b68.tar.lz
nixpkgs-215a07c1a9d6d208c1ba0037eccaaba7de9d6b68.tar.xz
nixpkgs-215a07c1a9d6d208c1ba0037eccaaba7de9d6b68.tar.zst
nixpkgs-215a07c1a9d6d208c1ba0037eccaaba7de9d6b68.zip
svn merge ^/nixpkgs/trunk
Merge conflicts:
* unzip (almost trivial)
* dvswitch (trivial)
* gmp (copied result of `git merge`)

The last item introduced gmp-5.0.3, thus full rebuild.
+ensureDir->mkdir -p in TeX packages was catched by git but not svn.

svn path=/nixpkgs/branches/stdenv-updates/; revision=32091
Diffstat (limited to 'pkgs/os-specific')
-rw-r--r--pkgs/os-specific/linux/broadcom-sta/default.nix14
-rw-r--r--pkgs/os-specific/linux/broadcom-sta/linux-2.6.39.patch11
-rw-r--r--pkgs/os-specific/linux/broadcom-sta/linux-3.2.patch13
-rw-r--r--pkgs/os-specific/linux/frandom/default.nix44
-rw-r--r--pkgs/os-specific/linux/i7z/default.nix40
-rw-r--r--pkgs/os-specific/linux/microcode/converter.nix29
-rw-r--r--pkgs/os-specific/linux/microcode/intel.nix28
-rw-r--r--pkgs/os-specific/linux/wpa_supplicant/default.nix5
-rw-r--r--pkgs/os-specific/windows/mingwrt/default.nix6
-rw-r--r--pkgs/os-specific/windows/pthread-w32/default.nix53
-rw-r--r--pkgs/os-specific/windows/w32api/default.nix13
11 files changed, 241 insertions, 15 deletions
diff --git a/pkgs/os-specific/linux/broadcom-sta/default.nix b/pkgs/os-specific/linux/broadcom-sta/default.nix
index 39cc2dd4080..96749dca2b7 100644
--- a/pkgs/os-specific/linux/broadcom-sta/default.nix
+++ b/pkgs/os-specific/linux/broadcom-sta/default.nix
@@ -1,6 +1,6 @@
 { stdenv, fetchurl, kernel }:
 
-let version = "5_100_82_38";
+let version = "5_100_82_112";
     bits = if stdenv.system == "i686-linux" then "32" else
       assert stdenv.system == "x86_64-linux"; "64";
 in
@@ -10,15 +10,15 @@ stdenv.mkDerivation {
   src = fetchurl {
     url = "http://www.broadcom.com/docs/linux_sta/hybrid-portsrc_x86_${bits}-v${version}.tar.gz";
     sha256 = if bits == "32"
-      then "0dzvnk0vmi5dlbsi9k2agvs5xsqn07mv66g9v1jzn1gsl8fsydpp"
-      else "19rm9m949yqahgii7wr14lj451sd84s72mqj15yd0dnpm4k5n5hw";
+      then "1rvhw9ngw0djxyyjx5m01c0js89zs3xiwmra03al6f9q7cbf7d45"
+      else "1qsarnry10f5m8a73wbr9cg2ifs00sqg6x0ay59l72vl9hb2zlww";
   };
 
   buildInputs = [ kernel ];
-  patches = [ ./makefile.patch ]
-    ++ stdenv.lib.optional
-    (! builtins.lessThan (builtins.compareVersions kernel.version "2.6.37") 0)
-      [ ./mutex-sema.patch ];
+  patches = [ ./makefile.patch ./linux-2.6.39.patch ./linux-3.2.patch ];
+    #++ stdenv.lib.optional
+    #(! builtins.lessThan (builtins.compareVersions kernel.version "2.6.37") 0)
+      #[ ./mutex-sema.patch ];
 
   makeFlags = "KDIR=${kernel}/lib/modules/${kernel.modDirVersion}/build";
 
diff --git a/pkgs/os-specific/linux/broadcom-sta/linux-2.6.39.patch b/pkgs/os-specific/linux/broadcom-sta/linux-2.6.39.patch
new file mode 100644
index 00000000000..ca07c918c36
--- /dev/null
+++ b/pkgs/os-specific/linux/broadcom-sta/linux-2.6.39.patch
@@ -0,0 +1,11 @@
+--- old/src/wl/sys/wl_cfg80211.c
++++ new/src/wl/sys/wl_cfg80211.c
+@@ -1811,7 +1811,7 @@
+ 	notif_bss_info->frame_len = offsetof(struct ieee80211_mgmt, u.beacon.variable) +
+ 	                            wl_get_ielen(wl);
+ 	freq = ieee80211_channel_to_frequency(notif_bss_info->channel 
+-#if LINUX_VERSION_CODE > KERNEL_VERSION(2, 6, 39)
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 39)
+ 		,(notif_bss_info->channel <= CH_MAX_2G_CHANNEL) ? IEEE80211_BAND_2GHZ : IEEE80211_BAND_5GHZ
+ #endif
+ 	);
diff --git a/pkgs/os-specific/linux/broadcom-sta/linux-3.2.patch b/pkgs/os-specific/linux/broadcom-sta/linux-3.2.patch
new file mode 100644
index 00000000000..b491537cb86
--- /dev/null
+++ b/pkgs/os-specific/linux/broadcom-sta/linux-3.2.patch
@@ -0,0 +1,13 @@
+diff -Naur broadcom-sta-5.100.82.112.orig/src/wl/sys/wl_linux.c broadcom-sta-5.100.82.112/src/wl/sys/wl_linux.c
+--- broadcom-sta-5.100.82.112.orig/src/wl/sys/wl_linux.c	2011-10-23 01:56:55.000000000 +0900
++++ broadcom-sta-5.100.82.112/src/wl/sys/wl_linux.c	2011-11-22 00:56:07.021520421 +0900
+@@ -385,7 +385,9 @@
+ #endif
+ 	.ndo_get_stats = wl_get_stats,
+ 	.ndo_set_mac_address = wl_set_mac_address,
++#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 2, 0)
+ 	.ndo_set_multicast_list = wl_set_multicast_list,
++#endif
+ 	.ndo_do_ioctl = wl_ioctl
+ };
+ 
diff --git a/pkgs/os-specific/linux/frandom/default.nix b/pkgs/os-specific/linux/frandom/default.nix
new file mode 100644
index 00000000000..9f07e7c8eb0
--- /dev/null
+++ b/pkgs/os-specific/linux/frandom/default.nix
@@ -0,0 +1,44 @@
+{ stdenv, fetchurl, kernel }:
+
+stdenv.mkDerivation rec {
+  name = "frandom-1.1";
+
+  src = fetchurl {
+    url = "http://sourceforge.net/projects/frandom/files/${name}.tar.gz";
+    sha256 = "15rgyk4hfawqg7z1spk2xlk1nn6rcdls8gdhc70f91shrc9pvlls";
+  };
+
+  preBuild = ''
+    kernelVersion=$(cd ${kernel}/lib/modules && ls)
+    substituteInPlace Makefile \
+      --replace "\$(shell uname -r)" "$kernelVersion" \
+      --replace "/lib/modules" "${kernel}/lib/modules"
+  '';
+ 
+  installPhase = ''
+    kernelVersion=$(cd ${kernel}/lib/modules && ls)
+    ensureDir $out/lib/modules/$kernelVersion/misc
+    cp frandom.ko $out/lib/modules/$kernelVersion/misc
+
+    ensureDir $out/lib/udev/rules.d
+    tee $out/lib/udev/rules.d/10-frandom.rules <<-EOF
+    #
+    # These are the rules for the frandom devices. In theory, we could let
+    # udev's catch-all rule create the /dev node based upon the kernel name,
+    # which gives correct result, except that the default MODE set in
+    # 50-udev.rules (0600) is too restrictive.
+    #
+    KERNEL=="[ef]random", MODE="444", OPTIONS="last_rule"
+    EOF
+  '';
+
+  buildInputs = [];
+
+  meta = {
+    description = "A very fast random number generator kernel module.";
+    homepage = http://frandom.sourceforge.net/;
+    license = "GPLv2";
+    maintainers = [ stdenv.lib.maintainers.bluescreen303 ];
+  };
+}
+
diff --git a/pkgs/os-specific/linux/i7z/default.nix b/pkgs/os-specific/linux/i7z/default.nix
new file mode 100644
index 00000000000..2d0fde3c783
--- /dev/null
+++ b/pkgs/os-specific/linux/i7z/default.nix
@@ -0,0 +1,40 @@
+{ stdenv, fetchurl, qt4, ncurses}:
+
+stdenv.mkDerivation rec {
+  name = "i7z-0.27.1";
+
+  src = fetchurl {
+    url = "http://i7z.googlecode.com/files/${name}.tar.gz";
+    sha256 = "0n3pry1qmpq4basnny3gddls2zlwz0813ixnas87092rvlgjhbc6";
+  };
+
+  buildInputs = [qt4 ncurses];
+
+  patchPhase = ''
+    substituteInPlace Makefile --replace "/usr/sbin" "$out/sbin"
+  '';
+
+  buildPhase = ''
+    make
+    cd GUI
+    qmake
+    make clean
+    make
+    cd ..
+  '';
+
+  installPhase = ''
+    pwd
+    ensureDir $out/sbin
+    make install
+    install -Dm755 GUI/i7z_GUI $out/sbin/i7z-gui
+  '';
+
+  meta = {
+    description = "A better i7 (and now i3, i5) reporting tool for Linux";
+    homepage = http://code.google.com/p/i7z;
+    license = "GPLv2";
+    maintainers = [ stdenv.lib.maintainers.bluescreen303 ];
+  };
+}
+
diff --git a/pkgs/os-specific/linux/microcode/converter.nix b/pkgs/os-specific/linux/microcode/converter.nix
new file mode 100644
index 00000000000..ea00c7a6ae4
--- /dev/null
+++ b/pkgs/os-specific/linux/microcode/converter.nix
@@ -0,0 +1,29 @@
+{ stdenv, fetchurl }:
+
+stdenv.mkDerivation {
+  name = "microcode2ucode-20120205";
+  src = fetchurl {
+    url = "http://gentoo-overlays.zugaina.org/gentoo/portage/sys-apps/microcode-data/files/intel-microcode2ucode.c";
+    sha256 = "c51b1b1d8b4b28e7d5d007917c1e444af1a2ff04a9408aa9067c0e57d70164de";
+  };
+
+  sourceRoot = ".";
+
+  unpackPhase = ''
+    # nothing to unpack
+  '';
+
+  buildPhase = ''
+    gcc -Wall -O2 $src -o intel-microcode2ucode
+  '';
+  
+  installPhase = ''
+    ensureDir "$out/bin"
+    cp intel-microcode2ucode "$out/bin/"
+  '';
+
+  meta = {
+    homepage = http://www.intel.com;
+    description = "Microcode converter for Intel .dat files";
+  };
+}
\ No newline at end of file
diff --git a/pkgs/os-specific/linux/microcode/intel.nix b/pkgs/os-specific/linux/microcode/intel.nix
new file mode 100644
index 00000000000..9a57fef67a1
--- /dev/null
+++ b/pkgs/os-specific/linux/microcode/intel.nix
@@ -0,0 +1,28 @@
+{ stdenv, fetchurl, microcode2ucode }:
+
+let version = "20111110";
+    num = "20728";
+in stdenv.mkDerivation {
+  name = "microcode-intel-${version}";
+  src = fetchurl {
+    url = "http://downloadmirror.intel.com/${num}/eng/microcode-${version}.tgz";
+    sha256 = "16f532cdf9cce03e01e714619ad9406a465aa965bbd1288035398db79921cbc1";
+  };
+
+  buildInputs = [ microcode2ucode ];
+  sourceRoot = ".";
+
+  buildPhase = ''
+    intel-microcode2ucode microcode.dat
+  '';
+
+  installPhase = ''
+    ensureDir $out
+    cp -r intel-ucode "$out/"
+  '';
+
+  meta = {
+    homepage = http://www.intel.com;
+    description = "Microcode for Intel processors";
+  };
+}
\ No newline at end of file
diff --git a/pkgs/os-specific/linux/wpa_supplicant/default.nix b/pkgs/os-specific/linux/wpa_supplicant/default.nix
index d37f53ae5f5..eb5a51ae6ea 100644
--- a/pkgs/os-specific/linux/wpa_supplicant/default.nix
+++ b/pkgs/os-specific/linux/wpa_supplicant/default.nix
@@ -89,5 +89,10 @@ gui = stdenv.mkDerivation {
     mkdir -pv $out/share/icons
     cp -av icons/hicolor $out/share/icons
   '';
+
+  meta = {
+    description = "Qt4 wpa_supplicant client";
+    inherit (qt4.meta) platforms;
+  };
 };
 }
diff --git a/pkgs/os-specific/windows/mingwrt/default.nix b/pkgs/os-specific/windows/mingwrt/default.nix
index 434c439cd78..286c63d0163 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/pthread-w32/default.nix b/pkgs/os-specific/windows/pthread-w32/default.nix
new file mode 100644
index 00000000000..39afd119643
--- /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+";
+  };
+}
diff --git a/pkgs/os-specific/windows/w32api/default.nix b/pkgs/os-specific/windows/w32api/default.nix
index 56ab80c7235..a4f4245125d 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";