parent
05734951d6
commit
51e3bb5665
|
@ -0,0 +1,110 @@
|
|||
*.1
|
||||
*.3
|
||||
*.5
|
||||
*.7
|
||||
*.flags
|
||||
*.ko
|
||||
*.ko.cmd
|
||||
*.la
|
||||
*.lo
|
||||
*.log
|
||||
*.mod.c
|
||||
*.mod.o
|
||||
*.o
|
||||
*.o.cmd
|
||||
*.sw?
|
||||
*.trs
|
||||
*~
|
||||
.*check*
|
||||
.*install*
|
||||
.depend
|
||||
.deps
|
||||
.libs
|
||||
.tmp_versions
|
||||
/_build*
|
||||
/build*
|
||||
Makefile
|
||||
Makefile.in
|
||||
TAGS
|
||||
aclocal.m4
|
||||
autom4te.cache
|
||||
bsd-core/*/@
|
||||
bsd-core/*/machine
|
||||
build-aux
|
||||
bus_if.h
|
||||
compile
|
||||
config.guess
|
||||
config.h
|
||||
config.h.in
|
||||
config.log
|
||||
config.status
|
||||
config.sub
|
||||
configure
|
||||
configure.lineno
|
||||
cscope.*
|
||||
depcomp
|
||||
device_if.h
|
||||
drm.kld
|
||||
drm_pciids.h
|
||||
export_syms
|
||||
i915.kld
|
||||
install-sh
|
||||
libdrm.pc
|
||||
libdrm/config.h.in
|
||||
libdrm_amdgpu.pc
|
||||
libdrm_etnaviv.pc
|
||||
libdrm_exynos.pc
|
||||
libdrm_freedreno.pc
|
||||
libdrm_intel.pc
|
||||
libdrm_nouveau.pc
|
||||
libdrm_omap.pc
|
||||
libdrm_radeon.pc
|
||||
libdrm_vc4.pc
|
||||
libkms.pc
|
||||
libtool
|
||||
ltmain.sh
|
||||
mach64.kld
|
||||
man/*.3
|
||||
man/.man_fixup
|
||||
mga.kld
|
||||
missing
|
||||
mkinstalldirs
|
||||
opt_drm.h
|
||||
pci_if.h
|
||||
r128.kld
|
||||
radeon.kld
|
||||
savage.kld
|
||||
sis.kld
|
||||
stamp-h1
|
||||
tdfx.kld
|
||||
tests/amdgpu/amdgpu_test
|
||||
tests/auth
|
||||
tests/dristat
|
||||
tests/drmdevice
|
||||
tests/drmsl
|
||||
tests/drmstat
|
||||
tests/etnaviv/etnaviv_2d_test
|
||||
tests/etnaviv/etnaviv_bo_cache_test
|
||||
tests/etnaviv/etnaviv_cmd_stream_test
|
||||
tests/exynos/exynos_fimg2d_event
|
||||
tests/exynos/exynos_fimg2d_perf
|
||||
tests/exynos/exynos_fimg2d_test
|
||||
tests/getclient
|
||||
tests/getstats
|
||||
tests/getversion
|
||||
tests/hash
|
||||
tests/kms/kms-steal-crtc
|
||||
tests/kms/kms-universal-planes
|
||||
tests/kmstest/kmstest
|
||||
tests/lock
|
||||
tests/modeprint/modeprint
|
||||
tests/modetest/modetest
|
||||
tests/name_from_fd
|
||||
tests/openclose
|
||||
tests/proptest/proptest
|
||||
tests/radeon/radeon_ttm
|
||||
tests/random
|
||||
tests/setversion
|
||||
tests/updatedraw
|
||||
tests/vbltest/vbltest
|
||||
via.kld
|
|
@ -3,6 +3,13 @@
|
|||
paths:
|
||||
- _build/meson-logs
|
||||
|
||||
.artifacts-autotools: &artifacts-autotools
|
||||
when: always
|
||||
paths:
|
||||
- _build/*.log
|
||||
- _build/*/*.log
|
||||
- _build/*/*/*.log
|
||||
|
||||
.meson-build: &meson-build
|
||||
- meson _build
|
||||
-D amdgpu=true
|
||||
|
@ -25,6 +32,27 @@
|
|||
- ninja -C _build
|
||||
- ninja -C _build test
|
||||
|
||||
.autotools-build: &autotools-build
|
||||
- mkdir _build
|
||||
- cd _build
|
||||
- ../autogen.sh
|
||||
--enable-udev
|
||||
--enable-libkms
|
||||
--enable-intel
|
||||
--enable-radeon
|
||||
--enable-amdgpu
|
||||
--enable-nouveau
|
||||
--enable-vmwgfx
|
||||
--enable-omap-experimental-api
|
||||
--enable-exynos-experimental-api
|
||||
--enable-freedreno
|
||||
--enable-freedreno-kgsl
|
||||
--enable-tegra-experimental-api
|
||||
--enable-vc4
|
||||
--enable-etnaviv-experimental-api
|
||||
- make
|
||||
- make check
|
||||
|
||||
latest-meson:
|
||||
stage: build
|
||||
image: archlinux/base:latest
|
||||
|
@ -39,6 +67,22 @@ latest-meson:
|
|||
cairo cunit
|
||||
script: *meson-build
|
||||
|
||||
latest-autotools:
|
||||
stage: build
|
||||
image: archlinux/base:latest
|
||||
artifacts: *artifacts-autotools
|
||||
before_script:
|
||||
- pacman -Syu --noconfirm --needed
|
||||
base-devel
|
||||
libpciaccess
|
||||
libxslt docbook-xsl
|
||||
valgrind
|
||||
libatomic_ops
|
||||
cairo cunit
|
||||
xorg-util-macros
|
||||
git # autogen.sh depends on git
|
||||
script: *autotools-build
|
||||
|
||||
oldest-meson:
|
||||
stage: build
|
||||
image: debian:stable
|
||||
|
@ -75,3 +119,41 @@ oldest-meson:
|
|||
- export PKG_CONFIG_PATH=$HOME/prefix/lib/pkgconfig:$HOME/prefix/share/pkgconfig
|
||||
- export LD_LIBRARY_PATH="$HOME/prefix/lib:$LD_LIBRARY_PATH"
|
||||
script: *meson-build
|
||||
|
||||
oldest-autotools:
|
||||
stage: build
|
||||
image: debian:stable
|
||||
artifacts: *artifacts-autotools
|
||||
before_script:
|
||||
- printf > /etc/dpkg/dpkg.cfg.d/99-exclude-cruft "%s\n"
|
||||
'path-exclude=/usr/share/doc/*'
|
||||
'path-exclude=/usr/share/man/*'
|
||||
- printf > /usr/sbin/policy-rc.d "%s\n"
|
||||
'#!/bin/sh'
|
||||
'exit 101'
|
||||
- chmod +x /usr/sbin/policy-rc.d
|
||||
- apt-get update
|
||||
- apt-get -y --no-install-recommends install
|
||||
build-essential
|
||||
automake
|
||||
autoconf
|
||||
libtool
|
||||
pkg-config
|
||||
xsltproc
|
||||
libxslt1-dev docbook-xsl
|
||||
valgrind
|
||||
libatomic-ops-dev
|
||||
libcairo2-dev libcunit1-dev
|
||||
wget
|
||||
xutils-dev
|
||||
git # autogen.sh depends on git
|
||||
# We need `--no-check-certificate` here because Debian's CA list is
|
||||
# too old to know about LetsEncrypt's CA, so it refuses to connect
|
||||
# to FreeDesktop.org
|
||||
- LIBPCIACCESS_VERSION=libpciaccess-0.10 &&
|
||||
wget --no-check-certificate https://xorg.freedesktop.org/releases/individual/lib/$LIBPCIACCESS_VERSION.tar.bz2 &&
|
||||
tar -jxvf $LIBPCIACCESS_VERSION.tar.bz2 &&
|
||||
(cd $LIBPCIACCESS_VERSION && ./configure --prefix=$HOME/prefix && make install)
|
||||
- export PKG_CONFIG_PATH=$HOME/prefix/lib/pkgconfig:$HOME/prefix/share/pkgconfig
|
||||
- export LD_LIBRARY_PATH="$HOME/prefix/lib:$LD_LIBRARY_PATH"
|
||||
script: *autotools-build
|
||||
|
|
|
@ -0,0 +1,176 @@
|
|||
# Copyright 2005 Adam Jackson.
|
||||
#
|
||||
# Permission is hereby granted, free of charge, to any person obtaining a
|
||||
# copy of this software and associated documentation files (the "Software"),
|
||||
# to deal in the Software without restriction, including without limitation
|
||||
# on the rights to use, copy, modify, merge, publish, distribute, sub
|
||||
# license, and/or sell copies of the Software, and to permit persons to whom
|
||||
# the Software is furnished to do so, subject to the following conditions:
|
||||
#
|
||||
# The above copyright notice and this permission notice (including the next
|
||||
# paragraph) shall be included in all copies or substantial portions of the
|
||||
# Software.
|
||||
#
|
||||
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
# FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL
|
||||
# ADAM JACKSON BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
|
||||
# IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
||||
# CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
|
||||
include Makefile.sources
|
||||
|
||||
ACLOCAL_AMFLAGS = -I m4 ${ACLOCAL_FLAGS}
|
||||
|
||||
AM_MAKEFLAGS = -s
|
||||
AM_DISTCHECK_CONFIGURE_FLAGS = \
|
||||
--enable-udev \
|
||||
--enable-libkms \
|
||||
--enable-intel \
|
||||
--enable-radeon \
|
||||
--enable-amdgpu \
|
||||
--enable-nouveau \
|
||||
--enable-vc4 \
|
||||
--enable-vmwgfx \
|
||||
--enable-omap-experimental-api \
|
||||
--enable-exynos-experimental-api \
|
||||
--enable-freedreno \
|
||||
--enable-freedreno-kgsl\
|
||||
--enable-tegra-experimental-api \
|
||||
--enable-etnaviv-experimental-api \
|
||||
--enable-install-test-programs \
|
||||
--enable-cairo-tests \
|
||||
--enable-manpages \
|
||||
--enable-valgrind
|
||||
|
||||
pkgconfigdir = @pkgconfigdir@
|
||||
pkgconfig_DATA = libdrm.pc
|
||||
|
||||
if HAVE_LIBKMS
|
||||
LIBKMS_SUBDIR = libkms
|
||||
endif
|
||||
|
||||
if HAVE_INTEL
|
||||
INTEL_SUBDIR = intel
|
||||
endif
|
||||
|
||||
if HAVE_NOUVEAU
|
||||
NOUVEAU_SUBDIR = nouveau
|
||||
endif
|
||||
|
||||
if HAVE_RADEON
|
||||
RADEON_SUBDIR = radeon
|
||||
endif
|
||||
|
||||
if HAVE_AMDGPU
|
||||
AMDGPU_SUBDIR = amdgpu
|
||||
endif
|
||||
|
||||
if HAVE_OMAP
|
||||
OMAP_SUBDIR = omap
|
||||
endif
|
||||
|
||||
if HAVE_EXYNOS
|
||||
EXYNOS_SUBDIR = exynos
|
||||
endif
|
||||
|
||||
if HAVE_FREEDRENO
|
||||
FREEDRENO_SUBDIR = freedreno
|
||||
endif
|
||||
|
||||
if HAVE_TEGRA
|
||||
TEGRA_SUBDIR = tegra
|
||||
endif
|
||||
|
||||
if HAVE_VC4
|
||||
VC4_SUBDIR = vc4
|
||||
endif
|
||||
|
||||
if HAVE_ETNAVIV
|
||||
ETNAVIV_SUBDIR = etnaviv
|
||||
endif
|
||||
|
||||
if BUILD_MANPAGES
|
||||
if HAVE_MANPAGES_STYLESHEET
|
||||
MAN_SUBDIR = man
|
||||
endif
|
||||
endif
|
||||
|
||||
SUBDIRS = \
|
||||
. \
|
||||
$(LIBKMS_SUBDIR) \
|
||||
$(INTEL_SUBDIR) \
|
||||
$(NOUVEAU_SUBDIR) \
|
||||
$(RADEON_SUBDIR) \
|
||||
$(AMDGPU_SUBDIR) \
|
||||
$(OMAP_SUBDIR) \
|
||||
$(EXYNOS_SUBDIR) \
|
||||
$(FREEDRENO_SUBDIR) \
|
||||
$(TEGRA_SUBDIR) \
|
||||
$(VC4_SUBDIR) \
|
||||
$(ETNAVIV_SUBDIR) \
|
||||
data \
|
||||
tests \
|
||||
$(MAN_SUBDIR)
|
||||
|
||||
libdrm_la_LTLIBRARIES = libdrm.la
|
||||
libdrm_ladir = $(libdir)
|
||||
libdrm_la_LDFLAGS = -version-number 2:4:0 -no-undefined
|
||||
libdrm_la_LIBADD = @CLOCK_LIB@ -lm
|
||||
|
||||
libdrm_la_CPPFLAGS = -I$(top_srcdir)/include/drm
|
||||
AM_CFLAGS = \
|
||||
$(WARN_CFLAGS) \
|
||||
-fvisibility=hidden \
|
||||
$(VALGRIND_CFLAGS)
|
||||
|
||||
libdrm_la_SOURCES = $(LIBDRM_FILES)
|
||||
|
||||
libdrmincludedir = ${includedir}
|
||||
libdrminclude_HEADERS = $(LIBDRM_H_FILES)
|
||||
|
||||
klibdrmincludedir = ${includedir}/libdrm
|
||||
klibdrminclude_HEADERS = $(LIBDRM_INCLUDE_H_FILES)
|
||||
|
||||
if HAVE_VMWGFX
|
||||
klibdrminclude_HEADERS += $(LIBDRM_INCLUDE_VMWGFX_H_FILES)
|
||||
endif
|
||||
|
||||
EXTRA_DIST = \
|
||||
include/drm/README \
|
||||
amdgpu/meson.build \
|
||||
data/meson.build \
|
||||
etnaviv/meson.build \
|
||||
exynos/meson.build \
|
||||
freedreno/meson.build \
|
||||
intel/meson.build \
|
||||
libkms/meson.build \
|
||||
man/meson.build \
|
||||
nouveau/meson.build \
|
||||
omap/meson.build \
|
||||
radeon/meson.build \
|
||||
tegra/meson.build \
|
||||
tests/amdgpu/meson.build \
|
||||
tests/etnaviv/meson.build \
|
||||
tests/exynos/meson.build \
|
||||
tests/kms/meson.build \
|
||||
tests/kmstest/meson.build \
|
||||
tests/meson.build \
|
||||
tests/modeprint/meson.build \
|
||||
tests/modetest/meson.build \
|
||||
tests/nouveau/meson.build \
|
||||
tests/proptest/meson.build \
|
||||
tests/radeon/meson.build \
|
||||
tests/tegra/meson.build \
|
||||
tests/util/meson.build \
|
||||
tests/vbltest/meson.build \
|
||||
vc4/meson.build \
|
||||
meson.build \
|
||||
meson_options.txt
|
||||
|
||||
copy-headers :
|
||||
cp -r $(kernel_source)/include/uapi/drm/*.h $(top_srcdir)/include/drm/
|
||||
|
||||
commit-headers : copy-headers
|
||||
git add include/drm/*.h
|
||||
git commit -am "Copy headers from kernel $$(GIT_DIR=$(kernel_source)/.git git describe)"
|
30
README.rst
30
README.rst
|
@ -17,7 +17,11 @@ the Mesa drivers, the X drivers, libva and similar projects.
|
|||
Compiling
|
||||
---------
|
||||
|
||||
To set up meson:
|
||||
libdrm has two build systems, a legacy autotools build system, and a newer
|
||||
meson build system. The meson build system is much faster, and offers a
|
||||
slightly different interface, but otherwise provides an equivalent feature set.
|
||||
|
||||
To use it:
|
||||
|
||||
meson builddir/
|
||||
|
||||
|
@ -31,3 +35,27 @@ Then use ninja to build and install:
|
|||
|
||||
If you are installing into a system location you will need to run install
|
||||
separately, and as root.
|
||||
|
||||
|
||||
Alternatively you can invoke autotools configure:
|
||||
|
||||
./configure
|
||||
|
||||
By default, libdrm will install into the /usr/local/ prefix. If you
|
||||
want to install this DRM to replace your system copy, pass
|
||||
--prefix=/usr and --exec-prefix=/ to configure. If you are building
|
||||
libdrm from a git checkout, you first need to run the autogen.sh
|
||||
script. You can pass any options to autogen.sh that you would other
|
||||
wise pass to configure, or you can just re-run configure with the
|
||||
options you need once autogen.sh finishes.
|
||||
|
||||
Next step is to build libdrm:
|
||||
|
||||
make
|
||||
|
||||
and once make finishes successfully, install the package using
|
||||
|
||||
make install
|
||||
|
||||
If you are installing into a system location, you will need to be root
|
||||
to perform the install step.
|
||||
|
|
|
@ -0,0 +1,53 @@
|
|||
# Copyright © 2008 Jérôme Glisse
|
||||
#
|
||||
# Permission is hereby granted, free of charge, to any person obtaining a
|
||||
# copy of this software and associated documentation files (the "Software"),
|
||||
# to deal in the Software without restriction, including without limitation
|
||||
# the rights to use, copy, modify, merge, publish, distribute, sublicense,
|
||||
# and/or sell copies of the Software, and to permit persons to whom the
|
||||
# Software is furnished to do so, subject to the following conditions:
|
||||
#
|
||||
# The above copyright notice and this permission notice (including the next
|
||||
# paragraph) shall be included in all copies or substantial portions of the
|
||||
# Software.
|
||||
#
|
||||
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
|
||||
# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
||||
# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
|
||||
# IN THE SOFTWARE.
|
||||
#
|
||||
# Authors:
|
||||
# Jérôme Glisse <glisse@freedesktop.org>
|
||||
|
||||
include Makefile.sources
|
||||
|
||||
AM_CFLAGS = \
|
||||
$(WARN_CFLAGS) \
|
||||
-fvisibility=hidden \
|
||||
-I$(top_srcdir) \
|
||||
$(PTHREADSTUBS_CFLAGS) \
|
||||
-I$(top_srcdir)/include/drm
|
||||
|
||||
libdrmdatadir = @libdrmdatadir@
|
||||
AM_CPPFLAGS = -DAMDGPU_ASIC_ID_TABLE=\"${libdrmdatadir}/amdgpu.ids\"
|
||||
|
||||
libdrm_amdgpu_la_LTLIBRARIES = libdrm_amdgpu.la
|
||||
libdrm_amdgpu_ladir = $(libdir)
|
||||
libdrm_amdgpu_la_LDFLAGS = -version-number 1:0:0 -no-undefined
|
||||
libdrm_amdgpu_la_LIBADD = ../libdrm.la @PTHREADSTUBS_LIBS@
|
||||
|
||||
libdrm_amdgpu_la_SOURCES = $(LIBDRM_AMDGPU_FILES)
|
||||
amdgpu_asic_id.lo: $(top_srcdir)/data/amdgpu.ids
|
||||
|
||||
libdrm_amdgpuincludedir = ${includedir}/libdrm
|
||||
libdrm_amdgpuinclude_HEADERS = $(LIBDRM_AMDGPU_H_FILES)
|
||||
|
||||
pkgconfigdir = @pkgconfigdir@
|
||||
pkgconfig_DATA = libdrm_amdgpu.pc
|
||||
|
||||
AM_TESTS_ENVIRONMENT = NM='$(NM)'
|
||||
TESTS = amdgpu-symbol-check
|
||||
EXTRA_DIST = $(TESTS)
|
|
@ -0,0 +1,20 @@
|
|||
#! /bin/sh
|
||||
|
||||
srcdir=`dirname "$0"`
|
||||
test -z "$srcdir" && srcdir=.
|
||||
|
||||
ORIGDIR=`pwd`
|
||||
cd "$srcdir"
|
||||
|
||||
git config --local --get format.subjectPrefix >/dev/null ||
|
||||
git config --local format.subjectPrefix "PATCH libdrm" 2>/dev/null
|
||||
|
||||
git config --local --get sendemail.to >/dev/null ||
|
||||
git config --local sendemail.to "dri-devel@lists.freedesktop.org" 2>/dev/null
|
||||
|
||||
autoreconf --force --verbose --install || exit 1
|
||||
cd "$ORIGDIR" || exit $?
|
||||
|
||||
if test -z "$NOCONFIGURE"; then
|
||||
"$srcdir"/configure "$@"
|
||||
fi
|
|
@ -0,0 +1,605 @@
|
|||
# Copyright 2005 Adam Jackson.
|
||||
#
|
||||
# Permission is hereby granted, free of charge, to any person obtaining a
|
||||
# copy of this software and associated documentation files (the "Software"),
|
||||
# to deal in the Software without restriction, including without limitation
|
||||
# on the rights to use, copy, modify, merge, publish, distribute, sub
|
||||
# license, and/or sell copies of the Software, and to permit persons to whom
|
||||
# the Software is furnished to do so, subject to the following conditions:
|
||||
#
|
||||
# The above copyright notice and this permission notice (including the next
|
||||
# paragraph) shall be included in all copies or substantial portions of the
|
||||
# Software.
|
||||
#
|
||||
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
# FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL
|
||||
# ADAM JACKSON BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
|
||||
# IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
||||
# CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
|
||||
AC_PREREQ([2.63])
|
||||
AC_INIT([libdrm],
|
||||
[2.4.99],
|
||||
[https://bugs.freedesktop.org/enter_bug.cgi?product=DRI],
|
||||
[libdrm])
|
||||
|
||||
AC_CONFIG_HEADERS([config.h])
|
||||
AC_CONFIG_SRCDIR([Makefile.am])
|
||||
AC_CONFIG_MACRO_DIR([m4])
|
||||
AC_CONFIG_AUX_DIR([build-aux])
|
||||
PKG_PROG_PKG_CONFIG
|
||||
|
||||
# Require xorg-macros minimum of 1.12 for XORG_WITH_XSLTPROC
|
||||
m4_ifndef([XORG_MACROS_VERSION],
|
||||
[m4_fatal([must install xorg-macros 1.12 or later before running autoconf/autogen])])
|
||||
XORG_MACROS_VERSION(1.12)
|
||||
XORG_WITH_XSLTPROC
|
||||
XORG_MANPAGE_SECTIONS
|
||||
|
||||
AM_INIT_AUTOMAKE([1.10 foreign dist-bzip2])
|
||||
|
||||
# Enable quiet compiles on automake 1.11.
|
||||
m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
|
||||
|
||||
# Check for programs
|
||||
AC_PROG_CC
|
||||
AC_PROG_CC_C99
|
||||
AC_PROG_NM
|
||||
|
||||
if test "x$ac_cv_prog_cc_c99" = xno; then
|
||||
AC_MSG_ERROR([Building libdrm requires C99 enabled compiler])
|
||||
fi
|
||||
|
||||
AC_USE_SYSTEM_EXTENSIONS
|
||||
AC_SYS_LARGEFILE
|
||||
AC_FUNC_ALLOCA
|
||||
|
||||
save_CFLAGS="$CFLAGS"
|
||||
export CFLAGS="$CFLAGS -Werror"
|
||||
AC_HEADER_MAJOR
|
||||
CFLAGS="$save_CFLAGS"
|
||||
|
||||
AC_CHECK_HEADERS([sys/sysctl.h sys/select.h])
|
||||
|
||||
# Initialize libtool
|
||||
LT_PREREQ([2.2])
|
||||
LT_INIT([disable-static])
|
||||
|
||||
dnl pthread-stubs is mandatory on some BSD platforms, due to the nature of the
|
||||
dnl project. Even then there's a notable issue as described in the project README
|
||||
case "$host_os" in
|
||||
linux* | cygwin* | darwin* | solaris* | *-gnu* | gnu* | openbsd*)
|
||||
pthread_stubs_possible="no"
|
||||
;;
|
||||
* )
|
||||
pthread_stubs_possible="yes"
|
||||
;;
|
||||
esac
|
||||
|
||||
if test "x$pthread_stubs_possible" = xyes; then
|
||||
PKG_CHECK_MODULES(PTHREADSTUBS, pthread-stubs >= 0.4)
|
||||
AC_SUBST(PTHREADSTUBS_CFLAGS)
|
||||
AC_SUBST(PTHREADSTUBS_LIBS)
|
||||
fi
|
||||
|
||||
pkgconfigdir=${libdir}/pkgconfig
|
||||
AC_SUBST(pkgconfigdir)
|
||||
libdrmdatadir=${datadir}/libdrm
|
||||
AC_SUBST(libdrmdatadir)
|
||||
|
||||
AC_ARG_ENABLE([udev],
|
||||
[AS_HELP_STRING([--enable-udev],
|
||||
[Enable support for using udev instead of mknod (default: disabled)])],
|
||||
[UDEV=$enableval], [UDEV=no])
|
||||
|
||||
AC_ARG_ENABLE(libkms,
|
||||
AS_HELP_STRING([--disable-libkms],
|
||||
[Disable KMS mm abstraction library (default: auto, enabled on supported platforms)]),
|
||||
[LIBKMS=$enableval], [LIBKMS=auto])
|
||||
|
||||
AC_ARG_ENABLE(intel,
|
||||
AS_HELP_STRING([--disable-intel],
|
||||
[Enable support for intel's KMS API (default: auto, enabled on x86)]),
|
||||
[INTEL=$enableval], [INTEL=auto])
|
||||
|
||||
AC_ARG_ENABLE(radeon,
|
||||
AS_HELP_STRING([--disable-radeon],
|
||||
[Enable support for radeon's KMS API (default: auto)]),
|
||||
[RADEON=$enableval], [RADEON=auto])
|
||||
|
||||
AC_ARG_ENABLE(amdgpu,
|
||||
AS_HELP_STRING([--disable-amdgpu],
|
||||
[Enable support for amdgpu's KMS API (default: auto)]),
|
||||
[AMDGPU=$enableval], [AMDGPU=auto])
|
||||
|
||||
AC_ARG_ENABLE(nouveau,
|
||||
AS_HELP_STRING([--disable-nouveau],
|
||||
[Enable support for nouveau's KMS API (default: auto)]),
|
||||
[NOUVEAU=$enableval], [NOUVEAU=auto])
|
||||
|
||||
AC_ARG_ENABLE(vmwgfx,
|
||||
AS_HELP_STRING([--disable-vmwgfx],
|
||||
[Enable support for vmwgfx's KMS API (default: yes)]),
|
||||
[VMWGFX=$enableval], [VMWGFX=yes])
|
||||
|
||||
AC_ARG_ENABLE(omap-experimental-api,
|
||||
AS_HELP_STRING([--enable-omap-experimental-api],
|
||||
[Enable support for OMAP's experimental API (default: disabled)]),
|
||||
[OMAP=$enableval], [OMAP=no])
|
||||
|
||||
AC_ARG_ENABLE(exynos-experimental-api,
|
||||
AS_HELP_STRING([--enable-exynos-experimental-api],
|
||||
[Enable support for EXYNOS's experimental API (default: disabled)]),
|
||||
[EXYNOS=$enableval], [EXYNOS=no])
|
||||
|
||||
AC_ARG_ENABLE(freedreno,
|
||||
AS_HELP_STRING([--disable-freedreno],
|
||||
[Enable support for freedreno's KMS API (default: auto, enabled on arm)]),
|
||||
[FREEDRENO=$enableval], [FREEDRENO=auto])
|
||||
|
||||
AC_ARG_ENABLE(freedreno-kgsl,
|
||||
AS_HELP_STRING([--enable-freedreno-kgsl],
|
||||
[Enable support for freedreno's to use downstream android kernel API (default: disabled)]),
|
||||
[FREEDRENO_KGSL=$enableval], [FREEDRENO_KGSL=no])
|
||||
|
||||
AC_ARG_ENABLE(tegra-experimental-api,
|
||||
AS_HELP_STRING([--enable-tegra-experimental-api],
|
||||
[Enable support for Tegra's experimental API (default: disabled)]),
|
||||
[TEGRA=$enableval], [TEGRA=no])
|
||||
|
||||
AC_ARG_ENABLE(vc4,
|
||||
AS_HELP_STRING([--disable-vc4],
|
||||
[Enable support for vc4's API (default: auto, enabled on arm)]),
|
||||
[VC4=$enableval], [VC4=auto])
|
||||
|
||||
AC_ARG_ENABLE(etnaviv-experimental-api,
|
||||
AS_HELP_STRING([--enable-etnaviv-experimental-api],
|
||||
[Enable support for etnaviv's experimental API (default: disabled)]),
|
||||
[ETNAVIV=$enableval], [ETNAVIV=no])
|
||||
|
||||
AC_ARG_ENABLE(install-test-programs,
|
||||
AS_HELP_STRING([--enable-install-test-programs],
|
||||
[Install test programs (default: no)]),
|
||||
[INSTALL_TESTS=$enableval], [INSTALL_TESTS=no])
|
||||
|
||||
dnl ===========================================================================
|
||||
dnl check compiler flags
|
||||
AC_DEFUN([LIBDRM_CC_TRY_FLAG], [
|
||||
AC_MSG_CHECKING([whether $CC supports $1])
|
||||
|
||||
libdrm_save_CFLAGS="$CFLAGS"
|
||||
CFLAGS="$CFLAGS $1"
|
||||
|
||||
AC_COMPILE_IFELSE([AC_LANG_SOURCE([ ])], [libdrm_cc_flag=yes], [libdrm_cc_flag=no])
|
||||
CFLAGS="$libdrm_save_CFLAGS"
|
||||
|
||||
if test "x$libdrm_cc_flag" = "xyes"; then
|
||||
ifelse([$2], , :, [$2])
|
||||
else
|
||||
ifelse([$3], , :, [$3])
|
||||
fi
|
||||
AC_MSG_RESULT([$libdrm_cc_flag])
|
||||
])
|
||||
|
||||
dnl We use clock_gettime to check for timeouts in drmWaitVBlank
|
||||
|
||||
AC_CHECK_FUNCS([clock_gettime], [CLOCK_LIB=],
|
||||
[AC_CHECK_LIB([rt], [clock_gettime], [CLOCK_LIB=-lrt],
|
||||
[AC_MSG_ERROR([Couldn't find clock_gettime])])])
|
||||
AC_SUBST([CLOCK_LIB])
|
||||
|
||||
AC_CHECK_FUNCS([open_memstream],
|
||||
[AC_DEFINE([HAVE_OPEN_MEMSTREAM], 1, [Have open_memstream()])],
|
||||
[AC_DEFINE([HAVE_OPEN_MEMSTREAM], 0)])
|
||||
|
||||
dnl Use lots of warning flags with with gcc and compatible compilers
|
||||
|
||||
dnl Note: if you change the following variable, the cache is automatically
|
||||
dnl skipped and all flags rechecked. So there's no need to do anything
|
||||
dnl else. If for any reason you need to force a recheck, just change
|
||||
dnl MAYBE_WARN in an ignorable way (like adding whitespace)
|
||||
|
||||
MAYBE_WARN="-Wall -Wextra -Werror=undef \
|
||||
-Wsign-compare -Werror-implicit-function-declaration \
|
||||
-Wpointer-arith -Wwrite-strings -Wstrict-prototypes \
|
||||
-Wmissing-prototypes -Wmissing-declarations -Wnested-externs \
|
||||
-Wpacked -Wswitch-enum -Wmissing-format-attribute \
|
||||
-Wstrict-aliasing=2 -Winit-self \
|
||||
-Wdeclaration-after-statement -Wold-style-definition \
|
||||
-Wno-unused-parameter \
|
||||
-Wno-attributes -Wno-long-long -Winline -Wshadow \
|
||||
-Wno-missing-field-initializers"
|
||||
|
||||
# invalidate cached value if MAYBE_WARN has changed
|
||||
if test "x$libdrm_cv_warn_maybe" != "x$MAYBE_WARN"; then
|
||||
unset libdrm_cv_warn_cflags
|
||||
fi
|
||||
AC_CACHE_CHECK([for supported warning flags], libdrm_cv_warn_cflags, [
|
||||
echo
|
||||
WARN_CFLAGS=""
|
||||
|
||||
# Some warning options are not supported by all versions of
|
||||
# gcc, so test all desired options against the current
|
||||
# compiler.
|
||||
#
|
||||
# Note that there are some order dependencies
|
||||
# here. Specifically, an option that disables a warning will
|
||||
# have no net effect if a later option then enables that
|
||||
# warnings, (perhaps implicitly). So we put some grouped
|
||||
# options (-Wall and -Wextra) up front and the -Wno options
|
||||
# last.
|
||||
|
||||
for W in $MAYBE_WARN; do
|
||||
LIBDRM_CC_TRY_FLAG([$W], [WARN_CFLAGS="$WARN_CFLAGS $W"])
|
||||
done
|
||||
|
||||
libdrm_cv_warn_cflags=$WARN_CFLAGS
|
||||
libdrm_cv_warn_maybe=$MAYBE_WARN
|
||||
|
||||
AC_MSG_CHECKING([which warning flags were supported])])
|
||||
WARN_CFLAGS="$libdrm_cv_warn_cflags"
|
||||
|
||||
# Check for atomic intrinsics
|
||||
AC_CACHE_CHECK([for native atomic primitives], drm_cv_atomic_primitives, [
|
||||
drm_cv_atomic_primitives="none"
|
||||
|
||||
AC_LINK_IFELSE([AC_LANG_PROGRAM([[
|
||||
int atomic_add(int *i) { return __sync_add_and_fetch (i, 1); }
|
||||
int atomic_cmpxchg(int *i, int j, int k) { return __sync_val_compare_and_swap (i, j, k); }
|
||||
]],[[]])], [drm_cv_atomic_primitives="Intel"],[])
|
||||
|
||||
if test "x$drm_cv_atomic_primitives" = "xnone"; then
|
||||
AC_CHECK_HEADER([atomic_ops.h], drm_cv_atomic_primitives="libatomic-ops")
|
||||
fi
|
||||
|
||||
# atomic functions defined in <atomic.h> & libc on Solaris
|
||||
if test "x$drm_cv_atomic_primitives" = "xnone"; then
|
||||
AC_CHECK_FUNC([atomic_cas_uint], drm_cv_atomic_primitives="Solaris")
|
||||
fi
|
||||
])
|
||||
|
||||
if test "x$drm_cv_atomic_primitives" = xIntel; then
|
||||
AC_DEFINE(HAVE_LIBDRM_ATOMIC_PRIMITIVES, 1,
|
||||
[Enable if your compiler supports the Intel __sync_* atomic primitives])
|
||||
else
|
||||
AC_DEFINE(HAVE_LIBDRM_ATOMIC_PRIMITIVES, 0)
|
||||
fi
|
||||
if test "x$drm_cv_atomic_primitives" = "xlibatomic-ops"; then
|
||||
AC_DEFINE(HAVE_LIB_ATOMIC_OPS, 1, [Enable if you have libatomic-ops-dev installed])
|
||||
else
|
||||
AC_DEFINE(HAVE_LIB_ATOMIC_OPS, 0)
|
||||
fi
|
||||
|
||||
dnl Print out the approapriate message considering the value set be the
|
||||
dnl respective in $1.
|
||||
dnl $1 - value to be evaluated. Eg. $INTEL, $NOUVEAU, ...
|
||||
dnl $2 - libdrm shortname. Eg. intel, freedreno, ...
|
||||
dnl $3 - GPU name/brand. Eg. Intel, NVIDIA Tegra, ...
|
||||
dnl $4 - Configure switch. Eg. intel, omap-experimental-api, ...
|
||||
AC_DEFUN([LIBDRM_ATOMICS_NOT_FOUND_MSG], [
|
||||
case "x$1" in
|
||||
xyes) AC_MSG_ERROR([libdrm_$2 depends upon atomic operations, which were not found for your compiler/cpu. Try compiling with -march=native, or install the libatomics-op-dev package, or, failing both of those, disable support for $3 GPUs by passing --disable-$4 to ./configure]) ;;
|
||||
xauto) AC_MSG_WARN([Disabling $2. It depends on atomic operations, which were not found for your compiler/cpu. Try compiling with -march=native, or install the libatomics-op-dev package.]) ;;
|
||||
*) ;;
|
||||
esac
|
||||
])
|
||||
|
||||
if test "x$drm_cv_atomic_primitives" = "xnone"; then
|
||||
LIBDRM_ATOMICS_NOT_FOUND_MSG($INTEL, intel, Intel, intel)
|
||||
INTEL=no
|
||||
|
||||
LIBDRM_ATOMICS_NOT_FOUND_MSG($RADEON, radeon, Radeon, radeon)
|
||||
RADEON=no
|
||||
|
||||
LIBDRM_ATOMICS_NOT_FOUND_MSG($AMDGPU, amdgpu, AMD, amdgpu)
|
||||
AMDGPU=no
|
||||
|
||||
LIBDRM_ATOMICS_NOT_FOUND_MSG($NOUVEAU, nouveau, NVIDIA, nouveau)
|
||||
NOUVEAU=no
|
||||
|
||||
LIBDRM_ATOMICS_NOT_FOUND_MSG($OMAP, omap, OMAP, omap-experimental-api)
|
||||
OMAP=no
|
||||
|
||||
LIBDRM_ATOMICS_NOT_FOUND_MSG($FREEDRENO, freedreno, Qualcomm Adreno, freedreno)
|
||||
FREEDRENO=no
|
||||
|
||||
LIBDRM_ATOMICS_NOT_FOUND_MSG($TEGRA, tegra, NVIDIA Tegra, tegra-experimental-api)
|
||||
TEGRA=no
|
||||
|
||||
LIBDRM_ATOMICS_NOT_FOUND_MSG($ETNAVIV, etnaviv, Vivante, etnaviv-experimental-api)
|
||||
ETNAVIV=no
|
||||
else
|
||||
if test "x$INTEL" = xauto; then
|
||||
case $host_cpu in
|
||||
i?86|x86_64) INTEL=yes ;;
|
||||
*) INTEL=no ;;
|
||||
esac
|
||||
fi
|
||||
if test "x$RADEON" = xauto; then
|
||||
RADEON=yes
|
||||
fi
|
||||
if test "x$AMDGPU" = xauto; then
|
||||
AMDGPU=yes
|
||||
fi
|
||||
if test "x$NOUVEAU" = xauto; then
|
||||
NOUVEAU=yes
|
||||
fi
|
||||
if test "x$FREEDRENO" = xauto; then
|
||||
case $host_cpu in
|
||||
arm*|aarch64) FREEDRENO=yes ;;
|
||||
*) FREEDRENO=no ;;
|
||||
esac
|
||||
fi
|
||||
if test "x$VC4" = xauto; then
|
||||
case $host_cpu in
|
||||
arm*|aarch64) VC4=yes ;;
|
||||
*) VC4=no ;;
|
||||
esac
|
||||
fi
|
||||
fi
|
||||
|
||||
if test "x$INTEL" != "xno"; then
|
||||
PKG_CHECK_MODULES(PCIACCESS, [pciaccess >= 0.10])
|
||||
fi
|
||||
AC_SUBST(PCIACCESS_CFLAGS)
|
||||
AC_SUBST(PCIACCESS_LIBS)
|
||||
|
||||
if test "x$UDEV" = xyes; then
|
||||
AC_DEFINE(UDEV, 1, [Have UDEV support])
|
||||
else
|
||||
AC_DEFINE(UDEV, 0)
|
||||
fi
|
||||
|
||||
AC_CANONICAL_HOST
|
||||
if test "x$LIBKMS" = xauto ; then
|
||||
case $host_os in
|
||||
linux*) LIBKMS="yes" ;;
|
||||
freebsd* | kfreebsd*-gnu)
|
||||
LIBKMS="yes" ;;
|
||||
dragonfly*) LIBKMS="yes" ;;
|
||||
*) LIBKMS="no" ;;
|
||||
esac
|
||||
fi
|
||||
|
||||
AM_CONDITIONAL(HAVE_LIBKMS, [test "x$LIBKMS" = xyes])
|
||||
|
||||
AM_CONDITIONAL(HAVE_INTEL, [test "x$INTEL" = xyes])
|
||||
if test "x$INTEL" = xyes; then
|
||||
AC_DEFINE(HAVE_INTEL, 1, [Have intel support])
|
||||
else
|
||||
AC_DEFINE(HAVE_INTEL, 0)
|
||||
fi
|
||||
|
||||
AM_CONDITIONAL(HAVE_VMWGFX, [test "x$VMWGFX" = xyes])
|
||||
if test "x$VMWGFX" = xyes; then
|
||||
AC_DEFINE(HAVE_VMWGFX, 1, [Have vmwgfx kernel headers])
|
||||
else
|
||||
AC_DEFINE(HAVE_VMWGFX, 0)
|
||||
fi
|
||||
|
||||
AM_CONDITIONAL(HAVE_NOUVEAU, [test "x$NOUVEAU" = xyes])
|
||||
if test "x$NOUVEAU" = xyes; then
|
||||
AC_DEFINE(HAVE_NOUVEAU, 1, [Have nouveau (nvidia) support])
|
||||
else
|
||||
AC_DEFINE(HAVE_NOUVEAU, 0)
|
||||
fi
|
||||
|
||||
AM_CONDITIONAL(HAVE_OMAP, [test "x$OMAP" = xyes])
|
||||
|
||||
AM_CONDITIONAL(HAVE_EXYNOS, [test "x$EXYNOS" = xyes])
|
||||
if test "x$EXYNOS" = xyes; then
|
||||
AC_DEFINE(HAVE_EXYNOS, 1, [Have EXYNOS support])
|
||||
else
|
||||
AC_DEFINE(HAVE_EXYNOS, 0)
|
||||
fi
|
||||
|
||||
AM_CONDITIONAL(HAVE_FREEDRENO, [test "x$FREEDRENO" = xyes])
|
||||
|
||||
if test "x$FREEDRENO_KGSL" = xyes; then
|
||||
if test "x$FREEDRENO" != xyes; then
|
||||
AC_MSG_ERROR([Cannot enable freedreno KGSL interface if freedreno is disabled])
|
||||
fi
|
||||
fi
|
||||
AM_CONDITIONAL(HAVE_FREEDRENO_KGSL, [test "x$FREEDRENO_KGSL" = xyes])
|
||||
if test "x$FREEDRENO_KGSL" = xyes; then
|
||||
AC_DEFINE(HAVE_FREEDRENO_KGSL, 1, [Have freedreno support for KGSL kernel interface])
|
||||
else
|
||||
AC_DEFINE(HAVE_FREEDRENO_KGSL, 0)
|
||||
fi
|
||||
|
||||
AM_CONDITIONAL(HAVE_RADEON, [test "x$RADEON" = xyes])
|
||||
if test "x$RADEON" = xyes; then
|
||||
AC_DEFINE(HAVE_RADEON, 1, [Have radeon support])
|
||||
else
|
||||
AC_DEFINE(HAVE_RADEON, 0)
|
||||
fi
|
||||
|
||||
if test "x$AMDGPU" != xno; then
|
||||
# Detect cunit library
|
||||
PKG_CHECK_MODULES([CUNIT], [cunit >= 2.1], [have_cunit=yes], [have_cunit=no])
|
||||
# If pkg-config does not find cunit, check it using AC_CHECK_LIB. We
|
||||
# do this because Debian (Ubuntu) lacks pkg-config file for cunit.
|
||||
# fixed in 2.1-2.dfsg-3: http://anonscm.debian.org/cgit/collab-maint/cunit.git/commit/?h=debian
|
||||
if test "x${have_cunit}" = "xno"; then
|
||||
AC_CHECK_LIB([cunit], [CU_initialize_registry], [have_cunit=yes], [have_cunit=no])
|
||||
if test "x${have_cunit}" = "xyes"; then
|
||||
CUNIT_LIBS="-lcunit"
|
||||
CUNIT_CFLAGS=""
|
||||
AC_SUBST([CUNIT_LIBS])
|
||||
AC_SUBST([CUNIT_CFLAGS])
|
||||
fi
|
||||
fi
|
||||
else
|
||||
have_cunit=no
|
||||
fi
|
||||
AM_CONDITIONAL(HAVE_CUNIT, [test "x$have_cunit" != "xno"])
|
||||
|
||||
AM_CONDITIONAL(HAVE_AMDGPU, [test "x$AMDGPU" = xyes])
|
||||
if test "x$AMDGPU" = xyes; then
|
||||
AC_DEFINE(HAVE_AMDGPU, 1, [Have amdgpu support])
|
||||
|
||||
if test "x$have_cunit" = "xno"; then
|
||||
AC_MSG_WARN([Could not find cunit library. Disabling amdgpu tests])
|
||||
fi
|
||||
else
|
||||
AC_DEFINE(HAVE_AMDGPU, 0)
|
||||
fi
|
||||
|
||||
AM_CONDITIONAL(HAVE_TEGRA, [test "x$TEGRA" = xyes])
|
||||
|
||||
AM_CONDITIONAL(HAVE_VC4, [test "x$VC4" = xyes])
|
||||
if test "x$VC4" = xyes; then
|
||||
AC_DEFINE(HAVE_VC4, 1, [Have VC4 support])
|
||||
else
|
||||
AC_DEFINE(HAVE_VC4, 0)
|
||||
fi
|
||||
|
||||
AM_CONDITIONAL(HAVE_ETNAVIV, [test "x$ETNAVIV" = xyes])
|
||||
|
||||
AM_CONDITIONAL(HAVE_INSTALL_TESTS, [test "x$INSTALL_TESTS" = xyes])
|
||||
|
||||
AC_ARG_ENABLE([cairo-tests],
|
||||
[AS_HELP_STRING([--enable-cairo-tests],
|
||||
[Enable support for Cairo rendering in tests (default: auto)])],
|
||||
[CAIRO=$enableval], [CAIRO=auto])
|
||||
if test "x$CAIRO" != xno; then
|
||||
PKG_CHECK_MODULES(CAIRO, cairo, [HAVE_CAIRO=yes], [HAVE_CAIRO=no])
|
||||
fi
|
||||
AC_MSG_CHECKING([whether to enable Cairo tests])
|
||||
if test "x$CAIRO" = xauto; then
|
||||
CAIRO="$HAVE_CAIRO"
|
||||
fi
|
||||
if test "x$CAIRO" = xyes; then
|
||||
if ! test "x$HAVE_CAIRO" = xyes; then
|
||||
AC_MSG_ERROR([Cairo support required but not present])
|
||||
fi
|
||||
AC_DEFINE(HAVE_CAIRO, 1, [Have Cairo support])
|
||||
else
|
||||
AC_DEFINE(HAVE_CAIRO, 0)
|
||||
fi
|
||||
AC_MSG_RESULT([$CAIRO])
|
||||
AM_CONDITIONAL(HAVE_CAIRO, [test "x$CAIRO" = xyes])
|
||||
|
||||
# xsltproc for docbook manpages
|
||||
AC_ARG_ENABLE([manpages],
|
||||
AS_HELP_STRING([--enable-manpages], [enable manpages @<:@default=auto@:>@]),
|
||||
[MANS=$enableval], [MANS=auto])
|
||||
AM_CONDITIONAL([BUILD_MANPAGES], [test "x$XSLTPROC" != "x" -a "x$MANS" != "xno"])
|
||||
|
||||
# check for offline man-pages stylesheet
|
||||
AC_MSG_CHECKING([for docbook manpages stylesheet])
|
||||
MANPAGES_STYLESHEET="http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl"
|
||||
AC_PATH_PROGS_FEATURE_CHECK([XSLTPROC_TMP], [xsltproc],
|
||||
AS_IF([`"$ac_path_XSLTPROC_TMP" --nonet "$MANPAGES_STYLESHEET" > /dev/null 2>&1`],
|
||||
[HAVE_MANPAGES_STYLESHEET=yes]))
|
||||
if test "x$HAVE_MANPAGES_STYLESHEET" = "xyes"; then
|
||||
AC_SUBST(MANPAGES_STYLESHEET)
|
||||
AC_MSG_RESULT([yes])
|
||||
else
|
||||
AC_MSG_RESULT([no])
|
||||
fi
|
||||
AM_CONDITIONAL([HAVE_MANPAGES_STYLESHEET], [test "x$HAVE_MANPAGES_STYLESHEET" = "xyes"])
|
||||
|
||||
AC_ARG_ENABLE(valgrind,
|
||||
[AS_HELP_STRING([--enable-valgrind],
|
||||
[Build libdrm with valgrind support (default: auto)])],
|
||||
[VALGRIND=$enableval], [VALGRIND=auto])
|
||||
if test "x$VALGRIND" != xno; then
|
||||
PKG_CHECK_MODULES(VALGRIND, [valgrind], [have_valgrind=yes], [have_valgrind=no])
|
||||
fi
|
||||
AC_MSG_CHECKING([whether to enable Valgrind support])
|
||||
if test "x$VALGRIND" = xauto; then
|
||||
VALGRIND="$have_valgrind"
|
||||
fi
|
||||
|
||||
if test "x$VALGRIND" = "xyes"; then
|
||||
if ! test "x$have_valgrind" = xyes; then
|
||||
AC_MSG_ERROR([Valgrind support required but not present])
|
||||
fi
|
||||
AC_DEFINE([HAVE_VALGRIND], 1, [Use valgrind intrinsics to suppress false warnings])
|
||||
else
|
||||
AC_DEFINE([HAVE_VALGRIND], 0)
|
||||
fi
|
||||
|
||||
AC_MSG_RESULT([$VALGRIND])
|
||||
|
||||
AC_ARG_WITH([kernel-source],
|
||||
[AS_HELP_STRING([--with-kernel-source],
|
||||
[specify path to linux kernel source])],
|
||||
[kernel_source="$with_kernel_source"])
|
||||
AC_SUBST(kernel_source)
|
||||
|
||||
AC_MSG_CHECKING([whether $CC supports __attribute__(("hidden"))])
|
||||
AC_LINK_IFELSE([AC_LANG_PROGRAM([
|
||||
int foo_hidden( void ) __attribute__((visibility("hidden")));
|
||||
])], HAVE_ATTRIBUTE_VISIBILITY="yes"; AC_MSG_RESULT([yes]), AC_MSG_RESULT([no]));
|
||||
|
||||
if test "x$HAVE_ATTRIBUTE_VISIBILITY" = xyes; then
|
||||
AC_DEFINE(HAVE_VISIBILITY, 1, [Compiler supports __attribute__(("hidden"))])
|
||||
else
|
||||
AC_DEFINE(HAVE_VISIBILITY, 0)
|
||||
fi
|
||||
|
||||
CPPFLAGS="$CPPFLAGS -include config.h"
|
||||
|
||||
AC_SUBST(WARN_CFLAGS)
|
||||
AC_CONFIG_FILES([
|
||||
Makefile
|
||||
data/Makefile
|
||||
libkms/Makefile
|
||||
libkms/libkms.pc
|
||||
intel/Makefile
|
||||
intel/libdrm_intel.pc
|
||||
radeon/Makefile
|
||||
radeon/libdrm_radeon.pc
|
||||
amdgpu/Makefile
|
||||
amdgpu/libdrm_amdgpu.pc
|
||||
nouveau/Makefile
|
||||
nouveau/libdrm_nouveau.pc
|
||||
omap/Makefile
|
||||
omap/libdrm_omap.pc
|
||||
exynos/Makefile
|
||||
exynos/libdrm_exynos.pc
|
||||
freedreno/Makefile
|
||||
freedreno/libdrm_freedreno.pc
|
||||
tegra/Makefile
|
||||
tegra/libdrm_tegra.pc
|
||||
vc4/Makefile
|
||||
vc4/libdrm_vc4.pc
|
||||
etnaviv/Makefile
|
||||
etnaviv/libdrm_etnaviv.pc
|
||||
tests/Makefile
|
||||
tests/modeprint/Makefile
|
||||
tests/modetest/Makefile
|
||||
tests/kms/Makefile
|
||||
tests/kmstest/Makefile
|
||||
tests/proptest/Makefile
|
||||
tests/radeon/Makefile
|
||||
tests/amdgpu/Makefile
|
||||
tests/vbltest/Makefile
|
||||
tests/exynos/Makefile
|
||||
tests/tegra/Makefile
|
||||
tests/nouveau/Makefile
|
||||
tests/etnaviv/Makefile
|
||||
tests/util/Makefile
|
||||
man/Makefile
|
||||
libdrm.pc])
|
||||
AC_OUTPUT
|
||||
|
||||
echo ""
|
||||
echo "$PACKAGE_STRING will be compiled with:"
|
||||
echo ""
|
||||
echo " libkms $LIBKMS"
|
||||
echo " Intel API $INTEL"
|
||||
echo " vmwgfx API $VMWGFX"
|
||||
echo " Radeon API $RADEON"
|
||||
echo " AMDGPU API $AMDGPU"
|
||||
echo " Nouveau API $NOUVEAU"
|
||||
echo " OMAP API $OMAP"
|
||||
echo " EXYNOS API $EXYNOS"
|
||||
echo " Freedreno API $FREEDRENO (kgsl: $FREEDRENO_KGSL)"
|
||||
echo " Tegra API $TEGRA"
|
||||
echo " VC4 API $VC4"
|
||||
echo " Etnaviv API $ETNAVIV"
|
||||
echo ""
|
|
@ -0,0 +1,25 @@
|
|||
# Copyright © 2017 Advanced Micro Devices, Inc.
|
||||
# All Rights Reserved.
|
||||
#
|
||||
# Permission is hereby granted, free of charge, to any person obtaining a
|
||||
# copy of this software and associated documentation files (the "Software"),
|
||||
# to deal in the Software without restriction, including without limitation
|
||||
# on the rights to use, copy, modify, merge, publish, distribute, sub
|
||||
# license, and/or sell copies of the Software, and to permit persons to whom
|
||||
# the Software is furnished to do so, subject to the following conditions:
|
||||
#
|
||||
# The above copyright notice and this permission notice (including the next
|
||||
# paragraph) shall be included in all copies or substantial portions of the
|
||||
# Software.
|
||||
#
|
||||
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
# FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL
|
||||
# ADAM JACKSON BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
|
||||
# IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
||||
# CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
|
||||
libdrmdatadir = @libdrmdatadir@
|
||||
if HAVE_AMDGPU
|
||||
dist_libdrmdata_DATA = amdgpu.ids
|
||||
endif
|
|
@ -0,0 +1,28 @@
|
|||
include Makefile.sources
|
||||
|
||||
AM_CFLAGS = \
|
||||
$(WARN_CFLAGS) \
|
||||
-fvisibility=hidden \
|
||||
-I$(top_srcdir) \
|
||||
$(PTHREADSTUBS_CFLAGS) \
|
||||
-I$(top_srcdir)/include/drm
|
||||
|
||||
libdrm_etnaviv_ladir = $(libdir)
|
||||
libdrm_etnaviv_la_LTLIBRARIES = libdrm_etnaviv.la
|
||||
libdrm_etnaviv_la_LDFLAGS = -version-number 1:0:0 -no-undefined
|
||||
libdrm_etnaviv_la_LIBADD = \
|
||||
../libdrm.la \
|
||||
@PTHREADSTUBS_LIBS@ \
|
||||
@CLOCK_LIB@
|
||||
|
||||
libdrm_etnaviv_la_SOURCES = $(LIBDRM_ETNAVIV_FILES)
|
||||
|
||||
libdrm_etnavivincludedir = ${includedir}/libdrm
|
||||
libdrm_etnavivinclude_HEADERS = $(LIBDRM_ETNAVIV_H_FILES)
|
||||
|
||||
pkgconfigdir = @pkgconfigdir@
|
||||
pkgconfig_DATA = libdrm_etnaviv.pc
|
||||
|
||||
AM_TESTS_ENVIRONMENT = NM='$(NM)'
|
||||
TESTS = etnaviv-symbol-check
|
||||
EXTRA_DIST = $(TESTS)
|
|
@ -0,0 +1,29 @@
|
|||
AM_CFLAGS = \
|
||||
$(WARN_CFLAGS) \
|
||||
-fvisibility=hidden \
|
||||
-I$(top_srcdir) \
|
||||
$(PTHREADSTUBS_CFLAGS) \
|
||||
-I$(top_srcdir)/include/drm
|
||||
|
||||
libdrm_exynos_la_LTLIBRARIES = libdrm_exynos.la
|
||||
libdrm_exynos_ladir = $(libdir)
|
||||
libdrm_exynos_la_LDFLAGS = -version-number 1:0:0 -no-undefined
|
||||
libdrm_exynos_la_LIBADD = ../libdrm.la @PTHREADSTUBS_LIBS@
|
||||
|
||||
libdrm_exynos_la_SOURCES = \
|
||||
exynos_drm.c \
|
||||
exynos_fimg2d.c \
|
||||
fimg2d_reg.h
|
||||
|
||||
libdrm_exynoscommonincludedir = ${includedir}/exynos
|
||||
libdrm_exynoscommoninclude_HEADERS = exynos_drm.h exynos_fimg2d.h
|
||||
|
||||
libdrm_exynosincludedir = ${includedir}/libdrm
|
||||
libdrm_exynosinclude_HEADERS = exynos_drmif.h
|
||||
|
||||
pkgconfigdir = @pkgconfigdir@
|
||||
pkgconfig_DATA = libdrm_exynos.pc
|
||||
|
||||
AM_TESTS_ENVIRONMENT = NM='$(NM)'
|
||||
TESTS = exynos-symbol-check
|
||||
EXTRA_DIST = $(TESTS)
|
|
@ -0,0 +1,33 @@
|
|||
AUTOMAKE_OPTIONS=subdir-objects
|
||||
include Makefile.sources
|
||||
|
||||
AM_CFLAGS = \
|
||||
$(WARN_CFLAGS) \
|
||||
-fvisibility=hidden \
|
||||
-I$(top_srcdir) \
|
||||
$(PTHREADSTUBS_CFLAGS) \
|
||||
$(VALGRIND_CFLAGS) \
|
||||
-I$(top_srcdir)/include/drm
|
||||
|
||||
libdrm_freedreno_la_LTLIBRARIES = libdrm_freedreno.la
|
||||
libdrm_freedreno_ladir = $(libdir)
|
||||
libdrm_freedreno_la_LDFLAGS = -version-number 1:0:0 -no-undefined
|
||||
libdrm_freedreno_la_LIBADD = \
|
||||
../libdrm.la \
|
||||
@PTHREADSTUBS_LIBS@ \
|
||||
@CLOCK_LIB@
|
||||
|
||||
libdrm_freedreno_la_SOURCES = $(LIBDRM_FREEDRENO_FILES)
|
||||
if HAVE_FREEDRENO_KGSL
|
||||
libdrm_freedreno_la_SOURCES += $(LIBDRM_FREEDRENO_KGSL_FILES)
|
||||
endif
|
||||
|
||||
libdrm_freedrenocommonincludedir = ${includedir}/freedreno
|
||||
libdrm_freedrenocommoninclude_HEADERS = $(LIBDRM_FREEDRENO_H_FILES)
|
||||
|
||||
pkgconfigdir = @pkgconfigdir@
|
||||
pkgconfig_DATA = libdrm_freedreno.pc
|
||||
|
||||
AM_TESTS_ENVIRONMENT = NM='$(NM)'
|
||||
TESTS = freedreno-symbol-check
|
||||
EXTRA_DIST = $(TESTS)
|
|
@ -0,0 +1,75 @@
|
|||
# Copyright © 2008 Intel Corporation
|
||||
#
|
||||
# Permission is hereby granted, free of charge, to any person obtaining a
|
||||
# copy of this software and associated documentation files (the "Software"),
|
||||
# to deal in the Software without restriction, including without limitation
|
||||
# the rights to use, copy, modify, merge, publish, distribute, sublicense,
|
||||
# and/or sell copies of the Software, and to permit persons to whom the
|
||||
# Software is furnished to do so, subject to the following conditions:
|
||||
#
|
||||
# The above copyright notice and this permission notice (including the next
|
||||
# paragraph) shall be included in all copies or substantial portions of the
|
||||
# Software.
|
||||
#
|
||||
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
|
||||
# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
||||
# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
|
||||
# IN THE SOFTWARE.
|
||||
#
|
||||
# Authors:
|
||||
# Eric Anholt <eric@anholt.net>
|
||||
|
||||
include Makefile.sources
|
||||
|
||||
AM_CFLAGS = \
|
||||
$(WARN_CFLAGS) \
|
||||
-fvisibility=hidden \
|
||||
-I$(top_srcdir) \
|
||||
$(PTHREADSTUBS_CFLAGS) \
|
||||
$(PCIACCESS_CFLAGS) \
|
||||
$(VALGRIND_CFLAGS) \
|
||||
-I$(top_srcdir)/include/drm
|
||||
|
||||
libdrm_intel_la_LTLIBRARIES = libdrm_intel.la
|
||||
libdrm_intel_ladir = $(libdir)
|
||||
libdrm_intel_la_LDFLAGS = -version-number 1:0:0 -no-undefined
|
||||
libdrm_intel_la_LIBADD = ../libdrm.la \
|
||||
@PTHREADSTUBS_LIBS@ \
|
||||
@PCIACCESS_LIBS@ \
|
||||
@CLOCK_LIB@
|
||||
|
||||
libdrm_intel_la_SOURCES = $(LIBDRM_INTEL_FILES)
|
||||
|
||||
libdrm_intelincludedir = ${includedir}/libdrm
|
||||
libdrm_intelinclude_HEADERS = $(LIBDRM_INTEL_H_FILES)
|
||||
|
||||
# This may be interesting even outside of "make check", due to the -dump option.
|
||||
noinst_PROGRAMS = test_decode
|
||||
|
||||
BATCHES = \
|
||||
tests/gen4-3d.batch \
|
||||
tests/gm45-3d.batch \
|
||||
tests/gen5-3d.batch \
|
||||
tests/gen6-3d.batch \
|
||||
tests/gen7-2d-copy.batch \
|
||||
tests/gen7-3d.batch
|
||||
|
||||
AM_TESTS_ENVIRONMENT = NM='$(NM)'
|
||||
TESTS = \
|
||||
$(BATCHES:.batch=.batch.sh) \
|
||||
intel-symbol-check
|
||||
|
||||
EXTRA_DIST = \
|
||||
$(BATCHES) \
|
||||
$(BATCHES:.batch=.batch.sh) \
|
||||
$(BATCHES:.batch=.batch-ref.txt) \
|
||||
$(BATCHES:.batch=.batch-ref.txt) \
|
||||
tests/test-batch.sh \
|
||||
$(TESTS)
|
||||
|
||||
test_decode_LDADD = libdrm_intel.la ../libdrm.la
|
||||
|
||||
pkgconfig_DATA = libdrm_intel.pc
|
|
@ -0,0 +1,45 @@
|
|||
include Makefile.sources
|
||||
|
||||
AM_CFLAGS = \
|
||||
$(WARN_CFLAGS) \
|
||||
-fvisibility=hidden \
|
||||
-I$(top_srcdir)/include/drm \
|
||||
-I$(top_srcdir)
|
||||
|
||||
libkms_la_LTLIBRARIES = libkms.la
|
||||
libkms_ladir = $(libdir)
|
||||
libkms_la_LDFLAGS = -version-number 1:0:0 -no-undefined
|
||||
libkms_la_LIBADD = ../libdrm.la
|
||||
|
||||
libkms_la_SOURCES = $(LIBKMS_FILES)
|
||||
|
||||
if HAVE_VMWGFX
|
||||
libkms_la_SOURCES += $(LIBKMS_VMWGFX_FILES)
|
||||
endif
|
||||
|
||||
if HAVE_INTEL
|
||||
libkms_la_SOURCES += $(LIBKMS_INTEL_FILES)
|
||||
endif
|
||||
|
||||
if HAVE_NOUVEAU
|
||||
libkms_la_SOURCES += $(LIBKMS_NOUVEAU_FILES)
|
||||
endif
|
||||
|
||||
if HAVE_RADEON
|
||||
libkms_la_SOURCES += $(LIBKMS_RADEON_FILES)
|
||||
endif
|
||||
|
||||
if HAVE_EXYNOS
|
||||
libkms_la_SOURCES += $(LIBKMS_EXYNOS_FILES)
|
||||
AM_CFLAGS += -I$(top_srcdir)/exynos
|
||||
endif
|
||||
|
||||
libkmsincludedir = ${includedir}/libkms
|
||||
libkmsinclude_HEADERS = $(LIBKMS_H_FILES)
|
||||
|
||||
pkgconfigdir = @pkgconfigdir@
|
||||
pkgconfig_DATA = libkms.pc
|
||||
|
||||
AM_TESTS_ENVIRONMENT = NM='$(NM)'
|
||||
TESTS = kms-symbol-check
|
||||
EXTRA_DIST = $(TESTS)
|
|
@ -0,0 +1,5 @@
|
|||
libtool.m4
|
||||
lt~obsolete.m4
|
||||
ltoptions.m4
|
||||
ltsugar.m4
|
||||
ltversion.m4
|
|
@ -0,0 +1,62 @@
|
|||
#
|
||||
# This generates man-pages out of the Docbook XML files. Simply add your files
|
||||
# to the relevant *man_PRE array. If aliases are created, please add them to the
|
||||
# *man_aliases_PRE array so they get installed correctly.
|
||||
#
|
||||
|
||||
libman_PRE = \
|
||||
drmAvailable.xml \
|
||||
drmHandleEvent.xml \
|
||||
drmModeGetResources.xml
|
||||
|
||||
miscman_PRE = \
|
||||
drm.xml \
|
||||
drm-kms.xml \
|
||||
drm-memory.xml
|
||||
|
||||
miscman_aliases_PRE = \
|
||||
drm-mm.xml \
|
||||
drm-gem.xml \
|
||||
drm-ttm.xml
|
||||
|
||||
libmandir = $(LIB_MAN_DIR)
|
||||
miscmandir = $(MISC_MAN_DIR)
|
||||
miscman_aliasesdir = $(MISC_MAN_DIR)
|
||||
|
||||
libman_DATA = $(libman_PRE:.xml=.$(LIB_MAN_SUFFIX))
|
||||
miscman_DATA = $(miscman_PRE:.xml=.$(MISC_MAN_SUFFIX))
|
||||
miscman_aliases_DATA = $(miscman_aliases_PRE:.xml=.$(MISC_MAN_SUFFIX))
|
||||
|
||||
XML_FILES = \
|
||||
$(libman_PRE) \
|
||||
$(miscman_PRE)
|
||||
|
||||
MAN_FILES = \
|
||||
$(libman_DATA) \
|
||||
$(miscman_DATA) \
|
||||
$(miscman_aliases_DATA)
|
||||
|
||||
EXTRA_DIST = $(XML_FILES)
|
||||
CLEANFILES = $(MAN_FILES)
|
||||
|
||||
XSLTPROC_FLAGS = \
|
||||
--stringparam man.authors.section.enabled 0 \
|
||||
--stringparam man.copyright.section.enabled 0 \
|
||||
--stringparam funcsynopsis.style ansi \
|
||||
--stringparam man.output.quietly 1 \
|
||||
--nonet \
|
||||
$(MANPAGES_STYLESHEET)
|
||||
|
||||
XSLTPROC_PROCESS_MAN = \
|
||||
$(AM_V_GEN)$(XSLTPROC) -o "$@" $(XSLTPROC_FLAGS) "$<"
|
||||
|
||||
$(miscman_aliases_DATA): $(miscman_DATA)
|
||||
$(AM_V_GEN)if test -n "$@" ; then $(SED) -i -e 's/^\.so \([a-z_]\+\)\.\([0-9]\)$$/\.so man\2\/\1\.\2/' "$@" ; fi
|
||||
|
||||
SUFFIXES = .$(LIB_MAN_SUFFIX) .$(MISC_MAN_SUFFIX) .xml
|
||||
|
||||
.xml.$(LIB_MAN_SUFFIX):
|
||||
$(XSLTPROC_PROCESS_MAN)
|
||||
|
||||
.xml.$(MISC_MAN_SUFFIX):
|
||||
$(XSLTPROC_PROCESS_MAN)
|
|
@ -0,0 +1,35 @@
|
|||
include Makefile.sources
|
||||
|
||||
AM_CFLAGS = \
|
||||
$(WARN_CFLAGS) \
|
||||
-fvisibility=hidden \
|
||||
-I$(top_srcdir) \
|
||||
$(PTHREADSTUBS_CFLAGS) \
|
||||
-I$(top_srcdir)/include/drm \
|
||||
-DDEBUG
|
||||
|
||||
libdrm_nouveau_la_LTLIBRARIES = libdrm_nouveau.la
|
||||
libdrm_nouveau_ladir = $(libdir)
|
||||
libdrm_nouveau_la_LDFLAGS = -version-number 2:0:0 -no-undefined
|
||||
libdrm_nouveau_la_LIBADD = ../libdrm.la @PTHREADSTUBS_LIBS@
|
||||
|
||||
libdrm_nouveau_la_SOURCES = $(LIBDRM_NOUVEAU_FILES)
|
||||
|
||||
libdrm_nouveauincludedir = ${includedir}/libdrm/nouveau
|
||||
libdrm_nouveauinclude_HEADERS = $(LIBDRM_NOUVEAU_H_FILES)
|
||||
|
||||
libdrm_nouveaunvifincludedir = ${includedir}/libdrm/nouveau/nvif
|
||||
libdrm_nouveaunvifinclude_HEADERS = nvif/class.h \
|
||||
nvif/cl0080.h \
|
||||
nvif/cl9097.h \
|
||||
nvif/if0002.h \
|
||||
nvif/if0003.h \
|
||||
nvif/ioctl.h \
|
||||
nvif/unpack.h
|
||||
|
||||
pkgconfigdir = @pkgconfigdir@
|
||||
pkgconfig_DATA = libdrm_nouveau.pc
|
||||
|
||||
AM_TESTS_ENVIRONMENT = NM='$(NM)'
|
||||
TESTS = nouveau-symbol-check
|
||||
EXTRA_DIST = $(TESTS)
|
|
@ -0,0 +1,26 @@
|
|||
AM_CFLAGS = \
|
||||
$(WARN_CFLAGS) \
|
||||
-fvisibility=hidden \
|
||||
-I$(top_srcdir) \
|
||||
$(PTHREADSTUBS_CFLAGS) \
|
||||
-I$(top_srcdir)/include/drm
|
||||
|
||||
libdrm_omap_la_LTLIBRARIES = libdrm_omap.la
|
||||
libdrm_omap_ladir = $(libdir)
|
||||
libdrm_omap_la_LDFLAGS = -version-number 1:0:0 -no-undefined
|
||||
libdrm_omap_la_LIBADD = ../libdrm.la @PTHREADSTUBS_LIBS@
|
||||
|
||||
libdrm_omap_la_SOURCES = omap_drm.c
|
||||
|
||||
libdrm_omapcommonincludedir = ${includedir}/omap
|
||||
libdrm_omapcommoninclude_HEADERS = omap_drm.h
|
||||
|
||||
libdrm_omapincludedir = ${includedir}/libdrm
|
||||
libdrm_omapinclude_HEADERS = omap_drmif.h
|
||||
|
||||
pkgconfigdir = @pkgconfigdir@
|
||||
pkgconfig_DATA = libdrm_omap.pc
|
||||
|
||||
AM_TESTS_ENVIRONMENT = NM='$(NM)'
|
||||
TESTS = omap-symbol-check
|
||||
EXTRA_DIST = $(TESTS)
|
|
@ -0,0 +1,49 @@
|
|||
# Copyright © 2008 Jérôme Glisse
|
||||
#
|
||||
# Permission is hereby granted, free of charge, to any person obtaining a
|
||||
# copy of this software and associated documentation files (the "Software"),
|
||||
# to deal in the Software without restriction, including without limitation
|
||||
# the rights to use, copy, modify, merge, publish, distribute, sublicense,
|
||||
# and/or sell copies of the Software, and to permit persons to whom the
|
||||
# Software is furnished to do so, subject to the following conditions:
|
||||
#
|
||||
# The above copyright notice and this permission notice (including the next
|
||||
# paragraph) shall be included in all copies or substantial portions of the
|
||||
# Software.
|
||||
#
|
||||
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
|
||||
# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
||||
# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
|
||||
# IN THE SOFTWARE.
|
||||
#
|
||||
# Authors:
|
||||
# Jérôme Glisse <glisse@freedesktop.org>
|
||||
|
||||
include Makefile.sources
|
||||
|
||||
AM_CFLAGS = \
|
||||
$(WARN_CFLAGS) \
|
||||
-fvisibility=hidden \
|
||||
-I$(top_srcdir) \
|
||||
$(PTHREADSTUBS_CFLAGS) \
|
||||
-I$(top_srcdir)/include/drm
|
||||
|
||||
libdrm_radeon_la_LTLIBRARIES = libdrm_radeon.la
|
||||
libdrm_radeon_ladir = $(libdir)
|
||||
libdrm_radeon_la_LDFLAGS = -version-number 1:0:1 -no-undefined
|
||||
libdrm_radeon_la_LIBADD = ../libdrm.la @PTHREADSTUBS_LIBS@
|
||||
|
||||
libdrm_radeon_la_SOURCES = $(LIBDRM_RADEON_FILES)
|
||||
|
||||
libdrm_radeonincludedir = ${includedir}/libdrm
|
||||
libdrm_radeoninclude_HEADERS = $(LIBDRM_RADEON_H_FILES)
|
||||
|
||||
pkgconfigdir = @pkgconfigdir@
|
||||
pkgconfig_DATA = libdrm_radeon.pc
|
||||
|
||||
AM_TESTS_ENVIRONMENT = NM='$(NM)'
|
||||
TESTS = radeon-symbol-check
|
||||
EXTRA_DIST = $(LIBDRM_RADEON_BOF_FILES) $(TESTS)
|
|
@ -0,0 +1,27 @@
|
|||
AM_CPPFLAGS = \
|
||||
-I$(top_srcdir) \
|
||||
-I$(top_srcdir)/include/drm
|
||||
|
||||
AM_CFLAGS = \
|
||||
@PTHREADSTUBS_CFLAGS@ \
|
||||
$(WARN_CFLAGS) \
|
||||
-fvisibility=hidden
|
||||
|
||||
libdrm_tegra_ladir = $(libdir)
|
||||
libdrm_tegra_la_LTLIBRARIES = libdrm_tegra.la
|
||||
libdrm_tegra_la_LDFLAGS = -version-number 0:0:0 -no-undefined
|
||||
libdrm_tegra_la_LIBADD = ../libdrm.la @PTHREADSTUBS_LIBS@
|
||||
|
||||
libdrm_tegra_la_SOURCES = \
|
||||
private.h \
|
||||
tegra.c
|
||||
|
||||
libdrm_tegraincludedir = ${includedir}/libdrm
|
||||
libdrm_tegrainclude_HEADERS = tegra.h
|
||||
|
||||
pkgconfigdir = @pkgconfigdir@
|
||||
pkgconfig_DATA = libdrm_tegra.pc
|
||||
|
||||
AM_TESTS_ENVIRONMENT = NM='$(NM)'
|
||||
TESTS = tegra-symbol-check
|
||||
EXTRA_DIST = $(TESTS)
|
|
@ -0,0 +1,53 @@
|
|||
SUBDIRS = util kms modeprint proptest modetest vbltest
|
||||
|
||||
if HAVE_LIBKMS
|
||||
SUBDIRS += kmstest
|
||||
endif
|
||||
|
||||
if HAVE_RADEON
|
||||
SUBDIRS += radeon
|
||||
endif
|
||||
|
||||
if HAVE_AMDGPU
|
||||
if HAVE_CUNIT
|
||||
SUBDIRS += amdgpu
|
||||
endif
|
||||
endif
|
||||
|
||||
if HAVE_EXYNOS
|
||||
SUBDIRS += exynos
|
||||
endif
|
||||
|
||||
if HAVE_TEGRA
|
||||
SUBDIRS += tegra
|
||||
endif
|
||||
|
||||
if HAVE_ETNAVIV
|
||||
SUBDIRS += etnaviv
|
||||
endif
|
||||
|
||||
if HAVE_NOUVEAU
|
||||
SUBDIRS += nouveau
|
||||
endif
|
||||
|
||||
AM_CFLAGS = \
|
||||
$(WARN_CFLAGS)\
|
||||
-fvisibility=hidden \
|
||||
-I $(top_srcdir)/include/drm \
|
||||
-I $(top_srcdir)
|
||||
|
||||
LDADD = $(top_builddir)/libdrm.la
|
||||
|
||||
TESTS = \
|
||||
drmsl \
|
||||
hash \
|
||||
random
|
||||
|
||||
check_PROGRAMS = \
|
||||
$(TESTS)
|
||||
|
||||
if HAVE_INSTALL_TESTS
|
||||
bin_PROGRAMS = drmdevice
|
||||
else
|
||||
check_PROGRAMS += drmdevice
|
||||
endif
|
|
@ -0,0 +1,38 @@
|
|||
AM_CFLAGS = \
|
||||
-fvisibility=hidden \
|
||||
-I $(top_srcdir)/include/drm \
|
||||
-I $(top_srcdir)/amdgpu \
|
||||
-I $(top_srcdir) \
|
||||
-pthread
|
||||
|
||||
LDADD = $(top_builddir)/libdrm.la \
|
||||
$(top_builddir)/amdgpu/libdrm_amdgpu.la \
|
||||
$(CUNIT_LIBS)
|
||||
|
||||
if HAVE_INSTALL_TESTS
|
||||
bin_PROGRAMS = \
|
||||
amdgpu_test
|
||||
else
|
||||
noinst_PROGRAMS = \
|
||||
amdgpu_test
|
||||
endif
|
||||
|
||||
amdgpu_test_CPPFLAGS = $(CUNIT_CFLAGS)
|
||||
|
||||
amdgpu_test_SOURCES = \
|
||||
amdgpu_test.c \
|
||||
amdgpu_test.h \
|
||||
basic_tests.c \
|
||||
bo_tests.c \
|
||||
cs_tests.c \
|
||||
decode_messages.h \
|
||||
vce_tests.c \
|
||||
vce_ib.h \
|
||||
frame.h \
|
||||
uvd_enc_tests.c \
|
||||
vcn_tests.c \
|
||||
uve_ib.h \
|
||||
deadlock_tests.c \
|
||||
vm_tests.c \
|
||||
ras_tests.c \
|
||||
syncobj_tests.c
|
|
@ -0,0 +1,43 @@
|
|||
AM_CFLAGS = \
|
||||
-fvisibility=hidden \
|
||||
-I $(top_srcdir)/include/drm \
|
||||
-I $(top_srcdir)/etnaviv \
|
||||
-I $(top_srcdir)
|
||||
|
||||
if HAVE_INSTALL_TESTS
|
||||
bin_PROGRAMS = \
|
||||
etnaviv_2d_test \
|
||||
etnaviv_cmd_stream_test \
|
||||
etnaviv_bo_cache_test
|
||||
else
|
||||
noinst_PROGRAMS = \
|
||||
etnaviv_2d_test \
|
||||
etnaviv_cmd_stream_test \
|
||||
etnaviv_bo_cache_test
|
||||
endif
|
||||
|
||||
etnaviv_2d_test_LDADD = \
|
||||
$(top_builddir)/libdrm.la \
|
||||
$(top_builddir)/etnaviv/libdrm_etnaviv.la
|
||||
|
||||
etnaviv_2d_test_SOURCES = \
|
||||
cmdstream.xml.h \
|
||||
etnaviv_2d_test.c \
|
||||
state.xml.h \
|
||||
state_2d.xml.h \
|
||||
write_bmp.c \
|
||||
write_bmp.h
|
||||
|
||||
etnaviv_cmd_stream_test_LDADD = \
|
||||
$(top_builddir)/libdrm.la \
|
||||
$(top_builddir)/etnaviv/libdrm_etnaviv.la
|
||||
|
||||
etnaviv_cmd_stream_test_SOURCES = \
|
||||
etnaviv_cmd_stream_test.c
|
||||
|
||||
etnaviv_bo_cache_test_LDADD = \
|
||||
$(top_builddir)/libdrm.la \
|
||||
$(top_builddir)/etnaviv/libdrm_etnaviv.la
|
||||
|
||||
etnaviv_bo_cache_test_SOURCES = \
|
||||
etnaviv_bo_cache_test.c
|
|
@ -0,0 +1,48 @@
|
|||
AM_CFLAGS = \
|
||||
-pthread \
|
||||
$(WARN_CFLAGS)\
|
||||
-fvisibility=hidden \
|
||||
-I $(top_srcdir)/include/drm \
|
||||
-I $(top_srcdir)/libkms/ \
|
||||
-I $(top_srcdir)/exynos \
|
||||
-I $(top_srcdir)
|
||||
|
||||
bin_PROGRAMS =
|
||||
noinst_PROGRAMS =
|
||||
|
||||
if HAVE_LIBKMS
|
||||
if HAVE_INSTALL_TESTS
|
||||
bin_PROGRAMS += \
|
||||
exynos_fimg2d_test
|
||||
else
|
||||
noinst_PROGRAMS += \
|
||||
exynos_fimg2d_test
|
||||
endif
|
||||
endif
|
||||
|
||||
if HAVE_INSTALL_TESTS
|
||||
bin_PROGRAMS += \
|
||||
exynos_fimg2d_perf \
|
||||
exynos_fimg2d_event
|
||||
else
|
||||
noinst_PROGRAMS += \
|
||||
exynos_fimg2d_perf \
|
||||
exynos_fimg2d_event
|
||||
endif
|
||||
|
||||
exynos_fimg2d_perf_LDADD = \
|
||||
$(top_builddir)/libdrm.la \
|
||||
$(top_builddir)/exynos/libdrm_exynos.la
|
||||
|
||||
exynos_fimg2d_event_LDADD = \
|
||||
$(top_builddir)/libdrm.la \
|
||||
$(top_builddir)/exynos/libdrm_exynos.la
|
||||
|
||||
exynos_fimg2d_test_LDADD = \
|
||||
$(top_builddir)/libdrm.la \
|
||||
$(top_builddir)/libkms/libkms.la \
|
||||
$(top_builddir)/exynos/libdrm_exynos.la
|
||||
|
||||
exynos_fimg2d_test_SOURCES = \
|
||||
exynos_fimg2d_test.c
|
||||
|
|
@ -0,0 +1,37 @@
|
|||
AM_CPPFLAGS = \
|
||||
-I$(top_srcdir)/include/drm \
|
||||
-I$(top_srcdir)/tests \
|
||||
-I$(top_srcdir)
|
||||
|
||||
AM_CFLAGS = \
|
||||
$(WARN_CFLAGS) \
|
||||
-fvisibility=hidden
|
||||
|
||||
noinst_LTLIBRARIES = libkms-test.la
|
||||
|
||||
libkms_test_la_SOURCES = \
|
||||
libkms-test.h \
|
||||
libkms-test-crtc.c \
|
||||
libkms-test-device.c \
|
||||
libkms-test-framebuffer.c \
|
||||
libkms-test-plane.c \
|
||||
libkms-test-screen.c
|
||||
|
||||
libkms_test_la_LIBADD = \
|
||||
$(top_builddir)/libdrm.la
|
||||
|
||||
if HAVE_INSTALL_TESTS
|
||||
bin_PROGRAMS = \
|
||||
kms-steal-crtc \
|
||||
kms-universal-planes
|
||||
else
|
||||
noinst_PROGRAMS = \
|
||||
kms-steal-crtc \
|
||||
kms-universal-planes
|
||||
endif
|
||||
|
||||
kms_steal_crtc_SOURCES = kms-steal-crtc.c
|
||||
kms_steal_crtc_LDADD = libkms-test.la ../util/libutil.la $(CAIRO_LIBS)
|
||||
|
||||
kms_universal_planes_SOURCES = kms-universal-planes.c
|
||||
kms_universal_planes_LDADD = libkms-test.la $(CAIRO_LIBS)
|
|
@ -0,0 +1,26 @@
|
|||
AM_CFLAGS = \
|
||||
$(WARN_CFLAGS)\
|
||||
-fvisibility=hidden \
|
||||
-I$(top_srcdir)/include/drm \
|
||||
-I$(top_srcdir)/libkms/ \
|
||||
-I$(top_srcdir)/tests/ \
|
||||
-I$(top_srcdir)
|
||||
|
||||
if HAVE_INSTALL_TESTS
|
||||
bin_PROGRAMS = \
|
||||
kmstest
|
||||
else
|
||||
noinst_PROGRAMS = \
|
||||
kmstest
|
||||
endif
|
||||
|
||||
kmstest_SOURCES = \
|
||||
main.c
|
||||
|
||||
kmstest_LDADD = \
|
||||
$(top_builddir)/tests/util/libutil.la \
|
||||
$(top_builddir)/libkms/libkms.la \
|
||||
$(top_builddir)/libdrm.la
|
||||
|
||||
run: kmstest
|
||||
./kmstest
|
|
@ -0,0 +1,20 @@
|
|||
AM_CFLAGS = \
|
||||
$(WARN_CFLAGS)\
|
||||
-fvisibility=hidden \
|
||||
-I$(top_srcdir)/include/drm \
|
||||
-I$(top_srcdir)/tests \
|
||||
-I$(top_srcdir)
|
||||
|
||||
if HAVE_INSTALL_TESTS
|
||||
bin_PROGRAMS = \
|
||||
modeprint
|
||||
else
|
||||
noinst_PROGRAMS = \
|
||||
modeprint
|
||||
endif
|
||||
|
||||
modeprint_SOURCES = \
|
||||
modeprint.c
|
||||
modeprint_LDADD = \
|
||||
$(top_builddir)/tests/util/libutil.la \
|
||||
$(top_builddir)/libdrm.la
|
|
@ -0,0 +1,25 @@
|
|||
include Makefile.sources
|
||||
|
||||
AM_CFLAGS = $(filter-out -Wpointer-arith, $(WARN_CFLAGS))
|
||||
|
||||
AM_CFLAGS += \
|
||||
-fvisibility=hidden \
|
||||
-pthread \
|
||||
-I$(top_srcdir)/include/drm \
|
||||
-I$(top_srcdir)/tests \
|
||||
-I$(top_srcdir)
|
||||
|
||||
if HAVE_INSTALL_TESTS
|
||||
bin_PROGRAMS = \
|
||||
modetest
|
||||
else
|
||||
noinst_PROGRAMS = \
|
||||
modetest
|
||||
endif
|
||||
|
||||
modetest_SOURCES = $(MODETEST_FILES)
|
||||
|
||||
modetest_LDADD = \
|
||||
$(top_builddir)/libdrm.la \
|
||||
$(top_builddir)/tests/util/libutil.la \
|
||||
$(CAIRO_LIBS)
|
|
@ -0,0 +1,17 @@
|
|||
AM_CFLAGS = \
|
||||
-pthread \
|
||||
$(WARN_CFLAGS) \
|
||||
-fvisibility=hidden \
|
||||
-I$(top_srcdir)/include/drm \
|
||||
-I$(top_srcdir)/nouveau \
|
||||
-I$(top_srcdir)
|
||||
|
||||
LDADD = \
|
||||
../../nouveau/libdrm_nouveau.la \
|
||||
../../libdrm.la \
|
||||
-ldl
|
||||
|
||||
TESTS = threaded
|
||||
|
||||
check_PROGRAMS = $(TESTS)
|
||||
|
|
@ -0,0 +1,22 @@
|
|||
include Makefile.sources
|
||||
|
||||
AM_CFLAGS = \
|
||||
$(WARN_CFLAGS)\
|
||||
-fvisibility=hidden \
|
||||
-I$(top_srcdir)/include/drm \
|
||||
-I$(top_srcdir)/tests \
|
||||
-I$(top_srcdir)
|
||||
|
||||
if HAVE_INSTALL_TESTS
|
||||
bin_PROGRAMS = \
|
||||
proptest
|
||||
else
|
||||
noinst_PROGRAMS = \
|
||||
proptest
|
||||
endif
|
||||
|
||||
proptest_SOURCES = $(PROPTEST_FILES)
|
||||
|
||||
proptest_LDADD = \
|
||||
$(top_builddir)/libdrm.la \
|
||||
$(top_builddir)/tests/util/libutil.la
|
|
@ -0,0 +1,15 @@
|
|||
AM_CFLAGS = \
|
||||
$(WARN_CFLAGS)\
|
||||
-fvisibility=hidden \
|
||||
-I $(top_srcdir)/include/drm \
|
||||
-I $(top_srcdir)
|
||||
|
||||
LDADD = $(top_builddir)/libdrm.la
|
||||
|
||||
noinst_PROGRAMS = \
|
||||
radeon_ttm
|
||||
|
||||
radeon_ttm_SOURCES = \
|
||||
rbo.c \
|
||||
rbo.h \
|
||||
radeon_ttm.c
|
|
@ -0,0 +1,15 @@
|
|||
AM_CPPFLAGS = \
|
||||
-I$(top_srcdir)/include/drm \
|
||||
-I$(top_srcdir)/tegra \
|
||||
-I$(top_srcdir)
|
||||
|
||||
AM_CFLAGS = \
|
||||
$(WARN_CFLAGS) \
|
||||
-fvisibility=hidden
|
||||
|
||||
LDADD = \
|
||||
../../tegra/libdrm_tegra.la \
|
||||
../../libdrm.la
|
||||
|
||||
noinst_PROGRAMS = \
|
||||
openclose
|
|
@ -0,0 +1,13 @@
|
|||
include Makefile.sources
|
||||
|
||||
noinst_LTLIBRARIES = \
|
||||
libutil.la
|
||||
|
||||
libutil_la_CPPFLAGS = \
|
||||
-I$(top_srcdir)/include/drm \
|
||||
-I$(top_srcdir)
|
||||
|
||||
libutil_la_CFLAGS = \
|
||||
$(CAIRO_CFLAGS)
|
||||
|
||||
libutil_la_SOURCES = $(UTIL_FILES)
|
|
@ -0,0 +1,20 @@
|
|||
AM_CFLAGS = \
|
||||
$(WARN_CFLAGS)\
|
||||
-fvisibility=hidden \
|
||||
-I$(top_srcdir)/include/drm \
|
||||
-I$(top_srcdir)/tests \
|
||||
-I$(top_srcdir)
|
||||
|
||||
if HAVE_INSTALL_TESTS
|
||||
bin_PROGRAMS = \
|
||||
vbltest
|
||||
else
|
||||
noinst_PROGRAMS = \
|
||||
vbltest
|
||||
endif
|
||||
|
||||
vbltest_SOURCES = \
|
||||
vbltest.c
|
||||
vbltest_LDADD = \
|
||||
$(top_builddir)/libdrm.la \
|
||||
$(top_builddir)/tests/util/libutil.la
|
|
@ -0,0 +1,35 @@
|
|||
# Copyright © 2016 Broadcom
|
||||
#
|
||||
# Permission is hereby granted, free of charge, to any person obtaining a
|
||||
# copy of this software and associated documentation files (the "Software"),
|
||||
# to deal in the Software without restriction, including without limitation
|
||||
# the rights to use, copy, modify, merge, publish, distribute, sublicense,
|
||||
# and/or sell copies of the Software, and to permit persons to whom the
|
||||
# Software is furnished to do so, subject to the following conditions:
|
||||
#
|
||||
# The above copyright notice and this permission notice (including the next
|
||||
# paragraph) shall be included in all copies or substantial portions of the
|
||||
# Software.
|
||||
#
|
||||
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
|
||||
# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
||||
# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
|
||||
# IN THE SOFTWARE.
|
||||
|
||||
include Makefile.sources
|
||||
|
||||
AM_CFLAGS = \
|
||||
$(WARN_CFLAGS) \
|
||||
-fvisibility=hidden \
|
||||
-I$(top_srcdir) \
|
||||
$(PTHREADSTUBS_CFLAGS) \
|
||||
$(VALGRIND_CFLAGS) \
|
||||
-I$(top_srcdir)/include/drm
|
||||
|
||||
libdrm_vc4includedir = ${includedir}/libdrm
|
||||
libdrm_vc4include_HEADERS = $(LIBDRM_VC4_H_FILES)
|
||||
|
||||
pkgconfig_DATA = libdrm_vc4.pc
|
Loading…
Reference in New Issue