* Clean-up. * Use static pkg-plist. * Use OPTIONS.
State Changed From-To: open->feedback Awaiting maintainers feedback
State Changed From-To: feedback->open Feedback timeout.
State Changed From-To: open->feedback Your patch is incorrect. Note that the port may or may not compile vnc.so (X server module). In the old port, both ways are fine and supported. In your port, it breaks when vnc.so is not built. Please fix.
Responsible Changed From-To: freebsd-ports-bugs->pav Track
>Submitter-Id: current-users >Originator: Alejandro Pulver >Organization: >Confidential: no >Synopsis: Re: ports/92691: [UPDATE] net/vnc: clean-up >Severity: non-critical >Priority: low >Category: ports >Class: update >Release: FreeBSD 5.4-RELEASE i386 >Environment: System: FreeBSD 5.4-RELEASE #1: Sat Feb 25 17:20:39 ART 2006 ale@phobos.mars.bsd:/usr/src/sys/i386/compile/ATHLON-ALE >Description: * This new diff maintains the dynamic (optional) installation of vnc.so. >How-To-Repeat: >Fix: --- vnc.diff begins here --- diff -urdN /usr/ports/net/vnc/Makefile vnc/Makefile --- /usr/ports/net/vnc/Makefile Sun Jan 22 03:28:47 2006 +++ vnc/Makefile Mon Mar 27 15:06:30 2006 @@ -8,35 +8,14 @@ PORTNAME= vnc PORTVERSION= 4.1.1 CATEGORIES= net ipv6 -# This is a placeholder MASTER_SITES entry -- see the pre-fetch target. MASTER_SITES= http://www.realvnc.com/:vnc -.if !defined(WITHOUT_SERVER) -MASTER_SITES+= ${MASTER_SITE_XFREE:S/$/:x/} -MASTER_SITE_SUBDIR+= 4.3.0/:x -.endif DISTNAME= vnc-4_1_1-unixsrc -DISTFILES= vnc-4_1_1-unixsrc.tar.gz:vnc -.if !defined(WITHOUT_SERVER) -DISTFILES+= X430src-1.tgz:x \ - X430src-2.tgz:x \ - X430src-3.tgz:x -.endif +DISTFILES= ${DISTNAME}${EXTRACT_SUFX}:vnc DIST_SUBDIR= xc MAINTAINER= james@now.ie COMMENT= Display X and Win32 desktops on remote X/Win32/Java displays -.if !defined(WITHOUT_SERVER) -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 -.endif - GNU_CONFIGURE= yes # The vnc supplied zlib seg. faults if compiled with -O CONFIGURE_ARGS= --with-installed-zlib @@ -49,39 +28,53 @@ PLIST= ${WRKDIR}/pkg-plist CONFLICTS= vnc-[0-9]* tightvnc-[0-9]* +OPTIONS= SERVER "Install VNC server components" on + MAN1= vncviewer.1 \ vncpasswd.1 \ vncconfig.1 \ x0vncserver.1 -.if !defined(WITHOUT_SERVER) +.include <bsd.port.pre.mk> + +.if defined(WITH_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 + MAN1+= Xvnc.1 \ vncserver.1 -.endif -.include <bsd.port.pre.mk> +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&filever=4.1.1&filetype=tar_gz&haveDetails=1' -.if !defined(WITHOUT_SERVER) - @${ECHO_MSG} "" - @${ECHO_MSG} " ######################################################" - @${ECHO_MSG} " # Use 'make -DWITHOUT_SERVER ...' if you do not wish #" - @${ECHO_MSG} " # to compile/install the VNC server components. #" - @${ECHO_MSG} " ######################################################" - @${ECHO_MSG} "" -.endif post-extract: -.if !defined(WITHOUT_SERVER) +.if defined(WITH_SERVER) @cd ${WRKSRC} && ${TAR} -cf - -C ${WRKDIR} xc | ${TAR} -xf - && \ ${RM} -rf ${WRKDIR}/xc .endif post-patch: -.if !defined(WITHOUT_SERVER) +.if defined(WITH_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' \ @@ -96,58 +89,42 @@ .endif pre-install: - @${RM} -f ${PLIST} - @${TOUCH} -f ${PLIST} - @${ECHO_CMD} bin/vncviewer >> ${PLIST} - @${ECHO_CMD} bin/vncpasswd >> ${PLIST} - @${ECHO_CMD} bin/vncconfig >> ${PLIST} - @${ECHO_CMD} bin/x0vncserver >> ${PLIST} -.if !defined(WITHOUT_SERVER) - @${ECHO_CMD} bin/Xvnc >> ${PLIST} - @${ECHO_CMD} bin/vncserver >> ${PLIST} - @${ECHO_CMD} share/vnc/classes/index.vnc >> ${PLIST} - @${ECHO_CMD} share/vnc/classes/logo150x150.gif >> ${PLIST} - @${ECHO_CMD} share/vnc/classes/vncviewer.jar >> ${PLIST} - @${ECHO_CMD} @dirrm share/vnc/classes >> ${PLIST} - @${ECHO_CMD} @dirrm share/vnc >> ${PLIST} + @${CP} ${PKGDIR}/pkg-plist ${PLIST} +.if defined(WITH_SERVER) @if [ -f ${WRKSRC}/xc/programs/Xserver/vnc/module/vnc.so ]; then \ - ${ECHO_CMD} @cwd ${X11BASE} >> ${PLIST} ; \ - ${ECHO_CMD} lib/modules/extensions/vnc.so >> ${PLIST} ; \ - ${ECHO_CMD} "@dirrmtry lib/modules/extensions" >> ${PLIST} ; \ - ${ECHO_CMD} "@dirrmtry lib/modules" >> ${PLIST} ; \ - ${ECHO_CMD} "@dirrmtry lib" >> ${PLIST} ; \ - fi + ${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: - ${INSTALL_PROGRAM} ${WRKSRC}/vncviewer/vncviewer ${PREFIX}/bin/vncviewer - ${INSTALL_PROGRAM} ${WRKSRC}/vncpasswd/vncpasswd ${PREFIX}/bin/vncpasswd - ${INSTALL_PROGRAM} ${WRKSRC}/vncconfig/vncconfig ${PREFIX}/bin/vncconfig - ${INSTALL_PROGRAM} ${WRKSRC}/x0vncserver/x0vncserver \ - ${PREFIX}/bin/x0vncserver - ${INSTALL_MAN} ${WRKSRC}/vncviewer/vncviewer.man \ - ${PREFIX}/man/man1/vncviewer.1 - ${INSTALL_MAN} ${WRKSRC}/vncpasswd/vncpasswd.man \ - ${PREFIX}/man/man1/vncpasswd.1 - ${INSTALL_MAN} ${WRKSRC}/vncconfig/vncconfig.man \ - ${PREFIX}/man/man1/vncconfig.1 - ${INSTALL_MAN} ${WRKSRC}/x0vncserver/x0vncserver.man \ - ${PREFIX}/man/man1/x0vncserver.1 -.if !defined(WITHOUT_SERVER) +.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(WITH_SERVER) @${REINPLACE_CMD} -e \ - 's|/usr/local/vnc/classes|${PREFIX}/share/vnc/classes|g' \ + 's|/usr/local/vnc/classes|${DATADIR}/classes|g' \ ${WRKSRC}/vncserver - ${INSTALL_PROGRAM} ${WRKSRC}/xc/programs/Xserver/Xvnc ${PREFIX}/bin/Xvnc - ${INSTALL_SCRIPT} ${WRKSRC}/vncserver ${PREFIX}/bin/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_DATA} ${WRKSRC}/xc/programs/Xserver/vnc/module/vnc.so ${X11BASE}/lib/modules/extensions; \ + ${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} ${PREFIX}/share/vnc/classes - ${CP} ${WRKDIR}/${DISTNAME}/common/javabin/* ${PREFIX}/share/vnc/classes + ${MKDIR} ${DATADIR}/classes + ${INSTALL_DATA} ${WRKSRC}/../common/javabin/* ${DATADIR}/classes + ${MKDIR} ${X11BASE}/lib/modules/extensions + ${INSTALL_PROGRAM} ${WRKSRC}/xc/programs/Xserver/vnc/module/vnc.so \ + ${X11BASE}/lib/modules/extensions .endif .include <bsd.port.post.mk> diff -urdN /usr/ports/net/vnc/pkg-descr vnc/pkg-descr --- /usr/ports/net/vnc/pkg-descr Sun Nov 24 18:47:11 2002 +++ vnc/pkg-descr Mon Mar 27 14:28:02 2006 @@ -1,7 +1,7 @@ -"VNC stands for Virtual Network Computing. It is, in essence, a remote - display system which allows you to view a computing 'desktop' - environment not only on the machine where it is running, but from - anywhere on the Internet and from a wide variety of machine - architectures." +VNC stands for Virtual Network Computing. It is, in essence, a remote +display system which allows you to view a computing 'desktop' +environment not only on the machine where it is running, but from +anywhere on the Internet and from a wide variety of machine +architectures. WWW: http://www.realvnc.com/ diff -urdN /usr/ports/net/vnc/pkg-plist vnc/pkg-plist --- /usr/ports/net/vnc/pkg-plist Wed Dec 31 21:00:00 1969 +++ vnc/pkg-plist Mon Mar 27 14:38:48 2006 @@ -0,0 +1,11 @@ +bin/vncviewer +bin/vncpasswd +bin/vncconfig +bin/x0vncserver +%%SERVER%%bin/Xvnc +%%SERVER%%bin/vncserver +%%SERVER%%%%DATADIR%%/classes/index.vnc +%%SERVER%%%%DATADIR%%/classes/logo150x150.gif +%%SERVER%%%%DATADIR%%/classes/vncviewer.jar +%%SERVER%%@dirrm %%DATADIR%%/classes +%%SERVER%%@dirrm %%DATADIR%% --- vnc.diff ends here ---
State Changed From-To: feedback->closed Committed, thanks!