Merge branch 'staging-next' into staging
This commit is contained in:
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "A multi-platform cross assembler for 6502/6510/65816 CPUs.";
|
||||
description = "A multi-platform cross assembler for 6502/6510/65816 CPUs";
|
||||
homepage = "https://sourceforge.net/projects/acme-crossass/";
|
||||
license = licenses.gpl2Plus;
|
||||
platforms = platforms.all;
|
||||
|
||||
@@ -18,7 +18,7 @@ in
|
||||
};
|
||||
}).overrideAttrs (attrs: {
|
||||
meta = with stdenv.lib; {
|
||||
description = "A JavaScript backend for OCaml focused on smooth integration and clean generated code.";
|
||||
description = "A JavaScript backend for OCaml focused on smooth integration and clean generated code";
|
||||
homepage = "https://bucklescript.github.io";
|
||||
license = licenses.lgpl3;
|
||||
maintainers = with maintainers; [ turbomack gamb anmonteiro ];
|
||||
|
||||
@@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
|
||||
make BACKEND=elf64 install prefix=$out
|
||||
'';
|
||||
meta = with stdenv.lib; {
|
||||
description = "Simple imperative language, statically typed with type inference and genericity.";
|
||||
description = "Simple imperative language, statically typed with type inference and genericity";
|
||||
homepage = "https://tibleiz.net/copper/";
|
||||
license = licenses.bsd2;
|
||||
platforms = platforms.x86_64;
|
||||
|
||||
@@ -5,37 +5,67 @@
|
||||
, python3
|
||||
, spirv-headers
|
||||
, spirv-tools
|
||||
, argSpirv-tools ? null
|
||||
, argSpirv-headers ? null
|
||||
}:
|
||||
# glslang requires custom versions of spirv-tools and spirb-headers.
|
||||
# The exact versions are taken from:
|
||||
# https://github.com/KhronosGroup/glslang/blob/master/known_good.json
|
||||
|
||||
let
|
||||
localSpirv-tools = if argSpirv-tools == null
|
||||
then spirv-tools.overrideAttrs (_: {
|
||||
src = fetchFromGitHub {
|
||||
owner = "KhronosGroup";
|
||||
repo = "SPIRV-Tools";
|
||||
rev = "fd8e130510a6b002b28eee5885a9505040a9bdc9";
|
||||
sha256 = "00b7xgyrcb2qq63pp3cnw5q1xqx2d9rfn65lai6n6r89s1vh3vg6";
|
||||
};
|
||||
})
|
||||
else argSpirv-tools;
|
||||
|
||||
localSpirv-headers = if argSpirv-headers == null
|
||||
then spirv-headers.overrideAttrs (_: {
|
||||
src = fetchFromGitHub {
|
||||
owner = "KhronosGroup";
|
||||
repo = "SPIRV-Headers";
|
||||
rev = "f8bf11a0253a32375c32cad92c841237b96696c0";
|
||||
sha256 = "1znwjy02dl9rshqzl87rqsv9mfczw7gvwfhcirbl81idahgp4p6l";
|
||||
};
|
||||
})
|
||||
else argSpirv-headers;
|
||||
in
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "glslang";
|
||||
version = "8.13.3559";
|
||||
version = "8.13.3743";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "KhronosGroup";
|
||||
repo = "glslang";
|
||||
rev = version;
|
||||
sha256 = "0waamlh2vqh1k40m169294xdlm0iqjkx2vis4qyxfki0r0cnsmnk";
|
||||
sha256 = "0d20wfpp2fmbnz1hnsjr9xc62lxpj86ik2qyviqbni0pqj212cry";
|
||||
};
|
||||
|
||||
# These get set at all-packages, keep onto them for child drvs
|
||||
passthru = {
|
||||
inherit spirv-tools spirv-headers;
|
||||
spirv-tools = localSpirv-tools;
|
||||
spirv-headers = localSpirv-headers;
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ cmake python3 bison jq ];
|
||||
enableParallelBuilding = true;
|
||||
|
||||
postPatch = ''
|
||||
cp --no-preserve=mode -r "${spirv-tools.src}" External/spirv-tools
|
||||
ln -s "${spirv-headers.src}" External/spirv-tools/external/spirv-headers
|
||||
cp --no-preserve=mode -r "${localSpirv-tools.src}" External/spirv-tools
|
||||
ln -s "${localSpirv-headers.src}" External/spirv-tools/external/spirv-headers
|
||||
'';
|
||||
|
||||
# Ensure spirv-headers and spirv-tools match exactly to what is expected
|
||||
preConfigure = ''
|
||||
HEADERS_COMMIT=$(jq -r < known_good.json '.commits|map(select(.name=="spirv-tools/external/spirv-headers"))[0].commit')
|
||||
TOOLS_COMMIT=$(jq -r < known_good.json '.commits|map(select(.name=="spirv-tools"))[0].commit')
|
||||
if [ "$HEADERS_COMMIT" != "${spirv-headers.src.rev}" ] || [ "$TOOLS_COMMIT" != "${spirv-tools.src.rev}" ]; then
|
||||
if [ "$HEADERS_COMMIT" != "${localSpirv-headers.src.rev}" ] || [ "$TOOLS_COMMIT" != "${localSpirv-tools.src.rev}" ]; then
|
||||
echo "ERROR: spirv-tools commits do not match expected versions: expected tools at $TOOLS_COMMIT, headers at $HEADERS_COMMIT";
|
||||
exit 1;
|
||||
fi
|
||||
|
||||
@@ -36,11 +36,11 @@ in
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "go";
|
||||
version = "1.14.9";
|
||||
version = "1.14.10";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://dl.google.com/go/go${version}.src.tar.gz";
|
||||
sha256 = "0m2581pi1iid39dd0k81r6zypasr8byc6d75nprapg09ri4ci1y6";
|
||||
sha256 = "0rfnjl582cm5klv8c2qyyvn26807zn89m5mk282gkc7awfkrjxmk";
|
||||
};
|
||||
|
||||
# perl is used for testing go vet
|
||||
|
||||
@@ -36,11 +36,11 @@ in
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "go";
|
||||
version = "1.15.2";
|
||||
version = "1.15.3";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://dl.google.com/go/go${version}.src.tar.gz";
|
||||
sha256 = "0kabkmc3759g5hpsdwh3l8p1fywibnha8c72m8f02lg2rl5rvgr8";
|
||||
sha256 = "1228nv4vyzbqv768dl0bimsic47x9yyqld61qbgqqk75f0jn0sl9";
|
||||
};
|
||||
|
||||
# perl is used for testing go vet
|
||||
|
||||
@@ -22,7 +22,7 @@ in stdenv.mkDerivation {
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "A design system for interactive fiction.";
|
||||
description = "A design system for interactive fiction";
|
||||
homepage = "http://inform7.com/";
|
||||
license = licenses.artistic2;
|
||||
maintainers = with maintainers; [ mbbx6spp ];
|
||||
|
||||
@@ -1,9 +0,0 @@
|
||||
import ./shared.nix {
|
||||
majorVersion = "0";
|
||||
minorVersion = "7";
|
||||
maintenanceVersion = "0";
|
||||
src_sha256 = "1j57569qm2ii8ddzsp08hds2navpk7acdz83kh27dvk44axhwj6f";
|
||||
|
||||
libuvVersion = "ed3700c849289ed01fe04273a7bf865340b2bd7e";
|
||||
libuvSha256 = "137w666zsjw1p0ma3lf94d75hr1q45sgkfmbizkyji2qm57cnxjs";
|
||||
}
|
||||
@@ -1,9 +0,0 @@
|
||||
import ./shared.nix {
|
||||
majorVersion = "1";
|
||||
minorVersion = "1";
|
||||
maintenanceVersion = "1";
|
||||
src_sha256 = "1yqjd0n42xf9hzxpvc9vysyjj98p42by216jkdqakdy7dkjcmnhq";
|
||||
|
||||
libuvVersion = "2348256acf5759a544e5ca7935f638d2bc091d60";
|
||||
libuvSha256 = "1363f4vqayfcv5zqg07qmzjff56yhad74k16c22ian45lram8mv8";
|
||||
}
|
||||
@@ -43,21 +43,21 @@ stdenv.mkDerivation (rec {
|
||||
darwin.apple_sdk.frameworks.Cocoa
|
||||
];
|
||||
|
||||
CXXFLAGS = "-fno-rtti";
|
||||
hardeningDisable = [ "format" ];
|
||||
|
||||
cmakeFlags = [
|
||||
"-DLLDB_CODESIGN_IDENTITY=" # codesigning makes nondeterministic
|
||||
"-DLLVM_ENABLE_RTTI=OFF"
|
||||
"-DClang_DIR=${clang-unwrapped}/lib/cmake"
|
||||
"-DLLVM_EXTERNAL_LIT=${lit}/bin/lit"
|
||||
] ++ stdenv.lib.optionals stdenv.isDarwin [
|
||||
"-DLLDB_USE_SYSTEM_DEBUGSERVER=ON"
|
||||
] ++ stdenv.lib.optionals (!stdenv.isDarwin) [
|
||||
"-DLLDB_CODESIGN_IDENTITY=" # codesigning makes nondeterministic
|
||||
] ++ stdenv.lib.optionals enableManpages [
|
||||
"-DLLVM_ENABLE_SPHINX=ON"
|
||||
"-DSPHINX_OUTPUT_MAN=ON"
|
||||
"-DSPHINX_OUTPUT_HTML=OFF"
|
||||
]
|
||||
;
|
||||
];
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
|
||||
@@ -8,7 +8,7 @@ let
|
||||
pname = "clang";
|
||||
inherit version;
|
||||
|
||||
src = fetch "clang" "1p64l5a3x55118nyms1805qbk3r9w37nz1rb7xvbgc9fmyzaffay";
|
||||
src = fetch "clang" "02ajkij85966vd150iy246mv16dsaph1kfi0y8wnncp8w6nar5hg";
|
||||
inherit clang-tools-extra_src;
|
||||
|
||||
unpackPhase = ''
|
||||
@@ -86,8 +86,6 @@ let
|
||||
passthru = {
|
||||
isClang = true;
|
||||
inherit llvm;
|
||||
} // stdenv.lib.optionalAttrs (stdenv.targetPlatform.isLinux || (stdenv.cc.isGNU && stdenv.cc.cc ? gcc)) {
|
||||
gcc = if stdenv.cc.isGNU then stdenv.cc.cc else stdenv.cc.cc.gcc;
|
||||
};
|
||||
|
||||
meta = {
|
||||
|
||||
@@ -0,0 +1,23 @@
|
||||
diff --git a/lib/builtins/CMakeLists.txt b/lib/builtins/CMakeLists.txt
|
||||
index 3a66dd9c3fb..7efc85d9f9f 100644
|
||||
--- a/lib/builtins/CMakeLists.txt
|
||||
+++ b/lib/builtins/CMakeLists.txt
|
||||
@@ -301,6 +301,10 @@ if (NOT MSVC)
|
||||
i386/umoddi3.S
|
||||
)
|
||||
|
||||
+ set(i486_SOURCES ${i386_SOURCES})
|
||||
+ set(i586_SOURCES ${i386_SOURCES})
|
||||
+ set(i686_SOURCES ${i386_SOURCES})
|
||||
+
|
||||
if (WIN32)
|
||||
set(i386_SOURCES
|
||||
${i386_SOURCES}
|
||||
@@ -608,6 +612,7 @@ else ()
|
||||
endif()
|
||||
|
||||
foreach (arch ${BUILTIN_SUPPORTED_ARCH})
|
||||
+ message("arch: ${arch}")
|
||||
if (CAN_TARGET_${arch})
|
||||
# For ARM archs, exclude any VFP builtins if VFP is not supported
|
||||
if (${arch} MATCHES "^(arm|armhf|armv7|armv7s|armv7k|armv7m|armv7em)$")
|
||||
@@ -11,7 +11,7 @@ in
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "compiler-rt";
|
||||
inherit version;
|
||||
src = fetch pname "0cpyi5g0wlwyb7gvy47k5rjiipnlhrr3ks4q4rlrlyax6w9dx98n";
|
||||
src = fetch pname "0d5j5l8phwqjjscmk8rmqn0i2i0abl537gdbkagl8fjpzy1gyjip";
|
||||
|
||||
nativeBuildInputs = [ cmake python3 llvm ];
|
||||
buildInputs = stdenv.lib.optional stdenv.hostPlatform.isDarwin libcxxabi;
|
||||
@@ -24,6 +24,8 @@ stdenv.mkDerivation rec {
|
||||
"-DCOMPILER_RT_DEFAULT_TARGET_ONLY=ON"
|
||||
"-DCMAKE_C_COMPILER_TARGET=${stdenv.hostPlatform.config}"
|
||||
"-DCMAKE_ASM_COMPILER_TARGET=${stdenv.hostPlatform.config}"
|
||||
] ++ stdenv.lib.optionals (stdenv.isDarwin) [
|
||||
"-DDARWIN_macosx_OVERRIDE_SDK_VERSION=ON"
|
||||
] ++ stdenv.lib.optionals (useLLVM || bareMetal || isMusl) [
|
||||
"-DCOMPILER_RT_BUILD_SANITIZERS=OFF"
|
||||
"-DCOMPILER_RT_BUILD_XRAY=OFF"
|
||||
@@ -47,6 +49,7 @@ stdenv.mkDerivation rec {
|
||||
|
||||
patches = [
|
||||
./compiler-rt-codesign.patch # Revert compiler-rt commit that makes codesign mandatory
|
||||
./compiler-rt-X86-support-extension.patch # Add support for i486 i586 i686 by reusing i386 config
|
||||
]# ++ stdenv.lib.optional stdenv.hostPlatform.isMusl ./sanitizers-nongnu.patch
|
||||
++ stdenv.lib.optional stdenv.hostPlatform.isAarch32 ./compiler-rt-armv7l.patch;
|
||||
|
||||
@@ -60,6 +63,8 @@ stdenv.mkDerivation rec {
|
||||
substituteInPlace cmake/builtin-config-ix.cmake \
|
||||
--replace 'set(X86 i386)' 'set(X86 i386 i486 i586 i686)'
|
||||
'' + stdenv.lib.optionalString stdenv.isDarwin ''
|
||||
substituteInPlace cmake/builtin-config-ix.cmake \
|
||||
--replace 'set(ARM64 arm64 arm64e)' 'set(ARM64)'
|
||||
substituteInPlace cmake/config-ix.cmake \
|
||||
--replace 'set(COMPILER_RT_HAS_TSAN TRUE)' 'set(COMPILER_RT_HAS_TSAN FALSE)'
|
||||
'' + stdenv.lib.optionalString (useLLVM) ''
|
||||
|
||||
@@ -1,21 +1,21 @@
|
||||
{ lowPrio, newScope, pkgs, stdenv, cmake
|
||||
{ lowPrio, newScope, pkgs, stdenv, cmake, gccForLibs
|
||||
, libxml2, python3, isl, fetchurl, overrideCC, wrapCCWith, wrapBintoolsWith
|
||||
, buildPackages
|
||||
, buildLlvmTools # tools, but from the previous stage, for cross
|
||||
, targetLlvmLibraries # libraries, but from the next stage, for cross
|
||||
}:
|
||||
|
||||
let
|
||||
release_version = "11.0.0";
|
||||
candidate = "rc5";
|
||||
version = "${release_version}${candidate}"; # differentiating these (variables) is important for RCs
|
||||
version = "${release_version}"; # differentiating these (variables) is important for RCs
|
||||
targetConfig = stdenv.targetPlatform.config;
|
||||
|
||||
fetch = name: sha256: fetchurl {
|
||||
url = "https://github.com/llvm/llvm-project/releases/download/llvmorg-${release_version}-${candidate}/${name}-${version}.src.tar.xz";
|
||||
url = "https://github.com/llvm/llvm-project/releases/download/llvmorg-${release_version}/${name}-${version}.src.tar.xz";
|
||||
inherit sha256;
|
||||
};
|
||||
|
||||
clang-tools-extra_src = fetch "clang-tools-extra" "0slqx5430pc699idabqnq34s9n0y2fq6q8z8hn5wakbi93dal71r";
|
||||
clang-tools-extra_src = fetch "clang-tools-extra" "02bcwwn54661madhq4nxc069s7p7pj5gpqi8ww50w3anbpviilzy";
|
||||
|
||||
tools = stdenv.lib.makeExtensible (tools: let
|
||||
callPackage = newScope (tools // { inherit stdenv cmake libxml2 python3 isl release_version version fetch; });
|
||||
@@ -26,8 +26,8 @@ let
|
||||
ln -s "${targetLlvmLibraries.compiler-rt.out}/lib" "$rsrc/lib"
|
||||
ln -s "${targetLlvmLibraries.compiler-rt.out}/share" "$rsrc/share"
|
||||
echo "-resource-dir=$rsrc" >> $out/nix-support/cc-cflags
|
||||
'' + stdenv.lib.optionalString (stdenv.targetPlatform.isLinux && tools.clang-unwrapped ? gcc && !(stdenv.targetPlatform.useLLVM or false)) ''
|
||||
echo "--gcc-toolchain=${tools.clang-unwrapped.gcc}" >> $out/nix-support/cc-cflags
|
||||
'' + stdenv.lib.optionalString (stdenv.targetPlatform.isLinux && !(stdenv.targetPlatform.useLLVM or false)) ''
|
||||
echo "--gcc-toolchain=${gccForLibs}" >> $out/nix-support/cc-cflags
|
||||
'';
|
||||
in {
|
||||
|
||||
@@ -61,7 +61,8 @@ let
|
||||
|
||||
libstdcxxClang = wrapCCWith rec {
|
||||
cc = tools.clang-unwrapped;
|
||||
libcxx = null; # libstdcxx is smuggled in with clang.gcc
|
||||
# libstdcxx is taken from gcc in an ad-hoc way in cc-wrapper.
|
||||
libcxx = null;
|
||||
extraPackages = [
|
||||
targetLlvmLibraries.compiler-rt
|
||||
];
|
||||
|
||||
@@ -1,33 +1,31 @@
|
||||
{ lib, stdenv, fetch, cmake, python3, libcxxabi, fixDarwinDylibNames, version
|
||||
{ lib, stdenv, fetch, cmake, python3, libcxxabi, llvm, fixDarwinDylibNames, version
|
||||
, enableShared ? true }:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
pname = "libc++";
|
||||
inherit version;
|
||||
|
||||
src = fetch "libcxx" "1rlp8hx0nmqpx0gxq8hh9kqbkkzfpadx9chm47c38d4lahdksr1v";
|
||||
src = fetch "libcxx" "0ylbkcd38zrrz9xmkq9na3d9s8d96hc286dwfwd73wi205lyc7kc";
|
||||
|
||||
postUnpack = ''
|
||||
unpackFile ${libcxxabi.src}
|
||||
export LIBCXXABI_INCLUDE_DIR="$PWD/$(ls -d libcxxabi-${version}*)/include"
|
||||
mv libcxxabi-* libcxxabi
|
||||
unpackFile ${llvm.src}
|
||||
mv llvm-* llvm
|
||||
'';
|
||||
|
||||
patches = stdenv.lib.optional stdenv.hostPlatform.isMusl ../../libcxx-0001-musl-hacks.patch;
|
||||
|
||||
preConfigure = ''
|
||||
# Get headers from the cxxabi source so we can see private headers not installed by the cxxabi package
|
||||
cmakeFlagsArray=($cmakeFlagsArray -DLIBCXX_CXX_ABI_INCLUDE_PATHS="$LIBCXXABI_INCLUDE_DIR")
|
||||
'' + lib.optionalString stdenv.hostPlatform.isMusl ''
|
||||
preConfigure = lib.optionalString stdenv.hostPlatform.isMusl ''
|
||||
patchShebangs utils/cat_files.py
|
||||
'';
|
||||
nativeBuildInputs = [ cmake ]
|
||||
++ stdenv.lib.optional (stdenv.hostPlatform.isMusl || stdenv.hostPlatform.isWasi) python3;
|
||||
|
||||
buildInputs = [ libcxxabi ] ++ lib.optional stdenv.isDarwin fixDarwinDylibNames;
|
||||
nativeBuildInputs = [ cmake python3 ]
|
||||
++ lib.optional stdenv.isDarwin fixDarwinDylibNames;
|
||||
|
||||
buildInputs = [ libcxxabi ];
|
||||
|
||||
cmakeFlags = [
|
||||
"-DLIBCXX_LIBCXXABI_LIB_PATH=${libcxxabi}/lib"
|
||||
"-DLIBCXX_LIBCPPABI_VERSION=2"
|
||||
"-DLIBCXX_CXX_ABI=libcxxabi"
|
||||
] ++ stdenv.lib.optional (stdenv.hostPlatform.isMusl || stdenv.hostPlatform.isWasi) "-DLIBCXX_HAS_MUSL_LIBC=1"
|
||||
++ stdenv.lib.optional (stdenv.hostPlatform.useLLVM or false) "-DLIBCXX_USE_COMPILER_RT=ON"
|
||||
|
||||
@@ -5,7 +5,7 @@ stdenv.mkDerivation {
|
||||
pname = "libc++abi";
|
||||
inherit version;
|
||||
|
||||
src = fetch "libcxxabi" "0214sl9m80hb8v0mdkrwl8l4ca3dvapis23mkld85bnxa8zq2c1q";
|
||||
src = fetch "libcxxabi" "05ac7rkjbla03bc0lf92f901dfjgxdvp8cr9fpn59a5p4x27ssaq";
|
||||
|
||||
nativeBuildInputs = [ cmake ];
|
||||
buildInputs = stdenv.lib.optional (!stdenv.isDarwin && !stdenv.isFreeBSD && !stdenv.hostPlatform.isWasm) libunwind;
|
||||
@@ -24,14 +24,15 @@ stdenv.mkDerivation {
|
||||
|
||||
postUnpack = ''
|
||||
unpackFile ${libcxx.src}
|
||||
mv libcxx-* libcxx
|
||||
unpackFile ${llvm.src}
|
||||
cmakeFlags+=" -DLLVM_PATH=$PWD/$(ls -d llvm-*) -DLIBCXXABI_LIBCXX_PATH=$PWD/$(ls -d libcxx-*)"
|
||||
mv llvm-* llvm
|
||||
'' + stdenv.lib.optionalString stdenv.isDarwin ''
|
||||
export TRIPLE=x86_64-apple-darwin
|
||||
'' + stdenv.lib.optionalString stdenv.hostPlatform.isMusl ''
|
||||
patch -p1 -d $(ls -d libcxx-*) -i ${../libcxx-0001-musl-hacks.patch}
|
||||
patch -p1 -d libcxx -i ${../libcxx-0001-musl-hacks.patch}
|
||||
'' + stdenv.lib.optionalString stdenv.hostPlatform.isWasm ''
|
||||
patch -p1 -d $(ls -d llvm-*) -i ${./libcxxabi-wasm.patch}
|
||||
patch -p1 -d llvm -i ${./libcxxabi-wasm.patch}
|
||||
'';
|
||||
|
||||
installPhase = if stdenv.isDarwin
|
||||
|
||||
@@ -4,7 +4,7 @@ stdenv.mkDerivation rec {
|
||||
pname = "libunwind";
|
||||
inherit version;
|
||||
|
||||
src = fetch pname "1xw8y6agnix7qlwh676gm1kbkzh9c1nz7l3vhxjpazbk70biz9mq";
|
||||
src = fetch pname "0bwjd2xf51r2apn8p0f9shb6nc8hnqzq1n9gggjvyjmi6cf02mc4";
|
||||
|
||||
nativeBuildInputs = [ cmake ];
|
||||
|
||||
|
||||
@@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
|
||||
pname = "lld";
|
||||
inherit version;
|
||||
|
||||
src = fetch pname "1ibyahcxxckdfwh95f1dzxgcf1fsd0r9rpanm3dnn6nb99mn0is4";
|
||||
src = fetch pname "077xyh7sij6mhp4dc4kdcmp9whrpz332fa12rwxnzp3wgd5bxrzg";
|
||||
|
||||
nativeBuildInputs = [ cmake ];
|
||||
buildInputs = [ llvm libxml2 ];
|
||||
|
||||
@@ -20,7 +20,7 @@ stdenv.mkDerivation (rec {
|
||||
pname = "lldb";
|
||||
inherit version;
|
||||
|
||||
src = fetch pname "1v8nvw6rxmi7w3ayjcjan4plb5ryhizc41sras7fza2l7n3cz8iz";
|
||||
src = fetch pname "0wic9lyb2la9bkzdc13szkm4f793w1mddp50xvh237iraygw0w45";
|
||||
|
||||
patches = [ ./lldb-procfs.patch ];
|
||||
|
||||
@@ -43,21 +43,21 @@ stdenv.mkDerivation (rec {
|
||||
darwin.apple_sdk.frameworks.Cocoa
|
||||
];
|
||||
|
||||
CXXFLAGS = "-fno-rtti";
|
||||
hardeningDisable = [ "format" ];
|
||||
|
||||
cmakeFlags = [
|
||||
"-DLLDB_CODESIGN_IDENTITY=" # codesigning makes nondeterministic
|
||||
"-DLLVM_ENABLE_RTTI=OFF"
|
||||
"-DClang_DIR=${clang-unwrapped}/lib/cmake"
|
||||
"-DLLVM_EXTERNAL_LIT=${lit}/bin/lit"
|
||||
] ++ stdenv.lib.optionals stdenv.isDarwin [
|
||||
"-DLLDB_USE_SYSTEM_DEBUGSERVER=ON"
|
||||
] ++ stdenv.lib.optionals (!stdenv.isDarwin) [
|
||||
"-DLLDB_CODESIGN_IDENTITY=" # codesigning makes nondeterministic
|
||||
] ++ stdenv.lib.optionals enableManpages [
|
||||
"-DLLVM_ENABLE_SPHINX=ON"
|
||||
"-DSPHINX_OUTPUT_MAN=ON"
|
||||
"-DSPHINX_OUTPUT_HTML=OFF"
|
||||
]
|
||||
;
|
||||
];
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
|
||||
@@ -32,8 +32,8 @@ in stdenv.mkDerivation (rec {
|
||||
pname = "llvm";
|
||||
inherit version;
|
||||
|
||||
src = fetch pname "1k7i2syqdm29l10di3ws64i02snh9jhd1s2jzgh8565b0vg25wlc";
|
||||
polly_src = fetch "polly" "0l0n09f6sy30x825w85v8n7pvya0ciq89r0abv66n8ggwmrk3rnw";
|
||||
src = fetch pname "0s94lwil98w7zb7cjrbnxli0z7gklb312pkw74xs1d6zk346hgwi";
|
||||
polly_src = fetch "polly" "0h442ivcslr3dv3q3g1nw5avh77f8cxsp6zild1hgspj266xpynw";
|
||||
|
||||
unpackPhase = ''
|
||||
unpackFile $src
|
||||
@@ -96,7 +96,7 @@ in stdenv.mkDerivation (rec {
|
||||
'';
|
||||
|
||||
# E.g. mesa.drivers use the build-id as a cache key (see #93946):
|
||||
LDFLAGS = optionalString enableSharedLibraries "-Wl,--build-id=sha1";
|
||||
LDFLAGS = optionalString (enableSharedLibraries && !stdenv.isDarwin) "-Wl,--build-id=sha1";
|
||||
|
||||
cmakeFlags = with stdenv; [
|
||||
"-DCMAKE_BUILD_TYPE=${if debugVersion then "Debug" else "Release"}"
|
||||
|
||||
@@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
|
||||
pname = "openmp";
|
||||
inherit version;
|
||||
|
||||
src = fetch pname "1yq7m0kwnlgq8ni719g9fny0x5wrvm8szp11b3q8zz39rqqyphsz";
|
||||
src = fetch pname "0k389d0g9zlfyzh1kpb3i5jdawzpn0hrdxzbjinpvdv7rbw4sw1d";
|
||||
|
||||
nativeBuildInputs = [ cmake perl ];
|
||||
buildInputs = [ llvm ];
|
||||
|
||||
@@ -79,7 +79,7 @@ in stdenv.mkDerivation rec {
|
||||
];
|
||||
|
||||
meta = {
|
||||
description = "An open source implementation of Oz 3.";
|
||||
description = "An open source implementation of Oz 3";
|
||||
maintainers = [ lib.maintainers.layus ];
|
||||
license = lib.licenses.bsd2;
|
||||
homepage = "https://mozart.github.io";
|
||||
|
||||
@@ -106,7 +106,7 @@ in makePackage {
|
||||
meta = with stdenv.lib; {
|
||||
homepage = "http://openjdk.java.net/projects/openjfx/";
|
||||
license = licenses.gpl2;
|
||||
description = "The next-generation Java client toolkit.";
|
||||
description = "The next-generation Java client toolkit";
|
||||
maintainers = with maintainers; [ abbradar ];
|
||||
platforms = [ "i686-linux" "x86_64-linux" ];
|
||||
};
|
||||
|
||||
@@ -108,7 +108,7 @@ in makePackage {
|
||||
meta = with stdenv.lib; {
|
||||
homepage = "http://openjdk.java.net/projects/openjfx/";
|
||||
license = licenses.gpl2;
|
||||
description = "The next-generation Java client toolkit.";
|
||||
description = "The next-generation Java client toolkit";
|
||||
maintainers = with maintainers; [ abbradar ];
|
||||
platforms = [ "i686-linux" "x86_64-linux" ];
|
||||
};
|
||||
|
||||
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
|
||||
installFlags = [ "prefix=${placeholder "out"}" "install" ];
|
||||
|
||||
meta = {
|
||||
description = "A simple dependency manager for the Pony language.";
|
||||
description = "A simple dependency manager for the Pony language";
|
||||
homepage = "https://www.ponylang.org";
|
||||
license = stdenv.lib.licenses.bsd2;
|
||||
maintainers = with stdenv.lib.maintainers; [ dipinhora kamilchm patternspandemic ];
|
||||
|
||||
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
|
||||
|
||||
buildPhase = ''
|
||||
# according to official documentation
|
||||
cc rasm_v*.c -O2 -lm -lrt -march=native -o rasm
|
||||
cc rasm_v*.c -O2 -lm -lrt -o rasm
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
|
||||
@@ -13,6 +13,7 @@
|
||||
, CoreFoundation, Security
|
||||
, llvmPackages
|
||||
, pkgsBuildTarget, pkgsBuildBuild
|
||||
, makeRustPlatform
|
||||
} @ args:
|
||||
|
||||
import ./default.nix {
|
||||
|
||||
@@ -15,6 +15,7 @@
|
||||
, CoreFoundation, Security
|
||||
, llvmPackages
|
||||
, pkgsBuildTarget, pkgsBuildBuild
|
||||
, makeRustPlatform
|
||||
} @ args:
|
||||
|
||||
import ./default.nix {
|
||||
|
||||
@@ -12,6 +12,7 @@
|
||||
, CoreFoundation, Security
|
||||
, llvmPackages
|
||||
, pkgsBuildTarget, pkgsBuildBuild
|
||||
, makeRustPlatform
|
||||
}: rec {
|
||||
# https://doc.rust-lang.org/reference/conditional-compilation.html#target_arch
|
||||
toTargetArch = platform:
|
||||
@@ -33,24 +34,6 @@
|
||||
in platform.rustc.config
|
||||
or "${cpu_}-${vendor.name}-${kernel.name}${lib.optionalString (abi.name != "unknown") "-${abi.name}"}";
|
||||
|
||||
makeRustPlatform = { rustc, cargo, ... }: rec {
|
||||
rust = {
|
||||
inherit rustc cargo;
|
||||
};
|
||||
|
||||
fetchCargoTarball = buildPackages.callPackage ../../../build-support/rust/fetchCargoTarball.nix {
|
||||
inherit cargo;
|
||||
};
|
||||
|
||||
buildRustPackage = callPackage ../../../build-support/rust {
|
||||
inherit rustc cargo fetchCargoTarball;
|
||||
};
|
||||
|
||||
rustcSrc = callPackage ./rust-src.nix {
|
||||
inherit rustc;
|
||||
};
|
||||
};
|
||||
|
||||
# This just contains tools for now. But it would conceivably contain
|
||||
# libraries too, say if we picked some default/recommended versions from
|
||||
# `cratesIO` to build by Hydra and/or try to prefer/bias in Cargo.lock for
|
||||
|
||||
21
pkgs/development/compilers/rust/make-rust-platform.nix
Normal file
21
pkgs/development/compilers/rust/make-rust-platform.nix
Normal file
@@ -0,0 +1,21 @@
|
||||
{ buildPackages, callPackage }:
|
||||
|
||||
{ rustc, cargo, ... }:
|
||||
|
||||
rec {
|
||||
rust = {
|
||||
inherit rustc cargo;
|
||||
};
|
||||
|
||||
fetchCargoTarball = buildPackages.callPackage ../../../build-support/rust/fetchCargoTarball.nix {
|
||||
inherit cargo;
|
||||
};
|
||||
|
||||
buildRustPackage = callPackage ../../../build-support/rust {
|
||||
inherit rustc cargo fetchCargoTarball;
|
||||
};
|
||||
|
||||
rustcSrc = callPackage ./rust-src.nix {
|
||||
inherit rustc;
|
||||
};
|
||||
}
|
||||
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "Research platform for new language concepts and compiler technologies for Scala.";
|
||||
description = "Research platform for new language concepts and compiler technologies for Scala";
|
||||
longDescription = ''
|
||||
Dotty is a platform to try out new language concepts and compiler technologies for Scala.
|
||||
The focus is mainly on simplification. We remove extraneous syntax (e.g. no XML literals),
|
||||
|
||||
@@ -8,24 +8,24 @@ let
|
||||
glslang = fetchFromGitHub {
|
||||
owner = "KhronosGroup";
|
||||
repo = "glslang";
|
||||
rev = "3ed344dd784ecbbc5855e613786f3a1238823e56";
|
||||
sha256 = "00s2arfvw78d9k9fmangqlkvkmkpqzrin3g91vfab4wr8srb09dx";
|
||||
rev = "3ee5f2f1d3316e228916788b300d786bb574d337";
|
||||
sha256 = "1l5h9d92mzd35pgs0wibqfg7vbl771lwnvdlcsyhf6999khn5dzv";
|
||||
};
|
||||
spirv-tools = fetchFromGitHub {
|
||||
owner = "KhronosGroup";
|
||||
repo = "SPIRV-Tools";
|
||||
rev = "323a81fc5e30e43a04e5e22af4cba98ca2a161e6";
|
||||
sha256 = "1kwyh95l02w3v1ra55c836wayzw8d0m14ab7wf0ynhhyp3k2p9hv";
|
||||
rev = "b63f0e5ed3e818870968ebf6af73317127fd07b0";
|
||||
sha256 = "1chv30azfp76nha428ivg4ixrij6d8pxj5kn3jam87gmkmgc9zhm";
|
||||
};
|
||||
spirv-headers = fetchFromGitHub {
|
||||
owner = "KhronosGroup";
|
||||
repo = "SPIRV-Headers";
|
||||
rev = "204cd131c42b90d129073719f2766293ce35c081";
|
||||
sha256 = "1gp0mlbfccqnalaix97jxsa5i337xyzyr55wgssapy56p0q04wv2";
|
||||
rev = "979924c8bc839e4cb1b69d03d48398551f369ce7";
|
||||
sha256 = "07vyjlblpm4zhfds612h86lnz0qvrj5qqw5z2zzfa3m9fax7cm85";
|
||||
};
|
||||
in stdenv.mkDerivation rec {
|
||||
pname = "shaderc";
|
||||
version = "2019.1";
|
||||
version = "2020.2";
|
||||
|
||||
outputs = [ "out" "lib" "bin" "dev" "static" ];
|
||||
|
||||
@@ -33,7 +33,7 @@ in stdenv.mkDerivation rec {
|
||||
owner = "google";
|
||||
repo = "shaderc";
|
||||
rev = "v${version}";
|
||||
sha256 = "0x514rpignnb4vvl7wmijfakqc59986knjw3dh1zx0ah42xa7x37";
|
||||
sha256 = "1sxz8872x3rdlrhmbn83r1vniq4j51jnk0ka3447fq68il4myf1w";
|
||||
};
|
||||
|
||||
patchPhase = ''
|
||||
@@ -52,7 +52,7 @@ in stdenv.mkDerivation rec {
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
inherit (src.meta) homepage;
|
||||
description = "A collection of tools, libraries and tests for shader compilation.";
|
||||
description = "A collection of tools, libraries and tests for shader compilation";
|
||||
license = [ licenses.asl20 ];
|
||||
};
|
||||
}
|
||||
|
||||
@@ -9,7 +9,7 @@
|
||||
}:
|
||||
|
||||
let
|
||||
version = "8.1.15";
|
||||
version = "8.3.9";
|
||||
packInstall = swiplPath: pack:
|
||||
''${swiplPath}/bin/swipl -g "pack_install(${pack}, [package_directory(\"${swiplPath}/lib/swipl/pack\"), silent(true), interactive(false)])." -t "halt."
|
||||
'';
|
||||
@@ -22,7 +22,7 @@ stdenv.mkDerivation {
|
||||
owner = "SWI-Prolog";
|
||||
repo = "swipl-devel";
|
||||
rev = "V${version}";
|
||||
sha256 = "0czbrscx2s4079nmwvipp9cnwfny16m3fpnp823llm7wyljchgvq";
|
||||
sha256 = "0ixb8pc5s7q8q0njs8is1clpvik6jhhdcwnys7m9rpwdzgi10sjz";
|
||||
fetchSubmodules = true;
|
||||
};
|
||||
|
||||
|
||||
@@ -38,7 +38,7 @@ stdenv.mkDerivation rec {
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = "http://x11-basic.sourceforge.net/";
|
||||
description = "A Basic interpreter and compiler with graphics capabilities.";
|
||||
description = "A Basic interpreter and compiler with graphics capabilities";
|
||||
license = licenses.gpl2;
|
||||
maintainers = with maintainers; [ edwtjo ];
|
||||
platforms = platforms.unix;
|
||||
|
||||
Reference in New Issue
Block a user