packages/linux-lava: fix failed linking

This commit is contained in:
LavaDesu 2023-08-26 12:16:23 +07:00
parent c1a21234f0
commit 728da44b76
Signed by: cilly
GPG key ID: 6500251E087653C9

View file

@ -12,106 +12,113 @@
let let
sources = callPackage ./sources.nix { inherit inputs; }; sources = callPackage ./sources.nix { inherit inputs; };
llvmPackages = llvmPackages_16; llvmPackages = llvmPackages_16;
in (buildLinux (args // { kernel = buildLinux (args // {
inherit (sources) src kernelPatches; inherit (sources) src kernelPatches;
stdenv = ccacheStdenv.override { stdenv = ccacheStdenv.override {
# :sob: see https://github.com/NixOS/nixpkgs/issues/142901 # :sob: see https://github.com/NixOS/nixpkgs/issues/142901
stdenv = overrideCC llvmPackages.stdenv (llvmPackages.stdenv.cc.override { inherit (llvmPackages) bintools; }); stdenv = overrideCC llvmPackages.stdenv (llvmPackages.stdenv.cc.override {
}; bintools = llvmPackages.bintools.override {
version = "${sources.version}-tkg-Lava"; sharedLibraryLoader = null;
isZen = true; };
extraMakeFlags = [ "LLVM=1" "LLVM_IAS=1" ]; });
# TODO: };
# some stuff is set in pkgs/os-specific/linux/kernel/common-config.nix version = "${sources.version}-tkg-Lava";
# but i have no idea how to change it isZen = true;
structuredExtraConfig = with lib.kernel; builtins.mapAttrs (_: value: lib.mkForce value) { extraMakeFlags = [ "LLVM=1" "LLVM_IAS=1" ];
LOCALVERSION = freeform "-tkg-Lava"; # TODO:
ZENIFY = yes; # some stuff is set in pkgs/os-specific/linux/kernel/common-config.nix
WINESYNC = module; # but i have no idea how to change it
structuredExtraConfig = with lib.kernel; builtins.mapAttrs (_: value: lib.mkForce value) {
LOCALVERSION = freeform "-tkg-Lava";
ZENIFY = yes;
WINESYNC = module;
#tkg defaults #tkg defaults
DYNAMIC_FAULT = no; DYNAMIC_FAULT = no;
DEFAULT_FQ_CODEL = no; DEFAULT_FQ_CODEL = no;
WERROR = no; WERROR = no;
NTP_PPS = no; NTP_PPS = no;
ZSWAP_COMPRESSOR_DEFAULT_LZO = no; ZSWAP_COMPRESSOR_DEFAULT_LZO = no;
PROFILE_ALL_BRANCHES = no; PROFILE_ALL_BRANCHES = no;
CRYPTO_LZ4 = yes; CRYPTO_LZ4 = yes;
CRYPTO_LZ4HC = yes; CRYPTO_LZ4HC = yes;
LZ4_COMPRESS = yes; LZ4_COMPRESS = yes;
LZ4HC_COMPRESS = yes; LZ4HC_COMPRESS = yes;
ZSWAP_COMPRESSOR_DEFAULT_LZ4 = yes; ZSWAP_COMPRESSOR_DEFAULT_LZ4 = yes;
DEBUG_FORCE_FUNCTION_ALIGN_64B = no; DEBUG_FORCE_FUNCTION_ALIGN_64B = no;
X86_P6_NOP = no; X86_P6_NOP = no;
RCU_STRICT_GRACE_PERIOD = no; RCU_STRICT_GRACE_PERIOD = no;
ZSWAP_COMPRESSOR_DEFAULT = freeform "lz4"; ZSWAP_COMPRESSOR_DEFAULT = freeform "lz4";
CPU_FREQ_DEFAULT_GOV_SCHEDUTIL = yes; CPU_FREQ_DEFAULT_GOV_SCHEDUTIL = yes;
CPU_FREQ_DEFAULT_GOV_ONDEMAND = no; CPU_FREQ_DEFAULT_GOV_ONDEMAND = no;
CPU_FREQ_DEFAULT_GOV_CONSERVATIVE = no; CPU_FREQ_DEFAULT_GOV_CONSERVATIVE = no;
CPU_FREQ_DEFAULT_GOV_PERFORMANCE = no; CPU_FREQ_DEFAULT_GOV_PERFORMANCE = no;
CPU_FREQ_DEFAULT_GOV_PERFORMANCE_NODEF = no; CPU_FREQ_DEFAULT_GOV_PERFORMANCE_NODEF = no;
BLK_DEV_LOOP = module; BLK_DEV_LOOP = module;
I2C_NCT6775 = module; # openrgb I2C_NCT6775 = module; # openrgb
# clang/llvm # clang/llvm
LTO_CLANG_FULL = no; LTO_CLANG_FULL = no;
LTO_CLANG_THIN = yes; LTO_CLANG_THIN = yes;
LTO_NONE = no; LTO_NONE = no;
KCSAN = no; KCSAN = no;
INIT_ON_FREE_DEFAULT_ON = yes; INIT_ON_FREE_DEFAULT_ON = yes;
INIT_STACK_ALL_ZERO = yes; INIT_STACK_ALL_ZERO = yes;
INIT_STACK_NONE = no; INIT_STACK_NONE = no;
# tickless timers # tickless timers
HZ_PERIODIC = no; HZ_PERIODIC = no;
NO_HZ = yes; NO_HZ = yes;
NO_HZ_COMMON = yes; NO_HZ_COMMON = yes;
NO_HZ_FULL = yes; NO_HZ_FULL = yes;
NO_HZ_FULL_NODEF = yes; NO_HZ_FULL_NODEF = yes;
NO_HZ_IDLE = no; NO_HZ_IDLE = no;
TICK_CPU_ACCOUNTING = no; TICK_CPU_ACCOUNTING = no;
VIRT_CPU_ACCOUNTING_GEN = yes; VIRT_CPU_ACCOUNTING_GEN = yes;
CONTEXT_TRACKING = yes; CONTEXT_TRACKING = yes;
CONTEXT_TRACKING_FORCE = no; CONTEXT_TRACKING_FORCE = no;
HZ_1000 = yes; HZ_1000 = yes;
HZ_1000_NODEF = yes; HZ_1000_NODEF = yes;
# preempt # preempt
PREEMPT = yes; PREEMPT = yes;
PREEMPT_COUNT = yes; PREEMPT_COUNT = yes;
PREEMPT_VOLUNTARY = no; PREEMPT_VOLUNTARY = no;
PREEMPTION = yes; PREEMPTION = yes;
PREEMPT_DYNAMIC = yes; PREEMPT_DYNAMIC = yes;
# scheduler # scheduler
SCHED_BORE = yes; SCHED_BORE = yes;
# disable numa # disable numa
NUMA = no; NUMA = no;
AMD_NUMA = no; AMD_NUMA = no;
ACPI_NUMA = no; ACPI_NUMA = no;
X86_64_ACPI_NUMA = no; X86_64_ACPI_NUMA = no;
NODES_SPAN_OTHER_NODES = no; NODES_SPAN_OTHER_NODES = no;
NUMA_EMU = no; NUMA_EMU = no;
NODES_SHIFT = no; NODES_SHIFT = no;
NEED_MULTIPLE_NODES = no; NEED_MULTIPLE_NODES = no;
USE_PERCPU_NUMA_NODE_ID = no; USE_PERCPU_NUMA_NODE_ID = no;
# disable ftrace # disable ftrace
FUNCTION_TRACER = no; FUNCTION_TRACER = no;
FUNCTION_GRAPH_TRACER = no; FUNCTION_GRAPH_TRACER = no;
# disable misc debugging # disable misc debugging
SLUB_DEBUG = no; SLUB_DEBUG = no;
PM_DEBUG = no; PM_DEBUG = no;
PM_ADVANCED_DEBUG = no; PM_ADVANCED_DEBUG = no;
PM_SLEEP_DEBUG = no; PM_SLEEP_DEBUG = no;
ACPI_DEBUG = no; ACPI_DEBUG = no;
SCHED_DEBUG = no; SCHED_DEBUG = no;
LATENCYTOP = no; LATENCYTOP = no;
DEBUG_PREEMPT = no; DEBUG_PREEMPT = no;
}; };
ignoreConfigErrors = true; ignoreConfigErrors = true;
} // (args.argsOverride or {}))).overrideAttrs(o: { } // (args.argsOverride or {}));
hardeningDisable = (o.hardeningDisable or []) ++ [ "strictoverflow" ]; in kernel.overrideAttrs(old: {
# :sob: see https://github.com/NixOS/nixpkgs/issues/37249
passthru = kernel.passthru;
hardeningDisable = (old.hardeningDisable or []) ++ [ "strictoverflow" ];
}) })