blob: f281f4c6567dc39f37dc0f160ccf8a145415e63c [file] [log] [blame]
José Fonseca601498a2010-11-01 13:30:22 +00001Import('env')
José Fonseca58a3d7d2008-02-23 19:49:08 +09002
José Fonseca601498a2010-11-01 13:30:22 +00003#
4# Auxiliary modules
5#
José Fonsecac42e6252008-01-31 13:14:35 +09006
José Fonsecaf8f47572009-12-31 22:18:17 +00007SConscript('auxiliary/SConscript')
José Fonseca33ceb672008-02-18 10:52:44 +00008
José Fonseca601498a2010-11-01 13:30:22 +00009#
10# Drivers
11#
12
Alexander von Gluck IV64ae2092012-01-16 12:42:05 +000013# These are common and work across all platforms
José Fonseca601498a2010-11-01 13:30:22 +000014SConscript([
José Fonseca601498a2010-11-01 13:30:22 +000015 'drivers/galahad/SConscript',
Kai Wasserbäch0a22fb62011-11-29 22:36:02 +010016 'drivers/identity/SConscript',
Alexander von Gluckbca6cd22012-01-22 12:42:10 -060017 'drivers/llvmpipe/SConscript',
José Fonseca601498a2010-11-01 13:30:22 +000018 'drivers/rbug/SConscript',
José Fonseca601498a2010-11-01 13:30:22 +000019 'drivers/softpipe/SConscript',
Alexander von Gluckbca6cd22012-01-22 12:42:10 -060020 'drivers/svga/SConscript',
Kai Wasserbäch0a22fb62011-11-29 22:36:02 +010021 'drivers/trace/SConscript',
José Fonseca601498a2010-11-01 13:30:22 +000022])
23
José Fonsecaab9ca6c2010-11-01 14:24:08 +000024if not env['msvc']:
25 # These drivers do not build on MSVC compilers
26 SConscript([
Kai Wasserbäch0a22fb62011-11-29 22:36:02 +010027 'drivers/i915/SConscript',
José Fonsecaab9ca6c2010-11-01 14:24:08 +000028 ])
29
Jakob Bornecrantzc0db7852010-11-05 16:55:46 +000030if env['drm']:
José Fonseca601498a2010-11-01 13:30:22 +000031 # These drivers depend on drm headers
Jakob Bornecrantzc0db7852010-11-05 16:55:46 +000032 if env['drm_radeon']:
33 SConscript([
José Fonsecaf763ad52012-02-07 11:16:35 +000034 'drivers/r300/SConscript',
Jakob Bornecrantzc0db7852010-11-05 16:55:46 +000035 'drivers/r600/SConscript',
36 ])
José Fonseca4c23acb2012-04-30 07:47:01 +010037 if env['llvm']:
38 SConscript([
39 'drivers/radeonsi/SConscript',
40 ])
Jakob Bornecrantzc0db7852010-11-05 16:55:46 +000041 # XXX: nouveau drivers have a tight dependency on libdrm, so to enable
42 # we need some version logic before we enable them. Also, ATM there is
43 # no nouveau target in scons
44 # if env['drm_nouveau']:
45 # SConscript([
46 # 'drivers/nouveau/SConscript',
47 # 'drivers/nv50/SConscript',
Vinson Leee24f1ea2011-01-24 17:48:24 -080048 # 'drivers/nvc0/SConscript',
Jakob Bornecrantzc0db7852010-11-05 16:55:46 +000049 # 'drivers/nvfx/SConscript',
50 # ])
José Fonseca601498a2010-11-01 13:30:22 +000051
52#
53# State trackers
54#
José Fonseca6410e942008-07-13 23:36:59 +090055
José Fonseca7b8641b2010-03-10 12:00:13 +000056# Needed by some state trackers
Jakob Bornecrantzc9f98672010-03-16 13:54:18 +000057SConscript('winsys/sw/null/SConscript')
José Fonseca7b8641b2010-03-10 12:00:13 +000058
José Fonseca41750102011-06-17 14:48:28 +010059if not env['embedded']:
Jakob Bornecrantzb4ac0ad2010-11-04 21:12:30 +000060 SConscript('state_trackers/vega/SConscript')
Vinson Leee4fb3322012-05-21 22:16:15 -070061 if env['platform'] not in ('cygwin', 'darwin', 'haiku', 'sunos'):
José Fonsecaf8aeb1c2011-09-20 20:40:05 +010062 SConscript('state_trackers/egl/SConscript')
Keith Whitwell0e471ac2009-01-27 11:28:29 +000063
Jakob Bornecrantz7e9f5ea2010-11-05 18:18:09 +000064 if env['x11']:
65 SConscript('state_trackers/glx/xlib/SConscript')
66
67 if env['dri']:
68 SConscript('state_trackers/dri/SConscript')
69
70 if env['dri'] and env['xorg']:
71 SConscript('state_trackers/xorg/SConscript')
72
José Fonseca41750102011-06-17 14:48:28 +010073 if env['platform'] == 'windows':
74 SConscript('state_trackers/wgl/SConscript')
José Fonseca706eda32010-03-09 15:07:57 +000075
José Fonseca601498a2010-11-01 13:30:22 +000076#
77# Winsys
78#
79
José Fonsecaf763ad52012-02-07 11:16:35 +000080SConscript([
81 'winsys/sw/wrapper/SConscript',
82])
83
84if env['x11']:
85 SConscript([
86 'winsys/sw/xlib/SConscript',
87 ])
88
89if env['platform'] == 'windows':
90 SConscript([
91 'winsys/sw/gdi/SConscript',
92 ])
93
94if not env['msvc']:
95 SConscript([
96 'winsys/i915/sw/SConscript',
97 ])
98
99if env['dri']:
100 SConscript([
101 'winsys/sw/dri/SConscript',
102 ])
103
104 SConscript([
105 'winsys/svga/drm/SConscript',
106 ])
107
108 if env['drm_intel']:
109 SConscript([
110 'winsys/i915/drm/SConscript',
111 ])
112
113 if env['drm_radeon']:
114 SConscript([
115 'winsys/radeon/drm/SConscript',
116 ])
José Fonseca706eda32010-03-09 15:07:57 +0000117
José Fonseca601498a2010-11-01 13:30:22 +0000118#
119# Targets
120#
José Fonseca6917ef12010-04-13 07:05:13 +0900121
José Fonseca601498a2010-11-01 13:30:22 +0000122SConscript([
123 'targets/graw-null/SConscript',
124])
125
José Fonseca41750102011-06-17 14:48:28 +0100126if not env['embedded']:
Vinson Lee5cf69322012-05-23 17:26:20 -0700127 if env['platform'] not in ('cygwin', 'darwin', 'freebsd', 'haiku', 'sunos'):
José Fonsecaf8aeb1c2011-09-20 20:40:05 +0100128 SConscript([
129 'targets/egl-static/SConscript'
130 ])
Chia-I Wua8b6b652011-01-09 23:37:32 +0800131
José Fonseca41750102011-06-17 14:48:28 +0100132 if env['x11']:
Jakob Bornecrantzc0db7852010-11-05 16:55:46 +0000133 SConscript([
José Fonseca41750102011-06-17 14:48:28 +0100134 'targets/graw-xlib/SConscript',
135 'targets/libgl-xlib/SConscript',
Jakob Bornecrantzc0db7852010-11-05 16:55:46 +0000136 ])
José Fonseca601498a2010-11-01 13:30:22 +0000137
José Fonseca41750102011-06-17 14:48:28 +0100138 if env['platform'] == 'windows':
139 SConscript([
140 'targets/graw-gdi/SConscript',
141 'targets/libgl-gdi/SConscript',
142 ])
143
144 if env['dri']:
145 SConscript([
146 'targets/SConscript.dri',
147 'targets/dri-swrast/SConscript',
148 'targets/dri-vmwgfx/SConscript',
149 #'targets/dri-nouveau/SConscript',
150 ])
151 if env['drm_intel']:
152 SConscript([
153 'targets/dri-i915/SConscript',
José Fonseca41750102011-06-17 14:48:28 +0100154 ])
155 if env['drm_radeon']:
156 SConscript([
157 'targets/dri-r300/SConscript',
158 'targets/dri-r600/SConscript',
159 ])
José Fonseca4c23acb2012-04-30 07:47:01 +0100160 if env['llvm']:
161 SConscript([
162 'targets/dri-radeonsi/SConscript',
163 ])
José Fonseca41750102011-06-17 14:48:28 +0100164
165 if env['xorg'] and env['drm']:
166 SConscript([
167 #'targets/xorg-i915/SConscript',
José Fonseca41750102011-06-17 14:48:28 +0100168 #'targets/xorg-nouveau/SConscript',
169 #'targets/xorg-radeon/SConscript',
José Fonseca41750102011-06-17 14:48:28 +0100170 ])
José Fonseca601498a2010-11-01 13:30:22 +0000171
172
173#
174# Unit tests & tools
175#
176
José Fonseca41750102011-06-17 14:48:28 +0100177if not env['embedded']:
Jakob Bornecrantzb4ac0ad2010-11-04 21:12:30 +0000178 SConscript('tests/unit/SConscript')
179 SConscript('tests/graw/SConscript')