freebsd-ports/net/vnc/Makefile
Mark Linimon 581e69adb2 Set USE_PERL5/WANT_PERL as appropriate, for ports that either depend on
perl unconditonally, or conditionally.  To be able to conditionalize the
inclusion of bsd.perl.mk, they now need to be defined before the inclusion
of bsd.port.pre.mk.

Hat:		portmgr
2007-10-07 05:45:04 +00:00

129 lines
3.6 KiB
Makefile

# New ports collection makefile for: vnc
# Date created: 24 February 1998
# Whom: msmith
#
# $FreeBSD$
#
PORTNAME= vnc
PORTVERSION= 4.1.2
PORTREVISION= 2
CATEGORIES= net ipv6
MASTER_SITES= http://www.realvnc.com/:vnc
DISTNAME= vnc-4_1_2-unixsrc
DISTFILES= ${DISTNAME}${EXTRACT_SUFX}:vnc
DIST_SUBDIR= xc
MAINTAINER= james@now.ie
COMMENT= Display X and Win32 desktops on remote X/Win32/Java displays
GNU_CONFIGURE= yes
# The vnc supplied zlib seg. faults if compiled with -O
CONFIGURE_ARGS= --with-installed-zlib
USE_GCC= 3.4
USE_XLIB= yes
USE_XPM= yes
WANT_PERL= yes
WRKSRC= ${WRKDIR}/${DISTNAME}/unix
PLIST= ${WRKDIR}/pkg-plist
CONFLICTS= tightvnc-[0-9]* tridiavnc-[0-9]*
OPTIONS= SERVER "Install VNC server components" on
MAN1= vncviewer.1 \
vncpasswd.1 \
vncconfig.1 \
x0vncserver.1
.include <bsd.port.pre.mk>
.if !defined(WITHOUT_SERVER)
# This is a placeholder MASTER_SITES entry -- see the pre-fetch target.
MASTER_SITES+= ${MASTER_SITE_XFREE:S/$/:x/}
MASTER_SITE_SUBDIR+= 4.3.0/:x
DISTFILES+= X430src-1.tgz:x \
X430src-2.tgz:x \
X430src-3.tgz:x
RUN_DEPENDS+= xauth:${X_CLIENTS_PORT} \
${X11BASE}/lib/X11/fonts/misc/6x13-ISO8859-1.pcf.gz:${X_FONTS_MISC_PORT}
USE_PERL5= yes
EXTRA_PATCHES+= ${WRKSRC}/xc.patch \
${PATCHDIR}/vnc.def-patch \
${PATCHDIR}/FreeBSD.cf-patch \
${PATCHDIR}/extra-patch-fix_Xvnc_no_valid_address
MAN1+= Xvnc.1 \
vncserver.1
PLIST_SUB+= SERVER=""
.else
PLIST_SUB+= SERVER="@comment "
.endif
# No direct URL for VNC -- have to pseudo-submit their webform.
pre-fetch:
@${MKDIR} ${DISTDIR}/${DIST_SUBDIR} && cd ${DISTDIR}/${DIST_SUBDIR} && \
${FETCH_CMD} -o ${DISTNAME}.tar.gz 'http://www.realvnc.com/cgi-bin/download.cgi?product=free4/src/unix&acceptLicense=1&haveDetails=1&filetype=tar_gz'
post-extract:
.if !defined(WITHOUT_SERVER)
@cd ${WRKSRC} && ${TAR} -cf - -C ${WRKDIR} xc | ${TAR} -xf - && \
${RM} -rf ${WRKDIR}/xc
.endif
post-patch:
.if !defined(WITHOUT_SERVER)
@${REINPLACE_CMD} -e 's|%%X11BASE%%|${X11BASE}|g' \
${WRKSRC}/xc/config/cf/vnc.def
@${REINPLACE_CMD} -e 's|%%CC%%|${CC}|g' -e 's|%%CXX%%|${CXX}|g' \
${WRKSRC}/xc/config/cf/FreeBSD.cf
.endif
post-build:
.if defined(WITHOUT_SERVER)
@${ECHO_MSG} "Skipping build of VNC server."
.else
cd ${WRKSRC}/xc && make CC=${CC} CXX=${CXX} World
.endif
pre-install:
@${CP} ${PKGDIR}/pkg-plist ${PLIST}
.if !defined(WITHOUT_SERVER)
@if [ -f ${WRKSRC}/xc/programs/Xserver/vnc/module/vnc.so ]; then \
${ECHO_CMD} @cwd ${X11BASE} ; \
${ECHO_CMD} lib/modules/extensions/vnc.so ; \
${ECHO_CMD} "@dirrmtry lib/modules/extensions" ; \
${ECHO_CMD} "@dirrmtry lib/modules" ; \
${ECHO_CMD} "@dirrmtry lib" ; \
fi >> ${PLIST}
.endif
do-install:
.for f in vncviewer vncpasswd vncconfig x0vncserver
${INSTALL_PROGRAM} ${WRKSRC}/${f}/${f} ${PREFIX}/bin
${INSTALL_MAN} ${WRKSRC}/${f}/${f}.man ${PREFIX}/man/man1/${f}.1
.endfor
.if !defined(WITHOUT_SERVER)
@${REINPLACE_CMD} -e \
's|/usr/local/vnc/classes|${DATADIR}/classes|g' \
${WRKSRC}/vncserver
${INSTALL_PROGRAM} ${WRKSRC}/xc/programs/Xserver/Xvnc ${PREFIX}/bin
${INSTALL_SCRIPT} ${WRKSRC}/vncserver ${PREFIX}/bin
@if [ -f ${WRKSRC}/xc/programs/Xserver/vnc/module/vnc.so ]; then \
${MKDIR} ${X11BASE}/lib/modules/extensions ; \
${INSTALL_PROGRAM} \
${WRKSRC}/xc/programs/Xserver/vnc/module/vnc.so \
${X11BASE}/lib/modules/extensions ; \
fi
${INSTALL_MAN} ${WRKSRC}/xc/programs/Xserver/Xvnc.man \
${PREFIX}/man/man1/Xvnc.1
${INSTALL_MAN} ${WRKSRC}/vncserver.man ${PREFIX}/man/man1/vncserver.1
${MKDIR} ${DATADIR}/classes
${INSTALL_DATA} ${WRKSRC}/../common/javabin/* ${DATADIR}/classes
.endif
.include <bsd.port.post.mk>