Merge stdenv-updates into master

This is a re-merge, in fact. Now the first parent is master
as of right before the "first merge" (ac6761c9).
A few commits pushed in-between into master now look like coming
from stdenv-updates, but otherwise this seems to fix the situation.

Cf. 320209a618 (commitcomment-5125991)
This commit is contained in:
Vladimír Čunát 2014-01-21 12:54:58 +01:00
commit 668310a2b5
200 changed files with 2782 additions and 2706 deletions

View File

@ -14,6 +14,11 @@ stdenv.mkDerivation rec {
url = "http://code.soundsoftware.ac.uk/attachments/download/194/${name}.tar.gz"; url = "http://code.soundsoftware.ac.uk/attachments/download/194/${name}.tar.gz";
sha256 = "00igf7j6s8xfyxnlkbqma0yby9pknxqzy8cmh0aw95ix80cw56fq"; sha256 = "00igf7j6s8xfyxnlkbqma0yby9pknxqzy8cmh0aw95ix80cw56fq";
}; };
patches = [(fetchurl {
url = http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/media-sound/sonic-visualiser/files/sonic-visualiser-1.9-gcc47.patch;
sha256 = "0dhh111crvjvhcjqp7j9jqnvs8zmd6xrcirmzqrrnca1h0vbpkay";
name = "gcc47.patch";
})];
buildInputs = buildInputs =
[ libsndfile qt4 fftw /* should be fftw3f ??*/ bzip2 librdf rubberband [ libsndfile qt4 fftw /* should be fftw3f ??*/ bzip2 librdf rubberband

View File

@ -1,11 +1,11 @@
{ fetchurl, stdenv }: { fetchurl, stdenv }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "ed-1.7"; name = "ed-1.9";
src = fetchurl { src = fetchurl {
url = "mirror://gnu/ed/${name}.tar.gz"; url = "mirror://gnu/ed/${name}.tar.gz";
sha256 = "0c908wb5pm48rjrrfbm5dhrqzys8f1dbvi90dn0vgwjzk80l2hl9"; sha256 = "122syihsx2hwzj75mkf5a9ssiky2xby748kp4cc00wzhmp7p5cym";
}; };
/* FIXME: Tests currently fail on Darwin: /* FIXME: Tests currently fail on Darwin:

View File

@ -1,4 +1,4 @@
{ clangStdenv, fetchgit, llvmFull }: { clangStdenv, fetchgit, llvm, clang }:
clangStdenv.mkDerivation { clangStdenv.mkDerivation {
name = "emacs-clang-complete-async-20130218"; name = "emacs-clang-complete-async-20130218";
@ -8,7 +8,7 @@ clangStdenv.mkDerivation {
sha256 = "1c8zqi6axbsb951azz9iqx3j52j30nd9ypv396hvids3g02cirrf"; sha256 = "1c8zqi6axbsb951azz9iqx3j52j30nd9ypv396hvids3g02cirrf";
}; };
buildInputs = [ llvmFull ]; buildInputs = [ llvm clang.clang ];
installPhase = '' installPhase = ''
mkdir -p $out/bin mkdir -p $out/bin

View File

@ -13,6 +13,10 @@ stdenv.mkDerivation rec {
patches = [ ./configure-python-libs.patch ]; patches = [ ./configure-python-libs.patch ];
postPatch = ''
patch -p0 < ${./spuriouscomma.patch}
'';
propagatedBuildInputs = [ propagatedBuildInputs = [
# Python is used at run-time to execute scripts, e.g., those from # Python is used at run-time to execute scripts, e.g., those from
# the "Effects" menu. # the "Effects" menu.

View File

@ -1,47 +0,0 @@
Source: upstream revisions 10061 and 10707
--- a/src/sp-image.cpp 2011-02-21 07:59:34 +0000
+++ b/src/sp-image.cpp 2011-02-21 08:57:28 +0000
@@ -387,9 +387,13 @@
#if defined(PNG_iCCP_SUPPORTED)
{
- char* name = 0;
+ png_charp name = 0;
int compression_type = 0;
- char* profile = 0;
+#if (PNG_LIBPNG_VER < 10500)
+ png_charp profile = 0;
+#else
+ png_bytep profile = 0;
+#endif
png_uint_32 proflen = 0;
if ( png_get_iCCP(pngPtr, infoPtr, &name, &compression_type, &profile, &proflen) ) {
// g_message("Found an iCCP chunk named [%s] with %d bytes and comp %d", name, proflen, compression_type);
--- a/src/extension/internal/pdfinput/svg-builder.cpp 2011-10-27 04:55:51 +0000
+++ b/src/extension/internal/pdfinput/svg-builder.cpp 2011-10-29 20:34:00 +0000
@@ -1481,7 +1481,7 @@
return NULL;
}
// Set error handler
- if (setjmp(png_ptr->jmpbuf)) {
+ if (setjmp(png_jmpbuf(png_ptr))) {
png_destroy_write_struct(&png_ptr, &info_ptr);
return NULL;
}
--- a/src/helper/png-write.cpp 2011-08-07 10:53:12 +0000
+++ b/src/helper/png-write.cpp 2011-10-29 20:34:00 +0000
@@ -166,8 +166,8 @@
/* Set error handling. REQUIRED if you aren't supplying your own
* error hadnling functions in the png_create_write_struct() call.
*/
- if (setjmp(png_ptr->jmpbuf)) {
- /* If we get here, we had a problem reading the file */
+ if (setjmp(png_jmpbuf(png_ptr))) {
+ // If we get here, we had a problem reading the file
fclose(fp);
png_destroy_write_struct(&png_ptr, &info_ptr);
return false;

View File

@ -0,0 +1,11 @@
--- src/widgets/desktop-widget.h~ 2011-07-08 13:25:09.000000000 -0500
+++ src/widgets/desktop-widget.h 2013-02-15 16:04:45.806910365 -0600
@@ -239,7 +239,7 @@
private:
GtkWidget *tool_toolbox;
GtkWidget *aux_toolbox;
- GtkWidget *commands_toolbox,;
+ GtkWidget *commands_toolbox;
GtkWidget *snap_toolbox;
static void init(SPDesktopWidget *widget);

View File

@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
preConfigure = '' preConfigure = ''
export LD_LIBRARY_PATH="$LD_LIBRARY_PATH''${LD_LIBRARY_PATH:+:}$PWD/build/lib" export LD_LIBRARY_PATH="$LD_LIBRARY_PATH''${LD_LIBRARY_PATH:+:}$PWD/build/lib"
export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -I$(echo ${gtkglext}/include/gtkglext-*) -I$(echo ${gtkglext}/lib/gtkglext-*/include)" export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -fpermissive -I$(echo ${gtkglext}/include/gtkglext-*) -I$(echo ${gtkglext}/lib/gtkglext-*/include)"
''; '';
buildInputs = [ buildInputs = [

View File

@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
cd ${name}-src cd ${name}-src
tar xf ${src} tar xf ${src}
''; '';
patches = [ ./goldendict-paths.diff ]; patches = [ ./goldendict-paths.diff ./gcc47.patch ];
patchFlags = "-p 0"; patchFlags = "-p 0";
configurePhase = '' configurePhase = ''
qmake qmake

View File

@ -0,0 +1,40 @@
From b00d081da20b9a6b257573c6b23a6bc640c4dab1 Mon Sep 17 00:00:00 2001
From: Michael Palimaka <kensington@gentoo.org>
Date: Fri, 20 Jul 2012 03:27:38 +1000
Subject: [PATCH] Fix build with GCC 4.7 by adding missing includes.
---
processwrapper.cc | 4 ++++
qtsingleapplication/src/qtlocalpeer.cpp | 1 +
2 files changed, 5 insertions(+)
diff --git processwrapper.cc processwrapper.cc
index f7f3f19..86b985d 100644
--- processwrapper.cc
+++ processwrapper.cc
@@ -2,6 +2,10 @@
#include <QtCore>
+#if defined(Q_OS_UNIX)
+#include <unistd.h>
+#endif
+
#ifdef Q_OS_WIN32
#include <windows.h>
diff --git qtsingleapplication/src/qtlocalpeer.cpp qtsingleapplication/src/qtlocalpeer.cpp
index 382d182..506c142 100644
--- qtsingleapplication/src/qtlocalpeer.cpp
+++ qtsingleapplication/src/qtlocalpeer.cpp
@@ -50,6 +50,7 @@ static PProcessIdToSessionId pProcessIdToSessionId = 0;
#endif
#if defined(Q_OS_UNIX)
#include <time.h>
+#include <unistd.h>
#endif
namespace QtLP_Private {
--
1.7.11.1

View File

@ -7,6 +7,7 @@ stdenv.mkDerivation rec {
sha256 = "1q1m4cjzz2m41pdpxnwrsiczc7990785b700lv64midjjgjnr7j6"; sha256 = "1q1m4cjzz2m41pdpxnwrsiczc7990785b700lv64midjjgjnr7j6";
}; };
buildInputs = [ gettext kdelibs kde_baseapps ]; buildInputs = [ gettext kdelibs kde_baseapps ];
NIX_CFLAGS_COMPILE = "-fpermissive"; # fix build with newer gcc versions
meta = { meta = {
description = "Norton/Total Commander clone for KDE"; description = "Norton/Total Commander clone for KDE";
license = "GPL"; license = "GPL";

View File

@ -19,12 +19,11 @@ stdenv.mkDerivation {
chmod 555 "$out/bin/snipe" chmod 555 "$out/bin/snipe"
''; '';
meta = { meta = with stdenv.lib; {
description = "Simple, lightweight tool for sniping eBay auctions"; description = "Simple, lightweight tool for sniping eBay auctions";
homepage = "http://esnipe.rsourceforge.net"; homepage = http://esnipe.rsourceforge.net;
license = "GPLv2"; license = licenses.gpl2;
maintainers = with maintainers; [ lovek323 simons ];
platforms = stdenv.lib.platforms.all; platforms = platforms.all;
maintainers = [ stdenv.lib.maintainers.simons ];
}; };
} }

View File

@ -65,6 +65,8 @@ stdenv.mkDerivation {
) )
''; '';
installPhase = ''make DESTDIR="$out" MKDIR_P="mkdir -p" install'';
enableParallelBuilding = true; enableParallelBuilding = true;
meta = { meta = {

View File

@ -35,7 +35,8 @@ stdenv.mkDerivation {
NIX_LDFLAGS = stdenv.lib.optionalString (!stdenv.isDarwin) "-lgcc_s"; NIX_LDFLAGS = stdenv.lib.optionalString (!stdenv.isDarwin) "-lgcc_s";
makeFlags = "prefix=\${out} sysconfdir=/etc/ PERL_PATH=${perl}/bin/perl SHELL_PATH=${stdenv.shell} " makeFlags = "prefix=\${out} sysconfdir=/etc/ PERL_PATH=${perl}/bin/perl SHELL_PATH=${stdenv.shell} "
+ (if pythonSupport then "PYTHON_PATH=${python}/bin/python" else "NO_PYTHON=1"); + (if pythonSupport then "PYTHON_PATH=${python}/bin/python" else "NO_PYTHON=1")
+ (if stdenv.isSunOS then " INSTALL=install NO_INET_NTOP= NO_INET_PTON=" else "");
# FIXME: "make check" requires Sparse; the Makefile must be tweaked # FIXME: "make check" requires Sparse; the Makefile must be tweaked
# so that `SPARSE_FLAGS' corresponds to the current architecture... # so that `SPARSE_FLAGS' corresponds to the current architecture...

View File

@ -16,6 +16,8 @@ stdenv.mkDerivation rec {
configureFlags = "--with-boost-libdir=${boost}/lib"; configureFlags = "--with-boost-libdir=${boost}/lib";
NIX_CFLAGS_COMPILE = "-fpermissive"; # fix build with newer gcc versions
meta = { meta = {
homepage = "http://code.google.com/p/gource/"; homepage = "http://code.google.com/p/gource/";
description = "software version control visualization tool"; description = "software version control visualization tool";

View File

@ -66,13 +66,23 @@ else
echo "$gccCFlags" > $out/nix-support/gcc-cflags echo "$gccCFlags" > $out/nix-support/gcc-cflags
gccPath="$gcc/bin" gccPath="$gcc/bin"
# On Illumos/Solaris we might prefer native ld
if test -n "$nativePrefix"; then
ldPath="$nativePrefix/bin"
else
ldPath="$binutils/bin" ldPath="$binutils/bin"
fi;
fi fi
doSubstitute() { doSubstitute() {
local src=$1 local src=$1
local dst=$2 local dst=$2
local ld="$ldPath/ld"
if $ld -V 2>&1 |grep Solaris; then
# Use Solaris specific linker wrapper
ld="$out/bin/ld-solaris"
fi
# Can't use substitute() here, because replace may not have been # Can't use substitute() here, because replace may not have been
# built yet (in the bootstrap). # built yet (in the bootstrap).
sed \ sed \
@ -85,7 +95,7 @@ doSubstitute() {
-e "s^@binutils@^$binutils^g" \ -e "s^@binutils@^$binutils^g" \
-e "s^@coreutils@^$coreutils^g" \ -e "s^@coreutils@^$coreutils^g" \
-e "s^@libc@^$libc^g" \ -e "s^@libc@^$libc^g" \
-e "s^@ld@^$ldPath/ld^g" \ -e "s^@ld@^$ld^g" \
< "$src" > "$dst" < "$src" > "$dst"
} }
@ -174,6 +184,13 @@ ln -s $ldPath/as $out/bin/as
doSubstitute "$ldWrapper" "$out/bin/ld" doSubstitute "$ldWrapper" "$out/bin/ld"
chmod +x "$out/bin/ld" chmod +x "$out/bin/ld"
# Copy solaris ld wrapper if needed
if $ldPath/ld -V 2>&1 |grep Solaris; then
# Use Solaris specific linker wrapper
sed -e "s^@ld@^$ldPath/ld^g" < "$ldSolarisWrapper" > "$out/bin/ld-solaris"
chmod +x "$out/bin/ld-solaris"
fi
# Emit a setup hook. Also store the path to the original GCC and # Emit a setup hook. Also store the path to the original GCC and
# Glibc. # Glibc.

View File

@ -36,6 +36,7 @@ stdenv.mkDerivation {
gnatWrapper = ./gnat-wrapper.sh; gnatWrapper = ./gnat-wrapper.sh;
gnatlinkWrapper = ./gnatlink-wrapper.sh; gnatlinkWrapper = ./gnatlink-wrapper.sh;
ldWrapper = ./ld-wrapper.sh; ldWrapper = ./ld-wrapper.sh;
ldSolarisWrapper = ./ld-solaris-wrapper.sh;
utils = ./utils.sh; utils = ./utils.sh;
addFlags = ./add-flags; addFlags = ./add-flags;

View File

@ -0,0 +1,40 @@
#!/bin/bash
set -e
set -u
# I've also tried adding -z direct and -z lazyload, but it gave too many problems with C++ exceptions :'(
# Also made sure libgcc would not be lazy-loaded, as suggested here: https://www.illumos.org/issues/2534#note-3
# but still no success.
cmd="@ld@ -z ignore"
args=("$@");
# This loop makes sure all -L arguments are before -l arguments, or ld may complain it cannot find a library.
# GNU binutils does not have this problem:
# http://stackoverflow.com/questions/5817269/does-the-order-of-l-and-l-options-in-the-gnu-linker-matter
i=0;
while [[ $i -lt $# ]]; do
case "${args[$i]}" in
-L) cmd="$cmd ${args[$i]} ${args[($i+1)]}"; i=($i+1); ;;
-L*) cmd="$cmd ${args[$i]}" ;;
*) ;;
esac
i=($i+1);
done
i=0;
while [[ $i -lt $# ]]; do
case "${args[$i]}" in
-L) i=($i+1); ;;
-L*) ;;
*) cmd="$cmd ${args[$i]}" ;;
esac
i=($i+1);
done
# Trace:
set -x
exec $cmd
exit 0

View File

@ -1,6 +1,6 @@
addCVars () { addCVars () {
if test -d $1/include; then if test -d $1/include; then
export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -I$1/include" export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -isystem $1/include"
fi fi
if test -d $1/lib64; then if test -d $1/lib64; then

View File

@ -1,4 +1,4 @@
{ callPackage, self, stdenv, gettext, gvfs, libunique, overrides ? {} }: { callPackage, self, stdenv, gettext, gvfs, libunique, bison2, overrides ? {} }:
let overridden = set // overrides; set = with overridden; { let overridden = set // overrides; set = with overridden; {
# Backward compatibility. # Backward compatibility.
gtkdoc = self.gtk_doc; gtkdoc = self.gtk_doc;
@ -19,7 +19,9 @@ let overridden = set // overrides; set = with overridden; {
libglade = callPackage ./platform/libglade { }; libglade = callPackage ./platform/libglade { };
libgnomeprint = callPackage ./platform/libgnomeprint { }; libgnomeprint = callPackage ./platform/libgnomeprint {
bison = bison2;
};
libgnomeprintui = callPackage ./platform/libgnomeprintui { }; libgnomeprintui = callPackage ./platform/libgnomeprintui { };

View File

@ -32,7 +32,7 @@ stdenv.mkDerivation {
}); });
patches = patches =
[./pass-cxxcpp.patch] [./pass-cxxcpp.patch ./siginfo_t.patch]
++ optional noSysDirs [./no-sys-dirs.patch]; ++ optional noSysDirs [./no-sys-dirs.patch];
inherit noSysDirs profiledCompiler staticCompiler; inherit noSysDirs profiledCompiler staticCompiler;

View File

@ -0,0 +1,15 @@
https://bbs.archlinux.org/viewtopic.php?id=144949
--- a/gcc/config/i386/linux-unwind.h 2011-01-03 20:52:22.000000000 +0000
+++ b/gcc/config/i386/linux-unwind.h 2012-07-06 12:23:51.562859470 +0100
@@ -133,9 +133,9 @@
{
struct rt_sigframe {
int sig;
- struct siginfo *pinfo;
+ siginfo_t *pinfo;
void *puc;
- struct siginfo info;
+ siginfo_t info;
struct ucontext uc;
} *rt_ = context->cfa;
/* The void * cast is necessary to avoid an aliasing warning.

View File

@ -29,7 +29,7 @@ assert langVhdl -> gnat != null;
with stdenv.lib; with stdenv.lib;
let let
version = "4.3.4"; version = "4.3.6";
crossConfigureFlags = crossConfigureFlags =
"--target=${cross.config}" + "--target=${cross.config}" +
@ -60,19 +60,19 @@ stdenv.mkDerivation ({
src = src =
optional /*langC*/ true (fetchurl { optional /*langC*/ true (fetchurl {
url = "mirror://gcc/releases/gcc-${version}/gcc-core-${version}.tar.bz2"; url = "mirror://gcc/releases/gcc-${version}/gcc-core-${version}.tar.bz2";
sha256 = "1yk80nwyw8vkpw8d3x7lkg3zrv3ngjqlvj0i8zslzgj7a27q729i"; sha256 = "0ygrfw3hgp48hkqipbl9lw38f27npigc2sm6f01g9iswpq1igbw6";
}) ++ }) ++
optional langCC (fetchurl { optional langCC (fetchurl {
url = "mirror://gcc/releases/gcc-${version}/gcc-g++-${version}.tar.bz2"; url = "mirror://gcc/releases/gcc-${version}/gcc-g++-${version}.tar.bz2";
sha256 = "0d8pyk5c9zmph25f4fl63vd8vhljj6ildbxpz2hr594g5i6pplpq"; sha256 = "105xz3991b57zx3146xwlpchdb2sjmlknclvi1iac2gawm4mhxhf";
}) ++ }) ++
optional langFortran (fetchurl { optional langFortran (fetchurl {
url = "mirror://gcc/releases/gcc-${version}/gcc-fortran-${version}.tar.bz2"; url = "mirror://gcc/releases/gcc-${version}/gcc-fortran-${version}.tar.bz2";
sha256 = "1xf2njykv1qcgxiqwj693dxjf77ss1rcxirylvnsp5hs89mdlj12"; sha256 = "12bqvf53hvhrwjnh101vn9frb5g8cr98cra4f11dzhzs4ppydpi1";
}) ++ }) ++
optional langJava (fetchurl { optional langJava (fetchurl {
url = "mirror://gcc/releases/gcc-${version}/gcc-java-${version}.tar.bz2"; url = "mirror://gcc/releases/gcc-${version}/gcc-java-${version}.tar.bz2";
sha256 = "1v3krhxi3zyaqfj0x8dbxvg67fjp29cr1psyf71r9zf757p3vqsw"; sha256 = "03w6jln9gmdv149s774rlw4rzi2zhbqna54r86cd6mql8flmy7fs";
}); });
patches = patches =

View File

@ -31,7 +31,7 @@ assert langVhdl -> gnat != null;
with stdenv.lib; with stdenv.lib;
let version = "4.4.6"; let version = "4.4.7";
javaEcj = fetchurl { javaEcj = fetchurl {
# The `$(top_srcdir)/ecj.jar' file is automatically picked up at # The `$(top_srcdir)/ecj.jar' file is automatically picked up at
# `configure' time. # `configure' time.

View File

@ -1,26 +1,26 @@
/* Automatically generated by `update-gcc.sh', do not edit. /* Automatically generated by `update-gcc.sh', do not edit.
For GCC 4.4.6. */ For GCC 4.4.7. */
{ fetchurl, optional, version, langC, langCC, langFortran, langJava, langAda }: { fetchurl, optional, version, langC, langCC, langFortran, langJava, langAda }:
assert version == "4.4.6"; assert version == "4.4.7";
optional /* langC */ true (fetchurl { optional /* langC */ true (fetchurl {
url = "mirror://gcc/releases/gcc-${version}/gcc-core-${version}.tar.bz2"; url = "mirror://gcc/releases/gcc-${version}/gcc-core-${version}.tar.bz2";
sha256 = "c2959820de3e42eee6b1d381586992f26430f0083b9a51db31d706080fc9b44a"; sha256 = "c4663b7023909a4a075d3c2b2e17f6e082a9625aebfd0ce7f1d7817e44bf5542";
}) ++ }) ++
optional langCC (fetchurl { optional langCC (fetchurl {
url = "mirror://gcc/releases/gcc-${version}/gcc-g++-${version}.tar.bz2"; url = "mirror://gcc/releases/gcc-${version}/gcc-g++-${version}.tar.bz2";
sha256 = "6d5d2dacab9569472e4caa291abe94017a9b19574b9b0d866de7b04702634ddf"; sha256 = "1882ff29be51eeb3fb349cbcda9df200a5c3cd20c97dd1d593101e0998b3c469";
}) ++ }) ++
optional langFortran (fetchurl { optional langFortran (fetchurl {
url = "mirror://gcc/releases/gcc-${version}/gcc-fortran-${version}.tar.bz2"; url = "mirror://gcc/releases/gcc-${version}/gcc-fortran-${version}.tar.bz2";
sha256 = "2b9998716a16b80f4cf843ce81da1cf58ce116e0b85422e3004ce4454e8ff923"; sha256 = "545a1e8e97d9364de4408c6a91830f9051ce24b4fbfbfdc56e72c7b4be17ebdd";
}) ++ }) ++
optional langJava (fetchurl { optional langJava (fetchurl {
url = "mirror://gcc/releases/gcc-${version}/gcc-java-${version}.tar.bz2"; url = "mirror://gcc/releases/gcc-${version}/gcc-java-${version}.tar.bz2";
sha256 = "7c8c12eac21d2a5c605ea4d9b7aa52e482354205b801bc93d62603b6f0956b35"; sha256 = "3c31ddd80f945b797d8d4ed7761426c26343781c361ec1b33bcea9874cc4c6c0";
}) ++ }) ++
optional langAda (fetchurl { optional langAda (fetchurl {
url = "mirror://gcc/releases/gcc-${version}/gcc-ada-${version}.tar.bz2"; url = "mirror://gcc/releases/gcc-${version}/gcc-ada-${version}.tar.bz2";
sha256 = "771ef0e90abf61208ce84689bed15391ad249287e36a28e816d6a044035af0c6"; sha256 = "fb9f30b85d48838390554b948d137487f0db09ad5f8ba73ca4d7ca35765c6ed8";
}) ++ }) ++
[] []

View File

@ -21,7 +21,7 @@ options["g++"]="langCC"
options["fortran"]="langFortran" options["fortran"]="langFortran"
options["java"]="langJava" options["java"]="langJava"
options["ada"]="langAda" options["ada"]="langAda"
options["go"]="langGo" #options["go"]="langGo"
cat > "$out"<<EOF cat > "$out"<<EOF
/* Automatically generated by \`$(basename $0)', do not edit. /* Automatically generated by \`$(basename $0)', do not edit.
@ -32,7 +32,7 @@ cat > "$out"<<EOF
assert version == "${version}"; assert version == "${version}";
EOF EOF
for component in core g++ fortran java ada go for component in core g++ fortran java ada #go
do do
dir="ftp.gnu.org/gnu/gcc/gcc-${version}" dir="ftp.gnu.org/gnu/gcc/gcc-${version}"
file="gcc-${component}-${version}.tar.bz2" file="gcc-${component}-${version}.tar.bz2"

View File

@ -212,7 +212,7 @@ stdenv.mkDerivation ({
++ (optional (ppl != null) ppl) ++ (optional (ppl != null) ppl)
++ (optional (cloogppl != null) cloogppl) ++ (optional (cloogppl != null) cloogppl)
++ (optional (zlib != null) zlib) ++ (optional (zlib != null) zlib)
++ (optional (boehmgc != null) boehmgc) ++ (optional langJava boehmgc)
++ (optionals langJava [zip unzip]) ++ (optionals langJava [zip unzip])
++ (optionals javaAwtGtk ([gtk pkgconfig libart_lgpl] ++ xlibs)) ++ (optionals javaAwtGtk ([gtk pkgconfig libart_lgpl] ++ xlibs))
++ (optionals (cross != null) [binutilsCross]) ++ (optionals (cross != null) [binutilsCross])

View File

@ -434,7 +434,7 @@ stdenv.mkDerivation ({
passthru = { inherit langC langCC langAda langFortran langVhdl passthru = { inherit langC langCC langAda langFortran langVhdl
langGo version; }; langGo version; };
enableParallelBuilding = !langAda; enableParallelBuilding = false;
inherit (stdenv) is64bit; inherit (stdenv) is64bit;

View File

@ -1,11 +0,0 @@
--- gcc-4.7.3/gcc/Makefile.in 2013-04-01 10:11:11.000000000 +0200
+++ gcc-4.7.3/gcc/Makefile.in.new 2014-01-14 00:55:31.056406483 +0100
@@ -3904,7 +3904,7 @@
$(SYSTEM_H) coretypes.h $(GTM_H) errors.h $(READ_MD_H) gensupport.h
build/gengenrtl.o : gengenrtl.c $(BCONFIG_H) $(SYSTEM_H) rtl.def
gengtype-lex.o build/gengtype-lex.o : gengtype-lex.c gengtype.h $(SYSTEM_H)
-gengtype-lex.o: $(CONFIG_H)
+gengtype-lex.o: $(CONFIG_H) $(BCONFIG_H)
build/gengtype-lex.o: $(BCONFIG_H)
gengtype-parse.o build/gengtype-parse.o : gengtype-parse.c gengtype.h \
$(SYSTEM_H)

View File

@ -155,7 +155,7 @@ if test -n "$targetConfig"; then
dontStrip=1 dontStrip=1
fi fi
providedPreConfigure="$preConfigure";
preConfigure() { preConfigure() {
if test -n "$newlibSrc"; then if test -n "$newlibSrc"; then
tar xvf "$newlibSrc" -C .. tar xvf "$newlibSrc" -C ..
@ -188,6 +188,9 @@ preConfigure() {
configureFlags="$configureFlags --with-build-sysroot=`pwd`/.." configureFlags="$configureFlags --with-build-sysroot=`pwd`/.."
fi fi
# Eval the preConfigure script from nix expression.
eval $providedPreConfigure;
env;
# Perform the build in a different directory. # Perform the build in a different directory.
mkdir ../build mkdir ../build
cd ../build cd ../build

View File

@ -11,7 +11,7 @@
, perl ? null # optional, for texi2pod (then pod2man); required for Java , perl ? null # optional, for texi2pod (then pod2man); required for Java
, gmp, mpfr, mpc, gettext, which , gmp, mpfr, mpc, gettext, which
, libelf # optional, for link-time optimizations (LTO) , libelf # optional, for link-time optimizations (LTO)
, ppl ? null, cloog ? null # optional, for the Graphite optimization framework. , ppl ? null, cloog ? null, isl ? null # optional, for the Graphite optimization framework.
, zlib ? null, boehmgc ? null , zlib ? null, boehmgc ? null
, zip ? null, unzip ? null, pkgconfig ? null, gtk ? null, libart_lgpl ? null , zip ? null, unzip ? null, pkgconfig ? null, gtk ? null, libart_lgpl ? null
, libX11 ? null, libXt ? null, libSM ? null, libICE ? null, libXtst ? null , libX11 ? null, libXt ? null, libSM ? null, libICE ? null, libXtst ? null
@ -37,6 +37,9 @@ assert langJava -> zip != null && unzip != null
assert langAda -> gnatboot != null; assert langAda -> gnatboot != null;
assert langVhdl -> gnat != null; assert langVhdl -> gnat != null;
# We enable the isl cloog backend.
assert cloog != null -> isl != null;
# LTO needs libelf and zlib. # LTO needs libelf and zlib.
assert libelf != null -> zlib != null; assert libelf != null -> zlib != null;
@ -49,14 +52,19 @@ assert langGo -> langCC;
with stdenv.lib; with stdenv.lib;
with builtins; with builtins;
let version = "4.7.3"; let version = "4.8.2";
# Whether building a cross-compiler for GNU/Hurd. # Whether building a cross-compiler for GNU/Hurd.
crossGNU = cross != null && cross.config == "i586-pc-gnu"; crossGNU = cross != null && cross.config == "i586-pc-gnu";
patches = [ /* gccinstall.info says that "parallel make is currently not supported since
./build-race.patch collisions in profile collecting may occur".
] ++ optional stdenv.isArm [ ./arm-eabi.patch ] */
enableParallelBuilding = !profiledCompiler;
patches = []
++ optional stdenv.isArm ./arm-eabi.patch
++ optional enableParallelBuilding ./parallel-bconfig.patch
++ optional (cross != null) ./libstdc++-target.patch ++ optional (cross != null) ./libstdc++-target.patch
# ++ optional noSysDirs ./no-sys-dirs.patch # ++ optional noSysDirs ./no-sys-dirs.patch
# The GNAT Makefiles did not pay attention to CFLAGS_FOR_TARGET for its # The GNAT Makefiles did not pay attention to CFLAGS_FOR_TARGET for its
@ -89,12 +97,12 @@ let version = "4.7.3";
/* Platform flags */ /* Platform flags */
platformFlags = let platformFlags = let
gccArch = stdenv.lib.attrByPath [ "platform" "gcc" "arch" ] null stdenv; gccArch = stdenv.platform.gcc.arch or null;
gccCpu = stdenv.lib.attrByPath [ "platform" "gcc" "cpu" ] null stdenv; gccCpu = stdenv.platform.gcc.cpu or null;
gccAbi = stdenv.lib.attrByPath [ "platform" "gcc" "abi" ] null stdenv; gccAbi = stdenv.platform.gcc.abi or null;
gccFpu = stdenv.lib.attrByPath [ "platform" "gcc" "fpu" ] null stdenv; gccFpu = stdenv.platform.gcc.fpu or null;
gccFloat = stdenv.lib.attrByPath [ "platform" "gcc" "float" ] null stdenv; gccFloat = stdenv.platform.gcc.float or null;
gccMode = stdenv.lib.attrByPath [ "platform" "gcc" "mode" ] null stdenv; gccMode = stdenv.platform.gcc.mode or null;
withArch = if gccArch != null then " --with-arch=${gccArch}" else ""; withArch = if gccArch != null then " --with-arch=${gccArch}" else "";
withCpu = if gccCpu != null then " --with-cpu=${gccCpu}" else ""; withCpu = if gccCpu != null then " --with-cpu=${gccCpu}" else "";
withAbi = if gccAbi != null then " --with-abi=${gccAbi}" else ""; withAbi = if gccAbi != null then " --with-abi=${gccAbi}" else "";
@ -102,22 +110,22 @@ let version = "4.7.3";
withFloat = if gccFloat != null then " --with-float=${gccFloat}" else ""; withFloat = if gccFloat != null then " --with-float=${gccFloat}" else "";
withMode = if gccMode != null then " --with-mode=${gccMode}" else ""; withMode = if gccMode != null then " --with-mode=${gccMode}" else "";
in in
(withArch + withArch +
withCpu + withCpu +
withAbi + withAbi +
withFpu + withFpu +
withFloat + withFloat +
withMode); withMode;
/* Cross-gcc settings */ /* Cross-gcc settings */
crossMingw = (cross != null && cross.libc == "msvcrt"); crossMingw = (cross != null && cross.libc == "msvcrt");
crossConfigureFlags = let crossConfigureFlags = let
gccArch = stdenv.lib.attrByPath [ "gcc" "arch" ] null cross; gccArch = stdenv.cross.gcc.arch or null;
gccCpu = stdenv.lib.attrByPath [ "gcc" "cpu" ] null cross; gccCpu = stdenv.cross.gcc.cpu or null;
gccAbi = stdenv.lib.attrByPath [ "gcc" "abi" ] null cross; gccAbi = stdenv.cross.gcc.abi or null;
gccFpu = stdenv.lib.attrByPath [ "gcc" "fpu" ] null cross; gccFpu = stdenv.cross.gcc.fpu or null;
gccFloat = stdenv.lib.attrByPath [ "gcc" "float" ] null cross; gccFloat = stdenv.cross.gcc.float or null;
gccMode = stdenv.lib.attrByPath [ "gcc" "mode" ] null cross; gccMode = stdenv.cross.gcc.mode or null;
withArch = if gccArch != null then " --with-arch=${gccArch}" else ""; withArch = if gccArch != null then " --with-arch=${gccArch}" else "";
withCpu = if gccCpu != null then " --with-cpu=${gccCpu}" else ""; withCpu = if gccCpu != null then " --with-cpu=${gccCpu}" else "";
withAbi = if gccAbi != null then " --with-abi=${gccAbi}" else ""; withAbi = if gccAbi != null then " --with-abi=${gccAbi}" else "";
@ -180,8 +188,7 @@ let version = "4.7.3";
" --enable-nls" + " --enable-nls" +
" --disable-decimal-float") # No final libdecnumber (it may work only in 386) " --disable-decimal-float") # No final libdecnumber (it may work only in 386)
); );
stageNameAddon = if crossStageStatic then "-stage-static" else stageNameAddon = if crossStageStatic then "-stage-static" else "-stage-final";
"-stage-final";
crossNameAddon = if cross != null then "-${cross.config}" + stageNameAddon else ""; crossNameAddon = if cross != null then "-${cross.config}" + stageNameAddon else "";
bootstrap = cross == null && !stdenv.isArm && !stdenv.isMips; bootstrap = cross == null && !stdenv.isArm && !stdenv.isMips;
@ -198,7 +205,7 @@ stdenv.mkDerivation ({
src = fetchurl { src = fetchurl {
url = "mirror://gnu/gcc/gcc-${version}/gcc-${version}.tar.bz2"; url = "mirror://gnu/gcc/gcc-${version}/gcc-${version}.tar.bz2";
sha256 = "1hx9h64ivarlzi4hxvq42as5m9vlr5cyzaaq4gzj4i619zmkfz1g"; sha256 = "1j6dwgby4g3p3lz7zkss32ghr45zpdidrg8xvazvn91lqxv25p09";
}; };
inherit patches; inherit patches;
@ -267,6 +274,7 @@ stdenv.mkDerivation ({
buildInputs = [ gmp mpfr mpc libelf ] buildInputs = [ gmp mpfr mpc libelf ]
++ (optional (ppl != null) ppl) ++ (optional (ppl != null) ppl)
++ (optional (cloog != null) cloog) ++ (optional (cloog != null) cloog)
++ (optional (isl != null) isl)
++ (optional (zlib != null) zlib) ++ (optional (zlib != null) zlib)
++ (optionals langJava [ boehmgc zip unzip ]) ++ (optionals langJava [ boehmgc zip unzip ])
++ (optionals javaAwtGtk ([ gtk libart_lgpl ] ++ xlibs)) ++ (optionals javaAwtGtk ([ gtk libart_lgpl ] ++ xlibs))
@ -279,22 +287,42 @@ stdenv.mkDerivation ({
++ (optional stdenv.isDarwin gnused) ++ (optional stdenv.isDarwin gnused)
; ;
configureFlagsArray = stdenv.lib.optionals NIX_LDFLAGS = stdenv.lib.optionalString stdenv.isSunOS "-lm -ldl";
(ppl != null && ppl ? dontDisableStatic && ppl.dontDisableStatic)
[ "--with-host-libstdcxx=-lstdc++ -lgcc_s" ]; preConfigure = ''
configureFlagsArray=(
${stdenv.lib.optionalString (ppl != null && ppl ? dontDisableStatic && ppl.dontDisableStatic)
"'--with-host-libstdcxx=-lstdc++ -lgcc_s'"}
${stdenv.lib.optionalString (ppl != null && stdenv.isSunOS)
"\"--with-host-libstdcxx=-Wl,-rpath,\$prefix/lib/amd64 -lstdc++\"
\"--with-boot-ldflags=-L../prev-x86_64-pc-solaris2.11/libstdc++-v3/src/.libs\""}
);
${stdenv.lib.optionalString (stdenv.isSunOS && stdenv.is64bit)
''
export NIX_LDFLAGS=`echo $NIX_LDFLAGS | sed -e s~$prefix/lib~$prefix/lib/amd64~g`
export LDFLAGS_FOR_TARGET="-Wl,-rpath,$prefix/lib/amd64 $LDFLAGS_FOR_TARGET"
export CXXFLAGS_FOR_TARGET="-Wl,-rpath,$prefix/lib/amd64 $CXXFLAGS_FOR_TARGET"
export CFLAGS_FOR_TARGET="-Wl,-rpath,$prefix/lib/amd64 $CFLAGS_FOR_TARGET"
''}
'';
# 'iant' at #go-nuts@freenode, gccgo maintainer, said that # 'iant' at #go-nuts@freenode, gccgo maintainer, said that
# they have a bug in 4.7.1 if adding "--disable-static" # they have a bug in 4.7.1 if adding "--disable-static"
dontDisableStatic = langGo; dontDisableStatic = langGo || staticCompiler;
configureFlags = " configureFlags = "
${if stdenv.isSunOS then
" --enable-long-long --enable-libssp --enable-threads=posix --disable-nls --enable-__cxa_atexit " +
# On Illumos/Solaris GNU as is preferred
" --with-gnu-as --without-gnu-ld "
else ""}
--enable-lto
${if enableMultilib then "" else "--disable-multilib"} ${if enableMultilib then "" else "--disable-multilib"}
${if enableShared then "" else "--disable-shared"} ${if enableShared then "" else "--disable-shared"}
${if enablePlugin then "--enable-plugin" else ""} ${if enablePlugin then "--enable-plugin" else "--disable-plugin"}
${if ppl != null then "--with-ppl=${ppl}" else ""} ${if ppl != null then "--with-ppl=${ppl} --disable-ppl-version-check" else ""}
${if cloog != null then ${optionalString (isl != null) "--with-isl=${isl}"}
"--with-cloog=${cloog} --enable-cloog-backend=isl" ${optionalString (cloog != null) "--with-cloog=${cloog} --disable-cloog-version-check --enable-cloog-backend=isl"}
else ""}
${if langJava then ${if langJava then
"--with-ecj-jar=${javaEcj} " + "--with-ecj-jar=${javaEcj} " +
@ -345,11 +373,11 @@ stdenv.mkDerivation ({
else "install"; else "install";
crossAttrs = let crossAttrs = let
xgccArch = stdenv.lib.attrByPath [ "gcc" "arch" ] null stdenv.cross; xgccArch = stdenv.cross.gcc.arch or null;
xgccCpu = stdenv.lib.attrByPath [ "gcc" "cpu" ] null stdenv.cross; xgccCpu = stdenv.cross.gcc.cpu or null;
xgccAbi = stdenv.lib.attrByPath [ "gcc" "abi" ] null stdenv.cross; xgccAbi = stdenv.cross.gcc.abi or null;
xgccFpu = stdenv.lib.attrByPath [ "gcc" "fpu" ] null stdenv.cross; xgccFpu = stdenv.cross.gcc.fpu or null;
xgccFloat = stdenv.lib.attrByPath [ "gcc" "float" ] null stdenv.cross; xgccFloat = stdenv.cross.gcc.float or null;
xwithArch = if xgccArch != null then " --with-arch=${xgccArch}" else ""; xwithArch = if xgccArch != null then " --with-arch=${xgccArch}" else "";
xwithCpu = if xgccCpu != null then " --with-cpu=${xgccCpu}" else ""; xwithCpu = if xgccCpu != null then " --with-cpu=${xgccCpu}" else "";
xwithAbi = if xgccAbi != null then " --with-abi=${xgccAbi}" else ""; xwithAbi = if xgccAbi != null then " --with-abi=${xgccAbi}" else "";
@ -408,7 +436,8 @@ stdenv.mkDerivation ({
# Needed for the cross compilation to work # Needed for the cross compilation to work
AR = "ar"; AR = "ar";
LD = "ld"; LD = "ld";
CC = "gcc"; # http://gcc.gnu.org/install/specific.html#x86-64-x-solaris210
CC = if stdenv.system == "x86_64-solaris" then "gcc -m64" else "gcc";
# Setting $CPATH and $LIBRARY_PATH to make sure both `gcc' and `xgcc' find # Setting $CPATH and $LIBRARY_PATH to make sure both `gcc' and `xgcc' find
# the library headers and binaries, regarless of the language being # the library headers and binaries, regarless of the language being
@ -432,8 +461,7 @@ stdenv.mkDerivation ({
# On GNU/Hurd glibc refers to Mach & Hurd # On GNU/Hurd glibc refers to Mach & Hurd
# headers. # headers.
++ optionals (libcCross != null && ++ optionals (libcCross != null && libcCross ? "propagatedBuildInputs" )
hasAttr "propagatedBuildInputs" libcCross)
libcCross.propagatedBuildInputs))); libcCross.propagatedBuildInputs)));
LIBRARY_PATH = concatStrings LIBRARY_PATH = concatStrings
@ -456,14 +484,10 @@ stdenv.mkDerivation ({
" -L${libpthreadCross}/lib -Wl,${libpthreadCross.TARGET_LDFLAGS}") " -L${libpthreadCross}/lib -Wl,${libpthreadCross.TARGET_LDFLAGS}")
else null; else null;
passthru = { inherit langC langCC langAda langFortran langVhdl passthru =
langGo enableMultilib version; }; { inherit langC langCC langAda langFortran langVhdl langGo enableMultilib version; };
/* From gccinstall.info: inherit enableParallelBuilding;
"parallel make is currently not supported since collisions in profile
collecting may occur"
*/
enableParallelBuilding = !profiledCompiler;
meta = { meta = {
homepage = http://gcc.gnu.org/; homepage = http://gcc.gnu.org/;
@ -480,11 +504,7 @@ stdenv.mkDerivation ({
compiler used in the GNU system including the GNU/Linux variant. compiler used in the GNU system including the GNU/Linux variant.
''; '';
maintainers = [ maintainers = with stdenv.lib.maintainers; [ ludo viric shlevy simons ];
stdenv.lib.maintainers.ludo
stdenv.lib.maintainers.viric
stdenv.lib.maintainers.shlevy
];
# Volunteers needed for the {Cyg,Dar}win ports of *PPL. # Volunteers needed for the {Cyg,Dar}win ports of *PPL.
# gnatboot is not available out of linux platforms, so we disable the darwin build # gnatboot is not available out of linux platforms, so we disable the darwin build

View File

@ -0,0 +1,32 @@
Hacky work-around for highly parallel builds.
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57125
diff --git a/gcc/Makefile.in b/gcc/Makefile.in
index aad927c..182f666 100644
--- a/gcc/Makefile.in
+++ b/gcc/Makefile.in
@@ -3908,21 +3908,21 @@ build/gengtype-lex.o: $(BCONFIG_H)
gengtype-parse.o build/gengtype-parse.o : gengtype-parse.c gengtype.h \
$(SYSTEM_H)
-gengtype-parse.o: $(CONFIG_H)
+gengtype-parse.o: $(CONFIG_H) $(BCONFIG_H)
CFLAGS-gengtype-parse.o += -DGENERATOR_FILE
build/gengtype-parse.o: $(BCONFIG_H)
gengtype-state.o build/gengtype-state.o: gengtype-state.c $(SYSTEM_H) \
gengtype.h errors.h double-int.h version.h $(HASHTAB_H) $(OBSTACK_H) \
$(XREGEX_H)
-gengtype-state.o: $(CONFIG_H)
+gengtype-state.o: $(CONFIG_H) $(BCONFIG_H)
CFLAGS-gengtype-state.o += -DGENERATOR_FILE
build/gengtype-state.o: $(BCONFIG_H)
gengtype.o build/gengtype.o : gengtype.c $(SYSTEM_H) gengtype.h \
rtl.def insn-notes.def errors.h double-int.h version.h $(HASHTAB_H) \
$(OBSTACK_H) $(XREGEX_H)
-gengtype.o: $(CONFIG_H)
+gengtype.o: $(CONFIG_H) $(BCONFIG_H)
CFLAGS-gengtype.o += -DGENERATOR_FILE
build/gengtype.o: $(BCONFIG_H)

View File

@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
buildInputs = [ ghc perl gmp ncurses ]; buildInputs = [ ghc perl gmp ncurses ];
enableParallelBuilding = true; enableParallelBuilding = false; # the same errors as 7.6.1
buildMK = '' buildMK = ''
libraries/integer-gmp_CONFIGURE_OPTS += --configure-option=--with-gmp-libraries="${gmp}/lib" libraries/integer-gmp_CONFIGURE_OPTS += --configure-option=--with-gmp-libraries="${gmp}/lib"

View File

@ -1,21 +0,0 @@
#! /bin/sh
# Usage:
# $1: version of GHC
# $2: invocation path of GHC
# $3: prefix
version="$1"
if test -z "$3"; then
prefix="-package-conf "
else
prefix="$3"
fi
PATH="$2:$PATH"
IFS=":"
for p in $PATH; do
PkgDir="$p/../lib/ghc-pkgs/ghc-$version"
for i in $PkgDir/*.installedconf; do
# output takes place here
test -f $i && echo -n " $prefix$i"
done
done
test -f "$2/../lib/ghc-$version/package.conf" && echo -n " $prefix$2/../lib/ghc-$version/package.conf"

View File

@ -0,0 +1,41 @@
{ stdenv, fetchurl, perl, groff, cmake, python, libffi, binutils }:
let
version = "3.3";
in stdenv.mkDerivation rec {
name = "llvm-${version}";
src = fetchurl {
url = "http://llvm.org/releases/${version}/llvm-${version}.src.tar.gz";
sha256 = "0y3mfbb5qzcpw3v5qncn69x1hdrrrfirgs82ypi2annhf0g6nxk8";
};
patches = [
./more-memory-for-bugpoint.patch # The default rlimits in 3.3 are too low for shared libraries.
./no-rule-aarch64.patch # http://llvm.org/bugs/show_bug.cgi?id=16625
];
buildInputs = [ perl groff cmake python libffi ];
# hacky fix: created binaries need to be run before installation
preBuild = let LD = if stdenv.isDarwin then "DYLD" else "LD";
in "export ${LD}_LIBRARY_PATH='$$${LD}_LIBRARY_PATH:'`pwd`/lib";
cmakeFlags = with stdenv; [
"-DCMAKE_BUILD_TYPE=Release"
"-DLLVM_ENABLE_FFI=ON"
"-DLLVM_BINUTILS_INCDIR=${binutils}/include"
"-DLLVM_EXPERIMENTAL_TARGETS_TO_BUILD=R600" # for mesa
] ++ stdenv.lib.optional (!isDarwin) "-DBUILD_SHARED_LIBS=ON";
enableParallelBuilding = true;
doCheck = true;
meta = with stdenv.lib; {
description = "Collection of modular and reusable compiler and toolchain technologies";
homepage = http://llvm.org/;
license = licenses.bsd3;
maintainers = with maintainers; [ lovek323 raskin viric ];
platforms = platforms.all;
};
}

View File

@ -0,0 +1,8 @@
--- llvm/lib/Target/AArch64/Utils/CMakeLists.txt 2013/05/18 04:32:15 182189
+++ llvm/lib/Target/AArch64/Utils/CMakeLists.txt 2013/05/18 08:17:47 182190
@@ -3,3 +3,5 @@
add_llvm_library(LLVMAArch64Utils
AArch64BaseInfo.cpp
)
+
+add_dependencies(LLVMAArch64Utils AArch64CommonTableGen)

View File

@ -0,0 +1,8 @@
diff -Naur clang-3.4-orig/tools/extra/CMakeLists.txt clang-3.4/tools/extra/CMakeLists.txt
--- clang-3.4-orig/tools/extra/CMakeLists.txt 2013-11-07 19:08:23.000000000 -0500
+++ clang-3.4/tools/extra/CMakeLists.txt 2014-01-20 11:47:22.678435223 -0500
@@ -1,3 +1,4 @@
+include(CheckLibraryExists)
check_library_exists(edit el_init "" HAVE_LIBEDIT)
add_subdirectory(clang-apply-replacements)

View File

@ -0,0 +1,41 @@
{ stdenv, fetch, cmake, libxml2, libedit, llvm, version }:
stdenv.mkDerivation {
name = "clang-${version}";
unpackPhase = ''
unpackFile ${fetch "clang" "06rb4j1ifbznl3gfhl98s7ilj0ns01p7y7zap4p7ynmqnc6pia92"}
mv clang-${version} clang
sourceRoot=$PWD/clang
unpackFile ${fetch "clang-tools-extra" "1d1822mwxxl9agmyacqjw800kzz5x8xr0sdmi8fgx5xfa5sii1ds"}
mv clang-tools-extra-${version} $sourceRoot/tools/extra
# !!! Hopefully won't be needed for 3.5
unpackFile ${llvm.src}
export cmakeFlags="$cmakeFlags -DCLANG_PATH_TO_LLVM_SOURCE=$PWD/llvm-${version}"
(cd llvm-${version} && patch -Np1 -i ${./llvm-separate-build.patch})
'';
patches = [ ./clang-separate-build.patch ];
buildInputs = [ cmake libedit libxml2 ];
cmakeFlags = [
"-DCMAKE_BUILD_TYPE=Release"
"-DCMAKE_CXX_FLAGS=-std=c++11"
"-DCLANG_PATH_TO_LLVM_BUILD=${llvm}"
] ++
(stdenv.lib.optional (stdenv.gcc.libc != null) "-DC_INCLUDE_DIRS=${stdenv.gcc.libc}/include") ++
(stdenv.lib.optional (stdenv.gcc.gcc != null) "-DGCC_INSTALL_PREFIX=${stdenv.gcc.gcc}");
passthru.gcc = stdenv.gcc.gcc;
enableParallelBuilding = true;
meta = {
description = "A c, c++, objective-c, and objective-c++ frontend for the llvm compiler";
homepage = http://llvm.org/;
license = stdenv.lib.licenses.bsd3;
maintainers = [ stdenv.lib.maintainers.shlevy ];
platforms = stdenv.lib.platforms.all;
};
}

View File

@ -0,0 +1,25 @@
{ newScope, stdenv, isl, fetchurl }:
let
callPackage = newScope (self // { inherit stdenv isl version fetch; });
version = "3.4";
fetch = name: sha256: fetchurl {
url = "http://llvm.org/releases/${version}/${name}-${version}.src.tar.gz";
inherit sha256;
};
self = {
llvm = callPackage ./llvm.nix {};
clang = callPackage ./clang.nix {};
lld = callPackage ./lld.nix {};
lldb = callPackage ./lldb.nix {};
polly = callPackage ./polly.nix {};
dragonegg = callPackage ./dragonegg.nix {};
};
in self

View File

@ -1,13 +1,9 @@
{stdenv, fetchurl, llvm, gmp, mpfr, mpc, ncurses, zlib}: {stdenv, fetch, llvm, gmp, mpfr, mpc, ncurses, zlib, version}:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
version = "3.4";
name = "dragonegg-${version}"; name = "dragonegg-${version}";
src = fetchurl { src = fetch "dragonegg" "1733czbvby1ww3xkwcwmm0km0bpwhfyxvf56wb0zv5gksp3kbgrl";
url = "http://llvm.org/releases/${version}/${name}.src.tar.gz";
sha256 = "1733czbvby1ww3xkwcwmm0km0bpwhfyxvf56wb0zv5gksp3kbgrl";
};
# The gcc the plugin will be built for (the same used building dragonegg) # The gcc the plugin will be built for (the same used building dragonegg)
GCC = "gcc"; GCC = "gcc";
@ -24,7 +20,7 @@ stdenv.mkDerivation rec {
homepage = http://dragonegg.llvm.org/; homepage = http://dragonegg.llvm.org/;
description = "gcc plugin that replaces gcc's optimizers and code generators by those in LLVM"; description = "gcc plugin that replaces gcc's optimizers and code generators by those in LLVM";
license = "GPLv2+"; license = "GPLv2+";
maintainers = with stdenv.lib.maintainers; [viric]; maintainers = with stdenv.lib.maintainers; [viric shlevy];
platforms = with stdenv.lib.platforms; linux; platforms = with stdenv.lib.platforms; linux;
}; };
} }

View File

@ -0,0 +1,31 @@
{ stdenv, fetch, cmake, llvm, ncurses, zlib, python, version }:
stdenv.mkDerivation {
name = "lld-${version}";
src = fetch "lld" "1sd4scqynryfrmcc4h0ljgwn2dgjmbbmf38z50ya6l0janpd2nxz";
preUnpack = ''
# !!! Hopefully won't be needed for 3.5
unpackFile ${llvm.src}
export cmakeFlags="$cmakeFlags -DLLD_PATH_TO_LLVM_SOURCE=$PWD/llvm-${version}"
'';
buildInputs = [ cmake ncurses zlib python ];
cmakeFlags = [
"-DCMAKE_BUILD_TYPE=Release"
"-DCMAKE_CXX_FLAGS=-std=c++11"
"-DLLD_PATH_TO_LLVM_BUILD=${llvm}"
];
enableParallelBuilding = true;
meta = {
description = "A set of modular code for creating linker tools";
homepage = http://llvm.org/;
license = stdenv.lib.licenses.bsd3;
maintainers = [ stdenv.lib.maintainers.shlevy ];
platforms = stdenv.lib.platforms.all;
};
}

View File

@ -0,0 +1,44 @@
{ stdenv
, fetch
, cmake
, zlib
, ncurses
, swig
, which
, libedit
, llvm
, clang
, python
, version
}:
stdenv.mkDerivation {
name = "lldb-${version}";
src = fetch "lldb" "0h8cmjrhjhigk7k2qll1pcf6jfgmbdzkzfz2i048pkfg851s0x4g";
patchPhase = ''
sed -i 's|/usr/bin/env||' \
scripts/Python/finish-swig-Python-LLDB.sh \
scripts/Python/build-swig-Python.sh
'';
buildInputs = [ cmake python which swig ncurses zlib libedit ];
cmakeFlags = [
"-DCMAKE_BUILD_TYPE=Release"
"-DCMAKE_CXX_FLAGS=-std=c++11"
"-DLLDB_PATH_TO_LLVM_BUILD=${llvm}"
"-DLLDB_PATH_TO_CLANG_BUILD=${clang}"
];
enableParallelBuilding = true;
meta = {
description = "A next-generation high-performance debugger";
homepage = http://llvm.org/;
license = stdenv.lib.licenses.bsd3;
maintainers = [ stdenv.lib.maintainers.shlevy ];
platforms = stdenv.lib.platforms.all;
};
}

View File

@ -0,0 +1,12 @@
diff -Naur llvm-3.4-orig/cmake/modules/TableGen.cmake llvm-3.4/cmake/modules/TableGen.cmake
--- llvm-3.4-orig/cmake/modules/TableGen.cmake 2013-10-06 21:00:07.000000000 -0400
+++ llvm-3.4/cmake/modules/TableGen.cmake 2014-01-20 13:06:55.273022149 -0500
@@ -78,8 +78,6 @@
endif()
macro(add_tablegen target project)
- set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${LLVM_TOOLS_BINARY_DIR})
-
set(${target}_OLD_LLVM_LINK_COMPONENTS ${LLVM_LINK_COMPONENTS})
set(LLVM_LINK_COMPONENTS ${LLVM_LINK_COMPONENTS} TableGen)
add_llvm_utility(${target} ${ARGN})

View File

@ -0,0 +1,55 @@
{ stdenv
, fetch
, perl
, groff
, cmake
, python
, libffi
, binutils
, libxml2
, valgrind
, ncurses
, version
}:
let
src = fetch "llvm" "0a169ba045r4apb9cv6ncrwl83l7yiajnzirkcdlhj1cd4nn3995";
in stdenv.mkDerivation rec {
name = "llvm-${version}";
unpackPhase = ''
unpackFile ${src}
mv llvm-${version} llvm
sourceRoot=$PWD/llvm
unpackFile ${fetch "compiler-rt" "0p5b6varxdqn7q3n77xym63hhq4qqxd2981pfpa65r1w72qqjz7k"}
mv compiler-rt-${version} $sourceRoot/projects/compiler-rt
'';
buildInputs = [ perl groff cmake libxml2 python libffi valgrind ncurses ];
# hacky fix: created binaries need to be run before installation
preBuild = ''
mkdir -p $out/
ln -sv $PWD/lib $out
'';
postBuild = "rm -fR $out";
cmakeFlags = with stdenv; [
"-DCMAKE_BUILD_TYPE=Release"
"-DLLVM_ENABLE_FFI=ON"
"-DLLVM_BINUTILS_INCDIR=${binutils}/include"
"-DCMAKE_CXX_FLAGS=-std=c++11"
] ++ stdenv.lib.optional (!isDarwin) "-DBUILD_SHARED_LIBS=ON";
enableParallelBuilding = true;
passthru.src = src;
meta = {
description = "Collection of modular and reusable compiler and toolchain technologies";
homepage = http://llvm.org/;
license = stdenv.lib.licenses.bsd3;
maintainers = with stdenv.lib.maintainers; [ shlevy lovek323 raskin viric ];
platforms = stdenv.lib.platforms.all;
};
}

View File

@ -0,0 +1,12 @@
diff -Naur polly-3.4-orig/CMakeLists.txt polly-3.4/CMakeLists.txt
--- polly-3.4-orig/CMakeLists.txt 2013-11-21 06:51:46.000000000 -0500
+++ polly-3.4/CMakeLists.txt 2014-01-20 18:49:34.907919933 -0500
@@ -53,7 +53,7 @@
execute_process(COMMAND "${LLVM_INSTALL_ROOT}/bin/llvm-config" --cxxflags
OUTPUT_VARIABLE LLVM_CXX_FLAGS
OUTPUT_STRIP_TRAILING_WHITESPACE)
- set(CMAKE_CXX_FLAGS ${CMAKE_CXX_FLAGS} ${LLVM_CXX_FLAGS})
+ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${LLVM_CXX_FLAGS}")
endif(NOT DEFINED LLVM_MAIN_SRC_DIR)
set(POLLY_SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR})

View File

@ -0,0 +1,27 @@
{ stdenv, fetch, cmake, isl, python, gmp, llvm, version }:
stdenv.mkDerivation {
name = "polly-${version}";
src = fetch "polly" "1rqflmgzg1vzjm0r32c5ck8x3q0qm3g0hh8ggbjazh6x7nvmy6lz";
patches = [ ./polly-separate-build.patch ];
buildInputs = [ cmake isl python gmp ];
cmakeFlags = [
"-DCMAKE_BUILD_TYPE=Release"
"-DCMAKE_CXX_FLAGS=-std=c++11"
"-DLLVM_INSTALL_ROOT=${llvm}"
];
enableParallelBuilding = true;
meta = {
description = "A polyhedral optimizer for llvm";
homepage = http://llvm.org/;
license = stdenv.lib.licenses.bsd3;
maintainers = [ stdenv.lib.maintainers.shlevy ];
platforms = stdenv.lib.platforms.all;
};
}

View File

@ -1,47 +0,0 @@
{ stdenv, fetchurl, perl, groff, cmake, python, libffi, binutils_gold, version }:
with { inherit (stdenv.lib) optional; };
assert version == "3.4" || version == "3.3";
stdenv.mkDerivation rec {
name = "llvm-${version}";
src = fetchurl {
url = "http://llvm.org/releases/${version}/llvm-${version}.src.tar.gz";
sha256 =
if version == "3.4" then "0a169ba045r4apb9cv6ncrwl83l7yiajnzirkcdlhj1cd4nn3995"
else /*3.3*/ "0y3mfbb5qzcpw3v5qncn69x1hdrrrfirgs82ypi2annhf0g6nxk8";
};
# The default rlimits are too low for shared libraries.
patches = optional (version == "3.3") [ ./more-memory-for-bugpoint.patch ];
# libffi was propagated before, but it wasn't even being used, so
# unless something needs it just an input is fine.
buildInputs = [ perl groff cmake python libffi ]; # ToDo: polly, libc++; enable cxx11?
# hacky fix: created binaries need to be run before installation
preBuild = let LD = if stdenv.isDarwin then "DYLD" else "LD";
in "export ${LD}_LIBRARY_PATH='$$${LD}_LIBRARY_PATH:'`pwd`/lib";
cmakeFlags = with stdenv; [
"-DCMAKE_BUILD_TYPE=Release"
"-DLLVM_ENABLE_FFI=ON"
"-DLLVM_BINUTILS_INCDIR=${binutils_gold}/include"
]
++ optional (version == "3.3") "-DLLVM_EXPERIMENTAL_TARGETS_TO_BUILD=R600" # for mesa
++ optional (!isDarwin) "-DBUILD_SHARED_LIBS=ON";
enableParallelBuilding = true;
doCheck = true;
meta = with stdenv.lib; {
description = "Collection of modular and reusable compiler and toolchain technologies";
homepage = http://llvm.org/;
license = licenses.bsd3;
maintainers = with maintainers; [ lovek323 raskin viric ];
platforms = platforms.all;
};
}

View File

@ -1,89 +0,0 @@
{ stdenv
, fetchurl
, perl, groff
, cmake
, libxml2
, python
, libffi
, zlib
, ncurses
, isl
, gmp
, doxygen
, binutils_gold
, swig
, which
, libedit
, valgrind
}:
let
version = "3.4";
fetch = name: sha256: fetchurl {
url = "http://llvm.org/releases/${version}/${name}-${version}.src.tar.gz";
inherit sha256;
};
inherit (stdenv.lib) concatStrings mapAttrsToList;
in stdenv.mkDerivation {
name = "llvm-full-${version}";
unpackPhase = ''
unpackFile ${fetch "llvm" "0a169ba045r4apb9cv6ncrwl83l7yiajnzirkcdlhj1cd4nn3995"}
mv llvm-${version} llvm
sourceRoot=$PWD/llvm
${concatStrings (mapAttrsToList (name: { location, sha256 }: ''
unpackFile ${fetch name sha256}
mv ${name}-${version} $sourceRoot/${location}
'') {
clang = { location = "tools/clang"; sha256 = "06rb4j1ifbznl3gfhl98s7ilj0ns01p7y7zap4p7ynmqnc6pia92"; };
clang-tools-extra = { location = "tools/clang/tools/extra"; sha256 = "1d1822mwxxl9agmyacqjw800kzz5x8xr0sdmi8fgx5xfa5sii1ds"; };
compiler-rt = { location = "projects/compiler-rt"; sha256 = "0p5b6varxdqn7q3n77xym63hhq4qqxd2981pfpa65r1w72qqjz7k"; };
lld = { location = "tools/lld"; sha256 = "1sd4scqynryfrmcc4h0ljgwn2dgjmbbmf38z50ya6l0janpd2nxz"; };
lldb = { location = "tools/lldb"; sha256 = "0h8cmjrhjhigk7k2qll1pcf6jfgmbdzkzfz2i048pkfg851s0x4g"; };
polly = { location = "tools/polly"; sha256 = "1rqflmgzg1vzjm0r32c5ck8x3q0qm3g0hh8ggbjazh6x7nvmy6lz"; };
})}
sed -i 's|/usr/bin/env||' \
$sourceRoot/tools/lldb/scripts/Python/finish-swig-Python-LLDB.sh \
$sourceRoot/tools/lldb/scripts/Python/build-swig-Python.sh
'';
buildInputs = [ perl
groff
cmake
libxml2
python
libffi
zlib
ncurses
isl
gmp
doxygen
swig
which
libedit
valgrind
];
cmakeFlags = [
"-DCMAKE_BUILD_TYPE=Release"
"-DLLVM_ENABLE_FFI=ON"
"-DGCC_INSTALL_PREFIX=${stdenv.gcc.gcc}"
"-DC_INCLUDE_DIRS=${stdenv.gcc.libc}/include/"
"-DLLVM_BINUTILS_INCDIR=${binutils_gold}/include"
"-DCMAKE_CXX_FLAGS=-std=c++11"
];
passthru.gcc = stdenv.gcc.gcc;
enableParallelBuilding = true;
meta = {
description = "Collection of modular and reusable compiler and toolchain technologies";
homepage = http://llvm.org/;
license = stdenv.lib.licenses.bsd3;
maintainers = [ stdenv.lib.maintainers.shlevy ];
platforms = stdenv.lib.platforms.all;
};
}

View File

@ -1,23 +1,26 @@
{ stdenv, fetchurl, gmp }: { stdenv, fetchurl, gmp }:
let
version = "20130715";
in
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "mlton-20100608"; name = "mlton-${version}";
binSrc = binSrc =
if stdenv.system == "i686-linux" then (fetchurl { if stdenv.system == "i686-linux" then (fetchurl {
url = "http://sourceforge.net/projects/mlton/files/mlton/20100608/${name}-1.x86-linux.static.tgz"; url = "http://sourceforge.net/projects/mlton/files/mlton/${version}/${name}-1.x86-linux.tgz";
sha256 = "16qg8df9hg2pmnsblkgxp6bgm7334rsqkxqzskv5fl21wivmnwfw"; sha256 = "1kxjjmnw4xk2d9hpvz43w9dvyhb3025k4zvjx785c33nrwkrdn4j";
}) })
else if stdenv.system == "x86_64-linux" then (fetchurl { else if stdenv.system == "x86_64-linux" then (fetchurl {
url = "http://sourceforge.net/projects/mlton/files/mlton/20100608/${name}-1.amd64-linux.static.tgz"; url = "http://sourceforge.net/projects/mlton/files/mlton/${version}/${name}-1.amd64-linux.tgz";
sha256 = "0i6ic8f6prl0cigrmf6bj9kqz3plzappxn17lz1rg2v832nfbw9r"; sha256 = "0fyhwxb4nmpirjbjcvk9f6w67gmn2gkz7xcgz0xbfih9kc015ygn";
}) })
else throw "Architecture not supported"; else throw "Architecture not supported";
codeSrc = codeSrc =
fetchurl { fetchurl {
url = "http://sourceforge.net/projects/mlton/files/mlton/20100608/${name}.src.tgz"; url = "http://sourceforge.net/projects/mlton/files/mlton/${version}/${name}.src.tgz";
sha256 = "0cqb3k6ld9965hyyfyayi510f205vqzd5qqm3crh13nasvq2rjzj"; sha256 = "0v1x2hrh9hiqkvnbq11kf34v4i5a2x0ffxbzqaa8skyl26nmfn11";
}; };
srcs = [ binSrc codeSrc ]; srcs = [ binSrc codeSrc ];

View File

@ -65,6 +65,7 @@ stdenv.mkDerivation rec {
"DEVTOOLS_PATH=" "DEVTOOLS_PATH="
"UNIXCOMMAND_PATH=" "UNIXCOMMAND_PATH="
"BOOTDIR=${jdk}" "BOOTDIR=${jdk}"
"STATIC_CXX=false"
"UNLIMITED_CRYPTO=1" "UNLIMITED_CRYPTO=1"
]; ];

View File

@ -18,6 +18,7 @@ stdenv.mkDerivation rec {
[ # Do not look in /usr etc. for dependencies. [ # Do not look in /usr etc. for dependencies.
./no-sys-dirs.patch ./no-sys-dirs.patch
] ]
++ stdenv.lib.optional stdenv.isSunOS ./ld-shared.patch
++ stdenv.lib.optional stdenv.isDarwin ./no-libutil.patch; ++ stdenv.lib.optional stdenv.isDarwin ./no-libutil.patch;
# Build a thread-safe Perl with a dynamic libperls.o. We need the # Build a thread-safe Perl with a dynamic libperls.o. We need the

View File

@ -0,0 +1,11 @@
--- perl-5.14.2/hints/solaris_2.sh.orig 2013-02-14 19:29:49.453988140 +0000
+++ perl-5.14.2/hints/solaris_2.sh 2013-02-14 19:30:31.681631019 +0000
@@ -568,7 +568,7 @@
# ccflags="$ccflags -Wa,`getconf XBS5_LP64_OFF64_CFLAGS 2>/dev/null`"
# fi
ldflags="$ldflags -m64"
- lddlflags="$lddlflags -G -m64"
+ lddlflags="$lddlflags -shared -m64"
;;
*)
getconfccflags="`getconf XBS5_LP64_OFF64_CFLAGS 2>/dev/null`"

View File

@ -6,6 +6,10 @@ let
in in
with {
inherit (stdenv.lib) optional optionalString;
};
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "perl-5.16.3"; name = "perl-5.16.3";
@ -18,7 +22,8 @@ stdenv.mkDerivation rec {
[ # Do not look in /usr etc. for dependencies. [ # Do not look in /usr etc. for dependencies.
./no-sys-dirs.patch ./no-sys-dirs.patch
] ]
++ stdenv.lib.optionals stdenv.isDarwin [ ./cpp-precomp.patch ./no-libutil.patch ] ; ++ optional stdenv.isSunOS ./ld-shared.patch
++ stdenv.lib.optional stdenv.isDarwin [ ./cpp-precomp.patch ./no-libutil.patch ] ;
# Build a thread-safe Perl with a dynamic libperls.o. We need the # Build a thread-safe Perl with a dynamic libperls.o. We need the
# "installstyle" option to ensure that modules are put under # "installstyle" option to ensure that modules are put under
@ -34,7 +39,7 @@ stdenv.mkDerivation rec {
"-Dlocincpth=${libc}/include" "-Dlocincpth=${libc}/include"
"-Dloclibpth=${libc}/lib" "-Dloclibpth=${libc}/lib"
] ]
++ stdenv.lib.optional (stdenv ? glibc) "-Dusethreads"; ++ optional (stdenv ? glibc) "-Dusethreads";
configureScript = "${stdenv.shell} ./Configure"; configureScript = "${stdenv.shell} ./Configure";
@ -46,12 +51,12 @@ stdenv.mkDerivation rec {
'' ''
configureFlags="$configureFlags -Dprefix=$out -Dman1dir=$out/share/man/man1 -Dman3dir=$out/share/man/man3" configureFlags="$configureFlags -Dprefix=$out -Dman1dir=$out/share/man/man1 -Dman3dir=$out/share/man/man3"
${stdenv.lib.optionalString stdenv.isArm '' ${optionalString stdenv.isArm ''
configureFlagsArray=(-Dldflags="-lm -lrt") configureFlagsArray=(-Dldflags="-lm -lrt")
''} ''}
''; '';
preBuild = stdenv.lib.optionalString (!(stdenv ? gcc && stdenv.gcc.nativeTools)) preBuild = optionalString (!(stdenv ? gcc && stdenv.gcc.nativeTools))
'' ''
# Make Cwd work on NixOS (where we don't have a /bin/pwd). # Make Cwd work on NixOS (where we don't have a /bin/pwd).
substituteInPlace dist/Cwd/Cwd.pm --replace "'/bin/pwd'" "'$(type -tP pwd)'" substituteInPlace dist/Cwd/Cwd.pm --replace "'/bin/pwd'" "'$(type -tP pwd)'"
@ -59,5 +64,27 @@ stdenv.mkDerivation rec {
setupHook = ./setup-hook.sh; setupHook = ./setup-hook.sh;
doCheck = !stdenv.isDarwin;
# some network-related tests don't work, mostly probably due to our sandboxing
testsToSkip = ''
lib/Net/hostent.t \
dist/IO/t/{io_multihomed.t,io_sock.t} \
t/porting/{maintainers.t,regen.t} \
cpan/Socket/t/get{name,addr}info.t \
'' + optionalString stdenv.isFreeBSD ''
cpan/CPANPLUS/t/04_CPANPLUS-Module.t \
cpan/CPANPLUS/t/20_CPANPLUS-Dist-MM.t \
'' + " ";
postPatch = optionalString (!stdenv.isDarwin) /* this failed on Darwin, no idea why */ ''
for test in ${testsToSkip}; do
echo "Removing test" $test
rm "$test"
pat=`echo "$test" | sed 's,/,\\\\/,g'` # just escape slashes
sed "/^$pat/d" -i MANIFEST
done
'';
passthru.libPrefix = "lib/perl5/site_perl"; passthru.libPrefix = "lib/perl5/site_perl";
} }

View File

@ -0,0 +1,11 @@
--- perl-5.16.2/hints/solaris_2.sh.orig 2013-02-14 19:29:49.453988140 +0000
+++ perl-5.16.2/hints/solaris_2.sh 2013-02-14 19:30:31.681631019 +0000
@@ -568,7 +568,7 @@
# ccflags="$ccflags -Wa,`getconf XBS5_LP64_OFF64_CFLAGS 2>/dev/null`"
# fi
ldflags="$ldflags -m64"
- lddlflags="$lddlflags -G -m64"
+ lddlflags="$lddlflags -shared -m64"
;;
*)
getconfccflags="`getconf XBS5_LP64_OFF64_CFLAGS 2>/dev/null`"

View File

@ -1,7 +1,8 @@
diff -ru -x '*~' perl-5.14.2-orig/Configure perl-5.14.2/Configure diff --git a/Configure b/Configure
--- perl-5.14.2-orig/Configure 2011-09-26 11:44:34.000000000 +0200 index fdbbf20..ba1fd07 100755
+++ perl-5.14.2/Configure 2012-01-20 17:05:23.089223129 +0100 --- a/Configure
@@ -106,15 +106,7 @@ +++ b/Configure
@@ -106,15 +106,7 @@ if test -d c:/. || ( uname -a | grep -i 'os\(/\|\)2' ) 2>&1 >/dev/null ; then
fi fi
: Proper PATH setting : Proper PATH setting
@ -18,7 +19,7 @@ diff -ru -x '*~' perl-5.14.2-orig/Configure perl-5.14.2/Configure
for p in $paths for p in $paths
do do
@@ -1311,8 +1303,7 @@ @@ -1323,8 +1315,7 @@ archobjs=''
archname='' archname=''
: Possible local include directories to search. : Possible local include directories to search.
: Set locincpth to "" in a hint file to defeat local include searches. : Set locincpth to "" in a hint file to defeat local include searches.
@ -28,8 +29,8 @@ diff -ru -x '*~' perl-5.14.2-orig/Configure perl-5.14.2/Configure
: :
: no include file wanted by default : no include file wanted by default
inclwanted='' inclwanted=''
@@ -1328,17 +1319,12 @@ @@ -1335,17 +1326,12 @@ DEBUGGING=''
archobjs=''
libnames='' libnames=''
: change the next line if compiling for Xenix/286 on Xenix/386 : change the next line if compiling for Xenix/286 on Xenix/386
-xlibpth='/usr/lib/386 /lib/386' -xlibpth='/usr/lib/386 /lib/386'
@ -49,7 +50,7 @@ diff -ru -x '*~' perl-5.14.2-orig/Configure perl-5.14.2/Configure
: Private path used by Configure to find libraries. Its value : Private path used by Configure to find libraries. Its value
: is prepended to libpth. This variable takes care of special : is prepended to libpth. This variable takes care of special
@@ -1371,8 +1357,6 @@ @@ -1380,8 +1366,6 @@ libswanted="sfio socket bind inet nsl nm ndbm gdbm dbm db malloc dl dld ld sun"
libswanted="$libswanted m crypt sec util c cposix posix ucb bsd BSD" libswanted="$libswanted m crypt sec util c cposix posix ucb bsd BSD"
: We probably want to search /usr/shlib before most other libraries. : We probably want to search /usr/shlib before most other libraries.
: This is only used by the lib/ExtUtils/MakeMaker.pm routine extliblist. : This is only used by the lib/ExtUtils/MakeMaker.pm routine extliblist.
@ -58,7 +59,7 @@ diff -ru -x '*~' perl-5.14.2-orig/Configure perl-5.14.2/Configure
: Do not use vfork unless overridden by a hint file. : Do not use vfork unless overridden by a hint file.
usevfork=false usevfork=false
@@ -2380,7 +2364,6 @@ @@ -2389,7 +2373,6 @@ uname
zip zip
" "
pth=`echo $PATH | sed -e "s/$p_/ /g"` pth=`echo $PATH | sed -e "s/$p_/ /g"`
@ -66,7 +67,7 @@ diff -ru -x '*~' perl-5.14.2-orig/Configure perl-5.14.2/Configure
for file in $loclist; do for file in $loclist; do
eval xxx=\$$file eval xxx=\$$file
case "$xxx" in case "$xxx" in
@@ -4785,7 +4768,7 @@ @@ -4708,7 +4691,7 @@ $rm -f testcpp.c testcpp.out
: Set private lib path : Set private lib path
case "$plibpth" in case "$plibpth" in
'') if ./mips; then '') if ./mips; then
@ -75,7 +76,7 @@ diff -ru -x '*~' perl-5.14.2-orig/Configure perl-5.14.2/Configure
fi;; fi;;
esac esac
case "$libpth" in case "$libpth" in
@@ -8390,13 +8373,8 @@ @@ -8354,13 +8337,8 @@ esac
echo " " echo " "
case "$sysman" in case "$sysman" in
'') '')
@ -91,7 +92,7 @@ diff -ru -x '*~' perl-5.14.2-orig/Configure perl-5.14.2/Configure
;; ;;
esac esac
if $test -d "$sysman"; then if $test -d "$sysman"; then
@@ -19721,9 +19699,10 @@ @@ -19742,9 +19720,10 @@ $rm_try tryp
case "$full_ar" in case "$full_ar" in
'') full_ar=$ar ;; '') full_ar=$ar ;;
esac esac
@ -103,10 +104,11 @@ diff -ru -x '*~' perl-5.14.2-orig/Configure perl-5.14.2/Configure
: see what type gids are declared as in the kernel : see what type gids are declared as in the kernel
echo " " echo " "
diff -ru -x '*~' perl-5.14.2-orig/ext/Errno/Errno_pm.PL perl-5.14.2/ext/Errno/Errno_pm.PL diff --git a/ext/Errno/Errno_pm.PL b/ext/Errno/Errno_pm.PL
--- perl-5.14.2-orig/ext/Errno/Errno_pm.PL 2011-09-26 11:44:34.000000000 +0200 index 439f254..2cdfdb0 100644
+++ perl-5.14.2/ext/Errno/Errno_pm.PL 2012-01-20 17:02:07.938138311 +0100 --- a/ext/Errno/Errno_pm.PL
@@ -137,11 +137,7 @@ +++ b/ext/Errno/Errno_pm.PL
@@ -137,11 +137,7 @@ sub get_files {
if ($dep =~ /(\S+errno\.h)/) { if ($dep =~ /(\S+errno\.h)/) {
$file{$1} = 1; $file{$1} = 1;
} }
@ -119,10 +121,11 @@ diff -ru -x '*~' perl-5.14.2-orig/ext/Errno/Errno_pm.PL perl-5.14.2/ext/Errno/Er
# Some Linuxes have weird errno.hs which generate # Some Linuxes have weird errno.hs which generate
# no #file or #line directives # no #file or #line directives
my $linux_errno_h = -e '/usr/include/errno.h' ? my $linux_errno_h = -e '/usr/include/errno.h' ?
diff -ru -x '*~' perl-5.14.2-orig/hints/freebsd.sh perl-5.14.2/hints/freebsd.sh diff --git a/hints/freebsd.sh b/hints/freebsd.sh
--- perl-5.14.2-orig/hints/freebsd.sh 2011-09-19 15:18:22.000000000 +0200 index a67c0bb..0f07ca5 100644
+++ perl-5.14.2/hints/freebsd.sh 2012-01-20 17:10:37.267924044 +0100 --- a/hints/freebsd.sh
@@ -118,21 +118,21 @@ +++ b/hints/freebsd.sh
@@ -119,21 +119,21 @@ case "$osvers" in
objformat=`/usr/bin/objformat` objformat=`/usr/bin/objformat`
if [ x$objformat = xaout ]; then if [ x$objformat = xaout ]; then
if [ -e /usr/lib/aout ]; then if [ -e /usr/lib/aout ]; then
@ -150,3 +153,73 @@ diff -ru -x '*~' perl-5.14.2-orig/hints/freebsd.sh perl-5.14.2/hints/freebsd.sh
ldflags="-Wl,-E " ldflags="-Wl,-E "
lddlflags="-shared " lddlflags="-shared "
cccdlflags='-DPIC -fPIC' cccdlflags='-DPIC -fPIC'
diff --git a/hints/linux.sh b/hints/linux.sh
index 688c68d..c12f5f5 100644
--- a/hints/linux.sh
+++ b/hints/linux.sh
@@ -60,17 +60,6 @@ libswanted="$*"
# Debian 4.0 puts ndbm in the -lgdbm_compat library.
libswanted="$libswanted gdbm_compat"
-# If you have glibc, then report the version for ./myconfig bug reporting.
-# (Configure doesn't need to know the specific version since it just uses
-# gcc to load the library for all tests.)
-# We don't use __GLIBC__ and __GLIBC_MINOR__ because they
-# are insufficiently precise to distinguish things like
-# libc-2.0.6 and libc-2.0.7.
-if test -L /lib/libc.so.6; then
- libc=`ls -l /lib/libc.so.6 | awk '{print $NF}'`
- libc=/lib/$libc
-fi
-
# Configure may fail to find lstat() since it's a static/inline
# function in <sys/stat.h>.
d_lstat=define
@@ -154,24 +143,6 @@ case "$optimize" in
;;
esac
-# Ubuntu 11.04 (and later, presumably) doesn't keep most libraries
-# (such as -lm) in /lib or /usr/lib. So we have to ask gcc to tell us
-# where to look. We don't want gcc's own libraries, however, so we
-# filter those out.
-# This could be conditional on Unbuntu, but other distributions may
-# follow suit, and this scheme seems to work even on rather old gcc's.
-# This unconditionally uses gcc because even if the user is using another
-# compiler, we still need to find the math library and friends, and I don't
-# know how other compilers will cope with that situation.
-# Morever, if the user has their own gcc earlier in $PATH than the system gcc,
-# we don't want its libraries. So we try to prefer the system gcc
-# Still, as an escape hatch, allow Configure command line overrides to
-# plibpth to bypass this check.
-if [ -x /usr/bin/gcc ] ; then
- gcc=/usr/bin/gcc
-else
- gcc=gcc
-fi
case "$plibpth" in
'') plibpth=`LANG=C LC_ALL=C $gcc -print-search-dirs | grep libraries |
@@ -345,22 +316,6 @@ sparc*)
;;
esac
-# SuSE8.2 has /usr/lib/libndbm* which are ld scripts rather than
-# true libraries. The scripts cause binding against static
-# version of -lgdbm which is a bad idea. So if we have 'nm'
-# make sure it can read the file
-# NI-S 2003/08/07
-if [ -r /usr/lib/libndbm.so -a -x /usr/bin/nm ] ; then
- if /usr/bin/nm /usr/lib/libndbm.so >/dev/null 2>&1 ; then
- echo 'Your shared -lndbm seems to be a real library.'
- else
- echo 'Your shared -lndbm is not a real library.'
- set `echo X "$libswanted "| sed -e 's/ ndbm / /'`
- shift
- libswanted="$*"
- fi
-fi
-
# This script UU/usethreads.cbu will get 'called-back' by Configure
# after it has prompted the user for whether to use threads.

View File

@ -45,7 +45,7 @@ let
C_INCLUDE_PATH = concatStringsSep ":" (map (p: "${p}/include") buildInputs); C_INCLUDE_PATH = concatStringsSep ":" (map (p: "${p}/include") buildInputs);
LIBRARY_PATH = concatStringsSep ":" (map (p: "${p}/lib") buildInputs); LIBRARY_PATH = concatStringsSep ":" (map (p: "${p}/lib") buildInputs);
configureFlags = "--enable-shared --with-threads --enable-unicode --with-wctype-functions"; configureFlags = "--enable-shared --with-threads --enable-unicode";
preConfigure = preConfigure =
'' ''

View File

@ -59,7 +59,7 @@ let
C_INCLUDE_PATH = concatStringsSep ":" (map (p: "${p}/include") buildInputs); C_INCLUDE_PATH = concatStringsSep ":" (map (p: "${p}/include") buildInputs);
LIBRARY_PATH = concatStringsSep ":" (map (p: "${p}/lib") buildInputs); LIBRARY_PATH = concatStringsSep ":" (map (p: "${p}/lib") buildInputs);
configureFlags = "--enable-shared --with-threads --enable-unicode --with-wctype-functions"; configureFlags = "--enable-shared --with-threads --enable-unicode";
preConfigure = "${ensurePurity}" + optionalString stdenv.isCygwin preConfigure = "${ensurePurity}" + optionalString stdenv.isCygwin
'' ''

View File

@ -1,11 +1,11 @@
{ stdenv, fetchurl, gettext, attr }: { stdenv, fetchurl, gettext, attr }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "acl-2.2.51"; name = "acl-2.2.52";
src = fetchurl { src = fetchurl {
url = "mirror://savannah/acl/${name}.src.tar.gz"; url = "mirror://savannah/acl/${name}.src.tar.gz";
sha256 = "09aj30m49ivycl3irram8c3givc0crivjm3ymw0nhfaxrwhlb186"; sha256 = "08qd9s3wfhv0ajswsylnfwr5h0d7j9d4rgip855nrh400nxp940p";
}; };
nativeBuildInputs = [ gettext ]; nativeBuildInputs = [ gettext ];

View File

@ -1,11 +1,11 @@
{ stdenv, fetchurl, gettext }: { stdenv, fetchurl, gettext }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "attr-2.4.46"; name = "attr-2.4.47";
src = fetchurl { src = fetchurl {
url = "mirror://savannah/attr/${name}.src.tar.gz"; url = "mirror://savannah/attr/${name}.src.tar.gz";
sha256 = "07qf6kb2zk512az481bbnsk9jycn477xpva1a726n5pzlzf9pmnw"; sha256 = "0nd8y0m6awc9ahv0ciiwf8gy54c8d3j51pw9xg7f7cn579jjyxr5";
}; };
nativeBuildInputs = [ gettext ]; nativeBuildInputs = [ gettext ];

View File

@ -1,11 +1,11 @@
{ fetchurl, stdenv, gmp, isl }: { fetchurl, stdenv, gmp, isl }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "cloog-0.16.3"; name = "cloog-0.18.0";
src = fetchurl { src = fetchurl {
url = "http://www.bastoul.net/cloog/pages/download/count.php3?url=./${name}.tar.gz"; url = "http://www.bastoul.net/cloog/pages/download/count.php3?url=./${name}.tar.gz";
sha256 = "0lzbsszfzsr0jfwkccfbsvx913d2yc45dqwa472plmxkhbwykmc9"; sha256 = "1c4aa8dde7886be9cbe0f9069c334843b21028f61d344a2d685f88cb1dcf2228";
}; };
buildInputs = [ gmp ]; buildInputs = [ gmp ];

View File

@ -9,6 +9,15 @@ stdenv.mkDerivation rec {
sha256 = "05ylhrcglm81dajbk132l1w892634z2i97x10fm64y1ih72phd2q"; sha256 = "05ylhrcglm81dajbk132l1w892634z2i97x10fm64y1ih72phd2q";
}; };
patches = [
(fetchurl {
url = http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/media-libs/coin/files/coin-3.1.3-gcc-4.7.patch;
name = "gcc-4.7.patch";
sha256 = "076dyc52swk8qc7ylps53fg6iqmd52x8s7m18i80x49dd109yw20";
})
./gcc-4.8.patch # taken from FC-17 source rpm
];
buildInputs = [ mesa ]; buildInputs = [ mesa ];
meta = { meta = {

View File

@ -0,0 +1,38 @@
From 9f5d96a2b9a71ab539237d2dab4c54fc46fc5c5b Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Ralf=20Cors=C3=A9pius?= <corsepiu@corsepiu.home>
Date: Thu, 18 Apr 2013 19:17:06 +0200
Subject: [PATCH 10/10] GCC-4.8.0 fixes
---
src/fonts/freetype.cpp | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/src/fonts/freetype.cpp b/src/fonts/freetype.cpp
index 760b88b..e705d3a 100644
--- a/src/fonts/freetype.cpp
+++ b/src/fonts/freetype.cpp
@@ -32,18 +32,18 @@
20050613 mortene. */
-#include "fonts/freetype.h"
-
#ifdef HAVE_CONFIG_H
#include "config.h"
#endif /* HAVE_CONFIG_H */
-#include <stdlib.h>
+#include <cstdlib>
#include <assert.h>
#include "glue/freetype.h"
#include "glue/GLUWrapper.h"
+#include "fonts/freetype.h"
+
/* ************************************************************************* */
#ifdef __cplusplus
--
1.8.1.4

View File

@ -8,7 +8,7 @@ stdenv.mkDerivation {
sha256 = "16lzgbpxdyhykdwndj1i9vx3h4bfkxqqcrvasvgg70gb5raxj0mj"; sha256 = "16lzgbpxdyhykdwndj1i9vx3h4bfkxqqcrvasvgg70gb5raxj0mj";
}; };
patches = [ ./patch.patch ]; patches = [ ./patch.patch ./gcc47.patch ];
propagatedBuildInputs = [ ilmbase ]; propagatedBuildInputs = [ ilmbase ];

View File

@ -0,0 +1,15 @@
https://bugs.gentoo.org/426368
IlmCtl/CtlInterpreter.cpp | 1 +
1 file changed, 1 insertion(+)
--- a/IlmCtl/CtlInterpreter.cpp
+++ b/IlmCtl/CtlInterpreter.cpp
@@ -64,6 +64,7 @@
#include <fstream>
#include <algorithm>
#include <cassert>
+#include <unistd.h>
#ifdef WIN32
#include <io.h>

View File

@ -10,6 +10,12 @@ stdenv.mkDerivation rec {
sha256 = "0qafmy2i6dzx4n1dqp6pygyy6gjljnb7hwjcj2z11c1wgclsq4dw"; sha256 = "0qafmy2i6dzx4n1dqp6pygyy6gjljnb7hwjcj2z11c1wgclsq4dw";
}; };
patches = [( fetchurl {
url = http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/dev-libs/dbus-c%2B%2B/files/dbus-c%2B%2B-0.9.0-gcc-4.7.patch;
name = "gcc-4.7.patch";
sha256 = "0rwcz9pvc13b3yfr0lkifnfz0vb5q6dg240bzgf37ni4s8rpc72g";
})];
buildInputs = [ dbus glib gtkmm pkgconfig expat ]; buildInputs = [ dbus glib gtkmm pkgconfig expat ];
configureFlags = "--disable-ecore"; configureFlags = "--disable-ecore";

View File

@ -1,19 +1,17 @@
{ stdenv, fetchurl, libiconvOrEmpty }: { stdenv, fetchurl, libiconv, xz }:
with { inherit (stdenv.lib) optionals optionalAttrs; };
stdenv.mkDerivation (rec { stdenv.mkDerivation (rec {
name = "gettext-0.18.1.1"; name = "gettext-0.18.2";
src = fetchurl { src = fetchurl {
url = "mirror://gnu/gettext/${name}.tar.gz"; url = "mirror://gnu/gettext/${name}.tar.gz";
sha256 = "1sa3ch12qxa4h3ya6hkz119yclcccmincl9j20dhrdx5mykp3b4k"; sha256 = "516a6370b3b3f46e2fc5a5e222ff5ecd76f3089bc956a7587a6e4f89de17714c";
}; };
patches = [ ./no-gets.patch ]; LDFLAGS = if stdenv.isSunOS then "-lm -lmd -lmp -luutil -lnvpair -lnsl -lidmap -lavl -lsec" else "";
configureFlags = [ "--disable-csharp" ] configureFlags = [ "--disable-csharp" "--with-xz" ]
++ (optionals stdenv.isCygwin ++ (stdenv.lib.optionals stdenv.isCygwin
[ # We have a static libiconv, so we can only build the static lib. [ # We have a static libiconv, so we can only build the static lib.
"--disable-shared" "--enable-static" "--disable-shared" "--enable-static"
@ -32,12 +30,12 @@ stdenv.mkDerivation (rec {
fi fi
''; '';
buildInputs = libiconvOrEmpty; buildInputs = [ xz ] ++ stdenv.lib.optional (!stdenv.isLinux) libiconv;
enableParallelBuilding = true; enableParallelBuilding = true;
crossAttrs = { crossAttrs = {
buildInputs = optional (stdenv.gccCross.libc ? libiconv) buildInputs = stdenv.lib.optional (stdenv.gccCross.libc ? libiconv)
stdenv.gccCross.libc.libiconv.crossDrv; stdenv.gccCross.libc.libiconv.crossDrv;
# Gettext fails to guess the cross compiler # Gettext fails to guess the cross compiler
configureFlags = "CXX=${stdenv.cross.config}-g++"; configureFlags = "CXX=${stdenv.cross.config}-g++";
@ -72,11 +70,11 @@ stdenv.mkDerivation (rec {
}; };
} }
// optionalAttrs stdenv.isDarwin { // stdenv.lib.optionalAttrs stdenv.isDarwin {
makeFlags = "CFLAGS=-D_FORTIFY_SOURCE=0"; makeFlags = "CFLAGS=-D_FORTIFY_SOURCE=0";
} }
// optionalAttrs stdenv.isCygwin { // stdenv.lib.optionalAttrs stdenv.isCygwin {
patchPhase = patchPhase =
# Make sure `error.c' gets compiled and is part of `libgettextlib.la'. # Make sure `error.c' gets compiled and is part of `libgettextlib.la'.
# This fixes: # This fixes:

View File

@ -1,42 +0,0 @@
hack until gzip pulls a newer gnulib version
From 66712c23388e93e5c518ebc8515140fa0c807348 Mon Sep 17 00:00:00 2001
From: Eric Blake <eblake@redhat.com>
Date: Thu, 29 Mar 2012 13:30:41 -0600
Subject: [PATCH] stdio: don't assume gets any more
Gnulib intentionally does not have a gets module, and now that C11
and glibc have dropped it, we should be more proactive about warning
any user on a platform that still has a declaration of this dangerous
interface.
--- a/gettext-tools/libgettextpo/stdio.in.h
+++ b/gettext-tools/libgettextpo/stdio.in.h
@@ -125,7 +125,6 @@
so any use of gets warrants an unconditional warning. Assume it is
always declared, since it is required by C89. */
#undef gets
-_GL_WARN_ON_USE (gets, "gets is a security hole - use fgets instead");
#if @GNULIB_FOPEN@
# if @REPLACE_FOPEN@
--- a/gettext-tools/gnulib-lib/stdio.in.h
+++ b/gettext-tools/gnulib-lib/stdio.in.h
@@ -125,7 +125,6 @@
so any use of gets warrants an unconditional warning. Assume it is
always declared, since it is required by C89. */
#undef gets
-_GL_WARN_ON_USE (gets, "gets is a security hole - use fgets instead");
#if @GNULIB_FOPEN@
# if @REPLACE_FOPEN@
--- a/gettext-runtime/gnulib-lib/stdio.in.h
+++ b/gettext-runtime/gnulib-lib/stdio.in.h
@@ -125,7 +125,6 @@
so any use of gets warrants an unconditional warning. Assume it is
always declared, since it is required by C89. */
#undef gets
-_GL_WARN_ON_USE (gets, "gets is a security hole - use fgets instead");
#if @GNULIB_FOPEN@
# if @REPLACE_FOPEN@

View File

@ -54,7 +54,10 @@ stdenv.mkDerivation rec {
propagatedBuildInputs = [ pcre zlib libffi ] ++ libiconvOrEmpty ++ libintlOrEmpty; propagatedBuildInputs = [ pcre zlib libffi ] ++ libiconvOrEmpty ++ libintlOrEmpty;
preConfigure = "autoreconf -fi"; preConfigure = "autoreconf -fi";
configureFlags = "--with-pcre=system --disable-fam";
configureFlags = stdenv.lib.optional stdenv.isSunOS "--disable-modular-tests";
CPPFLAGS = stdenv.lib.optionalString stdenv.isSunOS "-DBSD_COMP";
NIX_CFLAGS_COMPILE = optionalString stdenv.isDarwin "-lintl"; NIX_CFLAGS_COMPILE = optionalString stdenv.isDarwin "-lintl";

View File

@ -56,14 +56,20 @@ stdenv.mkDerivation ({
./scanf.patch ./scanf.patch
/* The command "getconf CS_PATH" returns the default search path
"/bin:/usr/bin", which is inappropriate on NixOS machines. This
patch extends the search path by "/run/current-system/sw/bin". */
./fix_path_attribute_in_getconf.patch
./cve-2012-4412+4424.patch ./cve-2012-4412+4424.patch
./cve-2013-4237.patch ./cve-2013-4237.patch
./cve-2013-4332.patch ./cve-2013-4332.patch
./cve-2013-4458.patch ./cve-2013-4458.patch
./cve-2013-4788.patch ./cve-2013-4788.patch
]
# the problem only seems to affect i686, so avoid re-hash x86_64 ATM ./strstr-sse42-hack.patch
++ stdenv.lib.optional stdenv.isi686 ./strstr-sse42-hack.patch; ];
postPatch = '' postPatch = ''
# Needed for glibc to build with the gnumake 3.82 # Needed for glibc to build with the gnumake 3.82

View File

@ -0,0 +1,6 @@
diff -ubr glibc-2.17-orig/sysdeps/unix/confstr.h glibc-2.17/sysdeps/unix/confstr.h
--- glibc-2.17-orig/sysdeps/unix/confstr.h 2013-06-03 22:01:44.829726968 +0200
+++ glibc-2.17/sysdeps/unix/confstr.h 2013-06-03 22:04:39.469376740 +0200
@@ -1 +1 @@
-#define CS_PATH "/bin:/usr/bin"
+#define CS_PATH "/run/current-system/sw/bin:/bin:/usr/bin"

View File

@ -23,7 +23,9 @@ stdenv.mkDerivation rec {
configureFlags = if cxx then "--enable-cxx" else "--disable-cxx"; configureFlags = if cxx then "--enable-cxx" else "--disable-cxx";
doCheck = true; # The test t-lucnum_ui fails (on Linux/x86_64) when built with GCC 4.8.
# Newer versions of GMP don't have that issue anymore.
doCheck = false;
meta = { meta = {
description = "GMP, the GNU multiple precision arithmetic library"; description = "GMP, the GNU multiple precision arithmetic library";

View File

@ -3,7 +3,7 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "gmp-5.1.3"; name = "gmp-5.1.3";
src = fetchurl { src = fetchurl { # we need to use bz2, others aren't in bootstrapping stdenv
urls = [ "mirror://gnu/gmp/${name}.tar.bz2" "ftp://ftp.gmplib.org/pub/${name}/${name}.tar.bz2" ]; urls = [ "mirror://gnu/gmp/${name}.tar.bz2" "ftp://ftp.gmplib.org/pub/${name}/${name}.tar.bz2" ];
sha256 = "0q5i39pxrasgn9qdxzpfbwhh11ph80p57x6hf48m74261d97j83m"; sha256 = "0q5i39pxrasgn9qdxzpfbwhh11ph80p57x6hf48m74261d97j83m";
}; };
@ -15,7 +15,8 @@ stdenv.mkDerivation rec {
# (x86), except on Solaris where some tests crash with "Memory fault". # (x86), except on Solaris where some tests crash with "Memory fault".
# See <http://hydra.nixos.org/build/2760931>, for instance. # See <http://hydra.nixos.org/build/2760931>, for instance.
(stdenv.lib.optional (!stdenv.isSunOS) "--enable-fat") (stdenv.lib.optional (!stdenv.isSunOS) "--enable-fat")
++ (if cxx then [ "--enable-cxx" ] else [ "--disable-cxx" ]); ++ (if cxx then [ "--enable-cxx" ] else [ "--disable-cxx" ])
++ (if stdenv.is64bit then [ "--with-pic" ] else []);
doCheck = true; doCheck = true;

View File

@ -19,8 +19,8 @@ let version = "3.0u"; in stdenv.mkDerivation {
platforms = ["x86_64-linux" "i686-linux"]; platforms = ["x86_64-linux" "i686-linux"];
}; };
buildFlags = [ makeFlags = [
"CC=cc" "CC=gcc"
"AS=as" "AS=as"
"LD=ld" "LD=ld"
"AR=ar" "AR=ar"
@ -29,12 +29,12 @@ let version = "3.0u"; in stdenv.mkDerivation {
]; ];
buildPhase = '' buildPhase = ''
make $buildFlags make $makeFlags
make $buildFlags -C apps clean all make $makeFlags -C apps clean all
''; '';
installPhase = '' installPhase = ''
make PREFIX="$out" install make PREFIX="$out" $makeFlags install
mkdir -pv $out/share/gnu-efi mkdir -pv $out/share/gnu-efi
install -D -m644 apps/*.efi $out/share/gnu-efi install -D -m644 apps/*.efi $out/share/gnu-efi
''; '';

View File

@ -8,6 +8,10 @@ stdenv.mkDerivation rec {
sha256 = "18qf6jzz1r3mzb5qynywv4xx3z9g61hgkbpkdrhbgqh2g7jhgfc5"; sha256 = "18qf6jzz1r3mzb5qynywv4xx3z9g61hgkbpkdrhbgqh2g7jhgfc5";
}; };
# ToDo: there might be more impurities than FMA support check
patches = [ ./disable-fma.patch ]; # http://lists.gnu.org/archive/html/bug-gsl/2011-11/msg00019.html
patchFlags = "-p0";
doCheck = true; doCheck = true;
meta = { meta = {

View File

@ -0,0 +1,32 @@
--- configure.ac 2011-09-22 16:13:22 +0000
+++ configure.ac 2011-11-26 23:55:24 +0000
@@ -381,6 +381,28 @@
AC_SUBST(HAVE_DARWIN_IEEE_INTERFACE)
AC_SUBST(HAVE_DARWIN86_IEEE_INTERFACE)
+dnl check for compiler flags to disable use of FMA
+save_cflags="$CFLAGS"
+AC_CACHE_CHECK([for compiler flags to disable use of FMA], ac_cv_c_fma_flags,
+[
+if test X"$GCC" = Xyes; then
+ fma_flags='-ffp-contract=off'
+else
+ fma_flags=
+fi
+if test X"$fma_flags" != X; then
+ CFLAGS="$fma_flags $CFLAGS"
+ AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[int foo;]])],[ac_cv_c_fma_flags="$fma_flags"],[ac_cv_c_fma_flags="none"])
+else
+ ac_cv_c_fma_flags="none"
+fi])
+
+if test "$ac_cv_c_fma_flags" != "none" ; then
+ CFLAGS="$ac_cv_c_fma_flags $save_cflags"
+else
+ CFLAGS="$save_cflags"
+fi
+
dnl Check for IEEE control flags
save_cflags="$CFLAGS"

View File

@ -3,16 +3,14 @@
let let
pname = "icu4c"; pname = "icu4c";
ver_maj = "52"; version = "52.1";
ver_min = "1";
version = "${ver_maj}.${ver_min}";
in in
stdenv.mkDerivation { stdenv.mkDerivation {
name = pname + "-" + version; name = pname + "-" + version;
src = fetchurl { src = fetchurl {
url = "http://download.icu-project.org/files/icu4c/${version}/icu4c-${ver_maj}_${ver_min}-src.tgz"; url = "http://download.icu-project.org/files/${pname}/${version}/${pname}-"
+ (stdenv.lib.replaceChars ["."] ["_"] version) + "-src.tgz";
sha256 = "14l0kl17nirc34frcybzg0snknaks23abhdxkmsqg3k9sil5wk9g"; sha256 = "14l0kl17nirc34frcybzg0snknaks23abhdxkmsqg3k9sil5wk9g";
}; };

View File

@ -1,17 +1,15 @@
{ stdenv, fetchurl, gmp }: { stdenv, fetchurl, gmp }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "isl-0.07"; # CLooG 0.16.3 fails to build with ISL 0.08. name = "isl-0.11.1"; # CLooG 0.16.3 fails to build with ISL 0.08.
src = fetchurl { src = fetchurl {
urls = [ url = "http://pkgs.fedoraproject.org/repo/pkgs/gcc/isl-0.11.1.tar.bz2/bce1586384d8635a76d2f017fb067cd2/isl-0.11.1.tar.bz2";
"http://www.kotnet.org/~skimo/isl/${name}.tar.bz2" sha256 = "13d9cqa5rzhbjq0xf0b2dyxag7pqa72xj9dhsa03m8ccr1a4npq9";
"ftp://ftp.linux.student.kuleuven.be/pub/people/skimo/isl/${name}.tar.bz2"
];
sha256 = "0kpxmvhrwwdygqqafqzjf9xiksq7paac2x24g9jhr3f9ajj3zkyx";
}; };
buildInputs = [ gmp ]; buildInputs = [ gmp ];
patches = [ ./fix-gcc-build.diff ];
meta = { meta = {
homepage = http://www.kotnet.org/~skimo/isl/; homepage = http://www.kotnet.org/~skimo/isl/;

View File

@ -0,0 +1,12 @@
diff -ru isl-0.11.1/include/isl/int.h isl-0.11.1.new/include/isl/int.h
--- isl-0.11.1/include/isl/int.h 2012-11-29 09:47:32.000000000 +0100
+++ isl-0.11.1.new/include/isl/int.h 2013-10-27 15:35:31.348553812 +0100
@@ -14,7 +14,7 @@
#include <string.h>
#include <gmp.h>
#if defined(__cplusplus)
-#include <iostream>
+#include <ostream>
#endif
#if defined(__cplusplus)

View File

@ -23,6 +23,8 @@ stdenv.mkDerivation (rec {
cd ${name}/src cd ${name}/src
''; '';
#doCheck = true; # report: No suitable file for testing purposes
enableParallelBuilding = true; enableParallelBuilding = true;
meta = { meta = {

View File

@ -2,11 +2,11 @@
, sharutils }: , sharutils }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "libarchive-3.0.4"; name = "libarchive-3.1.2";
src = fetchurl { src = fetchurl {
url = "https://github.com/downloads/libarchive/libarchive/${name}.tar.gz"; url = "${meta.homepage}/downloads/${name}.tar.gz";
sha256 = "76e8d7c7b100ec4071e48c1b7d3f3ea1d22b39db3e45b7189f75b5ff4df90fac"; sha256 = "0pixqnrcf35dnqgv0lp7qlcw7k13620qkhgxr288v7p4iz6ym1zb";
}; };
buildInputs = [ sharutils libxml2 zlib bzip2 openssl xz ] ++ buildInputs = [ sharutils libxml2 zlib bzip2 openssl xz ] ++
@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
compressions formats including (but not limited to) tar, shar, cpio, zip, and compressions formats including (but not limited to) tar, shar, cpio, zip, and
compressed with gzip, bzip2, lzma, xz, .. compressed with gzip, bzip2, lzma, xz, ..
''; '';
homepage = http://libarchive.github.com/; homepage = http://libarchive.org;
license = stdenv.lib.licenses.bsd3; license = stdenv.lib.licenses.bsd3;
platforms = with stdenv.lib.platforms; all; platforms = with stdenv.lib.platforms; all;
maintainers = with stdenv.lib.maintainers; [ jcumming ]; maintainers = with stdenv.lib.maintainers; [ jcumming ];

View File

@ -1,4 +1,4 @@
{ stdenv, fetchurl, fetchsvn, cmake, libcxxabi }: { stdenv, fetchurl, fetchsvn, cmake, libcxxabi, python }:
let let
version = "3.4"; version = "3.4";
@ -11,7 +11,7 @@ in stdenv.mkDerivation rec {
sha256 = "1sqd5qhqj7qnn9zjxx9bv7ky4f7xgmh9sbgd53y1kszhg41217xx"; sha256 = "1sqd5qhqj7qnn9zjxx9bv7ky4f7xgmh9sbgd53y1kszhg41217xx";
}; };
buildInputs = [ cmake libcxxabi ]; buildInputs = [ cmake libcxxabi python ];
cmakeFlags = [ "-DCMAKE_BUILD_TYPE=Release" cmakeFlags = [ "-DCMAKE_BUILD_TYPE=Release"
"-DLIBCXX_LIBCXXABI_INCLUDE_PATHS=${libcxxabi}/include" "-DLIBCXX_LIBCXXABI_INCLUDE_PATHS=${libcxxabi}/include"

View File

@ -10,7 +10,7 @@ stdenv.mkDerivation (rec {
propagatedBuildInputs = [ libgpgerror ]; propagatedBuildInputs = [ libgpgerror ];
doCheck = true; doCheck = stdenv.system != "i686-linux"; # "basic" test fails after stdenv+glibc-2.18
# For some reason the tests don't find `libgpg-error.so'. # For some reason the tests don't find `libgpg-error.so'.
checkPhase = '' checkPhase = ''

View File

@ -6,5 +6,6 @@ stdenv.mkDerivation rec {
url = "mirror://sourceforge/libmsn/${name}.tar.bz2"; url = "mirror://sourceforge/libmsn/${name}.tar.bz2";
sha256 = "338369c7455b123e84b9a7a858ac0ed2b1dc32e6529f460fdc01d28869a20fde"; sha256 = "338369c7455b123e84b9a7a858ac0ed2b1dc32e6529f460fdc01d28869a20fde";
}; };
patches = [ ./fix-ftbfs-gcc4.7.diff ];
buildInputs = [ cmake openssl ]; buildInputs = [ cmake openssl ];
} }

View File

@ -0,0 +1,16 @@
Fix g++ 4.7 build failure
Kudos to Matthias Klose for the patch
Index: libmsn-4.2/msn/util.cpp
===================================================================
--- libmsn-4.2.orig/msn/util.cpp 2009-07-22 19:57:10.000000000 +0000
+++ libmsn-4.2/msn/util.cpp 2012-04-16 20:52:18.068767213 +0000
@@ -25,6 +25,7 @@
#include <msn/util.h>
#include <sstream>
#include <errno.h>
+#include <unistd.h>
#include <cctype>
#include <fstream>
#include <openssl/rand.h>

View File

@ -1,13 +0,0 @@
diff -rc libofa-0.9.3/examples/protocol.cpp libofa-0.9.3-new/examples/protocol.cpp
*** libofa-0.9.3/examples/protocol.cpp 2006-05-10 14:05:42.000000000 -0400
--- libofa-0.9.3-new/examples/protocol.cpp 2011-11-06 09:24:05.653283203 -0500
***************
*** 12,18 ****
#include <map>
#include <expat.h>
#include <curl/curl.h>
- #include <curl/types.h>
#include <curl/easy.h>
using namespace std;
--- 12,17 ----

View File

@ -1,17 +1,24 @@
{ stdenv, fetchurl, expat, curl, fftw }: { stdenv, fetchurl, expat, curl, fftw }:
let
version = "0.9.3";
deb_patch = "5";
in
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "libofa-0.9.3"; name = "libofa-${version}";
propagatedBuildInputs = [ expat curl fftw ];
patches = [ ./libofa-0.9.3-gcc-4.patch ./libofa-0.9.3-gcc-4.3.patch ./gcc-4.x.patch ./curl-types.patch ];
src = fetchurl { src = fetchurl {
url = "http://musicip-libofa.googlecode.com/files/${name}.tar.gz"; url = "http://musicip-libofa.googlecode.com/files/${name}.tar.gz";
sha256 = "184ham039l7lwhfgg0xr2vch2xnw1lwh7sid432mh879adhlc5h2"; sha256 = "184ham039l7lwhfgg0xr2vch2xnw1lwh7sid432mh879adhlc5h2";
}; };
patches = fetchurl {
url = "mirror://debian/pool/main/libo/libofa/libofa_${version}-${deb_patch}.debian.tar.gz";
sha256 = "1rfkyz13cm8izm90c1xflp4rvsa24aqs6qpbbbqqcbmvzsj6j9yn";
};
propagatedBuildInputs = [ expat curl fftw ];
meta = { meta = {
homepage = http://code.google.com/musicip-libofa/; homepage = http://code.google.com/musicip-libofa/;
description = "LibOFA - Library Open Fingerprint Architecture"; description = "LibOFA - Library Open Fingerprint Architecture";

View File

@ -1,12 +0,0 @@
diff --git a/examples/example.cpp b/examples/example.cpp
index ef978d5..7d58a0f 100644
--- a/examples/example.cpp
+++ b/examples/example.cpp
@@ -10,6 +10,7 @@
#include "protocol.h"
#include <string.h>
+#include <stdio.h>
AudioData* loadWaveFile(char *file);
AudioData* loadDataUsingLAME(char *file);

View File

@ -1,36 +0,0 @@
Fix build with gcc >=4.3
diff -ur libofa-0.9.3.orig/examples/example.cpp libofa-0.9.3/examples/example.cpp
--- libofa-0.9.3.orig/examples/example.cpp 2006-05-10 21:05:37.000000000 +0300
+++ libofa-0.9.3/examples/example.cpp 2008-04-16 15:51:49.000000000 +0300
@@ -9,6 +9,8 @@
#include "protocol.h"
+#include <string.h>
+
AudioData* loadWaveFile(char *file);
AudioData* loadDataUsingLAME(char *file);
Vain hakemistossa libofa-0.9.3/examples: example.cpp.orig
diff -ur libofa-0.9.3.orig/examples/protocol.cpp libofa-0.9.3/examples/protocol.cpp
--- libofa-0.9.3.orig/examples/protocol.cpp 2006-05-10 21:05:42.000000000 +0300
+++ libofa-0.9.3/examples/protocol.cpp 2008-04-16 15:51:49.000000000 +0300
@@ -8,6 +8,7 @@
-------------------------------------------------------------------*/
#include <stdio.h>
#include <stdlib.h>
+#include <cstring>
#include <string>
#include <map>
#include <expat.h>
diff -ur libofa-0.9.3.orig/lib/signal_op.cpp libofa-0.9.3/lib/signal_op.cpp
--- libofa-0.9.3.orig/lib/signal_op.cpp 2006-05-10 21:01:12.000000000 +0300
+++ libofa-0.9.3/lib/signal_op.cpp 2008-04-16 15:51:49.000000000 +0300
@@ -12,6 +12,7 @@
// DATE CREATED: 1/12/06
+#include <cstdlib>
#include <math.h>
#include "signal_op.h"
#include "AFLIB/aflibConverter.h"

View File

@ -1,39 +0,0 @@
--- a/lib/JAMA/tnt_math_utils.h 2006-06-17 01:46:22.000000000 +0300
+++ b/lib/JAMA/tnt_math_utils.h 2006-06-17 01:47:02.000000000 +0300
@@ -20,11 +20,20 @@
namespace TNT
{
/**
+ @returns the absolute value of a real (no-complex) scalar.
+*/
+template <class Real>
+Real abs(const Real &a)
+{
+ return (a > 0 ? a : -a);
+}
+/**
@returns hypotenuse of real (non-complex) scalars a and b by
avoiding underflow/overflow
using (a * sqrt( 1 + (b/a) * (b/a))), rather than
sqrt(a*a + b*b).
*/
+
template <class Real>
Real hypot(const Real &a, const Real &b)
{
@@ -56,15 +65,6 @@
}
*/
-/**
- @returns the absolute value of a real (no-complex) scalar.
-*/
-template <class Real>
-Real abs(const Real &a)
-{
- return (a > 0 ? a : -a);
-}
-
}
#endif
/* MATH_UTILS_H */

View File

@ -1,4 +1,4 @@
{stdenv, fetchurl, cmake, zlib}: { stdenv, fetchurl, pkgconfig, cmake, zlib, glib }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "libproxy-0.4.11"; name = "libproxy-0.4.11";
@ -6,5 +6,9 @@ stdenv.mkDerivation rec {
url = "http://libproxy.googlecode.com/files/${name}.tar.gz"; url = "http://libproxy.googlecode.com/files/${name}.tar.gz";
sha256 = "0jw6454gxjykmbnbh544axi8hzz9gmm4jz1y5gw1hdqnakg36gyw"; sha256 = "0jw6454gxjykmbnbh544axi8hzz9gmm4jz1y5gw1hdqnakg36gyw";
}; };
buildInputs = [cmake zlib];
nativeBuildInputs = [ pkgconfig cmake ];
propagatedBuildInputs = [ zlib ]
# now some optional deps, but many more are possible
++ [ glib ];
} }

View File

@ -41,7 +41,7 @@ stdenv.mkDerivation (rec {
preInstall = ''substituteInPlace python/libxml2mod.la --replace "${python}" "$out"''; preInstall = ''substituteInPlace python/libxml2mod.la --replace "${python}" "$out"'';
installFlags = ''pythondir="$(out)/lib/${python.libPrefix}/site-packages"''; installFlags = ''pythondir="$(out)/lib/${python.libPrefix}/site-packages"'';
} // stdenv.lib.optionalAttrs (!pythonSupport && stdenv.isFreeBSD) { } // stdenv.lib.optionalAttrs (!pythonSupport) {
configureFlags = "--with-python=no"; # otherwise build impurity bites us configureFlags = "--with-python=no"; # otherwise build impurity bites us
}) })

View File

@ -1,6 +1,6 @@
{ stdenv, fetchurl, libxml2 }: { stdenv, fetchurl, libxml2 }:
stdenv.mkDerivation (rec { stdenv.mkDerivation rec {
name = "libxslt-1.1.28"; name = "libxslt-1.1.28";
src = fetchurl { src = fetchurl {
@ -10,6 +10,17 @@ stdenv.mkDerivation (rec {
buildInputs = [ libxml2 ]; buildInputs = [ libxml2 ];
patches = stdenv.lib.optionals stdenv.isSunOS [ ./patch-ah.patch ];
configureFlags = [
"--with-libxml-prefix=${libxml2}"
"--without-python"
"--without-crypto"
"--without-debug"
"--without-mem-debug"
"--without-debugger"
];
postInstall = '' postInstall = ''
mkdir -p $out/nix-support mkdir -p $out/nix-support
ln -s ${libxml2}/nix-support/setup-hook $out/nix-support/ ln -s ${libxml2}/nix-support/setup-hook $out/nix-support/
@ -22,15 +33,4 @@ stdenv.mkDerivation (rec {
platforms = stdenv.lib.platforms.unix; platforms = stdenv.lib.platforms.unix;
maintainers = [ stdenv.lib.maintainers.eelco ]; maintainers = [ stdenv.lib.maintainers.eelco ];
}; };
} // (if !stdenv.isFreeBSD then {} else { }
buildInputs = [];
configureFlags = [
"--with-libxml-prefix=${libxml2}"
"--without-python"
"--without-crypto"
"--without-debug"
"--without-mem-debug"
"--without-debugger"
];
}))

View File

@ -0,0 +1,69 @@
$NetBSD: patch-ah,v 1.3 2012/11/27 12:17:51 adam Exp $
Fix syms file for stricter solaris ld
--- libxslt-1.1.28/libxslt/libxslt.syms.orig 2012-11-27 12:04:43.000000000 +0000
+++ libxslt-1.1.28/libxslt/libxslt.syms
@@ -107,7 +107,7 @@ LIBXML2_1.0.11 {
xsltFreeCompMatchList;
xsltFreeTemplateHashes;
xsltGetTemplate;
- xsltMatchPattern;
+# xsltMatchPattern;
xsltTestCompMatchList;
# preproc
@@ -407,7 +407,7 @@ LIBXML2_1.1.18 {
global:
# xsltInternals
- xsltConstNamespaceNameXSLT; # variable
+# xsltConstNamespaceNameXSLT; # variable
xsltExtensionInstructionResultFinalize;
xsltExtensionInstructionResultRegister;
xsltInitCtxtKey;
@@ -416,24 +416,24 @@ LIBXML2_1.1.18 {
xsltInit;
# xsltInternals
- xsltParseAnyXSLTElem;
- xsltParseSequenceConstructor;
- xsltPointerListAddSize;
- xsltPointerListClear;
- xsltPointerListCreate;
- xsltPointerListFree;
+# xsltParseAnyXSLTElem;
+# xsltParseSequenceConstructor;
+# xsltPointerListAddSize;
+# xsltPointerListClear;
+# xsltPointerListCreate;
+# xsltPointerListFree;
xsltRegisterLocalRVT;
xsltReleaseRVT;
- xsltRestoreDocumentNamespaces;
+# xsltRestoreDocumentNamespaces;
# extensions
- xsltStyleStylesheetLevelGetExtData;
+# xsltStyleStylesheetLevelGetExtData;
# xsltInternals
# xsltTransStorageAdd; removed in 1.1.28
# xsltTransStorageRemove; removed in 1.1.28
xsltUninit;
- xsltXSLTAttrMarker; # variable
+# xsltXSLTAttrMarker; # variable
} LIBXML2_1.1.9;
LIBXML2_1.1.20 {
@@ -476,6 +476,10 @@ LIBXML2_1.1.26 {
# transform
xsltProcessOneNode;
+
+# Solaris ld needs explicit auto-reduction (or, alternatively, "-B local")
+ local:
+ *;
} LIBXML2_1.1.25;
LIBXML2_1.1.27 {

View File

@ -1,11 +1,11 @@
{ fetchurl, stdenv, gmp, mpfr }: { fetchurl, stdenv, gmp, mpfr }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "mpc-0.9"; name = "mpc-1.0.1";
src = fetchurl { src = fetchurl {
url = "http://www.multiprecision.org/mpc/download/${name}.tar.gz"; url = "http://www.multiprecision.org/mpc/download/${name}.tar.gz";
sha1 = "229722d553030734d49731844abfef7617b64f1a"; sha1 = "vxg0rkyn4cs40wr2cp6bbcyr1nnijzlc";
}; };
buildInputs = [ gmp mpfr ]; buildInputs = [ gmp mpfr ];

Some files were not shown because too many files have changed in this diff Show More