Files
BMLFS/build-scripts/directfb.build

78 lines
3.1 KiB
Bash

#! /bin/bash
# DirectFB
# Source: http://sources.webos-ports.org/DirectFB-1.7.7.tar.gz
#
# $BUILD = Directory to temporarily install
# $PKGS = Directory to store built packages
#
# DEPS
# Required: tslib, freetype, libdrm, libpng, libwebp
# Recommended: NONE
# Optional: Mesa
#
# Additional patches found:
# https://github.com/pld-linux/DirectFB
patch -Np1 -i ../patches/directfb-alpine/0001-Fix-build-on-32bit-arches-with-64bit-time_t.patch
patch -Np1 -i ../patches/directfb-alpine/0001-directfb-fix-musl-compile.patch
patch -Np1 -i ../patches/directfb-alpine/0002-Fix-musl-PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP-comp.patch
patch -Np1 -i ../patches/directfb-alpine/0003-remove-set-gamma-ramp.patch
patch -Np1 -i ../patches/directfb-alpine/0004-disable-fusion_dispatch.patch
patch -Np1 -i ../patches/directfb-alpine/0005-fix-tslib-configure.patch
patch -Np1 -i ../patches/directfb-alpine/0006-fix-client-gfx_state-initialisation.patch
patch -Np1 -i ../patches/directfb-alpine/0007-tslib-Automatically-detect-touchscreens-using-ts_setup.patch
patch -Np1 -i ../patches/directfb-pld-linux/DirectFB-ffmpeg.patch
patch -Np1 -i ../patches/directfb-pld-linux/ffmpeg4.patch
patch -Np1 -i ../patches/directfb-pld-linux/ffmpeg3.patch
# Update radeon driver
patch -Np1 -i ../patches/directfb-pld-linux/DirectFB-update.patch
autoreconf -fvi &&
./configure \
--prefix=/usr \
--sysconfdir=/etc \
--enable-static \
--disable-zlib \
--enable-fbdev \
--disable-vnc \
--disable-osx \
--enable-drmkms \
--enable-svg \
--enable-idirectfbgl-egl \
--enable-freetype \
--enable-sdl \
--enable-ffmpeg \
--with-inputdrivers=input_hub,keyboard,linuxinput,ps2mouse,serialmouse,tslib \
--with-gfxdrivers=gl,gles2,i810,i830,nvidia,vdpau,radeon $BUILDTRUPLE &&
read -p "Compile?" && make -j2 &&
sudo -S make DESTDIR=$BUILD install &&
cd $BUILD && sudo -S mkdir -v ${BUILD}/install &&
cat > /tmp/slack-desc << "EOF"
# HOW TO EDIT THIS FILE:
# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
# on the right side marks the last column you can put a character in. You must
# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
DirectFB: DirectFB (A new Linux graphics standard)
DirectFB:
DirectFB: DirectFB is a thin library that provides developers with hardware
DirectFB: graphics acceleration, input device handling and abstraction,
DirectFB: integrated windowing system with support for translucent windows and
DirectFB: multiple display layers on top of the Linux Framebuffer Device. It is
DirectFB: a complete hardware abstraction layer with software fallbacks for
DirectFB: every graphics operation that is not supported by the underlying
DirectFB: hardware.
DirectFB:
DirectFB: Homepage: http://www.directfb.org
EOF
sudo -S mv -v /tmp/slack-desc install/ &&
sudo -S makepkg -l y -c n $PKGS/DirectFB-1.7.7-$(uname -m)-mlfs.txz &&
sudo -S rm -rf ${BUILD}/*