blob: b5f4eb534f876da66e648ddf1308f6c29b8333b8 (
plain) (
tree)
|
|
#!/bin/bash
fetch_source() {
if [ -n "$REQUIRED_XORG_DRIVERS" ]; then
mkdir -p src
cd src || perror "No cd to xorg src dir"
for drv in $REQUIRED_XORG_DRIVERS; do
[ -d "${drv}/.git" ] && continue
git clone --depth 1 "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
local drv
if [ -n "$REQUIRED_XORG_DRIVERS" ]; then
pinfo "Compiling requested xorg drivers from source"
mkdir -p "${MODULE_BUILD_DIR}/usr/lib/xorg/modules/drivers"
for drv in $REQUIRED_XORG_DRIVERS; do
pinfo "Compiling $drv"
cd "${MODULE_WORK_DIR}/src/${drv}" || perror "No src dir for xorg driver $drv"
./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
}
|