aboutsummaryrefslogtreecommitdiff
path: root/japanese/samba/Makefile
diff options
context:
space:
mode:
authorNorikatsu Shigemura <nork@FreeBSD.org>2003-02-24 15:15:06 +0000
committerNorikatsu Shigemura <nork@FreeBSD.org>2003-02-24 15:15:06 +0000
commit0c978582aa5cd4fb4f98be0b2df524f828a22870 (patch)
tree384c80d449d8074de1e55a1a075164ba1a90abf9 /japanese/samba/Makefile
parent35a8b7ea3e15802d19c98286dc9e2fe2c1cea804 (diff)
downloadports-0c978582aa5cd4fb4f98be0b2df524f828a22870.tar.gz
ports-0c978582aa5cd4fb4f98be0b2df524f828a22870.zip
Notes
Diffstat (limited to 'japanese/samba/Makefile')
-rw-r--r--japanese/samba/Makefile165
1 files changed, 156 insertions, 9 deletions
diff --git a/japanese/samba/Makefile b/japanese/samba/Makefile
index be8c3c4433d0..28b89ad3f522 100644
--- a/japanese/samba/Makefile
+++ b/japanese/samba/Makefile
@@ -21,23 +21,59 @@ COMMENT= A free SMB and CIFS client and server for UNIX
BUILD_DEPENDS= msgfmt:${PORTSDIR}/devel/gettext
-SAMBA_VERSION= 2.2.4
+SAMBA_VERSION= 2.2.7a
SAMBA_JA_VERSION= 1.0
+USE_BZIP2= yes
+GNU_CONFIGURE= yes
+USE_AUTOCONF= yes
+USE_GMAKE= yes
+USE_SUBMAKE= yes
+
# directories
+.if !defined(BATCH) && !defined(PACKAGE_BUILDING)
+IS_INTERACTIVE= yes
+.endif
+
+.if exists(${WRKDIRPREFIX}${.CURDIR}/Makefile.inc)
+.include "${WRKDIRPREFIX}${.CURDIR}/Makefile.inc"
+.endif
+
+AUDIT?= "@comment "
+RECYCLE?= "@comment "
+LIBSAMBA?= "@comment "
+BUILD_VFS?= "@comment "
+LDAPSAM?= "@comment "
+WINBIND?= "@comment "
+
+.if defined(WITH_AUDIT)
+AUDIT= ""
+LIBSAMBA= ""
+BUILD_VFS= ""
+.endif
+
+.if defined(WITH_RECYCLE)
+RECYCLE= ""
+LIBSAMBA= ""
+BUILD_VFS= ""
+.endif
+
VARDIR= /var
SAMBA_SPOOL= ${VARDIR}/spool/samba
SAMBA_LOGDIR= ${VARDIR}/log
SAMBA_PRIVATE= ${PREFIX}/private
SAMBA_CONFDIR= ${PREFIX}/etc
+SAMBA_VFSDIR= ${PREFIX}/lib/samba
+SCRIPTS_ENV= WRKDIRPREFIX="${WRKDIRPREFIX}" \
+ TOUCH="${TOUCH}" \
+ MKDIR="${MKDIR}" \
+ CAT="${CAT}" \
+ SAMBA_OPTIONS="${SAMBA_OPTIONS}" \
+ REALCURDIR="${.CURDIR}"
# sample files
STARTUP_SCRIPT= ${PREFIX}/etc/rc.d/samba.sh.sample
SAMPLE_CONFIG= ${SAMBA_CONFDIR}/smb.conf.default
-USE_BZIP2= yes
-GNU_CONFIGURE= yes
-USE_AUTOCONF= yes
-USE_GMAKE= yes
CONFIGURE_ARGS= --with-i18n-swat --with-included-gettext \
--libdir=${SAMBA_CONFDIR} \
--localstatedir=${VARDIR} --with-swatdir=${PREFIX}/share/swat \
@@ -48,12 +84,75 @@ CONFIGURE_ARGS= --with-i18n-swat --with-included-gettext \
--with-pam \
--prefix=${PREFIX}
+.include <bsd.port.pre.mk>
+
+CONFIGURE_ENV+= TESTDIR=/tmp
+
+.if defined(WITH_SYSLOG)
+CONFIGURE_ARGS+= --with-syslog
+.endif
+
+.if defined(WITH_SSL)
+CONFIGURE_ARGS+= --with-ssl --with-sslinc=/usr/include/openssl --with-ssllib=/usr/lib
+.endif
+
+.if defined(WITH_QUOTAS)
+CONFIGURE_ARGS+= --with-quotas
+.endif
+
+.if defined(WITH_UTMP)
+CONFIGURE_ARGS+= --with-utmp
+.endif
+
+.if defined(WITH_MSDFS)
+CONFIGURE_ARGS+= --with-msdfs
+.endif
+
+.if defined(WITH_LDAP)
+LIB_DEPENDS+= ldap.2:${PORTSDIR}/net/openldap20
+CONFIGURE_ARGS+= --with-ldapsam
+CONFIGURE_ENV+= CPPFLAGS=-I${LOCALBASE}/include \
+ LDFLAGS=-L${LOCALBASE}/lib
+LDAPSAM= ""
+.endif
+
+.if !defined(WITHOUT_CUPS)
+WITH_CUPS= yes
+.endif
+
+.if defined(WITH_WINBIND)
+CONFIGURE_ARGS+= --with-winbind
+WINBIND= ""
+.endif
+
+.if defined(WITH_WINBIND_AUTH_CHALLENGE)
+CONFIGURE_ARGS+= --with-winbind-auth-challenge
+.endif
+
+pre-fetch:
+ @${SETENV} ${SCRIPTS_ENV} ${SH} ${SCRIPTDIR}/configure.samba
+
+post-clean:
+ @${RM} -f ${WRKDIRPREFIX}${.CURDIR}/Makefile.inc
+
+.if defined(WITH_CUPS)
+LIB_DEPENDS+= cups.2:${PORTSDIR}/print/cups-base
+CONFIGURE_ENV+= CPPFLAGS=-I${LOCALBASE}/include \
+ LDFLAGS=-L${LOCALBASE}/lib
+.else
+CONFIGURE_ARGS+= --disable-cups
+.endif
+
.if defined(KRB5_HOME) && exists(${KRB5_HOME})
CONFIGURE_ARGS+=--with-krb5=${KRB5_HOME}
.endif
-.if defined(USE_OPENSSL)
-CONFIGURE_ARGS+= --with-ssl
+.if defined(WITH_ACL_SUPPORT)
+.if ${OSVERSION} < 500018
+BROKEN= "ACL support requires a recent FreeBSD 5.0-CURRENT"
+.else
+CONFIGURE_ARGS+= --with-acl-support
+.endif
.endif
WRKSRC= ${WRKDIR}/${DISTNAME}/source
@@ -69,18 +168,55 @@ MAN8= smbd.8 nmbd.8 smbpasswd.8 swat.8 smbspool.8 \
pdbedit.8
MANLANG= "" ja
+SED_PLIST= ${SED} -e 's!${PREFIX}!%D!g'
+
+PLIST_SUB= AUDIT=${AUDIT} \
+ RECYCLE=${RECYCLE} \
+ LIBSAMBA=${LIBSAMBA} \
+ BUILD_VFS=${BUILD_VFS} \
+ LDAPSAM=${LDAPSAM} \
+ WINBIND=${WINBIND}
+
+pre-build:
+ ${RM} -fr ${WRKSRC}/include/proto.h
+ (cd ${WRKSRC} && make proto)
+
post-build:
${SED} 's:/usr/local:${PREFIX}:g' ${FILESDIR}/samba.sh.sample \
> ${WRKDIR}/samba.sh.sample
+.if defined(WITH_RECYCLE) || defined(WITH_AUDIT)
+ cd ${WRKDIR}/${DISTNAME}/examples/VFS; \
+ ./configure;${GMAKE}; \
+ ${RM} -f config.cache config.log config.status
+.endif
post-install:
+.if defined(WITH_AUDIT) || defined(WITH_RECYCLE)
+ @test -d ${SAMBA_VFSDIR} || ${MKDIR} ${SAMBA_VFSDIR}
+.if defined(WITH_AUDIT)
+ ${INSTALL_PROGRAM} ${WRKDIR}/${DISTNAME}/examples/VFS/audit.so ${SAMBA_VFSDIR}
+.endif
+.if defined(WITH_RECYCLE)
+ ${INSTALL_PROGRAM} ${WRKDIR}/${DISTNAME}/examples/VFS/recycle/recycle.so ${SAMBA_VFSDIR}
+.endif
+.endif
+ ${MKDIR} ${PREFIX}/share/examples/samba
+ -${RM} -f ${WRKDIR}/${DISTNAME}/examples/libsmbclient/*.o
+ ${CP} -rp ${WRKDIR}/${DISTNAME}/examples/* ${PREFIX}/share/examples/samba
+.if defined(WITH_AUDIT) || defined(WITH_RECYCLE)
+# @${RM} -rf ${PREFIX}/share/examples/samba/VFS/.libs
+ ${FIND} ${PREFIX}/share/examples/samba/VFS -type d -name ".libs" | ${XARGS} ${RM} -r
+ @for file in audit.o audit.so recycle/recycle.o recycle/recycle.so skel.o skel.so ; do \
+ ${RM} ${PREFIX}/share/examples/samba/VFS/$${file} ; \
+ done
+.endif
@${STRIP_CMD} ${PREFIX}/sbin/smbd ${PREFIX}/sbin/nmbd ${PREFIX}/sbin/swat
@${STRIP_CMD} ${PREFIX}/bin/smbclient ${PREFIX}/bin/smbspool
@${STRIP_CMD} ${PREFIX}/bin/testparm ${PREFIX}/bin/testprns ${PREFIX}/bin/testprns ${PREFIX}/bin/smbstatus ${PREFIX}/bin/smbcontrol ${PREFIX}/bin/make_printerdef
@${STRIP_CMD} ${PREFIX}/bin/smbpasswd ${PREFIX}/bin/make_smbcodepage ${PREFIX}/bin/rpcclient ${PREFIX}/bin/make_unicodemap ${PREFIX}/bin/make_nftable ${PREFIX}/bin/smbcacls ${PREFIX}/bin/nmblookup
@${MKDIR} ${PREFIX}/share/examples/samba
@cd ${WRKDIR}/${DISTNAME}/examples; \
- ${TAR} --exclude .cvsignore -cf - . | ${TAR} -xf - -C ${PREFIX}/share/examples/samba
+ ${TAR} --exclude .cvsignore --exclude .libs -cf - . | ${TAR} -xf - -C ${PREFIX}/share/examples/samba
@if [ ! -f ${STARTUP_SCRIPT} ]; then \
${ECHO} "Installing ${STARTUP_SCRIPT} startup file." ; \
${INSTALL_SCRIPT} ${WRKDIR}/samba.sh.sample \
@@ -105,6 +241,16 @@ post-install:
@${CHOWN} root:wheel ${PREFIX}/bin/smbpasswd
@${CHMOD} 111 ${PREFIX}/bin/smbpasswd
+ ${ECHO_CMD} "@exec ${TEST} -d ${SAMBA_SPOOL} || ${MKDIR} ${SAMBA_SPOOL} && ${CHMOD} 1777 ${SAMBA_SPOOL}" | ${SED_PLIST} >> ${TMPPLIST}
+ ${ECHO_CMD} "@unexec ${RM} -rf ${SAMBA_SPOOL}" | ${SED_PLIST} >> ${TMPPLIST}
+ ${ECHO_CMD} "@exec ${MKDIR} -m 500 ${SAMBA_PRIVATE}" | ${SED_PLIST} >> ${TMPPLIST}
+ ${ECHO_CMD} "@exec ${CHOWN} root:wheel ${SAMBA_PRIVATE}" | ${SED_PLIST} >> ${TMPPLIST}
+ ${ECHO_CMD} "@exec ${CAT} /etc/passwd | ${GREP} -v "^#" | ${PREFIX}/bin/make_smbpasswd > ${SAMBA_PRIVATE}/smbpasswd.default" | ${SED_PLIST} >> ${TMPPLIST}
+ ${ECHO_CMD} "@exec ${TEST} -e ${SAMBA_PRIVATE}/smbpasswd || ${CP} -p ${SAMBA_PRIVATE}/smbpasswd.default ${SAMBA_PRIVATE}/smbpasswd" | ${SED_PLIST} >> ${TMPPLIST}
+ ${ECHO_CMD} "@exec ${CHMOD} 600 ${SAMBA_PRIVATE}/smbpasswd*" | ${SED_PLIST} >> ${TMPPLIST}
+ ${ECHO_CMD} "@unexec /usr/bin/cmp -s ${SAMBA_PRIVATE}/smbpasswd ${SAMBA_PRIVATE}/smbpasswd.default && ${RM} -f ${SAMBA_PRIVATE}/smbpasswd ${SAMBA_PRIVATE}/secrets.tdb || ${TRUE}" | ${SED_PLIST} >> ${TMPPLIST}
+ ${ECHO_CMD} "@unexec ${RM} -f ${SAMBA_PRIVATE}/smbpasswd.default" | ${SED_PLIST} >> ${TMPPLIST}
+ ${ECHO_CMD} "@unexec ${RMDIR} ${SAMBA_PRIVATE} || (${ECHO_CMD} \"Warning: If you will *NOT* use this package anymore,\" && ${ECHO_CMD} \" please remove ${SAMBA_PRIVATE} and its contents manually.\")" | ${SED_PLIST} >> ${TMPPLIST}
.if !defined(NOPORTDOCS)
@${MKDIR} ${PREFIX}/share/doc/samba
@@ -125,5 +271,6 @@ post-install:
@if [ -f ${VARDIR}/spool/lock/browse.dat ]; then \
${RM} -f ${VARDIR}/spool/lock/browse.dat; \
fi
+ @${CAT} ${PKGMESSAGE}
-.include <bsd.port.mk>
+.include <bsd.port.post.mk>