nixpkgs/pkgs/development/libraries/ldb/default.nix

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

91 lines
1.9 KiB
Nix
Raw Normal View History

{ lib, stdenv
, fetchurl
ldb: 1.3.3 → 2.1.1 * Move build tools to nativeBuildInputs * Switch to Python 3 as it is required by most Samba libraries * Do not yet enable the experimental lmdb backend introduced in 1.4.0 Changes: * https://git.samba.org/samba.git/?p=samba.git;a=commit;h=4e2eb5660a11cea215d39495844aa76ffb5a1a2e * https://git.samba.org/samba.git/?p=samba.git;a=commit;h=3eecdbcc38dbe084b285c9720443d819304f7b97 * https://git.samba.org/samba.git/?p=samba.git;a=commit;h=b7f0ee93f58e663bb8fc0b39985aa49b254582d9 * https://git.samba.org/samba.git/?p=samba.git;a=commit;h=bdbb9422c0430d74c3173822257e23a9dfb2713e * https://git.samba.org/samba.git/?p=samba.git;a=commit;h=340cb9ca97bc2a23f102f80897a8d8f4809f0072 * https://git.samba.org/samba.git/?p=samba.git;a=commit;h=de3bb5cd5236565f2b79644d99e55d03b254b65e * https://git.samba.org/samba.git/?p=samba.git;a=commit;h=09d281d69b668a71e4457889bb5e949414a664fb * https://git.samba.org/samba.git/?p=samba.git;a=commit;h=81648d576d56e924945b2214ac12ca6a40679db8 * https://git.samba.org/samba.git/?p=samba.git;a=commit;h=86d480ade25953a175b0837667ce5efb8b7e65df * https://git.samba.org/samba.git/?p=samba.git;a=commit;h=80bd467affbda1d962f4deb3caa8a42c6531425d * https://git.samba.org/samba.git/?p=samba.git;a=commit;h=bc0d16c9d8eacd254552ff28726a2ba5f2a1c8c0 * https://git.samba.org/samba.git/?p=samba.git;a=commit;h=c37b94fd0a7b24df93b664ad4c2d197c516c9dce * https://git.samba.org/samba.git/?p=samba.git;a=commit;h=79460b1b9f3452d6d68014b84f4a9dc3988bd916 * https://git.samba.org/samba.git/?p=samba.git;a=commit;h=0ca46a37268c8219192abc3ab5f2546a02ed8862
2020-03-31 03:13:44 +00:00
, python3
, pkg-config
, readline
, tdb
, talloc
, tevent
, popt
, libxslt
, docbook-xsl-nons
, docbook_xml_dtd_42
, cmocka
2023-09-03 00:24:44 +00:00
, wafHook
, buildPackages
, libxcrypt
, testers
2014-04-30 07:42:02 +00:00
}:
stdenv.mkDerivation (finalAttrs: {
pname = "ldb";
2024-03-30 01:54:32 +00:00
version = "2.9.0";
2014-04-30 07:42:02 +00:00
src = fetchurl {
url = "mirror://samba/ldb/${finalAttrs.pname}-${finalAttrs.version}.tar.gz";
2024-03-30 01:54:32 +00:00
hash = "sha256-EFqv9xrYgaf661gv1BauKCIbb94zj/+CgoBlBiwlB6U=";
2014-04-30 07:42:02 +00:00
};
outputs = [ "out" "dev" ];
nativeBuildInputs = [
pkg-config
ldb: 1.3.3 → 2.1.1 * Move build tools to nativeBuildInputs * Switch to Python 3 as it is required by most Samba libraries * Do not yet enable the experimental lmdb backend introduced in 1.4.0 Changes: * https://git.samba.org/samba.git/?p=samba.git;a=commit;h=4e2eb5660a11cea215d39495844aa76ffb5a1a2e * https://git.samba.org/samba.git/?p=samba.git;a=commit;h=3eecdbcc38dbe084b285c9720443d819304f7b97 * https://git.samba.org/samba.git/?p=samba.git;a=commit;h=b7f0ee93f58e663bb8fc0b39985aa49b254582d9 * https://git.samba.org/samba.git/?p=samba.git;a=commit;h=bdbb9422c0430d74c3173822257e23a9dfb2713e * https://git.samba.org/samba.git/?p=samba.git;a=commit;h=340cb9ca97bc2a23f102f80897a8d8f4809f0072 * https://git.samba.org/samba.git/?p=samba.git;a=commit;h=de3bb5cd5236565f2b79644d99e55d03b254b65e * https://git.samba.org/samba.git/?p=samba.git;a=commit;h=09d281d69b668a71e4457889bb5e949414a664fb * https://git.samba.org/samba.git/?p=samba.git;a=commit;h=81648d576d56e924945b2214ac12ca6a40679db8 * https://git.samba.org/samba.git/?p=samba.git;a=commit;h=86d480ade25953a175b0837667ce5efb8b7e65df * https://git.samba.org/samba.git/?p=samba.git;a=commit;h=80bd467affbda1d962f4deb3caa8a42c6531425d * https://git.samba.org/samba.git/?p=samba.git;a=commit;h=bc0d16c9d8eacd254552ff28726a2ba5f2a1c8c0 * https://git.samba.org/samba.git/?p=samba.git;a=commit;h=c37b94fd0a7b24df93b664ad4c2d197c516c9dce * https://git.samba.org/samba.git/?p=samba.git;a=commit;h=79460b1b9f3452d6d68014b84f4a9dc3988bd916 * https://git.samba.org/samba.git/?p=samba.git;a=commit;h=0ca46a37268c8219192abc3ab5f2546a02ed8862
2020-03-31 03:13:44 +00:00
python3
2023-09-03 00:24:44 +00:00
wafHook
ldb: 1.3.3 → 2.1.1 * Move build tools to nativeBuildInputs * Switch to Python 3 as it is required by most Samba libraries * Do not yet enable the experimental lmdb backend introduced in 1.4.0 Changes: * https://git.samba.org/samba.git/?p=samba.git;a=commit;h=4e2eb5660a11cea215d39495844aa76ffb5a1a2e * https://git.samba.org/samba.git/?p=samba.git;a=commit;h=3eecdbcc38dbe084b285c9720443d819304f7b97 * https://git.samba.org/samba.git/?p=samba.git;a=commit;h=b7f0ee93f58e663bb8fc0b39985aa49b254582d9 * https://git.samba.org/samba.git/?p=samba.git;a=commit;h=bdbb9422c0430d74c3173822257e23a9dfb2713e * https://git.samba.org/samba.git/?p=samba.git;a=commit;h=340cb9ca97bc2a23f102f80897a8d8f4809f0072 * https://git.samba.org/samba.git/?p=samba.git;a=commit;h=de3bb5cd5236565f2b79644d99e55d03b254b65e * https://git.samba.org/samba.git/?p=samba.git;a=commit;h=09d281d69b668a71e4457889bb5e949414a664fb * https://git.samba.org/samba.git/?p=samba.git;a=commit;h=81648d576d56e924945b2214ac12ca6a40679db8 * https://git.samba.org/samba.git/?p=samba.git;a=commit;h=86d480ade25953a175b0837667ce5efb8b7e65df * https://git.samba.org/samba.git/?p=samba.git;a=commit;h=80bd467affbda1d962f4deb3caa8a42c6531425d * https://git.samba.org/samba.git/?p=samba.git;a=commit;h=bc0d16c9d8eacd254552ff28726a2ba5f2a1c8c0 * https://git.samba.org/samba.git/?p=samba.git;a=commit;h=c37b94fd0a7b24df93b664ad4c2d197c516c9dce * https://git.samba.org/samba.git/?p=samba.git;a=commit;h=79460b1b9f3452d6d68014b84f4a9dc3988bd916 * https://git.samba.org/samba.git/?p=samba.git;a=commit;h=0ca46a37268c8219192abc3ab5f2546a02ed8862
2020-03-31 03:13:44 +00:00
libxslt
docbook-xsl-nons
docbook_xml_dtd_42
tdb
tevent
];
2014-04-30 07:42:02 +00:00
buildInputs = [
ldb: 1.3.3 → 2.1.1 * Move build tools to nativeBuildInputs * Switch to Python 3 as it is required by most Samba libraries * Do not yet enable the experimental lmdb backend introduced in 1.4.0 Changes: * https://git.samba.org/samba.git/?p=samba.git;a=commit;h=4e2eb5660a11cea215d39495844aa76ffb5a1a2e * https://git.samba.org/samba.git/?p=samba.git;a=commit;h=3eecdbcc38dbe084b285c9720443d819304f7b97 * https://git.samba.org/samba.git/?p=samba.git;a=commit;h=b7f0ee93f58e663bb8fc0b39985aa49b254582d9 * https://git.samba.org/samba.git/?p=samba.git;a=commit;h=bdbb9422c0430d74c3173822257e23a9dfb2713e * https://git.samba.org/samba.git/?p=samba.git;a=commit;h=340cb9ca97bc2a23f102f80897a8d8f4809f0072 * https://git.samba.org/samba.git/?p=samba.git;a=commit;h=de3bb5cd5236565f2b79644d99e55d03b254b65e * https://git.samba.org/samba.git/?p=samba.git;a=commit;h=09d281d69b668a71e4457889bb5e949414a664fb * https://git.samba.org/samba.git/?p=samba.git;a=commit;h=81648d576d56e924945b2214ac12ca6a40679db8 * https://git.samba.org/samba.git/?p=samba.git;a=commit;h=86d480ade25953a175b0837667ce5efb8b7e65df * https://git.samba.org/samba.git/?p=samba.git;a=commit;h=80bd467affbda1d962f4deb3caa8a42c6531425d * https://git.samba.org/samba.git/?p=samba.git;a=commit;h=bc0d16c9d8eacd254552ff28726a2ba5f2a1c8c0 * https://git.samba.org/samba.git/?p=samba.git;a=commit;h=c37b94fd0a7b24df93b664ad4c2d197c516c9dce * https://git.samba.org/samba.git/?p=samba.git;a=commit;h=79460b1b9f3452d6d68014b84f4a9dc3988bd916 * https://git.samba.org/samba.git/?p=samba.git;a=commit;h=0ca46a37268c8219192abc3ab5f2546a02ed8862
2020-03-31 03:13:44 +00:00
python3
readline # required to build python
tdb
talloc
tevent
popt
2018-04-29 02:13:12 +00:00
cmocka
libxcrypt
2014-04-30 07:42:02 +00:00
];
2023-01-02 19:07:33 +00:00
# otherwise the configure script fails with
# PYTHONHASHSEED=1 missing! Don't use waf directly, use ./configure and make!
preConfigure = ''
export PKGCONFIG="$PKG_CONFIG"
export PYTHONHASHSEED=1
'';
wafPath = "buildtools/bin/waf";
2014-04-30 07:42:02 +00:00
wafConfigureFlags = [
2014-04-30 07:42:02 +00:00
"--bundled-libraries=NONE"
"--builtin-libraries=replace"
ldb: 1.3.3 → 2.1.1 * Move build tools to nativeBuildInputs * Switch to Python 3 as it is required by most Samba libraries * Do not yet enable the experimental lmdb backend introduced in 1.4.0 Changes: * https://git.samba.org/samba.git/?p=samba.git;a=commit;h=4e2eb5660a11cea215d39495844aa76ffb5a1a2e * https://git.samba.org/samba.git/?p=samba.git;a=commit;h=3eecdbcc38dbe084b285c9720443d819304f7b97 * https://git.samba.org/samba.git/?p=samba.git;a=commit;h=b7f0ee93f58e663bb8fc0b39985aa49b254582d9 * https://git.samba.org/samba.git/?p=samba.git;a=commit;h=bdbb9422c0430d74c3173822257e23a9dfb2713e * https://git.samba.org/samba.git/?p=samba.git;a=commit;h=340cb9ca97bc2a23f102f80897a8d8f4809f0072 * https://git.samba.org/samba.git/?p=samba.git;a=commit;h=de3bb5cd5236565f2b79644d99e55d03b254b65e * https://git.samba.org/samba.git/?p=samba.git;a=commit;h=09d281d69b668a71e4457889bb5e949414a664fb * https://git.samba.org/samba.git/?p=samba.git;a=commit;h=81648d576d56e924945b2214ac12ca6a40679db8 * https://git.samba.org/samba.git/?p=samba.git;a=commit;h=86d480ade25953a175b0837667ce5efb8b7e65df * https://git.samba.org/samba.git/?p=samba.git;a=commit;h=80bd467affbda1d962f4deb3caa8a42c6531425d * https://git.samba.org/samba.git/?p=samba.git;a=commit;h=bc0d16c9d8eacd254552ff28726a2ba5f2a1c8c0 * https://git.samba.org/samba.git/?p=samba.git;a=commit;h=c37b94fd0a7b24df93b664ad4c2d197c516c9dce * https://git.samba.org/samba.git/?p=samba.git;a=commit;h=79460b1b9f3452d6d68014b84f4a9dc3988bd916 * https://git.samba.org/samba.git/?p=samba.git;a=commit;h=0ca46a37268c8219192abc3ab5f2546a02ed8862
2020-03-31 03:13:44 +00:00
"--without-ldb-lmdb"
] ++ lib.optionals (stdenv.hostPlatform != stdenv.buildPlatform) [
"--cross-compile"
"--cross-execute=${stdenv.hostPlatform.emulator buildPackages}"
2014-04-30 07:42:02 +00:00
];
ldb: copy cross fix from tevent Saw the following while building on an x86_64-linux host for an armv6l-linux target: ``` Testing pyembed configuration: Could not build a python embedded interpreter ``` I dug into the config log and this seemed to be cause of the issue: ``` ['armv6l-unknown-linux-gnueabihf-gcc', '-MMD', '-D_GNU_SOURCE=1', '-D_XOPEN_SOURCE_EXTENDED=1', '-g', '-fwrapv', '-O3', '-I/nix/store/0pyymzxf7n0fzpaqnvwv92ab72v3jq8d-python3-3.10.9/include/python3.10', '-I/nix/store/kaiinm7cjirmv4zd3pdqa r23rsypfqlh-libxcrypt-4.4.33/include', '-DNDEBUG', '../../test.c', '-c', '-o/build/ldb-2.6.1/bin/.conf_check_59d3a0a5b9 6e327858e281d280fec4ed/testbuild/default/test.c.1.o'] err: In file included from /nix/store/0pyymzxf7n0fzpaqnvwv92ab72v3jq8d-python3-3.10.9/include/python3.10/Python.h:8, from ../../test.c:432: /nix/store/0pyymzxf7n0fzpaqnvwv92ab72v3jq8d-python3-3.10.9/include/python3.10/pyconfig.h:1480: warning: "SIZEOF_LONG" r edefined 1480 | #define SIZEOF_LONG 8 | ../../test.c:154: note: this is the location of the previous definition 154 | #define SIZEOF_LONG 4 | /nix/store/0pyymzxf7n0fzpaqnvwv92ab72v3jq8d-python3-3.10.9/include/python3.10/pyconfig.h:1504: warning: "SIZEOF_SIZE_T" redefined 1504 | #define SIZEOF_SIZE_T 8 | ../../test.c:156: note: this is the location of the previous definition 156 | #define SIZEOF_SIZE_T 4 | /nix/store/0pyymzxf7n0fzpaqnvwv92ab72v3jq8d-python3-3.10.9/include/python3.10/pyconfig.h:1507: warning: "SIZEOF_TIME_T" redefined 1507 | #define SIZEOF_TIME_T 8 | ../../test.c:170: note: this is the location of the previous definition 170 | #define SIZEOF_TIME_T 4 | /nix/store/0pyymzxf7n0fzpaqnvwv92ab72v3jq8d-python3-3.10.9/include/python3.10/pyconfig.h:1513: warning: "SIZEOF_VOID_P" redefined 1513 | #define SIZEOF_VOID_P 8 | ../../test.c:166: note: this is the location of the previous definition 166 | #define SIZEOF_VOID_P 4 | In file included from /nix/store/0pyymzxf7n0fzpaqnvwv92ab72v3jq8d-python3-3.10.9/include/python3.10/Python.h:50: /nix/store/0pyymzxf7n0fzpaqnvwv92ab72v3jq8d-python3-3.10.9/include/python3.10/pyport.h:746:2: error: #error "LONG_BIT definition appears wrong for platform (bad gcc/glibc config?)." 746 | #error "LONG_BIT definition appears wrong for platform (bad gcc/glibc config?)." | ^~~~~ ```
2023-02-20 17:34:25 +00:00
# python-config from build Python gives incorrect values when cross-compiling.
# If python-config is not found, the build falls back to using the sysconfig
# module, which works correctly in all cases.
PYTHON_CONFIG = "/invalid";
stripDebugList = [ "bin" "lib" "modules" ];
passthru.tests.pkg-config = testers.hasPkgConfigModules {
package = finalAttrs.finalPackage;
};
meta = with lib; {
broken = stdenv.isDarwin;
description = "LDAP-like embedded database";
homepage = "https://ldb.samba.org/";
2014-04-30 07:42:02 +00:00
license = licenses.lgpl3Plus;
pkgConfigModules = [ "ldb" ];
2014-04-30 07:42:02 +00:00
platforms = platforms.all;
};
})