# New ports collection makefile for: zsh # Date created: 11 Feb. 1995 # Whom: torstenb # # $FreeBSD$ # # The following compile-time options are available: # NO_SHARED=yes compile a static version of zsh # (default: use dynamically loadable modules) # ZSH_ETCDIR= directory for zsh system-wide configuration files: # zshenv, zlogin, zprofile, zshrc, zlogout. # e.g. use this to put config files inside ${PREFIX} # (default: /etc) # NOTE: does NOT have to be inside ${PREFIX} tree # ZSH_FNDIR= directory for zsh functions (part of distribution) # (default: ${PREFIX}/share/zsh/${ZSH_VER}/functions) # NOTE: should be inside ${PREFIX} tree # ZSH_SITEFNDIR= directory for zsh site functions (locally developed) # (default: ${PREFIX}/share/zsh/site-functions) # NOTE: does NOT have to be inside ${PREFIX} tree PORTNAME= zsh PORTVERSION= 4.3.4 PORTREVISION= 3 CATEGORIES= shells MASTER_SITES= SF .if !defined(NOPORTDOCS) DISTFILES= ${DISTNAME}${EXTRACT_SUFX} ${DISTNAME}-doc${EXTRACT_SUFX} .endif MAINTAINER= des@FreeBSD.org COMMENT= The Z shell ZSH_VER= ${PORTVERSION} USE_BZIP2= yes USE_ICONV= yes USE_AUTOTOOLS= autoconf:261:env GNU_CONFIGURE= yes USE_LDCONFIG= ${PREFIX}/lib/${PORTNAME} CONFIGURE_TARGET= --build=${MACHINE_ARCH}-portbld-freebsd${OSREL} CONFIGURE_ENV= CPPFLAGS="${CPPFLAGS} -I${LOCALBASE}/include" \ LDFLAGS="${LDFLAGS} -L${LOCALBASE}/lib" CONFIGURE_ARGS= --with-curses-terminfo --with-tcsetpgrp \ --enable-etcdir=${ZSH_ETCDIR} \ --enable-fndir=${ZSH_FNDIR} --enable-function-subdirs \ --enable-site-fndir=${ZSH_SITEFNDIR} OPTIONS= ZSH_MEM "Enable zsh-mem and zsh-secure-free options" on \ ZSH_MAILDIR "Enable support for Maildirs in MAIL(PATH)" on \ ZSH_MULTIBYTE "Enable multibyte character support" on \ ZSH_PCRE "Enable PCRE support" off # These variables can be overriden by user ZSH_ETCDIR?= /etc ZSH_FNDIR?= ${DATADIR}/${ZSH_VER}/functions ZSH_SITEFNDIR?= ${DATADIR}/site-functions PLIST_SUB+= ZSH_VER="${ZSH_VER}" ZSHETCDIR="${ZSH_ETCDIR}" \ ZSH_FNDIR="${ZSH_FNDIR:S!${PREFIX}/!!}" \ ZSH_SITEFNDIR="${ZSH_SITEFNDIR}" MAN1= zsh.1 zshbuiltins.1 zshcompctl.1 zshcompwid.1 zshcompsys.1 \ zshcontrib.1 zshexpn.1 zshmisc.1 zshmodules.1 zshoptions.1 \ zshparam.1 zshroadmap.1 zshtcpsys.1 zshzftpsys.1 zshzle.1 \ zshall.1 zshcalsys.1 DOCS= LICENCE META-FAQ README Etc/BUGS Etc/CONTRIBUTORS Etc/FAQ \ Etc/completion-style-guide Doc/zsh*.html Doc/zsh.dvi PORTDOCS= * PORTEXAMPLES= zlogin zshenv zshrc SHELLS= /etc/shells .include .if defined(WITH_ZSH_PCRE) CONFIGURE_ARGS+= --enable-pcre LIB_DEPENDS+= pcre.0:${PORTSDIR}/devel/pcre PLIST_SUB+= PCRE="" .else CONFIGURE_ARGS+= --disable-pcre PLIST_SUB+= PCRE="@comment " .endif .if defined(WITH_ZSH_MEM) CONFIGURE_ARGS+= --enable-zsh-mem --enable-zsh-secure-free .endif .if defined(WITH_ZSH_MAILDIR) CONFIGURE_ARGS+= --enable-maildir-support .endif .if defined(NO_SHARED) CONFIGURE_ENV= LDFLAGS="${LDFLAGS} -static" CONFIGURE_ARGS+= --disable-dynamic PLIST_SUB+= NO_STATIC="@comment " .else CONFIGURE_ARGS+= --enable-dynamic PLIST_SUB+= NO_STATIC="" .endif .if defined(WITH_ZSH_MULTIBYTE) CONFIGURE_ARGS+= --enable-multibyte .endif .if ${OSVERSION} >= 503000 EXTRA_PATCHES= ${FILESDIR}/extra-patch-bsdtar .endif post-patch: @${SED} -i "" -e "s,link=dynamic,link=either," \ ${WRKSRC}/Src/Modules/*.mdd @${SED} -i "" -e "s,/etc/,${LOCALBASE}/etc/," \ ${WRKSRC}/Functions/MIME/zsh-mime-setup @${FIND} ${WRKSRC}/Completion -type f -iname '*.orig' -delete post-build: # Fix ".so" macro problem by using "soelim" command. ${LN} -sf ${WRKSRC}/Doc ${WRKSRC}/man1 ${MV} ${WRKSRC}/Doc/zshall.1 ${WRKSRC}/Doc/zshall.1.source cd ${WRKSRC} && /usr/bin/soelim ${WRKSRC}/Doc/zshall.1.source > \ ${WRKSRC}/Doc/zshall.1 .if !defined(NOPORTDOCS) @${MKDIR} ${PREFIX}/info makeinfo --no-split --output=${WRKSRC}/Doc/zsh.info \ ${WRKSRC}/Doc/zsh.texi INFO= zsh .endif post-install: ${LN} ${PREFIX}/bin/zsh ${PREFIX}/bin/rzsh ${TEST} -d ${ZSH_ETCDIR} || ${MKDIR} ${ZSH_ETCDIR} ${TEST} -d ${ZSH_SITEFNDIR} || ${MKDIR} ${ZSH_SITEFNDIR} .if !defined(NOPORTEXAMPLES) @${MKDIR} ${EXAMPLESDIR} cd ${WRKSRC}/StartupFiles && ${INSTALL_DATA} ${PORTEXAMPLES} ${EXAMPLESDIR} .endif .if !defined(NOPORTDOCS) @${MKDIR} ${DOCSDIR} cd ${WRKSRC} && ${INSTALL_DATA} ${DOCS} ${DOCSDIR} ${INSTALL_DATA} ${WRKSRC}/Doc/zsh.info ${PREFIX}/info/zsh.info .endif @${ECHO_MSG} "Updating ${SHELLS}" @${CP} ${SHELLS} ${SHELLS}.bak @(${GREP} -v ${PREFIX}/bin/zsh ${SHELLS}.bak; \ ${ECHO_CMD} ${PREFIX}/bin/zsh) > ${SHELLS} @${RM} ${SHELLS}.bak .include