|
|
|
@ -1,19 +1,16 @@ |
|
|
|
|
{ stdenv, fetchurl, fetchgit, git, openssl, autoconf, pkgs }: |
|
|
|
|
|
|
|
|
|
# TODO: distinct packages for gambit-release and gambit-devel |
|
|
|
|
|
|
|
|
|
stdenv.mkDerivation rec { |
|
|
|
|
name = "gambit-${version}"; |
|
|
|
|
version = "4.8.8-f3ffeb6"; |
|
|
|
|
version = "4.8.8-300db59"; |
|
|
|
|
bootstrap = import ./bootstrap.nix ( pkgs ); |
|
|
|
|
|
|
|
|
|
# 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"; |
|
|
|
|
rev = "300db59e1d3b66bcd597f617849df0274d2a4472"; |
|
|
|
|
sha256 = "1mhy49lasakgvdaswkxasdssik11lx3hfx4h1gs2b6881488ssdp"; |
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
buildInputs = [ openssl git autoconf bootstrap ]; |
|
|
|
@ -28,6 +25,8 @@ stdenv.mkDerivation rec { |
|
|
|
|
--enable-absolute-shared-libs # Yes, NixOS will want an absolute path, and fix it. |
|
|
|
|
--enable-poll |
|
|
|
|
--enable-openssl |
|
|
|
|
--enable-default-runtime-options="f8,-8,t8" # Default to UTF-8 for source and all I/O |
|
|
|
|
#--enable-debug # Nope: enables plenty of good stuff, but also the costly console.log |
|
|
|
|
|
|
|
|
|
#--enable-multiple-versions # Nope, NixOS already does version multiplexing |
|
|
|
|
#--enable-guide |
|
|
|
@ -49,15 +48,15 @@ stdenv.mkDerivation rec { |
|
|
|
|
|
|
|
|
|
buildPhase = '' |
|
|
|
|
# Make bootstrap compiler, from release bootstrap |
|
|
|
|
mkdir -p boot/wip-compiler && |
|
|
|
|
cp -rp ${bootstrap}/. boot/wip-compiler/. && |
|
|
|
|
mkdir -p boot && |
|
|
|
|
cp -rp ${bootstrap}/. boot/. && |
|
|
|
|
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 && |
|
|
|
|
cd boot && |
|
|
|
|
cp ../gsc/makefile.in ../gsc/*.scm gsc && # */ |
|
|
|
|
./configure && |
|
|
|
|
for i in lib gsi gsc ; do (cd $i ; make ) ; done && |
|
|
|
|
cd .. && |
|
|
|
|
cp boot/gsc/gsc gsc-boot && |
|
|
|
|
|
|
|
|
|
# Now use the bootstrap compiler to build the real thing! |
|
|
|
|
make -j2 from-scratch |
|
|
|
|