Use C99 versions of __FUNCTION__ & __volatile__ when not building with gcc
[platform/upstream/libdrm.git] / README
1
2 DRM README file
3
4
5 There are two main parts to this package: the DRM client library/interface
6 (libdrm.so) and kernel/hardware-specific device modules (such as radeon.ko).
7 The kernel device modules are not shipped with libdrm releases and should only
8 be built from the git tree by developers and bleeding-edge testers of
9 non-Intel hardware.  The Intel kernel modules are developed in the Linux
10 kernel tree.
11
12
13 Compiling
14 ---------
15
16 By default, libdrm and the DRM header files will install into /usr/local/.
17 If you want to install this DRM to replace your system copy, say:
18
19         ./configure --prefix=/usr --exec-prefix=/
20
21 Then,
22         make install
23
24
25 To build the device-specific kernel modules from the git tree:
26
27         cd linux-core/
28         make
29         cp *.ko /lib/modules/VERSION/kernel/drivers/char/drm/
30            (where VERSION is your kernel version: uname -f)
31
32 Or,
33         cd bsd-core/
34         make
35         copy the kernel modules to the appropriate place
36
37
38
39 Tips & Trouble-shooting
40 -----------------------
41
42 1. You'll need kernel sources.  If using Fedora Core 5, for example, you may
43    need to install RPMs such as:
44
45         kernel-smp-devel-2.6.15-1.2054_FC5.i686.rpm
46         kernel-devel-2.6.15-1.2054_FC5.i686.rpm
47         etc.
48
49
50 2. You may need to make a symlink from /lib/modules/VERSION/build to your
51    kernel sources in /usr/src/kernels/VERSION (where version is `uname -r`):
52
53         cd /lib/modules/VERSION
54         ln -s /usr/src/kernels/VERSION build
55
56
57 3. If you've build the kernel modules but they won't load because of an
58    error like this:
59
60         $ /sbin/modprobe drm
61         FATAL: Error inserting drm (/lib/modules/2.6.15-1.2054_FC5smp/kernel/drivers/char/drm/drm.ko): Invalid module format
62
63    And 'dmesg|tail' says:
64
65         drm: disagrees about version of symbol struct_module 
66
67    Try recompiling your drm modules without the Module.symvers file.
68    That is rm the /usr/src/kernels/2.6.15-1.2054_FC5-smp-i686/Module.symvers
69    file (or rename it).  Then do a 'make clean' before rebuilding your drm
70    modules.
71
72