From f0459175e78ea63a212299eb533ebf8dbd9dedab Mon Sep 17 00:00:00 2001 From: =?utf8?q?Peter=20=C3=85strand?= Date: Wed, 18 Mar 2009 14:45:46 +0000 Subject: [PATCH] Added scripts for building Xvnc with Xorg 1.5. git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@3685 3789f03b-4d11-0410-bbf8-ca57d06f2519 --- unix/build-xorg-7.4 | 155 ++++++++++++++++++++++++++++++++++++++++++++ unix/download-xorg | 82 +++++++++++++++++++++++ 2 files changed, 237 insertions(+) create mode 100755 unix/build-xorg-7.4 create mode 100755 unix/download-xorg diff --git a/unix/build-xorg-7.4 b/unix/build-xorg-7.4 new file mode 100755 index 00000000..7b5c525c --- /dev/null +++ b/unix/build-xorg-7.4 @@ -0,0 +1,155 @@ +#!/bin/bash +# -*- mode: shell-script; coding: UTF-8 -*- +# +# Build Xvnc with Xorg 7.4 +# + +set -e + +PREFIX="/tmp/xorg-7.4-${USER}" +export ACLOCAL="aclocal -I ${PREFIX}/share/aclocal" +export PKG_CONFIG_PATH="${PREFIX}/lib/pkgconfig" +MAKE="make" + +modules="dri2proto \ + libpthread-stubs \ + glproto \ + xf86vidmodeproto \ + xextproto \ + xproto \ + kbproto \ + inputproto \ + xcmiscproto \ + bigreqsproto \ + fixesproto \ + damageproto \ + xf86driproto \ + randrproto \ + renderproto \ + scrnsaverproto \ + resourceproto \ + fontsproto \ + videoproto \ + compositeproto \ + xineramaproto \ + fontcacheproto \ + libdrm \ + util-macros \ + libXau \ + xtrans \ + libXdmcp \ + libX11 \ + libXext \ + libXxf86vm \ + libICE \ + libSM \ + libXt \ + libXmu \ + libXfixes \ + libXdamage \ + libXi \ + evieext \ + libxkbfile \ + libfontenc \ + libXfont \ + libpciaccess \ + xkbcomp \ + pixman" + + +init() +{ + mkdir -p xorg + update_modules + pushd xserver + patch -p1 < ../xserver15.patch + autoreconf -fiv +} + + +update_modules() +{ + pushd xorg + ../download-xorg + for module in ${modules}; do + tar jxf ${module}.tar.bz2 + done + tar jxf Mesa.tar.bz2 + tar jxf xorg-server.tar.bz2 + cp -r xorg-server-1.*/* ../xserver + popd +} + + +build () +{ + + # Build VNC + make distclean || true + ./configure --prefix=${PREFIX} + make + + # Build Xorg + pushd xorg + for module in ${modules}; do + extraoptions="" + cd ${module}-* + echo ====================== + echo configuring ${module} + echo ====================== + if [ "${module}" = "libX11" ]; then + extraoptions="${extraoptions} --without-xcb" + fi + ./configure --prefix="${PREFIX}" ${extraoptions} + echo ====================== + echo building ${module} + echo ====================== + if [ $? -ne 0 ]; then + echo "Failed to configure ${module}." + exit + fi + ($MAKE); + make install + cd .. + done + + # build mesa + pushd Mesa-* + ./configure --prefix=${PREFIX} --with-driver=dri --disable-glut --without-demos + if [ $? -ne 0 ]; then + echo "Failed to configure Mesa." + exit + fi + ($MAKE) + make install + popd + + popd + + # build xserver + cd xserver + ./configure --prefix=${PREFIX} --disable-xinerama --disable-xvfb --disable-xnest --disable-xorg + if [ $? -ne 0 ]; then + echo "Failed to configure X server." + exit + fi + ($MAKE) + make install + cd .. +} + + +case "$1" in + init) + init + ;; + build) + build + ;; + update) + update_modules + ;; + *) + echo "Usage: $0 init | build | update" + exit 3 +esac diff --git a/unix/download-xorg b/unix/download-xorg new file mode 100755 index 00000000..c397329b --- /dev/null +++ b/unix/download-xorg @@ -0,0 +1,82 @@ +#!/usr/bin/env python +# -*-mode: python; coding: UTF-8 -*- + +import os +import glob +import subprocess + +#INDI = "http://ftp.sunet.se/pub/X11/ftp.x.org/individual" +INDI = "http://ftp.x.org/pub/individual/" +PROTO = INDI + "proto/" +LIB = INDI + "lib/" +SERVER = INDI + "xserver/" +UTIL = INDI + "util/" +DATA = INDI + "data/" +APP = INDI + "app/" + +packages = { + "damageproto": PROTO + "damageproto-1.1.0.tar.bz2", + "fixesproto": PROTO + "fixesproto-4.0.tar.bz2", + "resourceproto": PROTO + "resourceproto-1.0.2.tar.bz2", + "fontsproto": PROTO + "fontsproto-2.0.2.tar.bz2", + "fontcacheproto" : PROTO + "fontcacheproto-0.1.2.tar.bz2", + "bigreqsproto": PROTO + "bigreqsproto-1.0.2.tar.bz2", + "kbproto": PROTO + "kbproto-1.0.3.tar.bz2", + "inputproto": PROTO + "inputproto-1.4.4.tar.bz2", + "glproto": PROTO + "glproto-1.4.9.tar.bz2", + "xineramaproto": PROTO + "xineramaproto-1.1.2.tar.bz2", + "randrproto": PROTO + "randrproto-1.2.2.tar.bz2", + "scrnsaverproto": PROTO + "scrnsaverproto-1.1.0.tar.bz2", + "renderproto": PROTO + "renderproto-0.9.3.tar.bz2", + "evieext": PROTO + "evieext-1.0.2.tar.bz2", + "xcmiscproto": PROTO + "xcmiscproto-1.1.2.tar.bz2", + "xextproto": PROTO + "xextproto-7.0.3.tar.bz2", + "xf86driproto": PROTO + "xf86driproto-2.0.4.tar.bz2", + "dri2proto": PROTO + "dri2proto-1.1.tar.bz2", + "compositeproto": PROTO + "compositeproto-0.4.tar.bz2", + "xf86vidmodeproto": PROTO + "xf86vidmodeproto-2.2.2.tar.bz2", + "trapproto": PROTO + "trapproto-3.4.3.tar.bz2", + "videoproto": PROTO + "videoproto-2.2.2.tar.bz2", + "xproto": PROTO + "xproto-7.0.13.tar.bz2", + + "libxkbfile": LIB + "libxkbfile-1.0.5.tar.bz2", + "libXxf86vm": LIB + "libXxf86vm-1.0.2.tar.bz2", + "libXext": LIB + "libXext-1.0.4.tar.bz2", + "libfontenc": LIB + "libfontenc-1.0.4.tar.bz2", + "libXau": LIB + "libXau-1.0.4.tar.bz2", + "libXfont": LIB + "libXfont-1.3.4.tar.bz2", + "libXfixes": LIB + "libXfixes-4.0.3.tar.bz2", + "libSM": LIB + "libSM-1.1.0.tar.bz2", + "libXi": LIB + "libXi-1.1.3.tar.bz2", + "libXmu": LIB + "libXmu-1.0.4.tar.bz2", + "libX11": LIB + "libX11-1.1.5.tar.bz2", + "libXdmcp": LIB + "libXdmcp-1.0.2.tar.bz2", + "xtrans": LIB + "xtrans-1.2.2.tar.bz2", + "libXt": LIB + "libXt-1.0.5.tar.bz2", + "libpciaccess": LIB + "libpciaccess-0.10.4.tar.bz2", + "libICE": LIB + "libICE-1.0.4.tar.bz2", + "pixman": LIB + "pixman-0.12.0.tar.bz2", + "libXdamage": LIB + "libXdamage-1.1.1.tar.bz2", + + "util-macros": UTIL + "util-macros-1.1.6.tar.bz2", + "xorg-server": SERVER + "xorg-server-1.5.3.tar.bz2", + "xkeyboard-config": DATA + "xkeyboard-config-1.4.tar.bz2", + "xkbcomp": APP + "xkbcomp-1.0.5.tar.bz2", + + "libdrm": "http://dri.freedesktop.org/libdrm/libdrm-2.4.0.tar.bz2", + "Mesa": "http://downloads.sourceforge.net/mesa3d/MesaLib-7.2.tar.bz2", + "libxcb": "http://xcb.freedesktop.org/dist/libxcb-1.1.91.tar.bz2", + "libpthread-stubs": "http://xcb.freedesktop.org/dist/libpthread-stubs-0.1.tar.bz2", + "xcb-proto": "http://xcb.freedesktop.org/dist/xcb-proto-1.2.tar.bz2", + } + + + +def main(): + for pkg in packages.keys(): + loc = packages[pkg] + fname = pkg + ".tar.bz2" + assert 0 == subprocess.call(["wget", "-O", fname, loc]) + + +main() -- 2.39.5