about summary refs log tree commit diff
diff options
context:
space:
mode:
authorEelco Dolstra <eelco.dolstra@logicblox.com>2010-12-23 11:40:11 +0000
committerEelco Dolstra <eelco.dolstra@logicblox.com>2010-12-23 11:40:11 +0000
commit597ee95f996171141840179e432e8e2984eb0c9d (patch)
tree3886f9642a22a649bbe660822a3e0f6364bceea3
parent770ca317ba85b81f5d854bcf72f0fea515ccc99d (diff)
downloadnixlib-597ee95f996171141840179e432e8e2984eb0c9d.tar
nixlib-597ee95f996171141840179e432e8e2984eb0c9d.tar.gz
nixlib-597ee95f996171141840179e432e8e2984eb0c9d.tar.bz2
nixlib-597ee95f996171141840179e432e8e2984eb0c9d.tar.lz
nixlib-597ee95f996171141840179e432e8e2984eb0c9d.tar.xz
nixlib-597ee95f996171141840179e432e8e2984eb0c9d.tar.zst
nixlib-597ee95f996171141840179e432e8e2984eb0c9d.zip
* Fix "Unknown HZ value" warnings.
svn path=/nixpkgs/branches/stdenv-updates/; revision=25250
-rw-r--r--pkgs/os-specific/linux/procps/builder.sh6
-rw-r--r--pkgs/os-specific/linux/procps/default.nix22
-rw-r--r--pkgs/os-specific/linux/procps/linux-ver-init.patch23
3 files changed, 41 insertions, 10 deletions
diff --git a/pkgs/os-specific/linux/procps/builder.sh b/pkgs/os-specific/linux/procps/builder.sh
deleted file mode 100644
index 436df18fef52..000000000000
--- a/pkgs/os-specific/linux/procps/builder.sh
+++ /dev/null
@@ -1,6 +0,0 @@
-source $stdenv/setup
-
-export DESTDIR=$out
-
-genericBuild
-
diff --git a/pkgs/os-specific/linux/procps/default.nix b/pkgs/os-specific/linux/procps/default.nix
index 9270e4c6c0e1..dce0e36edb45 100644
--- a/pkgs/os-specific/linux/procps/default.nix
+++ b/pkgs/os-specific/linux/procps/default.nix
@@ -1,12 +1,26 @@
-{stdenv, fetchurl, ncurses}:
+{ stdenv, fetchurl, ncurses }:
 
 stdenv.mkDerivation {
   name = "procps-3.2.8";
-  builder = ./builder.sh;
+  
   src = fetchurl {
     url = http://procps.sourceforge.net/procps-3.2.8.tar.gz;
     sha256 = "0d8mki0q4yamnkk4533kx8mc0jd879573srxhg6r2fs3lkc6iv8i";
   };
-  patches = [./makefile.patch ./procps-build.patch ./gnumake3.82.patch];
-  buildInputs = [ncurses];
+  
+  patches =
+    [ ./makefile.patch
+      ./procps-build.patch
+      ./gnumake3.82.patch
+      ./linux-ver-init.patch
+    ];
+    
+  buildInputs = [ ncurses ];
+  
+  makeFlags = "DESTDIR=$(out)";
+
+  meta = {
+    homepage = http://procps.sourceforge.net/;
+    description = "Utilities that give information about processes using the /proc filesystem";
+  };
 }
diff --git a/pkgs/os-specific/linux/procps/linux-ver-init.patch b/pkgs/os-specific/linux/procps/linux-ver-init.patch
new file mode 100644
index 000000000000..9f93784a1fd9
--- /dev/null
+++ b/pkgs/os-specific/linux/procps/linux-ver-init.patch
@@ -0,0 +1,23 @@
+https://bugs.gentoo.org/303120
+
+make sure the linux version constructor runs before the libproc constructor
+since the latter uses variables setup by the former
+
+fix by Chris Coleman
+
+Index: proc/version.c
+===================================================================
+RCS file: /cvsroot/procps/procps/proc/version.c,v
+retrieving revision 1.7
+diff -u -p -r1.7 version.c
+--- a/proc/version.c	9 Feb 2003 07:27:16 -0000	1.7
++++ b/proc/version.c	14 Nov 2010 00:22:44 -0000
+@@ -33,7 +33,7 @@ void display_version(void) {
+ 
+ int linux_version_code;
+ 
+-static void init_Linux_version(void) __attribute__((constructor));
++static void init_Linux_version(void) __attribute__((constructor(100)));
+ static void init_Linux_version(void) {
+     static struct utsname uts;
+     int x = 0, y = 0, z = 0;	/* cleared in case sscanf() < 3 */