nix: build with clang
Some checks failed
Test / Create distribution (push) Failing after 30s
Test / Sandbox (push) Successful in 40s
Test / Sandbox (race detector) (push) Successful in 41s
Test / Hpkg (push) Successful in 41s
Test / Hakurei (push) Successful in 2m33s
Test / Hakurei (race detector) (push) Successful in 3m11s
Test / Flake checks (push) Successful in 1m36s
Some checks failed
Test / Create distribution (push) Failing after 30s
Test / Sandbox (push) Successful in 40s
Test / Sandbox (race detector) (push) Successful in 41s
Test / Hpkg (push) Successful in 41s
Test / Hakurei (push) Successful in 2m33s
Test / Hakurei (race detector) (push) Successful in 3m11s
Test / Flake checks (push) Successful in 1m36s
Clang is better than gcc in various ways. This also pulls in clang-format which is very helpful. Signed-off-by: Ophestra <cat@gensokyo.uk>
This commit is contained in:
parent
a91920310d
commit
2c51ff8c83
@ -114,7 +114,7 @@
|
||||
inherit (pkgs)
|
||||
# passthru.buildInputs
|
||||
go
|
||||
gcc
|
||||
clang
|
||||
|
||||
# nativeBuildInputs
|
||||
pkg-config
|
||||
@ -129,6 +129,10 @@
|
||||
zstd
|
||||
gnutar
|
||||
coreutils
|
||||
|
||||
# for check
|
||||
util-linux
|
||||
nettools
|
||||
;
|
||||
};
|
||||
hsu = pkgs.callPackage ./cmd/hsu/package.nix { inherit (self.packages.${system}) hakurei; };
|
||||
|
||||
@ -38,7 +38,7 @@ static void hakurei_shim_sigaction(int sig, siginfo_t *si, void *ucontext) {
|
||||
|
||||
void hakurei_shim_setup_cont_signal(pid_t ppid, int fd) {
|
||||
if (hakurei_shim_param_ppid != -1 || hakurei_shim_fd != -1)
|
||||
*(int *)NULL = 0; /* unreachable */
|
||||
*(volatile int *)NULL = 0; /* unreachable */
|
||||
|
||||
struct sigaction new_action = {0}, old_action = {0};
|
||||
if (sigaction(SIGCONT, NULL, &old_action) != 0)
|
||||
|
||||
13
package.nix
13
package.nix
@ -20,7 +20,7 @@
|
||||
|
||||
# for passthru.buildInputs
|
||||
go,
|
||||
gcc,
|
||||
clang,
|
||||
|
||||
# for check
|
||||
util-linux,
|
||||
@ -81,8 +81,13 @@ buildGoModule rec {
|
||||
hsuPath = "/run/wrappers/bin/hsu";
|
||||
};
|
||||
|
||||
# nix build environment does not allow acls
|
||||
env.GO_TEST_SKIP_ACL = 1;
|
||||
env = {
|
||||
# use clang instead of gcc
|
||||
CC = "clang -O3 -Werror";
|
||||
|
||||
# nix build environment does not allow acls
|
||||
GO_TEST_SKIP_ACL = 1;
|
||||
};
|
||||
|
||||
buildInputs = [
|
||||
libffi
|
||||
@ -135,7 +140,7 @@ buildGoModule rec {
|
||||
|
||||
passthru.targetPkgs = [
|
||||
go
|
||||
gcc
|
||||
clang
|
||||
xorg.xorgproto
|
||||
util-linux
|
||||
|
||||
|
||||
@ -44,7 +44,7 @@ nixosTest {
|
||||
|
||||
cd ${self.packages.${system}.hakurei.src}
|
||||
${fhs}/bin/hakurei-fhs -c \
|
||||
'go test ${if withRace then "-race" else "-count 16"} ./...' \
|
||||
'CC="clang -O3 -Werror" go test ${if withRace then "-race" else "-count 16"} ./...' \
|
||||
&> /tmp/hakurei-test.log && \
|
||||
touch /tmp/hakurei-test-ok
|
||||
touch /tmp/hakurei-test-done
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user