diff options
author | DRC <dcommander@users.sourceforge.net> | 2010-04-16 07:33:41 +0000 |
---|---|---|
committer | DRC <dcommander@users.sourceforge.net> | 2010-04-16 07:33:41 +0000 |
commit | 2c0ea90ad8ffdcf28859921a844d491b8457b03e (patch) | |
tree | e1856c4f80522d0c9fd9f3d743a62e2a9c793277 /release | |
parent | 0256545d4411437e553699c20e6cd95f45ec690d (diff) | |
download | tigervnc-2c0ea90ad8ffdcf28859921a844d491b8457b03e.tar.gz tigervnc-2c0ea90ad8ffdcf28859921a844d491b8457b03e.zip |
Build wrappers no longer necessary. The Linux cross-compatible build is now part of build-xorg, and Mac recipes are in BUILDING.txt.
git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@4030 3789f03b-4d11-0410-bbf8-ca57d06f2519
Diffstat (limited to 'release')
-rw-r--r-- | release/BUILDING.txt | 169 | ||||
-rwxr-xr-x | release/build-compat-linux | 41 | ||||
-rwxr-xr-x | release/build-compat-linux-m32 | 38 | ||||
-rwxr-xr-x | release/build-compat-osx | 23 | ||||
-rwxr-xr-x | release/build-osx-64 | 17 | ||||
-rwxr-xr-x | release/build-osx-m32 | 18 |
6 files changed, 169 insertions, 137 deletions
diff --git a/release/BUILDING.txt b/release/BUILDING.txt new file mode 100644 index 00000000..afaf9174 --- /dev/null +++ b/release/BUILDING.txt @@ -0,0 +1,169 @@ +******************************************************************************* +** Building TigerVNC +******************************************************************************* + + +================== +Build Requirements +================== + +-- autoconf 2.57 or later + +-- automake 1.7 or later + +-- libtool 1.4 or later + +-- NASM + * 0.98 or later is required for a 32-bit build + * NASM 2.05 or later is required for a 64-bit build + * NASM 2.07 or later is required for a 64-bit build on OS/X (10.6 "Snow + Leopard" or later.) This can be obtained from MacPorts + (http://www.macports.org/). + + The NASM 2.05 RPMs do not work on older Linux systems, such as Enterprise + Linux 4. On such systems, you can easily build and install NASM 2.05 + from the source RPM by executing the following as root: + + ARCH=`uname -m` + wget http://www.nasm.us/pub/nasm/releasebuilds/2.05.01/nasm-2.05.01-1.src.rpm + rpmbuild --rebuild nasm-2.05.01-1.src.rpm + rpm -Uvh /usr/src/redhat/RPMS/$ARCH/nasm-2.05.01-1.$ARCH.rpm + + NOTE: NASM build will fail if texinfo is not installed. + +-- GCC v4.1 or later recommended for best performance + +-- X11 development kit + +-- If building Xvnc: + * Python v2.3 or later + * zlib v1.2 or later + * OpenSSL v0.9.7 or later + + +================= +Building TigerVNC +================= + +The following procedure will build the TigerVNC viewer on Linux and Unix +systems. On 64-bit systems, this may build a 32-bit version of TigerVNC, +depending on the default compiler configuration for your system. See below for +specific build instructions for 64-bit systems. + + cd tigervnc + autoreconf -fiv + sh ./configure [additional configure flags] + make + +NOTE: Running autoreconf is only necessary if building TigerVNC from the SVN +repository. + +Building the TigerVNC server (Xvnc) is a bit trickier. On newer systems, such +as Fedora, Xvnc is typically built to use the X11 shared libraries provided +with the system. This requires a system with Xorg 7.4 or later, however. +Systems with older versions of Xorg must build a "legacy-friendly" version of +the TigerVNC server. This is accomplished by downloading and building the +more recent Xorg modules in a local directory and then building Xvnc such that +it links against the local build of these libraries, not the X11 libraries +installed on the system. The "build-xorg" script in the TigerVNC source +distribution automates this process. + +The following procedure will build both the TigerVNC viewer and a +"legacy-friendly" version of the TigerVNC server: + + cd tigervnc + unix/build-xorg init -version 7.4 + unix/build-xorg build -version 7.4 [-static] [additional configure flags] + +Passing an argument of "-static" to the build command line will generate a +version of Xvnc that has no external dependencies on the X11 shared libraries +or any other distribution-specific shared libraries. This version of Xvnc +should be transportable across multiple O/S distributions. The legacy-friendly +build should work on RedHat Enterprise 4, its contemporaries, and later +systems. It probably will not work on older systems. It has not been tested +on non-Linux systems (yet). + +build-xorg can also be used to rebuild just the TigerVNC server and viewer, +once the X11 modules and other dependencies have been built the first time. +This is convenient for testing changes that just apply to the TigerVNC source +code. To accomplish this, run: + + unix/build-xorg rebuild [additional make flags] + +For instance, + + unix/build-xorg rebuild clean + +will clean both the Xvnc and vncviewer builds without destroying any of the +build configuration or module dependencies. + + +================================== +Build Recipes for Specific Systems +================================== + + +32-bit Build on 64-bit Linux +---------------------------- + +Add + + --host i686-pc-linux-gnu CFLAGS='-O3 -m32' CXXFLAGS='-O3 -m32' + +to the configure and build command lines. + + +64-bit Build on 64-bit OS/X +--------------------------- + +Add + + --host x86_64-apple-darwin10.0.0 NASM=/opt/local/bin/nasm + +to the configure command line. NASM 2.07 or later from MacPorts must be +installed. + + +32-bit Build on 64-bit OS/X +--------------------------- + +Add + + CFLAGS='-O3 -m32' CXXFLAGS='-O3 -m32' LDFLAGS=-m32 + +to the configure command line. + + +32-bit Backward-Compatible Build on 64-bit OS/X +----------------------------------------------- + +Add + + CC=gcc-4.0 CXX=g++-4.0 CFLAGS='-isysroot /Developer/SDKs/MacOSX10.4u.sdk \ + -mmacosx-version-min=10.4 -O3 -m32' \ + CXXFLAGS='-isysroot /Developer/SDKs/MacOSX10.4u.sdk \ + -mmacosx-version-min=10.4 -O3 -m32' \ + LDFLAGS='-isysroot /Developer/SDKs/MacOSX10.4u.sdk \ + -mmacosx-version-min=10.4 -m32' + +to the configure command line. The OS X 10.4 SDK must be installed. + + +******************************************************************************* +** Creating Release Packages +******************************************************************************* + +The following commands can be used to create various types of release packages: + +make dmg + + Create Macintosh package/disk image. This requires the PackageMaker + application, which must be installed in /Developer/Applications/Utilities. + +make udmg + + On 64-bit OS X (10.6 "Snow Leopard" or later), this creates a version of the + Macintosh package/disk image which contains universal i386/x86-64 binaries. + The 32-bit fork of these binaries is backward compatible with OS X 10.4 and + later, whereas the 64-bit fork is compatible with OS X 10.6 and later. OS X + 10.4 compatibility SDK required. diff --git a/release/build-compat-linux b/release/build-compat-linux deleted file mode 100755 index 7d5ac406..00000000 --- a/release/build-compat-linux +++ /dev/null @@ -1,41 +0,0 @@ -#!/bin/sh -# This script wraps build-xorg-7.4 to enable building a version of TigerVNC -# which is compatible across Linux distributions. - -set -e - -if [ "$1" = "" ]; then - echo USAGE: $0 init \| build \| update - exit 0 -fi - -SCRIPTDIR=`dirname $0` -pushd $SCRIPTDIR/../unix -if [ ! -d ./xorg.build/syslib ]; then - mkdir -p ./xorg.build/syslib -fi -CFLAGS='-O3 -static-libgcc' -CXXFLAGS=$CFLAGS -LDFLAGS=$CFLAGS' -L'`pwd`'/xorg.build/syslib' -export CFLAGS -export CXXFLAGS -export LDFLAGS -if [ -f ./xorg.build/syslib/libstdc++.a ]; then - rm -f ./xorg.build/syslib/libstdc++.a -fi -ln -fs `gcc $CFLAGS -print-file-name=libstdc++.a` ./xorg.build/syslib -if [ -f ./xorg.build/syslib/libcrypto.a ]; then - rm -f ./xorg.build/syslib/libcrypto.a -fi -if [ -f ./xorg.build/syslib/libz.a ]; then - rm -f ./xorg.build/syslib/libz.a -fi -if [ "`uname -m`" = "x86_64" ]; then - ln -fs /usr/lib64/libcrypto.a ./xorg.build/syslib - ln -fs /usr/lib64/libz.a ./xorg.build/syslib -else - ln -fs /usr/lib/libcrypto.a ./xorg.build/syslib - ln -fs /usr/lib/libz.a ./xorg.build/syslib -fi -. build-xorg-7.4 $1 -static -popd diff --git a/release/build-compat-linux-m32 b/release/build-compat-linux-m32 deleted file mode 100755 index db4973a1..00000000 --- a/release/build-compat-linux-m32 +++ /dev/null @@ -1,38 +0,0 @@ -#!/bin/sh -# This script wraps build-xorg-7.4 to enable building a version of TigerVNC -# which is compatible across Linux distributions. It is identical to -# build-compat-linux, except that it adds the necessary arguments to cross- -# compile a 32-bit version of TigerVNC on a 64-bit system. - -set -e - -if [ "$1" = "" ]; then - echo USAGE: $0 init \| build \| update - exit 0 -fi - -SCRIPTDIR=`dirname $0` -pushd $SCRIPTDIR/../unix -if [ ! -d ./xorg.build/syslib ]; then - mkdir -p ./xorg.build/syslib -fi -CFLAGS='-m32 -O3 -static-libgcc' -CXXFLAGS=$CFLAGS -LDFLAGS=$CFLAGS' -L'`pwd`'/xorg.build/syslib' -export CFLAGS -export CXXFLAGS -export LDFLAGS -if [ -f ./xorg.build/syslib/libstdc++.a ]; then - rm -f ./xorg.build/syslib/libstdc++.a -fi -ln -fs `gcc $CFLAGS -print-file-name=libstdc++.a` ./xorg.build/syslib -if [ -f ./xorg.build/syslib/libcrypto.a ]; then - rm -f ./xorg.build/syslib/libcrypto.a -fi -if [ -f ./xorg.build/syslib/libz.a ]; then - rm -f ./xorg.build/syslib/libz.a -fi -ln -fs /usr/lib/libcrypto.a ./xorg.build/syslib -ln -fs /usr/lib/libz.a ./xorg.build/syslib -. build-xorg-7.4 $1 -static --host i686-pc-linux-gnu -popd diff --git a/release/build-compat-osx b/release/build-compat-osx deleted file mode 100755 index af492c5f..00000000 --- a/release/build-compat-osx +++ /dev/null @@ -1,23 +0,0 @@ -#!/bin/sh -# This script builds a version of TigerVNC on OS/X 10.5 or later which is -# compatible with OS/X 10.4 or later. The OS/X 10.4 compatibility SDK (part -# of XCode) must be installed. - -set -e - -SCRIPTDIR=`dirname $0` -pushd $SCRIPTDIR/.. -CC=gcc-4.0 -CXX=g++-4.0 -CPP=cpp-4.0 -CFLAGS='-isysroot /Developer/SDKs/MacOSX10.4u.sdk -mmacosx-version-min=10.4 -O3 -m32' -CXXFLAGS=$CFLAGS -LDFLAGS=$CFLAGS -CPPFLAGS=$CFLAGS -export CFLAGS CXXFLAGS LDFLAGS CPPFLAGS CC CXX CPP -if [ ! -f ./configure ]; then - autoreconf -fiv -fi -configure --x-libraries=/usr/X11R6/lib/ -make -popd diff --git a/release/build-osx-64 b/release/build-osx-64 deleted file mode 100755 index 3328a8ad..00000000 --- a/release/build-osx-64 +++ /dev/null @@ -1,17 +0,0 @@ -#!/bin/sh -# This script builds a 64-bit version of TigerVNC on OS/X 10.6 or later. -# NASM 2.07 or later from MacPorts must be installed in /opt/local. - -set -e - -SCRIPTDIR=`dirname $0` -pushd $SCRIPTDIR/.. -CFLAGS='-O3' -CXXFLAGS=$CFLAGS -export CFLAGS CXXFLAGS -if [ ! -f ./configure ]; then - autoreconf -fiv -fi -configure --host=x86_64-apple-darwin10.0.0 NASM=/opt/local/bin/nasm -make -popd diff --git a/release/build-osx-m32 b/release/build-osx-m32 deleted file mode 100755 index 02cb2954..00000000 --- a/release/build-osx-m32 +++ /dev/null @@ -1,18 +0,0 @@ -#!/bin/sh -# This script builds a 32-bit version of TigerVNC on OS/X 10.4 or later. The -# resulting version of TigerVNC is not backward compatible. - -set -e - -SCRIPTDIR=`dirname $0` -pushd $SCRIPTDIR/.. -CFLAGS='-O3 -m32' -CXXFLAGS=$CFLAGS -LDFLAGS=$CFLAGS -export CFLAGS CXXFLAGS LDFLAGS -if [ ! -f ./configure ]; then - autoreconf -fiv -fi -configure -make -popd |