forked from mirrors/nixpkgs
samba4Full: fix build
The pkgconfig requirements for glusterfs-api were not satisfied without uuid, resulting in Waf not setting the correct API version for glusterfs during the build and consequently incompatible function calls in samba. Co-authored-by: Franz Pletz <fpletz@fnordicwalking.de>
This commit is contained in:
parent
761b3a0640
commit
9378ff1cb5
|
@ -3,7 +3,7 @@
|
|||
, docbook_xml_dtd_42, readline
|
||||
, popt, iniparser, libbsd, libarchive, libiconv, gettext
|
||||
, krb5Full, zlib, openldap, cups, pam, avahi, acl, libaio, fam, libceph, glusterfs
|
||||
, gnutls, ncurses, libunwind, systemd, jansson, lmdb, gpgme
|
||||
, gnutls, ncurses, libunwind, systemd, jansson, lmdb, gpgme, libuuid
|
||||
|
||||
, enableLDAP ? false
|
||||
, enablePrinting ? false
|
||||
|
@ -29,28 +29,27 @@ stdenv.mkDerivation rec {
|
|||
|
||||
outputs = [ "out" "dev" "man" ];
|
||||
|
||||
patches =
|
||||
[ ./4.x-no-persistent-install.patch
|
||||
./patch-source3__libads__kerberos_keytab.c.patch
|
||||
./4.x-no-persistent-install-dynconfig.patch
|
||||
./4.x-fix-makeflags-parsing.patch
|
||||
];
|
||||
patches = [
|
||||
./4.x-no-persistent-install.patch
|
||||
./patch-source3__libads__kerberos_keytab.c.patch
|
||||
./4.x-no-persistent-install-dynconfig.patch
|
||||
./4.x-fix-makeflags-parsing.patch
|
||||
];
|
||||
|
||||
nativeBuildInputs = optionals stdenv.isDarwin [ rpcgen fixDarwinDylibNames ];
|
||||
|
||||
buildInputs =
|
||||
[ python pkgconfig perl libxslt docbook_xsl docbook_xml_dtd_42 /*
|
||||
docbook_xml_dtd_45 */ readline popt iniparser jansson
|
||||
libbsd libarchive zlib fam libiconv gettext libunwind krb5Full
|
||||
]
|
||||
++ optionals stdenv.isLinux [ libaio systemd ]
|
||||
buildInputs = [
|
||||
python pkgconfig perl libxslt docbook_xsl docbook_xml_dtd_42 /*
|
||||
docbook_xml_dtd_45 */ readline popt iniparser jansson
|
||||
libbsd libarchive zlib fam libiconv gettext libunwind krb5Full
|
||||
] ++ optionals stdenv.isLinux [ libaio systemd ]
|
||||
++ optional enableLDAP openldap
|
||||
++ optional (enablePrinting && stdenv.isLinux) cups
|
||||
++ optional enableMDNS avahi
|
||||
++ optionals enableDomainController [ gnutls gpgme lmdb ]
|
||||
++ optional enableRegedit ncurses
|
||||
++ optional (enableCephFS && stdenv.isLinux) libceph
|
||||
++ optional (enableGlusterFS && stdenv.isLinux) glusterfs
|
||||
++ optionals (enableGlusterFS && stdenv.isLinux) [ glusterfs libuuid ]
|
||||
++ optional enableAcl acl
|
||||
++ optional enablePam pam;
|
||||
|
||||
|
@ -67,25 +66,24 @@ stdenv.mkDerivation rec {
|
|||
--replace "bld.SAMBA_BINARY('resolvconftest'" "True or bld.SAMBA_BINARY('resolvconftest'"
|
||||
'';
|
||||
|
||||
configureFlags =
|
||||
[ "--with-static-modules=NONE"
|
||||
"--with-shared-modules=ALL"
|
||||
"--with-system-mitkrb5"
|
||||
"--with-system-mitkdc" krb5Full
|
||||
"--enable-fhs"
|
||||
"--sysconfdir=/etc"
|
||||
"--localstatedir=/var"
|
||||
"--disable-rpath"
|
||||
]
|
||||
++ [(if enableDomainController
|
||||
configureFlags = [
|
||||
"--with-static-modules=NONE"
|
||||
"--with-shared-modules=ALL"
|
||||
"--with-system-mitkrb5"
|
||||
"--with-system-mitkdc" krb5Full
|
||||
"--enable-fhs"
|
||||
"--sysconfdir=/etc"
|
||||
"--localstatedir=/var"
|
||||
"--disable-rpath"
|
||||
] ++ singleton (if enableDomainController
|
||||
then "--with-experimental-mit-ad-dc"
|
||||
else "--without-ad-dc")]
|
||||
else "--without-ad-dc")
|
||||
++ optionals (!enableLDAP) [ "--without-ldap" "--without-ads" ]
|
||||
++ optional (!enableAcl) "--without-acl-support"
|
||||
++ optional (!enablePam) "--without-pam";
|
||||
|
||||
preBuild = ''
|
||||
export MAKEFLAGS="-j $NIX_BUILD_CORES"
|
||||
export MAKEFLAGS="-j $NIX_BUILD_CORES"
|
||||
'';
|
||||
|
||||
# Some libraries don't have /lib/samba in RPATH but need it.
|
||||
|
@ -105,7 +103,7 @@ stdenv.mkDerivation rec {
|
|||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = https://www.samba.org/;
|
||||
homepage = "https://www.samba.org";
|
||||
description = "The standard Windows interoperability suite of programs for Linux and Unix";
|
||||
license = licenses.gpl3;
|
||||
platforms = platforms.unix;
|
||||
|
|
Loading…
Reference in a new issue