samba4: update to 4.9.16, remove AD-DC/Winbind options
* update to 4.9.16 * cherry-pick some musl alpine/openembedded patches * cleanup/remove AD-DC/Winbind options and related code * build the compile_et via samba4/host Signed-off-by: Andy Walsh <andy.walsh44+github@gmail.com>
This commit is contained in:
parent
f39cdba7c0
commit
226e0c6497
4 changed files with 112 additions and 134 deletions
|
@ -1,26 +1,14 @@
|
||||||
config SAMBA4_SERVER_ACL
|
config SAMBA4_SERVER_NETBIOS
|
||||||
bool "ACL support (xattr)"
|
bool "NetBIOS support"
|
||||||
depends on PACKAGE_samba4-server
|
depends on PACKAGE_samba4-server
|
||||||
help
|
help
|
||||||
installs: sharesec
|
installs: nmbd (daemon)
|
||||||
modules: vfs_acl_xattr vfs_acl_tdb vfs_posixacl
|
|
||||||
|
|
||||||
Extended access control list support
|
Announce Samba resources via NetBIOS using the nmbd daemon
|
||||||
default n
|
WSD (Web Services for Devices) replaces the functionality of NetBIOS and is provided by the wsdd2 package (selected by default).
|
||||||
|
Note: As of Windows 10 Fall Creators Update (1709) NetBIOS isn't supported unless the old SMB1 feature is reinstalled (not recommended).
|
||||||
config SAMBA4_SERVER_AD_DC
|
Network shares can be directly accessed via network paths '\\hostname\sharename' and mounted via 'map network drive' without NetBIOS or WSD.
|
||||||
bool "Active Directory Domain Controller support (requires krb5-server) (EXPERIMENTAL)"
|
default y
|
||||||
depends on PACKAGE_samba4-server
|
|
||||||
select PACKAGE_python-crypto
|
|
||||||
help
|
|
||||||
installs: samba (meta-daemon) python-crypto ntlm_auth
|
|
||||||
scripts: samba-tool
|
|
||||||
|
|
||||||
Run as a Active Directory Domain Controller
|
|
||||||
see: https://wiki.samba.org/index.php/Setting_up_Samba_as_an_Active_Directory_Domain_Controller
|
|
||||||
HINT: see section (# Using the Domain Controller as a File Server)
|
|
||||||
NOTE: Extroot is recommend for this setup, as it is not optimized to run completely from RAM/tempfs!
|
|
||||||
default n
|
|
||||||
|
|
||||||
config SAMBA4_SERVER_AVAHI
|
config SAMBA4_SERVER_AVAHI
|
||||||
bool "Avahi support"
|
bool "Avahi support"
|
||||||
|
@ -38,17 +26,7 @@ config SAMBA4_SERVER_VFS
|
||||||
modules: (vfs_btrfs) vfs_fruit vfs_shadow_copy2 vfs_recycle vfs_fake_perms vfs_readonly vfs_cap vfs_offline vfs_crossrename vfs_catia vfs_streams_xattr
|
modules: (vfs_btrfs) vfs_fruit vfs_shadow_copy2 vfs_recycle vfs_fake_perms vfs_readonly vfs_cap vfs_offline vfs_crossrename vfs_catia vfs_streams_xattr
|
||||||
|
|
||||||
Commonly used VFS modules, vfs_btrfs requires kmod-fs-btrfs to be selected separately
|
Commonly used VFS modules, vfs_btrfs requires kmod-fs-btrfs to be selected separately
|
||||||
default y
|
default y
|
||||||
|
|
||||||
config SAMBA4_SERVER_QUOTAS
|
|
||||||
bool "Disk quota support"
|
|
||||||
depends on PACKAGE_samba4-server
|
|
||||||
help
|
|
||||||
installs:
|
|
||||||
modules: vfs_default_quota
|
|
||||||
|
|
||||||
Support for disk quotas using the quotas VFS module (vfs_default_quota)
|
|
||||||
default n
|
|
||||||
|
|
||||||
config SAMBA4_SERVER_VFSX
|
config SAMBA4_SERVER_VFSX
|
||||||
bool "Extended VFS modules"
|
bool "Extended VFS modules"
|
||||||
|
@ -60,25 +38,22 @@ config SAMBA4_SERVER_VFSX
|
||||||
Additional VFS modules that aren't commonly used, vfs_linux_xfs_sgid requires kmod-fs-xfs to be selected separately
|
Additional VFS modules that aren't commonly used, vfs_linux_xfs_sgid requires kmod-fs-xfs to be selected separately
|
||||||
default n
|
default n
|
||||||
|
|
||||||
config SAMBA4_SERVER_NETBIOS
|
config SAMBA4_SERVER_ACL
|
||||||
bool "NetBIOS support"
|
bool "ACL support (xattr)"
|
||||||
depends on PACKAGE_samba4-server
|
depends on PACKAGE_samba4-server
|
||||||
help
|
help
|
||||||
installs: nmbd (daemon)
|
installs: sharesec
|
||||||
|
modules: vfs_acl_xattr vfs_acl_tdb vfs_posixacl
|
||||||
|
|
||||||
Announce Samba resources via NetBIOS using the nmbd daemon
|
Extended access control list support
|
||||||
WSD (Web Services for Devices) replaces the functionality of NetBIOS and is provided by the wsdd2 package (selected by default).
|
default n
|
||||||
Note: As of Windows 10 Fall Creators Update (1709) NetBIOS isn't supported unless the old SMB1 feature is reinstalled (not recommended).
|
|
||||||
Network shares can be directly accessed via network paths '\\hostname\sharename' and mounted via 'map network drive' without NetBIOS or WSD.
|
config SAMBA4_SERVER_QUOTAS
|
||||||
default y
|
bool "Disk quota support"
|
||||||
|
depends on PACKAGE_samba4-server
|
||||||
config SAMBA4_SERVER_WINBIND
|
help
|
||||||
bool "Winbind support"
|
installs:
|
||||||
depends on PACKAGE_samba4-server
|
modules: vfs_default_quota
|
||||||
help
|
|
||||||
installs: winbindd (daemon) wbinfo
|
Support for disk quotas using the quotas VFS module (vfs_default_quota)
|
||||||
|
|
||||||
Support using domain users and groups in local commands, such as chown and chgrp.
|
|
||||||
Display domain users and groups in local command's output, such as ls.
|
|
||||||
see: https://wiki.samba.org/index.php/Configuring_Winbindd_on_a_Samba_AD_DC
|
|
||||||
default n
|
default n
|
||||||
|
|
|
@ -2,8 +2,8 @@
|
||||||
include $(TOPDIR)/rules.mk
|
include $(TOPDIR)/rules.mk
|
||||||
|
|
||||||
PKG_NAME:=samba
|
PKG_NAME:=samba
|
||||||
PKG_VERSION:=4.9.15
|
PKG_VERSION:=4.9.16
|
||||||
PKG_RELEASE:=2
|
PKG_RELEASE:=1
|
||||||
|
|
||||||
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
|
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
|
||||||
PKG_SOURCE_URL:=https://ftp.heanet.ie/mirrors/ftp.samba.org/stable/ \
|
PKG_SOURCE_URL:=https://ftp.heanet.ie/mirrors/ftp.samba.org/stable/ \
|
||||||
|
@ -12,15 +12,15 @@ PKG_SOURCE_URL:=https://ftp.heanet.ie/mirrors/ftp.samba.org/stable/ \
|
||||||
http://www.nic.funet.fi/index/samba/pub/samba/stable/ \
|
http://www.nic.funet.fi/index/samba/pub/samba/stable/ \
|
||||||
http://samba.mirror.bit.nl/samba/ftp/stable/ \
|
http://samba.mirror.bit.nl/samba/ftp/stable/ \
|
||||||
https://download.samba.org/pub/samba/stable/
|
https://download.samba.org/pub/samba/stable/
|
||||||
PKG_HASH:=377102b80b97941bf0d131b828cae8415190e5bdd2928c2e2c954e29f1904496
|
PKG_HASH:=613987fac719ed90f3daad6ca12517329f0754dd51c573f6b3623e6b03cb3916
|
||||||
|
|
||||||
PKG_MAINTAINER:=Andy Walsh <andy.walsh44+github@gmail.com>
|
PKG_MAINTAINER:=Andy Walsh <andy.walsh44+github@gmail.com>
|
||||||
PKG_LICENSE:=GPL-3.0-only
|
PKG_LICENSE:=GPL-3.0-only
|
||||||
PKG_LICENSE_FILES:=COPYING
|
PKG_LICENSE_FILES:=COPYING
|
||||||
PKG_CPE_ID:=cpe:/a:samba:samba
|
PKG_CPE_ID:=cpe:/a:samba:samba
|
||||||
|
|
||||||
# samba4=(asn1_compile) e2fsprogs=(compile_et) nfs-kernel-server=(rpcgen)
|
# samba4=(asn1_compile,compile_et) nfs-kernel-server=(rpcgen)
|
||||||
HOST_BUILD_DEPENDS:=python/host nfs-kernel-server/host e2fsprogs/host
|
HOST_BUILD_DEPENDS:=python/host nfs-kernel-server/host
|
||||||
PKG_BUILD_DEPENDS:=samba4/host
|
PKG_BUILD_DEPENDS:=samba4/host
|
||||||
|
|
||||||
PKG_CONFIG_DEPENDS:= \
|
PKG_CONFIG_DEPENDS:= \
|
||||||
|
@ -30,8 +30,6 @@ PKG_CONFIG_DEPENDS:= \
|
||||||
CONFIG_SAMBA4_SERVER_VFSX \
|
CONFIG_SAMBA4_SERVER_VFSX \
|
||||||
CONFIG_SAMBA4_SERVER_QUOTAS \
|
CONFIG_SAMBA4_SERVER_QUOTAS \
|
||||||
CONFIG_SAMBA4_SERVER_ACL \
|
CONFIG_SAMBA4_SERVER_ACL \
|
||||||
CONFIG_SAMBA4_SERVER_AD_DC \
|
|
||||||
CONFIG_SAMBA4_SERVER_WINBIND \
|
|
||||||
CONFIG_PACKAGE_kmod-fs-btrfs \
|
CONFIG_PACKAGE_kmod-fs-btrfs \
|
||||||
CONFIG_PACKAGE_kmod-fs-xfs
|
CONFIG_PACKAGE_kmod-fs-xfs
|
||||||
|
|
||||||
|
@ -58,13 +56,11 @@ endef
|
||||||
define Package/samba4-libs
|
define Package/samba4-libs
|
||||||
$(call Package/samba4/Default)
|
$(call Package/samba4/Default)
|
||||||
TITLE+= libs
|
TITLE+= libs
|
||||||
DEPENDS:= +zlib +libtirpc +libpopt +libcomerr +libreadline \
|
DEPENDS:= +zlib +libtirpc +libpopt +libcomerr +libreadline +libcap \
|
||||||
+PACKAGE_libcap:libcap +PACKAGE_libpthread:libpthread +PACKAGE_libnettle:libnettle \
|
+PACKAGE_libpthread:libpthread +PACKAGE_libnettle:libnettle +PACKAGE_libgcrypt:libgcrypt +PACKAGE_libpam:libpam +PACKAGE_dbus:dbus +PACKAGE_libavahi-client:libavahi-client \
|
||||||
+PACKAGE_libgcrypt:libgcrypt +PACKAGE_libpam:libpam +PACKAGE_dbus:dbus +PACKAGE_libavahi-client:libavahi-client \
|
|
||||||
+SAMBA4_SERVER_VFS:attr \
|
+SAMBA4_SERVER_VFS:attr \
|
||||||
+SAMBA4_SERVER_ACL:acl +SAMBA4_SERVER_ACL:attr \
|
+SAMBA4_SERVER_ACL:acl +SAMBA4_SERVER_ACL:attr \
|
||||||
+SAMBA4_SERVER_AVAHI:libavahi-client \
|
+SAMBA4_SERVER_AVAHI:libavahi-client
|
||||||
+SAMBA4_SERVER_AD_DC:python-base +SAMBA4_SERVER_AD_DC:python-crypto +SAMBA4_SERVER_AD_DC:libopenssl +SAMBA4_SERVER_AD_DC:libgnutls +SAMBA4_SERVER_AD_DC:libopenldap +SAMBA4_SERVER_AD_DC:jansson +SAMBA4_SERVER_AD_DC:libarchive
|
|
||||||
endef
|
endef
|
||||||
|
|
||||||
define Package/samba4-server
|
define Package/samba4-server
|
||||||
|
@ -80,7 +76,6 @@ define Package/samba4-server/description
|
||||||
HINT: https://fitzcarraldoblog.wordpress.com/2016/10/17/a-correct-method-of-configuring-samba-for-browsing-smb-shares-in-a-home-network/
|
HINT: https://fitzcarraldoblog.wordpress.com/2016/10/17/a-correct-method-of-configuring-samba-for-browsing-smb-shares-in-a-home-network/
|
||||||
endef
|
endef
|
||||||
|
|
||||||
# BUG: We cant add DEPENDS:= +SAMBA4_SERVER_AD_DC:python-crypto, so this only happens here via select!
|
|
||||||
define Package/samba4-server/config
|
define Package/samba4-server/config
|
||||||
select PACKAGE_wsdd2
|
select PACKAGE_wsdd2
|
||||||
source "$(SOURCE)/Config.in"
|
source "$(SOURCE)/Config.in"
|
||||||
|
@ -240,24 +235,13 @@ ifeq ($(CONFIG_SAMBA4_SERVER_ACL),y)
|
||||||
else
|
else
|
||||||
CONFIGURE_ARGS += --without-acl-support
|
CONFIGURE_ARGS += --without-acl-support
|
||||||
endif
|
endif
|
||||||
ifeq ($(CONFIG_SAMBA4_SERVER_AD_DC),y)
|
# features
|
||||||
CONFIGURE_ARGS += --enable-gnutls --with-dnsupdate --with-ads --with-ldap
|
CONFIGURE_ARGS += --without-ad-dc --without-json-audit --without-libarchive --disable-python --nopyc --nopyo \
|
||||||
TARGET_CFLAGS := -I$(STAGING_DIR)/usr/include/python2.7 $(TARGET_CFLAGS)
|
--disable-gnutls --without-dnsupdate --without-ads --without-ldap
|
||||||
else
|
CONFIGURE_VARS += \
|
||||||
CONFIGURE_ARGS += --without-ad-dc --without-json-audit --without-libarchive --disable-python --nopyc --nopyo \
|
python_LDFLAGS="" \
|
||||||
--disable-gnutls --without-dnsupdate --without-ads --without-ldap
|
python_LIBDIR=""
|
||||||
CONFIGURE_VARS += \
|
|
||||||
python_LDFLAGS="" \
|
|
||||||
python_LIBDIR=""
|
|
||||||
endif
|
|
||||||
ifeq ($(CONFIG_SAMBA4_SERVER_WINBIND),y)
|
|
||||||
CONFIGURE_ARGS += --with-winbind
|
|
||||||
else
|
|
||||||
CONFIGURE_ARGS += --without-winbind
|
|
||||||
endif
|
|
||||||
|
|
||||||
SAMBA4_IDMAP_MODULES :=
|
|
||||||
SAMBA4_IDMAP_MODULES_SHARED :=
|
|
||||||
SAMBA4_PDB_MODULES :=pdb_smbpasswd,pdb_tdbsam,
|
SAMBA4_PDB_MODULES :=pdb_smbpasswd,pdb_tdbsam,
|
||||||
SAMBA4_AUTH_MODULES :=auth_builtin,auth_sam,auth_unix,auth_script,
|
SAMBA4_AUTH_MODULES :=auth_builtin,auth_sam,auth_unix,auth_script,
|
||||||
SAMBA4_VFS_MODULES :=vfs_default,
|
SAMBA4_VFS_MODULES :=vfs_default,
|
||||||
|
@ -283,24 +267,9 @@ ifeq ($(CONFIG_SAMBA4_SERVER_ACL),y)
|
||||||
# vfs_zfsacl needs https://github.com/zfsonlinux/zfs/tree/master/include/sys/zfs_acl.h
|
# vfs_zfsacl needs https://github.com/zfsonlinux/zfs/tree/master/include/sys/zfs_acl.h
|
||||||
# vfs_nfs4acl_xattr needs https://github.com/notriddle/libdrpc/blob/master/rpc/xdr.h
|
# vfs_nfs4acl_xattr needs https://github.com/notriddle/libdrpc/blob/master/rpc/xdr.h
|
||||||
endif
|
endif
|
||||||
ifeq ($(CONFIG_SAMBA4_SERVER_AD_DC),y)
|
|
||||||
SAMBA4_PDB_MODULES :=$(SAMBA4_PDB_MODULES)pdb_samba_dsdb,pdb_ldapsam,
|
|
||||||
SAMBA4_AUTH_MODULES :=$(SAMBA4_AUTH_MODULES)auth_samba4,
|
|
||||||
SAMBA4_VFS_MODULES_SHARED :=$(SAMBA4_VFS_MODULES_SHARED)vfs_audit,vfs_extd_audit,vfs_full_audit,
|
|
||||||
endif
|
|
||||||
ifeq ($(CONFIG_SAMBA4_SERVER_WINBIND),y)
|
|
||||||
SAMBA4_IDMAP_MODULES :=$(SAMBA4_IDMAP_MODULES)idmap_tdb,idmap_passdb,idmap_nss,nss_info_template,
|
|
||||||
SAMBA4_IDMAP_MODULES_SHARED :=$(SAMBA4_IDMAP_MODULES_SHARED)idmap_autorid,idmap_rid,idmap_hash,idmap_tdb2,idmap_script,
|
|
||||||
ifeq ($(CONFIG_SAMBA4_SERVER_AD_DC),y)
|
|
||||||
SAMBA4_IDMAP_MODULES_SHARED :=$(SAMBA4_IDMAP_MODULES_SHARED)idmap_ad,idmap_ldap,idmap_rfc2307,
|
|
||||||
# idmap_ad needs --with-ads
|
|
||||||
# idmap_rfc2307 needs ldap headers
|
|
||||||
endif
|
|
||||||
SAMBA4_AUTH_MODULES :=$(SAMBA4_AUTH_MODULES)auth_winbind,
|
|
||||||
endif
|
|
||||||
|
|
||||||
SAMBA4_MODULES :=${SAMBA4_VFS_MODULES}${SAMBA4_AUTH_MODULES}${SAMBA4_PDB_MODULES}${SAMBA4_IDMAP_MODULES}
|
SAMBA4_MODULES :=${SAMBA4_VFS_MODULES}${SAMBA4_AUTH_MODULES}${SAMBA4_PDB_MODULES}
|
||||||
SAMBA4_MODULES_SHARDED :=${SAMBA4_VFS_MODULES_SHARED}${SAMBA4_IDMAP_MODULES_SHARED}
|
SAMBA4_MODULES_SHARDED :=${SAMBA4_VFS_MODULES_SHARED}
|
||||||
|
|
||||||
CONFIGURE_ARGS += \
|
CONFIGURE_ARGS += \
|
||||||
--with-static-modules=$(SAMBA4_MODULES)!DEFAULT,!FORCED \
|
--with-static-modules=$(SAMBA4_MODULES)!DEFAULT,!FORCED \
|
||||||
|
@ -320,12 +289,6 @@ endif
|
||||||
ifeq ($(CONFIG_SAMBA4_SERVER_NETBIOS),y)
|
ifeq ($(CONFIG_SAMBA4_SERVER_NETBIOS),y)
|
||||||
BUILD_TARGETS_SERVER :=$(BUILD_TARGETS_SERVER),nmbd
|
BUILD_TARGETS_SERVER :=$(BUILD_TARGETS_SERVER),nmbd
|
||||||
endif
|
endif
|
||||||
ifeq ($(CONFIG_SAMBA4_SERVER_AD_DC),y)
|
|
||||||
BUILD_TARGETS_SERVER :=$(BUILD_TARGETS_SERVER),samba,nsstest,ntlm_auth,samba4kinit,samba4kgetcred,samba4kpasswd,samba4ktutil
|
|
||||||
endif
|
|
||||||
ifeq ($(CONFIG_SAMBA4_SERVER_WINBIND),y)
|
|
||||||
BUILD_TARGETS_SERVER :=$(BUILD_TARGETS_SERVER),winbindd,wbinfo,winbind_krb5_locator
|
|
||||||
endif
|
|
||||||
# CONFIG_PACKAGE_samba4-client
|
# CONFIG_PACKAGE_samba4-client
|
||||||
BUILD_TARGETS_CLIENT :=client/smbclient,client/cifsdd
|
BUILD_TARGETS_CLIENT :=client/smbclient,client/cifsdd
|
||||||
# CONFIG_PACKAGE_samba4-admin
|
# CONFIG_PACKAGE_samba4-admin
|
||||||
|
@ -336,13 +299,9 @@ BUILD_TARGETS_UTILS :=smbstatus,smbtree,smbget,mvxattr,nmblookup
|
||||||
# lib bundling
|
# lib bundling
|
||||||
# NOTE: bundle + make private, we want to avoid version configuration (build, link) conflicts
|
# NOTE: bundle + make private, we want to avoid version configuration (build, link) conflicts
|
||||||
CONFIGURE_ARGS += --builtin-libraries=talloc,tevent,tevent-util,texpect,tdb,ldb,tdr,cmocka
|
CONFIGURE_ARGS += --builtin-libraries=talloc,tevent,tevent-util,texpect,tdb,ldb,tdr,cmocka
|
||||||
HOST_CONFIGURE_ARGS += --builtin-libraries=replace --nonshared-binary=asn1_compile
|
HOST_CONFIGURE_ARGS += --builtin-libraries=replace --nonshared-binary=asn1_compile,compile_et
|
||||||
|
#CONFIGURE_ARGS += --bundled-libraries=talloc,tevent,tevent-util,texpect,tdb,ldb,tdr,cmocka,replace,!asn1_compile,!compile_et,!popt
|
||||||
ifeq ($(CONFIG_SAMBA4_SERVER_AD_DC),y)
|
|
||||||
CONFIGURE_ARGS += --bundled-libraries=talloc,tevent,tevent-util,texpect,tdb,ldb,tdr,cmocka,replace,pytalloc-util,pyldb-util,roken,wind,hx509,asn1,heimbase,hcrypto,krb5,gssapi,heimntlm,hdb,kdc,NONE
|
|
||||||
else
|
|
||||||
CONFIGURE_ARGS += --bundled-libraries=talloc,tevent,tevent-util,texpect,tdb,ldb,tdr,cmocka,replace,roken,wind,hx509,asn1,heimbase,hcrypto,krb5,gssapi,heimntlm,hdb,kdc,NONE
|
CONFIGURE_ARGS += --bundled-libraries=talloc,tevent,tevent-util,texpect,tdb,ldb,tdr,cmocka,replace,roken,wind,hx509,asn1,heimbase,hcrypto,krb5,gssapi,heimntlm,hdb,kdc,NONE
|
||||||
endif
|
|
||||||
# BUG: --private-libraries, Does not work for System possible libs, will not get "samba4" suffix!
|
# BUG: --private-libraries, Does not work for System possible libs, will not get "samba4" suffix!
|
||||||
CONFIGURE_ARGS += --private-libraries=talloc,tevent,tevent-util,texpect,tdb,ldb,tdr,cmocka,replace
|
CONFIGURE_ARGS += --private-libraries=talloc,tevent,tevent-util,texpect,tdb,ldb,tdr,cmocka,replace
|
||||||
# CONFIGURE_ARGS += --disable-symbol-versions
|
# CONFIGURE_ARGS += --disable-symbol-versions
|
||||||
|
@ -350,23 +309,22 @@ CONFIGURE_ARGS += --private-libraries=talloc,tevent,tevent-util,texpect,tdb,ldb,
|
||||||
define Host/Compile
|
define Host/Compile
|
||||||
(cd $(HOST_BUILD_DIR); \
|
(cd $(HOST_BUILD_DIR); \
|
||||||
./buildtools/bin/waf build \
|
./buildtools/bin/waf build \
|
||||||
--targets=asn1_compile \
|
--targets=asn1_compile,compile_et \
|
||||||
)
|
)
|
||||||
endef
|
endef
|
||||||
|
|
||||||
define Host/Install
|
define Host/Install
|
||||||
$(INSTALL_DIR) $(STAGING_DIR_HOSTPKG)/bin/
|
$(INSTALL_DIR) $(STAGING_DIR_HOSTPKG)/bin/
|
||||||
$(INSTALL_BIN) $(HOST_BUILD_DIR)/bin/asn1_compile $(STAGING_DIR_HOSTPKG)/bin/
|
$(INSTALL_BIN) $(HOST_BUILD_DIR)/bin/asn1_compile $(STAGING_DIR_HOSTPKG)/bin/
|
||||||
|
$(INSTALL_BIN) $(HOST_BUILD_DIR)/bin/compile_et $(STAGING_DIR_HOSTPKG)/bin/
|
||||||
endef
|
endef
|
||||||
|
|
||||||
define Build/Prepare
|
define Build/Prepare
|
||||||
$(Build/Prepare/Default)
|
$(Build/Prepare/Default)
|
||||||
ifeq ($(CONFIG_SAMBA4_SERVER_AD_DC),)
|
|
||||||
# un-bundle dnspython
|
# un-bundle dnspython
|
||||||
$(SED) '/"dns.resolver":/d' $(PKG_BUILD_DIR)/third_party/wscript
|
$(SED) '/"dns.resolver":/d' $(PKG_BUILD_DIR)/third_party/wscript
|
||||||
# unbundle iso8601
|
# unbundle iso8601
|
||||||
$(SED) '/"iso8601":/d' $(PKG_BUILD_DIR)/third_party/wscript
|
$(SED) '/"iso8601":/d' $(PKG_BUILD_DIR)/third_party/wscript
|
||||||
endif
|
|
||||||
endef
|
endef
|
||||||
|
|
||||||
define Build/Configure
|
define Build/Configure
|
||||||
|
@ -379,7 +337,7 @@ define Build/Configure
|
||||||
$(call Build/Configure/Default)
|
$(call Build/Configure/Default)
|
||||||
endef
|
endef
|
||||||
|
|
||||||
# BUG: We need to use "waf install --targets=" otherwise a "make install" or "waf install" will retrigger a full recompile of all possible targets!
|
# Note: We need to build via "waf install --targets=". Why do we also need to add the modules as targets here?
|
||||||
define Build/Compile
|
define Build/Compile
|
||||||
(cd $(PKG_BUILD_DIR); \
|
(cd $(PKG_BUILD_DIR); \
|
||||||
./buildtools/bin/waf install \
|
./buildtools/bin/waf install \
|
||||||
|
@ -398,20 +356,13 @@ define Package/samba4-libs/install
|
||||||
$(CP) $(PKG_INSTALL_DIR)/usr/lib/*.so* $(1)/usr/lib/
|
$(CP) $(PKG_INSTALL_DIR)/usr/lib/*.so* $(1)/usr/lib/
|
||||||
$(CP) $(PKG_INSTALL_DIR)/usr/lib/samba/*.so* $(1)/usr/lib/
|
$(CP) $(PKG_INSTALL_DIR)/usr/lib/samba/*.so* $(1)/usr/lib/
|
||||||
|
|
||||||
$(INSTALL_DIR) $(1)/usr/lib/samba/vfs $(1)/usr/lib/samba/idmap $(1)/usr/lib/samba/ldb $(1)/usr/lib/samba/krb5
|
$(INSTALL_DIR) $(1)/usr/lib/samba/vfs $(1)/usr/lib/samba/ldb $(1)/usr/lib/samba/krb5
|
||||||
if [ -d $(PKG_INSTALL_DIR)/usr/lib/samba/idmap ]; then \
|
|
||||||
$(CP) $(PKG_INSTALL_DIR)/usr/lib/samba/idmap $(1)/usr/lib/samba/; \
|
|
||||||
fi
|
|
||||||
if [ -d $(PKG_INSTALL_DIR)/usr/lib/samba/vfs ]; then \
|
if [ -d $(PKG_INSTALL_DIR)/usr/lib/samba/vfs ]; then \
|
||||||
$(CP) $(PKG_INSTALL_DIR)/usr/lib/samba/vfs $(1)/usr/lib/samba/; \
|
$(CP) $(PKG_INSTALL_DIR)/usr/lib/samba/vfs $(1)/usr/lib/samba/; \
|
||||||
fi
|
fi
|
||||||
if [ -d $(PKG_INSTALL_DIR)/usr/lib/samba/krb5 ]; then \
|
if [ -d $(PKG_INSTALL_DIR)/usr/lib/samba/krb5 ]; then \
|
||||||
$(CP) $(PKG_INSTALL_DIR)/usr/lib/samba/krb5 $(1)/usr/lib/samba/; \
|
$(CP) $(PKG_INSTALL_DIR)/usr/lib/samba/krb5 $(1)/usr/lib/samba/; \
|
||||||
fi
|
fi
|
||||||
ifeq ($(CONFIG_SAMBA4_SERVER_AD_DC),y)
|
|
||||||
$(INSTALL_DIR) $(1)/usr/lib/python2.7
|
|
||||||
$(CP) $(PKG_INSTALL_DIR)/usr/lib/python2.7 $(1)/usr/lib/
|
|
||||||
endif
|
|
||||||
endef
|
endef
|
||||||
|
|
||||||
define Package/samba4-client/install
|
define Package/samba4-client/install
|
||||||
|
@ -436,19 +387,9 @@ define Package/samba4-server/install
|
||||||
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/{smbpasswd,pdbedit,testparm} $(1)/usr/bin/
|
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/{smbpasswd,pdbedit,testparm} $(1)/usr/bin/
|
||||||
$(INSTALL_DIR) $(1)/usr/sbin
|
$(INSTALL_DIR) $(1)/usr/sbin
|
||||||
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/smbd $(1)/usr/sbin/
|
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/smbd $(1)/usr/sbin/
|
||||||
ifeq ($(CONFIG_SAMBA4_SERVER_AD_DC),y)
|
|
||||||
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/{samba-tool,ntlm_auth,smbtar} $(1)/usr/bin/
|
|
||||||
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/{samba,samba-gpupdate,samba_dnsupdate,samba_kcc,samba_spnupdate,samba_upgradedns} $(1)/usr/sbin/
|
|
||||||
# waf does not install those?
|
|
||||||
$(INSTALL_BIN) $(PKG_BUILD_DIR)/bin/{samba4kinit,samba4kgetcred,samba4kpasswd,samba4ktutil} $(1)/usr/bin/
|
|
||||||
endif
|
|
||||||
ifeq ($(CONFIG_SAMBA4_SERVER_NETBIOS),y)
|
ifeq ($(CONFIG_SAMBA4_SERVER_NETBIOS),y)
|
||||||
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/nmbd $(1)/usr/sbin/
|
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/nmbd $(1)/usr/sbin/
|
||||||
endif
|
endif
|
||||||
ifeq ($(CONFIG_SAMBA4_SERVER_WINBIND),y)
|
|
||||||
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/wbinfo $(1)/usr/bin/
|
|
||||||
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/winbindd $(1)/usr/sbin/
|
|
||||||
endif
|
|
||||||
ifeq ($(CONFIG_SAMBA4_SERVER_ACL),y)
|
ifeq ($(CONFIG_SAMBA4_SERVER_ACL),y)
|
||||||
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/sharesec $(1)/usr/bin/
|
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/sharesec $(1)/usr/bin/
|
||||||
endif
|
endif
|
||||||
|
@ -465,10 +406,6 @@ define Package/samba4-server/conffiles
|
||||||
/etc/samba/smbpasswd
|
/etc/samba/smbpasswd
|
||||||
/etc/samba/secrets.tdb
|
/etc/samba/secrets.tdb
|
||||||
/etc/samba/passdb.tdb
|
/etc/samba/passdb.tdb
|
||||||
/etc/samba/idmap.ldb
|
|
||||||
/etc/samba/lmhosts
|
|
||||||
/etc/nsswitch.conf
|
|
||||||
/etc/krb5.conf
|
|
||||||
endef
|
endef
|
||||||
|
|
||||||
$(eval $(call HostBuild))
|
$(eval $(call HostBuild))
|
||||||
|
|
35
net/samba4/patches/003-musl_uintptr.patch
Normal file
35
net/samba4/patches/003-musl_uintptr.patch
Normal file
|
@ -0,0 +1,35 @@
|
||||||
|
commit f81e5b71ce78f33250347914dacc75c8463bf102
|
||||||
|
Author: Breno Leitao <breno.leitao@gmail.com>
|
||||||
|
Date: Wed Mar 29 15:22:38 2017 -0300
|
||||||
|
|
||||||
|
include: Check for previous declaration of uintptr_t
|
||||||
|
|
||||||
|
Adding a extra check before declaring uintptr_t. Currently musl uses
|
||||||
|
macro __DEFINED_uintptr_t once it defines uintptr_t type. Checking
|
||||||
|
this macro before defining it, and, defining it when uintptr_t is
|
||||||
|
defined.
|
||||||
|
|
||||||
|
Signed-off-by: Breno Leitao <breno.leitao@gmail.com>
|
||||||
|
|
||||||
|
diff --git a/third_party/cmocka/cmocka.h b/third_party/cmocka/cmocka.h
|
||||||
|
index 303d0ae..a2bfc40 100644
|
||||||
|
--- a/third_party/cmocka/cmocka.h
|
||||||
|
+++ b/third_party/cmocka/cmocka.h
|
||||||
|
@@ -110,7 +110,7 @@
|
||||||
|
((LargestIntegralType)(value))
|
||||||
|
|
||||||
|
/* Smallest integral type capable of holding a pointer. */
|
||||||
|
-#if !defined(_UINTPTR_T) && !defined(_UINTPTR_T_DEFINED)
|
||||||
|
+#if !defined(_UINTPTR_T) && !defined(_UINTPTR_T_DEFINED) && !defined(__DEFINED_uintptr_t)
|
||||||
|
# if defined(_WIN32)
|
||||||
|
/* WIN32 is an ILP32 platform */
|
||||||
|
typedef unsigned int uintptr_t;
|
||||||
|
@@ -136,6 +136,8 @@
|
||||||
|
|
||||||
|
# define _UINTPTR_T
|
||||||
|
# define _UINTPTR_T_DEFINED
|
||||||
|
+# define __DEFINED_uintptr_t
|
||||||
|
+
|
||||||
|
#endif /* !defined(_UINTPTR_T) || !defined(_UINTPTR_T_DEFINED) */
|
||||||
|
|
||||||
|
/* Perform an unsigned cast to uintptr_t. */
|
|
@ -0,0 +1,31 @@
|
||||||
|
From d90534469c5c43bf2a97e5698a5ddb4b7471f92a Mon Sep 17 00:00:00 2001
|
||||||
|
From: Changqing Li <changqing.li@windriver.com>
|
||||||
|
Date: Tue, 24 Jul 2018 10:53:16 +0800
|
||||||
|
Subject: [PATCH] libldb: fix musl libc unkoown type error
|
||||||
|
|
||||||
|
tevent.h:1440:8: error: unknown type name 'pid_t'; did you mean 'div_t'?
|
||||||
|
pid_t *pid,
|
||||||
|
^~~~~
|
||||||
|
div_t
|
||||||
|
|
||||||
|
Signed-off-by: Changqing Li <changqing.li@windriver.com>
|
||||||
|
---
|
||||||
|
lib/tevent/tevent.h | 2 ++
|
||||||
|
1 file changed, 2 insertions(+)
|
||||||
|
|
||||||
|
diff --git a/lib/tevent/tevent.h b/lib/tevent/tevent.h
|
||||||
|
index aa6fe0d..2572696 100644
|
||||||
|
--- a/lib/tevent/tevent.h
|
||||||
|
+++ b/lib/tevent/tevent.h
|
||||||
|
@@ -32,6 +32,8 @@
|
||||||
|
#include <talloc.h>
|
||||||
|
#include <sys/time.h>
|
||||||
|
#include <stdbool.h>
|
||||||
|
+#include <sys/stat.h>
|
||||||
|
+#include <sys/types.h>
|
||||||
|
|
||||||
|
struct tevent_context;
|
||||||
|
struct tevent_ops;
|
||||||
|
--
|
||||||
|
2.7.4
|
||||||
|
|
Loading…
Reference in a new issue