1848b8605Smrg#######################################################################
2848b8605Smrg# SConscript for gdi winsys
3848b8605Smrg
4848b8605SmrgImport('*')
5848b8605Smrg
6848b8605Smrgenv = env.Clone()
7848b8605Smrg
8848b8605Smrgenv.Append(CPPPATH = [
9848b8605Smrg    '#src',
10848b8605Smrg    '#src/gallium/state_trackers/wgl',
11848b8605Smrg    '#src/gallium/winsys/sw',
12848b8605Smrg])
13848b8605Smrg
14848b8605Smrgenv.Append(LIBS = [
15848b8605Smrg    'gdi32',
16848b8605Smrg    'user32',
17848b8605Smrg    'kernel32',
18848b8605Smrg    'ws2_32',
19b8e80941Smrg    'advapi32',
20848b8605Smrg])
21848b8605Smrg
22b8e80941Smrgenv.Prepend(LIBS = [
23b8e80941Smrg    mesautil,
24b8e80941Smrg    nir,
25b8e80941Smrg    spirv
26b8e80941Smrg])
27848b8605Smrg
28848b8605Smrgsources = ['libgl_gdi.c']
29848b8605Smrgdrivers = []
30848b8605Smrg
31848b8605Smrgif True:
32848b8605Smrg    drivers += [softpipe]
33848b8605Smrg
34848b8605Smrgif env['llvm']:
35848b8605Smrg    env.Append(CPPDEFINES = 'HAVE_LLVMPIPE')
36848b8605Smrg    drivers += [llvmpipe]
37848b8605Smrg
38b8e80941Smrg    if env['swr']:
39b8e80941Smrg        env.Append(CPPDEFINES = 'HAVE_SWR')
40b8e80941Smrg        drivers += [swr]
41b8e80941Smrg
42848b8605Smrgif env['gcc'] and env['machine'] != 'x86_64':
43848b8605Smrg    # DEF parser in certain versions of MinGW is busted, as does not behave as
44848b8605Smrg    # MSVC.  mingw-w64 works fine.
45848b8605Smrg    sources += ['#src/gallium/state_trackers/wgl/opengl32.mingw.def']
46848b8605Smrgelse:
47848b8605Smrg    sources += ['#src/gallium/state_trackers/wgl/opengl32.def']
48848b8605Smrg
49848b8605Smrgenv['no_import_lib'] = 1
50848b8605Smrg
51848b8605Smrgopengl32 = env.SharedLibrary(
52848b8605Smrg    target ='opengl32',
53848b8605Smrg    source = sources,
54b8e80941Smrg    LIBS = wgl + ws_gdi + glapi + compiler + mesa + drivers + gallium + glsl + nir + env['LIBS'],
55848b8605Smrg)
56848b8605Smrg
57848b8605Smrgenv.Alias('opengl32', opengl32)
58848b8605Smrgenv.Alias('libgl-gdi', opengl32)
59