mirror of
https://github.com/NixOS/nixpkgs.git
synced 2024-12-14 09:43:14 +00:00
1592e03aba
Most of these can easily be moved to subdirectories of other directories. This helps reduce clutter in the main trees.
56 lines
1.5 KiB
Nix
56 lines
1.5 KiB
Nix
{ emscriptenVersion, stdenv, llvm, fetchFromGitHub, cmake, python, gtest, ... }:
|
|
|
|
let
|
|
rev = emscriptenVersion;
|
|
gcc = if stdenv.cc.isGNU then stdenv.cc.cc else stdenv.cc.cc.gcc;
|
|
in
|
|
stdenv.mkDerivation rec {
|
|
name = "emscripten-fastcomp-${rev}";
|
|
|
|
src = fetchFromGitHub {
|
|
owner = "kripken";
|
|
repo = "emscripten-fastcomp";
|
|
sha256 = "04j698gmp686b5lricjakm5hyh2z2kh28m1ffkghmkyz4zkzmx98";
|
|
inherit rev;
|
|
};
|
|
|
|
srcFL = fetchFromGitHub {
|
|
owner = "kripken";
|
|
repo = "emscripten-fastcomp-clang";
|
|
sha256 = "1ici51mmpgg80xk3y8f376nbbfak6rz27qdy98l8lxkrymklp5g5";
|
|
inherit rev;
|
|
};
|
|
|
|
nativeBuildInputs = [ cmake python gtest ];
|
|
preConfigure = ''
|
|
cp -Lr ${srcFL} tools/clang
|
|
chmod +w -R tools/clang
|
|
'';
|
|
cmakeFlags = [
|
|
"-DCMAKE_BUILD_TYPE=Release"
|
|
"-DLLVM_TARGETS_TO_BUILD='X86;JSBackend'"
|
|
"-DLLVM_INCLUDE_EXAMPLES=OFF"
|
|
"-DLLVM_INCLUDE_TESTS=ON"
|
|
#"-DLLVM_CONFIG=${llvm}/bin/llvm-config"
|
|
"-DLLVM_BUILD_TESTS=ON"
|
|
"-DCLANG_INCLUDE_TESTS=ON"
|
|
] ++ (stdenv.lib.optional stdenv.isLinux
|
|
# necessary for clang to find crtend.o
|
|
"-DGCC_INSTALL_PREFIX=${gcc}"
|
|
);
|
|
enableParallelBuilding = true;
|
|
|
|
passthru = {
|
|
isClang = true;
|
|
inherit gcc;
|
|
};
|
|
|
|
meta = with stdenv.lib; {
|
|
homepage = https://github.com/kripken/emscripten-fastcomp;
|
|
description = "Emscripten LLVM";
|
|
platforms = platforms.all;
|
|
maintainers = with maintainers; [ qknight matthewbauer ];
|
|
license = stdenv.lib.licenses.ncsa;
|
|
};
|
|
}
|