diff options
Diffstat (limited to 'source/x/libdrm')
-rwxr-xr-x | source/x/libdrm/libdrm.SlackBuild | 27 | ||||
-rw-r--r-- | source/x/libdrm/libdrm.uint32_t.diff | 11 |
2 files changed, 33 insertions, 5 deletions
diff --git a/source/x/libdrm/libdrm.SlackBuild b/source/x/libdrm/libdrm.SlackBuild index 5250cff6..fff398a1 100755 --- a/source/x/libdrm/libdrm.SlackBuild +++ b/source/x/libdrm/libdrm.SlackBuild @@ -1,6 +1,6 @@ #!/bin/sh -# Copyright 2006, 2007, 2008, 2009 Patrick J. Volkerding, Sebeka, MN, USA +# Copyright 2006, 2007, 2008, 2009, 2010 Patrick J. Volkerding, Sebeka, MN, USA # All rights reserved. # # Redistribution and use of this script, with or without modification, is @@ -21,11 +21,20 @@ # ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. PKGNAM=libdrm -VERSION=${VERSION:-2.4.12} -ARCH=${ARCH:-x86_64} -NUMJOBS=${NUMJOBS:-" -j7 "} +VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)} BUILD=${BUILD:-1} +# Automatically determine architecture for build & packaging: +if [ -z "$ARCH" ]; then + case "$( uname -m )" in + i?86) export ARCH=i486 ;; + # Unless $ARCH is already set, use uname -m for all other archs: + *) export ARCH=$( uname -m ) ;; + esac +fi + +NUMJOBS=${NUMJOBS:-" -j7 "} + CWD=$(pwd) TMP=${TMP:-/tmp} PKG=$TMP/package-${PKGNAM} @@ -39,15 +48,21 @@ elif [ "$ARCH" = "s390" ]; then elif [ "$ARCH" = "x86_64" ]; then SLKCFLAGS="-O2 -fPIC" LIBDIRSUFFIX="64" +else + SLKCFLAGS="-O2" + LIBDIRSUFFIX="" fi rm -rf $PKG mkdir -p $TMP $PKG cd $TMP rm -rf ${PKGNAM}-${VERSION} -tar xvf $CWD/${PKGNAM}-$VERSION.tar.xz || exit 1 +tar xvf $CWD/${PKGNAM}-$VERSION.tar.?z* || exit 1 cd ${PKGNAM}-$VERSION +# Fix missing definitions in drm_mode.h: +zcat $CWD/libdrm.uint32_t.diff.gz | patch -p1 --verbose || exit 1 + # Make sure ownerships and permissions are sane: chown -R root:root . find . \ @@ -62,6 +77,8 @@ CFLAGS="$SLKCFLAGS" \ --prefix=/usr \ --libdir=/usr/lib${LIBDIRSUFFIX} \ --enable-udev \ + --enable-nouveau-experimental-api \ + --enable-vmwgfx-experimental-api \ --build=$ARCH-slackware-linux # Build and install: diff --git a/source/x/libdrm/libdrm.uint32_t.diff b/source/x/libdrm/libdrm.uint32_t.diff new file mode 100644 index 00000000..571d72ac --- /dev/null +++ b/source/x/libdrm/libdrm.uint32_t.diff @@ -0,0 +1,11 @@ +--- ./include/drm/drm_mode.h.orig 2010-01-21 12:45:40.000000000 -0600 ++++ ./include/drm/drm_mode.h 2010-02-22 13:16:36.000000000 -0600 +@@ -307,6 +307,8 @@ + #define DRM_MODE_PAGE_FLIP_EVENT 0x01 + #define DRM_MODE_PAGE_FLIP_FLAGS DRM_MODE_PAGE_FLIP_EVENT + ++#include <stdint.h> /* needed for uint32_t and uint64_t typedefs */ ++ + struct drm_mode_crtc_page_flip { + uint32_t crtc_id; + uint32_t fb_id; |