Chapter 6. Xorg build

Install python:

wkpkg -i python

Install freetype2:

wkpkg -i freetype2

Install fontconfig:

wkpkg -i fontconfig

Install libpng:

wkpkg -i libpng

Make xmlto running: ?

configure-docbook-sxl.sh

Set environment

export SOURCE=/tmp/src
export PREFIX=/tmp/modular

Get the build tree

mkdir /tmp/src; cd /tmp/src
git clone git://anongit.freedesktop.org/git/xorg/util/modular util/modular
./util/modular/build.sh $PREFIX --clone --cmd "git pull"

Get a mirror copy of Xorg tree

Compile xcb-proto, libxcb, fontcacheproto

cd /wakes/xorg-2/src/extras
tar -xjf xcb-proto-1.0.tar.bz2
cd xcb-proto-1.0
./configure --prefix=/wakes/xorg-2/build
make
make install

cd /wakes/xorg-2/src/extras
tar -xjf libxcb-1.0.tar.bz2
cd libxcb-1.0
export PKG_CONFIG_PATH=/wakes/xorg-2/build/lib/pkgconfig
./configure --prefix=/wakes/xorg-2/build
make
make install

cd /wakes/xorg-2/src/proto
tar -xjf fontcacheproto-X11R7.0-0.1.2.tar.bz2
cd fontcacheproto-X11R7.0-0.1.2
./configure --prefix=/wakes/xorg-2/build
make
make install

if it fails because of ft_isdigit, just restart the build script.

Using build-from-tarballs.sh script (maybe deprecated....):

./build-from-tarballs.sh -e -bz2 /path/to/xorg.freedesktop.org/archive/X11R7.2/src/everything/
Short version:
1. download everything from http://xorg.freedesktop.org/archive/X11R7.3/src/everything/
2. download damageproto 1.1 separately (http://xorg.freedesktop.org/archive/individual/proto/damageproto-1.1.0.tar.bz2)
3. download latest Mesa3D and unpack it somewhere near
4. download the build-from-tarballs.sh script (http://gitweb.freedesktop.org/?p=xorg/util/modular.git;a=blob_plain;f=build-from-tarballs.sh)
5. assuming you're installing to /usr/X11R7.3:
- export PATH=/usr/X11R7.3/bin:$PATH
- export PKG_CONFIG_PATH=/usr/X11R7.3/lib/pkgconfig:$PKG_CONFIG_PATH

6. ./build-from-tarballs.sh -m PATH_TO_MESA -n -bz2 -e /usr/X11R7.3

Xorg 7.5

for pkg in python freetype2 libpng pixman
do
  wkpkg -i $pkg
done

configure-docbook-sxl.sh

build_root=/wakes/xorg-1

mkdir $build_root 
mkdir $build_root/src
mkdir $build_root/build

cd $build_root/src

wget --continue --recursive --no-host-directories      \
  --cut-dirs=3 --retr-symlinks --accept "*.bz2"        \
  --exclude-directories="pub/X11R7.5/src/everything"   \
  ftp://ftp.x.org/pub/X11R7.5/src/

#for module in proto util pthread-stubs libxcb
#do
#  git clone git://anongit.freedesktop.org/git/xcb/$module xcb/$module
#done

mkdir xcb
cd xcb
for pkg in xcb-proto-1.7.1.tar.bz2 xcb-util-0.3.8.tar.bz2 \
           libpthread-stubs-0.3.tar.bz2 libxcb-1.8.1.tar.bz2
do
  wget http://xcb.freedesktop.org/dist/$pkg
  tar -xjf $pkg
done
mv xcb-proto-1.7.1 proto
mv xcb-util-0.3.8 util
mv libpthread-stubs-0.3 pthread-stubs
mv libxcb-1.8.1 libxcb
rm *.bz2
cd ..

wget http://www.freedesktop.org/software/fontconfig/release/fontconfig-2.9.0.tar.gz
tar -xzf fontconfig-2.9.0.tar.gz
mv fontconfig-2.9.0 fontconfig
rm fontconfig-2.9.0.tar.gz

# mesa
mkdir mesa
cd mesa
wget http://dri.freedesktop.org/libdrm/libdrm-2.4.34.tar.bz2
wget ftp://ftp.freedesktop.org/pub/mesa/8.0.2/MesaLib-8.0.2.tar.bz2
wget ftp://ftp.freedesktop.org/pub/mesa/demos/8.0.1/mesa-demos-8.0.1.tar.bz2

tar -xjf libdrm-2.4.34.tar.bz2
tar -xjf MesaLib-8.0.2.tar.bz2
tar -xjf mesa-demos-8.0.1.tar.bz2

mv libdrm-2.4.34 drm
mv Mesa-8.0.2/ mesa
mv mesa-demos-8.0.1 demos

cd ..

# XKeyboardConfig
wget http://xlibs.freedesktop.org/xkbdesc/xkeyboard-config-2.0.tar.bz2
tar -xjf xkeyboard-config-2.0.tar.bz2
mv xkeyboard-config-2.0 xkeyboard-config
rm xkeyboard-config-2.0.tar.bz2
cd ..

git clone git://anongit.freedesktop.org/git/xorg/util/modular util/modular

./util/modular/build.sh --autoresume modules.run $build_root/build