You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
sandy 5629dff5f1 PL280 release code 4 years ago
..
amdgpu PL280 release code 4 years ago
android PL280 release code 4 years ago
data PL280 release code 4 years ago
etnaviv PL280 release code 4 years ago
exynos PL280 release code 4 years ago
freedreno PL280 release code 4 years ago
include/drm PL280 release code 4 years ago
intel PL280 release code 4 years ago
libkms PL280 release code 4 years ago
man PL280 release code 4 years ago
nouveau PL280 release code 4 years ago
omap PL280 release code 4 years ago
radeon PL280 release code 4 years ago
rockchip PL280 release code 4 years ago
tegra PL280 release code 4 years ago
tests PL280 release code 4 years ago
vc4 PL280 release code 4 years ago
.editorconfig PL280 release code 4 years ago
Android.bp PL280 release code 4 years ago
Android.sources.bp PL280 release code 4 years ago
Android.sources.bp.mk PL280 release code 4 years ago
CleanSpec.mk PL280 release code 4 years ago
Makefile.am PL280 release code 4 years ago
Makefile.sources PL280 release code 4 years ago
OWNERS PL280 release code 4 years ago
README PL280 release code 4 years ago
RELEASING PL280 release code 4 years ago
autogen.sh PL280 release code 4 years ago
configure.ac PL280 release code 4 years ago
libdrm.pc.in PL280 release code 4 years ago
libdrm_lists.h PL280 release code 4 years ago
libdrm_macros.h PL280 release code 4 years ago
libsync.h PL280 release code 4 years ago
meson.build PL280 release code 4 years ago
meson_options.txt PL280 release code 4 years ago
util_double_list.h PL280 release code 4 years ago
util_math.h PL280 release code 4 years ago
xf86atomic.h PL280 release code 4 years ago
xf86drm.c PL280 release code 4 years ago
xf86drm.h PL280 release code 4 years ago
xf86drmHash.c PL280 release code 4 years ago
xf86drmHash.h PL280 release code 4 years ago
xf86drmMode.c PL280 release code 4 years ago
xf86drmMode.h PL280 release code 4 years ago
xf86drmRandom.c PL280 release code 4 years ago
xf86drmRandom.h PL280 release code 4 years ago
xf86drmSL.c PL280 release code 4 years ago

README

libdrm - userspace library for drm

This is libdrm, a userspace library for accessing the DRM, direct
rendering manager, on Linux, BSD and other operating systems that
support the ioctl interface. The library provides wrapper functions
for the ioctls to avoid exposing the kernel interface directly, and
for chipsets with drm memory manager, support for tracking relocations
and buffers. libdrm is a low-level library, typically used by
graphics drivers such as the Mesa DRI drivers, the X drivers, libva
and similar projects. New functionality in the kernel DRM drivers
typically requires a new libdrm, but a new libdrm will always work
with an older kernel.


Compiling
---------

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/

By default this will install into /usr/local, you can change your prefix
with --prefix=/usr (or `meson configure builddir/ -Dprefix=/usr` after
the initial meson setup).

Then use ninja to build and install:

ninja -C builddir/ 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.