blob: 390b5922c431e51d7380610626ce0591036624fc (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
|
#!/bin/bash
fetch_source() {
if [ -n "$REQUIRED_XORG_DRIVERS" ]; then
local drv
mkdir -p src
cd src || perror "No cd to xorg src dir"
for drv in $REQUIRED_XORG_DRIVERS; do
drv=${drv%//*}
[ -d "${drv}/.git" ] && continue
git clone "git://anongit.freedesktop.org/xorg/driver/${drv}" "${drv}" || perror "Could not clone $drv"
done
cd -
fi
}
build() {
COPYLIST="list_dpkg_output"
[ -e "$COPYLIST" ] && rm "$COPYLIST"
list_packet_files >> "$COPYLIST"
tarcopy "$(cat "$COPYLIST" | sort -u)" "${MODULE_BUILD_DIR}"
# copy udev rules to correct location
if [ -d "${MODULE_BUILD_DIR}/lib/udev" ]; then
cp -r "${MODULE_BUILD_DIR}/lib/udev" "${MODULE_BUILD_DIR}/usr/lib/"
fi
if [ -d "${MODULE_BUILD_DIR}/etc/udev" ]; then
cp -r "${MODULE_BUILD_DIR}/etc/udev" "${MODULE_BUILD_DIR}/usr/lib/"
fi
rm -rf -- "${MODULE_BUILD_DIR}/lib/udev" "${MODULE_BUILD_DIR}/etc/udev"
# This used to freeze/crashe X with certain gfx cards (radeon R240)
# /usr/lib/xorg/modules/libglamoregl.so
# Newer X versions seems to have this fixed, so we included it again
# See if we should build more up to date versions of drivers
if [ -n "$REQUIRED_XORG_DRIVERS" ]; then
local repo vers drv
pinfo "Compiling requested xorg drivers from source"
mkdir -p "${MODULE_BUILD_DIR}/usr/lib/xorg/modules/drivers"
for drv in $REQUIRED_XORG_DRIVERS; do
repo=${drv%//*}
vers=${drv#*//}
pinfo "Compiling $drv"
cd "${MODULE_WORK_DIR}/src/${repo}" || perror "No src dir for xorg driver $repo"
if [ "$drv" != "$vers" ]; then
git checkout "$vers" || pwarn "Could not checkout $vers for $repo"
fi
./autogen.sh || perror "Autogen for $drv failed"
./configure || perror "configure for $drv failed"
make || perror "Make for $drv failed"
find . -type f -name "*_drv.so" -exec cp {} "${MODULE_BUILD_DIR}/usr/lib/xorg/modules/drivers" \;
done
fi
}
post_copy() {
mkdir -p "${TARGET_BUILD_DIR}/etc/X11"
[ ! -e ${TARGET_BUILD_DIR}/etc/X11/X ] && ln -s /usr/bin/Xorg ${TARGET_BUILD_DIR}/etc/X11/X
}
|