freebsd-ports/net/tigervnc/Makefile
Niclas Zeising 5a4c543c2b The FreeBSD graphics/x11 team proudly presents
a kwm, zeising production:

MESA 9.1.6

Starring:
Mesa 9.1.6, including libGL, libGLU and dri (new xorg only)
Addition of libEGL and libglesv2
KMS support for ATI graphics cards in 10-current (new xorg only)
Improved sparc64 support for new xorg. [1]
pixman 0.30.2, including shlib bump and portrevision bumps
libX11 1.6.2
Make absolute pointing devices work with x11-drivers/xf86-input-mouse
x11-drivers/xf86-video-ati 7.2.0 for 10-current (KMS aware ati driver)

Also starring:
Updates to drivers and other libraries and utilities

Additional notes:
When updating MESA related ports (libGL, dri) you need to remove old versions
first.  See UPDATING for details.

PR:		ports/181962 [2]
Submitted by:	marius [1]
		zeising [2]
Exp-run by:	bdrewery
Approved by:	portmgr (bdrewery)

Thanks to all who helped testing!
2013-09-29 17:01:41 +00:00

164 lines
5.1 KiB
Makefile

# Created by: Koichiro IWAO <meta+ports@vmeta.jp>
# $FreeBSD$
PORTNAME= tigervnc
PORTVERSION= 1.3.0
PORTREVISION= 1
CATEGORIES= net x11-servers
MASTER_SITES= SF:tigervnc
MASTER_SITE_SUBDIR= ${PORTNAME}/${PORTNAME}/${PORTVERSION}/:tigervnc
DISTFILES= ${PORTNAME}-${PORTVERSION}.tar.bz2:tigervnc
MAINTAINER= meta+ports@vmeta.jp
COMMENT= High-performance, platform-neutral implementation of VNC
LICENSE= GPLv2
PATCH_DEPENDS= ${NONEXISTENT}:${PORTSDIR}/x11-servers/xorg-server:patch
BUILD_DEPENDS= ${LOCALBASE}/include/GL/internal/dri_interface.h:${PORTSDIR}/graphics/dri \
${LOCALBASE}/libdata/pkgconfig/fontutil.pc:${PORTSDIR}/x11-fonts/font-util \
bash:${PORTSDIR}/shells/bash
# almost equivalent to x11-servers/xorg-server's
RUN_DEPENDS= ${LOCALBASE}/share/X11/xkb/rules/base:${PORTSDIR}/x11/xkeyboard-config \
xkbcomp:${PORTSDIR}/x11/xkbcomp
CONFLICTS= tridiavnc-[0-9]* \
tightvnc-[0-9]* \
vnc-[0-9]*
USES= cmake gmake pkgconfig
USE_GL= gl
USE_AUTOTOOLS+= autoconf:env automake:env libtool:env
USE_PYTHON= yes
USE_LDCONFIG= yes
USE_OPENSSL= yes
USE_XORG+= bigreqsproto compositeproto damageproto fixesproto fontsproto glproto \
inputproto kbproto pixman randrproto renderproto resourceproto \
scrnsaverproto videoproto xau xdmcp xext xkbfile xcmiscproto xextproto \
xfont xproto xrandr xtrans xtst xorg-macros
MAN1+= vncpasswd.1 \
x0vncserver.1 \
vncserver.1 \
vncconfig.1 \
Xvnc.1
CFLAGS+= -fPIC
OPTIONS_DEFINE= GNUTLS NLS PAM VIEWER HPJPG
OPTIONS_DEFAULT= GNUTLS NLS PAM VIEWER
VIEWER_DESC= Build vncviewer
HPJPG_DESC= Build with High-Performance JPEG support
NO_STAGE= yes
.include <bsd.port.options.mk>
CMAKE_ARGS= -G "Unix Makefiles" -DCMAKE_INSTALL_PREFIX=${PREFIX}
.if ${PORT_OPTIONS:MGNUTLS}
LIB_DEPENDS+= libtasn1.so:${PORTSDIR}/security/libtasn1 \
libgcrypt.so:${PORTSDIR}/security/libgcrypt \
libgpg-error.so:${PORTSDIR}/security/libgpg-error \
libgnutls.so:${PORTSDIR}/security/gnutls
CONFIGURE_ARGS+= --enable-glx-tls
CMAKE_ARGS+= -DENABLE_GNUTLS=1
.else
CMAKE_ARGS+= -DENABLE_GNUTLS=0
.endif
.if ${PORT_OPTIONS:MNLS}
USES+= gettext
CMAKE_ARGS+= -DENABLE_NLS=1
PLIST_SUB+= NLS=""
.else
CMAKE_ARGS+= -DENABLE_NLS=0
PLIST_SUB+= NLS="@comment "
.endif
.if ${PORT_OPTIONS:MPAM}
CMAKE_ARGS+= -DENABLE_PAM=1
.else
CMAKE_ARGS+= -DENABLE_PAM=0
.endif
.if ${PORT_OPTIONS:MVIEWER}
CMAKE_ARGS+= -DENABLE_VIEWER=1
LIB_DEPENDS+= libpng15.so:${PORTSDIR}/graphics/png \
libfltk.so:${PORTSDIR}/x11-toolkits/fltk
USE_XORG+= xcursor xfixes xft xinerama
MAN1+= vncviewer.1
PLIST_SUB+= VIEWER=""
INSTALLS_ICONS= yes
DESKTOP_ENTRIES= "TigerVNC viewer" "Connect to VNC server and display remote desktop" \
"${PREFIX}/share/icons/hicolor/scalable/apps/${PORTNAME}.svg" \
"vncviewer" "Network;" false
.else
PLIST_SUB+= VIEWER="@comment "
.endif
.if ${PORT_OPTIONS:MHPJPG}
LIB_DEPENDS+= libturbojpeg.so:${PORTSDIR}/graphics/libjpeg-turbo
.else
LIB_DEPENDS+= libjpeg.so:${PORTSDIR}/graphics/jpeg
.endif
MAKE_ARGS+= TIGERVNC_SRCDIR=${WRKSRC}
CONFIGURE_ARGS+= \
--prefix=${PREFIX} --mandir=${PREFIX}/man/ \
--docdir=${PREFIX}/share/doc/${PORTNAME}/ --with-pic --without-dtrace \
--disable-static --disable-dri \
--disable-xinerama --disable-xvfb --disable-xnest --disable-xorg \
--disable-dmx --disable-xwin --disable-xephyr --disable-kdrive \
--disable-config-dbus --disable-config-hal \
--disable-dri2 --enable-install-libxf86config --enable-glx \
--with-default-font-path="catalogue:${PREFIX}/share/fonts,built-ins" \
--with-xkb-path=${PREFIX}/share/X11/xkb \
--with-xkb-output=/var/lib/xkb \
--with-xkb-bin-directory=${PREFIX}/bin \
--with-serverconfig-path=${PREFIX}/lib/X11 \
--disable-selective-werror
.ifdef WITH_NEW_XORG
CONFIGURE_ARGS+= --with-fontrootdir=${PREFIX}/share/fonts
.else
CONFIGURE_ARGS+= --with-fontdir=${PREFIX}/share/fonts
.endif
.include <bsd.port.pre.mk>
.ifdef WITH_NEW_XORG
TIGERVNC_XORG_PATCH_VER= 112
.else
TIGERVNC_XORG_PATCH_VER= 17
.endif
# import from x11-server/xorg-server/Makefile
.ifdef WITH_OPENSSL_BASE
# The reason why I use this is cause openssl from base doesn't install a .pc file
# and configure will fail trying to find it. Setting both of those variables to
# a *non-empty* value by-passes the pkg-config check.
CONFIGURE_ENV= SHA1_LIB="-L/usr/lib -lcrypto" SHA1_CFLAGS="-I/usr/include"
.endif
XORG_WRKDIR= ${MAKE} -C ${PORTSDIR}/x11-servers/xorg-server -VWRKSRC
pre-patch:
@${CP} -R `${XORG_WRKDIR}`/ ${WRKSRC}/unix/xserver/
post-patch:
@cd ${WRKSRC}/unix/xserver/ && ${PATCH} -p1 < ${WRKSRC}/unix/xserver${TIGERVNC_XORG_PATCH_VER}.patch
post-configure:
@cd ${WRKSRC}/unix/xserver/ && ${SETENV} ${CONFIGURE_ENV} ${AUTORECONF} -fiv
@cd ${WRKSRC}/unix/xserver/ && ${SETENV} ${CONFIGURE_ENV} ./configure ${CONFIGURE_ARGS}
post-build:
@cd ${WRKSRC}/unix/xserver/ && ${SETENV} ${MAKE_ENV} ${GMAKE} ${MAKE_ARGS} SHELL=${LOCALBASE}/bin/bash
post-install:
@cd ${WRKSRC}/unix/xserver/hw/vnc/ && ${SETENV} ${MAKE_ENV} ${GMAKE} ${MAKE_ARGS} install
.if ${PORT_OPTIONS:MVIEWER}
@${MKDIR} ${PREFIX}/share/icons/hicolor/scalable/apps/
@cd ${WRKSRC}/media/ && ${INSTALL_DATA} icons/tigervnc.svg ${PREFIX}/share/icons/hicolor/scalable/apps/
.endif
.include <bsd.port.post.mk>