OSDN Git Service

freedreno/msm: handle ring-reloc to other stateobjs
[android-x86/external-libdrm.git] / README
1 libdrm - userspace library for drm
2
3 This  is libdrm,  a userspace  library for  accessing the  DRM, direct
4 rendering  manager, on  Linux,  BSD and  other  operating systems that
5 support the  ioctl interface.  The library  provides wrapper functions
6 for the  ioctls to avoid  exposing the kernel interface  directly, and
7 for chipsets with drm memory manager, support for tracking relocations
8 and  buffers.   libdrm  is  a  low-level library,  typically  used  by
9 graphics drivers  such as the Mesa  DRI drivers, the  X drivers, libva
10 and  similar projects.  New  functionality in  the kernel  DRM drivers
11 typically requires  a new  libdrm, but a  new libdrm will  always work
12 with an older kernel.
13
14
15 Compiling
16 ---------
17
18 libdrm has two build systems, a legacy autotools build system, and a newer
19 meson build system. The meson build system is much faster, and offers a
20 slightly different interface, but otherwise provides an equivalent feature set.
21
22 To use it:
23
24     meson builddir/
25
26 By default this will install into /usr/local, you can change your prefix
27 with --prefix=/usr (or `meson configure builddir/ -Dprefix=/usr` after 
28 the initial meson setup).
29
30 Then use ninja to build and install:
31
32     ninja -C builddir/ install
33
34 If you are installing into a system location you will need to run install
35 separately, and as root.
36
37
38 Alternatively you can invoke autotools configure:
39
40         ./configure
41
42 By default, libdrm  will install into the /usr/local/  prefix.  If you
43 want  to  install   this  DRM  to  replace  your   system  copy,  pass
44 --prefix=/usr and  --exec-prefix=/ to configure.  If  you are building
45 libdrm  from a  git checkout,  you first  need to  run  the autogen.sh
46 script.  You can  pass any options to autogen.sh  that you would other
47 wise  pass to configure,  or you  can just  re-run configure  with the
48 options you need once autogen.sh finishes.
49
50 Next step is to build libdrm:
51
52         make
53
54 and once make finishes successfully, install the package using
55
56         make install
57
58 If you are installing into a system location, you will need to be root
59 to perform the install step.