### Lists of source files, included by Makefiles
-ES1_SOURCES = \
+# this is part of MAIN_SOURCES
+MAIN_ES_SOURCES = \
main/api_exec_es1.c \
- main/get_es1.c
-
-ES2_SOURCES = \
- main/api_exec_es2.c \
- main/get_es2.c
+ main/api_exec_es2.c
MAIN_SOURCES = \
main/api_arrayelt.c \
main/api_noop.c \
main/api_validate.c \
main/accum.c \
+ main/arbprogram.c \
+ main/atifragshader.c \
main/attrib.c \
main/arrayobj.c \
main/blend.c \
main/ffvertex_prog.c \
main/fog.c \
main/formats.c \
+ main/format_unpack.c \
main/framebuffer.c \
main/get.c \
main/getstring.c \
main/mipmap.c \
main/mm.c \
main/multisample.c \
+ main/nvprogram.c \
+ main/pack.c \
+ main/pbo.c \
main/pixel.c \
main/pixelstore.c \
+ main/pixeltransfer.c \
main/points.c \
main/polygon.c \
main/queryobj.c \
main/querymatrix.c \
main/rastpos.c \
- main/rbadaptors.c \
main/readpix.c \
main/remap.c \
main/renderbuffer.c \
+ main/samplerobj.c \
main/scissor.c \
- main/shaders.c \
+ main/shaderapi.c \
+ main/shaderobj.c \
main/shared.c \
main/state.c \
main/stencil.c \
main/syncobj.c \
main/texcompress.c \
+ main/texcompress_rgtc.c \
main/texcompress_s3tc.c \
main/texcompress_fxt1.c \
main/texenv.c \
- main/texenvprogram.c \
- main/texfetch.c \
main/texformat.c \
main/texgen.c \
main/texgetimage.c \
main/texobj.c \
main/texpal.c \
main/texparam.c \
- main/texrender.c \
main/texstate.c \
main/texstore.c \
+ main/texturebarrier.c \
main/transformfeedback.c \
+ main/uniforms.c \
main/varray.c \
main/version.c \
main/viewport.c \
main/vtxfmt.c \
- $(ES_SOURCES)
+ $(MAIN_ES_SOURCES)
-GLAPI_SOURCES = \
- glapi/glapi.c \
- glapi/glapi_dispatch.c \
- glapi/glapi_entrypoint.c \
- glapi/glapi_execmem.c \
- glapi/glapi_getproc.c \
- glapi/glapi_nop.c \
- glapi/glthread.c
+MAIN_CXX_SOURCES = \
+ main/ff_fragment_shader.cpp \
+ main/shader_query.cpp \
+ main/uniform_query.cpp
MATH_SOURCES = \
math/m_debug_clip.c \
swrast/s_span.c \
swrast/s_stencil.c \
swrast/s_texcombine.c \
+ swrast/s_texfetch.c \
swrast/s_texfilter.c \
+ swrast/s_texrender.c \
+ swrast/s_texture.c \
swrast/s_triangle.c \
swrast/s_zoom.c
tnl/t_vb_texgen.c \
tnl/t_vb_texmat.c \
tnl/t_vb_vertex.c \
- tnl/t_vb_cull.c \
tnl/t_vb_fog.c \
tnl/t_vb_light.c \
tnl/t_vb_normals.c \
state_tracker/st_atom_constbuf.c \
state_tracker/st_atom_depth.c \
state_tracker/st_atom_framebuffer.c \
+ state_tracker/st_atom_msaa.c \
state_tracker/st_atom_pixeltransfer.c \
state_tracker/st_atom_sampler.c \
state_tracker/st_atom_scissor.c \
state_tracker/st_cb_queryobj.c \
state_tracker/st_cb_rasterpos.c \
state_tracker/st_cb_readpixels.c \
+ state_tracker/st_cb_syncobj.c \
state_tracker/st_cb_strings.c \
state_tracker/st_cb_texture.c \
+ state_tracker/st_cb_texturebarrier.c \
+ state_tracker/st_cb_viewport.c \
+ state_tracker/st_cb_xformfb.c \
state_tracker/st_context.c \
state_tracker/st_debug.c \
state_tracker/st_draw.c \
state_tracker/st_program.c \
state_tracker/st_texture.c
-SHADER_SOURCES = \
- shader/arbprogparse.c \
- shader/arbprogram.c \
- shader/atifragshader.c \
- shader/hash_table.c \
- shader/lex.yy.c \
- shader/nvfragparse.c \
- shader/nvprogram.c \
- shader/nvvertparse.c \
- shader/program.c \
- shader/program_parse.tab.c \
- shader/program_parse_extra.c \
- shader/prog_cache.c \
- shader/prog_execute.c \
- shader/prog_instruction.c \
- shader/prog_noise.c \
- shader/prog_optimize.c \
- shader/prog_parameter.c \
- shader/prog_parameter_layout.c \
- shader/prog_print.c \
- shader/prog_statevars.c \
- shader/prog_uniform.c \
- shader/programopt.c \
- shader/symbol_table.c \
- shader/shader_api.c
-
-SLANG_SOURCES = \
- shader/slang/slang_builtin.c \
- shader/slang/slang_codegen.c \
- shader/slang/slang_compile.c \
- shader/slang/slang_compile_function.c \
- shader/slang/slang_compile_operation.c \
- shader/slang/slang_compile_struct.c \
- shader/slang/slang_compile_variable.c \
- shader/slang/slang_emit.c \
- shader/slang/slang_ir.c \
- shader/slang/slang_label.c \
- shader/slang/slang_link.c \
- shader/slang/slang_log.c \
- shader/slang/slang_mem.c \
- shader/slang/slang_print.c \
- shader/slang/slang_simplify.c \
- shader/slang/slang_storage.c \
- shader/slang/slang_typeinfo.c \
- shader/slang/slang_vartable.c \
- shader/slang/slang_utility.c
+PROGRAM_SOURCES = \
+ program/arbprogparse.c \
+ program/hash_table.c \
+ program/lex.yy.c \
+ program/nvfragparse.c \
+ program/nvvertparse.c \
+ program/program.c \
+ program/program_parse.tab.c \
+ program/program_parse_extra.c \
+ program/prog_cache.c \
+ program/prog_execute.c \
+ program/prog_instruction.c \
+ program/prog_noise.c \
+ program/prog_optimize.c \
+ program/prog_opt_constant_fold.c \
+ program/prog_parameter.c \
+ program/prog_parameter_layout.c \
+ program/prog_print.c \
+ program/prog_statevars.c \
+ program/prog_uniform.c \
+ program/programopt.c \
+ program/register_allocate.c \
+ program/symbol_table.c
+
+
+SHADER_CXX_SOURCES = \
+ program/ir_to_mesa.cpp \
+ program/sampler.cpp \
+ program/string_to_uint_map.cpp
ASM_C_SOURCES = \
x86/common_x86.c \
x86/sse_normal.S \
x86/read_rgba_span_x86.S
-X86_API = \
- x86/glapi_x86.S
-
X86-64_SOURCES = \
x86-64/xform4.S
-X86-64_API = \
- x86-64/glapi_x86-64.S
-
SPARC_SOURCES = \
sparc/clip.S \
sparc/norm.S \
sparc/xform.S
-SPARC_API = \
- sparc/glapi_sparc.S
-
COMMON_DRIVER_SOURCES = \
drivers/common/driverfuncs.c \
drivers/common/meta.c
$(MATH_XFORM_SOURCES) \
$(VBO_SOURCES) \
$(TNL_SOURCES) \
- $(SHADER_SOURCES) \
+ $(PROGRAM_SOURCES) \
$(SWRAST_SOURCES) \
$(SWRAST_SETUP_SOURCES) \
$(COMMON_DRIVER_SOURCES)\
- $(ASM_C_SOURCES) \
- $(SLANG_SOURCES)
+ $(ASM_C_SOURCES)
+
+MESA_CXX_SOURCES = \
+ $(MAIN_CXX_SOURCES) \
+ $(SHADER_CXX_SOURCES)
# Sources for building Gallium drivers
MESA_GALLIUM_SOURCES = \
$(MATH_SOURCES) \
$(VBO_SOURCES) \
$(STATETRACKER_SOURCES) \
- $(SHADER_SOURCES) \
+ $(PROGRAM_SOURCES) \
ppc/common_ppc.c \
- x86/common_x86.c \
- $(SLANG_SOURCES)
+ x86/common_x86.c
+
+MESA_GALLIUM_CXX_SOURCES = \
+ $(MESA_CXX_SOURCES) \
+ state_tracker/st_glsl_to_tgsi.cpp
# All the core C sources, for dependency checking
ALL_SOURCES = \
$(MESA_SOURCES) \
- $(GLAPI_SOURCES) \
+ $(MESA_GALLIUM_CXX_SOURCES) \
$(MESA_ASM_SOURCES) \
$(STATETRACKER_SOURCES)
MESA_OBJECTS = \
$(MESA_SOURCES:.c=.o) \
+ $(MESA_CXX_SOURCES:.cpp=.o) \
$(MESA_ASM_SOURCES:.S=.o)
MESA_GALLIUM_OBJECTS = \
$(MESA_GALLIUM_SOURCES:.c=.o) \
+ $(MESA_GALLIUM_CXX_SOURCES:.cpp=.o) \
$(MESA_ASM_SOURCES:.S=.o)
-GLAPI_OBJECTS = \
- $(GLAPI_SOURCES:.c=.o) \
- $(GLAPI_ASM_SOURCES:.S=.o)
-
COMMON_DRIVER_OBJECTS = $(COMMON_DRIVER_SOURCES:.c=.o)
### Other archives/libraries
GLSL_LIBS = \
- $(TOP)/src/glsl/pp/libglslpp.a \
- $(TOP)/src/glsl/cl/libglslcl.a
+ $(TOP)/src/glsl/libglsl.a
### Include directories
INCLUDE_DIRS = \
-I$(TOP)/include \
+ -I$(TOP)/src/glsl \
-I$(TOP)/src/mesa \
+ -I$(TOP)/src/mapi \
-I$(TOP)/src/gallium/include \
-I$(TOP)/src/gallium/auxiliary