[Mesa-dev] [PATCH 05/12] r300g: share the source list

Tom Stellard thomas.stellard at amd.com
Fri Aug 26 07:07:43 PDT 2011


On Thu, 2011-08-25 at 22:28 -0400, Chia-I Wu wrote:
> On Fri, Aug 26, 2011 at 5:29 AM, Tom Stellard <thomas.stellard at amd.com> wrote:
> > On Thu, 2011-08-25 at 00:55 -0400, Chia-I Wu wrote:
> >> From: Chia-I Wu <olv at lunarg.com>
> >>
> >> ---
> >>  src/gallium/drivers/r300/Makefile         |   63 ++--------------------------
> >>  src/gallium/drivers/r300/Makefile.sources |   57 ++++++++++++++++++++++++++
> >>  src/gallium/drivers/r300/SConscript       |   57 +-------------------------
> >>  3 files changed, 63 insertions(+), 114 deletions(-)
> >>  create mode 100644 src/gallium/drivers/r300/Makefile.sources
> >>
> >> diff --git a/src/gallium/drivers/r300/Makefile b/src/gallium/drivers/r300/Makefile
> >> index 4f02127..bbb0103 100644
> >> --- a/src/gallium/drivers/r300/Makefile
> >> +++ b/src/gallium/drivers/r300/Makefile
> >> @@ -3,64 +3,11 @@ include $(TOP)/configs/current
> >>
> >>  LIBNAME = r300
> >>
> >> -C_SOURCES = \
> >> -     r300_blit.c \
> >> -     r300_chipset.c \
> >> -     r300_context.c \
> >> -     r300_debug.c \
> >> -     r300_emit.c \
> >> -     r300_flush.c \
> >> -     r300_fs.c \
> >> -     r300_hyperz.c \
> >> -     r300_query.c \
> >> -     r300_render.c \
> >> -     r300_render_stencilref.c \
> >> -     r300_render_translate.c \
> >> -     r300_resource.c \
> >> -     r300_screen.c \
> >> -     r300_screen_buffer.c \
> >> -     r300_state.c \
> >> -     r300_state_derived.c \
> >> -     r300_vs.c \
> >> -     r300_vs_draw.c \
> >> -     r300_texture.c \
> >> -     r300_texture_desc.c \
> >> -     r300_tgsi_to_rc.c \
> >> -     r300_transfer.c \
> >> -     \
> >> -     compiler/radeon_code.c \
> >> -     compiler/radeon_compiler.c \
> >> -     compiler/radeon_compiler_util.c \
> >> -     compiler/radeon_emulate_branches.c \
> >> -     compiler/radeon_emulate_loops.c \
> >> -     compiler/radeon_program.c \
> >> -     compiler/radeon_program_print.c \
> >> -     compiler/radeon_opcodes.c \
> >> -     compiler/radeon_program_alu.c \
> >> -     compiler/radeon_program_pair.c \
> >> -     compiler/radeon_program_tex.c \
> >> -     compiler/radeon_pair_translate.c \
> >> -     compiler/radeon_pair_schedule.c \
> >> -     compiler/radeon_pair_regalloc.c \
> >> -     compiler/radeon_pair_dead_sources.c \
> >> -     compiler/radeon_dataflow.c \
> >> -     compiler/radeon_dataflow_deadcode.c \
> >> -     compiler/radeon_dataflow_swizzles.c \
> >> -     compiler/radeon_list.c \
> >> -     compiler/radeon_optimize.c \
> >> -     compiler/radeon_remove_constants.c \
> >> -     compiler/radeon_rename_regs.c \
> >> -     compiler/radeon_variable.c \
> >> -     compiler/r3xx_fragprog.c \
> >> -     compiler/r300_fragprog.c \
> >> -     compiler/r300_fragprog_swizzle.c \
> >> -     compiler/r300_fragprog_emit.c \
> >> -     compiler/r500_fragprog.c \
> >> -     compiler/r500_fragprog_emit.c \
> >> -     compiler/r3xx_vertprog.c \
> >> -     compiler/r3xx_vertprog_dump.c \
> >> -     compiler/memory_pool.c \
> >> -     \
> >> +# get C_SOURCES
> >> +include Makefile.sources
> >> +
> >> +# to build tests
> >> +C_SOURCES += \
> >>       $(TOP)/src/glsl/ralloc.c \
> >>       $(TOP)/src/mesa/program/register_allocate.c
> >>
> > ralloc.c and register_allocate.c should also go in the shared source
> > list.
> As we are building an archive here, these two files are not needed.
> For example, r300_dri.so will still link without them.  It seems to me
> that they are added so that the compiler tests (r300/compiler/tests)
> can be built by simply linking to libr300.a (and depending on ld to
> drop object files that are not referenced).

Hi,

I don't really have a lot of insight into how the Android build system
works, but those files were originally added so that r300_dri.so would
link correctly for Gallium targets that didn't use GLSL, because without
GLSL those files weren't being built.  What will happen if someone tries
to build only the g3dvl target on Android (if this is even possible)?

> 
> If they were to be added to Makefile.sources, we would need to define
> TOP in Makefile.sources as SCons parses only the file.  Also, Android
> build system, to be added in a latter patch, does not like source
> files from another directory.  I think it is best to leave them out
> from Makefile.sources.  I forgot to update the commit log when I later
> found out about this.  There is already a comment in Makefile about
> this.  Do you think it is sufficient that I update the commit log?
> 
> 

I think the comment in the Makefile is OK.

-Tom






More information about the mesa-dev mailing list