Merge commit '71186e73455a4e06e96a31da34b76f84e545ba1f' into gcc-simplify-flags
This commit is contained in:
@@ -35,6 +35,6 @@ stdenv.mkDerivation rec {
|
||||
license = stdenv.lib.licenses.gpl3 ;
|
||||
maintainers = [stdenv.lib.maintainers.raskin];
|
||||
platforms = stdenv.lib.platforms.linux;
|
||||
homepage = "https://common-lisp.net/project/armedbear/";
|
||||
homepage = https://common-lisp.net/project/armedbear/;
|
||||
};
|
||||
}
|
||||
|
||||
@@ -32,9 +32,9 @@ stdenv.mkDerivation rec {
|
||||
chmod +x $out/bin/$b $t/bin/$b
|
||||
done
|
||||
'';
|
||||
|
||||
|
||||
meta = {
|
||||
description = "Flex SDK for Adobe Flash / ActionScript";
|
||||
description = "Flex SDK for Adobe Flash / ActionScript";
|
||||
homepage = "http://www.adobe.com/products/flex.html";
|
||||
license = stdenv.lib.licenses.mpl11;
|
||||
platforms = stdenv.lib.platforms.unix;
|
||||
|
||||
@@ -30,7 +30,7 @@ stdenv.mkDerivation {
|
||||
meta = {
|
||||
# Please become a maintainer to fix this package
|
||||
broken = true;
|
||||
homepage = "http://www.aldor.org/";
|
||||
homepage = http://www.aldor.org/;
|
||||
description = "Programming language with an expressive type system";
|
||||
license = stdenv.lib.licenses.asl20;
|
||||
|
||||
|
||||
@@ -32,7 +32,7 @@ in stdenv.mkDerivation {
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = "http://wiki.erazor-zone.de/wiki:projects:linux:as31";
|
||||
homepage = http://wiki.erazor-zone.de/wiki:projects:linux:as31;
|
||||
description = "An 8031/8051 assembler by Ken Stauffer and Theo Deraadt which produces a variety of object code output formats";
|
||||
maintainers = with maintainers; [ aneeshusa ];
|
||||
platforms = with platforms; unix;
|
||||
|
||||
@@ -68,11 +68,12 @@ stdenv.mkDerivation rec {
|
||||
mkdir -p "$out/bin"
|
||||
echo -e '#!/bin/sh\n'"$out/share/ccl-installation/${CCL_RUNTIME}"' "$@"\n' > "$out"/bin/"${CCL_RUNTIME}"
|
||||
chmod a+x "$out"/bin/"${CCL_RUNTIME}"
|
||||
ln -s "$out"/bin/"${CCL_RUNTIME}" "$out"/bin/ccl
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "Clozure Common Lisp";
|
||||
homepage = http://ccl.clozure.com/;
|
||||
homepage = https://ccl.clozure.com/;
|
||||
maintainers = with maintainers; [ raskin muflax tohl ];
|
||||
platforms = attrNames options;
|
||||
license = licenses.lgpl21;
|
||||
|
||||
@@ -69,7 +69,7 @@ stdenv.mkDerivation {
|
||||
CHICKEN is a compiler for the Scheme programming language.
|
||||
CHICKEN produces portable and efficient C, supports almost all
|
||||
of the R5RS Scheme language standard, and includes many
|
||||
enhancements and extensions. CHICKEN runs on Linux, MacOS X,
|
||||
enhancements and extensions. CHICKEN runs on Linux, macOS,
|
||||
Windows, and many Unix flavours.
|
||||
'';
|
||||
};
|
||||
|
||||
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
|
||||
configurePhase = ''
|
||||
substituteInPlace ./configure --replace '{toolprefix}gcc' '{toolprefix}cc'
|
||||
./configure -clightgen -prefix $out -toolprefix ${tools}/bin/ '' +
|
||||
(if stdenv.isDarwin then "ia32-macosx" else "ia32-linux");
|
||||
(if stdenv.isDarwin then "x86_64-macosx" else "x86_64-linux");
|
||||
|
||||
installTargets = "documentation install";
|
||||
|
||||
@@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
|
||||
mkdir -p $lib/share/doc/compcert
|
||||
mv doc/html $lib/share/doc/compcert/
|
||||
mkdir -p $lib/lib/coq/${coq.coq-version}/user-contrib/compcert/
|
||||
mv backend cfrontend common cparser driver flocq x86 x86_32 lib \
|
||||
mv backend cfrontend common cparser driver flocq x86 x86_64 lib \
|
||||
$lib/lib/coq/${coq.coq-version}/user-contrib/compcert/
|
||||
'';
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{ stdenv, fetchurl, boehmgc, libatomic_ops, pcre, libevent, libiconv, llvm_39, makeWrapper }:
|
||||
{ stdenv, fetchurl, boehmgc, libatomic_ops, pcre, libevent, libiconv, llvm_4, makeWrapper }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
version = "0.22.0";
|
||||
version = "0.23.0";
|
||||
name = "crystal-${version}-1";
|
||||
arch =
|
||||
{
|
||||
@@ -14,20 +14,20 @@ stdenv.mkDerivation rec {
|
||||
url = "https://github.com/crystal-lang/crystal/releases/download/${version}/crystal-${version}-1-${arch}.tar.gz";
|
||||
sha256 =
|
||||
{
|
||||
"x86_64-linux" = "03c1nmjibz8f7yhrczd49gmccx4ivqz121c64hl384w69227p7bq";
|
||||
"i686-linux" = "1s8gpmxa9wpcc2a9csl205lcpipn1i7gwybapby3q34y7xnq9160";
|
||||
"x86_64-darwin" = "1bnfxb0hbkx4qlkc1l88sdhcnhacqzy31hh7ksz0prah83g6vbxa";
|
||||
"x86_64-linux" = "0nhs7swbll8hrk15kmmywngkhij80x62axiskb1gjmiwvzhlh0qx";
|
||||
"i686-linux" = "03xp8d3lqflzzm26lpdn4yavj87qzgd6xyrqxp2pn9ybwrq8fx8a";
|
||||
"x86_64-darwin" = "1prz6c1gs8z7dgpdy2id2mjn1c8f5p2bf9b39985bav448njbyjz";
|
||||
}."${stdenv.system}" or (throw "system ${stdenv.system} not supported");
|
||||
};
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/crystal-lang/crystal/archive/${version}.tar.gz";
|
||||
sha256 = "0iw5i4hjzfxykwfdyzix23pgm3gxd79r9yss3abvva8cf7ci37sv";
|
||||
sha256 = "05ymwmjkl1b4m888p725kybpiap5ag2vj8l07d59j02inm5r0rcv";
|
||||
};
|
||||
|
||||
# crystal on Darwin needs libiconv to build
|
||||
buildInputs = [
|
||||
boehmgc libatomic_ops pcre libevent llvm_39 makeWrapper
|
||||
boehmgc libatomic_ops pcre libevent llvm_4 makeWrapper
|
||||
] ++ stdenv.lib.optionals stdenv.isDarwin [
|
||||
libiconv
|
||||
];
|
||||
@@ -86,6 +86,8 @@ stdenv.mkDerivation rec {
|
||||
install -Dm644 etc/completion.bash $out/share/bash-completion/completions/crystal
|
||||
install -Dm644 etc/completion.zsh $out/share/zsh/site-functions/_crystal
|
||||
|
||||
install -Dm644 man/crystal.1 $out/share/man/man1/crystal.1
|
||||
|
||||
install -Dm644 LICENSE $out/share/licenses/crystal/LICENSE
|
||||
'';
|
||||
|
||||
@@ -93,7 +95,7 @@ stdenv.mkDerivation rec {
|
||||
|
||||
meta = {
|
||||
description = "A compiled language with Ruby like syntax and type inference";
|
||||
homepage = "https://crystal-lang.org/";
|
||||
homepage = https://crystal-lang.org/;
|
||||
license = stdenv.lib.licenses.asl20;
|
||||
maintainers = with stdenv.lib.maintainers; [ mingchuan ];
|
||||
platforms = [ "x86_64-linux" "i686-linux" "x86_64-darwin" ];
|
||||
|
||||
@@ -90,7 +90,7 @@ let
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "A compiler for NVIDIA GPUs, math libraries, and tools";
|
||||
homepage = "https://developer.nvidia.com/cuda-toolkit";
|
||||
homepage = https://developer.nvidia.com/cuda-toolkit;
|
||||
platforms = platforms.linux;
|
||||
license = licenses.unfree;
|
||||
};
|
||||
|
||||
@@ -23,6 +23,8 @@ in stdenv.mkDerivation {
|
||||
buildInputs = [ cmake pkgconfig libffi llvm_35 ]
|
||||
++ stdenv.lib.optional doCheck perl;
|
||||
|
||||
patches = [ ./link-llvm.patch ];
|
||||
|
||||
inherit doCheck;
|
||||
|
||||
checkTarget = "tests";
|
||||
@@ -35,7 +37,7 @@ in stdenv.mkDerivation {
|
||||
Dale is a system (no GC) programming language that uses
|
||||
S-expressions for syntax and supports syntactic macros.
|
||||
'';
|
||||
homepage = "https://github.com/tomhrr/dale";
|
||||
homepage = https://github.com/tomhrr/dale;
|
||||
license = licenses.bsd3;
|
||||
maintainers = with maintainers; [ amiloradovsky ];
|
||||
platforms = with platforms; [ "i686-linux" "x86_64-linux" ];
|
||||
|
||||
10
pkgs/development/compilers/dale/link-llvm.patch
Normal file
10
pkgs/development/compilers/dale/link-llvm.patch
Normal file
@@ -0,0 +1,10 @@
|
||||
--- dale-39e16d8e89fa070de65a673d4462e783d530f95a-src.org/CMakeLists.txt 2017-06-22 08:01:05.839531242 +0100
|
||||
+++ dale-39e16d8e89fa070de65a673d4462e783d530f95a-src/CMakeLists.txt 2017-06-22 07:59:11.777566801 +0100
|
||||
@@ -78,6 +78,7 @@
|
||||
execute_process (COMMAND ${LLVM_CONFIG} --libs
|
||||
OUTPUT_VARIABLE LLVM_LIBS
|
||||
OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||
+STRING(REGEX REPLACE " " ";" LLVM_LIBS "${LLVM_LIBS}")
|
||||
if (${D_LLVM_VERSION_MINOR} GREATER 4)
|
||||
execute_process (COMMAND ${LLVM_CONFIG} --system-libs
|
||||
OUTPUT_VARIABLE LLVM_SYSTEM_LIBS
|
||||
@@ -1,47 +1,122 @@
|
||||
{ stdenv, fetchurl, unzip, makeWrapper }:
|
||||
{ stdenv, fetchFromGitHub
|
||||
, makeWrapper, unzip, which
|
||||
, curl, tzdata
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "dmd-2.067.1";
|
||||
stdenv.mkDerivation rec {
|
||||
name = "dmd-${version}";
|
||||
# This is the last version of dmd which is buildable without a D compiler.
|
||||
# So we use this as a bootstrap version.
|
||||
# The DMD frontend has been ported to D in 2.069.0 but idgen was already
|
||||
# ported in 2.068.0.
|
||||
version = "2.067.1";
|
||||
|
||||
src = fetchurl {
|
||||
url = http://downloads.dlang.org/releases/2015/dmd.2.067.1.zip;
|
||||
sha256 = "0ny99vfllvvgcl79pwisxcdnb3732i827k9zg8c0j4s0n79k5z94";
|
||||
};
|
||||
srcs = [
|
||||
(fetchFromGitHub {
|
||||
owner = "dlang";
|
||||
repo = "dmd";
|
||||
rev = "v${version}";
|
||||
sha256 = "0fm29lg8axfmzdaj0y6vg70lhwb5d9rv4aavnvdd15xjschinlcz";
|
||||
})
|
||||
(fetchFromGitHub {
|
||||
owner = "dlang";
|
||||
repo = "druntime";
|
||||
rev = "v${version}";
|
||||
sha256 = "1n2qfw9kmnql0fk2nxikispqs7vh85nhvyyr00fk227n9lgnqf02";
|
||||
})
|
||||
(fetchFromGitHub {
|
||||
owner = "dlang";
|
||||
repo = "phobos";
|
||||
rev = "v${version}";
|
||||
sha256 = "0fywgds9xvjcgnqxmpwr67p3wi2m535619pvj159cgwv5y0nr3p1";
|
||||
})
|
||||
];
|
||||
|
||||
nativeBuildInputs = [ unzip makeWrapper ];
|
||||
sourceRoot = ".";
|
||||
|
||||
postPatch = stdenv.lib.optionalString stdenv.isDarwin ''
|
||||
# Allow to use "clang++", commented in Makefile
|
||||
substituteInPlace src/dmd/posix.mak \
|
||||
--replace g++ clang++ \
|
||||
--replace MACOSX_DEPLOYMENT_TARGET MACOSX_DEPLOYMENT_TARGET_
|
||||
postUnpack = ''
|
||||
mv dmd-v${version}-src dmd
|
||||
mv druntime-v${version}-src druntime
|
||||
mv phobos-v${version}-src phobos
|
||||
'';
|
||||
|
||||
# Was not able to compile on darwin due to "__inline_isnanl"
|
||||
# being undefined.
|
||||
substituteInPlace src/dmd/root/port.c --replace __inline_isnanl __inline_isnan
|
||||
# Compile with PIC to prevent colliding modules with binutils 2.28.
|
||||
# https://issues.dlang.org/show_bug.cgi?id=17375
|
||||
usePIC = "-fPIC";
|
||||
|
||||
postPatch = ''
|
||||
# Ugly hack so the dlopen call has a chance to succeed.
|
||||
# https://issues.dlang.org/show_bug.cgi?id=15391
|
||||
substituteInPlace phobos/std/net/curl.d \
|
||||
--replace libcurl.so ${curl.out}/lib/libcurl.so
|
||||
|
||||
# Ugly hack to fix the hardcoded path to zoneinfo in the source file.
|
||||
# https://issues.dlang.org/show_bug.cgi?id=15391
|
||||
substituteInPlace phobos/std/datetime.d \
|
||||
--replace /usr/share/zoneinfo/ ${tzdata}/share/zoneinfo/
|
||||
|
||||
substituteInPlace druntime/test/shared/Makefile \
|
||||
--replace "DFLAGS:=" "DFLAGS:=${usePIC} "
|
||||
|
||||
# phobos uses curl, so we need to patch the path to the lib.
|
||||
substituteInPlace phobos/posix.mak \
|
||||
--replace "-soname=libcurl.so.4" "-soname=${curl.out}/lib/libcurl.so.4"
|
||||
|
||||
# Use proper C++ compiler
|
||||
substituteInPlace dmd/src/posix.mak \
|
||||
--replace g++ $CXX
|
||||
''
|
||||
+ stdenv.lib.optionalString stdenv.isLinux ''
|
||||
substituteInPlace src/dmd/root/port.c \
|
||||
|
||||
+ stdenv.lib.optionalString stdenv.hostPlatform.isLinux ''
|
||||
substituteInPlace dmd/src/root/port.c \
|
||||
--replace "#include <bits/mathdef.h>" "#include <complex.h>"
|
||||
'';
|
||||
''
|
||||
|
||||
+ stdenv.lib.optionalString stdenv.hostPlatform.isDarwin ''
|
||||
substituteInPlace dmd/src/posix.mak \
|
||||
--replace MACOSX_DEPLOYMENT_TARGET MACOSX_DEPLOYMENT_TARGET_
|
||||
|
||||
# Was not able to compile on darwin due to "__inline_isnanl"
|
||||
# being undefined.
|
||||
substituteInPlace dmd/src/root/port.c --replace __inline_isnanl __inline_isnan
|
||||
'';
|
||||
|
||||
nativeBuildInputs = [ makeWrapper unzip which ];
|
||||
buildInputs = [ curl tzdata ];
|
||||
|
||||
# Buid and install are based on http://wiki.dlang.org/Building_DMD
|
||||
buildPhase = ''
|
||||
cd src/dmd
|
||||
cd dmd
|
||||
make -f posix.mak INSTALL_DIR=$out
|
||||
export DMD=$PWD/dmd
|
||||
export DMD=$PWD/src/dmd
|
||||
cd ../druntime
|
||||
make -f posix.mak INSTALL_DIR=$out DMD=$DMD
|
||||
make -f posix.mak PIC=${usePIC} INSTALL_DIR=$out DMD=$DMD
|
||||
cd ../phobos
|
||||
make -f posix.mak INSTALL_DIR=$out DMD=$DMD
|
||||
cd ../..
|
||||
make -f posix.mak PIC=${usePIC} INSTALL_DIR=$out DMD=$DMD
|
||||
cd ..
|
||||
'';
|
||||
|
||||
doCheck = true;
|
||||
|
||||
checkPhase = ''
|
||||
cd dmd
|
||||
export DMD=$PWD/src/dmd
|
||||
cd ../druntime
|
||||
make -f posix.mak unittest PIC=${usePIC} DMD=$DMD BUILD=release
|
||||
cd ../phobos
|
||||
make -f posix.mak unittest PIC=${usePIC} DMD=$DMD BUILD=release
|
||||
cd ..
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
cd src/dmd
|
||||
cd dmd
|
||||
mkdir $out
|
||||
mkdir $out/bin
|
||||
cp dmd $out/bin
|
||||
cp $PWD/src/dmd $out/bin
|
||||
mkdir -p $out/share/man/man1
|
||||
mkdir -p $out/share/man/man5
|
||||
cp -r docs/man/man1/* $out/share/man/man1/
|
||||
cp -r docs/man/man5/* $out/share/man/man5/
|
||||
|
||||
cd ../druntime
|
||||
mkdir $out/include
|
||||
@@ -50,9 +125,11 @@ stdenv.mkDerivation {
|
||||
|
||||
cd ../phobos
|
||||
mkdir $out/lib
|
||||
${let bits = if stdenv.is64bit then "64" else "32";
|
||||
osname = if stdenv.isDarwin then "osx" else "linux"; in
|
||||
"cp generated/${osname}/release/${bits}/libphobos2.a $out/lib"
|
||||
${
|
||||
let bits = builtins.toString stdenv.hostPlatform.parsed.cpu.bits;
|
||||
osname = if stdenv.hostPlatform.isDarwin then "osx" else stdenv.hostPlatform.parsed.kernel.name;
|
||||
extension = if stdenv.hostPlatform.isDarwin then "a" else "{a,so}"; in
|
||||
"cp generated/${osname}/release/${bits}/libphobos2.${extension} $out/lib"
|
||||
}
|
||||
|
||||
cp -r std $out/include/d2
|
||||
@@ -65,14 +142,17 @@ stdenv.mkDerivation {
|
||||
cd $out/bin
|
||||
tee dmd.conf << EOF
|
||||
[Environment]
|
||||
DFLAGS=-I$out/include/d2 -L-L$out/lib ${stdenv.lib.optionalString (!stdenv.cc.isClang) "-L--no-warn-search-mismatch -L--export-dynamic"}
|
||||
DFLAGS=-I$out/include/d2 -L-L$out/lib ${stdenv.lib.optionalString (!stdenv.cc.isClang) "-L--export-dynamic"} -fPIC
|
||||
EOF
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "D language compiler";
|
||||
description = "Official reference compiler for the D language";
|
||||
homepage = http://dlang.org/;
|
||||
license = licenses.free; # parts under different licenses
|
||||
# Everything is now Boost licensed, even the backend.
|
||||
# https://github.com/dlang/dmd/pull/6680
|
||||
license = licenses.boost;
|
||||
platforms = platforms.unix;
|
||||
};
|
||||
}
|
||||
|
||||
|
||||
@@ -1,44 +1,123 @@
|
||||
{ stdenv, fetchurl
|
||||
{ stdenv, fetchFromGitHub
|
||||
, makeWrapper, unzip, which
|
||||
|
||||
, curl, tzdata
|
||||
# Versions 2.070.2 and up require a working dmd compiler to build:
|
||||
, bootstrapDmd }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "dmd-${version}";
|
||||
version = "2.070.2";
|
||||
version = "2.075.1";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://downloads.dlang.org/releases/2.x/${version}/dmd.${version}.zip";
|
||||
sha256 = "1pbhxxf41v816j0aky3q2pcd8a6phy3363l7vr5r5pg8ps3gl701";
|
||||
};
|
||||
srcs = [
|
||||
(fetchFromGitHub {
|
||||
owner = "dlang";
|
||||
repo = "dmd";
|
||||
rev = "v${version}";
|
||||
sha256 = "0kq6r8rcghvzk5jcphg89l85rg734s29bssd2rcw3fygx0k9a9k5";
|
||||
})
|
||||
(fetchFromGitHub {
|
||||
owner = "dlang";
|
||||
repo = "druntime";
|
||||
rev = "v${version}";
|
||||
sha256 = "0idn2v1lmp7hl637g3i7pdfj9mjk4sclkz4cm77nl8873k2fhk8j";
|
||||
})
|
||||
(fetchFromGitHub {
|
||||
owner = "dlang";
|
||||
repo = "phobos";
|
||||
rev = "v${version}";
|
||||
sha256 = "1a7q5fd15yspgs5plxgx54jyrcwgzlyw3rahmz04jd2s5h56dj04";
|
||||
})
|
||||
];
|
||||
|
||||
sourceRoot = ".";
|
||||
|
||||
postUnpack = ''
|
||||
mv dmd-v${version}-src dmd
|
||||
mv druntime-v${version}-src druntime
|
||||
mv phobos-v${version}-src phobos
|
||||
'';
|
||||
|
||||
# Compile with PIC to prevent colliding modules with binutils 2.28.
|
||||
# https://issues.dlang.org/show_bug.cgi?id=17375
|
||||
usePIC = "-fPIC";
|
||||
|
||||
postPatch = ''
|
||||
# Ugly hack so the dlopen call has a chance to succeed.
|
||||
# https://issues.dlang.org/show_bug.cgi?id=15391
|
||||
substituteInPlace phobos/std/net/curl.d \
|
||||
--replace libcurl.so ${curl.out}/lib/libcurl.so
|
||||
|
||||
# Ugly hack to fix the hardcoded path to zoneinfo in the source file.
|
||||
# https://issues.dlang.org/show_bug.cgi?id=15391
|
||||
substituteInPlace phobos/std/datetime/timezone.d \
|
||||
--replace /usr/share/zoneinfo/ ${tzdata}/share/zoneinfo/
|
||||
|
||||
substituteInPlace druntime/test/common.mak \
|
||||
--replace "DFLAGS:=" "DFLAGS:=${usePIC} "
|
||||
|
||||
# phobos uses curl, so we need to patch the path to the lib.
|
||||
substituteInPlace phobos/posix.mak \
|
||||
--replace "-soname=libcurl.so.4" "-soname=${curl.out}/lib/libcurl.so.4"
|
||||
|
||||
# Use proper C++ compiler
|
||||
substituteInPlace dmd/posix.mak \
|
||||
--replace g++ $CXX
|
||||
''
|
||||
|
||||
+ stdenv.lib.optionalString stdenv.hostPlatform.isDarwin ''
|
||||
substituteInPlace dmd/posix.mak \
|
||||
--replace MACOSX_DEPLOYMENT_TARGET MACOSX_DEPLOYMENT_TARGET_
|
||||
'';
|
||||
|
||||
nativeBuildInputs = [ bootstrapDmd makeWrapper unzip which ];
|
||||
|
||||
postPatch = stdenv.lib.optionalString stdenv.isDarwin ''
|
||||
# Allow to use "clang++", commented in Makefile
|
||||
substituteInPlace src/dmd/posix.mak \
|
||||
--replace g++ clang++ \
|
||||
--replace MACOSX_DEPLOYMENT_TARGET MACOSX_DEPLOYMENT_TARGET_
|
||||
'';
|
||||
buildInputs = [ curl tzdata ];
|
||||
|
||||
# Buid and install are based on http://wiki.dlang.org/Building_DMD
|
||||
buildPhase = ''
|
||||
cd src/dmd
|
||||
cd dmd
|
||||
make -f posix.mak INSTALL_DIR=$out
|
||||
export DMD=$PWD/dmd
|
||||
${
|
||||
let bits = builtins.toString stdenv.hostPlatform.parsed.cpu.bits;
|
||||
osname = if stdenv.hostPlatform.isDarwin then "osx" else stdenv.hostPlatform.parsed.kernel.name; in
|
||||
"export DMD=$PWD/generated/${osname}/release/${bits}/dmd"
|
||||
}
|
||||
cd ../druntime
|
||||
make -f posix.mak INSTALL_DIR=$out DMD=$DMD
|
||||
make -f posix.mak PIC=${usePIC} INSTALL_DIR=$out DMD=$DMD
|
||||
cd ../phobos
|
||||
make -f posix.mak INSTALL_DIR=$out DMD=$DMD
|
||||
cd ../..
|
||||
make -f posix.mak PIC=${usePIC} INSTALL_DIR=$out DMD=$DMD
|
||||
cd ..
|
||||
'';
|
||||
|
||||
doCheck = true;
|
||||
|
||||
checkPhase = ''
|
||||
cd dmd
|
||||
${
|
||||
let bits = builtins.toString stdenv.hostPlatform.parsed.cpu.bits;
|
||||
osname = if stdenv.hostPlatform.isDarwin then "osx" else stdenv.hostPlatform.parsed.kernel.name; in
|
||||
"export DMD=$PWD/generated/${osname}/release/${bits}/dmd"
|
||||
}
|
||||
cd ../druntime
|
||||
make -f posix.mak unittest PIC=${usePIC} DMD=$DMD BUILD=release
|
||||
cd ../phobos
|
||||
make -f posix.mak unittest PIC=${usePIC} DMD=$DMD BUILD=release
|
||||
cd ..
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
cd src/dmd
|
||||
cd dmd
|
||||
mkdir $out
|
||||
mkdir $out/bin
|
||||
cp dmd $out/bin
|
||||
${
|
||||
let bits = builtins.toString stdenv.hostPlatform.parsed.cpu.bits;
|
||||
osname = if stdenv.hostPlatform.isDarwin then "osx" else stdenv.hostPlatform.parsed.kernel.name; in
|
||||
"cp $PWD/generated/${osname}/release/${bits}/dmd $out/bin"
|
||||
}
|
||||
|
||||
mkdir -p $out/share/man/man1
|
||||
mkdir -p $out/share/man/man5
|
||||
cp -r docs/man/man1/* $out/share/man/man1/
|
||||
cp -r docs/man/man5/* $out/share/man/man5/
|
||||
|
||||
cd ../druntime
|
||||
mkdir $out/include
|
||||
@@ -47,9 +126,11 @@ stdenv.mkDerivation rec {
|
||||
|
||||
cd ../phobos
|
||||
mkdir $out/lib
|
||||
${let bits = if stdenv.is64bit then "64" else "32";
|
||||
osname = if stdenv.isDarwin then "osx" else "linux"; in
|
||||
"cp generated/${osname}/release/${bits}/libphobos2.a $out/lib"
|
||||
${
|
||||
let bits = builtins.toString stdenv.hostPlatform.parsed.cpu.bits;
|
||||
osname = if stdenv.hostPlatform.isDarwin then "osx" else stdenv.hostPlatform.parsed.kernel.name;
|
||||
extension = if stdenv.hostPlatform.isDarwin then "a" else "{a,so}"; in
|
||||
"cp generated/${osname}/release/${bits}/libphobos2.${extension} $out/lib"
|
||||
}
|
||||
|
||||
cp -r std $out/include/d2
|
||||
@@ -62,14 +143,17 @@ stdenv.mkDerivation rec {
|
||||
cd $out/bin
|
||||
tee dmd.conf << EOF
|
||||
[Environment]
|
||||
DFLAGS=-I$out/include/d2 -L-L$out/lib ${stdenv.lib.optionalString (!stdenv.cc.isClang) "-L--no-warn-search-mismatch -L--export-dynamic"}
|
||||
DFLAGS=-I$out/include/d2 -L-L$out/lib ${stdenv.lib.optionalString (!stdenv.cc.isClang) "-L--export-dynamic"} -fPIC
|
||||
EOF
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "D language compiler";
|
||||
description = "Official reference compiler for the D language";
|
||||
homepage = http://dlang.org/;
|
||||
license = licenses.free; # parts under different licenses
|
||||
# Everything is now Boost licensed, even the backend.
|
||||
# https://github.com/dlang/dmd/pull/6680
|
||||
license = licenses.boost;
|
||||
platforms = platforms.unix;
|
||||
};
|
||||
}
|
||||
|
||||
|
||||
@@ -34,7 +34,7 @@ edk2 = stdenv.mkDerivation {
|
||||
|
||||
meta = {
|
||||
description = "Intel EFI development kit";
|
||||
homepage = http://sourceforge.net/projects/edk2/;
|
||||
homepage = https://sourceforge.net/projects/edk2/;
|
||||
license = stdenv.lib.licenses.bsd2;
|
||||
platforms = ["x86_64-linux" "i686-linux"];
|
||||
};
|
||||
|
||||
@@ -32,7 +32,7 @@ mkDerivation {
|
||||
test-framework-quickcheck2 text union-find
|
||||
];
|
||||
jailbreak = true;
|
||||
homepage = "http://elm-lang.org";
|
||||
homepage = http://elm-lang.org;
|
||||
description = "Values to help with elm-package, elm-make, and elm-lang.org.";
|
||||
license = stdenv.lib.licenses.bsd3;
|
||||
# added manually since tests are not passing
|
||||
|
||||
@@ -32,7 +32,7 @@ mkDerivation {
|
||||
postInstall = ''
|
||||
ln -s $out/bin/elm-format-0.18 $out/bin/elm-format
|
||||
'';
|
||||
homepage = "http://elm-lang.org";
|
||||
homepage = http://elm-lang.org;
|
||||
description = "A source code formatter for Elm";
|
||||
license = stdenv.lib.licenses.bsd3;
|
||||
}
|
||||
|
||||
@@ -20,7 +20,7 @@ mkDerivation {
|
||||
time
|
||||
];
|
||||
jailbreak = true;
|
||||
homepage = "http://elm-lang.org";
|
||||
homepage = http://elm-lang.org;
|
||||
description = "A build tool for Elm projects";
|
||||
license = stdenv.lib.licenses.bsd3;
|
||||
}
|
||||
|
||||
@@ -29,7 +29,7 @@ mkDerivation {
|
||||
zip-archive
|
||||
];
|
||||
jailbreak = true;
|
||||
homepage = "http://github.com/elm-lang/elm-package";
|
||||
homepage = https://github.com/elm-lang/elm-package;
|
||||
description = "Package manager for Elm libraries";
|
||||
license = stdenv.lib.licenses.bsd3;
|
||||
}
|
||||
|
||||
@@ -22,7 +22,7 @@ mkDerivation {
|
||||
websockets-snap
|
||||
];
|
||||
jailbreak = true;
|
||||
homepage = "http://elm-lang.org";
|
||||
homepage = http://elm-lang.org;
|
||||
description = "Interactive development tool for Elm programs";
|
||||
license = stdenv.lib.licenses.bsd3;
|
||||
}
|
||||
|
||||
@@ -24,7 +24,7 @@ mkDerivation {
|
||||
test-framework test-framework-hunit test-framework-quickcheck2
|
||||
];
|
||||
jailbreak = true;
|
||||
homepage = "https://github.com/elm-lang/elm-repl";
|
||||
homepage = https://github.com/elm-lang/elm-repl;
|
||||
description = "a REPL for Elm";
|
||||
license = stdenv.lib.licenses.bsd3;
|
||||
}
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{ stdenv, fetchFromGitHub, cmake, python, ... }:
|
||||
|
||||
let
|
||||
rev = "1.37.13";
|
||||
rev = "1.37.16";
|
||||
gcc = if stdenv.cc.isGNU then stdenv.cc.cc else stdenv.cc.cc.gcc;
|
||||
in
|
||||
stdenv.mkDerivation rec {
|
||||
@@ -10,14 +10,14 @@ stdenv.mkDerivation rec {
|
||||
src = fetchFromGitHub {
|
||||
owner = "kripken";
|
||||
repo = "emscripten-fastcomp";
|
||||
sha256 = "1r4f4d5dmhxqwmpf2psainx7sj1j26fdp5acifdwg4sbbpsv96az";
|
||||
sha256 = "0wj9sc0gciaiidcjv6wb0qn6ks06xds7q34351masc7qpvd217by";
|
||||
inherit rev;
|
||||
};
|
||||
|
||||
srcFL = fetchFromGitHub {
|
||||
owner = "kripken";
|
||||
repo = "emscripten-fastcomp-clang";
|
||||
sha256 = "1p0108iz77vmzm7i1aa29sk93g5vd95xiwmags18qkr7x3fmfqsw";
|
||||
sha256 = "1akdgxzxhzjbhp4d14ajcrp9jrf39x004a726ly2gynqc185l4j7";
|
||||
inherit rev;
|
||||
};
|
||||
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
}:
|
||||
|
||||
let
|
||||
rev = "1.37.13";
|
||||
rev = "1.37.16";
|
||||
appdir = "share/emscripten";
|
||||
in
|
||||
|
||||
@@ -13,7 +13,7 @@ stdenv.mkDerivation {
|
||||
src = fetchFromGitHub {
|
||||
owner = "kripken";
|
||||
repo = "emscripten";
|
||||
sha256 = "0xnr8nq431pksb346fwsbs5knqmcygb8mywzzl0c9nz3ims1vkx5";
|
||||
sha256 = "1qyhjx5zza01vnwmj6qzxbkagxknn4kzb6gw12fqw5q8pa8fy4zy";
|
||||
inherit rev;
|
||||
};
|
||||
|
||||
|
||||
@@ -39,7 +39,7 @@ stdenv.mkDerivation rec {
|
||||
|
||||
meta = {
|
||||
description = "A functional CLI language";
|
||||
homepage = "http://fsharp.org/";
|
||||
homepage = http://fsharp.org/;
|
||||
license = stdenv.lib.licenses.asl20;
|
||||
maintainers = with stdenv.lib.maintainers; [ thoughtpolice raskin ];
|
||||
platforms = with stdenv.lib.platforms; unix;
|
||||
|
||||
@@ -79,7 +79,7 @@ stdenv.mkDerivation rec {
|
||||
|
||||
meta = {
|
||||
description = "A functional CLI language";
|
||||
homepage = "http://fsharp.org/";
|
||||
homepage = http://fsharp.org/;
|
||||
license = stdenv.lib.licenses.asl20;
|
||||
maintainers = with stdenv.lib.maintainers; [ thoughtpolice raskin ];
|
||||
platforms = with stdenv.lib.platforms; unix;
|
||||
|
||||
@@ -82,7 +82,7 @@ stdenv.mkDerivation rec {
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "ML-like functional programming language aimed at program verification";
|
||||
homepage = "https://www.fstar-lang.org";
|
||||
homepage = https://www.fstar-lang.org;
|
||||
license = licenses.asl20;
|
||||
platforms = with platforms; darwin ++ linux;
|
||||
};
|
||||
|
||||
41
pkgs/development/compilers/gambit/bootstrap.nix
Normal file
41
pkgs/development/compilers/gambit/bootstrap.nix
Normal file
@@ -0,0 +1,41 @@
|
||||
{ stdenv, fetchurl, autoconf, ... }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "gambit-bootstrap-${version}";
|
||||
version = "4.8.8";
|
||||
tarball_version = "v4_8_8";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://www.iro.umontreal.ca/~gambit/download/gambit/v4.8/source/gambit-${tarball_version}-devel.tgz";
|
||||
sha256 = "075k2z04d6svxqf9paj3xvp0mm0xzy0vbma1y61s0lkywdim8xjz";
|
||||
};
|
||||
|
||||
buildInputs = [ autoconf ];
|
||||
|
||||
configurePhase = ''
|
||||
./configure --prefix=$out --enable-single-host
|
||||
'';
|
||||
|
||||
buildPhase = ''
|
||||
# Copy the (configured) sources now, not later, so we don't have to filter out
|
||||
# all the intermediate build products.
|
||||
mkdir -p $out ; cp -rp . $out/
|
||||
|
||||
# build the gsc-boot* compiler
|
||||
make bootstrap
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
cp -fa ./ $out/
|
||||
'';
|
||||
|
||||
forceShare = [ "info" ];
|
||||
|
||||
meta = {
|
||||
description = "Optimizing Scheme to C compiler, bootstrap step";
|
||||
homepage = "http://gambitscheme.org";
|
||||
license = stdenv.lib.licenses.lgpl2;
|
||||
platforms = stdenv.lib.platforms.linux;
|
||||
maintainers = with stdenv.lib.maintainers; [ thoughtpolice raskin fare ];
|
||||
};
|
||||
}
|
||||
@@ -1,31 +1,75 @@
|
||||
{ stdenv, fetchurl, openssl }:
|
||||
{ stdenv, fetchurl, fetchgit, git, openssl, autoconf, pkgs }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "gambit-${version}";
|
||||
version = "4.8.6";
|
||||
devver = "4_8_6";
|
||||
version = "4.8.8-f3ffeb6";
|
||||
bootstrap = import ./bootstrap.nix ( pkgs );
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://www.iro.umontreal.ca/~gambit/download/gambit/v4.8/source/gambit-v${devver}-devel.tgz";
|
||||
sha256 = "0j3ka76cfb007rlcc3nv5p1s6vh31cwp87hwwabawf16vs1jb7bl";
|
||||
# devver = "4_8_8";
|
||||
# src = fetchurl {
|
||||
# url = "http://www.iro.umontreal.ca/~gambit/download/gambit/v4.8/source/gambit-v${version}-devel.tgz";
|
||||
# sha256 = "0j3ka76cfb007rlcc3nv5p1s6vh31cwp87hwwabawf16vs1jb7bl";
|
||||
# };
|
||||
src = fetchgit {
|
||||
url = "https://github.com/feeley/gambit.git";
|
||||
rev = "f3ffeb695aeea80c18c1b9ef276b57898c780dca";
|
||||
sha256 = "1lqixsrgk9z2gj6z1nkys0pfd3m5zjxrp3gvqn2wpr9h7hjb8x06";
|
||||
};
|
||||
|
||||
configureFlags = [
|
||||
"--enable-single-host"
|
||||
"--enable-shared"
|
||||
"--enable-absolute-shared-libs"
|
||||
"--enable-c-opt=-O6" "--enable-gcc-opts" "--enable-inline-jumps"
|
||||
"--enable-thread-system=posix" "--enable-dynamic-tls"
|
||||
"--enable-openssl"
|
||||
];
|
||||
buildInputs = [ openssl git autoconf bootstrap ];
|
||||
|
||||
buildInputs = [ openssl ];
|
||||
configurePhase = ''
|
||||
options=(
|
||||
--prefix=$out
|
||||
--enable-single-host
|
||||
--enable-c-opt=-O2
|
||||
--enable-gcc-opts
|
||||
--enable-shared
|
||||
--enable-absolute-shared-libs # Yes, NixOS will want an absolute path, and fix it.
|
||||
--enable-poll
|
||||
--enable-openssl
|
||||
|
||||
#--enable-multiple-versions # Nope, NixOS already does version multiplexing
|
||||
#--enable-guide
|
||||
#--enable-track-scheme
|
||||
#--enable-high-res-timing
|
||||
#--enable-max-processors=4
|
||||
#--enable-multiple-vms
|
||||
#--enable-dynamic-tls
|
||||
#--enable-multiple-vms
|
||||
#--enable-multiple-threaded-vms ## when SMP branch is merged in
|
||||
#--enable-thread-system=posix ## default when --enable-multiple-vms is on.
|
||||
#--enable-profile
|
||||
#--enable-coverage
|
||||
#--enable-inline-jumps
|
||||
#--enable-char-size=1" ; default is 4
|
||||
)
|
||||
./configure ''${options[@]}
|
||||
'';
|
||||
|
||||
buildPhase = ''
|
||||
# Make bootstrap compiler, from release bootstrap
|
||||
mkdir -p boot/wip-compiler &&
|
||||
cp -rp ${bootstrap}/. boot/wip-compiler/. &&
|
||||
chmod -R u+w boot &&
|
||||
cd boot/wip-compiler && \
|
||||
cp ../../gsc/makefile.in ../../gsc/*.scm gsc && \
|
||||
(cd gsc && make bootclean ) &&
|
||||
make bootstrap &&
|
||||
cd ../.. &&
|
||||
cp boot/wip-compiler/gsc/gsc gsc-boot &&
|
||||
|
||||
# Now use the bootstrap compiler to build the real thing!
|
||||
make -j2 from-scratch
|
||||
'';
|
||||
|
||||
doCheck = true;
|
||||
|
||||
meta = {
|
||||
description = "Optimizing Scheme to C compiler";
|
||||
homepage = "http://gambitscheme.org";
|
||||
license = stdenv.lib.licenses.lgpl2;
|
||||
platforms = stdenv.lib.platforms.linux;
|
||||
maintainers = with stdenv.lib.maintainers; [ thoughtpolice raskin ];
|
||||
maintainers = with stdenv.lib.maintainers; [ thoughtpolice raskin fare ];
|
||||
};
|
||||
}
|
||||
|
||||
45
pkgs/development/compilers/gcc-arm-embedded/6/default.nix
Normal file
45
pkgs/development/compilers/gcc-arm-embedded/6/default.nix
Normal file
@@ -0,0 +1,45 @@
|
||||
{ stdenv, fetchurl, ncurses5, python27 }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "gcc-arm-embedded-${version}";
|
||||
version = "6-2017-q2-update";
|
||||
subdir = "6-2017q2";
|
||||
|
||||
platformString =
|
||||
if stdenv.isLinux then "linux"
|
||||
else if stdenv.isDarwin then "mac"
|
||||
else throw "unsupported platform";
|
||||
|
||||
urlString = "https://developer.arm.com/-/media/Files/downloads/gnu-rm/${subdir}/gcc-arm-none-eabi-${version}-${platformString}.tar.bz2";
|
||||
|
||||
src =
|
||||
if stdenv.isLinux then fetchurl { url=urlString; sha256="1hvwi02mx34al525sngnl0cm7dkmzxfkb1brq9kvbv28wcplp3p6"; }
|
||||
else if stdenv.isDarwin then fetchurl { url=urlString; sha256="0019ylpq4inq7p5gydpmc9m8ni72fz2csrjlqmgx1698998q0c3x"; }
|
||||
else throw "unsupported platform";
|
||||
|
||||
phases = [ "unpackPhase" "installPhase" "fixupPhase" ];
|
||||
|
||||
installPhase = ''
|
||||
mkdir -p $out
|
||||
cp -r * $out
|
||||
'';
|
||||
|
||||
dontPatchELF = true;
|
||||
dontStrip = true;
|
||||
|
||||
preFixup = ''
|
||||
find $out -type f | while read f; do
|
||||
patchelf $f > /dev/null 2>&1 || continue
|
||||
patchelf --set-interpreter $(cat ${stdenv.cc}/nix-support/dynamic-linker) "$f" || true
|
||||
patchelf --set-rpath ${stdenv.lib.makeLibraryPath [ "$out" stdenv.cc.cc ncurses5 python27 ]} "$f" || true
|
||||
done
|
||||
'';
|
||||
|
||||
meta = {
|
||||
description = "Pre-built GNU toolchain from ARM Cortex-M & Cortex-R processors (Cortex-M0/M0+/M3/M4/M7, Cortex-R4/R5/R7/R8)";
|
||||
homepage = https://developer.arm.com/open-source/gnu-toolchain/gnu-rm;
|
||||
license = with stdenv.lib.licenses; [ bsd2 gpl2 gpl3 lgpl21 lgpl3 mit ];
|
||||
maintainers = with stdenv.lib.maintainers; [ vinymeuh ];
|
||||
platforms = with stdenv.lib.platforms; linux ++ darwin;
|
||||
};
|
||||
}
|
||||
@@ -86,7 +86,6 @@ let version = "4.5.4";
|
||||
withMode;
|
||||
|
||||
crossConfigureFlags =
|
||||
"--target=${targetPlatform.config}" +
|
||||
platformFlags +
|
||||
# Ensure that -print-prog-name is able to find the correct programs.
|
||||
" --with-as=${binutils}/bin/${targetPlatform.config}-as" +
|
||||
@@ -242,6 +241,8 @@ stdenv.mkDerivation ({
|
||||
++ (optionals langVhdl [gnat])
|
||||
;
|
||||
|
||||
# TODO(@Ericson2314): Always pass "--target" and always prefix.
|
||||
configurePlatforms = [ "build" "host" ] ++ stdenv.lib.optional (targetPlatform != hostPlatform) "target";
|
||||
configureFlags = "
|
||||
${if enableMultilib then "" else "--disable-multilib"}
|
||||
${if enableShared then "" else "--disable-shared"}
|
||||
@@ -278,11 +279,9 @@ stdenv.mkDerivation ({
|
||||
if targetPlatform == hostPlatform && stdenv.system == "mips64el-linux" then "--with-arch=loongson2f" else ""}
|
||||
${if langAda then " --enable-libada" else ""}
|
||||
${if targetPlatform == hostPlatform && targetPlatform.isi686 then "--with-arch=i686" else ""}
|
||||
${platformFlags}
|
||||
${if targetPlatform != hostPlatform then crossConfigureFlags else ""}
|
||||
${if targetPlatform == hostPlatform then platformFlags else ""}
|
||||
" + optionalString
|
||||
(hostPlatform != buildPlatform)
|
||||
(platformFlags + " --target=${targetPlatform.config}");
|
||||
";
|
||||
|
||||
targetConfig = if targetPlatform != hostPlatform then targetPlatform.config else null;
|
||||
|
||||
@@ -329,7 +328,7 @@ stdenv.mkDerivation ({
|
||||
NIX_CC_CROSS = optionalString (targetPlatform == hostPlatform) builtins.toString stdenv.cc;
|
||||
dontStrip = true;
|
||||
};
|
||||
|
||||
|
||||
|
||||
# Needed for the cross compilation to work
|
||||
AR = "ar";
|
||||
@@ -357,8 +356,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 = makeLibraryPath ([]
|
||||
@@ -466,7 +464,7 @@ stdenv.mkDerivation ({
|
||||
'';
|
||||
|
||||
meta = {
|
||||
homepage = "http://ghdl.free.fr/";
|
||||
homepage = http://ghdl.free.fr/;
|
||||
license = stdenv.lib.licenses.gpl2Plus;
|
||||
description = "Complete VHDL simulator, using the GCC technology (gcc ${version})";
|
||||
maintainers = with stdenv.lib.maintainers; [viric];
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
{ stdenv, fetchurl, noSysDirs
|
||||
{ stdenv, fetchurl, fetchpatch, noSysDirs
|
||||
, langC ? true, langCC ? true, langFortran ? false
|
||||
, langObjC ? targetPlatform.isDarwin
|
||||
, langObjCpp ? targetPlatform.isDarwin
|
||||
@@ -71,7 +71,14 @@ let version = "4.8.5";
|
||||
# target libraries and tools.
|
||||
++ optional langAda ../gnat-cflags.patch
|
||||
++ optional langFortran ../gfortran-driving.patch
|
||||
++ optional hostPlatform.isDarwin ../gfortran-darwin-NXConstStr.patch;
|
||||
++ optional hostPlatform.isDarwin ../gfortran-darwin-NXConstStr.patch
|
||||
++ [(fetchpatch {
|
||||
name = "libc_name_p.diff"; # needed to build with gcc6
|
||||
url = "https://gcc.gnu.org/git/?p=gcc.git;a=commitdiff_plain;h=ec1cc0263f1";
|
||||
sha256 = "01jd7pdarh54ki498g6sz64ijl9a1l5f9v8q2696aaxalvh2vwzl";
|
||||
excludes = [ "gcc/cp/ChangeLog" ];
|
||||
})]
|
||||
;
|
||||
|
||||
javaEcj = fetchurl {
|
||||
# The `$(top_srcdir)/ecj.jar' file is automatically picked up at
|
||||
@@ -122,8 +129,6 @@ let version = "4.8.5";
|
||||
crossMingw = targetPlatform != hostPlatform && targetPlatform.libc == "msvcrt";
|
||||
crossDarwin = targetPlatform != hostPlatform && targetPlatform.libc == "libSystem";
|
||||
crossConfigureFlags =
|
||||
"--target=${targetPlatform.config}" +
|
||||
platformFlags +
|
||||
# Ensure that -print-prog-name is able to find the correct programs.
|
||||
" --with-as=${binutils}/bin/${targetPlatform.config}-as" +
|
||||
" --with-ld=${binutils}/bin/${targetPlatform.config}-ld" +
|
||||
@@ -200,7 +205,7 @@ stdenv.mkDerivation ({
|
||||
|
||||
hardeningDisable = [ "format" ];
|
||||
|
||||
outputs = [ "out" "lib" "doc" ];
|
||||
outputs = [ "out" "lib" "man" "info" ];
|
||||
setOutputFlags = false;
|
||||
NIX_NO_SELF_RPATH = true;
|
||||
|
||||
@@ -292,6 +297,8 @@ stdenv.mkDerivation ({
|
||||
|
||||
dontDisableStatic = true;
|
||||
|
||||
# TODO(@Ericson2314): Always pass "--target" and always prefix.
|
||||
configurePlatforms = [ "build" "host" ] ++ stdenv.lib.optional (targetPlatform != hostPlatform) "target";
|
||||
configureFlags = "
|
||||
${if hostPlatform.isSunOS then
|
||||
" --enable-long-long --enable-libssp --enable-threads=posix --disable-nls --enable-__cxa_atexit " +
|
||||
@@ -345,12 +352,10 @@ stdenv.mkDerivation ({
|
||||
else ""}
|
||||
${if langAda then " --enable-libada" else ""}
|
||||
${if targetPlatform == hostPlatform && targetPlatform.isi686 then "--with-arch=i686" else ""}
|
||||
${platformFlags}
|
||||
${if targetPlatform != hostPlatform then crossConfigureFlags else ""}
|
||||
${if !bootstrap then "--disable-bootstrap" else ""}
|
||||
${if targetPlatform == hostPlatform then platformFlags else ""}
|
||||
" + optionalString
|
||||
(hostPlatform != buildPlatform)
|
||||
(platformFlags + " --target=${targetPlatform.config}");
|
||||
";
|
||||
|
||||
targetConfig = if targetPlatform != hostPlatform then targetPlatform.config else null;
|
||||
|
||||
@@ -436,7 +441,7 @@ stdenv.mkDerivation ({
|
||||
|
||||
# On GNU/Hurd glibc refers to Mach & Hurd
|
||||
# headers.
|
||||
++ optionals (libcCross != null && libcCross ? "propagatedBuildInputs" )
|
||||
++ optionals (libcCross != null && libcCross ? propagatedBuildInputs)
|
||||
libcCross.propagatedBuildInputs);
|
||||
|
||||
LIBRARY_PATH = makeLibraryPath ([]
|
||||
|
||||
@@ -72,8 +72,7 @@ let version = "4.9.4";
|
||||
# target libraries and tools.
|
||||
++ optional langAda ../gnat-cflags.patch
|
||||
++ optional langFortran ../gfortran-driving.patch
|
||||
# The NXConstStr.patch can be removed at 4.9.4
|
||||
++ optional hostPlatform.isDarwin ../gfortran-darwin-NXConstStr.patch;
|
||||
;
|
||||
|
||||
javaEcj = fetchurl {
|
||||
# The `$(top_srcdir)/ecj.jar' file is automatically picked up at
|
||||
@@ -124,8 +123,6 @@ let version = "4.9.4";
|
||||
crossMingw = targetPlatform != hostPlatform && targetPlatform.libc == "msvcrt";
|
||||
crossDarwin = targetPlatform != hostPlatform && targetPlatform.libc == "libSystem";
|
||||
crossConfigureFlags =
|
||||
"--target=${targetPlatform.config}" +
|
||||
platformFlags +
|
||||
# Ensure that -print-prog-name is able to find the correct programs.
|
||||
" --with-as=${binutils}/bin/${targetPlatform.config}-as" +
|
||||
" --with-ld=${binutils}/bin/${targetPlatform.config}-ld" +
|
||||
@@ -300,6 +297,8 @@ stdenv.mkDerivation ({
|
||||
|
||||
dontDisableStatic = true;
|
||||
|
||||
# TODO(@Ericson2314): Always pass "--target" and always prefix.
|
||||
configurePlatforms = [ "build" "host" ] ++ stdenv.lib.optional (targetPlatform != hostPlatform) "target";
|
||||
configureFlags = "
|
||||
${if hostPlatform.isSunOS then
|
||||
" --enable-long-long --enable-libssp --enable-threads=posix --disable-nls --enable-__cxa_atexit " +
|
||||
@@ -351,12 +350,10 @@ stdenv.mkDerivation ({
|
||||
else ""}
|
||||
${if langAda then " --enable-libada" else ""}
|
||||
${if targetPlatform == hostPlatform && targetPlatform.isi686 then "--with-arch=i686" else ""}
|
||||
${platformFlags}
|
||||
${if targetPlatform != hostPlatform then crossConfigureFlags else ""}
|
||||
${if !bootstrap then "--disable-bootstrap" else ""}
|
||||
${if targetPlatform == hostPlatform then platformFlags else ""}
|
||||
" + optionalString
|
||||
(hostPlatform != buildPlatform)
|
||||
(platformFlags + " --target=${targetPlatform.config}");
|
||||
";
|
||||
|
||||
targetConfig = if targetPlatform != hostPlatform then targetPlatform.config else null;
|
||||
|
||||
@@ -442,7 +439,7 @@ stdenv.mkDerivation ({
|
||||
|
||||
# On GNU/Hurd glibc refers to Mach & Hurd
|
||||
# headers.
|
||||
++ optionals (libcCross != null && libcCross ? "propagatedBuildInputs" )
|
||||
++ optionals (libcCross != null && libcCross ? propagatedBuildInputs)
|
||||
libcCross.propagatedBuildInputs);
|
||||
|
||||
LIBRARY_PATH = makeLibraryPath ([]
|
||||
|
||||
@@ -129,8 +129,6 @@ let version = "5.4.0";
|
||||
crossMingw = targetPlatform != hostPlatform && targetPlatform.libc == "msvcrt";
|
||||
crossDarwin = targetPlatform != hostPlatform && targetPlatform.libc == "libSystem";
|
||||
crossConfigureFlags =
|
||||
"--target=${targetPlatform.config}" +
|
||||
platformFlags +
|
||||
# Ensure that -print-prog-name is able to find the correct programs.
|
||||
" --with-as=${binutils}/bin/${targetPlatform.config}-as" +
|
||||
" --with-ld=${binutils}/bin/${targetPlatform.config}-ld" +
|
||||
@@ -316,6 +314,8 @@ stdenv.mkDerivation ({
|
||||
|
||||
dontDisableStatic = true;
|
||||
|
||||
# TODO(@Ericson2314): Always pass "--target" and always prefix.
|
||||
configurePlatforms = [ "build" "host" ] ++ stdenv.lib.optional (targetPlatform != hostPlatform) "target";
|
||||
configureFlags = "
|
||||
${if hostPlatform.isSunOS then
|
||||
" --enable-long-long --enable-libssp --enable-threads=posix --disable-nls --enable-__cxa_atexit " +
|
||||
@@ -368,16 +368,10 @@ stdenv.mkDerivation ({
|
||||
else ""}
|
||||
${if langAda then " --enable-libada" else ""}
|
||||
${if targetPlatform == hostPlatform && targetPlatform.isi686 then "--with-arch=i686" else ""}
|
||||
${platformFlags}
|
||||
${if targetPlatform != hostPlatform then crossConfigureFlags else ""}
|
||||
${if !bootstrap then "--disable-bootstrap" else ""}
|
||||
${if targetPlatform == hostPlatform then platformFlags else ""}
|
||||
" + optionalString
|
||||
(hostPlatform != buildPlatform)
|
||||
(platformFlags + ''
|
||||
--build=${buildPlatform.config}
|
||||
--host=${hostPlatform.config}
|
||||
--target=${targetPlatform.config}
|
||||
'');
|
||||
";
|
||||
|
||||
targetConfig = if targetPlatform != hostPlatform then targetPlatform.config else null;
|
||||
|
||||
@@ -463,7 +457,7 @@ stdenv.mkDerivation ({
|
||||
|
||||
# On GNU/Hurd glibc refers to Mach & Hurd
|
||||
# headers.
|
||||
++ optionals (libcCross != null && libcCross ? "propagatedBuildInputs" )
|
||||
++ optionals (libcCross != null && libcCross ? propagatedBuildInputs)
|
||||
libcCross.propagatedBuildInputs);
|
||||
|
||||
LIBRARY_PATH = makeLibraryPath ([]
|
||||
|
||||
@@ -1,25 +0,0 @@
|
||||
From 5972cd58bde3bc8bacfe994e5b127c411241f255 Mon Sep 17 00:00:00 2001
|
||||
From: law <law@138bc75d-0d04-0410-961f-82ee72b054a4>
|
||||
Date: Tue, 3 Jan 2017 05:36:40 +0000
|
||||
Subject: [PATCH] * config/darwin-driver.c (darwin_driver_init):
|
||||
Const-correctness fixes for first_period and second_period variables.
|
||||
|
||||
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@244010 138bc75d-0d04-0410-961f-82ee72b054a4
|
||||
---
|
||||
diff --git a/gcc/config/darwin-driver.c b/gcc/config/darwin-driver.c
|
||||
index 0c4f0cd..e3ed79d 100644
|
||||
--- a/gcc/config/darwin-driver.c
|
||||
+++ b/gcc/config/darwin-driver.c
|
||||
@@ -299,10 +299,10 @@ darwin_driver_init (unsigned int *decoded_options_count,
|
||||
if (vers_string != NULL)
|
||||
{
|
||||
char *asm_major = NULL;
|
||||
- char *first_period = strchr(vers_string, '.');
|
||||
+ const char *first_period = strchr(vers_string, '.');
|
||||
if (first_period != NULL)
|
||||
{
|
||||
- char *second_period = strchr(first_period+1, '.');
|
||||
+ const char *second_period = strchr(first_period+1, '.');
|
||||
if (second_period != NULL)
|
||||
asm_major = xstrndup (vers_string, second_period-vers_string);
|
||||
else
|
||||
@@ -58,7 +58,7 @@ assert langGo -> langCC;
|
||||
with stdenv.lib;
|
||||
with builtins;
|
||||
|
||||
let version = "6.3.0";
|
||||
let version = "6.4.0";
|
||||
|
||||
# Whether building a cross-compiler for GNU/Hurd.
|
||||
crossGNU = targetPlatform != hostPlatform && targetPlatform.config == "i586-pc-gnu";
|
||||
@@ -72,8 +72,7 @@ let version = "6.3.0";
|
||||
# The GNAT Makefiles did not pay attention to CFLAGS_FOR_TARGET for its
|
||||
# target libraries and tools.
|
||||
++ optional langAda ../gnat-cflags.patch
|
||||
++ optional langFortran ../gfortran-driving.patch
|
||||
++ optional hostPlatform.isDarwin ./darwin-const-correct.patch; # Kill this after 6.3.0
|
||||
++ optional langFortran ../gfortran-driving.patch;
|
||||
|
||||
javaEcj = fetchurl {
|
||||
# The `$(top_srcdir)/ecj.jar' file is automatically picked up at
|
||||
@@ -124,8 +123,6 @@ let version = "6.3.0";
|
||||
crossMingw = targetPlatform != hostPlatform && targetPlatform.libc == "msvcrt";
|
||||
crossDarwin = targetPlatform != hostPlatform && targetPlatform.libc == "libSystem";
|
||||
crossConfigureFlags =
|
||||
"--target=${targetPlatform.config}" +
|
||||
platformFlags +
|
||||
# Ensure that -print-prog-name is able to find the correct programs.
|
||||
" --with-as=${binutils}/bin/${targetPlatform.config}-as" +
|
||||
" --with-ld=${binutils}/bin/${targetPlatform.config}-ld" +
|
||||
@@ -195,8 +192,8 @@ stdenv.mkDerivation ({
|
||||
builder = ../builder.sh;
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://gnu/gcc/gcc-${version}/gcc-${version}.tar.bz2";
|
||||
sha256 = "17xjz30jb65hcf714vn9gcxvrrji8j20xm7n33qg1ywhyzryfsph";
|
||||
url = "mirror://gnu/gcc/gcc-${version}/gcc-${version}.tar.xz";
|
||||
sha256 = "1m0lr7938lw5d773dkvwld90hjlcq2282517d1gwvrfzmwgg42w5";
|
||||
};
|
||||
|
||||
inherit patches;
|
||||
@@ -209,6 +206,19 @@ stdenv.mkDerivation ({
|
||||
|
||||
hardeningDisable = [ "format" ];
|
||||
|
||||
# This should kill all the stdinc frameworks that gcc and friends like to
|
||||
# insert into default search paths.
|
||||
prePatch = stdenv.lib.optionalString hostPlatform.isDarwin ''
|
||||
substituteInPlace gcc/config/darwin-c.c \
|
||||
--replace 'if (stdinc)' 'if (0)'
|
||||
|
||||
substituteInPlace libgcc/config/t-slibgcc-darwin \
|
||||
--replace "-install_name @shlib_slibdir@/\$(SHLIB_INSTALL_NAME)" "-install_name $lib/lib/\$(SHLIB_INSTALL_NAME)"
|
||||
|
||||
substituteInPlace libgfortran/configure \
|
||||
--replace "-install_name \\\$rpath/\\\$soname" "-install_name $lib/lib/\\\$soname"
|
||||
'';
|
||||
|
||||
postPatch =
|
||||
if (hostPlatform.isHurd
|
||||
|| (libcCross != null # e.g., building `gcc.crossDrv'
|
||||
@@ -296,6 +306,8 @@ stdenv.mkDerivation ({
|
||||
|
||||
dontDisableStatic = true;
|
||||
|
||||
# TODO(@Ericson2314): Always pass "--target" and always prefix.
|
||||
configurePlatforms = [ "build" "host" ] ++ stdenv.lib.optional (targetPlatform != hostPlatform) "target";
|
||||
configureFlags = "
|
||||
${if hostPlatform.isSunOS then
|
||||
" --enable-long-long --enable-libssp --enable-threads=posix --disable-nls --enable-__cxa_atexit " +
|
||||
@@ -348,12 +360,10 @@ stdenv.mkDerivation ({
|
||||
else ""}
|
||||
${if langAda then " --enable-libada" else ""}
|
||||
${if targetPlatform == hostPlatform && targetPlatform.isi686 then "--with-arch=i686" else ""}
|
||||
${platformFlags}
|
||||
${if targetPlatform != hostPlatform then crossConfigureFlags else ""}
|
||||
${if !bootstrap then "--disable-bootstrap" else ""}
|
||||
${if targetPlatform == hostPlatform then platformFlags else ""}
|
||||
" + optionalString
|
||||
(hostPlatform != buildPlatform)
|
||||
(platformFlags + " --target=${targetPlatform.config}");
|
||||
";
|
||||
|
||||
targetConfig = if targetPlatform != hostPlatform then targetPlatform.config else null;
|
||||
|
||||
@@ -439,7 +449,7 @@ stdenv.mkDerivation ({
|
||||
|
||||
# On GNU/Hurd glibc refers to Mach & Hurd
|
||||
# headers.
|
||||
++ optionals (libcCross != null && libcCross ? "propagatedBuildInputs")
|
||||
++ optionals (libcCross != null && libcCross ? propagatedBuildInputs)
|
||||
libcCross.propagatedBuildInputs);
|
||||
|
||||
LIBRARY_PATH = makeLibraryPath ([]
|
||||
|
||||
@@ -124,8 +124,6 @@ let version = "7.1.0";
|
||||
crossMingw = targetPlatform != hostPlatform && targetPlatform.libc == "msvcrt";
|
||||
crossDarwin = targetPlatform != hostPlatform && targetPlatform.libc == "libSystem";
|
||||
crossConfigureFlags =
|
||||
"--target=${targetPlatform.config}" +
|
||||
platformFlags +
|
||||
# Ensure that -print-prog-name is able to find the correct programs.
|
||||
" --with-as=${binutils}/bin/${targetPlatform.config}-as" +
|
||||
" --with-ld=${binutils}/bin/${targetPlatform.config}-ld" +
|
||||
@@ -210,6 +208,19 @@ stdenv.mkDerivation ({
|
||||
|
||||
hardeningDisable = [ "format" ];
|
||||
|
||||
# This should kill all the stdinc frameworks that gcc and friends like to
|
||||
# insert into default search paths.
|
||||
prePatch = stdenv.lib.optionalString hostPlatform.isDarwin ''
|
||||
substituteInPlace gcc/config/darwin-c.c \
|
||||
--replace 'if (stdinc)' 'if (0)'
|
||||
|
||||
substituteInPlace libgcc/config/t-slibgcc-darwin \
|
||||
--replace "-install_name @shlib_slibdir@/\$(SHLIB_INSTALL_NAME)" "-install_name $lib/lib/\$(SHLIB_INSTALL_NAME)"
|
||||
|
||||
substituteInPlace libgfortran/configure \
|
||||
--replace "-install_name \\\$rpath/\\\$soname" "-install_name $lib/lib/\\\$soname"
|
||||
'';
|
||||
|
||||
postPatch =
|
||||
if (hostPlatform.isHurd
|
||||
|| (libcCross != null # e.g., building `gcc.crossDrv'
|
||||
@@ -297,6 +308,8 @@ stdenv.mkDerivation ({
|
||||
|
||||
dontDisableStatic = true;
|
||||
|
||||
# TODO(@Ericson2314): Always pass "--target" and always prefix.
|
||||
configurePlatforms = [ "build" "host" ] ++ stdenv.lib.optional (targetPlatform != hostPlatform) "target";
|
||||
configureFlags = "
|
||||
${if hostPlatform.isSunOS then
|
||||
" --enable-long-long --enable-libssp --enable-threads=posix --disable-nls --enable-__cxa_atexit " +
|
||||
@@ -349,12 +362,10 @@ stdenv.mkDerivation ({
|
||||
else ""}
|
||||
${if langAda then " --enable-libada" else ""}
|
||||
${if targetPlatform == hostPlatform && targetPlatform.isi686 then "--with-arch=i686" else ""}
|
||||
${platformFlags}
|
||||
${if targetPlatform != hostPlatform then crossConfigureFlags else ""}
|
||||
${if !bootstrap then "--disable-bootstrap" else ""}
|
||||
${if targetPlatform == hostPlatform then platformFlags else ""}
|
||||
" + optionalString
|
||||
(hostPlatform != buildPlatform)
|
||||
(platformFlags + " --target=${targetPlatform.config}");
|
||||
";
|
||||
|
||||
targetConfig = if targetPlatform != hostPlatform then targetPlatform.config else null;
|
||||
|
||||
@@ -440,7 +451,7 @@ stdenv.mkDerivation ({
|
||||
|
||||
# On GNU/Hurd glibc refers to Mach & Hurd
|
||||
# headers.
|
||||
++ optionals (libcCross != null && libcCross ? "propagatedBuildInputs")
|
||||
++ optionals (libcCross != null && libcCross ? propagatedBuildInputs)
|
||||
libcCross.propagatedBuildInputs);
|
||||
|
||||
LIBRARY_PATH = makeLibraryPath ([]
|
||||
|
||||
@@ -124,8 +124,6 @@ let version = "7-20170409";
|
||||
crossMingw = targetPlatform != hostPlatform && targetPlatform.libc == "msvcrt";
|
||||
crossDarwin = targetPlatform != hostPlatform && targetPlatform.libc == "libSystem";
|
||||
crossConfigureFlags =
|
||||
"--target=${targetPlatform.config}" +
|
||||
platformFlags +
|
||||
# Ensure that -print-prog-name is able to find the correct programs.
|
||||
" --with-as=${binutils}/bin/${targetPlatform.config}-as" +
|
||||
" --with-ld=${binutils}/bin/${targetPlatform.config}-ld" +
|
||||
@@ -297,6 +295,8 @@ stdenv.mkDerivation ({
|
||||
|
||||
dontDisableStatic = true;
|
||||
|
||||
# TODO(@Ericson2314): Always pass "--target" and always prefix.
|
||||
configurePlatforms = [ "build" "host" ] ++ stdenv.lib.optional (targetPlatform != hostPlatform) "target";
|
||||
configureFlags = "
|
||||
${if hostPlatform.isSunOS then
|
||||
" --enable-long-long --enable-libssp --enable-threads=posix --disable-nls --enable-__cxa_atexit " +
|
||||
@@ -349,12 +349,10 @@ stdenv.mkDerivation ({
|
||||
else ""}
|
||||
${if langAda then " --enable-libada" else ""}
|
||||
${if targetPlatform == hostPlatform && targetPlatform.isi686 then "--with-arch=i686" else ""}
|
||||
${platformFlags}
|
||||
${if targetPlatform != hostPlatform then crossConfigureFlags else ""}
|
||||
${if !bootstrap then "--disable-bootstrap" else ""}
|
||||
${if targetPlatform == hostPlatform then platformFlags else ""}
|
||||
" + optionalString
|
||||
(hostPlatform != buildPlatform)
|
||||
(platformFlags + " --target=${targetPlatform.config}");
|
||||
";
|
||||
|
||||
targetConfig = if targetPlatform != hostPlatform then targetPlatform.config else null;
|
||||
|
||||
@@ -440,7 +438,7 @@ stdenv.mkDerivation ({
|
||||
|
||||
# On GNU/Hurd glibc refers to Mach & Hurd
|
||||
# headers.
|
||||
++ optionals (libcCross != null && libcCross ? "propagatedBuildInputs")
|
||||
++ optionals (libcCross != null && libcCross ? propagatedBuildInputs)
|
||||
libcCross.propagatedBuildInputs);
|
||||
|
||||
LIBRARY_PATH = makeLibraryPath ([]
|
||||
|
||||
@@ -1,15 +1,22 @@
|
||||
{ stdenv, fetchurl, fetchgit, gambit, openssl, zlib, coreutils, rsync, bash }:
|
||||
{ stdenv, fetchurl, fetchgit, gambit,
|
||||
coreutils, rsync, bash,
|
||||
openssl, zlib, sqlite, libxml2, libyaml, libmysql, lmdb, leveldb }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "gerbil-${version}";
|
||||
|
||||
version = "0.11";
|
||||
src = fetchurl {
|
||||
url = "https://github.com/vyzo/gerbil/archive/v${version}.tar.gz";
|
||||
sha256 = "0mqg6cqdcf5qr7vk79x5zkls7z2wm8i3lhwn0b7i0g1m6yyyyff7";
|
||||
version = "0.12-DEV";
|
||||
src = fetchgit {
|
||||
url = "https://github.com/vyzo/gerbil.git";
|
||||
rev = "3657b6e940ea248e0b312f276590e38ff68997e7";
|
||||
sha256 = "11ys7082ghkm4yikz4qxmv3jpxcr42jfi0jhjw1mpzbqdg6004w2";
|
||||
};
|
||||
|
||||
buildInputs = [ gambit openssl zlib coreutils rsync bash ];
|
||||
buildInputs = [
|
||||
gambit openssl
|
||||
coreutils rsync bash
|
||||
zlib openssl zlib sqlite libxml2 libyaml libmysql lmdb leveldb
|
||||
];
|
||||
|
||||
postPatch = ''
|
||||
patchShebangs .
|
||||
@@ -21,7 +28,13 @@ stdenv.mkDerivation rec {
|
||||
|
||||
buildPhase = ''
|
||||
runHook preBuild
|
||||
|
||||
# Enable all optional libraries
|
||||
substituteInPlace "src/std/build-features.ss" --replace '#f' '#t'
|
||||
|
||||
# Build, replacing make by build.sh
|
||||
( cd src && sh build.sh )
|
||||
|
||||
runHook postBuild
|
||||
'';
|
||||
|
||||
|
||||
@@ -98,7 +98,7 @@ stdenv.mkDerivation rec {
|
||||
'';
|
||||
|
||||
meta = {
|
||||
homepage = "http://haskell.org/ghc";
|
||||
homepage = http://haskell.org/ghc;
|
||||
description = "The Glasgow Haskell Compiler";
|
||||
license = stdenv.lib.licenses.bsd3;
|
||||
platforms = ["x86_64-linux" "i686-linux"];
|
||||
|
||||
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
|
||||
NIX_CFLAGS_COMPILE = "-fomit-frame-pointer";
|
||||
|
||||
meta = {
|
||||
homepage = "http://haskell.org/ghc";
|
||||
homepage = http://haskell.org/ghc;
|
||||
description = "The Glasgow Haskell Compiler";
|
||||
platforms = ["x86_64-linux" "i686-linux"]; # Darwin is unsupported.
|
||||
inherit (ghc.meta) license;
|
||||
|
||||
@@ -34,7 +34,7 @@ stdenv.mkDerivation rec {
|
||||
stripDebugFlags=["-S" "--keep-file-symbols"];
|
||||
|
||||
meta = {
|
||||
homepage = "http://haskell.org/ghc";
|
||||
homepage = http://haskell.org/ghc;
|
||||
description = "The Glasgow Haskell Compiler";
|
||||
maintainers = with stdenv.lib.maintainers; [ marcweber andres peti ];
|
||||
platforms = ["x86_64-linux" "i686-linux"]; # Darwin is unsupported.
|
||||
|
||||
@@ -43,7 +43,7 @@ stdenv.mkDerivation rec {
|
||||
stripDebugFlags=["-S" "--keep-file-symbols"];
|
||||
|
||||
meta = {
|
||||
homepage = "http://haskell.org/ghc";
|
||||
homepage = http://haskell.org/ghc;
|
||||
description = "The Glasgow Haskell Compiler";
|
||||
maintainers = [
|
||||
stdenv.lib.maintainers.marcweber
|
||||
|
||||
@@ -79,7 +79,7 @@ stdenv.mkDerivation rec {
|
||||
};
|
||||
|
||||
meta = {
|
||||
homepage = "http://haskell.org/ghc";
|
||||
homepage = http://haskell.org/ghc;
|
||||
description = "The Glasgow Haskell Compiler";
|
||||
maintainers = with stdenv.lib.maintainers; [ marcweber andres peti ];
|
||||
inherit (ghc.meta) license platforms;
|
||||
|
||||
@@ -77,7 +77,7 @@ stdenv.mkDerivation rec {
|
||||
};
|
||||
|
||||
meta = {
|
||||
homepage = "http://haskell.org/ghc";
|
||||
homepage = http://haskell.org/ghc;
|
||||
description = "The Glasgow Haskell Compiler";
|
||||
maintainers = with stdenv.lib.maintainers; [ marcweber andres peti ];
|
||||
inherit (ghc.meta) license platforms;
|
||||
|
||||
@@ -52,7 +52,7 @@ stdenv.mkDerivation rec {
|
||||
stripDebugFlags=["-S" "--keep-file-symbols"];
|
||||
|
||||
meta = {
|
||||
homepage = "http://haskell.org/ghc";
|
||||
homepage = http://haskell.org/ghc;
|
||||
description = "The Glasgow Haskell Compiler";
|
||||
maintainers = [
|
||||
stdenv.lib.maintainers.marcweber
|
||||
|
||||
@@ -53,7 +53,7 @@ stdenv.mkDerivation rec {
|
||||
stripDebugFlags = [ "-S" ] ++ stdenv.lib.optional (!stdenv.isDarwin) "--keep-file-symbols";
|
||||
|
||||
meta = {
|
||||
homepage = "http://haskell.org/ghc";
|
||||
homepage = http://haskell.org/ghc;
|
||||
description = "The Glasgow Haskell Compiler";
|
||||
maintainers = [
|
||||
stdenv.lib.maintainers.marcweber
|
||||
|
||||
@@ -79,7 +79,7 @@ in stdenv.mkDerivation rec {
|
||||
stripDebugFlags = [ "-S" ] ++ stdenv.lib.optional (!stdenv.isDarwin) "--keep-file-symbols";
|
||||
|
||||
meta = {
|
||||
homepage = "http://haskell.org/ghc";
|
||||
homepage = http://haskell.org/ghc;
|
||||
description = "The Glasgow Haskell Compiler";
|
||||
maintainers = [
|
||||
stdenv.lib.maintainers.marcweber
|
||||
|
||||
@@ -50,7 +50,7 @@ stdenv.mkDerivation rec {
|
||||
stripDebugFlags = [ "-S" ] ++ stdenv.lib.optional (!stdenv.isDarwin) "--keep-file-symbols";
|
||||
|
||||
meta = {
|
||||
homepage = "http://haskell.org/ghc";
|
||||
homepage = http://haskell.org/ghc;
|
||||
description = "The Glasgow Haskell Compiler";
|
||||
maintainers = with stdenv.lib.maintainers; [ marcweber andres peti ];
|
||||
inherit (ghc.meta) license platforms;
|
||||
|
||||
@@ -50,7 +50,7 @@ stdenv.mkDerivation (rec {
|
||||
stripDebugFlags = [ "-S" ] ++ stdenv.lib.optional (!stdenv.isDarwin) "--keep-file-symbols";
|
||||
|
||||
meta = {
|
||||
homepage = "http://haskell.org/ghc";
|
||||
homepage = http://haskell.org/ghc;
|
||||
description = "The Glasgow Haskell Compiler";
|
||||
maintainers = with stdenv.lib.maintainers; [ marcweber andres peti ];
|
||||
inherit (ghc.meta) license platforms;
|
||||
|
||||
@@ -82,7 +82,7 @@ stdenv.mkDerivation rec {
|
||||
};
|
||||
|
||||
meta = {
|
||||
homepage = "http://haskell.org/ghc";
|
||||
homepage = http://haskell.org/ghc;
|
||||
description = "The Glasgow Haskell Compiler";
|
||||
maintainers = with stdenv.lib.maintainers; [ marcweber andres peti ];
|
||||
inherit (ghc.meta) license platforms;
|
||||
|
||||
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
|
||||
sha256 = "1c8qc4fhkycynk4g1f9hvk53dj6a1vvqi6bklqznns6hw59m8qhi";
|
||||
};
|
||||
|
||||
patches = []
|
||||
patches = [ ./ghc-gold-linker.patch ]
|
||||
++ stdenv.lib.optional stdenv.isLinux ./ghc-no-madv-free.patch
|
||||
++ stdenv.lib.optional stdenv.isDarwin ./ghc-8.0.2-no-cpp-warnings.patch;
|
||||
|
||||
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
outputs = [ "out" "doc" ];
|
||||
outputs = [ "out" "man" "doc" ];
|
||||
|
||||
preConfigure = ''
|
||||
sed -i -e 's|-isysroot /Developer/SDKs/MacOSX10.5.sdk||' configure
|
||||
@@ -74,7 +74,7 @@ stdenv.mkDerivation rec {
|
||||
};
|
||||
|
||||
meta = {
|
||||
homepage = "http://haskell.org/ghc";
|
||||
homepage = http://haskell.org/ghc;
|
||||
description = "The Glasgow Haskell Compiler";
|
||||
maintainers = with stdenv.lib.maintainers; [ marcweber andres peti ];
|
||||
inherit (ghc.meta) license platforms;
|
||||
|
||||
@@ -9,8 +9,8 @@
|
||||
|
||||
let
|
||||
inherit (bootPkgs) ghc;
|
||||
version = "8.2.1-rc2";
|
||||
preReleaseName = "ghc-8.2.0.20170507";
|
||||
version = "8.2.1";
|
||||
preReleaseName = "ghc-8.2.1";
|
||||
commonBuildInputs = [ alex autoconf automake ghc happy hscolour perl python3 sphinx ];
|
||||
commonPreConfigure = ''
|
||||
sed -i -e 's|-isysroot /Developer/SDKs/MacOSX10.5.sdk||' configure
|
||||
@@ -27,11 +27,13 @@ in stdenv.mkDerivation (rec {
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://downloads.haskell.org/~ghc/${version}/${preReleaseName}-src.tar.xz";
|
||||
sha256 = "1hy3l6nzkyhzwy9mii4zs51jv048zwvdqk1q3188jznz35392zrn";
|
||||
sha256 = "1w4k0n23b9fg8kmarqhfamzpmf91p6jcdr6xlwzfmb4df2bd9hng";
|
||||
};
|
||||
|
||||
postPatch = "patchShebangs .";
|
||||
|
||||
patches = [ ./ghc-gold-linker.patch ];
|
||||
|
||||
preConfigure = commonPreConfigure;
|
||||
|
||||
buildInputs = commonBuildInputs;
|
||||
@@ -80,7 +82,7 @@ in stdenv.mkDerivation (rec {
|
||||
};
|
||||
|
||||
meta = {
|
||||
homepage = "http://haskell.org/ghc";
|
||||
homepage = http://haskell.org/ghc;
|
||||
description = "The Glasgow Haskell Compiler";
|
||||
maintainers = with stdenv.lib.maintainers; [ marcweber andres peti ];
|
||||
inherit (ghc.meta) license platforms;
|
||||
|
||||
54
pkgs/development/compilers/ghc/ghc-gold-linker.patch
Normal file
54
pkgs/development/compilers/ghc/ghc-gold-linker.patch
Normal file
@@ -0,0 +1,54 @@
|
||||
From 46fe80ab7c0013a929d0934e61429820042a70a9 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Niklas=20Hamb=C3=BCchen?= <mail@nh2.me>
|
||||
Date: Fri, 21 Jul 2017 20:09:11 +0200
|
||||
Subject: [PATCH 1/2] base: Add `extra-libraries: m` because base uses libm
|
||||
functions.
|
||||
|
||||
Linking with gold needs this because in contrast to ld, gold
|
||||
doesn't implicitly link libm.
|
||||
|
||||
Found by Michael Bishop <cleverca22@gmail.com>.
|
||||
---
|
||||
libraries/base/base.cabal | 4 ++++
|
||||
1 file changed, 4 insertions(+)
|
||||
|
||||
diff --git a/libraries/base/base.cabal b/libraries/base/base.cabal
|
||||
index f00fb8768e5..fd91f268ffe 100644
|
||||
--- a/libraries/base/base.cabal
|
||||
+++ b/libraries/base/base.cabal
|
||||
@@ -342,6 +342,10 @@ Library
|
||||
WCsubst.h
|
||||
consUtils.h
|
||||
|
||||
+ -- Base uses libm functions. ld.bfd links libm implicitly when necessary.
|
||||
+ -- Other linkers, like gold, don't, so we have to declare it explicitly.
|
||||
+ extra-libraries: m
|
||||
+
|
||||
-- OS Specific
|
||||
if os(windows)
|
||||
-- Windows requires some extra libraries for linking because the RTS
|
||||
|
||||
From 900a8f4931e9bc6d3219d9263cfecfc6af8fc766 Mon Sep 17 00:00:00 2001
|
||||
From: michael bishop <cleverca22@gmail.com>
|
||||
Date: Sat, 22 Jul 2017 13:12:39 -0300
|
||||
Subject: [PATCH 2/2] also add -lm to ghc-prim
|
||||
|
||||
---
|
||||
libraries/ghc-prim/ghc-prim.cabal | 4 ++++
|
||||
1 file changed, 4 insertions(+)
|
||||
|
||||
diff --git a/libraries/ghc-prim/ghc-prim.cabal b/libraries/ghc-prim/ghc-prim.cabal
|
||||
index 00a029efedf..6db85dd69fc 100644
|
||||
--- a/libraries/ghc-prim/ghc-prim.cabal
|
||||
+++ b/libraries/ghc-prim/ghc-prim.cabal
|
||||
@@ -42,6 +42,10 @@ Library
|
||||
UnliftedFFITypes
|
||||
|
||||
build-depends: rts == 1.0.*
|
||||
+
|
||||
+ -- Base uses libm functions. ld.bfd links libm implicitly when necessary.
|
||||
+ -- Other linkers, like gold, don't, so we have to declare it explicitly.
|
||||
+ extra-libraries: m
|
||||
|
||||
exposed-modules:
|
||||
GHC.CString
|
||||
@@ -5,6 +5,7 @@
|
||||
# If enabled GHC will be build with the GPL-free but slower integer-simple
|
||||
# library instead of the faster but GPLed integer-gmp library.
|
||||
, enableIntegerSimple ? false, gmp
|
||||
, version ? "8.3.20170808"
|
||||
}:
|
||||
|
||||
let
|
||||
@@ -12,8 +13,7 @@ let
|
||||
|
||||
commonBuildInputs = [ ghc perl autoconf automake happy alex python3 ];
|
||||
|
||||
version = "8.1.20170106";
|
||||
rev = "b4f2afe70ddbd0576b4eba3f82ba1ddc52e9b3bd";
|
||||
rev = "14457cf6a50f708eecece8f286f08687791d51f7";
|
||||
|
||||
commonPreConfigure = ''
|
||||
echo ${version} >VERSION
|
||||
@@ -34,7 +34,7 @@ in stdenv.mkDerivation (rec {
|
||||
src = fetchgit {
|
||||
url = "git://git.haskell.org/ghc.git";
|
||||
inherit rev;
|
||||
sha256 = "1h064nikx5srsd7qvz19f6dxvnpfjp0b3b94xs1f4nar18hzf4j0";
|
||||
sha256 = "08vj9ca7rq7rv8pjfl14fg2lg9d6zisrwlq6bi5vzr006816dy8y";
|
||||
};
|
||||
|
||||
postPatch = "patchShebangs .";
|
||||
@@ -87,7 +87,7 @@ in stdenv.mkDerivation (rec {
|
||||
};
|
||||
|
||||
meta = {
|
||||
homepage = "http://haskell.org/ghc";
|
||||
homepage = http://haskell.org/ghc;
|
||||
description = "The Glasgow Haskell Compiler";
|
||||
maintainers = with stdenv.lib.maintainers; [ marcweber andres peti ];
|
||||
inherit (ghc.meta) license platforms;
|
||||
|
||||
@@ -186,7 +186,7 @@ in mkDerivation (rec {
|
||||
};
|
||||
};
|
||||
|
||||
homepage = "https://github.com/ghcjs/ghcjs";
|
||||
homepage = https://github.com/ghcjs/ghcjs;
|
||||
description = "A Haskell to JavaScript compiler that uses the GHC API";
|
||||
license = stdenv.lib.licenses.bsd3;
|
||||
platforms = ghc.meta.platforms;
|
||||
|
||||
@@ -2,7 +2,7 @@ diff --git a/src-bin/Boot.hs b/src-bin/Boot.hs
|
||||
index db8b12e..7b815c5 100644
|
||||
--- a/src-bin/Boot.hs
|
||||
+++ b/src-bin/Boot.hs
|
||||
@@ -526,9 +526,7 @@ initPackageDB :: B ()
|
||||
@@ -540,9 +540,7 @@ initPackageDB :: B ()
|
||||
initPackageDB = do
|
||||
msg info "creating package databases"
|
||||
initDB "--global" <^> beLocations . blGlobalDB
|
||||
@@ -12,7 +12,7 @@ index db8b12e..7b815c5 100644
|
||||
initDB dbName db = do
|
||||
rm_rf db >> mkdir_p db
|
||||
ghcjs_pkg_ ["init", toTextI db] `catchAny_` return ()
|
||||
@@ -552,29 +550,22 @@ installDevelopmentTree = subTop $ do
|
||||
@@ -566,29 +564,22 @@ installDevelopmentTree = subTop $ do
|
||||
msgD info $ "preparing development boot tree"
|
||||
checkpoint' "ghcjs-boot-git" "ghcjs-boot repository already cloned and prepared" $ do
|
||||
testGit "ghcjs-boot" >>= \case
|
||||
@@ -46,7 +46,25 @@ index db8b12e..7b815c5 100644
|
||||
mapM_ patchPackage =<< allPackages
|
||||
preparePrimops
|
||||
buildGenPrim
|
||||
@@ -1110,14 +1101,14 @@ cabalInstallFlags parmakeGhcjs = do
|
||||
@@ -1141,7 +1132,7 @@ cabalStage1 pkgs = sub $ do
|
||||
globalFlags <- cabalGlobalFlags
|
||||
flags <- cabalInstallFlags (length pkgs == 1)
|
||||
let args = globalFlags ++ ("install" : pkgs) ++
|
||||
- [ "--solver=topdown" -- the modular solver refuses to install stage1 packages
|
||||
+ [ "--allow-boot-library-installs"
|
||||
] ++ map ("--configure-option="<>) configureOpts ++ flags
|
||||
checkInstallPlan pkgs args
|
||||
cabal_ args
|
||||
@@ -1162,7 +1153,7 @@ cabalInstall pkgs = do
|
||||
-- uses somewhat fragile parsing of --dry-run output, find a better way
|
||||
checkInstallPlan :: [Package] -> [Text] -> B ()
|
||||
checkInstallPlan pkgs opts = do
|
||||
- plan <- cabal (opts ++ ["-v2", "--dry-run"])
|
||||
+ plan <- cabal (opts ++ ["-vverbose+nowrap", "--dry-run"])
|
||||
when (hasReinstalls plan || hasUnexpectedInstalls plan || hasNewVersion plan) (err plan)
|
||||
where
|
||||
hasReinstalls = T.isInfixOf "(reinstall)" -- reject reinstalls
|
||||
@@ -1201,14 +1192,14 @@ cabalInstallFlags parmakeGhcjs = do
|
||||
, "--avoid-reinstalls"
|
||||
, "--builddir", "dist"
|
||||
, "--with-compiler", ghcjs ^. pgmLocText
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
base HUnit test-framework test-framework-hunit
|
||||
];
|
||||
jailbreak = true;
|
||||
homepage = "https://github.com/simonmar/async";
|
||||
homepage = https://github.com/simonmar/async;
|
||||
description = "Run IO operations asynchronously and wait for their results";
|
||||
license = stdenv.lib.licenses.bsd3;
|
||||
}) {};
|
||||
@@ -47,7 +47,7 @@
|
||||
time time-locale-compat unordered-containers uuid-types vector
|
||||
];
|
||||
jailbreak = true;
|
||||
homepage = "https://github.com/bos/aeson";
|
||||
homepage = https://github.com/bos/aeson;
|
||||
description = "Fast JSON parsing and encoding";
|
||||
license = stdenv.lib.licenses.bsd3;
|
||||
}) {};
|
||||
@@ -76,7 +76,7 @@
|
||||
transformers unordered-containers vector
|
||||
];
|
||||
jailbreak = true;
|
||||
homepage = "https://github.com/bos/attoparsec";
|
||||
homepage = https://github.com/bos/attoparsec;
|
||||
description = "Fast combinator parsing for bytestrings and text";
|
||||
license = stdenv.lib.licenses.bsd3;
|
||||
}) {};
|
||||
@@ -95,7 +95,7 @@
|
||||
];
|
||||
benchmarkHaskellDepends = [ base bytestring criterion deepseq ];
|
||||
jailbreak = true;
|
||||
homepage = "https://github.com/basvandijk/case-insensitive";
|
||||
homepage = https://github.com/basvandijk/case-insensitive;
|
||||
description = "Case insensitive string comparison";
|
||||
license = stdenv.lib.licenses.bsd3;
|
||||
}) {};
|
||||
@@ -109,7 +109,7 @@
|
||||
libraryHaskellDepends = [ base deepseq ];
|
||||
testHaskellDepends = [ base Cabal QuickCheck ];
|
||||
jailbreak = true;
|
||||
homepage = "https://github.com/spl/dlist";
|
||||
homepage = https://github.com/spl/dlist;
|
||||
description = "Difference lists";
|
||||
license = stdenv.lib.licenses.bsd3;
|
||||
}) {};
|
||||
@@ -143,7 +143,7 @@
|
||||
test-framework-hunit test-framework-quickcheck2 text unix
|
||||
];
|
||||
jailbreak = true;
|
||||
homepage = "http://github.com/tibbe/hashable";
|
||||
homepage = http://github.com/tibbe/hashable;
|
||||
description = "A class for types that can be converted to a hash value";
|
||||
license = stdenv.lib.licenses.bsd3;
|
||||
}) {};
|
||||
@@ -156,7 +156,7 @@
|
||||
doCheck = false;
|
||||
libraryHaskellDepends = [ base transformers ];
|
||||
jailbreak = true;
|
||||
homepage = "http://github.com/ekmett/mtl";
|
||||
homepage = http://github.com/ekmett/mtl;
|
||||
description = "Monad classes, using functional dependencies";
|
||||
license = stdenv.lib.licenses.bsd3;
|
||||
}) {};
|
||||
@@ -204,7 +204,7 @@
|
||||
];
|
||||
benchmarkHaskellDepends = [ base criterion ];
|
||||
jailbreak = true;
|
||||
homepage = "https://github.com/basvandijk/scientific";
|
||||
homepage = https://github.com/basvandijk/scientific;
|
||||
description = "Numbers represented using scientific notation";
|
||||
license = stdenv.lib.licenses.bsd3;
|
||||
}) {};
|
||||
@@ -230,7 +230,7 @@
|
||||
libraryHaskellDepends = [ base ];
|
||||
testHaskellDepends = [ base containers HUnit mtl ];
|
||||
jailbreak = true;
|
||||
homepage = "http://www.cs.uu.nl/wiki/GenericProgramming/SYB";
|
||||
homepage = http://www.cs.uu.nl/wiki/GenericProgramming/SYB;
|
||||
description = "Scrap Your Boilerplate";
|
||||
license = stdenv.lib.licenses.bsd3;
|
||||
}) {};
|
||||
@@ -247,7 +247,7 @@
|
||||
base deepseq template-haskell transformers transformers-compat
|
||||
];
|
||||
jailbreak = true;
|
||||
homepage = "http://github.com/ekmett/tagged";
|
||||
homepage = http://github.com/ekmett/tagged;
|
||||
description = "Haskell 98 phantom types to avoid unsafely passing dummy arguments";
|
||||
license = stdenv.lib.licenses.bsd3;
|
||||
}) {};
|
||||
@@ -271,7 +271,7 @@
|
||||
test-framework-hunit test-framework-quickcheck2
|
||||
];
|
||||
jailbreak = true;
|
||||
homepage = "https://github.com/bos/text";
|
||||
homepage = https://github.com/bos/text;
|
||||
description = "An efficient packed Unicode text type";
|
||||
license = stdenv.lib.licenses.bsd3;
|
||||
}) {};
|
||||
@@ -295,7 +295,7 @@
|
||||
hashable hashmap mtl random
|
||||
];
|
||||
jailbreak = true;
|
||||
homepage = "https://github.com/tibbe/unordered-containers";
|
||||
homepage = https://github.com/tibbe/unordered-containers;
|
||||
description = "Efficient hashing-based container types";
|
||||
license = stdenv.lib.licenses.bsd3;
|
||||
}) {};
|
||||
@@ -318,7 +318,7 @@
|
||||
base bytestring containers criterion deepseq random
|
||||
];
|
||||
jailbreak = true;
|
||||
homepage = "https://github.com/aslatter/uuid";
|
||||
homepage = https://github.com/aslatter/uuid;
|
||||
description = "Type definitions for Universally Unique Identifiers";
|
||||
license = stdenv.lib.licenses.bsd3;
|
||||
}) {};
|
||||
@@ -338,7 +338,7 @@
|
||||
test-framework-quickcheck2 transformers
|
||||
];
|
||||
jailbreak = true;
|
||||
homepage = "https://github.com/haskell/vector";
|
||||
homepage = https://github.com/haskell/vector;
|
||||
description = "Efficient Arrays";
|
||||
license = stdenv.lib.licenses.bsd3;
|
||||
}) {};
|
||||
@@ -366,7 +366,7 @@
|
||||
test-framework-hunit test-framework-quickcheck2 text
|
||||
];
|
||||
jailbreak = true;
|
||||
homepage = "http://github.com/ghcjs/ghcjs-base";
|
||||
homepage = http://github.com/ghcjs/ghcjs-base;
|
||||
description = "Base library for GHCJS";
|
||||
license = stdenv.lib.licenses.mit;
|
||||
}) {};
|
||||
@@ -392,7 +392,7 @@
|
||||
test-framework-hunit test-framework-quickcheck2 unix
|
||||
];
|
||||
jailbreak = true;
|
||||
homepage = "http://www.haskell.org/cabal/";
|
||||
homepage = http://www.haskell.org/cabal/;
|
||||
description = "A framework for packaging Haskell software";
|
||||
license = stdenv.lib.licenses.bsd3;
|
||||
}) {};
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
base HUnit test-framework test-framework-hunit
|
||||
];
|
||||
jailbreak = true;
|
||||
homepage = "https://github.com/simonmar/async";
|
||||
homepage = https://github.com/simonmar/async;
|
||||
description = "Run IO operations asynchronously and wait for their results";
|
||||
license = stdenv.lib.licenses.bsd3;
|
||||
}) {};
|
||||
@@ -42,7 +42,7 @@
|
||||
test-framework-quickcheck2 text time unordered-containers vector
|
||||
];
|
||||
jailbreak = true;
|
||||
homepage = "https://github.com/bos/aeson";
|
||||
homepage = https://github.com/bos/aeson;
|
||||
description = "Fast JSON parsing and encoding";
|
||||
license = stdenv.lib.licenses.bsd3;
|
||||
}) {};
|
||||
@@ -67,7 +67,7 @@
|
||||
test-framework-quickcheck2 text transformers vector
|
||||
];
|
||||
jailbreak = true;
|
||||
homepage = "https://github.com/bos/attoparsec";
|
||||
homepage = https://github.com/bos/attoparsec;
|
||||
description = "Fast combinator parsing for bytestrings and text";
|
||||
license = stdenv.lib.licenses.bsd3;
|
||||
}) {};
|
||||
@@ -85,7 +85,7 @@
|
||||
base bytestring HUnit test-framework test-framework-hunit text
|
||||
];
|
||||
jailbreak = true;
|
||||
homepage = "https://github.com/basvandijk/case-insensitive";
|
||||
homepage = https://github.com/basvandijk/case-insensitive;
|
||||
description = "Case insensitive string comparison";
|
||||
license = stdenv.lib.licenses.bsd3;
|
||||
}) {};
|
||||
@@ -99,7 +99,7 @@
|
||||
libraryHaskellDepends = [ base deepseq ];
|
||||
testHaskellDepends = [ base Cabal QuickCheck ];
|
||||
jailbreak = true;
|
||||
homepage = "https://github.com/spl/dlist";
|
||||
homepage = https://github.com/spl/dlist;
|
||||
description = "Difference lists";
|
||||
license = stdenv.lib.licenses.bsd3;
|
||||
}) {};
|
||||
@@ -133,7 +133,7 @@
|
||||
test-framework-hunit test-framework-quickcheck2 text unix
|
||||
];
|
||||
jailbreak = true;
|
||||
homepage = "http://github.com/tibbe/hashable";
|
||||
homepage = http://github.com/tibbe/hashable;
|
||||
description = "A class for types that can be converted to a hash value";
|
||||
license = stdenv.lib.licenses.bsd3;
|
||||
}) {};
|
||||
@@ -146,7 +146,7 @@
|
||||
doCheck = false;
|
||||
libraryHaskellDepends = [ base transformers ];
|
||||
jailbreak = true;
|
||||
homepage = "http://github.com/ekmett/mtl";
|
||||
homepage = http://github.com/ekmett/mtl;
|
||||
description = "Monad classes, using functional dependencies";
|
||||
license = stdenv.lib.licenses.bsd3;
|
||||
}) {};
|
||||
@@ -193,7 +193,7 @@
|
||||
tasty-hunit tasty-quickcheck tasty-smallcheck text
|
||||
];
|
||||
jailbreak = true;
|
||||
homepage = "https://github.com/basvandijk/scientific";
|
||||
homepage = https://github.com/basvandijk/scientific;
|
||||
description = "Numbers represented using scientific notation";
|
||||
license = stdenv.lib.licenses.bsd3;
|
||||
}) {};
|
||||
@@ -219,7 +219,7 @@
|
||||
libraryHaskellDepends = [ base ];
|
||||
testHaskellDepends = [ base containers HUnit mtl ];
|
||||
jailbreak = true;
|
||||
homepage = "http://www.cs.uu.nl/wiki/GenericProgramming/SYB";
|
||||
homepage = http://www.cs.uu.nl/wiki/GenericProgramming/SYB;
|
||||
description = "Scrap Your Boilerplate";
|
||||
license = stdenv.lib.licenses.bsd3;
|
||||
}) {};
|
||||
@@ -243,7 +243,7 @@
|
||||
test-framework-hunit test-framework-quickcheck2
|
||||
];
|
||||
jailbreak = true;
|
||||
homepage = "https://github.com/bos/text";
|
||||
homepage = https://github.com/bos/text;
|
||||
description = "An efficient packed Unicode text type";
|
||||
license = stdenv.lib.licenses.bsd3;
|
||||
}) {};
|
||||
@@ -263,7 +263,7 @@
|
||||
test-framework test-framework-hunit test-framework-quickcheck2
|
||||
];
|
||||
jailbreak = true;
|
||||
homepage = "https://github.com/tibbe/unordered-containers";
|
||||
homepage = https://github.com/tibbe/unordered-containers;
|
||||
description = "Efficient hashing-based container types";
|
||||
license = stdenv.lib.licenses.bsd3;
|
||||
}) {};
|
||||
@@ -283,7 +283,7 @@
|
||||
test-framework-quickcheck2 transformers
|
||||
];
|
||||
jailbreak = true;
|
||||
homepage = "https://github.com/haskell/vector";
|
||||
homepage = https://github.com/haskell/vector;
|
||||
description = "Efficient Arrays";
|
||||
license = stdenv.lib.licenses.bsd3;
|
||||
}) {};
|
||||
@@ -311,7 +311,7 @@
|
||||
test-framework-hunit test-framework-quickcheck2 text
|
||||
];
|
||||
jailbreak = true;
|
||||
homepage = "http://github.com/ghcjs/ghcjs-base";
|
||||
homepage = http://github.com/ghcjs/ghcjs-base;
|
||||
description = "Base library for GHCJS";
|
||||
license = stdenv.lib.licenses.mit;
|
||||
}) {};
|
||||
@@ -337,7 +337,7 @@
|
||||
test-framework-hunit test-framework-quickcheck2 unix
|
||||
];
|
||||
jailbreak = true;
|
||||
homepage = "http://www.haskell.org/cabal/";
|
||||
homepage = http://www.haskell.org/cabal/;
|
||||
description = "A framework for packaging Haskell software";
|
||||
license = stdenv.lib.licenses.bsd3;
|
||||
}) {};
|
||||
|
||||
@@ -34,7 +34,7 @@ stdenv.mkDerivation rec {
|
||||
enableParallelBuilding = true;
|
||||
|
||||
meta = {
|
||||
homepage = "http://sourceforge.net/p/ghdl-updates/wiki/Home/";
|
||||
homepage = http://sourceforge.net/p/ghdl-updates/wiki/Home/;
|
||||
description = "Free VHDL simulator";
|
||||
maintainers = with stdenv.lib.maintainers; [viric];
|
||||
platforms = with stdenv.lib.platforms; (if flavour == "llvm" then [ "i686-linux" "x86_64-linux" ]
|
||||
|
||||
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "An open-source COBOL compiler";
|
||||
homepage = http://sourceforge.net/projects/open-cobol/;
|
||||
homepage = https://sourceforge.net/projects/open-cobol/;
|
||||
license = licenses.gpl3;
|
||||
maintainers = with maintainers; [ ericsagnes ];
|
||||
platforms = platforms.linux;
|
||||
|
||||
@@ -113,6 +113,7 @@ stdenv.mkDerivation rec {
|
||||
patches = [
|
||||
./remove-tools-1.5.patch
|
||||
./creds-test.patch
|
||||
./fix-systime-1.6.patch
|
||||
|
||||
# This test checks for the wrong thing with recent tzdata. It's been fixed in master but the patch
|
||||
# actually works on old versions too.
|
||||
@@ -127,6 +128,7 @@ stdenv.mkDerivation rec {
|
||||
else if stdenv.system == "i686-linux" then "386"
|
||||
else if stdenv.system == "x86_64-linux" then "amd64"
|
||||
else if stdenv.isArm then "arm"
|
||||
else if stdenv.isAarch64 then "arm64"
|
||||
else throw "Unsupported system";
|
||||
GOARM = stdenv.lib.optionalString (stdenv.system == "armv5tel-linux") "5";
|
||||
GO386 = 387; # from Arch: don't assume sse2 on i686
|
||||
|
||||
@@ -123,6 +123,7 @@ stdenv.mkDerivation rec {
|
||||
else if stdenv.system == "i686-linux" then "386"
|
||||
else if stdenv.system == "x86_64-linux" then "amd64"
|
||||
else if stdenv.isArm then "arm"
|
||||
else if stdenv.isAarch64 then "arm64"
|
||||
else throw "Unsupported system";
|
||||
GOARM = optionalString (stdenv.system == "armv5tel-linux") "5";
|
||||
GO386 = 387; # from Arch: don't assume sse2 on i686
|
||||
|
||||
@@ -128,6 +128,7 @@ stdenv.mkDerivation rec {
|
||||
else if stdenv.system == "i686-linux" then "386"
|
||||
else if stdenv.system == "x86_64-linux" then "amd64"
|
||||
else if stdenv.isArm then "arm"
|
||||
else if stdenv.isAarch64 then "arm64"
|
||||
else throw "Unsupported system";
|
||||
GOARM = optionalString (stdenv.system == "armv5tel-linux") "5";
|
||||
GO386 = 387; # from Arch: don't assume sse2 on i686
|
||||
|
||||
45
pkgs/development/compilers/go/fix-systime-1.6.patch
Normal file
45
pkgs/development/compilers/go/fix-systime-1.6.patch
Normal file
@@ -0,0 +1,45 @@
|
||||
diff --git a/src/runtime/sys_darwin_amd64.s b/src/runtime/sys_darwin_amd64.s
|
||||
index e09b906ba5..fa8ff2f65c 100644
|
||||
--- a/src/runtime/sys_darwin_amd64.s
|
||||
+++ b/src/runtime/sys_darwin_amd64.s
|
||||
@@ -157,6 +157,7 @@ systime:
|
||||
// Fall back to system call (usually first call in this thread).
|
||||
MOVQ SP, DI
|
||||
MOVQ $0, SI
|
||||
+ MOVQ $0, DX // required as of Sierra; Issue 16570
|
||||
MOVL $(0x2000000+116), AX
|
||||
SYSCALL
|
||||
CMPQ AX, $0
|
||||
diff --git a/src/syscall/syscall_darwin_amd64.go b/src/syscall/syscall_darwin_amd64.go
|
||||
index 70b53b87f4..79083117b6 100644
|
||||
--- a/src/syscall/syscall_darwin_amd64.go
|
||||
+++ b/src/syscall/syscall_darwin_amd64.go
|
||||
@@ -26,14 +26,21 @@ func NsecToTimeval(nsec int64) (tv Timeval) {
|
||||
}
|
||||
|
||||
//sysnb gettimeofday(tp *Timeval) (sec int64, usec int32, err error)
|
||||
-func Gettimeofday(tv *Timeval) (err error) {
|
||||
- // The tv passed to gettimeofday must be non-nil
|
||||
- // but is otherwise unused. The answers come back
|
||||
- // in the two registers.
|
||||
+func Gettimeofday(tv *Timeval) error {
|
||||
+ // The tv passed to gettimeofday must be non-nil.
|
||||
+ // Before macOS Sierra (10.12), tv was otherwise unused and
|
||||
+ // the answers came back in the two registers.
|
||||
+ // As of Sierra, gettimeofday return zeros and populates
|
||||
+ // tv itself.
|
||||
sec, usec, err := gettimeofday(tv)
|
||||
- tv.Sec = sec
|
||||
- tv.Usec = usec
|
||||
- return err
|
||||
+ if err != nil {
|
||||
+ return err
|
||||
+ }
|
||||
+ if sec != 0 || usec != 0 {
|
||||
+ tv.Sec = sec
|
||||
+ tv.Usec = usec
|
||||
+ }
|
||||
+ return nil
|
||||
}
|
||||
|
||||
func SetKevent(k *Kevent_t, fd, mode, flags int) {
|
||||
@@ -34,7 +34,7 @@ stdenv.mkDerivation rec {
|
||||
doCheck = true;
|
||||
|
||||
meta = {
|
||||
homepage = "http://www.gnu.org/software/gprolog/";
|
||||
homepage = http://www.gnu.org/software/gprolog/;
|
||||
description = "GNU Prolog, a free Prolog compiler with constraint solving over finite domains";
|
||||
license = stdenv.lib.licenses.lgpl3Plus;
|
||||
|
||||
|
||||
@@ -44,7 +44,7 @@ stdenv.mkDerivation rec {
|
||||
};
|
||||
|
||||
meta = {
|
||||
homepage = "http://github.com/GaloisInc/HaLVM";
|
||||
homepage = https://github.com/GaloisInc/HaLVM;
|
||||
description = "The Haskell Lightweight Virtual Machine (HaLVM): GHC running on Xen";
|
||||
platforms = ["x86_64-linux"]; # other platforms don't have Xen
|
||||
maintainers = with stdenv.lib.maintainers; [ dmjio ];
|
||||
|
||||
@@ -1,40 +1,82 @@
|
||||
{ stdenv, fetchgit, ocaml, zlib, pcre, neko, camlp4 }:
|
||||
{ stdenv, fetchgit, bash, coreutils, ocaml, zlib, pcre, neko, camlp4 }:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "haxe-3.4.2";
|
||||
let
|
||||
generic = { version, sha256, prePatch }:
|
||||
stdenv.mkDerivation rec {
|
||||
name = "haxe-${version}";
|
||||
|
||||
buildInputs = [ocaml zlib pcre neko camlp4];
|
||||
buildInputs = [ocaml zlib pcre neko camlp4];
|
||||
|
||||
src = fetchgit {
|
||||
url = "https://github.com/HaxeFoundation/haxe.git";
|
||||
sha256 = "1m5fp183agqv8h3ynhxw4kndkpq2d6arysmirv3zl3vz5crmpwqd";
|
||||
fetchSubmodules = true;
|
||||
src = fetchgit {
|
||||
url = https://github.com/HaxeFoundation/haxe.git;
|
||||
inherit sha256;
|
||||
fetchSubmodules = true;
|
||||
rev = "refs/tags/${version}";
|
||||
};
|
||||
|
||||
# Tag 3.4.2
|
||||
rev = "890f8c70cf23ce6f9fe0fdd0ee514a9699433ca7";
|
||||
inherit prePatch;
|
||||
|
||||
buildFlags = [ "all" "tools" ];
|
||||
|
||||
installPhase = ''
|
||||
install -vd "$out/bin" "$out/lib/haxe/std"
|
||||
cp -vr haxe haxelib std "$out/lib/haxe"
|
||||
|
||||
# make wrappers which provide a temporary HAXELIB_PATH with symlinks to multiple repositories HAXELIB_PATH may point to
|
||||
for name in haxe haxelib; do
|
||||
cat > $out/bin/$name <<EOF
|
||||
#!{bash}/bin/bash
|
||||
|
||||
if [[ "\$HAXELIB_PATH" =~ : ]]; then
|
||||
NEW_HAXELIB_PATH="\$(${coreutils}/bin/mktemp -d)"
|
||||
|
||||
IFS=':' read -ra libs <<< "\$HAXELIB_PATH"
|
||||
for libdir in "\''${libs[@]}"; do
|
||||
for lib in "\$libdir"/*; do
|
||||
if [ ! -e "\$NEW_HAXELIB_PATH/\$(${coreutils}/bin/basename "\$lib")" ]; then
|
||||
${coreutils}/bin/ln -s "--target-directory=\$NEW_HAXELIB_PATH" "\$lib"
|
||||
fi
|
||||
done
|
||||
done
|
||||
export HAXELIB_PATH="\$NEW_HAXELIB_PATH"
|
||||
$out/lib/haxe/$name "\$@"
|
||||
rm -rf "\$NEW_HAXELIB_PATH"
|
||||
else
|
||||
exec $out/lib/haxe/$name "\$@"
|
||||
fi
|
||||
EOF
|
||||
chmod +x $out/bin/$name
|
||||
done
|
||||
'';
|
||||
|
||||
setupHook = ./setup-hook.sh;
|
||||
|
||||
dontStrip = true;
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "Programming language targeting JavaScript, Flash, NekoVM, PHP, C++";
|
||||
homepage = https://haxe.org;
|
||||
license = with licenses; [ gpl2 bsd2 /*?*/ ]; # -> docs/license.txt
|
||||
maintainers = [ maintainers.marcweber ];
|
||||
platforms = platforms.linux ++ platforms.darwin;
|
||||
};
|
||||
};
|
||||
in {
|
||||
# this old version is required to compile some libraries
|
||||
haxe_3_2 = generic {
|
||||
version = "3.2.1";
|
||||
sha256 = "1x9ay5a2llq46fww3k07jxx8h1vfpyxb522snc6702a050ki5vz3";
|
||||
prePatch = ''
|
||||
sed -i -e 's|"/usr/lib/haxe/std/";|"'"$out/lib/haxe/std/"'";\n&|g' main.ml
|
||||
sed -i -e 's|"neko"|"${neko}/bin/neko"|g' extra/haxelib_src/src/tools/haxelib/Main.hx
|
||||
'';
|
||||
};
|
||||
|
||||
prePatch = ''
|
||||
sed -i -e 's|"/usr/lib/haxe/std/";|"'"$out/lib/haxe/std/"'";\n&|g' src/main.ml
|
||||
'';
|
||||
|
||||
buildFlags = [ "all" "tools" ];
|
||||
|
||||
installPhase = ''
|
||||
install -vd "$out/bin" "$out/lib/haxe/std"
|
||||
install -vt "$out/bin" haxe haxelib
|
||||
cp -vr std "$out/lib/haxe"
|
||||
'';
|
||||
|
||||
setupHook = ./setup-hook.sh;
|
||||
|
||||
dontStrip = true;
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "Programming language targeting JavaScript, Flash, NekoVM, PHP, C++";
|
||||
homepage = https://haxe.org;
|
||||
license = with licenses; [ gpl2 bsd2 /*?*/ ]; # -> docs/license.txt
|
||||
maintainers = [ maintainers.marcweber ];
|
||||
platforms = platforms.linux ++ platforms.darwin;
|
||||
haxe_3_4 = generic {
|
||||
version = "3.4.2";
|
||||
sha256 = "1m5fp183agqv8h3ynhxw4kndkpq2d6arysmirv3zl3vz5crmpwqd";
|
||||
prePatch = ''
|
||||
sed -i -e 's|"/usr/lib/haxe/std/";|"'"$out/lib/haxe/std/"'";\n&|g' src/main.ml
|
||||
sed -i -e 's|"neko"|"${neko}/bin/neko"|g' extra/haxelib_src/src/haxelib/client/Main.hx
|
||||
'';
|
||||
};
|
||||
}
|
||||
|
||||
@@ -1,52 +0,0 @@
|
||||
{ stdenv, fetchzip, haxe, neko, pcre, sqlite, zlib }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "hxcpp-3.2.27";
|
||||
|
||||
src = let
|
||||
zipFile = stdenv.lib.replaceChars ["."] [","] name;
|
||||
in fetchzip {
|
||||
inherit name;
|
||||
url = "http://lib.haxe.org/files/3.0/${zipFile}.zip";
|
||||
sha256 = "1hw4kr1f8q7f4fkzis7kvkm7h1cxhv6cf5v1iq7rvxs2fxiys7fr";
|
||||
};
|
||||
|
||||
NIX_LDFLAGS = "-lpcre -lz -lsqlite3";
|
||||
|
||||
outputs = [ "out" "lib" ];
|
||||
|
||||
patchPhase = ''
|
||||
rm -rf bin lib project/thirdparty project/libs/sqlite/sqlite3.[ch]
|
||||
find . -name '*.n' -delete
|
||||
sed -i -re '/(PCRE|ZLIB)_DIR|\<sqlite3\.c\>/d' project/Build.xml
|
||||
sed -i -e 's/mFromFile = "@";/mFromFile = "";/' tools/hxcpp/Linker.hx
|
||||
sed -i -e '/dll_ext/s,HX_CSTRING("./"),HX_CSTRING("'"$lib"'/"),' \
|
||||
src/hx/Lib.cpp
|
||||
'';
|
||||
|
||||
buildInputs = [ haxe neko pcre sqlite zlib ];
|
||||
|
||||
targetArch = "linux-m${if stdenv.is64bit then "64" else "32"}";
|
||||
|
||||
buildPhase = ''
|
||||
haxe -neko project/build.n -cp tools/build -main Build
|
||||
haxe -neko run.n -cp tools/run -main RunMain
|
||||
haxe -neko hxcpp.n -cp tools/hxcpp -main BuildTool
|
||||
(cd project && neko build.n "ndll-$targetArch")
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
for i in bin/Linux*/*.dso; do
|
||||
install -vD "$i" "$lib/$(basename "$i")"
|
||||
done
|
||||
find *.n toolchain/*.xml build-tool/BuildCommon.xml src include \
|
||||
-type f -exec install -vD -m 0644 {} "$out/lib/haxe/hxcpp/{}" \;
|
||||
'';
|
||||
|
||||
meta = {
|
||||
homepage = "http://lib.haxe.org/p/hxcpp";
|
||||
description = "Runtime support library for the Haxe C++ backend";
|
||||
license = stdenv.lib.licenses.bsd2;
|
||||
platforms = stdenv.lib.platforms.linux;
|
||||
};
|
||||
}
|
||||
@@ -1,5 +1,7 @@
|
||||
addHaxeLibPath() {
|
||||
if [ ! -d "$1/lib/haxe/std" ]; then
|
||||
addToSearchPath HAXELIB_PATH "$1/lib/haxe"
|
||||
fi
|
||||
}
|
||||
|
||||
envHooks+=(addHaxeLibPath)
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
{stdenv, fetchFromGitHub, bash, which, m4, python, bison, flex_2_6_1, llvmPackages, clangWrapSelf,
|
||||
{stdenv, fetchFromGitHub, bash, which, m4, python, bison, flex, llvmPackages, clangWrapSelf,
|
||||
testedTargets ? ["sse2" "host"] # the default test target is sse4, but that is not supported by all Hydra agents
|
||||
}:
|
||||
|
||||
@@ -29,7 +29,7 @@ stdenv.mkDerivation rec {
|
||||
m4
|
||||
python
|
||||
bison
|
||||
flex_2_6_1
|
||||
flex
|
||||
llvm
|
||||
llvmPackages.clang-unwrapped # we need to link against libclang, so we need the unwrapped
|
||||
];
|
||||
|
||||
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
|
||||
|
||||
meta = {
|
||||
description = "Whole-program, globally optimizing Haskell compiler";
|
||||
homepage = "http://repetae.net/computer/jhc/";
|
||||
homepage = http://repetae.net/computer/jhc/;
|
||||
license = stdenv.lib.licenses.bsd3;
|
||||
platforms = ["x86_64-linux"]; # 32 bit builds are broken
|
||||
maintainers = with stdenv.lib.maintainers; [ aforemny thoughtpolice ];
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{ stdenv, lib, fetchFromGitHub, emscripten }:
|
||||
|
||||
let version = "0.8.9"; in
|
||||
let version = "0.9.4"; in
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "jsonnet-${version}";
|
||||
@@ -9,7 +9,7 @@ stdenv.mkDerivation {
|
||||
rev = "v${version}";
|
||||
owner = "google";
|
||||
repo = "jsonnet";
|
||||
sha256 = "0phk8dzby5v60r7fwd1qf4as2jdpmdmksjw3g4p3mkkr7sc81119";
|
||||
sha256 = "1bh9x8d3mxnic31b6gh4drn5l6qpyqfgsn2l48sv0jknhinm1a7l";
|
||||
};
|
||||
|
||||
buildInputs = [ emscripten ];
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
{ stdenv, fetchgit, fetchurl
|
||||
{ stdenv, fetchgit, fetchurl, fetchzip
|
||||
# build tools
|
||||
, gfortran, m4, makeWrapper, patchelf, perl, which, python2
|
||||
, runCommand
|
||||
@@ -54,12 +54,12 @@ in
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "julia";
|
||||
version = "0.5.1";
|
||||
version = "0.5.2";
|
||||
name = "${pname}-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
src = fetchzip {
|
||||
url = "https://github.com/JuliaLang/${pname}/releases/download/v${version}/${name}.tar.gz";
|
||||
sha256 = "1a9m7hzzrwk71gvwwrd1p45s64yid61i41n95gm5pzbry6p9fpl0";
|
||||
sha256 = "1616f53dj7xc0g2iys8qfbzal6dx55nswnws5g5r44dlbf4hcl0h";
|
||||
};
|
||||
prePatch = ''
|
||||
mkdir deps/srccache
|
||||
@@ -155,7 +155,7 @@ stdenv.mkDerivation rec {
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
doCheck = true;
|
||||
doCheck = !stdenv.isDarwin;
|
||||
checkTarget = "testall";
|
||||
# Julia's tests require read/write access to $HOME
|
||||
preCheck = ''
|
||||
@@ -166,6 +166,7 @@ stdenv.mkDerivation rec {
|
||||
preBuild = ''
|
||||
sed -e '/^install:/s@[^ ]*/doc/[^ ]*@@' -i Makefile
|
||||
sed -e '/[$](DESTDIR)[$](docdir)/d' -i Makefile
|
||||
export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}
|
||||
'';
|
||||
|
||||
postInstall = ''
|
||||
@@ -178,7 +179,7 @@ stdenv.mkDerivation rec {
|
||||
|
||||
meta = {
|
||||
description = "High-level performance-oriented dynamical language for technical computing";
|
||||
homepage = "http://julialang.org/";
|
||||
homepage = https://julialang.org/;
|
||||
license = stdenv.lib.licenses.mit;
|
||||
maintainers = with stdenv.lib.maintainers; [ raskin ];
|
||||
platforms = [ "i686-linux" "x86_64-linux" "x86_64-darwin" ];
|
||||
|
||||
@@ -160,7 +160,7 @@ stdenv.mkDerivation rec {
|
||||
|
||||
meta = {
|
||||
description = "High-level performance-oriented dynamical language for technical computing";
|
||||
homepage = "http://julialang.org/";
|
||||
homepage = https://julialang.org/;
|
||||
license = stdenv.lib.licenses.mit;
|
||||
maintainers = with stdenv.lib.maintainers; [ raskin ];
|
||||
platforms = [ "i686-linux" "x86_64-linux" "x86_64-darwin" ];
|
||||
|
||||
@@ -171,7 +171,7 @@ stdenv.mkDerivation rec {
|
||||
|
||||
meta = {
|
||||
description = "High-level performance-oriented dynamical language for technical computing";
|
||||
homepage = "http://julialang.org/";
|
||||
homepage = https://julialang.org/;
|
||||
license = stdenv.lib.licenses.mit;
|
||||
maintainers = with stdenv.lib.maintainers; [ raskin ];
|
||||
platforms = [ "i686-linux" "x86_64-linux" "x86_64-darwin" ];
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
{ stdenv, fetchurl, makeWrapper, jre, unzip }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
version = "1.1.2-5";
|
||||
version = "1.1.4-2";
|
||||
name = "kotlin-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/JetBrains/kotlin/releases/download/v${version}/kotlin-compiler-${version}.zip";
|
||||
sha256 = "0whfnn7wf8nil9lb8hl9bccjrzwf9zpbf8pz607zg9x3q8g01p9d";
|
||||
sha256 = "09sikwk5xxn4b30icbq28mjs4lm9xbj0bv5yjx75r165iz65g2cv";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [ jre ] ;
|
||||
|
||||
@@ -36,7 +36,7 @@ in stdenv.mkDerivation rec {
|
||||
|
||||
patches = stdenv.lib.optionals (!stdenv.isDarwin) [
|
||||
# llvm-config --libfiles returns (non-existing) static libs
|
||||
./fix-llvm-config.patch
|
||||
../fix-llvm-config.patch
|
||||
];
|
||||
|
||||
# hacky fix: created binaries need to be run before installation
|
||||
|
||||
@@ -53,7 +53,8 @@ in stdenv.mkDerivation rec {
|
||||
"-DCAN_TARGET_i386=false"
|
||||
];
|
||||
|
||||
patches = [ ./fix-15974.patch ];
|
||||
patches = [ ./fix-15974.patch ] ++
|
||||
stdenv.lib.optionals (!stdenv.isDarwin) [../fix-llvm-config.patch ];
|
||||
|
||||
postBuild = ''
|
||||
rm -fR $out
|
||||
|
||||
@@ -1,13 +0,0 @@
|
||||
diff --git a/utils/llvm-build/llvmbuild/main.py b/utils/llvm-build/llvmbuild/main.py
|
||||
index eacefdf60bf..40d25f5cef8 100644
|
||||
--- a/utils/llvm-build/llvmbuild/main.py
|
||||
+++ b/utils/llvm-build/llvmbuild/main.py
|
||||
@@ -412,7 +412,7 @@ subdirectories = %s
|
||||
if library_name is None:
|
||||
library_name_as_cstr = '0'
|
||||
else:
|
||||
- library_name_as_cstr = '"lib%s.a"' % library_name
|
||||
+ library_name_as_cstr = '"lib%s.so"' % library_name
|
||||
f.write(' { "%s", %s, %d, { %s } },\n' % (
|
||||
name, library_name_as_cstr, is_installed,
|
||||
', '.join('"%s"' % dep
|
||||
@@ -55,7 +55,7 @@ in stdenv.mkDerivation rec {
|
||||
|
||||
patches = stdenv.lib.optionals (!stdenv.isDarwin) [
|
||||
# llvm-config --libfiles returns (non-existing) static libs
|
||||
./fix-llvm-config.patch
|
||||
../fix-llvm-config.patch
|
||||
];
|
||||
|
||||
cmakeFlags = with stdenv; [
|
||||
|
||||
11
pkgs/development/compilers/llvm/3.8/fix-llvm-config.patch
Normal file
11
pkgs/development/compilers/llvm/3.8/fix-llvm-config.patch
Normal file
@@ -0,0 +1,11 @@
|
||||
--- llvm.org/utils/llvm-build/llvmbuild/main.py 2015-10-07 00:24:35.000000000 +0100
|
||||
+++ llvm/utils/llvm-build/llvmbuild/main.py 2017-06-16 17:08:39.866586578 +0100
|
||||
@@ -413,7 +413,7 @@
|
||||
if library_name is None:
|
||||
library_name_as_cstr = 'nullptr'
|
||||
else:
|
||||
- library_name_as_cstr = '"lib%s.a"' % library_name
|
||||
+ library_name_as_cstr = '"lib%s.so"' % library_name
|
||||
if is_installed:
|
||||
is_installed_as_cstr = 'true'
|
||||
else:
|
||||
@@ -37,9 +37,10 @@ in stdenv.mkDerivation rec {
|
||||
|
||||
# Fix a segfault in llc
|
||||
# See http://lists.llvm.org/pipermail/llvm-dev/2016-October/106500.html
|
||||
patches = [ ./D17533-1.patch ];
|
||||
patches = [ ./D17533-1.patch ] ++
|
||||
stdenv.lib.optionals (!stdenv.isDarwin) [./fix-llvm-config.patch];
|
||||
|
||||
# hacky fix: New LLVM releases require a newer OS X SDK than
|
||||
# hacky fix: New LLVM releases require a newer macOS SDK than
|
||||
# 10.9. This is a temporary measure until nixpkgs darwin support is
|
||||
# updated.
|
||||
postPatch = stdenv.lib.optionalString stdenv.isDarwin ''
|
||||
|
||||
@@ -58,6 +58,14 @@ in stdenv.mkDerivation rec {
|
||||
|
||||
propagatedBuildInputs = [ ncurses zlib ];
|
||||
|
||||
patches = [
|
||||
# fix output of llvm-config (fixed in llvm 4.0)
|
||||
(fetchpatch {
|
||||
url = https://github.com/llvm-mirror/llvm/commit/5340b5b3d970069aebf3dde49d8964583742e01a.patch;
|
||||
sha256 = "095f8knplwqbc2p7rad1kq8633i34qynni9jna93an7kyc80wdxl";
|
||||
})
|
||||
];
|
||||
|
||||
postPatch = ""
|
||||
+ ''
|
||||
patch -p1 --reverse < ${fetchpatch {
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{ stdenv, fetch, cmake, libxml2, libedit, llvm, version, release_version, clang-tools-extra_src, python
|
||||
, fixDarwinDylibNames
|
||||
, enableManpages ? true
|
||||
, enableManpages ? false
|
||||
}:
|
||||
|
||||
let
|
||||
@@ -9,7 +9,7 @@ let
|
||||
name = "clang-${version}";
|
||||
|
||||
unpackPhase = ''
|
||||
unpackFile ${fetch "cfe" "12n99m60aa680cir3ql56s1jsv6lp61hq4w9rabf4c6vpn7gi9ff"}
|
||||
unpackFile ${fetch "cfe" "16vnv3msnvx33dydd17k2cq0icndi1a06bg5vcxkrhjjb1rqlwv1"}
|
||||
mv cfe-${version}* clang
|
||||
sourceRoot=$PWD/clang
|
||||
unpackFile ${clang-tools-extra_src}
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
{ newScope, stdenv, cmake, libxml2, python2, isl, fetchurl, overrideCC, wrapCC, darwin, ccWrapperFun }:
|
||||
{ lowPrio, newScope, stdenv, cmake, libxml2, python2, isl, fetchurl, overrideCC, wrapCC, darwin, ccWrapperFun }:
|
||||
let
|
||||
callPackage = newScope (self // { inherit stdenv cmake libxml2 python2 isl release_version version fetch; });
|
||||
|
||||
release_version = "4.0.0";
|
||||
release_version = "4.0.1";
|
||||
version = release_version; # differentiating these is important for rc's
|
||||
|
||||
fetch = name: sha256: fetchurl {
|
||||
@@ -10,17 +10,28 @@ let
|
||||
inherit sha256;
|
||||
};
|
||||
|
||||
compiler-rt_src = fetch "compiler-rt" "059ipqq27gd928ay06f1ck3vw6y5h5z4zd766x8k0k7jpqimpwnk";
|
||||
clang-tools-extra_src = fetch "clang-tools-extra" "16bwckgcxfn56mbqjlxi7fxja0zm9hjfa6s3ncm3dz98n5zd7ds1";
|
||||
compiler-rt_src = fetch "compiler-rt" "0h5lpv1z554szi4r4blbskhwrkd78ir50v3ng8xvk1s86fa7gj53";
|
||||
clang-tools-extra_src = fetch "clang-tools-extra" "1dhmp7ccfpr42bmvk3kp37ngjpf3a9m5d4kkpsn7d00hzi7fdl9m";
|
||||
|
||||
# Add man output without introducing extra dependencies.
|
||||
overrideManOutput = drv:
|
||||
let drv-manpages = drv.override { enableManpages = true; }; in
|
||||
drv // { man = drv-manpages.man; /*outputs = drv.outputs ++ ["man"];*/ };
|
||||
|
||||
llvm = callPackage ./llvm.nix {
|
||||
inherit compiler-rt_src stdenv;
|
||||
};
|
||||
|
||||
clang-unwrapped = callPackage ./clang {
|
||||
inherit clang-tools-extra_src stdenv;
|
||||
};
|
||||
|
||||
self = {
|
||||
llvm = callPackage ./llvm.nix {
|
||||
inherit compiler-rt_src stdenv;
|
||||
};
|
||||
llvm = overrideManOutput llvm;
|
||||
clang-unwrapped = overrideManOutput clang-unwrapped;
|
||||
|
||||
clang-unwrapped = callPackage ./clang {
|
||||
inherit clang-tools-extra_src stdenv;
|
||||
};
|
||||
llvm-manpages = lowPrio self.llvm.man;
|
||||
clang-manpages = lowPrio self.clang-unwrapped.man;
|
||||
|
||||
clang = wrapCC self.clang-unwrapped;
|
||||
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
stdenv.mkDerivation rec {
|
||||
name = "libc++-${version}";
|
||||
|
||||
src = fetch "libcxx" "15ngfcjc3pjakpwfq7d4n546jj0rgfdv5rpb1qv9xgv9mp236kag";
|
||||
src = fetch "libcxx" "0k6cmjcxnp2pyl8xwy1wkyyckkmdrjddim94yf1gzjbjy9qi22jj";
|
||||
|
||||
postUnpack = ''
|
||||
unpackFile ${libcxxabi.src}
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
stdenv.mkDerivation {
|
||||
name = "libc++abi-${version}";
|
||||
|
||||
src = fetch "libcxxabi" "1n416kv27anabg9jsw6331r28ic30xk46p381lx2vbb2jrhwpafw";
|
||||
src = fetch "libcxxabi" "0cqvzallxh0nwiijsf6i4d5ds9m5ijfzywg7376ncv50i64if24g";
|
||||
|
||||
nativeBuildInputs = [ cmake ];
|
||||
buildInputs = stdenv.lib.optional (!stdenv.isDarwin && !stdenv.isFreeBSD) libunwind;
|
||||
|
||||
@@ -10,7 +10,7 @@
|
||||
stdenv.mkDerivation {
|
||||
name = "lld-${version}";
|
||||
|
||||
src = fetch "lld" "00km1qawk146pyjqa6aphcdzgkzrmg6cgk0ikg4661ffp5bn9q1k";
|
||||
src = fetch "lld" "1v9nkpr158j4yd4zmi6rpnfxkp78r1fapr8wji9s6v176gji1kk3";
|
||||
|
||||
nativeBuildInputs = [ cmake ];
|
||||
buildInputs = [ llvm ];
|
||||
|
||||
@@ -17,7 +17,7 @@
|
||||
stdenv.mkDerivation {
|
||||
name = "lldb-${version}";
|
||||
|
||||
src = fetch "lldb" "0g83hbw1r4gd0z8hlph9i34xs6dlcc69vz3h2bqwkhb2qq2qzg9d";
|
||||
src = fetch "lldb" "0yy43a27zx3r51b6gkv3v2mdiqcq3mf0ngki47ya0i30v3gx4cl4";
|
||||
|
||||
patches = [ ./lldb-libedit.patch ];
|
||||
postPatch = ''
|
||||
|
||||
@@ -16,13 +16,13 @@
|
||||
, compiler-rt_src
|
||||
, libcxxabi
|
||||
, debugVersion ? false
|
||||
, enableManpages ? true
|
||||
, enableManpages ? false
|
||||
, enableSharedLibraries ? true
|
||||
, darwin
|
||||
}:
|
||||
|
||||
let
|
||||
src = fetch "llvm" "1giklnw71wzsgbqg9wb5x7dxnbj39m6zpfvskvzvhwvfz4fm244d";
|
||||
src = fetch "llvm" "0l9bf7kdwhlj0kq1hawpyxhna1062z3h7qcz2y8nfl9dz2qksy6s";
|
||||
shlib = if stdenv.isDarwin then "dylib" else "so";
|
||||
|
||||
# Used when creating a version-suffixed symlink of libLLVM.dylib
|
||||
@@ -64,13 +64,6 @@ in stdenv.mkDerivation rec {
|
||||
+ stdenv.lib.optionalString (enableSharedLibraries) ''
|
||||
substitute '${./llvm-outputs.patch}' ./llvm-outputs.patch --subst-var lib
|
||||
patch -p1 < ./llvm-outputs.patch
|
||||
''
|
||||
# Remove broken tests: (https://bugs.llvm.org//show_bug.cgi?id=31610)
|
||||
+ ''
|
||||
rm test/CodeGen/AMDGPU/invalid-opencl-version-metadata1.ll
|
||||
rm test/CodeGen/AMDGPU/invalid-opencl-version-metadata2.ll
|
||||
rm test/CodeGen/AMDGPU/invalid-opencl-version-metadata3.ll
|
||||
rm test/CodeGen/AMDGPU/runtime-metadata.ll
|
||||
'';
|
||||
|
||||
# hacky fix: created binaries need to be run before installation
|
||||
@@ -123,11 +116,11 @@ in stdenv.mkDerivation rec {
|
||||
+ stdenv.lib.optionalString enableSharedLibraries ''
|
||||
moveToOutput "lib/libLLVM-*" "$lib"
|
||||
moveToOutput "lib/libLLVM.${shlib}" "$lib"
|
||||
substituteInPlace "$out/lib/cmake/llvm/LLVMExports-release.cmake" \
|
||||
substituteInPlace "$out/lib/cmake/llvm/LLVMExports-${if debugVersion then "debug" else "release"}.cmake" \
|
||||
--replace "\''${_IMPORT_PREFIX}/lib/libLLVM-" "$lib/lib/libLLVM-"
|
||||
''
|
||||
+ stdenv.lib.optionalString (stdenv.isDarwin && enableSharedLibraries) ''
|
||||
substituteInPlace "$out/lib/cmake/llvm/LLVMExports-release.cmake" \
|
||||
substituteInPlace "$out/lib/cmake/llvm/LLVMExports-${if debugVersion then "debug" else "release"}.cmake" \
|
||||
--replace "\''${_IMPORT_PREFIX}/lib/libLLVM.dylib" "$lib/lib/libLLVM.dylib"
|
||||
install_name_tool -id $lib/lib/libLLVM.dylib $lib/lib/libLLVM.dylib
|
||||
install_name_tool -change @rpath/libLLVM.dylib $lib/lib/libLLVM.dylib $out/bin/llvm-config
|
||||
|
||||
@@ -10,7 +10,7 @@
|
||||
stdenv.mkDerivation {
|
||||
name = "openmp-${version}";
|
||||
|
||||
src = fetch "openmp" "09kf41zgv551fnv628kqhlwgqkd2bkiwii9gqi6q12djgdddhmfv";
|
||||
src = fetch "openmp" "195dykamd39yhi5az7nqj3ksqhb3wq30l93jnfkxl0061qbknsgc";
|
||||
|
||||
nativeBuildInputs = [ cmake perl ];
|
||||
buildInputs = [ llvm ];
|
||||
|
||||
@@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
|
||||
configureFlags = [ "--enable-mcpplib" ];
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = "http://mcpp.sourceforge.net/";
|
||||
homepage = http://mcpp.sourceforge.net/;
|
||||
description = "A portable c preprocessor";
|
||||
license = licenses.bsd2;
|
||||
platforms = platforms.unix;
|
||||
|
||||
7
pkgs/development/compilers/mono/5.0.nix
Normal file
7
pkgs/development/compilers/mono/5.0.nix
Normal file
@@ -0,0 +1,7 @@
|
||||
{ stdenv, callPackage, Foundation, libobjc }:
|
||||
|
||||
callPackage ./generic-cmake.nix (rec {
|
||||
inherit Foundation libobjc;
|
||||
version = "5.0.1.1";
|
||||
sha256 = "064pgsmanpybpbhpam9jv9n8aicx6mlyb7a91yzh3kcksmqsxmj8";
|
||||
})
|
||||
93
pkgs/development/compilers/mono/generic-cmake.nix
Normal file
93
pkgs/development/compilers/mono/generic-cmake.nix
Normal file
@@ -0,0 +1,93 @@
|
||||
{ stdenv, fetchurl, bison, pkgconfig, glib, gettext, perl, libgdiplus, libX11, callPackage, ncurses, zlib, withLLVM ? false, cacert, Foundation, libobjc, python, version, sha256, autoconf, libtool, automake, cmake, which }:
|
||||
|
||||
let
|
||||
llvm = callPackage ./llvm.nix { };
|
||||
in
|
||||
stdenv.mkDerivation rec {
|
||||
name = "mono-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
inherit sha256;
|
||||
url = "http://download.mono-project.com/sources/mono/${name}.tar.bz2";
|
||||
};
|
||||
|
||||
buildInputs =
|
||||
[ bison pkgconfig glib gettext perl libgdiplus libX11 ncurses zlib python autoconf libtool automake cmake which
|
||||
]
|
||||
++ (stdenv.lib.optionals stdenv.isDarwin [ Foundation libobjc ]);
|
||||
|
||||
propagatedBuildInputs = [glib];
|
||||
|
||||
NIX_LDFLAGS = if stdenv.isDarwin then "" else "-lgcc_s" ;
|
||||
|
||||
# To overcome the bug https://bugzilla.novell.com/show_bug.cgi?id=644723
|
||||
dontDisableStatic = true;
|
||||
|
||||
# In fact I think this line does not help at all to what I
|
||||
# wanted to achieve: have mono to find libgdiplus automatically
|
||||
configureFlags = [
|
||||
"--x-includes=${libX11.dev}/include"
|
||||
"--x-libraries=${libX11.out}/lib"
|
||||
"--with-libgdiplus=${libgdiplus}/lib/libgdiplus.so"
|
||||
]
|
||||
++ stdenv.lib.optionals withLLVM [
|
||||
"--enable-llvm"
|
||||
"--enable-llvmloaded"
|
||||
"--with-llvm=${llvm}"
|
||||
];
|
||||
|
||||
configurePhase = ''
|
||||
patchShebangs ./
|
||||
./autogen.sh --prefix $out
|
||||
'';
|
||||
|
||||
# Attempt to fix this error when running "mcs --version":
|
||||
# The file /nix/store/xxx-mono-2.4.2.1/lib/mscorlib.dll is an invalid CIL image
|
||||
dontStrip = true;
|
||||
|
||||
# Parallel building doesn't work, as shows http://hydra.nixos.org/build/2983601
|
||||
enableParallelBuilding = false;
|
||||
|
||||
# We want pkg-config to take priority over the dlls in the Mono framework and the GAC
|
||||
# because we control pkg-config
|
||||
patches = [ ./pkgconfig-before-gac.patch ];
|
||||
|
||||
# Patch all the necessary scripts. Also, if we're using LLVM, we fix the default
|
||||
# LLVM path to point into the Mono LLVM build, since it's private anyway.
|
||||
preBuild = ''
|
||||
makeFlagsArray=(INSTALL=`type -tp install`)
|
||||
substituteInPlace mcs/class/corlib/System/Environment.cs --replace /usr/share "$out/share"
|
||||
'' + stdenv.lib.optionalString withLLVM ''
|
||||
substituteInPlace mono/mini/aot-compiler.c --replace "llvm_path = g_strdup (\"\")" "llvm_path = g_strdup (\"${llvm}/bin/\")"
|
||||
'';
|
||||
|
||||
# Fix mono DLLMap so it can find libX11 and gdiplus to run winforms apps
|
||||
# Other items in the DLLMap may need to be pointed to their store locations, I don't think this is exhaustive
|
||||
# http://www.mono-project.com/Config_DllMap
|
||||
postBuild = ''
|
||||
find . -name 'config' -type f | xargs \
|
||||
sed -i -e "s@libX11.so.6@${libX11.out}/lib/libX11.so.6@g" \
|
||||
-e "s@/.*libgdiplus.so@${libgdiplus}/lib/libgdiplus.so@g" \
|
||||
'';
|
||||
|
||||
# Without this, any Mono application attempting to open an SSL connection will throw with
|
||||
# The authentication or decryption has failed.
|
||||
# ---> Mono.Security.Protocol.Tls.TlsException: Invalid certificate received from server.
|
||||
postInstall = ''
|
||||
echo "Updating Mono key store"
|
||||
$out/bin/cert-sync ${cacert}/etc/ssl/certs/ca-bundle.crt
|
||||
''
|
||||
# According to [1], gmcs is just mcs
|
||||
# [1] https://github.com/mono/mono/blob/master/scripts/gmcs.in
|
||||
+ ''
|
||||
ln -s $out/bin/mcs $out/bin/gmcs
|
||||
'';
|
||||
|
||||
meta = {
|
||||
homepage = http://mono-project.com/;
|
||||
description = "Cross platform, open source .NET development framework";
|
||||
platforms = with stdenv.lib.platforms; darwin ++ linux;
|
||||
maintainers = with stdenv.lib.maintainers; [ viric thoughtpolice obadz vrthra ];
|
||||
license = stdenv.lib.licenses.free; # Combination of LGPL/X11/GPL ?
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,65 @@
|
||||
diff -Naur mono-5.0.0/mcs/tools/xbuild/data/3.5/Microsoft.Common.targets.old mono-5.0.0/mcs/tools/xbuild/data/3.5/Microsoft.Common.targets
|
||||
--- mono-5.0.0/mcs/tools/xbuild/data/3.5/Microsoft.Common.targets.old 2017-04-24 23:45:18.348116305 +0200
|
||||
+++ mono-5.0.0/mcs/tools/xbuild/data/3.5/Microsoft.Common.targets 2017-04-24 23:45:11.407051755 +0200
|
||||
@@ -167,8 +167,8 @@
|
||||
$(ReferencePath);
|
||||
@(AdditionalReferencePath);
|
||||
{HintPathFromItem};
|
||||
- {TargetFrameworkDirectory};
|
||||
{PkgConfig};
|
||||
+ {TargetFrameworkDirectory};
|
||||
{GAC};
|
||||
{RawFileName};
|
||||
$(OutDir)
|
||||
diff -Naur mono-5.0.0/mcs/tools/xbuild/data/4.0/Microsoft.Common.targets.old mono-5.0.0/mcs/tools/xbuild/data/4.0/Microsoft.Common.targets
|
||||
--- mono-5.0.0/mcs/tools/xbuild/data/4.0/Microsoft.Common.targets.old 2017-04-24 23:49:53.019616196 +0200
|
||||
+++ mono-5.0.0/mcs/tools/xbuild/data/4.0/Microsoft.Common.targets 2017-04-24 23:50:05.709729585 +0200
|
||||
@@ -232,8 +232,8 @@
|
||||
$(ReferencePath);
|
||||
@(AdditionalReferencePath);
|
||||
{HintPathFromItem};
|
||||
- {TargetFrameworkDirectory};
|
||||
{PkgConfig};
|
||||
+ {TargetFrameworkDirectory};
|
||||
{GAC};
|
||||
{RawFileName};
|
||||
$(OutDir)
|
||||
diff -Naur mono-5.0.0/mcs/tools/xbuild/data/2.0/Microsoft.Common.targets.old mono-5.0.0/mcs/tools/xbuild/data/2.0/Microsoft.Common.targets
|
||||
--- mono-5.0.0/mcs/tools/xbuild/data/2.0/Microsoft.Common.targets.old 2017-04-24 23:52:33.200037047 +0200
|
||||
+++ mono-5.0.0/mcs/tools/xbuild/data/2.0/Microsoft.Common.targets 2017-04-24 23:52:43.281125802 +0200
|
||||
@@ -139,8 +139,8 @@
|
||||
$(ReferencePath);
|
||||
@(AdditionalReferencePath);
|
||||
{HintPathFromItem};
|
||||
- {TargetFrameworkDirectory};
|
||||
{PkgConfig};
|
||||
+ {TargetFrameworkDirectory};
|
||||
{GAC};
|
||||
{RawFileName};
|
||||
$(OutDir)
|
||||
diff -Naur mono-5.0.0/mcs/tools/xbuild/data/14.0/Microsoft.Common.targets.old mono-5.0.0/mcs/tools/xbuild/data/14.0/Microsoft.Common.targets
|
||||
--- mono-5.0.0/mcs/tools/xbuild/data/14.0/Microsoft.Common.targets.old 2017-04-24 23:54:02.585821594 +0200
|
||||
+++ mono-5.0.0/mcs/tools/xbuild/data/14.0/Microsoft.Common.targets 2017-04-24 23:54:09.313880438 +0200
|
||||
@@ -234,8 +234,8 @@
|
||||
$(ReferencePath);
|
||||
@(AdditionalReferencePath);
|
||||
{HintPathFromItem};
|
||||
- {TargetFrameworkDirectory};
|
||||
{PkgConfig};
|
||||
+ {TargetFrameworkDirectory};
|
||||
{GAC};
|
||||
{RawFileName};
|
||||
$(OutDir)
|
||||
diff -Naur mono-5.0.0/mcs/tools/xbuild/data/12.0/Microsoft.Common.targets.old mono-5.0.0/mcs/tools/xbuild/data/12.0/Microsoft.Common.targets
|
||||
--- mono-5.0.0/mcs/tools/xbuild/data/12.0/Microsoft.Common.targets.old 2017-04-24 23:55:46.244895155 +0200
|
||||
+++ mono-5.0.0/mcs/tools/xbuild/data/12.0/Microsoft.Common.targets 2017-04-24 23:55:51.998961342 +0200
|
||||
@@ -232,8 +232,8 @@
|
||||
$(ReferencePath);
|
||||
@(AdditionalReferencePath);
|
||||
{HintPathFromItem};
|
||||
- {TargetFrameworkDirectory};
|
||||
{PkgConfig};
|
||||
+ {TargetFrameworkDirectory};
|
||||
{GAC};
|
||||
{RawFileName};
|
||||
$(OutDir)
|
||||
@@ -63,7 +63,7 @@ stdenv.mkDerivation {
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = "http://www.mozart-oz.org/";
|
||||
homepage = http://www.mozart-oz.org/;
|
||||
description = "Multiplatform implementation of the Oz programming language";
|
||||
longDescription = ''
|
||||
The Mozart Programming System combines ongoing research in
|
||||
|
||||
@@ -24,6 +24,12 @@ stdenv.mkDerivation rec {
|
||||
+ "fe87462d9c7a6ee27e28f5be5e4fc0ac87b34574.patch";
|
||||
sha256 = "1jbmq6j32vg3qv20dbh82cp54886lgrh7gkcqins8a2y4l4dl3sc";
|
||||
})
|
||||
# https://github.com/HaxeFoundation/neko/pull/165
|
||||
(fetchpatch {
|
||||
url = "https://github.com/HaxeFoundation/neko/commit/"
|
||||
+ "c6d9c6d796200990b3b6a53a4dc716c9192398e6.patch";
|
||||
sha256 = "1pq0qhhb9gbhc3zbgylwp0amhwsz0q0ggpj6v2xgv0hfy7d63rcd";
|
||||
})
|
||||
];
|
||||
|
||||
buildInputs =
|
||||
|
||||
@@ -2,11 +2,11 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "nim-${version}";
|
||||
version = "0.16.0";
|
||||
version = "0.17.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://nim-lang.org/download/${name}.tar.xz";
|
||||
sha256 = "0rsibhkc5n548bn9yyb9ycrdgaph5kq84sfxc9gabjs7pqirh6cy";
|
||||
sha256 = "16vsmk4rqnkg9lc9h9jk62ps0x778cdqg6qrs3k6fv2g73cqvq9n";
|
||||
};
|
||||
|
||||
doCheck = true;
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
import ./generic.nix {
|
||||
major_version = "4";
|
||||
minor_version = "04";
|
||||
patch_version = "1";
|
||||
sha256 = "11f2kcldpad9h5ihi1crad5lvv2501iccb2g4c8m197fnjac8b12";
|
||||
patch_version = "2";
|
||||
sha256 = "0bhgjzi78l10824qga85nlh18jg9lb6aiamf9dah1cs6jhzfsn6i";
|
||||
|
||||
# If the executable is stipped it does not work
|
||||
dontStrip = true;
|
||||
|
||||
9
pkgs/development/compilers/ocaml/4.05.nix
Normal file
9
pkgs/development/compilers/ocaml/4.05.nix
Normal file
@@ -0,0 +1,9 @@
|
||||
import ./generic.nix {
|
||||
major_version = "4";
|
||||
minor_version = "05";
|
||||
patch_version = "0";
|
||||
sha256 = "1y9fw1ci9pwnbbrr9nwr8cq8vypcxwdf4akvxard3mxl2jx2g984";
|
||||
|
||||
# If the executable is stipped it does not work
|
||||
dontStrip = true;
|
||||
}
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user