summaryrefslogtreecommitdiff
path: root/xc/lib/GL/mesa/src/X86/Imakefile
blob: 7e1f866619c2959ba1b7394bc1f08e64a57df5eb (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
XCOMM $XFree86: xc/lib/GL/mesa/src/X86/Imakefile,v 1.23 2002/07/14 17:08:16 alanh Exp $

/*
 * Need both shared and unshared Mesa objects in the following cases:
 *   GlxDriverUsesMesa
 *   GlxBuiltInXMesa
 *   BuildOSMesaLib
 *
 * In other cases, only the shared version is needed to link in to loadable
 * driver modules.
 */

#if GlxDriverUsesMesa || GlxBuiltInXMesa || BuildOSMesaLib
#define DoNormalLib (NormalLibGlx || SharedLibGlxWithoutPIC)
#define DoSharedLib (SharedLibGlx && !SharedLibGlxWithoutPIC)
#define DoExtraLib SharedLibGlx
#define DoDebugLib DebugLibGlx
#define DoProfileLib ProfileLibGlx
#else
#define DoNormalLib SharedLibGlxWithoutPIC
#define DoSharedLib !SharedLibGlxWithoutPIC
#define DoExtraLib NO
#define DoDebugLib NO
#define DoProfileLib NO
#endif


#if Malloc0ReturnsNull
ALLOC_DEFINES = -DMALLOC_0_RETURNS_NULL
#endif

#define MesaX86BuildDir /**/
#define NeedToLinkMesaSrc
#include "Imakefile.inc"

      DEFINES = $(ALLOC_DEFINES) GlxDefines $(MESA_ASM_DEFINES)
     INCLUDES = -I$(INCLUDESRC) -I$(EXTINCSRC) -I$(MESASRCDIR)/src \
		-I$(MESASRCDIR)/src/X86 \
		-I../../../include

         SRCS = $(MESA_ASM_SRCS) gen_matypes.c
         OBJS = $(MESA_ASM_OBJS)

#include <Library.tmpl>

LibraryObjectRule()

STD_CPP_DEFINES = StandardDefines $(PROJECT_DEFINES)

SubdirLibraryRule($(OBJS))
NormalLintTarget($(SRCS))

ObjectFromAsmSource(common_x86_asm, NullParameter)

ObjectFromAsmSource(x86_cliptest, NullParameter)
ObjectFromAsmSource(x86_vertex, NullParameter)
ObjectFromAsmSource(x86_xform2, NullParameter)
ObjectFromAsmSource(x86_xform3, NullParameter)
ObjectFromAsmSource(x86_xform4, NullParameter)

#if MesaUseMMX
ObjectFromAsmSource(mmx_blend, NullParameter)
#endif

#if MesaUse3DNow
ObjectFromAsmSource(3dnow_normal, NullParameter)
ObjectFromAsmSource(3dnow_vertex, NullParameter)
ObjectFromAsmSource(3dnow_xform1, NullParameter)
ObjectFromAsmSource(3dnow_xform2, NullParameter)
ObjectFromAsmSource(3dnow_xform3, NullParameter)
ObjectFromAsmSource(3dnow_xform4, NullParameter)
#endif

#if MesaUseKatmai
ObjectFromAsmSource(sse_normal, NullParameter)
ObjectFromAsmSource(sse_vertex, NullParameter)
ObjectFromAsmSource(sse_xform1, NullParameter)
ObjectFromAsmSource(sse_xform2, NullParameter)
ObjectFromAsmSource(sse_xform3, NullParameter)
ObjectFromAsmSource(sse_xform4, NullParameter)
#endif

LinkSourceFile(gen_matypes.c, $(MESASRCDIR)/src/X86)

MATYPES = ./gen_matypes

matypes.h: gen_matypes.c
	RemoveFiles($@ HostProgramTargetName(gen_matypes))
	-HostLinkRule(HostProgramTargetName(gen_matypes),$(CFLAGS) $(LOCAL_LDFLAGS),gen_matypes.c,$(LDLIBS))
	RunProgram(MATYPES,> matypes_h)
	$(MV) matypes_h $@
	RemoveFiles(HostProgramTargetName(gen_matypes))

includes:: matypes.h

depend:: matypes.h

clean::
	RemoveFiles(matypes.h HostProgramTargetName(gen_matypes))

DependTarget()