On Wed, 18 Mar 2009, Peter Åstrand wrote:

I'm working on it as well :)

The attached patch adds a script (plus a helper script) that downloads Xorg 7.4 and builds it together with Xvnc. By using these scripts, I've managed to build Xvnc on a standard RHEL5 system. Does this make sense, should I commit?


Best regards, ---
Peter Åstrand           ThinLinc Chief Developer
Cendio AB               http://www.cendio.com
Wallenbergs gata 4
583 30 Linköping        Phone: +46-13-21 46 00
Index: build-xorg-7.4
===================================================================
--- build-xorg-7.4      (revision 0)
+++ build-xorg-7.4      (revision 0)
@@ -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

Property changes on: build-xorg-7.4
___________________________________________________________________
Name: svn:executable
   + *

Index: download-xorg
===================================================================
--- download-xorg       (revision 0)
+++ download-xorg       (revision 0)
@@ -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()

Property changes on: download-xorg
___________________________________________________________________
Name: svn:executable
   + *

------------------------------------------------------------------------------
Apps built with the Adobe(R) Flex(R) framework and Flex Builder(TM) are
powering Web 2.0 with engaging, cross-platform capabilities. Quickly and
easily build your RIAs with Flex Builder, the Eclipse(TM)based development
software that enables intelligent coding and step-through debugging.
Download the free 60 day trial. http://p.sf.net/sfu/www-adobe-com
_______________________________________________
Tigervnc-devel mailing list
Tigervnc-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/tigervnc-devel

Reply via email to