###############################################################################
#
# TigerVNC (Xvnc server & vncviewer) Makefile
# Based on Fedora's tigervnc.spec revision 1.20 from
#
#
# Permission is hereby granted, free of charge, to any person obtaining a
# copy of this software and associated documentation files (the "Software"),
# to deal in the Software without restriction, including without limitation
# the rights to use, copy, modify, merge, publish, distribute, sublicense,
# Software is furnished to do so, subject to the following conditions:
#
# The above copyright notice and this permission notice (including the next
# paragraph) shall be included in all copies or substantial portions of the
# Software.
#
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
# DEALINGS IN THE SOFTWARE.
#
# Package name used in tarballs
# Package metadata
# Version number (used in path names)
# Checksums for upstream tarball
# Source tarball
# Xorg server source tarball to use sources from
# Java VNCviewer applet for connecting from a web browser
# Download site for source
# Patches to apply to source after unpacking, in order
# TigerVNC 1.1 doesn't fully support out-of-tree builds, so clone the source
# Disable parfait build with 1.3 - 17759056
# ARC cases that covered this module
# PSARC/2007/545 Xvnc
# LSARC/2007/625 vncviewer
# PSARC/2009/592 TigerVNC 1.0
# Man pages to apply Sun footer to & attributes to list
# Additional pkg(5) package name used for vncviewer package
# Override specific attributes for specific man pages
-o '{Interface Stability, Path: Committed, Options: Volatile}'
# Compiler to use
# Make command to use
# Xvnc has to configure, build, and install in different directories due to
# the mixed codebases and unusual directory layout
# Environment variable options to GNU autoconf configure script
# Have to remove CFLAGS entries from default LDFLAGS to avoid conflicts
# with the C++ compiler we use instead
# Command line options to GNU autoconf configure script for vnc clients
# Binaries that were linked to isaexec on x86 to choose 32-bit or 64-bit,
# now just symlinks from amd64 to parent directory
# Merge in additional sources from Xorg tarball & sun-src directory
# This step has to be done before default_source, so that patches applied
# in that step work correctly.
$(XORG_TARBALL):
# Command line options to GNU autoconf configure script for Xvnc
# Disable all the things we don't need in the Xvnc build since we
# get them in the normal Xorg build instead
# Disable building Xorg hardware device support that Xvnc can't use
# The X server unit tests currently depend on the Xorg ddx being built
MODULE_CPPFLAGS = \
-D__extension__=\"\" \
CFLAGS_gcc += -fPIC
# Needed by unix/xorg-x11-server-source/hw/vnc/Makefile.am to find libpixman
# headers in proto area after solaris-port.patch is applied
# Run configure script for Xvnc
$(INSTALL_SCRIPT) -m 0444 \
# Java VNCviewer applet for connecting from a web browser
mkdir -p $(JAVA_INSTALL_DIR)
# Metadata for vncviewer package
mkdir -p $@