forked from M-Labs/artiq
flake: update llvmlite
This commit is contained in:
parent
d2ac6aceb3
commit
df662c4262
|
@ -18,13 +18,13 @@ def entrypoint():
|
||||||
return_str()
|
return_str()
|
||||||
|
|
||||||
|
|
||||||
# CHECK: declare void @accept_str\({ i8\*, i32 }\* byval\)
|
# CHECK: declare void @accept_str\({ i8\*, i32 }\* byval\({ i8\*, i32 }\)\)
|
||||||
@syscall
|
@syscall
|
||||||
def accept_str(name: TStr) -> TNone:
|
def accept_str(name: TStr) -> TNone:
|
||||||
pass
|
pass
|
||||||
|
|
||||||
|
|
||||||
# CHECK: declare void @return_str\({ i8\*, i32 }\* sret\)
|
# CHECK: declare void @return_str\({ i8\*, i32 }\* sret\({ i8\*, i32 }\)\)
|
||||||
@syscall
|
@syscall
|
||||||
def return_str() -> TStr:
|
def return_str() -> TStr:
|
||||||
pass
|
pass
|
||||||
|
|
|
@ -15,7 +15,7 @@ def foo() -> TNone:
|
||||||
|
|
||||||
# sret nowrite functions shouldn't be marked inaccessiblememonly.
|
# sret nowrite functions shouldn't be marked inaccessiblememonly.
|
||||||
# CHECK-L: ; Function Attrs: nounwind
|
# CHECK-L: ; Function Attrs: nounwind
|
||||||
# CHECK-NEXT-L: declare void @bar({ i32, i64 }* sret)
|
# CHECK-NEXT-L: declare void @bar({ i32, i64 }* sret({ i32, i64 }))
|
||||||
@syscall(flags={"nounwind", "nowrite"})
|
@syscall(flags={"nounwind", "nowrite"})
|
||||||
def bar() -> TTuple([TInt32, TInt64]):
|
def bar() -> TTuple([TInt32, TInt64]):
|
||||||
pass
|
pass
|
||||||
|
|
26
flake.nix
26
flake.nix
|
@ -111,6 +111,28 @@
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
|
llvmlite-new = pkgs.python3Packages.buildPythonPackage rec {
|
||||||
|
pname = "llvmlite";
|
||||||
|
version = "0.40.1";
|
||||||
|
src = pkgs.fetchFromGitHub {
|
||||||
|
owner = "numba";
|
||||||
|
repo = "llvmlite";
|
||||||
|
rev = "v${version}";
|
||||||
|
sha256 = "sha256-gPEda9cMEsruvBt8I2VFfsTKZaPsNDgqx2Y9n0MSc4Y=";
|
||||||
|
};
|
||||||
|
nativeBuildInputs = [ pkgs.llvm_14 ];
|
||||||
|
# Disable static linking
|
||||||
|
# https://github.com/numba/llvmlite/issues/93
|
||||||
|
postPatch = ''
|
||||||
|
substituteInPlace ffi/Makefile.linux --replace "-static-libstdc++" ""
|
||||||
|
substituteInPlace llvmlite/tests/test_binding.py --replace "test_linux" "nope"
|
||||||
|
'';
|
||||||
|
# Set directory containing llvm-config binary
|
||||||
|
preConfigure = ''
|
||||||
|
export LLVM_CONFIG=${pkgs.llvm_14.dev}/bin/llvm-config
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
artiq-upstream = pkgs.python3Packages.buildPythonPackage rec {
|
artiq-upstream = pkgs.python3Packages.buildPythonPackage rec {
|
||||||
pname = "artiq";
|
pname = "artiq";
|
||||||
version = artiqVersion;
|
version = artiqVersion;
|
||||||
|
@ -124,8 +146,8 @@
|
||||||
|
|
||||||
nativeBuildInputs = [ pkgs.qt5.wrapQtAppsHook ];
|
nativeBuildInputs = [ pkgs.qt5.wrapQtAppsHook ];
|
||||||
# keep llvm_x and lld_x in sync with llvmlite
|
# keep llvm_x and lld_x in sync with llvmlite
|
||||||
propagatedBuildInputs = [ pkgs.llvm_14 pkgs.lld_14 sipyco.packages.x86_64-linux.sipyco pythonparser pkgs.qt5.qtsvg artiq-comtools.packages.x86_64-linux.artiq-comtools ]
|
propagatedBuildInputs = [ pkgs.llvm_14 pkgs.lld_14 sipyco.packages.x86_64-linux.sipyco pythonparser llvmlite-new pkgs.qt5.qtsvg artiq-comtools.packages.x86_64-linux.artiq-comtools ]
|
||||||
++ (with pkgs.python3Packages; [ llvmlite pyqtgraph pygit2 numpy dateutil scipy prettytable pyserial levenshtein h5py pyqt5 qasync tqdm lmdb jsonschema ]);
|
++ (with pkgs.python3Packages; [ pyqtgraph pygit2 numpy dateutil scipy prettytable pyserial levenshtein h5py pyqt5 qasync tqdm lmdb jsonschema ]);
|
||||||
|
|
||||||
dontWrapQtApps = true;
|
dontWrapQtApps = true;
|
||||||
postFixup = ''
|
postFixup = ''
|
||||||
|
|
Loading…
Reference in New Issue