aboutsummaryrefslogtreecommitdiff
path: root/net/samba413/Makefile
diff options
context:
space:
mode:
Diffstat (limited to 'net/samba413/Makefile')
-rw-r--r--net/samba413/Makefile697
1 files changed, 0 insertions, 697 deletions
diff --git a/net/samba413/Makefile b/net/samba413/Makefile
deleted file mode 100644
index 67bc8dfaa281..000000000000
--- a/net/samba413/Makefile
+++ /dev/null
@@ -1,697 +0,0 @@
-# Created by: timur@FreeBSD.org
-
-PORTNAME= ${SAMBA4_BASENAME}413
-PORTVERSION= ${SAMBA4_VERSION}
-PORTREVISION= 1
-CATEGORIES?= net
-MASTER_SITES= SAMBA/samba/stable SAMBA/samba/rc
-DISTNAME= ${SAMBA4_DISTNAME}
-
-MAINTAINER= timur@FreeBSD.org
-COMMENT= Free SMB/CIFS and AD/DC server and client for Unix
-
-LICENSE= GPLv3+
-LICENSE_FILE= ${WRKSRC}/COPYING
-
-IGNORE_NONTHREAD_PYTHON= needs port lang/python${PYTHON_SUFFIX} to be build with THREADS support
-CONFLICTS_INSTALL?= samba4-4.0.* samba4[1-9]-4.* samba41[0-24-9]-4.1* p5-Parse-Pidl-4.*
-
-USES= cpe
-
-EXTRA_PATCHES+= ${PATCHDIR}/0001-Zfs-provision-1.patch:-p1
-
-SAMBA4_BASENAME= samba
-SAMBA4_PORTNAME= ${SAMBA4_BASENAME}4
-SAMBA4_VERSION= 4.13.8
-SAMBA4_DISTNAME= ${SAMBA4_BASENAME}-${SAMBA4_VERSION:S|.p|pre|:S|.r|rc|:S|.t|tp|:S|.a|alpha|}
-
-WRKSRC?= ${WRKDIR}/${DISTNAME}
-PLIST?= ${PKGDIR}/pkg-plist
-
-CPE_VENDOR= samba
-CPE_PRODUCT= samba
-# Directories
-VARDIR= ${DESTDIR}/var
-SAMBA4_RUNDIR= ${VARDIR}/run/${SAMBA4_PORTNAME}
-SAMBA4_LOGDIR= ${VARDIR}/log/${SAMBA4_PORTNAME}
-SAMBA4_LOCKDIR= ${VARDIR}/db/${SAMBA4_PORTNAME}
-SAMBA4_BINDDNSDIR= ${SAMBA4_LOCKDIR}/bind-dns
-SAMBA4_PRIVATEDIR= ${SAMBA4_LOCKDIR}/private
-SAMBA4_PAMDIR= ${PREFIX}/lib
-SAMBA4_LIBDIR= ${PREFIX}/lib/${SAMBA4_PORTNAME}
-SAMBA4_INCLUDEDIR= ${PREFIX}/include/${SAMBA4_PORTNAME}
-SAMBA4_CONFDIR= ${PREFIX}/etc
-SAMBA4_CONFIG= smb4.conf
-SAMBA4_MODULES_CLASS= auth bind9 gensec gpext idmap ldb nss_info \
- pdb perfcount process_model service vfs
-
-CONFIGURE_ARGS+= --mandir="${MANPREFIX}/man" \
- --sysconfdir="${SAMBA4_CONFDIR}" \
- --includedir="${SAMBA4_INCLUDEDIR}" \
- --datadir="${DATADIR}" \
- --libdir="${SAMBA4_LIBDIR}" \
- --with-privatelibdir="${SAMBA4_LIBDIR}/private" \
- --with-pammodulesdir="${SAMBA4_PAMDIR}" \
- --with-modulesdir="${SAMBA4_MODULEDIR}" \
- --with-pkgconfigdir="${PKGCONFIGDIR}" \
- --localstatedir="${VARDIR}" \
- --with-piddir="${SAMBA4_RUNDIR}" \
- --with-sockets-dir="${SAMBA4_RUNDIR}" \
- --with-privileged-socket-dir="${SAMBA4_RUNDIR}" \
- --with-lockdir="${SAMBA4_LOCKDIR}" \
- --with-statedir="${SAMBA4_LOCKDIR}" \
- --with-cachedir="${SAMBA4_LOCKDIR}" \
- --with-bind-dns-dir=${SAMBA4_BINDDNSDIR} \
- --with-privatedir="${SAMBA4_PRIVATEDIR}" \
- --with-logfilebase="${SAMBA4_LOGDIR}"
-# XXX: Flags
-CONFIGURE_ENV+= PTHREAD_LDFLAGS="-lpthread"
-
-USES+= compiler:c++11-lang iconv localbase:ldflags \
- perl5 pkgconfig shebangfix ssl waf gettext-runtime
-USE_PERL5= build
-USE_LDCONFIG= ${SAMBA4_LIBDIR}
-WAF_CMD= buildtools/bin/waf
-CONFIGURE_LOG= bin/config.log
-
-PKGCONFIGDIR?= ${PREFIX}/libdata/pkgconfig
-PKGCONFIGDIR_REL?= ${PKGCONFIGDIR:S,^${PREFIX}/,,}
-PLIST_SUB+= PKGCONFIGDIR=${PKGCONFIGDIR_REL}
-SUB_LIST+= PKGCONFIGDIR=${PKGCONFIGDIR_REL}
-##############################################################################
-OPTIONS_SUB= yes
-
-OPTIONS_DEFINE= AD_DC ADS CLUSTER CUPS DOCS FAM GPGME \
- LDAP MANDOC NTVFS PROFILE PYTHON3 QUOTAS \
- SPOTLIGHT SYSLOG UTMP
-#OPTIONS_DEFINE+= DEVELOPER MEMORY_DEBUG
-
-OPTIONS_GROUP= VFS
-OPTIONS_GROUP_VFS= FRUIT GLUSTERFS
-
-OPTIONS_SINGLE= GSSAPI ZEROCONF
-
-OPTIONS_SINGLE_GSSAPI= GSSAPI_BUILTIN GSSAPI_MIT
-#GSSAPI_HEIMDAL
-OPTIONS_SINGLE_ZEROCONF= ZEROCONF_NONE AVAHI MDNSRESPONDER
-
-OPTIONS_RADIO= DNS
-OPTIONS_RADIO_DNS= NSUPDATE BIND911 BIND916
-# Make those default options
-OPTIONS_DEFAULT= AD_DC ADS DOCS FAM LDAP \
- PROFILE PYTHON3 QUOTAS SYSLOG UTMP \
- FRUIT GSSAPI_BUILTIN AVAHI
-##############################################################################
-ADS_DESC= Active Directory client(implies LDAP)
-AD_DC_DESC= Active Directory Domain Controller(implies PYTHON3)
-CLUSTER_DESC= Clustering support
-DEVELOPER_DESC= With developer framework(implies NTVFS)
-FAM_DESC= File Alteration Monitor
-GPGME_DESC= GpgME support
-LDAP_DESC= LDAP client
-LIBZFS_DESC= LibZFS
-SPOTLIGHT_DESC= Spotlight server-side search support
-MANDOC_DESC= Build manpages from DOCBOOK templates
-MEMORY_DEBUG_DESC= Debug memory allocator
-NTVFS_DESC= Build *DEPRECATED* NTVFS file server
-PICKY_DEVELOPER_DESC= Treat compiler warnings as errors(implies DEVELOPER)
-PROFILE_DESC= Profiling data
-QUOTAS_DESC= Disk quota support
-UTMP_DESC= UTMP accounting
-
-VFS_DESC= VFS modules
-GLUSTERFS_DESC= GlusterFS support
-FRUIT_DESC= MacOSX and TimeMachine support
-
-GSSAPI_BUILTIN_DESC= GSSAPI support via bundled Heimdal
-
-ZEROCONF_DESC= Zero configuration networking
-ZEROCONF_NONE_DESC= Zeroconf support is absent
-
-DNS_DESC= DNS frontend
-BIND911_DESC= Use Bind 9.11 as AD DC DNS server frontend
-BIND916_DESC= Use Bind 9.16 as AD DC DNS server frontend
-NSUPDATE_DESC= Use samba NSUPDATE utility for AD DC
-##############################################################################
-# XXX: Unconditional dependencies which can't be switched off(if present in
-# the system)
-
-# Iconv(picked up unconditionaly)
-LIB_DEPENDS+= libiconv.so:converters/libiconv
-# unwind
-LIB_DEPENDS+= libunwind.so:devel/libunwind
-# Readline(sponsored by Python)
-# XXX: USES=readline pollutes CPPFLAGS, so we explicitly put dependency
-LIB_DEPENDS+= libreadline.so:devel/readline
-# popt
-LIB_DEPENDS+= libpopt.so:devel/popt
-# inotify
-LIB_DEPENDS+= libinotify.so:devel/libinotify
-# GNUTLS
-LIB_DEPENDS+= libgnutls.so:security/gnutls
-LIB_DEPENDS+= libgcrypt.so:security/libgcrypt
-# NFSv4 ACL glue
-LIB_DEPENDS+= libsunacl.so:sysutils/libsunacl
-# Jansson
-BUILD_DEPENDS+= jansson>=2.10:devel/jansson
-RUN_DEPENDS+= jansson>=2.10:devel/jansson
-# tasn1
-BUILD_DEPENDS+= libtasn1>=3.8:security/libtasn1
-RUN_DEPENDS+= libtasn1>=3.8:security/libtasn1
-# External Samba dependencies
-# Needed for IDL compiler
-BUILD_DEPENDS+= p5-Parse-Yapp>=0:devel/p5-Parse-Yapp
-# Libarchive
-SAMBA4_BUNDLED_LIBS+= !libarchive
-BUILD_DEPENDS+= libarchive>=3.1.2:archivers/libarchive
-RUN_DEPENDS+= libarchive>=3.1.2:archivers/libarchive
-
-### Bundled libraries
-SAMBA4_BUNDLED_CMOCKA?= no
-SAMBA4_BUNDLED_TALLOC?= no
-SAMBA4_BUNDLED_TEVENT?= no
-SAMBA4_BUNDLED_TDB?= no
-SAMBA4_BUNDLED_LDB?= yes
-# cmocka
-.if defined(SAMBA4_BUNDLED_CMOCKA) && ${SAMBA4_BUNDLED_CMOCKA} == yes
-SAMBA4_BUNDLED_LIBS+= cmocka
-CONFLICTS_INSTALL+= cmocka-1.*
-PLIST_SUB+= SAMBA4_BUNDLED_CMOCKA=""
-SUB_LIST+= SAMBA4_BUNDLED_CMOCKA=""
-.else
-SAMBA4_BUNDLED_LIBS+= !cmocka
-BUILD_DEPENDS+= cmocka>=1.1.3:sysutils/cmocka
-TEST_DEPENDS+= cmocka>=1.1.3:sysutils/cmocka
-PLIST_SUB+= SAMBA4_BUNDLED_CMOCKA="@comment "
-SUB_LIST+= SAMBA4_BUNDLED_CMOCKA="@comment "
-.endif
-# talloc
-.if defined(SAMBA4_BUNDLED_TALLOC) && ${SAMBA4_BUNDLED_TALLOC} == yes
-SAMBA4_BUNDLED_LIBS+= talloc
-CONFLICTS_INSTALL+= talloc-* talloc1-*
-PLIST_SUB+= SAMBA4_BUNDLED_TALLOC=""
-SUB_LIST+= SAMBA4_BUNDLED_TALLOC=""
-.else
-SAMBA4_BUNDLED_LIBS+= !talloc
-BUILD_DEPENDS+= talloc>=2.3.1:devel/talloc
-RUN_DEPENDS+= talloc>=2.3.1:devel/talloc
-PLIST_SUB+= SAMBA4_BUNDLED_TALLOC="@comment "
-SUB_LIST+= SAMBA4_BUNDLED_TALLOC="@comment "
-.endif
-# tevent
-.if defined(SAMBA4_BUNDLED_TEVENT) && ${SAMBA4_BUNDLED_TEVENT} == yes
-SAMBA4_BUNDLED_LIBS+= tevent
-CONFLICTS_INSTALL+= tevent-* tevent1-*
-PLIST_SUB+= SAMBA4_BUNDLED_TEVENT=""
-SUB_LIST+= SAMBA4_BUNDLED_TEVENT=""
-.else
-SAMBA4_BUNDLED_LIBS+= !tevent
-BUILD_DEPENDS+= tevent>=0.10.2:devel/tevent
-RUN_DEPENDS+= tevent>=0.10.2:devel/tevent
-PLIST_SUB+= SAMBA4_BUNDLED_TEVENT="@comment "
-SUB_LIST+= SAMBA4_BUNDLED_TEVENT="@comment "
-.endif
-# tdb
-.if defined(SAMBA4_BUNDLED_TDB) && ${SAMBA4_BUNDLED_TDB} == yes
-SAMBA4_BUNDLED_LIBS+= tdb
-CONFLICTS_INSTALL+= tdb-* tdb1-*
-PLIST_SUB+= SAMBA4_BUNDLED_TDB=""
-SUB_LIST+= SAMBA4_BUNDLED_TDB=""
-.else
-SAMBA4_BUNDLED_LIBS+= !tdb
-BUILD_DEPENDS+= tdb>=1.4.3:databases/tdb
-RUN_DEPENDS+= tdb>=1.4.3:databases/tdb
-PLIST_SUB+= SAMBA4_BUNDLED_TDB="@comment "
-SUB_LIST+= SAMBA4_BUNDLED_TDB="@comment "
-.endif
-# ldb
-.if defined(SAMBA4_BUNDLED_LDB) && ${SAMBA4_BUNDLED_LDB} == yes
-SAMBA4_BUNDLED_LDB= yes
-SAMBA4_BUNDLED_LIBS+= ldb
-PLIST_SUB+= SAMBA4_BUNDLED_LDB=""
-SUB_LIST+= SAMBA4_BUNDLED_LDB=""
-SAMBA4_MODULEDIR= ${SAMBA4_LIBDIR}/modules
-.else
-SAMBA4_BUNDLED_LIBS+= !ldb
-BUILD_DEPENDS+= ldb22>=2.2.0:databases/ldb22
-RUN_DEPENDS+= ldb22>=2.2.0:databases/ldb22
-PLIST_SUB+= SAMBA4_BUNDLED_LDB="@comment "
-SUB_LIST+= SAMBA4_BUNDLED_LDB="@comment "
-SAMBA4_MODULEDIR= ${PREFIX}/lib/shared-modules
-.endif
-
-.if (defined(SAMBA4_BUNDLED_TALLOC) && ${SAMBA4_BUNDLED_TALLOC} == yes) \
- || (defined(SAMBA4_BUNDLED_TDB) && ${SAMBA4_BUNDLED_TDB} == yes) \
- || (defined(SAMBA4_BUNDLED_LDB) && ${SAMBA4_BUNDLED_LDB} == yes) \
- || (defined(SAMBA4_BUNDLED_TEVENT) && ${SAMBA4_BUNDLED_TEVENT} == yes)
-SAMBA4_BUNDLED_LIBS+= replace
-.endif
-# Don't use external libcom_err
-SAMBA4_BUNDLED_LIBS+= com_err
-# Set the test environment variables
-TEST_USES= python
-TEST_ENV+= PYTHON="${PYTHON_CMD}" \
- SHA1SUM=/sbin/sha1 \
- SHA256SUM=/sbin/sha256 \
- MD5SUM=/sbin/md5 \
- PYTHONDONTWRITEBYTECODE=1
-
-TEST_DEPENDS+= bash:shells/bash \
- tshark:net/tshark
-# External Python modules
-TEST_BUILD_DEPENDS+= ${PYTHON_PKGNAMEPREFIX}iso8601>=0.1.11:devel/py-iso8601@${PY_FLAVOR}
-TEST_RUN_DEPENDS+= ${PYTHON_PKGNAMEPREFIX}iso8601>=0.1.11:devel/py-iso8601@${PY_FLAVOR}
-##############################################################################
-CONFIGURE_ARGS+= \
- --with-pam \
- --with-iconv \
- --with-winbind \
- --with-regedit \
- --disable-rpath \
- --without-lttng \
- --without-gettext \
- --enable-pthreadpool \
- --without-fake-kaserver \
- --without-systemd \
- --with-libarchive \
- --with-acl-support \
- --with-sendfile-support \
- --disable-ctdb-tests
-# ${ICONV_CONFIGURE_BASE}
-##############################################################################
-FRUIT_PREVENTS= ZEROCONF_NONE
-FRUIT_PREVENTS_MSG= MacOSX support requires Zeroconf(AVAHI or MDNSRESPONDER)
-FRUIT_VARS= SAMBA4_MODULES+=vfs_fruit
-FRUIT_PLIST_FILES= man/man8/vfs_fruit.8.gz
-
-GLUSTERFS_CONFIGURE_ENABLE= glusterfs
-GLUSTERFS_LIB_DEPENDS= libglusterfs.so:net/glusterfs
-GLUSTERFS_VARS= SAMBA4_MODULES+=vfs_glusterfs
-GLUSTERFS_PLIST_FILES= man/man8/vfs_glusterfs.8.gz
-
-ZEROCONF_NONE_MAKE_ENV= ZEROCONF=none
-##############################################################################
-AVAHI_CONFIGURE_ENABLE= avahi
-AVAHI_LIB_DEPENDS= libavahi-client.so:net/avahi-app
-AVAHI_VARS= SAMBA4_SERVICES+=avahi_daemon
-
-MDNSRESPONDER_CONFIGURE_ENABLE= dnssd
-MDNSRESPONDER_LIB_DEPENDS= libdns_sd.so:net/mDNSResponder
-MDNSRESPONDER_VARS= SAMBA4_SERVICES+=mdnsd
-##############################################################################
-BIND911_RUN_DEPENDS= bind911>=9.11.0.0:dns/bind911
-BIND916_RUN_DEPENDS= bind916>=9.16.0.0:dns/bind916
-NSUPDATE_RUN_DEPENDS= samba-nsupdate:dns/samba-nsupdate
-##############################################################################
-MEMORY_DEBUG_IMPLIES= DEBUG
-MEMORY_DEBUG_CONFIGURE_ENV= ADDITIONAL_CFLAGS="-DENABLE_JEMALLOC `pkg-config --cflags jemalloc`" ADDITIONAL_LDFLAGS="`pkg-config --libs jemalloc`"
-MEMORY_DEBUG_LIB_DEPENDS= libjemalloc.so.2:devel/jemalloc
-# https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=194046
-GDB_CMD?= ${LOCALBASE}/bin/gdb
-# https://bugzilla.samba.org/show_bug.cgi?id=8969
-PICKY_DEVELOPER_IMPLIES= DEVELOPER
-PICKY_DEVELOPER_CONFIGURE_ON= --picky-developer
-
-DEVELOPER_IMPLIES= NTVFS
-DEVELOPER_CONFIGURE_ON= --enable-developer --enable-selftest --abi-check-disable
-DEVELOPER_CONFIGURE_ENV= WAF_CMD_FORMAT=string
-DEVELOPER_RUN_DEPENDS= ${SAMBA4_LMDB_DEPENDS}
-DEVELOPER_BUILD_DEPENDS= ${GDB_CMD}:devel/gdb \
- ${SAMBA4_LMDB_DEPENDS}
-DEVELOPER_TEST_DEPENDS= ${GDB_CMD}:devel/gdb
-DEVELOPER_VARS_OFF= GDB_CMD=true
-# XXX: Mostly used in conjuction with the DEVELOPER option, don't enable it
-# if you don't know what you are doing
-NTVFS_IMPLIES= AD_DC
-NTVFS_CONFIGURE_WITH= ntvfs-fileserver
-NTVFS_VARS= SAMBA4_MODULES+=service_smb
-NTVFS_PLIST_FILES= lib/samba4/private/libntvfs-samba4.so
-##############################################################################
-AD_DC_IMPLIES= PYTHON3
-AD_DC_CONFIGURE_OFF= --without-ad-dc
-AD_DC_BUILD_DEPENDS= ${SAMBA4_LMDB_DEPENDS}
-AD_DC_RUN_DEPENDS= ${SAMBA4_LMDB_DEPENDS}
-AD_DC_VARS= PLIST+=${PKGDIR}/pkg-plist.ad_dc
-
-ADS_IMPLIES= LDAP
-ADS_CONFIGURE_WITH= ads dnsupdate
-
-CLUSTER_CONFIGURE_WITH= cluster-support
-CLUSTER_VARS= PLIST+=${PKGDIR}/pkg-plist.cluster
-
-CUPS_CONFIGURE_ENABLE= cups iprint
-CUPS_LIB_DEPENDS= libcups.so:print/cups
-# https://bugzilla.samba.org/show_bug.cgi?id=9545
-FAM_USES= fam
-FAM_CONFIGURE_WITH= fam
-
-GPGME_CONFIGURE_WITH= gpgme
-GPGME_LIB_DEPENDS= libgpgme.so:security/gpgme
-
-GSSAPI_MIT_CONFIGURE_ON= --with-system-mitkrb5 ${GSSAPIBASEDIR} \
- --with-system-mitkdc=${GSSAPIBASEDIR}/sbin/krb5kdc \
- --with-experimental-mit-ad-dc
-GSSAPI_MIT_USES= gssapi:mit
-
-GSSAPI_HEIMDAL_CONFIGURE_ON= --with-system-heimdalkrb5 ${GSSAPIBASEDIR}
-GSSAPI_HEIMDAL_USES= gssapi:heimdal
-GSSAPI_HEIMDAL_PREVENTS= AD_DC
-GSSAPI_HEIMDAL_PREVENTS_MSG= GSSAPI_HEIMDAL and AD_DC enable conflicting options
-
-LDAP_CONFIGURE_WITH= ldap
-LDAP_CONFIGURE_ON= --with-openldap=${LOCALBASE}
-LDAP_USE= OPENLDAP=yes
-LDAP_VARS= SAMBA4_MODULES+=idmap_ldap
-
-LIBZFS_CONFIGURE_WITH= libzfs
-LIBZFS_VARS= SAMBA4_MODULES+=vfs_zfs_space
-
-MANDOC_BUILD_DEPENDS= ${LOCALBASE}/share/xsl/docbook/manpages/docbook.xsl:textproc/docbook-xsl \
- xsltproc:textproc/libxslt
-MANDOC_CONFIGURE_ENV_OFF= XSLTPROC="true"
-
-PROFILE_CONFIGURE_WITH= profiling-data
-
-QUOTAS_CONFIGURE_WITH= quotas
-
-SPOTLIGHT_CONFIGURE_ENABLE= spotlight
-SPOTLIGHT_BUILD_DEPENDS= tracker>=1.4.1:sysutils/tracker
-SPOTLIGHT_RUN_DEPENDS= tracker>=1.4.1:sysutils/tracker
-# ICU
-SPOTLIGHT_LIB_DEPENDS= libicuuc.so:devel/icu
-SPOTLIGHT_USES= bison gnome
-SPOTLIGHT_USE= gnome=glib20
-
-SYSLOG_CONFIGURE_WITH= syslog
-
-UTMP_CONFIGURE_WITH= utmp
-
-##############################################################################
-.include <bsd.port.options.mk>
-##############################################################################
-
-.if !defined(WANT_EXP_MODULES) || empty(WANT_EXP_MODULES)
-WANT_EXP_MODULES= vfs_cacheprime
-.endif
-
-.if ${WANT_EXP_MODULES:Mvfs_snapper}
-# snapper needs dbus
-LIB_DEPENDS+= libdbus-1.so:devel/dbus
-LIB_DEPENDS+= libdbus-glib-1.so:devel/dbus-glib
-.endif
-
-SAMBA4_MODULES+= krb5_winbind_krb5_locator idmap_nss idmap_autorid \
- idmap_rid idmap_hash idmap_tdb idmap_tdb2 idmap_script \
- nss-info_hash
-# List of extra modules taken from RHEL build
-# https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=197320
-.if ${PORT_OPTIONS:MADS}
-SAMBA4_MODULES+= idmap_ad idmap_rfc2307 nss-info_template \
- nss-info_rfc2307 nss-info_sfu nss-info_sfu20
-.endif
-# This kind of special for this distribution
-SAMBA4_MODULES+= vfs_freebsd
-
-SAMBA4_MODULES+= vfs_acl_tdb vfs_acl_xattr vfs_aio_fork vfs_aio_pthread \
- vfs_audit vfs_cap vfs_catia vfs_commit vfs_crossrename \
- vfs_default_quota vfs_dirsort vfs_expand_msdfs \
- vfs_extd_audit vfs_fake_perms vfs_full_audit \
- vfs_linux_xfs_sgid vfs_media_harmony vfs_offline \
- vfs_preopen vfs_readahead vfs_readonly vfs_recycle \
- vfs_shadow_copy vfs_shadow_copy2 vfs_shell_snap \
- vfs_streams_depot vfs_streams_xattr vfs_syncops \
- vfs_time_audit vfs_unityed_media vfs_virusfilter \
- vfs_widelinks vfs_worm vfs_xattr_tdb vfs_zfsacl
-
-.if ${PORT_OPTIONS:MDEVELOPER}
-SAMBA4_MODULES+= auth_skel pdb_test gpext_security gpext_registry \
- gpext_scripts perfcount_test vfs_fake_dfq \
- vfs_skel_opaque vfs_skel_transparent \
- vfs_shadow_copy_test vfs_fake_acls \
- vfs_nfs4acl_xattr vfs_error_inject vfs_delay_inject
-.endif
-# Python bindings
-.if ! ${PORT_OPTIONS:MPYTHON3} || defined(NO_PYTHON)
-USES+= python:build,test
-CONFIGURE_ARGS+= --disable-python
-.else
-USES+= python:3.6+
-PLIST+= ${PKGDIR}/pkg-plist.python
-# Don't cache Python modules
-CONFIGURE_ARGS+= --nopycache
-MAKE_ENV+= PYTHONDONTWRITEBYTECODE=1
-
-. if defined(SAMBA4_BUNDLED_TALLOC) && ${SAMBA4_BUNDLED_TALLOC} == yes
-SAMBA4_BUNDLED_LIBS+= pytalloc-util
-. else
-SAMBA4_BUNDLED_LIBS+= !pytalloc-util
-. endif
-
-. if defined(SAMBA4_BUNDLED_TEVENT) && ${SAMBA4_BUNDLED_TEVENT} == yes
-SAMBA4_BUNDLED_LIBS+= pytevent
-. else
-SAMBA4_BUNDLED_LIBS+= !pytevent
-. endif
-
-. if defined(SAMBA4_BUNDLED_TDB) && ${SAMBA4_BUNDLED_TDB} == yes
-SAMBA4_BUNDLED_LIBS+= pytdb
-. else
-SAMBA4_BUNDLED_LIBS+= !pytdb
-. endif
-
-. if defined(SAMBA4_BUNDLED_LDB) && ${SAMBA4_BUNDLED_LDB} == yes
-SAMBA4_BUNDLED_LIBS+= pyldb pyldb-util
-. else
-SAMBA4_BUNDLED_LIBS+= !pyldb !pyldb-util
-. endif
-# samba-tool requires those for *upgrade
-. if ${PORT_OPTIONS:MAD_DC}
-RUN_DEPENDS+= ${PYTHON_PKGNAMEPREFIX}dnspython>=1.15.0:dns/py-dnspython@${PY_FLAVOR}
-RUN_DEPENDS+= ${PYTHON_PKGNAMEPREFIX}markdown>=2.6.11:textproc/py-markdown@${PY_FLAVOR}
-. if ${PORT_OPTIONS:MGPGME}
-RUN_DEPENDS+= ${PYTHON_PKGNAMEPREFIX}gpgme>=1.14.0:security/py-gpgme@${PY_FLAVOR}
-. endif
-. endif
-.endif
-
-.if defined(WANT_EXP_MODULES) && !empty(WANT_EXP_MODULES)
-SAMBA4_MODULES+= ${WANT_EXP_MODULES}
-.endif
-
-.if defined(SAMBA4_BUNDLED_LIBS) && !empty(SAMBA4_BUNDLED_LIBS)
-CONFIGURE_ARGS+= --bundled-libraries="${SAMBA4_BUNDLED_LIBS:Q:C|(\\\\ )+|,|g:S|\\||g}"
-.endif
-
-.if defined(SAMBA4_MODULES) && !empty(SAMBA4_MODULES)
-CONFIGURE_ARGS+= --with-shared-modules="${SAMBA4_MODULES:C|-|_|:Q:C|(\\\\ )+|,|g:S|\\||g}"
-.endif
-# XXX: Hack for nss-info_* -> nss_info/* modules
-# Add selected modules to the plist
-.for module in ${SAMBA4_MODULES}
-PLIST_FILES+= ${SAMBA4_MODULEDIR}/${module:C|_|/|:C|-|_|}.so
-.endfor
-
-.for module_class in ${SAMBA4_MODULES_CLASS}
-PLIST_DIRS+= ${SAMBA4_MODULEDIR}/${module_class}
-.endfor
-PLIST_DIRS+= ${SAMBA4_MODULEDIR}
-
-.if defined(WITH_DEBUG)
-CONFIGURE_ARGS+= --verbose --enable-debug
-MAKE_ARGS+= --verbose
-DEBUG_FLAGS?= -g -ggdb3 -O0
-.endif
-
-##############################################################################
-.include <bsd.port.pre.mk>
-##############################################################################
-# Implemented in the gcrypt on AMD64
-.if ${ARCH} == "amd64"
-CONFIGURE_ARGS+= --accel-aes=intelaesni
-.else
-CONFIGURE_ARGS+= --accel-aes=none
-.endif
-
-# Only for 64-bit architectures
-.if ${ARCH} != armv6 && ${ARCH} != armv7 && ${ARCH} != i386 && ${ARCH} != mips && ${ARCH} != powerpc && ${ARCH} != powerpcspe
-. if defined(SAMBA4_BUNDLED_LDB) && ${SAMBA4_BUNDLED_LDB} == yes && (${PORT_OPTIONS:MAD_DC} || ${PORT_OPTIONS:MDEVELOPER})
-# LMDB
-SAMBA4_LMDB_DEPENDS= lmdb>=0.9.16:databases/lmdb
-PLIST_FILES+= ${SAMBA4_LIBDIR}/private/libldb-mdb-int-samba4.so \
- ${SAMBA4_MODULEDIR}/ldb/mdb.so
-. endif
-.endif
-
-.if ${PORT_OPTIONS:MGSSAPI_MIT}
-PLIST_FILES+= ${SAMBA4_MODULEDIR}/krb5/winbind_krb5_localauth.so \
- man/man8/winbind_krb5_localauth.8.gz
-. if ${PORT_OPTIONS:MAD_DC}
-PLIST_FILES+= ${SAMBA4_LIBDIR}/krb5/plugins/kdb/samba.so
-. endif
-.endif
-# for libexecinfo: (so that __builtin_frame_address() finds the top of the stack)
-CFLAGS_amd64+= -fno-omit-frame-pointer
-# No fancy color error messages
-CONFIGURE_ENV+= NOCOLOR=yes WAF_LOG_FORMAT='%(c1)s%(zone)s%(c2)s %(message)s'
-MAKE_ENV+= NOCOLOR=yes WAF_LOG_FORMAT='%(c1)s%(zone)s%(c2)s %(message)s'
-.if ${CHOSEN_COMPILER_TYPE} == clang
-CFLAGS+= -fno-color-diagnostics
-.endif
-# Allow rpcgen to find proper CPP
-MAKE_ENV+= RPCGEN_CPP="${CPP}"
-#.if ${readline_ARGS} == port
-#CFLAGS+= -D_FUNCTION_DEF
-#.endif
-
-# Make sure that the right version of Python is used by the tools
-# https://bugzilla.samba.org/show_bug.cgi?id=7305
-SHEBANG_FILES= ${PATCH_WRKSRC}/source4/scripting/bin/* ${PATCH_WRKSRC}/selftest/*
-
-SAMBA4_SUB= SAMBA4_LOGDIR="${SAMBA4_LOGDIR}" \
- SAMBA4_RUNDIR="${SAMBA4_RUNDIR}" \
- SAMBA4_LOCKDIR="${SAMBA4_LOCKDIR}" \
- SAMBA4_LIBDIR="${SAMBA4_LIBDIR}" \
- SAMBA4_MODULEDIR="${SAMBA4_MODULEDIR}" \
- SAMBA4_BINDDNSDIR="${SAMBA4_BINDDNSDIR}" \
- SAMBA4_PRIVATEDIR="${SAMBA4_PRIVATEDIR}" \
- SAMBA4_CONFDIR="${SAMBA4_CONFDIR}" \
- SAMBA4_CONFIG="${SAMBA4_CONFIG}" \
- SAMBA4_SERVICES="${SAMBA4_SERVICES}"
-
-PLIST_SUB+= ${SAMBA4_SUB}
-SUB_LIST+= ${SAMBA4_SUB}
-
-USE_RC_SUBR= samba_server
-SUB_FILES= pkg-message README.FreeBSD
-
-PORTDOCS= README.FreeBSD
-
-post-extract:
- @${RM} -r ${WRKSRC}/pidl/lib/Parse/Yapp
-
-post-patch:
- @${REINPLACE_CMD} -e 's|$${PKGCONFIGDIR}|${PKGCONFIGDIR}|g' \
- ${PATCH_WRKSRC}/buildtools/wafsamba/pkgconfig.py
- @${REINPLACE_CMD} -e 's|%%LOCALBASE%%|${LOCALBASE}|g' \
- ${PATCH_WRKSRC}/buildtools/wafsamba/wafsamba.py
- @${REINPLACE_CMD} -e 's|%%GDB_CMD%%|${GDB_CMD}|g' \
- ${PATCH_WRKSRC}/buildtools/scripts/abi_gen.sh
- @${REINPLACE_CMD} -e 's|%%SAMBA4_CONFIG%%|${SAMBA4_CONFIG}|g' \
- ${PATCH_WRKSRC}/dynconfig/wscript
-
-# Use threading (or multiprocessing) but not thread (renamed in python 3+).
-pre-configure:
-.if !${PORT_OPTIONS:MAD_DC} && ${PORT_OPTIONS:MNTVFS}
- @${ECHO_CMD}; \
- ${ECHO_MSG} "===> NTVFS option requires AD_DC to be set"; \
- ${ECHO_CMD}; \
- ${FALSE}
-.endif
-.if (!${PORT_OPTIONS:MPYTHON3} || defined(NO_PYTHON)) && ${PORT_OPTIONS:MAD_DC}
- @${ECHO_CMD}; \
- ${ECHO_MSG} "===> AD_DC option requires PYTHON3 to be set"; \
- ${ECHO_CMD}; \
- ${FALSE}
-.endif
- @if ! ${PYTHON_CMD} -c "import multiprocessing;" 2>/dev/null; then \
- ${ECHO_CMD}; \
- ${ECHO_MSG} "===> ${PKGNAME} "${IGNORE_NONTHREAD_PYTHON:Q}.; \
- ${ECHO_CMD}; \
- ${FALSE}; \
- fi
-
-pre-build-MANDOC-off:
- ${MKDIR} ${BUILD_WRKSRC}/bin/default/docs-xml/
- ${CP} -rp ${BUILD_WRKSRC}/docs/manpages ${BUILD_WRKSRC}/bin/default/docs-xml/
-.for man in libcli/nbt/man/nmblookup4.1 \
- librpc/tools/ndrdump.1 \
- source4/lib/registry/man/regdiff.1 \
- source4/lib/registry/man/regpatch.1 \
- source4/lib/registry/man/regshell.1 \
- source4/lib/registry/man/regtree.1 \
- source4/scripting/man/samba-gpupdate.8 \
- source4/torture/man/gentest.1 \
- source4/torture/man/locktest.1 \
- source4/torture/man/masktest.1 \
- source4/torture/man/smbtorture.1 \
- source4/utils/man/ntlm_auth4.1 \
- source4/utils/oLschema2ldif/oLschema2ldif.1 \
- lib/tdb/man/tdbdump.8 \
- lib/tdb/man/tdbbackup.8 \
- lib/tdb/man/tdbtool.8 \
- lib/talloc/man/talloc.3 \
- lib/tdb/man/tdbrestore.8 \
- lib/ldb/man/ldbadd.1 \
- lib/ldb/man/ldbsearch.1 \
- lib/ldb/man/ldbmodify.1 \
- lib/ldb/man/ldbrename.1 \
- lib/ldb/man/ldbdel.1 \
- lib/ldb/man/ldbedit.1 \
- docs-xml/manpages/vfs_freebsd.8
- ${MKDIR} `dirname ${BUILD_WRKSRC}/bin/default/${man}`
- ${INSTALL_MAN} ${FILESDIR}/man/`basename ${man}` ${BUILD_WRKSRC}/bin/default/${man}
-.endfor
-.if ${PORT_OPTIONS:MCLUSTER}
- ${MKDIR} ${BUILD_WRKSRC}/bin/default/ctdb/
-. for man in ctdb_diagnostics.1 ctdb.1 ctdbd_wrapper.1 ctdbd.1 ltdbtool.1 onnode.1 ping_pong.1 \
- ctdb.conf.5 ctdb.sysconfig.5 ctdb-script.options.5 \
- ctdb.7 ctdb-statistics.7 ctdb-tunables.7
- ${INSTALL_MAN} ${FILESDIR}/man/${man} ${BUILD_WRKSRC}/bin/default/ctdb/
-. endfor
-.endif
-
-post-install-rm-junk:
- ${RM} -r ${STAGEDIR}${PYTHON_SITELIBDIR}/samba/third_party
- ${FIND} ${STAGEDIR}${PYTHON_SITELIBDIR} -name __pycache__ \
- -type d -print0 | ${XARGS} -0 -n 1 -t ${RM} -r
-
-post-install-fix-manpages:
-.for f in vfs_aio_linux.8 vfs_btrfs.8 vfs_ceph.8 vfs_gpfs.8
- ${RM} ${STAGEDIR}${PREFIX}/man/man8/${f}
-.endfor
-.if defined(SAMBA4_BUNDLED_LDB) && ${SAMBA4_BUNDLED_LDB} == yes
-. for f in ldbadd.1 ldbdel.1 ldbedit.1 ldbmodify.1 ldbrename.1 ldbsearch.1
- ${MV} ${STAGEDIR}${PREFIX}/man/man1/${f} ${STAGEDIR}${PREFIX}/man/man1/samba-${f}
-. endfor
-.endif
-.if defined(SAMBA4_BUNDLED_TDB) && ${SAMBA4_BUNDLED_TDB} == yes
-. for f in tdbbackup.8 tdbdump.8 tdbrestore.8 tdbtool.8
- ${MV} ${STAGEDIR}${PREFIX}/man/man8/${f} ${STAGEDIR}${PREFIX}/man/man8/samba-${f}
-. endfor
-.endif
-
-post-install: post-install-rm-junk post-install-fix-manpages
- ${LN} -sf smb.conf.5.gz ${STAGEDIR}${PREFIX}/man/man5/smb4.conf.5.gz
-# Run post-install script
-.for dir in ${SAMBA4_LOGDIR} ${SAMBA4_RUNDIR} ${SAMBA4_LOCKDIR} ${SAMBA4_MODULEDIR}
- ${INSTALL} -d -m 0755 "${STAGEDIR}${dir}"
-.endfor
- ${INSTALL} -d -m 0750 "${STAGEDIR}${SAMBA4_BINDDNSDIR}"
- ${INSTALL} -d -m 0750 "${STAGEDIR}${SAMBA4_PRIVATEDIR}"
-.for module_class in ${SAMBA4_MODULES_CLASS}
- ${INSTALL} -d -m 0755 "${STAGEDIR}${SAMBA4_MODULEDIR}/${module_class}"
-.endfor
-.if !defined(WITH_DEBUG)
- -${FIND} ${STAGEDIR}${PREFIX}/bin ${STAGEDIR}${PREFIX}/sbin ${STAGEDIR}${PREFIX}/libexec \
- -type f -print0 | ${XARGS} -0 -n 1 -t ${STRIP_CMD}
- -${FIND} ${STAGEDIR}${PREFIX}/lib -name '*.so*' \
- -type f -print0 | ${XARGS} -0 -n 1 -t ${STRIP_CMD}
-.endif
-
-post-install-FRUIT-off:
- ${RM} ${STAGEDIR}${SAMBA4_MODULEDIR}/vfs/fruit.so
- ${RM} ${STAGEDIR}${PREFIX}/man/man8/vfs_fruit.8
-
-post-install-DOCS-on:
- ${MKDIR} ${STAGEDIR}${DOCSDIR}
-.for doc in ${PORTDOCS}
- ${INSTALL_DATA} ${WRKDIR}/${doc} ${STAGEDIR}${DOCSDIR}
-.endfor
-
-post-install-CLUSTER-on:
- ${LN} -nfs ../../../../share/ctdb/events/legacy/00.ctdb.script ${STAGEDIR}${PREFIX}/etc/ctdb/events/legacy/00.ctdb.script
- ${LN} -nfs ../../../../share/ctdb/events/legacy/10.interface.script ${STAGEDIR}${PREFIX}/etc/ctdb/events/legacy/10.interface.script
- ${LN} -nfs ../../../../share/ctdb/events/legacy/05.system.script ${STAGEDIR}${PREFIX}/etc/ctdb/events/legacy/05.system.script
- ${LN} -nfs ../../../../share/ctdb/events/legacy/01.reclock.script ${STAGEDIR}${PREFIX}/etc/ctdb/events/legacy/01.reclock.script
-
-.include <bsd.port.post.mk>