Files
nix-custom-sqlite/src/amalgamation.nix
T
oysteikt 0fa835d36e
Run nix flake check / build (push) Failing after 1m54s
Explicitly set CC_FOR_BUILD multiple places
2026-05-31 19:48:45 +09:00

66 lines
1.2 KiB
Nix

{
lib,
src,
version,
nameSuffix,
stdenv,
unzip,
zlib,
icu,
extensions ? [ ],
extraLibraries ? [ ],
features ? { },
featureFlags ? [ ],
enableInteractive ? false,
...
}:
stdenv.mkDerivation (finalAttrs: {
pname = "sqlite-amalgamation${nameSuffix}";
inherit version src;
nativeBuildInputs = [
unzip
];
buildInputs = [
zlib
] ++ lib.optional features.ENABLE_ICU [
icu
];
# required for aarch64 but applied for all arches for simplicity
preConfigure = ''
patchShebangs configure
'';
# sqlite relies on autosetup now; so many of the
# previously-understood flags are gone. They should instead be set
# on a per-output basis.
setOutputFlags = false;
configureFlags = lib.optional features.ENABLE_ICU [
"--enable-icu-collations"
"--with-icu-config=${lib.getExe' icu.dev "icu-config"}"
];
env.NIX_CFLAGS_COMPILE = lib.concatStringsSep " " featureFlags;
env.NIX_CFLAGS_LINK = lib.optionalString features.ENABLE_FTS5 "-lm";
env.CC_FOR_BUILD = "${stdenv.cc.targetPrefix}cc";
makeFlags = [ "sqlite3.c" "sqlite3.h" ];
installPhase = ''
runHook preInstall
install -Dm444 sqlite3.{c,h} -t "$out"
runHook postInstall
'';
})