Merge branch 'master' into staging
Mass rebuilds incoming. The mass-rebuild situation got really messy this weekend.
This commit is contained in:
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 ];
|
||||
};
|
||||
}
|
||||
|
||||
@@ -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
|
||||
'';
|
||||
|
||||
|
||||
@@ -9,8 +9,8 @@
|
||||
|
||||
let
|
||||
inherit (bootPkgs) ghc;
|
||||
version = "8.2.1-rc2";
|
||||
preReleaseName = "ghc-8.2.0.20170507";
|
||||
version = "8.2.1-rc3";
|
||||
preReleaseName = "ghc-8.2.0.20170704";
|
||||
commonBuildInputs = [ alex autoconf automake ghc happy hscolour perl python3 sphinx ];
|
||||
commonPreConfigure = ''
|
||||
sed -i -e 's|-isysroot /Developer/SDKs/MacOSX10.5.sdk||' configure
|
||||
@@ -27,7 +27,7 @@ in stdenv.mkDerivation (rec {
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://downloads.haskell.org/~ghc/${version}/${preReleaseName}-src.tar.xz";
|
||||
sha256 = "1hy3l6nzkyhzwy9mii4zs51jv048zwvdqk1q3188jznz35392zrn";
|
||||
sha256 = "0ccfybbjrmd8yzqbfdqvb6clz2kd005wi8sx3mfjmbkmxv0l4jry";
|
||||
};
|
||||
|
||||
postPatch = "patchShebangs .";
|
||||
|
||||
@@ -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.
|
||||
|
||||
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) {
|
||||
@@ -2,6 +2,6 @@
|
||||
|
||||
callPackage ./generic-cmake.nix (rec {
|
||||
inherit Foundation libobjc;
|
||||
version = "5.0.0.48";
|
||||
sha256 = "13n20wmijkhd7vm41lzz1n774rna67d94prl33bz1lly0idsciq0";
|
||||
version = "5.0.1.1";
|
||||
sha256 = "064pgsmanpybpbhpam9jv9n8aicx6mlyb7a91yzh3kcksmqsxmj8";
|
||||
})
|
||||
|
||||
@@ -37,7 +37,7 @@ stdenv.mkDerivation rec {
|
||||
];
|
||||
|
||||
configurePhase = ''
|
||||
substituteInPlace ./autogen.sh --replace "/usr/bin/env sh" "${stdenv.shell}"
|
||||
patchShebangs ./
|
||||
./autogen.sh --prefix $out
|
||||
'';
|
||||
|
||||
@@ -56,7 +56,6 @@ stdenv.mkDerivation rec {
|
||||
# LLVM path to point into the Mono LLVM build, since it's private anyway.
|
||||
preBuild = ''
|
||||
makeFlagsArray=(INSTALL=`type -tp install`)
|
||||
patchShebangs ./
|
||||
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/\")"
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -1,28 +1,30 @@
|
||||
{ stdenv, fetchzip, fetchgit, boost, cmake }:
|
||||
|
||||
let jsoncpp = fetchzip {
|
||||
url = https://github.com/open-source-parsers/jsoncpp/archive/1.7.7.tar.gz;
|
||||
sha256 = "0jz93zv17ir7lbxb3dv8ph2n916rajs8i96immwx9vb45pqid3n0";
|
||||
}; in
|
||||
let
|
||||
version = "0.4.12";
|
||||
rev = "194ff033ae44944ac59aa7bd3da89ba94ec5893c";
|
||||
sha256 = "0gkg3nay0625qmhxxxax1d1c4dl554ri3pkwd12qfg6g1w6j04w7";
|
||||
jsoncppURL = https://github.com/open-source-parsers/jsoncpp/archive/1.7.7.tar.gz;
|
||||
jsoncpp = fetchzip {
|
||||
url = jsoncppURL;
|
||||
sha256 = "0jz93zv17ir7lbxb3dv8ph2n916rajs8i96immwx9vb45pqid3n0";
|
||||
};
|
||||
in
|
||||
|
||||
let commit = "68ef5810593e7c8092ed41d5f474dd43141624eb"; in
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
version = "0.4.11";
|
||||
stdenv.mkDerivation {
|
||||
name = "solc-${version}";
|
||||
|
||||
# Cannot use `fetchFromGitHub' because of submodules
|
||||
src = fetchgit {
|
||||
url = "https://github.com/ethereum/solidity";
|
||||
rev = commit;
|
||||
sha256 = "13zycybf23yvf3hkf9zgw9gbc1y4ifzxaf7sll69bsn24fcyq961";
|
||||
inherit rev sha256;
|
||||
};
|
||||
|
||||
patchPhase = ''
|
||||
echo >commit_hash.txt ${commit}
|
||||
echo >commit_hash.txt '${rev}'
|
||||
echo >prerelease.txt
|
||||
substituteInPlace deps/jsoncpp.cmake \
|
||||
--replace https://github.com/open-source-parsers/jsoncpp/archive/1.7.7.tar.gz ${jsoncpp}
|
||||
--replace '${jsoncppURL}' ${jsoncpp}
|
||||
substituteInPlace cmake/EthCompilerSettings.cmake \
|
||||
--replace 'add_compile_options(-Werror)' ""
|
||||
'';
|
||||
|
||||
Reference in New Issue
Block a user