pkgsrc/shells/zsh/Makefile.common
hiramatsu d1cbf81450 Fix PLIST on OpenBSD.
- Changed IRIX, Interix, Linux and OpenBSD share PLIST.terminfo,
  instead of PLIST for each OS.

- zsh doesn't build libzsh-4.2.5.so on OpenBSD, so PLIST.shlibs
  should be excluded.
2005-08-07 20:18:07 +00:00

108 lines
2.9 KiB
Text

# $NetBSD: Makefile.common,v 1.26 2005/08/07 20:18:07 hiramatsu Exp $
DISTNAME= zsh-${ZSH_VERSION}
CATEGORIES= shells
MASTER_SITES= ftp://sunsite.dk/pub/unix/shells/zsh/ \
ftp://ftp.fu-berlin.de/pub/unix/shells/zsh/ \
ftp://ftp.lysator.liu.se/pub/unix/zsh/ \
ftp://ftp.funet.fi/pub/unix/shells/zsh/ \
http://www.math.technion.ac.il/pub/zsh/ \
ftp://ftp.zsh.org/zsh/
EXTRACT_SUFX= .tar.bz2
MAINTAINER= ${ZSH_MAINTAINER}
HOMEPAGE= http://sunsite.dk/zsh/
COMMENT= The Z shell
USE_PKGINSTALL= yes
GNU_CONFIGURE= yes
USE_MAKEINFO= yes
INFO_FILES= zsh.info
TEXINFO_REQD= 4.0
PKG_INSTALLATION_TYPES= overwrite pkgviews
.include "../../mk/bsd.prefs.mk"
BUILD_DEFS+= ZSH_STATIC
.if defined(ZSH_STATIC) && !empty(ZSH_STATIC:M[Yy][Ee][Ss])
CONFIGURE_ARGS+= --disable-dynamic
NETBSD_SHLINKER= /libexec/ld.elf_so
NETBSD_SHLIBDIR= /lib
. if ${OPSYS} == "NetBSD" && ${OBJECT_FMT} == "ELF" && \
defined(MKDYNAMICROOT) && !empty(MKDYNAMICROOT:M[Yy][Ee][Ss]) && \
exists(${NETBSD_SHLINKER}) && exists(${NETBSD_SHLIBDIR})
#
# Built a dynamically linked "zsh" binary on NetBSD systems which use
# dynamically linked binaries on the root filesystem. The binary will
# only depend on the run-time link-editor and shared libraries on the
# root filesystem. We use "-rpath" below by purpose because the
# buildlink 3 framework won't filter it out.
#
BUILDLINK_PASSTHRU_RPATHDIRS+= ${NETBSD_SHLIBDIR}
LDFLAGS+= -Wl,-dynamic-linker=${NETBSD_SHLINKER} -Wl,-R${NETBSD_SHLIBDIR}
. else
LDFLAGS+= -static
. endif
.else
. if ${OPSYS} == "SunOS"
PLIST_SRC= ${PKGDIR}/PLIST.dynamic ${PKGDIR}/PLIST
. else
LDFLAGS+= ${COMPILER_RPATH_FLAG}${PREFIX}/lib/zsh
. if ${OPSYS} == "Linux" || ${OPSYS} == "IRIX" || ${OPSYS} == "OpenBSD"
PLIST_SRC+= ${PKGDIR}/PLIST.terminfo
. elif ${OPSYS} == "Interix"
PLIST_SRC+= ${PKGDIR}/PLIST.terminfo ${PKGDIR}/PLIST.shlibs
. else
PLIST_SRC+= ${PKGDIR}/PLIST.shlibs
. endif
PLIST_SRC+= ${PKGDIR}/PLIST.dynamic ${PKGDIR}/PLIST
. endif
.endif
.if ${OPSYS} == "Interix"
CONFIGURE_ARGS+=--without-tcsetpgrp
.elif ${OPSYS} == "IRIX"
CONFIGURE_ARGS+=--with-tcsetpgrp
.endif
.undef MANZ
PKG_SHELL= bin/zsh
INSTALL_TARGET= install install.info
post-install:
@${INSTALL_DATA_DIR} ${PREFIX}/share/doc/zsh
@cd ${WRKSRC}/Etc; ${INSTALL_DATA} BUGS FAQ \
${PREFIX}/share/doc/zsh
@cd ${WRKSRC}; ${INSTALL_DATA} FEATURES NEWS \
${PREFIX}/share/doc/zsh
# Utilize Zsh's test framework.
# Testing of dynamic shell only works after install has been done
#
.PHONY: do-test do-su-test real-su-test
do-test: do-su-test
do-su-test:
@${_PKG_SILENT}${_PKG_DEBUG} \
${ECHO_MSG} "*** Warning: This test needs to be run as root"
@${_PKG_SILENT}${_PKG_DEBUG} \
realtarget="real-su-test"; \
action="install"; \
${_SU_TARGET}
real-su-test:
@${_PKG_SILENT}${_PKG_DEBUG} \
${ECHO_MSG} "${_PKGSRC_IN}> Testing for ${PKGNAME}"
@cd ${WRKSRC} && ${MAKE} check
@cd ${WRKSRC}/Test && ${MAKE} clean