samba4: decouple quotas from vfs option

Signed-off-by: Javier Marcet <javier@marcet.info>
This commit is contained in:
Javier Marcet 2023-04-23 15:25:36 +02:00 committed by Rosen Penev
parent eb7275402e
commit ab94144b87
2 changed files with 19 additions and 5 deletions

View File

@ -31,12 +31,22 @@ config SAMBA4_SERVER_AVAHI
Announce Samba resources via DNS/DNS-SD using the Avahi daemon, for Linux/Mac clients. Announce Samba resources via DNS/DNS-SD using the Avahi daemon, for Linux/Mac clients.
default y default y
config SAMBA4_SERVER_QUOTAS
bool "Quotas support"
depends on PACKAGE_samba4-server
select SAMBA4_SERVER_VFS
help
Enable VFS Quotas
installs:
modules: vfs_default_quota
default n
config SAMBA4_SERVER_VFS config SAMBA4_SERVER_VFS
bool "Common VFS modules" bool "Common VFS modules"
depends on PACKAGE_samba4-server depends on PACKAGE_samba4-server
help help
installs: installs:
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 vfs_default_quota 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

View File

@ -28,6 +28,7 @@ PKG_BUILD_DEPENDS:=samba4/host libtasn1/host perl/host
PKG_CONFIG_DEPENDS:= \ PKG_CONFIG_DEPENDS:= \
CONFIG_SAMBA4_SERVER_NETBIOS \ CONFIG_SAMBA4_SERVER_NETBIOS \
CONFIG_SAMBA4_SERVER_AVAHI \ CONFIG_SAMBA4_SERVER_AVAHI \
CONFIG_SAMBA4_SERVER_QUOTAS \
CONFIG_SAMBA4_SERVER_VFS \ CONFIG_SAMBA4_SERVER_VFS \
CONFIG_SAMBA4_SERVER_VFSX \ CONFIG_SAMBA4_SERVER_VFSX \
CONFIG_SAMBA4_SERVER_AD_DC \ CONFIG_SAMBA4_SERVER_AD_DC \
@ -122,7 +123,7 @@ define Package/samba4-utils
endef endef
define Package/samba4-utils/description define Package/samba4-utils/description
installs: smbstatus smbtree mvxattr smbtar smbcquotas installs: smbstatus smbtree mvxattr smbtar (smbcquotas)
Utilities collection Utilities collection
endef endef
@ -231,7 +232,7 @@ CONFIGURE_ARGS += \
--with-privatedir=/etc/samba --with-privatedir=/etc/samba
# features # features
ifeq ($(CONFIG_SAMBA4_SERVER_VFS),y) ifeq ($(CONFIG_SAMBA4_SERVER_QUOTAS),y)
CONFIGURE_ARGS += --with-quotas CONFIGURE_ARGS += --with-quotas
else else
CONFIGURE_ARGS += --without-quotas CONFIGURE_ARGS += --without-quotas
@ -258,7 +259,10 @@ ifdef CONFIG_KERNEL_IO_URING
SAMBA4_VFS_MODULES_SHARED :=$(SAMBA4_VFS_MODULES_SHARED)vfs_io_uring, SAMBA4_VFS_MODULES_SHARED :=$(SAMBA4_VFS_MODULES_SHARED)vfs_io_uring,
endif endif
ifeq ($(CONFIG_SAMBA4_SERVER_VFS),y) ifeq ($(CONFIG_SAMBA4_SERVER_VFS),y)
SAMBA4_VFS_MODULES_SHARED :=$(SAMBA4_VFS_MODULES_SHARED)vfs_fruit,vfs_shadow_copy2,vfs_recycle,vfs_fake_perms,vfs_readonly,vfs_cap,vfs_offline,vfs_crossrename,vfs_catia,vfs_streams_xattr,vfs_xattr_tdb,vfs_default_quota,vfs_widelinks, SAMBA4_VFS_MODULES_SHARED :=$(SAMBA4_VFS_MODULES_SHARED)vfs_fruit,vfs_shadow_copy2,vfs_recycle,vfs_fake_perms,vfs_readonly,vfs_cap,vfs_offline,vfs_crossrename,vfs_catia,vfs_streams_xattr,vfs_xattr_tdb,vfs_widelinks,
ifeq ($(CONFIG_SAMBA4_SERVER_QUOTAS),y)
SAMBA4_VFS_MODULES_SHARED :=$(SAMBA4_VFS_MODULES_SHARED)vfs_default_quota,
endif
ifdef CONFIG_PACKAGE_kmod-fs-btrfs ifdef CONFIG_PACKAGE_kmod-fs-btrfs
SAMBA4_VFS_MODULES_SHARED :=$(SAMBA4_VFS_MODULES_SHARED)vfs_btrfs, SAMBA4_VFS_MODULES_SHARED :=$(SAMBA4_VFS_MODULES_SHARED)vfs_btrfs,
endif endif
@ -407,7 +411,7 @@ endef
define Package/samba4-utils/install define Package/samba4-utils/install
$(INSTALL_DIR) $(1)/usr/bin $(INSTALL_DIR) $(1)/usr/bin
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/{smbstatus,smbtree,mvxattr,smbtar} $(1)/usr/bin/ $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/{smbstatus,smbtree,mvxattr,smbtar} $(1)/usr/bin/
ifeq ($(CONFIG_SAMBA4_SERVER_VFS),y) ifeq ($(CONFIG_SAMBA4_SERVER_QUOTAS),y)
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/smbcquotas $(1)/usr/bin/ $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/smbcquotas $(1)/usr/bin/
endif endif
endef endef