Merge branch 'staging', discussion #8844

This commit is contained in:
Vladimír Čunát
2015-07-19 08:06:14 +02:00
272 changed files with 4785 additions and 1517 deletions

View File

@@ -1,5 +1,5 @@
{ stdenv, fetchurl
, bzip2, curl, expat, jsoncpp, libarchive, xz, zlib
, bzip2, curl, expat, libarchive, xz, zlib
, useNcurses ? false, ncurses, useQt4 ? false, qt4
, wantPS ? false, ps ? null
}:
@@ -40,7 +40,6 @@ stdenv.mkDerivation rec {
buildInputs =
[ bzip2 curl expat libarchive xz zlib ]
++ optional (jsoncpp != null && !stdenv.isCygwin) jsoncpp
++ optional useNcurses ncurses
++ optional useQt4 qt4;
@@ -49,12 +48,11 @@ stdenv.mkDerivation rec {
CMAKE_PREFIX_PATH = stdenv.lib.concatStringsSep ":" buildInputs;
configureFlags =
[
"--docdir=/share/doc/${name}"
[ "--docdir=/share/doc/${name}"
"--mandir=/share/man"
"--no-system-jsoncpp"
]
++ optional (!stdenv.isCygwin) "--system-libs"
++ optional (jsoncpp == null || stdenv.isCygwin) "--no-system-jsoncpp"
++ optional useQt4 "--qt-gui"
++ ["--"]
++ optional (!useNcurses) "-DBUILD_CursesDialog=OFF";

View File

@@ -17,6 +17,9 @@ stdenv.mkDerivation {
# and /usr/lib. It's a stupid feature anyway. Likewise, when searching for
# included Makefiles, don't look in /usr/include and friends.
./impure-dirs.patch
# Don't segfault if we can't get a tty name.
./no-tty-name.patch
];
meta = {

View File

@@ -0,0 +1,53 @@
From 292da6f6867b75a5af7ddbb639a1feae022f438f Mon Sep 17 00:00:00 2001
From: Paul Smith <psmith@gnu.org>
Date: Mon, 20 Oct 2014 05:54:56 +0000
Subject: * main.c (main): [SV 43434] Handle NULL returns from ttyname().
---
diff --git main.c main.c
index b2d169c..0cdb8a8 100644
--- main.c
+++ main.c
@@ -1429,13 +1429,18 @@ main (int argc, char **argv, char **envp)
#ifdef HAVE_ISATTY
if (isatty (fileno (stdout)))
if (! lookup_variable (STRING_SIZE_TUPLE ("MAKE_TERMOUT")))
- define_variable_cname ("MAKE_TERMOUT", TTYNAME (fileno (stdout)),
- o_default, 0)->export = v_export;
-
+ {
+ const char *tty = TTYNAME (fileno (stdout));
+ define_variable_cname ("MAKE_TERMOUT", tty ? tty : DEFAULT_TTYNAME,
+ o_default, 0)->export = v_export;
+ }
if (isatty (fileno (stderr)))
if (! lookup_variable (STRING_SIZE_TUPLE ("MAKE_TERMERR")))
- define_variable_cname ("MAKE_TERMERR", TTYNAME (fileno (stderr)),
- o_default, 0)->export = v_export;
+ {
+ const char *tty = TTYNAME (fileno (stderr));
+ define_variable_cname ("MAKE_TERMERR", tty ? tty : DEFAULT_TTYNAME,
+ o_default, 0)->export = v_export;
+ }
#endif
/* Reset in case the switches changed our minds. */
diff --git makeint.h makeint.h
index 6223936..2009f41 100644
--- makeint.h
+++ makeint.h
@@ -436,10 +436,11 @@ extern struct rlimit stack_limit;
/* The number of bytes needed to represent the largest integer as a string. */
#define INTSTR_LENGTH CSTRLEN ("18446744073709551616")
+#define DEFAULT_TTYNAME "true"
#ifdef HAVE_TTYNAME
# define TTYNAME(_f) ttyname (_f)
#else
-# define TTYNAME(_f) "true"
+# define TTYNAME(_f) DEFAULT_TTYNAME
#endif
--
cgit v0.9.0.2

View File

@@ -0,0 +1,31 @@
{ stdenv, fetchurl }:
stdenv.mkDerivation rec {
name = "make-${version}";
version = "1.0";
src = fetchurl {
url = "http://ftpmain.gnustep.org/pub/gnustep/core/gnustep-make-2.6.6.tar.gz";
sha256 = "07cqr8x17bia9w6clbmiv7ay6r9nplrjz2cyzinv4w7zfpc19vxw";
};
patchPhase = ''
substituteInPlace GNUmakefile.in \
--replace which type \
--replace 'tooldir = $(DESTDIR)' 'tooldir = ' \
--replace 'makedir = $(DESTDIR)' 'makedir = ' \
--replace 'mandir = $(DESTDIR)' 'mandir = '
substituteInPlace FilesystemLayouts/apple \
--replace /usr/local ""
'';
installFlags = "DESTDIR=$(out)";
postInstall = ''
mkdir -p $out/nix-support
cat >$out/nix-support/setup-hook <<EOF
. $out/Library/GNUstep/Makefiles/GNUstep.sh
EOF
'';
}

View File

@@ -0,0 +1,23 @@
{ stdenv, fetchgit, gnustep-make, Foundation, libobjc }:
stdenv.mkDerivation rec {
name = "xcode-${version}";
version = "1.0";
makeFlags = "messages=yes";
installFlags = "DESTDIR=$(out)";
__impureHostDeps = [
"/System/Library/PrivateFrameworks/UIFoundation.framework/Versions/A/UIFoundation"
"/usr/lib/libextension.dylib"
];
buildInputs = [ gnustep-make Foundation libobjc ];
src = fetchgit {
url = "https://github.com/gnustep/xcode";
rev = "cc5016794e44f9998674120a5e4625aa09ca455a";
sha256 = "85420f3f61091b2e4548cf5e99d886cb9c72cf07b8b9fae3eebc87e7b6b7e54a";
};
}

View File

@@ -1,4 +1,4 @@
{ stdenv, lib, bundlerEnv, ruby, perl }:
{ stdenv, lib, bundlerEnv, ruby, perl, autoconf }:
bundlerEnv {
name = "chefdk-0.4.0";
@@ -8,7 +8,7 @@ bundlerEnv {
lockfile = ./Gemfile.lock;
gemset = ./gemset.nix;
buildInputs = [ perl ];
buildInputs = [ perl autoconf ];
meta = with lib; {
description = "A streamlined development and deployment workflow for Chef platform";

View File

@@ -2,8 +2,6 @@
, cross ? null, gold ? true, bison ? null
}:
assert !stdenv.isDarwin;
let basename = "binutils-2.23.1"; in
with { inherit (stdenv.lib) optional optionals optionalString; };
@@ -56,10 +54,12 @@ stdenv.mkDerivation rec {
# As binutils takes part in the stdenv building, we don't want references
# to the bootstrap-tools libgcc (as uses to happen on arm/mips)
NIX_CFLAGS_COMPILE = "-static-libgcc";
NIX_CFLAGS_COMPILE = if stdenv.isDarwin
then "-Wno-string-plus-int -Wno-deprecated-declarations"
else "-static-libgcc";
configureFlags =
[ "--enable-shared" "--enable-deterministic-archives" ]
[ "--enable-shared" "--enable-deterministic-archives" "--disable-werror" ]
++ optional (stdenv.system == "mips64el-linux") "--enable-fix-loongson2f-nop"
++ optional (cross != null) "--target=${cross.config}"
++ optionals gold [ "--enable-gold" "--enable-plugins" ]

View File

@@ -1,11 +1,11 @@
{ stdenv, fetchurl, perl, gettext, LocaleGettext, makeWrapper }:
stdenv.mkDerivation rec {
name = "help2man-1.46.6";
name = "help2man-1.47.1";
src = fetchurl {
url = "mirror://gnu/help2man/${name}.tar.xz";
sha256 = "1brccgnjf09f2zg70s6gv6gn68mi59kp3zf50wvxp79n72ngapv1";
sha256 = "01ib718afwc28bmh1n0p5h7245vs3rrfm7bj1sq4avmh1kv2d6y5";
};
buildInputs = [ makeWrapper perl gettext LocaleGettext ];

View File

@@ -10,7 +10,7 @@ stdenv.mkDerivation (rec {
sha256 = "0igqq5m204w71m11y0nipbdf5apx87hwfll6axs12hn4dqfb6vkb";
};
buildInputs = stdenv.lib.optional stdenv.isCygwin libiconv;
buildInputs = stdenv.lib.optional (stdenv.isCygwin || stdenv.isDarwin) libiconv;
configureFlags = [ "--with-internal-glib" ];

View File

@@ -1,26 +1,18 @@
{ stdenv, fetchurl, binutils, popt, makeWrapper, gawk, which, gnugrep, zlib
, pkgconfig
{ stdenv, fetchurl, binutils, popt, zlib, pkgconfig
, withGUI ? false , qt4 ? null}:
# libX11 is needed because the Qt build stuff automatically adds `-lX11'.
assert withGUI -> qt4 != null;
stdenv.mkDerivation rec {
name = "oprofile-0.9.9";
name = "oprofile-1.0.0";
src = fetchurl {
url = "mirror://sourceforge/oprofile/${name}.tar.gz";
sha256 = "15vm24jhw4xfd55pfw1rlpzfsh4bl1vyjsajs78bi9xbv8038lhy";
sha256 = "0nn4wfvwy4nii25y6lwlrnzx9ah4nz0r93yk7hswiy6wxjs10wc4";
};
patchPhase = ''
sed -i "utils/opcontrol" \
-e "s|OPCONTROL=.*$|OPCONTROL=\"$out/bin/opcontrol\"|g ;
s|OPDIR=.*$|OPDIR=\"$out/bin\"|g ;
s|^PATH=.*$||g"
'';
buildInputs = [ binutils zlib popt makeWrapper gawk which gnugrep pkgconfig ]
buildInputs = [ binutils zlib popt pkgconfig ]
++ stdenv.lib.optionals withGUI [ qt4 ];
configureFlags = [
@@ -28,11 +20,6 @@ stdenv.mkDerivation rec {
]
++ stdenv.lib.optional withGUI "--with-qt-dir=${qt4} --enable-gui=qt4";
postInstall = ''
wrapProgram "$out/bin/opcontrol" \
--prefix PATH : "$out/bin:${gawk}/bin:${which}/bin:${gnugrep}/bin"
'';
meta = {
description = "System-wide profiler for Linux";
longDescription = ''