Various progress, add outputs for sqlite.so
This commit is contained in:
@@ -35,7 +35,8 @@
|
||||
enableInteractive;
|
||||
};
|
||||
in {
|
||||
"sqlite-amalgamation${result.suffix}" = result.amalgamation;
|
||||
# "sqlite-amalgamation${result.suffix}" = result.amalgamation;
|
||||
"sqlite${result.suffix}" = result.sqlite;
|
||||
}) productVars));
|
||||
};
|
||||
}
|
||||
|
||||
+7
-10
@@ -9,8 +9,7 @@
|
||||
|
||||
unzip,
|
||||
zlib,
|
||||
readline,
|
||||
ncurses,
|
||||
icu,
|
||||
|
||||
features,
|
||||
featureFlags,
|
||||
@@ -29,10 +28,8 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
|
||||
buildInputs = [
|
||||
zlib
|
||||
]
|
||||
++ lib.optionals enableInteractive [
|
||||
readline
|
||||
ncurses
|
||||
] ++ lib.optional features.ENABLE_ICU [
|
||||
icu
|
||||
];
|
||||
|
||||
# required for aarch64 but applied for all arches for simplicity
|
||||
@@ -45,10 +42,10 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
# on a per-output basis.
|
||||
setOutputFlags = false;
|
||||
|
||||
configureFlags =
|
||||
lib.optional (!enableInteractive) "--disable-readline"
|
||||
# autosetup only looks up readline.h in predefined set of directories.
|
||||
++ lib.optional enableInteractive "--with-readline-header=${lib.getDev readline}/include/readline/readline.h";
|
||||
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";
|
||||
|
||||
+8
-1
@@ -57,8 +57,15 @@ in {
|
||||
inherit config;
|
||||
inherit suffix;
|
||||
|
||||
# "sqlite"
|
||||
sqlite = pkgs.callPackage ./sqlite.nix ({
|
||||
inherit (pkgs.sqlite) version src;
|
||||
inherit amalgamate;
|
||||
nameSuffix = suffix;
|
||||
} // config);
|
||||
|
||||
# "sqlite-static"
|
||||
|
||||
# "sqlite-cli"
|
||||
} // lib.optionalAttrs amalgamate {
|
||||
amalgamation = pkgs.callPackage ./amalgamation.nix ({
|
||||
inherit (pkgs.sqlite) version src;
|
||||
|
||||
@@ -0,0 +1,63 @@
|
||||
{
|
||||
lib,
|
||||
|
||||
src,
|
||||
version,
|
||||
nameSuffix,
|
||||
|
||||
stdenv,
|
||||
|
||||
unzip,
|
||||
zlib,
|
||||
icu,
|
||||
|
||||
amalgamate,
|
||||
features,
|
||||
featureFlags,
|
||||
enableInteractive ? false,
|
||||
|
||||
...
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "sqlite${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 = [
|
||||
"--bindir=/tmp"
|
||||
"--includedir=${placeholder "out"}/include"
|
||||
"--libdir=${placeholder "out"}/lib"
|
||||
|
||||
"--enable-shared"
|
||||
"--disable-static"
|
||||
"--${if amalgamate then "enable" else "disable"}-amalgamation"
|
||||
] ++ 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";
|
||||
|
||||
makeTarget = "sqlite3.so";
|
||||
})
|
||||
Reference in New Issue
Block a user