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:
commit
668310a2b5
|
@ -14,6 +14,11 @@ stdenv.mkDerivation rec {
|
|||
url = "http://code.soundsoftware.ac.uk/attachments/download/194/${name}.tar.gz";
|
||||
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 =
|
||||
[ libsndfile qt4 fftw /* should be fftw3f ??*/ bzip2 librdf rubberband
|
||||
|
|
|
@ -1,11 +1,11 @@
|
|||
{ fetchurl, stdenv }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "ed-1.7";
|
||||
name = "ed-1.9";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://gnu/ed/${name}.tar.gz";
|
||||
sha256 = "0c908wb5pm48rjrrfbm5dhrqzys8f1dbvi90dn0vgwjzk80l2hl9";
|
||||
sha256 = "122syihsx2hwzj75mkf5a9ssiky2xby748kp4cc00wzhmp7p5cym";
|
||||
};
|
||||
|
||||
/* FIXME: Tests currently fail on Darwin:
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
{ clangStdenv, fetchgit, llvmFull }:
|
||||
{ clangStdenv, fetchgit, llvm, clang }:
|
||||
|
||||
clangStdenv.mkDerivation {
|
||||
name = "emacs-clang-complete-async-20130218";
|
||||
|
@ -8,7 +8,7 @@ clangStdenv.mkDerivation {
|
|||
sha256 = "1c8zqi6axbsb951azz9iqx3j52j30nd9ypv396hvids3g02cirrf";
|
||||
};
|
||||
|
||||
buildInputs = [ llvmFull ];
|
||||
buildInputs = [ llvm clang.clang ];
|
||||
|
||||
installPhase = ''
|
||||
mkdir -p $out/bin
|
||||
|
|
|
@ -13,6 +13,10 @@ stdenv.mkDerivation rec {
|
|||
|
||||
patches = [ ./configure-python-libs.patch ];
|
||||
|
||||
postPatch = ''
|
||||
patch -p0 < ${./spuriouscomma.patch}
|
||||
'';
|
||||
|
||||
propagatedBuildInputs = [
|
||||
# Python is used at run-time to execute scripts, e.g., those from
|
||||
# the "Effects" menu.
|
||||
|
|
|
@ -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;
|
||||
|
|
@ -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);
|
|
@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
|
|||
|
||||
preConfigure = ''
|
||||
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 = [
|
||||
|
|
|
@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
|
|||
cd ${name}-src
|
||||
tar xf ${src}
|
||||
'';
|
||||
patches = [ ./goldendict-paths.diff ];
|
||||
patches = [ ./goldendict-paths.diff ./gcc47.patch ];
|
||||
patchFlags = "-p 0";
|
||||
configurePhase = ''
|
||||
qmake
|
||||
|
|
|
@ -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
|
||||
|
|
@ -7,6 +7,7 @@ stdenv.mkDerivation rec {
|
|||
sha256 = "1q1m4cjzz2m41pdpxnwrsiczc7990785b700lv64midjjgjnr7j6";
|
||||
};
|
||||
buildInputs = [ gettext kdelibs kde_baseapps ];
|
||||
NIX_CFLAGS_COMPILE = "-fpermissive"; # fix build with newer gcc versions
|
||||
meta = {
|
||||
description = "Norton/Total Commander clone for KDE";
|
||||
license = "GPL";
|
||||
|
|
|
@ -4,11 +4,11 @@ stdenv.mkDerivation {
|
|||
name = "esniper-2.28.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://sourceforge/esniper/esniper-2-28-0.tgz";
|
||||
url = "mirror://sourceforge/esniper/esniper-2-28-0.tgz";
|
||||
sha256 = "c2b0ccb757616b32f2d6cf54a4a5e367405fa7bcd6e6ed11835fe4f8a06a016b";
|
||||
};
|
||||
|
||||
buildInputs = [openssl curl];
|
||||
buildInputs = [ openssl curl ];
|
||||
|
||||
# Add support for CURL_CA_BUNDLE variable.
|
||||
patches = [ ./find-ca-bundle.patch ];
|
||||
|
@ -19,12 +19,11 @@ stdenv.mkDerivation {
|
|||
chmod 555 "$out/bin/snipe"
|
||||
'';
|
||||
|
||||
meta = {
|
||||
meta = with stdenv.lib; {
|
||||
description = "Simple, lightweight tool for sniping eBay auctions";
|
||||
homepage = "http://esnipe.rsourceforge.net";
|
||||
license = "GPLv2";
|
||||
|
||||
platforms = stdenv.lib.platforms.all;
|
||||
maintainers = [ stdenv.lib.maintainers.simons ];
|
||||
homepage = http://esnipe.rsourceforge.net;
|
||||
license = licenses.gpl2;
|
||||
maintainers = with maintainers; [ lovek323 simons ];
|
||||
platforms = platforms.all;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -65,6 +65,8 @@ stdenv.mkDerivation {
|
|||
)
|
||||
'';
|
||||
|
||||
installPhase = ''make DESTDIR="$out" MKDIR_P="mkdir -p" install'';
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
meta = {
|
||||
|
|
|
@ -35,7 +35,8 @@ stdenv.mkDerivation {
|
|||
NIX_LDFLAGS = stdenv.lib.optionalString (!stdenv.isDarwin) "-lgcc_s";
|
||||
|
||||
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
|
||||
# so that `SPARSE_FLAGS' corresponds to the current architecture...
|
||||
|
|
|
@ -16,6 +16,8 @@ stdenv.mkDerivation rec {
|
|||
|
||||
configureFlags = "--with-boost-libdir=${boost}/lib";
|
||||
|
||||
NIX_CFLAGS_COMPILE = "-fpermissive"; # fix build with newer gcc versions
|
||||
|
||||
meta = {
|
||||
homepage = "http://code.google.com/p/gource/";
|
||||
description = "software version control visualization tool";
|
||||
|
|
|
@ -66,13 +66,23 @@ else
|
|||
echo "$gccCFlags" > $out/nix-support/gcc-cflags
|
||||
|
||||
gccPath="$gcc/bin"
|
||||
ldPath="$binutils/bin"
|
||||
# On Illumos/Solaris we might prefer native ld
|
||||
if test -n "$nativePrefix"; then
|
||||
ldPath="$nativePrefix/bin"
|
||||
else
|
||||
ldPath="$binutils/bin"
|
||||
fi;
|
||||
fi
|
||||
|
||||
|
||||
doSubstitute() {
|
||||
local src=$1
|
||||
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
|
||||
# built yet (in the bootstrap).
|
||||
sed \
|
||||
|
@ -85,7 +95,7 @@ doSubstitute() {
|
|||
-e "s^@binutils@^$binutils^g" \
|
||||
-e "s^@coreutils@^$coreutils^g" \
|
||||
-e "s^@libc@^$libc^g" \
|
||||
-e "s^@ld@^$ldPath/ld^g" \
|
||||
-e "s^@ld@^$ld^g" \
|
||||
< "$src" > "$dst"
|
||||
}
|
||||
|
||||
|
@ -174,6 +184,13 @@ ln -s $ldPath/as $out/bin/as
|
|||
doSubstitute "$ldWrapper" "$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
|
||||
# Glibc.
|
||||
|
|
|
@ -36,6 +36,7 @@ stdenv.mkDerivation {
|
|||
gnatWrapper = ./gnat-wrapper.sh;
|
||||
gnatlinkWrapper = ./gnatlink-wrapper.sh;
|
||||
ldWrapper = ./ld-wrapper.sh;
|
||||
ldSolarisWrapper = ./ld-solaris-wrapper.sh;
|
||||
utils = ./utils.sh;
|
||||
addFlags = ./add-flags;
|
||||
|
||||
|
|
|
@ -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
|
|
@ -1,6 +1,6 @@
|
|||
addCVars () {
|
||||
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
|
||||
|
||||
if test -d $1/lib64; then
|
||||
|
|
|
@ -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; {
|
||||
# Backward compatibility.
|
||||
gtkdoc = self.gtk_doc;
|
||||
|
@ -19,7 +19,9 @@ let overridden = set // overrides; set = with overridden; {
|
|||
|
||||
libglade = callPackage ./platform/libglade { };
|
||||
|
||||
libgnomeprint = callPackage ./platform/libgnomeprint { };
|
||||
libgnomeprint = callPackage ./platform/libgnomeprint {
|
||||
bison = bison2;
|
||||
};
|
||||
|
||||
libgnomeprintui = callPackage ./platform/libgnomeprintui { };
|
||||
|
||||
|
|
|
@ -30,11 +30,11 @@ stdenv.mkDerivation {
|
|||
url = "mirror://gnu/gcc/gcc-${version}/gcc-fortran-${version}.tar.bz2";
|
||||
sha256 = "013yqiqhdavgxzjryvylgf3lcnknmw89fx41jf2v4899srn0bhkg";
|
||||
});
|
||||
|
||||
|
||||
patches =
|
||||
[./pass-cxxcpp.patch]
|
||||
[./pass-cxxcpp.patch ./siginfo_t.patch]
|
||||
++ optional noSysDirs [./no-sys-dirs.patch];
|
||||
|
||||
|
||||
inherit noSysDirs profiledCompiler staticCompiler;
|
||||
|
||||
buildInputs = [gmp mpfr texinfo];
|
||||
|
|
|
@ -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.
|
|
@ -29,7 +29,7 @@ assert langVhdl -> gnat != null;
|
|||
with stdenv.lib;
|
||||
|
||||
let
|
||||
version = "4.3.4";
|
||||
version = "4.3.6";
|
||||
|
||||
crossConfigureFlags =
|
||||
"--target=${cross.config}" +
|
||||
|
@ -54,27 +54,27 @@ in
|
|||
|
||||
stdenv.mkDerivation ({
|
||||
name = "${name}-${version}" + crossNameAddon;
|
||||
|
||||
|
||||
builder = ./builder.sh;
|
||||
|
||||
|
||||
src =
|
||||
optional /*langC*/ true (fetchurl {
|
||||
url = "mirror://gcc/releases/gcc-${version}/gcc-core-${version}.tar.bz2";
|
||||
sha256 = "1yk80nwyw8vkpw8d3x7lkg3zrv3ngjqlvj0i8zslzgj7a27q729i";
|
||||
sha256 = "0ygrfw3hgp48hkqipbl9lw38f27npigc2sm6f01g9iswpq1igbw6";
|
||||
}) ++
|
||||
optional langCC (fetchurl {
|
||||
url = "mirror://gcc/releases/gcc-${version}/gcc-g++-${version}.tar.bz2";
|
||||
sha256 = "0d8pyk5c9zmph25f4fl63vd8vhljj6ildbxpz2hr594g5i6pplpq";
|
||||
sha256 = "105xz3991b57zx3146xwlpchdb2sjmlknclvi1iac2gawm4mhxhf";
|
||||
}) ++
|
||||
optional langFortran (fetchurl {
|
||||
url = "mirror://gcc/releases/gcc-${version}/gcc-fortran-${version}.tar.bz2";
|
||||
sha256 = "1xf2njykv1qcgxiqwj693dxjf77ss1rcxirylvnsp5hs89mdlj12";
|
||||
sha256 = "12bqvf53hvhrwjnh101vn9frb5g8cr98cra4f11dzhzs4ppydpi1";
|
||||
}) ++
|
||||
optional langJava (fetchurl {
|
||||
url = "mirror://gcc/releases/gcc-${version}/gcc-java-${version}.tar.bz2";
|
||||
sha256 = "1v3krhxi3zyaqfj0x8dbxvg67fjp29cr1psyf71r9zf757p3vqsw";
|
||||
sha256 = "03w6jln9gmdv149s774rlw4rzi2zhbqna54r86cd6mql8flmy7fs";
|
||||
});
|
||||
|
||||
|
||||
patches =
|
||||
[ ./pass-cxxcpp.patch ./libmudflap-cpp.patch ./siginfo_t_fix.patch ]
|
||||
++ optional noSysDirs ./no-sys-dirs.patch
|
||||
|
|
|
@ -31,7 +31,7 @@ assert langVhdl -> gnat != null;
|
|||
|
||||
with stdenv.lib;
|
||||
|
||||
let version = "4.4.6";
|
||||
let version = "4.4.7";
|
||||
javaEcj = fetchurl {
|
||||
# The `$(top_srcdir)/ecj.jar' file is automatically picked up at
|
||||
# `configure' time.
|
||||
|
|
|
@ -1,26 +1,26 @@
|
|||
/* 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 }:
|
||||
|
||||
assert version == "4.4.6";
|
||||
assert version == "4.4.7";
|
||||
optional /* langC */ true (fetchurl {
|
||||
url = "mirror://gcc/releases/gcc-${version}/gcc-core-${version}.tar.bz2";
|
||||
sha256 = "c2959820de3e42eee6b1d381586992f26430f0083b9a51db31d706080fc9b44a";
|
||||
sha256 = "c4663b7023909a4a075d3c2b2e17f6e082a9625aebfd0ce7f1d7817e44bf5542";
|
||||
}) ++
|
||||
optional langCC (fetchurl {
|
||||
url = "mirror://gcc/releases/gcc-${version}/gcc-g++-${version}.tar.bz2";
|
||||
sha256 = "6d5d2dacab9569472e4caa291abe94017a9b19574b9b0d866de7b04702634ddf";
|
||||
sha256 = "1882ff29be51eeb3fb349cbcda9df200a5c3cd20c97dd1d593101e0998b3c469";
|
||||
}) ++
|
||||
optional langFortran (fetchurl {
|
||||
url = "mirror://gcc/releases/gcc-${version}/gcc-fortran-${version}.tar.bz2";
|
||||
sha256 = "2b9998716a16b80f4cf843ce81da1cf58ce116e0b85422e3004ce4454e8ff923";
|
||||
sha256 = "545a1e8e97d9364de4408c6a91830f9051ce24b4fbfbfdc56e72c7b4be17ebdd";
|
||||
}) ++
|
||||
optional langJava (fetchurl {
|
||||
url = "mirror://gcc/releases/gcc-${version}/gcc-java-${version}.tar.bz2";
|
||||
sha256 = "7c8c12eac21d2a5c605ea4d9b7aa52e482354205b801bc93d62603b6f0956b35";
|
||||
sha256 = "3c31ddd80f945b797d8d4ed7761426c26343781c361ec1b33bcea9874cc4c6c0";
|
||||
}) ++
|
||||
optional langAda (fetchurl {
|
||||
url = "mirror://gcc/releases/gcc-${version}/gcc-ada-${version}.tar.bz2";
|
||||
sha256 = "771ef0e90abf61208ce84689bed15391ad249287e36a28e816d6a044035af0c6";
|
||||
sha256 = "fb9f30b85d48838390554b948d137487f0db09ad5f8ba73ca4d7ca35765c6ed8";
|
||||
}) ++
|
||||
[]
|
||||
|
|
|
@ -21,7 +21,7 @@ options["g++"]="langCC"
|
|||
options["fortran"]="langFortran"
|
||||
options["java"]="langJava"
|
||||
options["ada"]="langAda"
|
||||
options["go"]="langGo"
|
||||
#options["go"]="langGo"
|
||||
|
||||
cat > "$out"<<EOF
|
||||
/* Automatically generated by \`$(basename $0)', do not edit.
|
||||
|
@ -32,7 +32,7 @@ cat > "$out"<<EOF
|
|||
assert version == "${version}";
|
||||
EOF
|
||||
|
||||
for component in core g++ fortran java ada go
|
||||
for component in core g++ fortran java ada #go
|
||||
do
|
||||
dir="ftp.gnu.org/gnu/gcc/gcc-${version}"
|
||||
file="gcc-${component}-${version}.tar.bz2"
|
||||
|
|
|
@ -212,7 +212,7 @@ stdenv.mkDerivation ({
|
|||
++ (optional (ppl != null) ppl)
|
||||
++ (optional (cloogppl != null) cloogppl)
|
||||
++ (optional (zlib != null) zlib)
|
||||
++ (optional (boehmgc != null) boehmgc)
|
||||
++ (optional langJava boehmgc)
|
||||
++ (optionals langJava [zip unzip])
|
||||
++ (optionals javaAwtGtk ([gtk pkgconfig libart_lgpl] ++ xlibs))
|
||||
++ (optionals (cross != null) [binutilsCross])
|
||||
|
|
|
@ -434,7 +434,7 @@ stdenv.mkDerivation ({
|
|||
passthru = { inherit langC langCC langAda langFortran langVhdl
|
||||
langGo version; };
|
||||
|
||||
enableParallelBuilding = !langAda;
|
||||
enableParallelBuilding = false;
|
||||
|
||||
inherit (stdenv) is64bit;
|
||||
|
||||
|
|
|
@ -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)
|
|
@ -33,7 +33,7 @@ if test "$noSysDirs" = "1"; then
|
|||
|
||||
# The path to the Glibc binaries such as `crti.o'.
|
||||
glibc_libdir="$(cat $NIX_GCC/nix-support/orig-libc)/lib"
|
||||
|
||||
|
||||
else
|
||||
# Hack: support impure environments.
|
||||
extraFlags="-isystem /usr/include"
|
||||
|
@ -50,10 +50,10 @@ if test "$noSysDirs" = "1"; then
|
|||
# bootstrap compiler are optimized and (optionally) contain
|
||||
# debugging information (info "(gccinstall) Building").
|
||||
if test -n "$dontStrip"; then
|
||||
extraFlags="-O2 -g $extraFlags"
|
||||
extraFlags="-O2 -g $extraFlags"
|
||||
else
|
||||
# Don't pass `-g' at all; this saves space while building.
|
||||
extraFlags="-O2 $extraFlags"
|
||||
# Don't pass `-g' at all; this saves space while building.
|
||||
extraFlags="-O2 $extraFlags"
|
||||
fi
|
||||
|
||||
EXTRA_FLAGS="$extraFlags"
|
||||
|
@ -155,7 +155,7 @@ if test -n "$targetConfig"; then
|
|||
dontStrip=1
|
||||
fi
|
||||
|
||||
|
||||
providedPreConfigure="$preConfigure";
|
||||
preConfigure() {
|
||||
if test -n "$newlibSrc"; then
|
||||
tar xvf "$newlibSrc" -C ..
|
||||
|
@ -188,6 +188,9 @@ preConfigure() {
|
|||
configureFlags="$configureFlags --with-build-sysroot=`pwd`/.."
|
||||
fi
|
||||
|
||||
# Eval the preConfigure script from nix expression.
|
||||
eval $providedPreConfigure;
|
||||
env;
|
||||
# Perform the build in a different directory.
|
||||
mkdir ../build
|
||||
cd ../build
|
||||
|
@ -210,7 +213,7 @@ postInstall() {
|
|||
# previous gcc.
|
||||
rm -rf $out/libexec/gcc/*/*/install-tools
|
||||
rm -rf $out/lib/gcc/*/*/install-tools
|
||||
|
||||
|
||||
# More dependencies with the previous gcc or some libs (gccbug stores the build command line)
|
||||
rm -rf $out/bin/gccbug
|
||||
# Take out the bootstrap-tools from the rpath, as it's not needed at all having $out
|
|
@ -11,7 +11,7 @@
|
|||
, perl ? null # optional, for texi2pod (then pod2man); required for Java
|
||||
, gmp, mpfr, mpc, gettext, which
|
||||
, 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
|
||||
, zip ? null, unzip ? null, pkgconfig ? null, gtk ? null, libart_lgpl ? 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 langVhdl -> gnat != null;
|
||||
|
||||
# We enable the isl cloog backend.
|
||||
assert cloog != null -> isl != null;
|
||||
|
||||
# LTO needs libelf and zlib.
|
||||
assert libelf != null -> zlib != null;
|
||||
|
||||
|
@ -49,14 +52,19 @@ assert langGo -> langCC;
|
|||
with stdenv.lib;
|
||||
with builtins;
|
||||
|
||||
let version = "4.7.3";
|
||||
let version = "4.8.2";
|
||||
|
||||
# Whether building a cross-compiler for GNU/Hurd.
|
||||
crossGNU = cross != null && cross.config == "i586-pc-gnu";
|
||||
|
||||
patches = [
|
||||
./build-race.patch
|
||||
] ++ optional stdenv.isArm [ ./arm-eabi.patch ]
|
||||
/* gccinstall.info says that "parallel make is currently not supported since
|
||||
collisions in profile collecting may occur".
|
||||
*/
|
||||
enableParallelBuilding = !profiledCompiler;
|
||||
|
||||
patches = []
|
||||
++ optional stdenv.isArm ./arm-eabi.patch
|
||||
++ optional enableParallelBuilding ./parallel-bconfig.patch
|
||||
++ optional (cross != null) ./libstdc++-target.patch
|
||||
# ++ optional noSysDirs ./no-sys-dirs.patch
|
||||
# The GNAT Makefiles did not pay attention to CFLAGS_FOR_TARGET for its
|
||||
|
@ -89,35 +97,35 @@ let version = "4.7.3";
|
|||
|
||||
/* Platform flags */
|
||||
platformFlags = let
|
||||
gccArch = stdenv.lib.attrByPath [ "platform" "gcc" "arch" ] null stdenv;
|
||||
gccCpu = stdenv.lib.attrByPath [ "platform" "gcc" "cpu" ] null stdenv;
|
||||
gccAbi = stdenv.lib.attrByPath [ "platform" "gcc" "abi" ] null stdenv;
|
||||
gccFpu = stdenv.lib.attrByPath [ "platform" "gcc" "fpu" ] null stdenv;
|
||||
gccFloat = stdenv.lib.attrByPath [ "platform" "gcc" "float" ] null stdenv;
|
||||
gccMode = stdenv.lib.attrByPath [ "platform" "gcc" "mode" ] null stdenv;
|
||||
gccArch = stdenv.platform.gcc.arch or null;
|
||||
gccCpu = stdenv.platform.gcc.cpu or null;
|
||||
gccAbi = stdenv.platform.gcc.abi or null;
|
||||
gccFpu = stdenv.platform.gcc.fpu or null;
|
||||
gccFloat = stdenv.platform.gcc.float or null;
|
||||
gccMode = stdenv.platform.gcc.mode or null;
|
||||
withArch = if gccArch != null then " --with-arch=${gccArch}" else "";
|
||||
withCpu = if gccCpu != null then " --with-cpu=${gccCpu}" else "";
|
||||
withAbi = if gccAbi != null then " --with-abi=${gccAbi}" else "";
|
||||
withFpu = if gccFpu != null then " --with-fpu=${gccFpu}" else "";
|
||||
withFloat = if gccFloat != null then " --with-float=${gccFloat}" else "";
|
||||
withMode = if gccMode != null then " --with-mode=${gccMode}" else "";
|
||||
in
|
||||
(withArch +
|
||||
in
|
||||
withArch +
|
||||
withCpu +
|
||||
withAbi +
|
||||
withFpu +
|
||||
withFloat +
|
||||
withMode);
|
||||
withMode;
|
||||
|
||||
/* Cross-gcc settings */
|
||||
crossMingw = (cross != null && cross.libc == "msvcrt");
|
||||
crossConfigureFlags = let
|
||||
gccArch = stdenv.lib.attrByPath [ "gcc" "arch" ] null cross;
|
||||
gccCpu = stdenv.lib.attrByPath [ "gcc" "cpu" ] null cross;
|
||||
gccAbi = stdenv.lib.attrByPath [ "gcc" "abi" ] null cross;
|
||||
gccFpu = stdenv.lib.attrByPath [ "gcc" "fpu" ] null cross;
|
||||
gccFloat = stdenv.lib.attrByPath [ "gcc" "float" ] null cross;
|
||||
gccMode = stdenv.lib.attrByPath [ "gcc" "mode" ] null cross;
|
||||
gccArch = stdenv.cross.gcc.arch or null;
|
||||
gccCpu = stdenv.cross.gcc.cpu or null;
|
||||
gccAbi = stdenv.cross.gcc.abi or null;
|
||||
gccFpu = stdenv.cross.gcc.fpu or null;
|
||||
gccFloat = stdenv.cross.gcc.float or null;
|
||||
gccMode = stdenv.cross.gcc.mode or null;
|
||||
withArch = if gccArch != null then " --with-arch=${gccArch}" else "";
|
||||
withCpu = if gccCpu != null then " --with-cpu=${gccCpu}" else "";
|
||||
withAbi = if gccAbi != null then " --with-abi=${gccAbi}" else "";
|
||||
|
@ -180,8 +188,7 @@ let version = "4.7.3";
|
|||
" --enable-nls" +
|
||||
" --disable-decimal-float") # No final libdecnumber (it may work only in 386)
|
||||
);
|
||||
stageNameAddon = if crossStageStatic then "-stage-static" else
|
||||
"-stage-final";
|
||||
stageNameAddon = if crossStageStatic then "-stage-static" else "-stage-final";
|
||||
crossNameAddon = if cross != null then "-${cross.config}" + stageNameAddon else "";
|
||||
|
||||
bootstrap = cross == null && !stdenv.isArm && !stdenv.isMips;
|
||||
|
@ -198,7 +205,7 @@ stdenv.mkDerivation ({
|
|||
|
||||
src = fetchurl {
|
||||
url = "mirror://gnu/gcc/gcc-${version}/gcc-${version}.tar.bz2";
|
||||
sha256 = "1hx9h64ivarlzi4hxvq42as5m9vlr5cyzaaq4gzj4i619zmkfz1g";
|
||||
sha256 = "1j6dwgby4g3p3lz7zkss32ghr45zpdidrg8xvazvn91lqxv25p09";
|
||||
};
|
||||
|
||||
inherit patches;
|
||||
|
@ -267,6 +274,7 @@ stdenv.mkDerivation ({
|
|||
buildInputs = [ gmp mpfr mpc libelf ]
|
||||
++ (optional (ppl != null) ppl)
|
||||
++ (optional (cloog != null) cloog)
|
||||
++ (optional (isl != null) isl)
|
||||
++ (optional (zlib != null) zlib)
|
||||
++ (optionals langJava [ boehmgc zip unzip ])
|
||||
++ (optionals javaAwtGtk ([ gtk libart_lgpl ] ++ xlibs))
|
||||
|
@ -279,22 +287,42 @@ stdenv.mkDerivation ({
|
|||
++ (optional stdenv.isDarwin gnused)
|
||||
;
|
||||
|
||||
configureFlagsArray = stdenv.lib.optionals
|
||||
(ppl != null && ppl ? dontDisableStatic && ppl.dontDisableStatic)
|
||||
[ "--with-host-libstdcxx=-lstdc++ -lgcc_s" ];
|
||||
NIX_LDFLAGS = stdenv.lib.optionalString stdenv.isSunOS "-lm -ldl";
|
||||
|
||||
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
|
||||
# they have a bug in 4.7.1 if adding "--disable-static"
|
||||
dontDisableStatic = langGo;
|
||||
dontDisableStatic = langGo || staticCompiler;
|
||||
|
||||
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 enableShared then "" else "--disable-shared"}
|
||||
${if enablePlugin then "--enable-plugin" else ""}
|
||||
${if ppl != null then "--with-ppl=${ppl}" else ""}
|
||||
${if cloog != null then
|
||||
"--with-cloog=${cloog} --enable-cloog-backend=isl"
|
||||
else ""}
|
||||
${if enablePlugin then "--enable-plugin" else "--disable-plugin"}
|
||||
${if ppl != null then "--with-ppl=${ppl} --disable-ppl-version-check" else ""}
|
||||
${optionalString (isl != null) "--with-isl=${isl}"}
|
||||
${optionalString (cloog != null) "--with-cloog=${cloog} --disable-cloog-version-check --enable-cloog-backend=isl"}
|
||||
${if langJava then
|
||||
"--with-ecj-jar=${javaEcj} " +
|
||||
|
||||
|
@ -345,11 +373,11 @@ stdenv.mkDerivation ({
|
|||
else "install";
|
||||
|
||||
crossAttrs = let
|
||||
xgccArch = stdenv.lib.attrByPath [ "gcc" "arch" ] null stdenv.cross;
|
||||
xgccCpu = stdenv.lib.attrByPath [ "gcc" "cpu" ] null stdenv.cross;
|
||||
xgccAbi = stdenv.lib.attrByPath [ "gcc" "abi" ] null stdenv.cross;
|
||||
xgccFpu = stdenv.lib.attrByPath [ "gcc" "fpu" ] null stdenv.cross;
|
||||
xgccFloat = stdenv.lib.attrByPath [ "gcc" "float" ] null stdenv.cross;
|
||||
xgccArch = stdenv.cross.gcc.arch or null;
|
||||
xgccCpu = stdenv.cross.gcc.cpu or null;
|
||||
xgccAbi = stdenv.cross.gcc.abi or null;
|
||||
xgccFpu = stdenv.cross.gcc.fpu or null;
|
||||
xgccFloat = stdenv.cross.gcc.float or null;
|
||||
xwithArch = if xgccArch != null then " --with-arch=${xgccArch}" else "";
|
||||
xwithCpu = if xgccCpu != null then " --with-cpu=${xgccCpu}" else "";
|
||||
xwithAbi = if xgccAbi != null then " --with-abi=${xgccAbi}" else "";
|
||||
|
@ -408,7 +436,8 @@ stdenv.mkDerivation ({
|
|||
# Needed for the cross compilation to work
|
||||
AR = "ar";
|
||||
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
|
||||
# the library headers and binaries, regarless of the language being
|
||||
|
@ -432,8 +461,7 @@ stdenv.mkDerivation ({
|
|||
|
||||
# On GNU/Hurd glibc refers to Mach & Hurd
|
||||
# headers.
|
||||
++ optionals (libcCross != null &&
|
||||
hasAttr "propagatedBuildInputs" libcCross)
|
||||
++ optionals (libcCross != null && libcCross ? "propagatedBuildInputs" )
|
||||
libcCross.propagatedBuildInputs)));
|
||||
|
||||
LIBRARY_PATH = concatStrings
|
||||
|
@ -456,14 +484,10 @@ stdenv.mkDerivation ({
|
|||
" -L${libpthreadCross}/lib -Wl,${libpthreadCross.TARGET_LDFLAGS}")
|
||||
else null;
|
||||
|
||||
passthru = { inherit langC langCC langAda langFortran langVhdl
|
||||
langGo enableMultilib version; };
|
||||
passthru =
|
||||
{ inherit langC langCC langAda langFortran langVhdl langGo enableMultilib version; };
|
||||
|
||||
/* From gccinstall.info:
|
||||
"parallel make is currently not supported since collisions in profile
|
||||
collecting may occur"
|
||||
*/
|
||||
enableParallelBuilding = !profiledCompiler;
|
||||
inherit enableParallelBuilding;
|
||||
|
||||
meta = {
|
||||
homepage = http://gcc.gnu.org/;
|
||||
|
@ -480,11 +504,7 @@ stdenv.mkDerivation ({
|
|||
compiler used in the GNU system including the GNU/Linux variant.
|
||||
'';
|
||||
|
||||
maintainers = [
|
||||
stdenv.lib.maintainers.ludo
|
||||
stdenv.lib.maintainers.viric
|
||||
stdenv.lib.maintainers.shlevy
|
||||
];
|
||||
maintainers = with stdenv.lib.maintainers; [ ludo viric shlevy simons ];
|
||||
|
||||
# Volunteers needed for the {Cyg,Dar}win ports of *PPL.
|
||||
# gnatboot is not available out of linux platforms, so we disable the darwin build
|
|
@ -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)
|
||||
|
|
@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
|
|||
|
||||
buildInputs = [ ghc perl gmp ncurses ];
|
||||
|
||||
enableParallelBuilding = true;
|
||||
enableParallelBuilding = false; # the same errors as 7.6.1
|
||||
|
||||
buildMK = ''
|
||||
libraries/integer-gmp_CONFIGURE_OPTS += --configure-option=--with-gmp-libraries="${gmp}/lib"
|
||||
|
|
|
@ -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"
|
|
@ -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;
|
||||
};
|
||||
}
|
|
@ -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)
|
|
@ -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)
|
|
@ -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;
|
||||
};
|
||||
}
|
|
@ -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
|
|
@ -1,13 +1,9 @@
|
|||
{stdenv, fetchurl, llvm, gmp, mpfr, mpc, ncurses, zlib}:
|
||||
{stdenv, fetch, llvm, gmp, mpfr, mpc, ncurses, zlib, version}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
version = "3.4";
|
||||
name = "dragonegg-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://llvm.org/releases/${version}/${name}.src.tar.gz";
|
||||
sha256 = "1733czbvby1ww3xkwcwmm0km0bpwhfyxvf56wb0zv5gksp3kbgrl";
|
||||
};
|
||||
src = fetch "dragonegg" "1733czbvby1ww3xkwcwmm0km0bpwhfyxvf56wb0zv5gksp3kbgrl";
|
||||
|
||||
# The gcc the plugin will be built for (the same used building dragonegg)
|
||||
GCC = "gcc";
|
||||
|
@ -24,7 +20,7 @@ stdenv.mkDerivation rec {
|
|||
homepage = http://dragonegg.llvm.org/;
|
||||
description = "gcc plugin that replaces gcc's optimizers and code generators by those in LLVM";
|
||||
license = "GPLv2+";
|
||||
maintainers = with stdenv.lib.maintainers; [viric];
|
||||
maintainers = with stdenv.lib.maintainers; [viric shlevy];
|
||||
platforms = with stdenv.lib.platforms; linux;
|
||||
};
|
||||
}
|
|
@ -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;
|
||||
};
|
||||
}
|
|
@ -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;
|
||||
};
|
||||
}
|
|
@ -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})
|
|
@ -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;
|
||||
};
|
||||
}
|
|
@ -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})
|
|
@ -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;
|
||||
};
|
||||
}
|
|
@ -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;
|
||||
};
|
||||
}
|
|
@ -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;
|
||||
};
|
||||
}
|
|
@ -1,23 +1,26 @@
|
|||
{ stdenv, fetchurl, gmp }:
|
||||
|
||||
let
|
||||
version = "20130715";
|
||||
in
|
||||
stdenv.mkDerivation rec {
|
||||
name = "mlton-20100608";
|
||||
name = "mlton-${version}";
|
||||
|
||||
binSrc =
|
||||
if stdenv.system == "i686-linux" then (fetchurl {
|
||||
url = "http://sourceforge.net/projects/mlton/files/mlton/20100608/${name}-1.x86-linux.static.tgz";
|
||||
sha256 = "16qg8df9hg2pmnsblkgxp6bgm7334rsqkxqzskv5fl21wivmnwfw";
|
||||
url = "http://sourceforge.net/projects/mlton/files/mlton/${version}/${name}-1.x86-linux.tgz";
|
||||
sha256 = "1kxjjmnw4xk2d9hpvz43w9dvyhb3025k4zvjx785c33nrwkrdn4j";
|
||||
})
|
||||
else if stdenv.system == "x86_64-linux" then (fetchurl {
|
||||
url = "http://sourceforge.net/projects/mlton/files/mlton/20100608/${name}-1.amd64-linux.static.tgz";
|
||||
sha256 = "0i6ic8f6prl0cigrmf6bj9kqz3plzappxn17lz1rg2v832nfbw9r";
|
||||
url = "http://sourceforge.net/projects/mlton/files/mlton/${version}/${name}-1.amd64-linux.tgz";
|
||||
sha256 = "0fyhwxb4nmpirjbjcvk9f6w67gmn2gkz7xcgz0xbfih9kc015ygn";
|
||||
})
|
||||
else throw "Architecture not supported";
|
||||
|
||||
codeSrc =
|
||||
fetchurl {
|
||||
url = "http://sourceforge.net/projects/mlton/files/mlton/20100608/${name}.src.tgz";
|
||||
sha256 = "0cqb3k6ld9965hyyfyayi510f205vqzd5qqm3crh13nasvq2rjzj";
|
||||
url = "http://sourceforge.net/projects/mlton/files/mlton/${version}/${name}.src.tgz";
|
||||
sha256 = "0v1x2hrh9hiqkvnbq11kf34v4i5a2x0ffxbzqaa8skyl26nmfn11";
|
||||
};
|
||||
|
||||
srcs = [ binSrc codeSrc ];
|
||||
|
|
|
@ -65,6 +65,7 @@ stdenv.mkDerivation rec {
|
|||
"DEVTOOLS_PATH="
|
||||
"UNIXCOMMAND_PATH="
|
||||
"BOOTDIR=${jdk}"
|
||||
"STATIC_CXX=false"
|
||||
"UNLIMITED_CRYPTO=1"
|
||||
];
|
||||
|
||||
|
|
|
@ -17,7 +17,8 @@ stdenv.mkDerivation rec {
|
|||
patches =
|
||||
[ # Do not look in /usr etc. for dependencies.
|
||||
./no-sys-dirs.patch
|
||||
]
|
||||
]
|
||||
++ stdenv.lib.optional stdenv.isSunOS ./ld-shared.patch
|
||||
++ stdenv.lib.optional stdenv.isDarwin ./no-libutil.patch;
|
||||
|
||||
# Build a thread-safe Perl with a dynamic libperls.o. We need the
|
||||
|
|
|
@ -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`"
|
|
@ -6,6 +6,10 @@ let
|
|||
|
||||
in
|
||||
|
||||
with {
|
||||
inherit (stdenv.lib) optional optionalString;
|
||||
};
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "perl-5.16.3";
|
||||
|
||||
|
@ -18,7 +22,8 @@ stdenv.mkDerivation rec {
|
|||
[ # Do not look in /usr etc. for dependencies.
|
||||
./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
|
||||
# "installstyle" option to ensure that modules are put under
|
||||
|
@ -34,7 +39,7 @@ stdenv.mkDerivation rec {
|
|||
"-Dlocincpth=${libc}/include"
|
||||
"-Dloclibpth=${libc}/lib"
|
||||
]
|
||||
++ stdenv.lib.optional (stdenv ? glibc) "-Dusethreads";
|
||||
++ optional (stdenv ? glibc) "-Dusethreads";
|
||||
|
||||
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"
|
||||
|
||||
${stdenv.lib.optionalString stdenv.isArm ''
|
||||
${optionalString stdenv.isArm ''
|
||||
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).
|
||||
substituteInPlace dist/Cwd/Cwd.pm --replace "'/bin/pwd'" "'$(type -tP pwd)'"
|
||||
|
@ -59,5 +64,27 @@ stdenv.mkDerivation rec {
|
|||
|
||||
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";
|
||||
}
|
||||
|
|
|
@ -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`"
|
|
@ -1,7 +1,8 @@
|
|||
diff -ru -x '*~' perl-5.14.2-orig/Configure perl-5.14.2/Configure
|
||||
--- perl-5.14.2-orig/Configure 2011-09-26 11:44:34.000000000 +0200
|
||||
+++ perl-5.14.2/Configure 2012-01-20 17:05:23.089223129 +0100
|
||||
@@ -106,15 +106,7 @@
|
||||
diff --git a/Configure b/Configure
|
||||
index fdbbf20..ba1fd07 100755
|
||||
--- a/Configure
|
||||
+++ b/Configure
|
||||
@@ -106,15 +106,7 @@ if test -d c:/. || ( uname -a | grep -i 'os\(/\|\)2' ) 2>&1 >/dev/null ; then
|
||||
fi
|
||||
|
||||
: 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
|
||||
do
|
||||
@@ -1311,8 +1303,7 @@
|
||||
@@ -1323,8 +1315,7 @@ archobjs=''
|
||||
archname=''
|
||||
: Possible local include directories to search.
|
||||
: 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
|
||||
inclwanted=''
|
||||
@@ -1328,17 +1319,12 @@
|
||||
archobjs=''
|
||||
@@ -1335,17 +1326,12 @@ DEBUGGING=''
|
||||
|
||||
libnames=''
|
||||
: change the next line if compiling for Xenix/286 on Xenix/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
|
||||
: 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"
|
||||
: We probably want to search /usr/shlib before most other libraries.
|
||||
: 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.
|
||||
usevfork=false
|
||||
|
||||
@@ -2380,7 +2364,6 @@
|
||||
@@ -2389,7 +2373,6 @@ uname
|
||||
zip
|
||||
"
|
||||
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
|
||||
eval xxx=\$$file
|
||||
case "$xxx" in
|
||||
@@ -4785,7 +4768,7 @@
|
||||
@@ -4708,7 +4691,7 @@ $rm -f testcpp.c testcpp.out
|
||||
: Set private lib path
|
||||
case "$plibpth" in
|
||||
'') if ./mips; then
|
||||
|
@ -75,7 +76,7 @@ diff -ru -x '*~' perl-5.14.2-orig/Configure perl-5.14.2/Configure
|
|||
fi;;
|
||||
esac
|
||||
case "$libpth" in
|
||||
@@ -8390,13 +8373,8 @@
|
||||
@@ -8354,13 +8337,8 @@ esac
|
||||
echo " "
|
||||
case "$sysman" in
|
||||
'')
|
||||
|
@ -91,7 +92,7 @@ diff -ru -x '*~' perl-5.14.2-orig/Configure perl-5.14.2/Configure
|
|||
;;
|
||||
esac
|
||||
if $test -d "$sysman"; then
|
||||
@@ -19721,9 +19699,10 @@
|
||||
@@ -19742,9 +19720,10 @@ $rm_try tryp
|
||||
case "$full_ar" in
|
||||
'') full_ar=$ar ;;
|
||||
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
|
||||
echo " "
|
||||
diff -ru -x '*~' perl-5.14.2-orig/ext/Errno/Errno_pm.PL perl-5.14.2/ext/Errno/Errno_pm.PL
|
||||
--- perl-5.14.2-orig/ext/Errno/Errno_pm.PL 2011-09-26 11:44:34.000000000 +0200
|
||||
+++ perl-5.14.2/ext/Errno/Errno_pm.PL 2012-01-20 17:02:07.938138311 +0100
|
||||
@@ -137,11 +137,7 @@
|
||||
diff --git a/ext/Errno/Errno_pm.PL b/ext/Errno/Errno_pm.PL
|
||||
index 439f254..2cdfdb0 100644
|
||||
--- a/ext/Errno/Errno_pm.PL
|
||||
+++ b/ext/Errno/Errno_pm.PL
|
||||
@@ -137,11 +137,7 @@ sub get_files {
|
||||
if ($dep =~ /(\S+errno\.h)/) {
|
||||
$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
|
||||
# no #file or #line directives
|
||||
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
|
||||
--- perl-5.14.2-orig/hints/freebsd.sh 2011-09-19 15:18:22.000000000 +0200
|
||||
+++ perl-5.14.2/hints/freebsd.sh 2012-01-20 17:10:37.267924044 +0100
|
||||
@@ -118,21 +118,21 @@
|
||||
diff --git a/hints/freebsd.sh b/hints/freebsd.sh
|
||||
index a67c0bb..0f07ca5 100644
|
||||
--- a/hints/freebsd.sh
|
||||
+++ b/hints/freebsd.sh
|
||||
@@ -119,21 +119,21 @@ case "$osvers" in
|
||||
objformat=`/usr/bin/objformat`
|
||||
if [ x$objformat = xaout ]; 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 "
|
||||
lddlflags="-shared "
|
||||
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.
|
||||
|
|
|
@ -45,7 +45,7 @@ let
|
|||
C_INCLUDE_PATH = concatStringsSep ":" (map (p: "${p}/include") 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 =
|
||||
''
|
||||
|
|
|
@ -59,7 +59,7 @@ let
|
|||
C_INCLUDE_PATH = concatStringsSep ":" (map (p: "${p}/include") 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
|
||||
''
|
||||
|
|
|
@ -1,11 +1,11 @@
|
|||
{ stdenv, fetchurl, gettext, attr }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "acl-2.2.51";
|
||||
name = "acl-2.2.52";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://savannah/acl/${name}.src.tar.gz";
|
||||
sha256 = "09aj30m49ivycl3irram8c3givc0crivjm3ymw0nhfaxrwhlb186";
|
||||
sha256 = "08qd9s3wfhv0ajswsylnfwr5h0d7j9d4rgip855nrh400nxp940p";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ gettext ];
|
||||
|
|
|
@ -1,11 +1,11 @@
|
|||
{ stdenv, fetchurl, gettext }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "attr-2.4.46";
|
||||
name = "attr-2.4.47";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://savannah/attr/${name}.src.tar.gz";
|
||||
sha256 = "07qf6kb2zk512az481bbnsk9jycn477xpva1a726n5pzlzf9pmnw";
|
||||
sha256 = "0nd8y0m6awc9ahv0ciiwf8gy54c8d3j51pw9xg7f7cn579jjyxr5";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ gettext ];
|
||||
|
|
|
@ -1,11 +1,11 @@
|
|||
{ fetchurl, stdenv, gmp, isl }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "cloog-0.16.3";
|
||||
name = "cloog-0.18.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://www.bastoul.net/cloog/pages/download/count.php3?url=./${name}.tar.gz";
|
||||
sha256 = "0lzbsszfzsr0jfwkccfbsvx913d2yc45dqwa472plmxkhbwykmc9";
|
||||
sha256 = "1c4aa8dde7886be9cbe0f9069c334843b21028f61d344a2d685f88cb1dcf2228";
|
||||
};
|
||||
|
||||
buildInputs = [ gmp ];
|
||||
|
|
|
@ -9,6 +9,15 @@ stdenv.mkDerivation rec {
|
|||
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 ];
|
||||
|
||||
meta = {
|
||||
|
|
|
@ -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
|
||||
|
|
@ -8,12 +8,12 @@ stdenv.mkDerivation {
|
|||
sha256 = "16lzgbpxdyhykdwndj1i9vx3h4bfkxqqcrvasvgg70gb5raxj0mj";
|
||||
};
|
||||
|
||||
patches = [ ./patch.patch ];
|
||||
|
||||
patches = [ ./patch.patch ./gcc47.patch ];
|
||||
|
||||
propagatedBuildInputs = [ ilmbase ];
|
||||
|
||||
|
||||
configureFlags = "--with-ilmbase-prefix=${ilmbase}";
|
||||
|
||||
|
||||
#configurePhase = "
|
||||
#export CXXFLAGS=\"-I${ilmbase}/include -L${ilmbase}/lib\"
|
||||
#echo $CXXFLAGS
|
||||
|
|
|
@ -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>
|
|
@ -10,6 +10,12 @@ stdenv.mkDerivation rec {
|
|||
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 ];
|
||||
|
||||
configureFlags = "--disable-ecore";
|
||||
|
|
|
@ -1,19 +1,17 @@
|
|||
{ stdenv, fetchurl, libiconvOrEmpty }:
|
||||
|
||||
with { inherit (stdenv.lib) optionals optionalAttrs; };
|
||||
{ stdenv, fetchurl, libiconv, xz }:
|
||||
|
||||
stdenv.mkDerivation (rec {
|
||||
name = "gettext-0.18.1.1";
|
||||
name = "gettext-0.18.2";
|
||||
|
||||
src = fetchurl {
|
||||
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" ]
|
||||
++ (optionals stdenv.isCygwin
|
||||
configureFlags = [ "--disable-csharp" "--with-xz" ]
|
||||
++ (stdenv.lib.optionals stdenv.isCygwin
|
||||
[ # We have a static libiconv, so we can only build the static lib.
|
||||
"--disable-shared" "--enable-static"
|
||||
|
||||
|
@ -32,12 +30,12 @@ stdenv.mkDerivation (rec {
|
|||
fi
|
||||
'';
|
||||
|
||||
buildInputs = libiconvOrEmpty;
|
||||
buildInputs = [ xz ] ++ stdenv.lib.optional (!stdenv.isLinux) libiconv;
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
crossAttrs = {
|
||||
buildInputs = optional (stdenv.gccCross.libc ? libiconv)
|
||||
buildInputs = stdenv.lib.optional (stdenv.gccCross.libc ? libiconv)
|
||||
stdenv.gccCross.libc.libiconv.crossDrv;
|
||||
# Gettext fails to guess the cross compiler
|
||||
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";
|
||||
}
|
||||
|
||||
// optionalAttrs stdenv.isCygwin {
|
||||
// stdenv.lib.optionalAttrs stdenv.isCygwin {
|
||||
patchPhase =
|
||||
# Make sure `error.c' gets compiled and is part of `libgettextlib.la'.
|
||||
# This fixes:
|
||||
|
|
|
@ -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@
|
|
@ -54,7 +54,10 @@ stdenv.mkDerivation rec {
|
|||
propagatedBuildInputs = [ pcre zlib libffi ] ++ libiconvOrEmpty ++ libintlOrEmpty;
|
||||
|
||||
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";
|
||||
|
||||
|
|
|
@ -56,14 +56,20 @@ stdenv.mkDerivation ({
|
|||
|
||||
./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-2013-4237.patch
|
||||
./cve-2013-4332.patch
|
||||
./cve-2013-4458.patch
|
||||
./cve-2013-4788.patch
|
||||
]
|
||||
# the problem only seems to affect i686, so avoid re-hash x86_64 ATM
|
||||
++ stdenv.lib.optional stdenv.isi686 ./strstr-sse42-hack.patch;
|
||||
|
||||
./strstr-sse42-hack.patch
|
||||
];
|
||||
|
||||
postPatch = ''
|
||||
# Needed for glibc to build with the gnumake 3.82
|
||||
|
|
|
@ -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"
|
|
@ -23,7 +23,9 @@ stdenv.mkDerivation rec {
|
|||
|
||||
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 = {
|
||||
description = "GMP, the GNU multiple precision arithmetic library";
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
stdenv.mkDerivation rec {
|
||||
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" ];
|
||||
sha256 = "0q5i39pxrasgn9qdxzpfbwhh11ph80p57x6hf48m74261d97j83m";
|
||||
};
|
||||
|
@ -15,7 +15,8 @@ stdenv.mkDerivation rec {
|
|||
# (x86), except on Solaris where some tests crash with "Memory fault".
|
||||
# See <http://hydra.nixos.org/build/2760931>, for instance.
|
||||
(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;
|
||||
|
|
@ -19,8 +19,8 @@ let version = "3.0u"; in stdenv.mkDerivation {
|
|||
platforms = ["x86_64-linux" "i686-linux"];
|
||||
};
|
||||
|
||||
buildFlags = [
|
||||
"CC=cc"
|
||||
makeFlags = [
|
||||
"CC=gcc"
|
||||
"AS=as"
|
||||
"LD=ld"
|
||||
"AR=ar"
|
||||
|
@ -29,12 +29,12 @@ let version = "3.0u"; in stdenv.mkDerivation {
|
|||
];
|
||||
|
||||
buildPhase = ''
|
||||
make $buildFlags
|
||||
make $buildFlags -C apps clean all
|
||||
make $makeFlags
|
||||
make $makeFlags -C apps clean all
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
make PREFIX="$out" install
|
||||
make PREFIX="$out" $makeFlags install
|
||||
mkdir -pv $out/share/gnu-efi
|
||||
install -D -m644 apps/*.efi $out/share/gnu-efi
|
||||
'';
|
||||
|
|
|
@ -8,6 +8,10 @@ stdenv.mkDerivation rec {
|
|||
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;
|
||||
|
||||
meta = {
|
||||
|
|
|
@ -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"
|
||||
|
|
@ -3,16 +3,14 @@
|
|||
let
|
||||
|
||||
pname = "icu4c";
|
||||
ver_maj = "52";
|
||||
ver_min = "1";
|
||||
version = "${ver_maj}.${ver_min}";
|
||||
version = "52.1";
|
||||
in
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = pname + "-" + version;
|
||||
|
||||
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";
|
||||
};
|
||||
|
||||
|
|
|
@ -1,17 +1,15 @@
|
|||
{ stdenv, fetchurl, gmp }:
|
||||
|
||||
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 {
|
||||
urls = [
|
||||
"http://www.kotnet.org/~skimo/isl/${name}.tar.bz2"
|
||||
"ftp://ftp.linux.student.kuleuven.be/pub/people/skimo/isl/${name}.tar.bz2"
|
||||
];
|
||||
sha256 = "0kpxmvhrwwdygqqafqzjf9xiksq7paac2x24g9jhr3f9ajj3zkyx";
|
||||
url = "http://pkgs.fedoraproject.org/repo/pkgs/gcc/isl-0.11.1.tar.bz2/bce1586384d8635a76d2f017fb067cd2/isl-0.11.1.tar.bz2";
|
||||
sha256 = "13d9cqa5rzhbjq0xf0b2dyxag7pqa72xj9dhsa03m8ccr1a4npq9";
|
||||
};
|
||||
|
||||
buildInputs = [ gmp ];
|
||||
patches = [ ./fix-gcc-build.diff ];
|
||||
|
||||
meta = {
|
||||
homepage = http://www.kotnet.org/~skimo/isl/;
|
||||
|
|
|
@ -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)
|
|
@ -23,11 +23,13 @@ stdenv.mkDerivation (rec {
|
|||
cd ${name}/src
|
||||
'';
|
||||
|
||||
#doCheck = true; # report: No suitable file for testing purposes
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
meta = {
|
||||
description = "MIT Kerberos 5";
|
||||
homepage = webpage;
|
||||
license = "MPL";
|
||||
description = "MIT Kerberos 5";
|
||||
homepage = webpage;
|
||||
license = "MPL";
|
||||
};
|
||||
})
|
||||
|
|
|
@ -2,11 +2,11 @@
|
|||
, sharutils }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "libarchive-3.0.4";
|
||||
name = "libarchive-3.1.2";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/downloads/libarchive/libarchive/${name}.tar.gz";
|
||||
sha256 = "76e8d7c7b100ec4071e48c1b7d3f3ea1d22b39db3e45b7189f75b5ff4df90fac";
|
||||
url = "${meta.homepage}/downloads/${name}.tar.gz";
|
||||
sha256 = "0pixqnrcf35dnqgv0lp7qlcw7k13620qkhgxr288v7p4iz6ym1zb";
|
||||
};
|
||||
|
||||
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
|
||||
compressed with gzip, bzip2, lzma, xz, ..
|
||||
'';
|
||||
homepage = http://libarchive.github.com/;
|
||||
homepage = http://libarchive.org;
|
||||
license = stdenv.lib.licenses.bsd3;
|
||||
platforms = with stdenv.lib.platforms; all;
|
||||
maintainers = with stdenv.lib.maintainers; [ jcumming ];
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
{ stdenv, fetchurl, fetchsvn, cmake, libcxxabi }:
|
||||
{ stdenv, fetchurl, fetchsvn, cmake, libcxxabi, python }:
|
||||
|
||||
let
|
||||
version = "3.4";
|
||||
|
@ -11,7 +11,7 @@ in stdenv.mkDerivation rec {
|
|||
sha256 = "1sqd5qhqj7qnn9zjxx9bv7ky4f7xgmh9sbgd53y1kszhg41217xx";
|
||||
};
|
||||
|
||||
buildInputs = [ cmake libcxxabi ];
|
||||
buildInputs = [ cmake libcxxabi python ];
|
||||
|
||||
cmakeFlags = [ "-DCMAKE_BUILD_TYPE=Release"
|
||||
"-DLIBCXX_LIBCXXABI_INCLUDE_PATHS=${libcxxabi}/include"
|
||||
|
|
|
@ -10,7 +10,7 @@ stdenv.mkDerivation (rec {
|
|||
|
||||
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'.
|
||||
checkPhase = ''
|
||||
|
|
|
@ -6,5 +6,6 @@ stdenv.mkDerivation rec {
|
|||
url = "mirror://sourceforge/libmsn/${name}.tar.bz2";
|
||||
sha256 = "338369c7455b123e84b9a7a858ac0ed2b1dc32e6529f460fdc01d28869a20fde";
|
||||
};
|
||||
patches = [ ./fix-ftbfs-gcc4.7.diff ];
|
||||
buildInputs = [ cmake openssl ];
|
||||
}
|
||||
|
|
|
@ -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>
|
|
@ -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 ----
|
|
@ -1,17 +1,24 @@
|
|||
{ stdenv, fetchurl, expat, curl, fftw }:
|
||||
|
||||
let
|
||||
version = "0.9.3";
|
||||
deb_patch = "5";
|
||||
in
|
||||
stdenv.mkDerivation rec {
|
||||
name = "libofa-0.9.3";
|
||||
|
||||
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 ];
|
||||
name = "libofa-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://musicip-libofa.googlecode.com/files/${name}.tar.gz";
|
||||
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 = {
|
||||
homepage = http://code.google.com/musicip-libofa/;
|
||||
description = "LibOFA - Library Open Fingerprint Architecture";
|
||||
|
|
|
@ -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);
|
|
@ -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"
|
|
@ -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 */
|
|
@ -1,4 +1,4 @@
|
|||
{stdenv, fetchurl, cmake, zlib}:
|
||||
{ stdenv, fetchurl, pkgconfig, cmake, zlib, glib }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "libproxy-0.4.11";
|
||||
|
@ -6,5 +6,9 @@ stdenv.mkDerivation rec {
|
|||
url = "http://libproxy.googlecode.com/files/${name}.tar.gz";
|
||||
sha256 = "0jw6454gxjykmbnbh544axi8hzz9gmm4jz1y5gw1hdqnakg36gyw";
|
||||
};
|
||||
buildInputs = [cmake zlib];
|
||||
|
||||
nativeBuildInputs = [ pkgconfig cmake ];
|
||||
propagatedBuildInputs = [ zlib ]
|
||||
# now some optional deps, but many more are possible
|
||||
++ [ glib ];
|
||||
}
|
||||
|
|
|
@ -41,7 +41,7 @@ stdenv.mkDerivation (rec {
|
|||
preInstall = ''substituteInPlace python/libxml2mod.la --replace "${python}" "$out"'';
|
||||
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
|
||||
})
|
||||
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
{ stdenv, fetchurl, libxml2 }:
|
||||
|
||||
stdenv.mkDerivation (rec {
|
||||
stdenv.mkDerivation rec {
|
||||
name = "libxslt-1.1.28";
|
||||
|
||||
src = fetchurl {
|
||||
|
@ -10,6 +10,17 @@ stdenv.mkDerivation (rec {
|
|||
|
||||
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 = ''
|
||||
mkdir -p $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;
|
||||
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"
|
||||
];
|
||||
}))
|
||||
}
|
||||
|
|
|
@ -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 {
|
|
@ -1,11 +1,11 @@
|
|||
{ fetchurl, stdenv, gmp, mpfr }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "mpc-0.9";
|
||||
name = "mpc-1.0.1";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://www.multiprecision.org/mpc/download/${name}.tar.gz";
|
||||
sha1 = "229722d553030734d49731844abfef7617b64f1a";
|
||||
sha1 = "vxg0rkyn4cs40wr2cp6bbcyr1nnijzlc";
|
||||
};
|
||||
|
||||
buildInputs = [ gmp mpfr ];
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue