1a8b6b6555c7d6a02a3d095c72ebbdc218bc45cd3Chia-I Wu####################################################################### 2a8b6b6555c7d6a02a3d095c72ebbdc218bc45cd3Chia-I Wu# SConscript for egl-static target 3a8b6b6555c7d6a02a3d095c72ebbdc218bc45cd3Chia-I Wu 4a8b6b6555c7d6a02a3d095c72ebbdc218bc45cd3Chia-I WuImport('*') 5a8b6b6555c7d6a02a3d095c72ebbdc218bc45cd3Chia-I Wu 6a8b6b6555c7d6a02a3d095c72ebbdc218bc45cd3Chia-I Wuenv = env.Clone() 7a8b6b6555c7d6a02a3d095c72ebbdc218bc45cd3Chia-I Wu 8a8b6b6555c7d6a02a3d095c72ebbdc218bc45cd3Chia-I Wuenv.Append(CPPPATH = [ 9a8b6b6555c7d6a02a3d095c72ebbdc218bc45cd3Chia-I Wu '#/include', 10a8b6b6555c7d6a02a3d095c72ebbdc218bc45cd3Chia-I Wu '#/src/egl/main', 11a8b6b6555c7d6a02a3d095c72ebbdc218bc45cd3Chia-I Wu '#/src/gallium/auxiliary', 12a8b6b6555c7d6a02a3d095c72ebbdc218bc45cd3Chia-I Wu '#/src/gallium/drivers', 13a8b6b6555c7d6a02a3d095c72ebbdc218bc45cd3Chia-I Wu '#/src/gallium/include', 14a8b6b6555c7d6a02a3d095c72ebbdc218bc45cd3Chia-I Wu '#/src/gallium/winsys', 15a8b6b6555c7d6a02a3d095c72ebbdc218bc45cd3Chia-I Wu '#/src/gallium/state_trackers/egl', 16a8b6b6555c7d6a02a3d095c72ebbdc218bc45cd3Chia-I Wu '#/src/gallium/state_trackers/vega', 17a8b6b6555c7d6a02a3d095c72ebbdc218bc45cd3Chia-I Wu '#/src/mesa', 18a8b6b6555c7d6a02a3d095c72ebbdc218bc45cd3Chia-I Wu]) 19a8b6b6555c7d6a02a3d095c72ebbdc218bc45cd3Chia-I Wu 20a8b6b6555c7d6a02a3d095c72ebbdc218bc45cd3Chia-I Wuenv.Append(CPPDEFINES = [ 21a8b6b6555c7d6a02a3d095c72ebbdc218bc45cd3Chia-I Wu 'GALLIUM_SOFTPIPE', 22a8b6b6555c7d6a02a3d095c72ebbdc218bc45cd3Chia-I Wu 'GALLIUM_RBUG', 23a8b6b6555c7d6a02a3d095c72ebbdc218bc45cd3Chia-I Wu 'GALLIUM_TRACE', 24a8b6b6555c7d6a02a3d095c72ebbdc218bc45cd3Chia-I Wu 'GALLIUM_GALAHAD', 25a8b6b6555c7d6a02a3d095c72ebbdc218bc45cd3Chia-I Wu '_EGL_MAIN=_eglBuiltInDriverGALLIUM', 26a8b6b6555c7d6a02a3d095c72ebbdc218bc45cd3Chia-I Wu]) 27a8b6b6555c7d6a02a3d095c72ebbdc218bc45cd3Chia-I Wu 28a8b6b6555c7d6a02a3d095c72ebbdc218bc45cd3Chia-I Wuenv.Prepend(LIBS = [ 29a8b6b6555c7d6a02a3d095c72ebbdc218bc45cd3Chia-I Wu softpipe, 30a8b6b6555c7d6a02a3d095c72ebbdc218bc45cd3Chia-I Wu rbug, 31a8b6b6555c7d6a02a3d095c72ebbdc218bc45cd3Chia-I Wu trace, 32a8b6b6555c7d6a02a3d095c72ebbdc218bc45cd3Chia-I Wu galahad, 33a8b6b6555c7d6a02a3d095c72ebbdc218bc45cd3Chia-I Wu gallium, 34a8b6b6555c7d6a02a3d095c72ebbdc218bc45cd3Chia-I Wu egl, 35b70d0a6a51da42fc390e82161a96c80fd8c653ffChia-I Wu st_egl, 36a8b6b6555c7d6a02a3d095c72ebbdc218bc45cd3Chia-I Wu]) 37a8b6b6555c7d6a02a3d095c72ebbdc218bc45cd3Chia-I Wu 38a8b6b6555c7d6a02a3d095c72ebbdc218bc45cd3Chia-I Wuif env['llvm']: 39a8b6b6555c7d6a02a3d095c72ebbdc218bc45cd3Chia-I Wu env.Append(CPPDEFINES = ['GALLIUM_LLVMPIPE']) 40a8b6b6555c7d6a02a3d095c72ebbdc218bc45cd3Chia-I Wu env.Prepend(LIBS = [llvmpipe]) 41a8b6b6555c7d6a02a3d095c72ebbdc218bc45cd3Chia-I Wu 42a8b6b6555c7d6a02a3d095c72ebbdc218bc45cd3Chia-I Wusources = [ 43a8b6b6555c7d6a02a3d095c72ebbdc218bc45cd3Chia-I Wu 'egl.c', 44a8b6b6555c7d6a02a3d095c72ebbdc218bc45cd3Chia-I Wu 'egl_pipe.c', 45a8b6b6555c7d6a02a3d095c72ebbdc218bc45cd3Chia-I Wu 'egl_st.c', 46a8b6b6555c7d6a02a3d095c72ebbdc218bc45cd3Chia-I Wu] 47a8b6b6555c7d6a02a3d095c72ebbdc218bc45cd3Chia-I Wu 48a8b6b6555c7d6a02a3d095c72ebbdc218bc45cd3Chia-I Wuif env['platform'] == 'windows': 49a8b6b6555c7d6a02a3d095c72ebbdc218bc45cd3Chia-I Wu sources.append('#src/egl/main/egl.def') 50a8b6b6555c7d6a02a3d095c72ebbdc218bc45cd3Chia-I Wu 51a8b6b6555c7d6a02a3d095c72ebbdc218bc45cd3Chia-I Wu env.Append(LIBS = [ 52a8b6b6555c7d6a02a3d095c72ebbdc218bc45cd3Chia-I Wu 'gdi32', 53a8b6b6555c7d6a02a3d095c72ebbdc218bc45cd3Chia-I Wu 'user32', 54a8b6b6555c7d6a02a3d095c72ebbdc218bc45cd3Chia-I Wu 'kernel32', 55a8b6b6555c7d6a02a3d095c72ebbdc218bc45cd3Chia-I Wu 'ws2_32', 56a8b6b6555c7d6a02a3d095c72ebbdc218bc45cd3Chia-I Wu ]) 57a8b6b6555c7d6a02a3d095c72ebbdc218bc45cd3Chia-I Wu 58a8b6b6555c7d6a02a3d095c72ebbdc218bc45cd3Chia-I Wu env.Prepend(LIBS = [ 59a8b6b6555c7d6a02a3d095c72ebbdc218bc45cd3Chia-I Wu ws_gdi, 60a8b6b6555c7d6a02a3d095c72ebbdc218bc45cd3Chia-I Wu ]) 61bb770af3a59e5935c108c05ee45490fc5668d4a3Chia-I Wu 62bb770af3a59e5935c108c05ee45490fc5668d4a3Chia-I Wu# OpenGL ES and OpenGL 63bb770af3a59e5935c108c05ee45490fc5668d4a3Chia-I Wuif env['gles']: 64bb770af3a59e5935c108c05ee45490fc5668d4a3Chia-I Wu env.Append(CPPDEFINES = [ 65bb770af3a59e5935c108c05ee45490fc5668d4a3Chia-I Wu 'FEATURE_GL=1', 66bb770af3a59e5935c108c05ee45490fc5668d4a3Chia-I Wu 'FEATURE_ES1=1', 67bb770af3a59e5935c108c05ee45490fc5668d4a3Chia-I Wu 'FEATURE_ES2=1' 68bb770af3a59e5935c108c05ee45490fc5668d4a3Chia-I Wu ]) 69bb770af3a59e5935c108c05ee45490fc5668d4a3Chia-I Wu env.Prepend(LIBPATH = [shared_glapi.dir]) 70bb770af3a59e5935c108c05ee45490fc5668d4a3Chia-I Wu # manually add LIBPREFIX on windows 71bb770af3a59e5935c108c05ee45490fc5668d4a3Chia-I Wu glapi_name = 'glapi' if env['platform'] != 'windows' else 'libglapi' 728aac5d123c4636fad5e9d70c3a6706aaa6f1f240Kenneth Graunke env.Prepend(LIBS = [glapi_name, glsl, mesa]) 73a8b6b6555c7d6a02a3d095c72ebbdc218bc45cd3Chia-I Wu 74b70d0a6a51da42fc390e82161a96c80fd8c653ffChia-I Wu# OpenVG 75b70d0a6a51da42fc390e82161a96c80fd8c653ffChia-I Wuif True: 76a8b6b6555c7d6a02a3d095c72ebbdc218bc45cd3Chia-I Wu env.Append(CPPDEFINES = ['FEATURE_VG=1']) 77b07ad1d6bd08bfe3ab84b660587523d5711ea21fJosé Fonseca env.Prepend(LIBPATH = [openvg.dir]) 78b70d0a6a51da42fc390e82161a96c80fd8c653ffChia-I Wu # manually add LIBPREFIX on windows 79b70d0a6a51da42fc390e82161a96c80fd8c653ffChia-I Wu openvg_name = 'OpenVG' if env['platform'] != 'windows' else 'libOpenVG' 80b70d0a6a51da42fc390e82161a96c80fd8c653ffChia-I Wu env.Prepend(LIBS = [openvg_name, st_vega]) 81a8b6b6555c7d6a02a3d095c72ebbdc218bc45cd3Chia-I Wu 82235225ec935002b4669d14a48c9c20864a5496f8José Fonsecaif env['HAVE_X11']: 83b70d0a6a51da42fc390e82161a96c80fd8c653ffChia-I Wu env.Prepend(LIBS = [ 84b70d0a6a51da42fc390e82161a96c80fd8c653ffChia-I Wu ws_xlib, 85b70d0a6a51da42fc390e82161a96c80fd8c653ffChia-I Wu ]) 86235225ec935002b4669d14a48c9c20864a5496f8José Fonseca env.PkgUseModules('X11') 87a8b6b6555c7d6a02a3d095c72ebbdc218bc45cd3Chia-I Wu 88a8b6b6555c7d6a02a3d095c72ebbdc218bc45cd3Chia-I Wu# pipe drivers 89235225ec935002b4669d14a48c9c20864a5496f8José Fonsecaif env['HAVE_DRM']: 90235225ec935002b4669d14a48c9c20864a5496f8José Fonseca env.PkgUseModules('DRM') 91a8b6b6555c7d6a02a3d095c72ebbdc218bc45cd3Chia-I Wu 92235225ec935002b4669d14a48c9c20864a5496f8José Fonseca if env['HAVE_DRM_INTEL']: 9396e73cc4ae1c1f36e05855e6b02cc9c281f921e8José Fonseca env.PkgUseModules('DRM_INTEL') 942c27f204f1ca6f09f9520712be1da9a13ed5c01dKai Wasserbäch env.Append(CPPDEFINES = ['_EGL_PIPE_I915']) 95a8b6b6555c7d6a02a3d095c72ebbdc218bc45cd3Chia-I Wu env.Prepend(LIBS = [ 96a8b6b6555c7d6a02a3d095c72ebbdc218bc45cd3Chia-I Wu i915drm, 97a8b6b6555c7d6a02a3d095c72ebbdc218bc45cd3Chia-I Wu i915, 98b70d0a6a51da42fc390e82161a96c80fd8c653ffChia-I Wu ws_wrapper, 99a8b6b6555c7d6a02a3d095c72ebbdc218bc45cd3Chia-I Wu ]) 100a8b6b6555c7d6a02a3d095c72ebbdc218bc45cd3Chia-I Wu 101235225ec935002b4669d14a48c9c20864a5496f8José Fonseca if env['HAVE_DRM_RADEON']: 10296e73cc4ae1c1f36e05855e6b02cc9c281f921e8José Fonseca env.PkgUseModules('DRM_RADEON') 103abfe7591729c2ac205e17b0f873f843aea99c09bJosé Fonseca env.Append(CPPDEFINES = ['_EGL_PIPE_R300', '_EGL_PIPE_R600']) 104a8b6b6555c7d6a02a3d095c72ebbdc218bc45cd3Chia-I Wu env.Prepend(LIBS = [ 105a8b6b6555c7d6a02a3d095c72ebbdc218bc45cd3Chia-I Wu radeonwinsys, 106a8b6b6555c7d6a02a3d095c72ebbdc218bc45cd3Chia-I Wu r300, 107a8b6b6555c7d6a02a3d095c72ebbdc218bc45cd3Chia-I Wu r600, 108a8b6b6555c7d6a02a3d095c72ebbdc218bc45cd3Chia-I Wu ]) 109a8b6b6555c7d6a02a3d095c72ebbdc218bc45cd3Chia-I Wu 110a8b6b6555c7d6a02a3d095c72ebbdc218bc45cd3Chia-I Wu env.Append(CPPDEFINES = ['_EGL_PIPE_VMWGFX']) 111a8b6b6555c7d6a02a3d095c72ebbdc218bc45cd3Chia-I Wu env.Prepend(LIBS = [ 112a8b6b6555c7d6a02a3d095c72ebbdc218bc45cd3Chia-I Wu svgadrm, 113a8b6b6555c7d6a02a3d095c72ebbdc218bc45cd3Chia-I Wu svga, 114a8b6b6555c7d6a02a3d095c72ebbdc218bc45cd3Chia-I Wu ]) 115a8b6b6555c7d6a02a3d095c72ebbdc218bc45cd3Chia-I Wu 11663528c4510e4891a13c255871b1dd5c2dafdb02cJosé Fonseca# libEGL.dll 1179277a62aa3c1b2073dcfafcf34265b4d7154f4daJosé Fonsecaenv['LIBPREFIX'] = 'lib' 11863528c4510e4891a13c255871b1dd5c2dafdb02cJosé Fonsecaenv['SHLIBPREFIX'] = 'lib' 11963528c4510e4891a13c255871b1dd5c2dafdb02cJosé Fonseca 120a8b6b6555c7d6a02a3d095c72ebbdc218bc45cd3Chia-I Wuegl_gallium = env.SharedLibrary( 12163528c4510e4891a13c255871b1dd5c2dafdb02cJosé Fonseca target ='EGL', 122a8b6b6555c7d6a02a3d095c72ebbdc218bc45cd3Chia-I Wu source = sources, 123a8b6b6555c7d6a02a3d095c72ebbdc218bc45cd3Chia-I Wu) 124a8b6b6555c7d6a02a3d095c72ebbdc218bc45cd3Chia-I Wu 125b07ad1d6bd08bfe3ab84b660587523d5711ea21fJosé Fonsecaenv.Depends(egl_gallium, [openvg]) 126a8b6b6555c7d6a02a3d095c72ebbdc218bc45cd3Chia-I Wu 127a8b6b6555c7d6a02a3d095c72ebbdc218bc45cd3Chia-I Wuegl_gallium = env.InstallSharedLibrary(egl_gallium, version=(1, 4, 0)) 128a8b6b6555c7d6a02a3d095c72ebbdc218bc45cd3Chia-I Wu 129a8b6b6555c7d6a02a3d095c72ebbdc218bc45cd3Chia-I Wuenv.Alias('egl-gallium', egl_gallium) 130