Merge branch 'master.upstream' into staging.upstream
This commit is contained in:
commit
4086bd92a5
@ -115,7 +115,7 @@ stdenv.mkDerivation {
|
|||||||
|
|
||||||
configureFlags = configureFlags
|
configureFlags = configureFlags
|
||||||
++ [ "--enable-local-rust" "--local-rust-root=$snapshot" "--enable-rpath" ]
|
++ [ "--enable-local-rust" "--local-rust-root=$snapshot" "--enable-rpath" ]
|
||||||
++ [ "--llvm-root=${llvmPackages_37.llvm}" "--jemalloc-root=${jemalloc}/lib" ]
|
++ [ "--llvm-root=${llvmPackages_37.llvm}" ] #"--jemalloc-root=${jemalloc}/lib" ]
|
||||||
++ [ "--default-linker=${stdenv.cc}/bin/cc" "--default-ar=${stdenv.cc.binutils}/bin/ar" ]
|
++ [ "--default-linker=${stdenv.cc}/bin/cc" "--default-ar=${stdenv.cc.binutils}/bin/ar" ]
|
||||||
++ stdenv.lib.optional (stdenv.cc.cc ? isClang) "--enable-clang";
|
++ stdenv.lib.optional (stdenv.cc.cc ? isClang) "--enable-clang";
|
||||||
|
|
||||||
@ -138,6 +138,11 @@ stdenv.mkDerivation {
|
|||||||
sed -i configure \
|
sed -i configure \
|
||||||
-e '/probe_need CFG_CURLORWGET/d'
|
-e '/probe_need CFG_CURLORWGET/d'
|
||||||
|
|
||||||
|
# Fix the use of jemalloc prefixes which our jemalloc doesn't have
|
||||||
|
# TODO: reenable if we can figure out how to get our jemalloc to work
|
||||||
|
#[ -f src/liballoc_jemalloc/lib.rs ] && sed -i 's,je_,,g' src/liballoc_jemalloc/lib.rs
|
||||||
|
#[ -f src/liballoc/heap.rs ] && sed -i 's,je_,,g' src/liballoc/heap.rs # Remove for 1.4.0+
|
||||||
|
|
||||||
# Useful debugging parameter
|
# Useful debugging parameter
|
||||||
#export VERBOSE=1
|
#export VERBOSE=1
|
||||||
'';
|
'';
|
||||||
|
@ -1,18 +1,13 @@
|
|||||||
{ stdenv, fetchurl }:
|
{ stdenv, fetchurl }:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
name = "jemalloc-4.0.0";
|
name = "jemalloc-4.0.2";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "http://www.canonware.com/download/jemalloc/${name}.tar.bz2";
|
url = "http://www.canonware.com/download/jemalloc/${name}.tar.bz2";
|
||||||
sha256 = "1wiydkp8a4adwsgfsd688hpv2z7hjv5manhckchk96v6qdsbqk91";
|
sha256 = "04a6iw9wiwiknd7v3l3i7vpmc5nvv52islnb1hz9idmdk259r2hd";
|
||||||
};
|
};
|
||||||
|
|
||||||
# Rust refers to jemalloc functions directly so make sure the prefix matchs.
|
|
||||||
configureFlags = [
|
|
||||||
"--with-jemalloc-prefix=je_"
|
|
||||||
];
|
|
||||||
|
|
||||||
meta = with stdenv.lib; {
|
meta = with stdenv.lib; {
|
||||||
homepage = http://www.canonware.com/jemalloc/index.html;
|
homepage = http://www.canonware.com/jemalloc/index.html;
|
||||||
description = "a general purpose malloc(3) implementation that emphasizes fragmentation avoidance and scalable concurrency support";
|
description = "a general purpose malloc(3) implementation that emphasizes fragmentation avoidance and scalable concurrency support";
|
||||||
|
62
pkgs/games/dfhack/default.nix
Normal file
62
pkgs/games/dfhack/default.nix
Normal file
@ -0,0 +1,62 @@
|
|||||||
|
{ stdenv, fetchgit, dwarf_fortress, cmake, zlib, perl, XMLLibXML, XMLLibXSLT
|
||||||
|
}:
|
||||||
|
|
||||||
|
let
|
||||||
|
baseVersion = "40";
|
||||||
|
patchVersion = "24-r3";
|
||||||
|
src = fetchgit {
|
||||||
|
url = "https://github.com/DFHack/dfhack.git";
|
||||||
|
rev = "0849099f2083e100cae6f64940b4eff4c28ce2eb";
|
||||||
|
sha256 = "0lnqrayi8hwfivkrxb7fw8lb6v95i04pskny1px7084n7nzvyv8b";
|
||||||
|
};
|
||||||
|
|
||||||
|
in
|
||||||
|
|
||||||
|
assert stdenv.system == "i686-linux";
|
||||||
|
assert dwarf_fortress.name == "dwarf-fortress-0.40.24";
|
||||||
|
|
||||||
|
stdenv.mkDerivation rec {
|
||||||
|
name = "dfhack-0.${baseVersion}.${patchVersion}";
|
||||||
|
|
||||||
|
inherit baseVersion patchVersion src;
|
||||||
|
|
||||||
|
buildInputs = [ cmake zlib perl XMLLibXML XMLLibXSLT ];
|
||||||
|
|
||||||
|
preConfigure = ''
|
||||||
|
export cmakeFlags="-DCMAKE_INSTALL_PREFIX=$prefix/dfhack $cmakeFlags"
|
||||||
|
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:`pwd`/build/depends/protobuf
|
||||||
|
'';
|
||||||
|
|
||||||
|
installPhase = ''
|
||||||
|
mkdir -p $out/dfhack
|
||||||
|
make install
|
||||||
|
cp ../package/linux/dfhack $out/dfhack/
|
||||||
|
mkdir -p $out/bin
|
||||||
|
cat > $out/bin/dfhack_install_dir <<EOF
|
||||||
|
#!/bin/sh
|
||||||
|
test -z "\$1" && echo "This creates a Dwarf Fortress/DFHack game directory. Please specify a directory (preferably empty or non-existent) for this." && exit 1
|
||||||
|
|
||||||
|
set -e
|
||||||
|
mkdir -p "\$1"
|
||||||
|
cd "\$1"
|
||||||
|
cp -r ${dwarf_fortress}/share/df_linux/* .
|
||||||
|
cp -r $out/dfhack/* .
|
||||||
|
chmod -R u+w .
|
||||||
|
# use LD_LIBRARY_PATH setting from dwarf-fortress wrapper
|
||||||
|
sed -e 's%# Now run%`grep LD_LIBRARY_PATH ${dwarf_fortress}/bin/dwarf-fortress`%' $out/dfhack/dfhack > dfhack
|
||||||
|
# write md5sum of binary
|
||||||
|
sed -e s/c42f55948a448645d6609102ef6439e8/`md5sum ${dwarf_fortress}/share/df_linux/libs/Dwarf_Fortress | cut -f1 -d\ `/ $out/dfhack/hack/symbols.xml > hack/symbols.xml
|
||||||
|
|
||||||
|
echo "DFHack installed successfully in \$1. To play, run ./dfhack in it."
|
||||||
|
|
||||||
|
EOF
|
||||||
|
chmod +x $out/bin/dfhack_install_dir
|
||||||
|
'';
|
||||||
|
|
||||||
|
meta = {
|
||||||
|
description = "A Dwarf Fortress memory access library";
|
||||||
|
homepage = https://github.com/DFHack/dfhack;
|
||||||
|
license = stdenv.lib.licenses.bsd2;
|
||||||
|
maintainers = with stdenv.lib.maintainers; [ robbinch ];
|
||||||
|
};
|
||||||
|
}
|
@ -13507,6 +13507,10 @@ let
|
|||||||
|
|
||||||
crrcsim = callPackage ../games/crrcsim {};
|
crrcsim = callPackage ../games/crrcsim {};
|
||||||
|
|
||||||
|
dfhack = callPackage_i686 ../games/dfhack {
|
||||||
|
inherit (pkgsi686Linux.perlPackages) XMLLibXML XMLLibXSLT;
|
||||||
|
};
|
||||||
|
|
||||||
dhewm3 = callPackage ../games/dhewm3 {};
|
dhewm3 = callPackage ../games/dhewm3 {};
|
||||||
|
|
||||||
drumkv1 = callPackage ../applications/audio/drumkv1 { };
|
drumkv1 = callPackage ../applications/audio/drumkv1 { };
|
||||||
|
Loading…
x
Reference in New Issue
Block a user