summaryrefslogtreecommitdiff
path: root/linux/Makefile.kernel
blob: 857c236a0bca7e487543c5917058ff4e465e3f8b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
#
# Makefile for the drm device driver.  This driver provides support for the
# Direct Rendering Infrastructure (DRI) in XFree86 4.1.0 and higher.
#
# Based on David Woodhouse's mtd build.
#
# $XFree86: xc/programs/Xserver/hw/xfree86/os-support/linux/drm/kernel/Makefile.kernel,v 1.18 2003/08/16 17:59:17 dawes Exp $
#

gamma-objs  := gamma_drv.o gamma_dma.o
tdfx-objs   := tdfx_drv.o
r128-objs   := r128_drv.o r128_cce.o r128_state.o r128_irq.o
mga-objs    := mga_drv.o mga_dma.o mga_state.o mga_warp.o mga_irq.o 
i810-objs   := i810_drv.o i810_dma.o
i830-objs   := i830_drv.o i830_dma.o i830_irq.o
i915-objs   := i915_drv.o i915_dma.o i915_irq.o i915_mem.o
radeon-objs := radeon_drv.o radeon_cp.o radeon_state.o radeon_mem.o radeon_irq.o
sis-objs    := sis_drv.o sis_ds.o sis_mm.o
ffb-objs    := ffb_drv.o ffb_context.o
savage-objs := savage_drv.o savage_dma.o
via-objs    := via_irq.o via_drv.o via_ds.o via_map.o via_mm.o via_dma.o
mach64-objs := mach64_drv.o mach64_dma.o mach64_irq.o mach64_state.o

# Kernel version checks

BELOW25 := $(shell if [ $(PATCHLEVEL) -lt 5 ]; then echo y; fi)

# There were major build changes starting with 2.5.52
ifneq ($(BELOW25),y)
BELOW2552 := $(shell if [ $(PATCHLEVEL) -eq 5 -a $(SUBLEVEL) -lt 52 ]; then echo y; fi)
else
BELOW2552 := y
endif

ifeq ($(BELOW25),y)
O_TARGET	:= drm.o
list-multi	:= gamma.o tdfx.o r128.o mga.o i810.o i830.o ffb.o radeon.o \
                   savage.o via.o mach64.o i915.o
obj-m		:=
obj-n		:=
obj-		:=
export-objs     := via_mm.o
endif

obj-$(CONFIG_DRM_GAMMA) += gamma.o
obj-$(CONFIG_DRM_TDFX)	+= tdfx.o
obj-$(CONFIG_DRM_R128)	+= r128.o
obj-$(CONFIG_DRM_RADEON)+= radeon.o
obj-$(CONFIG_DRM_MGA)	+= mga.o
obj-$(CONFIG_DRM_I810)	+= i810.o
obj-$(CONFIG_DRM_I830)	+= i830.o
obj-$(CONFIG_DRM_I915)	+= i915.o
obj-$(CONFIG_DRM_SIS)   += sis.o
obj-$(CONFIG_DRM_FFB)   += ffb.o
obj-$(CONFIG_DRM_SAVAGE)+= savage.o
obj-$(CONFIG_DRM_VIA)   += via.o
obj-$(CONFIG_DRM_MACH64)+= mach64.o

ifeq ($(BELOW2552),y)
include $(TOPDIR)/Rules.make
endif

ifeq ($(BELOW25),y)
gamma.o: $(gamma-objs) $(lib)
	$(LD) -r -o $@ $(gamma-objs) $(lib)

tdfx.o: $(tdfx-objs) $(lib)
	$(LD) -r -o $@ $(tdfx-objs) $(lib)

mga.o: $(mga-objs) $(lib)
	$(LD) -r -o $@ $(mga-objs) $(lib)

i810.o: $(i810-objs) $(lib)
	$(LD) -r -o $@ $(i810-objs) $(lib)

i830.o: $(i830-objs) $(lib)
	$(LD) -r -o $@ $(i830-objs) $(lib)

i915.o: $(i915-objs) $(lib)
	$(LD) -r -o $@ $(i915-objs) $(lib)

r128.o: $(r128-objs) $(lib)
	$(LD) -r -o $@ $(r128-objs) $(lib)

radeon.o: $(radeon-objs) $(lib)
	$(LD) -r -o $@ $(radeon-objs) $(lib)

sis.o: $(sis-objs) $(lib)
	$(LD) -r -o $@ $(sis-objs) $(lib)

ffb.o: $(ffb-objs) $(lib)
	$(LD) -r -o $@ $(ffb-objs) $(lib)

savage.o: $(savage-objs) $(lib)
	$(LD) -r -o $@ $(savage-objs) $(lib)

via.o: $(via-objs) $(lib)
	$(LD) -r -o $@ $(via-objs) $(lib)

mach64.o: $(mach64-objs) $(lib)
	$(LD) -r -o $@ $(mach64-objs) $(lib)

endif