Index: xvfb/building/then-build |
=================================================================== |
--- xvfb/building/then-build (revision 0) |
+++ xvfb/building/then-build (revision 0) |
@@ -0,0 +1,108 @@ |
+#!/bin/sh |
+# Copyright (c) 2012 The Chromium Authors. All rights reserved. |
+# Use of this source code is governed by a BSD-style license that can be |
+# found in the LICENSE file. |
+ |
+PPATH=/usr/lib/pkgconfig |
+LPATH="$(pwd)" |
+export PKG_CONFIG_PATH="${LPATH}"/lib/pkgconfig:"${PPATH}" |
+ |
+# Print an early message about what we think we're building. |
+# Informative only, if this fails, comment it out. |
+arch=$(python -c 'import platform; print platform.architecture()[0]') |
+echo "Builiding for $arch ..." |
+ |
+rm -f .xorg.stop |
+for p in util-macros-1.11.0 xproto-7.0.20 xcb-proto-1.6 libXfont-1.4.3 \ |
+ dri2proto-2.3 libxkbfile-1.0.7 libdrm-2.4.26 \ |
+ libXmu-1.0.5 ; do |
+ if [ -f $p.succeeded ] ; then |
+ echo $p already done |
+ else |
+ tar xzf ../$p.tar.gz |
+ if [ -f $p/configure ] ; then |
+ ( cd $p && ./configure --prefix="$LPATH" --exec_prefix="$LPATH" && \ |
+ make && make install ) >$p.output 2>&1 && mv $p.output $p.succeeded |
+ else |
+ ( cd $p && ./autogen.sh --prefix="$LPATH" --exec_prefix="$LPATH" && \ |
+ make && make install ) >$p.output 2>&1 && mv $p.output $p.succeeded |
+ fi |
+ if [ -f $p.succeeded ] ; then |
+ echo $p done |
+ else |
+ echo $p FAILED ; tail -80 $p.output ; echo $p FAILED |
+ touch .xorg.stop |
+ break |
+ fi |
+ fi |
+done |
+ |
+mv=7.11 |
+p=Mesa-${mv} |
+ |
+if [ -f $p.succeeded ] ; then |
+ echo $p already done |
+else |
+ tar xzf ../MesaGLUT-${mv}.tar.gz |
+ tar xzf ../MesaLib-${mv}.tar.gz |
+ ( cd $p && ./configure --prefix="$LPATH" --exec_prefix="$LPATH" \ |
+ --with-gallium-drivers= --with-dri-drivers= && \ |
+ make && make install ) >$p.output 2>&1 && mv $p.output $p.succeeded |
+ if [ -f $p.succeeded ] ; then |
+ echo $p done |
+ else |
+ echo $p FAILED ; tail -80 $p.output ; echo $p FAILED |
+ touch .xorg.stop |
+ fi |
+fi |
+ |
+ |
+# |
+# The builders are wilder/older versions of linux. pixman is missing a |
+# referenced symbol on Hardy. Xfont fails to read the fonts, and it has |
+# recursive dependencies we have to add to the top level to link statically. |
+# pixman is also a dependency of libfb.la, so we have to subvert that too. |
+# Peter Mayo - Feb 24, 2011 |
+# |
+function makeXvfbMoreStatically() { |
+[ -f Xvfb ] && rm -f Xvfb |
+make -n Xvfb 2>&1 | tail -1 |\ |
+ sed -e "s/^.*;//" \ |
+ -e "s%libfb.la%.libs/libfb.a%" -e "s% -l\(pixman-1\)% /usr/lib/lib\1.a%" \ |
+ -e "s% -l\(Xfont\)% ../../../lib/lib\1.a -lfreetype -lfontenc%" \ |
+ | bash -x |
+} |
+ |
+if [ \! -f .xorg.stop ] ; then |
+ p=xorg-server-1.9.3.901 |
+ [ -d bin ] || mkdir bin |
+ tar xzf ../$p.tar.gz |
+ echo building in $p ... |
+ ( cd $p && ./configure --disable-config-hal --disable-dri --disable-glx \ |
+ --prefix=/usr && \ |
+ ( cd fb && make ) && \ |
+ ( cd xfixes && make ) && \ |
+ ( cd Xext && make ) && \ |
+ ( cd dbe && make ) && \ |
+ ( cd record && make ) && \ |
+ ( cd randr && make ) && \ |
+ ( cd render && make ) && \ |
+ ( cd damageext && make ) && \ |
+ ( cd miext/damage && make ) && \ |
+ ( cd miext/shadow && make ) && \ |
+ ( cd Xi && make ) && \ |
+ ( cd xkb && make ) && \ |
+ ( cd composite && make ) && \ |
+ ( cd dix && make ) && \ |
+ ( cd mi && make ) && \ |
+ ( cd os && make ) && \ |
+ ( cd glx && make ) && \ |
+ ( cd hw/vfb && make Xvfb && makeXvfbMoreStatically ) ) >$p.output 2>&1 && \ |
+ mv $p.output $p.succeeded |
+ if [ -f $p.succeeded ] ; then |
+ cp $p/hw/vfb/Xvfb bin/. |
+ echo "Built Xvfb for $arch sucessfully." |
+ else |
+ echo $p FAILED ; tail -80 $p.output ; echo $p FAILED \; see $p.output |
+ fi |
+fi |
Property changes on: xvfb/building/then-build |
___________________________________________________________________ |
Added: svn:executable |
+ * |