blob: 7b5c525ce57b98f3742fee21d59113dd54e6b4e4 [file] [log] [blame]
Peter Åstrandf0459172009-03-18 14:45:46 +00001#!/bin/bash
2# -*- mode: shell-script; coding: UTF-8 -*-
3#
4# Build Xvnc with Xorg 7.4
5#
6
7set -e
8
9PREFIX="/tmp/xorg-7.4-${USER}"
10export ACLOCAL="aclocal -I ${PREFIX}/share/aclocal"
11export PKG_CONFIG_PATH="${PREFIX}/lib/pkgconfig"
12MAKE="make"
13
14modules="dri2proto \
15 libpthread-stubs \
16 glproto \
17 xf86vidmodeproto \
18 xextproto \
19 xproto \
20 kbproto \
21 inputproto \
22 xcmiscproto \
23 bigreqsproto \
24 fixesproto \
25 damageproto \
26 xf86driproto \
27 randrproto \
28 renderproto \
29 scrnsaverproto \
30 resourceproto \
31 fontsproto \
32 videoproto \
33 compositeproto \
34 xineramaproto \
35 fontcacheproto \
36 libdrm \
37 util-macros \
38 libXau \
39 xtrans \
40 libXdmcp \
41 libX11 \
42 libXext \
43 libXxf86vm \
44 libICE \
45 libSM \
46 libXt \
47 libXmu \
48 libXfixes \
49 libXdamage \
50 libXi \
51 evieext \
52 libxkbfile \
53 libfontenc \
54 libXfont \
55 libpciaccess \
56 xkbcomp \
57 pixman"
58
59
60init()
61{
62 mkdir -p xorg
63 update_modules
64 pushd xserver
65 patch -p1 < ../xserver15.patch
66 autoreconf -fiv
67}
68
69
70update_modules()
71{
72 pushd xorg
73 ../download-xorg
74 for module in ${modules}; do
75 tar jxf ${module}.tar.bz2
76 done
77 tar jxf Mesa.tar.bz2
78 tar jxf xorg-server.tar.bz2
79 cp -r xorg-server-1.*/* ../xserver
80 popd
81}
82
83
84build ()
85{
86
87 # Build VNC
88 make distclean || true
89 ./configure --prefix=${PREFIX}
90 make
91
92 # Build Xorg
93 pushd xorg
94 for module in ${modules}; do
95 extraoptions=""
96 cd ${module}-*
97 echo ======================
98 echo configuring ${module}
99 echo ======================
100 if [ "${module}" = "libX11" ]; then
101 extraoptions="${extraoptions} --without-xcb"
102 fi
103 ./configure --prefix="${PREFIX}" ${extraoptions}
104 echo ======================
105 echo building ${module}
106 echo ======================
107 if [ $? -ne 0 ]; then
108 echo "Failed to configure ${module}."
109 exit
110 fi
111 ($MAKE);
112 make install
113 cd ..
114 done
115
116 # build mesa
117 pushd Mesa-*
118 ./configure --prefix=${PREFIX} --with-driver=dri --disable-glut --without-demos
119 if [ $? -ne 0 ]; then
120 echo "Failed to configure Mesa."
121 exit
122 fi
123 ($MAKE)
124 make install
125 popd
126
127 popd
128
129 # build xserver
130 cd xserver
131 ./configure --prefix=${PREFIX} --disable-xinerama --disable-xvfb --disable-xnest --disable-xorg
132 if [ $? -ne 0 ]; then
133 echo "Failed to configure X server."
134 exit
135 fi
136 ($MAKE)
137 make install
138 cd ..
139}
140
141
142case "$1" in
143 init)
144 init
145 ;;
146 build)
147 build
148 ;;
149 update)
150 update_modules
151 ;;
152 *)
153 echo "Usage: $0 init | build | update"
154 exit 3
155esac