summaryrefslogtreecommitdiff
path: root/unichrome/Imakefile
blob: 6a7167f8b280f6b04f87a69bf0e9af96f88c1660 (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
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
#define IHaveModules
#include <Server.tmpl>

XCOMM Add a comment into the source if we are building svn code.
all:: svnversion.h

svnversion.h:
	@if [ -f svnrelease.h ]; then \
	echo '#include "svnrelease.h"' > $@.tmp; \
	elif [ -d .svn ]; then \
	echo '#define BUILDCOMMENT "(development build, at svn revision '\
	"`svnversion -nc . | sed -e s/^[^:]*://`"')\n"' > $@.tmp; \
	else date +'#define BUILDCOMMENT "(development build, compiled on %c)\n"' > $@.tmp; fi

	@(chmod 666 $@.tmp 2> /dev/null || /bin/true)
	@cmp -s $@ $@.tmp || (mv $@.tmp $@ ; echo created $@)

.PHONY: svnversion.h

XCOMM Check the version to see if we need anything special.
#ifdef XF86_VERSION_CURRENT
XCOMM We are using Xfree86

XCOMM This needs a seperate check though, debian dfsg-6 needs this
XCOMM but it's version is still 4.3.0.1 - see via_xvmc.c
#if XF86_VERSION_CURRENT >= XF86_VERSION_NUMERIC(4,3,99,3,0)
DEFXVPRIV = -DX_NEED_XVPRIV_H
#endif

#if XF86_VERSION_CURRENT >= XF86_VERSION_NUMERIC(4,3,99,16,0)
DEFREGIONNULL = -DX_USE_REGION_NULL
#endif

#if XF86_VERSION_CURRENT >= XF86_VERSION_NUMERIC(4,4,99,2,0)
XCOMM for Imakefile only
#define X_NEED_NEWMODULETARGET 1
#endif

#if XF86_VERSION_CURRENT <= XF86_VERSION_NUMERIC(4,4,99,7,0)
XCOMM drm_hw_lock_t is hidden behind __KERNEL__ here
XCOMM use drmLock instead
DEFXNEEDDRMLOCK = -DX_NEED_DRMLOCK
#else
#undef DEFXNEEDDRMLOCK
#endif

#else
XCOMM We are using X.org
XCOMM The XF86_VERSION stuff just had to be renamed it seems. Why
XCOMM they kept XORG_VERSION at all I don't know, since they are 
XCOMM apparently not bothering with altering it. Both the x.org 
XCOMM release and a cvs checkout (3m after release) here are 
XCOMM 6.7.0.0.0. Luckily, apart from the drm.h location, this is 
XCOMM not a problem... yet. -- luc

DEFXVPRIV = -DX_NEED_XVPRIV_H
DEFREGIONNULL = -DX_USE_REGION_NULL

#if BuildXF86DRI
XCOMM Since we are unable to properly version, just include the lot.
X_DRM_H_LOCATION = -I$(DRMSRCDIR)/shared-core -I$(DRMSRCDIR)/shared -I$(XF86OSSRC)/shared/drm/kernel
#endif 

XCOMM Include the Xorg changes concerning dlloader (by Adam Jackson). 
XCOMM The current changes are not necessary yet, but I've backported
XCOMM them anyway.
#if MakeDllModules
DEFXAAGETROP = -DX_HAVE_XAAGETROP
#endif

XCOMM We don't need X_NEED_NEWMODULETARGET with X.org
#undef X_NEED_NEWMODULETARGET

XCOMM I2CBusses require the Start function attached from 6.8 and on
#if XORG_VERSION_MINOR > 7
DEFI2CSTART = -DX_NEED_I2CSTART
#else
#undef DEFI2CSTART
#endif

#if XORG_VERSION_MINOR < 7
XCOMM drm_hw_lock_t is hidden behind __KERNEL__ here
XCOMM use drmLock instead
DEFXNEEDDRMLOCK = -DX_NEED_DRMLOCK
#else
#undef DEFXNEEDDRMLOCK
#endif

#endif

#if BuildXF86DRI
DRISRCS = via_dri.c via_xvmc.c
DRIOBJS = via_dri.o via_xvmc.o
DRIINCLUDES = -I$(SERVERSRC)/GL/dri -I$(LIBSRC)/GL/dri \
       $(X_DRM_H_LOCATION) -I$(TOP)/include
DRIDEFINES = $(GLX_DEFINES)
#endif

#ifdef XF86EXA
EXAINCLUDES = -I$(XF86SRC)/exa
EXADEFINES = -DVIA_HAVE_EXA
#endif

SRCS = via_driver.c \
    via_3d.c \
    via_accel.c \
    via_bandwidth.c \
    via_ch7xxx.c \
    via_mode.c \
    via_cursor.c \
    via_shadow.c \
    via_dga.c \
    via_video.c \
    via_i2c.c \
    via_id.c \
    via_swov.c \
    via_memory.c \
    via_memcpy.c \
    via_vbe.c \
    via_vgahw.c \
    via_vt162x.c \
    $(DRISRCS)

OBJS = via_driver.o \
    via_3d.o \
    via_accel.o \
    via_bandwidth.o \
    via_ch7xxx.o \
    via_mode.o \
    via_cursor.o \
    via_shadow.o \
    via_dga.o \
    via_video.o \
    via_i2c.o \
    via_id.o \
    via_swov.o \
    via_memory.o \
    via_memcpy.o \
    via_vbe.o \
    via_vgahw.o \
    via_vt162x.o \
    $(DRIOBJS)

#if defined(XF86DriverSDK)
INCLUDES = -I. -I../../include
#else
INCLUDES = -I. -I$(XF86COMSRC) -I$(XF86OSSRC) \
           -I$(SERVERSRC)/mfb -I$(SERVERSRC)/mi \
           -I$(SERVERSRC)/cfb -I$(XF86SRC)/xaa \
           -I$(XF86SRC)/xf1bpp -I$(XF86SRC)/xf4bpp \
           -I$(XF86SRC)/xf24_32bpp -I$(SERVERSRC)/Xext \
           -I$(XF86SRC)/vgahw -I$(XF86SRC)/ramdac \
           -I$(XF86SRC)/ddc -I$(XF86SRC)/i2c \
           -I$(XF86SRC)/rac -I$(XF86SRC)/int10 -I$(SERVERSRC)/render \
           -I$(SERVERSRC)/include -I$(XINCLUDESRC) -I$(FONTINCSRC) \
           -I$(EXTINCSRC) -I$(XF86SRC)/vbe -I$(XF86SRC)/shadowfb \
           -I$(SERVERSRC)/fb $(DRIINCLUDES) $(EXAINCLUDES)
#endif

DEFINES = $(DRIDEFINES) $(DEFXVPRIV) $(DEFREGIONNULL) \
	$(DEFXAAGETROP) $(DEFI2CSTART) $(DEFXNEEDDRMLOCK) $(EXADEFINES)

#if MakeHasPosixVariableSubstitutions
SubdirLibraryRule($(OBJS))
#endif

NormalAsmObjectRule()

ModuleObjectRule()
#ifdef X_NEED_NEWMODULETARGET
ObjectModuleTarget(via, $(OBJS),drivers)
#else
ObjectModuleTarget(via, $(OBJS))
#endif

#ifdef InstallVideoObjectModule
InstallVideoObjectModule(via,$(MODULEDIR))
#else
InstallObjectModule(via,$(MODULEDIR),drivers)
#endif

#if !defined(XF86DriverSDK)
CppManTarget(via,)
InstallModuleManPage(via)
#endif

DependTarget()

InstallDriverSDKNonExecFile(Imakefile,$(DRIVERSDKDIR)/drivers/via)
InstallDriverSDKNonExecFile(via.h,$(DRIVERSDKDIR)/drivers/via)
InstallDriverSDKNonExecFile(via_3d.c,$(DRIVERSDKDIR)/drivers/via)
InstallDriverSDKNonExecFile(via_3d.h,$(DRIVERSDKDIR)/drivers/via)
InstallDriverSDKNonExecFile(via_accel.c,$(DRIVERSDKDIR)/drivers/via)
InstallDriverSDKNonExecFile(via_bandwidth.c,$(DRIVERSDKDIR)/drivers/via)
InstallDriverSDKNonExecFile(via_bios.h,$(DRIVERSDKDIR)/drivers/via)
InstallDriverSDKNonExecFile(via_ch7xxx.c,$(DRIVERSDKDIR)/drivers/via)
InstallDriverSDKNonExecFile(via_ch7xxx.h,$(DRIVERSDKDIR)/drivers/via)
InstallDriverSDKNonExecFile(via_cursor.c,$(DRIVERSDKDIR)/drivers/via)
InstallDriverSDKNonExecFile(via_dga.c,$(DRIVERSDKDIR)/drivers/via)
InstallDriverSDKNonExecFile(via_dmabuffer.h,$(DRIVERSDKDIR)/drivers/via)
InstallDriverSDKNonExecFile(via_dri.c,$(DRIVERSDKDIR)/drivers/via)
InstallDriverSDKNonExecFile(via_dri.h,$(DRIVERSDKDIR)/drivers/via)
InstallDriverSDKNonExecFile(via_driver.c,$(DRIVERSDKDIR)/drivers/via)
InstallDriverSDKNonExecFile(via_driver.h,$(DRIVERSDKDIR)/drivers/via)
InstallDriverSDKNonExecFile(via_drm.h,$(DRIVERSDKDIR)/drivers/via)
InstallDriverSDKNonExecFile(via_drmclient.h,$(DRIVERSDKDIR)/drivers/via)
InstallDriverSDKNonExecFile(via_i2c.c,$(DRIVERSDKDIR)/drivers/via)
InstallDriverSDKNonExecFile(via_id.h,$(DRIVERSDKDIR)/drivers/via)
InstallDriverSDKNonExecFile(via_id.c,$(DRIVERSDKDIR)/drivers/via)
InstallDriverSDKNonExecFile(via_memcpy.c,$(DRIVERSDKDIR)/drivers/via)
InstallDriverSDKNonExecFile(via_memcpy.h,$(DRIVERSDKDIR)/drivers/via)
InstallDriverSDKNonExecFile(via_memory.c,$(DRIVERSDKDIR)/drivers/via)
InstallDriverSDKNonExecFile(via_mode.c,$(DRIVERSDKDIR)/drivers/via)
InstallDriverSDKNonExecFile(via_mode.h,$(DRIVERSDKDIR)/drivers/via)
InstallDriverSDKNonExecFile(via_priv.h,$(DRIVERSDKDIR)/drivers/via)
InstallDriverSDKNonExecFile(via_regs.h,$(DRIVERSDKDIR)/drivers/via)
InstallDriverSDKNonExecFile(via_shadow.c,$(DRIVERSDKDIR)/drivers/via)
InstallDriverSDKNonExecFile(via_swov.c,$(DRIVERSDKDIR)/drivers/via)
InstallDriverSDKNonExecFile(via_swov.h,$(DRIVERSDKDIR)/drivers/via)
InstallDriverSDKNonExecFile(via_vbe.c,$(DRIVERSDKDIR)/drivers/via)
InstallDriverSDKNonExecFile(via_vgahw.c,$(DRIVERSDKDIR)/drivers/via)
InstallDriverSDKNonExecFile(via_vgahw.h,$(DRIVERSDKDIR)/drivers/via)
InstallDriverSDKNonExecFile(via_video.c,$(DRIVERSDKDIR)/drivers/via)
InstallDriverSDKNonExecFile(via_video.h,$(DRIVERSDKDIR)/drivers/via)
InstallDriverSDKNonExecFile(via_vt162x.c,$(DRIVERSDKDIR)/drivers/via)
InstallDriverSDKNonExecFile(via_vt162x.h,$(DRIVERSDKDIR)/drivers/via)
InstallDriverSDKNonExecFile(via_xvmc.c,$(DRIVERSDKDIR)/drivers/via)
InstallDriverSDKNonExecFile(via_xvmc.h,$(DRIVERSDKDIR)/drivers/via)
InstallDriverSDKNonExecFile(via_xvpriv.h,$(DRIVERSDKDIR)/drivers/via)

InstallDriverSDKObjectModule(via,$(DRIVERSDKMODULEDIR),drivers)