blob: 7f256b184a5639ad0526521f757317c0edb72bc3 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
|
pkgs: lcq: {
native = pkgs.pkgsMusl.stdenv.mkDerivation {
pname = "libcolonq-pit";
version = "git";
src = ./.;
hardeningDisable = ["all"];
buildInputs = [
lcq.prelude.native
];
installPhase = ''
make prefix=$out install
'';
};
wasm = let
wasm32-clang = pkgs.writeShellScriptBin "wasm32-clang" ''
${pkgs.llvmPackages.clang-unwrapped}/bin/clang \
-I${pkgs.llvmPackages.clang}/resource-root/include \
-I${lcq.prelude.native}/include \
--target=wasm32-unknown-unknown "$@"
'';
in pkgs.stdenv.mkDerivation {
pname = "libcolonq-pit";
version = "git";
src = ./.;
hardeningDisable = ["all"];
nativeBuildInputs = [
wasm32-clang
];
buildPhase = ''
make CC=wasm32-clang libcolonq-pit.a
'';
installPhase = ''
make CC=wasm32-clang prefix=$out install-core install-headers
'';
};
arm-embedded = pkgs.pkgsCross.arm-embedded.stdenv.mkDerivation {
pname = "libcolonq-pit";
version = "git";
src = ./.;
hardeningDisable = ["all"];
buildInputs = [
lcq.prelude.native
];
buildPhase = ''
make CPPFLAGS=-DPIT_NO_DOUBLE CC=arm-none-eabi-gcc AR=arm-none-eabi-ar libcolonq-pit.a
'';
installPhase = ''
make CC=arm-none-eabi-gcc AR=arm-none-eabi-ar prefix=$out install-core install-headers
'';
};
windows = pkgs.pkgsCross.mingwW64.stdenv.mkDerivation {
pname = "libcolonq-pit";
version = "git";
src = ./.;
hardeningDisable = ["all"];
buildInputs = [
lcq.prelude.native
];
buildPhase = ''
make CC=x86_64-w64-mingw32-cc AR=x86_64-w64-mingw32-ar EXE=pit.exe
'';
installPhase = ''
make CC=x86_64-w64-mingw32-cc AR=x86_64-w64-mingw32-ar EXE=pit.exe prefix=$out install
'';
};
}
|