On 05/11/13 18:18, Chad Versace wrote: > On 11/02/2013 12:00 PM, Emil Velikov wrote: >> Rip out the source file list from mesa/Makefile.sources, to a >> more sensible location/file. >> * Split PROGRAM_FILES and GENERATED_FILES. >> * Update the automake and Android build systems. >> >> Android >> * Slightly reshuffle the Android.mk for readability sake. >> * Use GENERATED_FILES, drop the TODO item. >> * Use explicit 'call' when executing local macros. >> >> Cc: Chad Versace <chad.vers...@linux.intel.com> >> Signed-off-by: Emil Velikov <emil.l.veli...@gmail.com> >> --- >> >> Andoid changes are _not_ tested (yet). > > The changes to the Andoid.mk look good to me. It's much easier to > understand now. However, I've also not tested the changes. This > path is > Reviewed-by: Chad Versace <chad.vers...@linux.intel.com> > Cheers Chad.
Seems like I would need an extra harddrive to get the Android build running. This thing is a crazy, it ate 30GiB like it was nothing and asks for more :) > Adrian, do wish to test this series on Android? > Adrian, if you can give this patch a test that would be greatly appreciated. Thanks Emil >> --- >> src/mesa/Makefile.sources | 24 --------------- >> src/mesa/program/Android.mk | 65 >> ++++++++++++++++----------------------- >> src/mesa/program/Makefile.am | 25 +++++++++------ >> src/mesa/program/Makefile.sources | 27 ++++++++++++++++ >> 4 files changed, 69 insertions(+), 72 deletions(-) >> create mode 100644 src/mesa/program/Makefile.sources >> >> diff --git a/src/mesa/Makefile.sources b/src/mesa/Makefile.sources >> index a84f8a7..e4146ae 100644 >> --- a/src/mesa/Makefile.sources >> +++ b/src/mesa/Makefile.sources >> @@ -252,30 +252,6 @@ STATETRACKER_FILES = \ >> $(SRCDIR)state_tracker/st_texture.c \ >> $(SRCDIR)state_tracker/st_vdpau.c >> >> -PROGRAM_FILES = \ >> - $(SRCDIR)program/arbprogparse.c \ >> - $(SRCDIR)program/prog_hash_table.c \ >> - $(SRCDIR)program/ir_to_mesa.cpp \ >> - $(SRCDIR)program/program.c \ >> - $(SRCDIR)program/program_parse_extra.c \ >> - $(SRCDIR)program/prog_cache.c \ >> - $(SRCDIR)program/prog_execute.c \ >> - $(SRCDIR)program/prog_instruction.c \ >> - $(SRCDIR)program/prog_noise.c \ >> - $(SRCDIR)program/prog_optimize.c \ >> - $(SRCDIR)program/prog_opt_constant_fold.c \ >> - $(SRCDIR)program/prog_parameter.c \ >> - $(SRCDIR)program/prog_parameter_layout.c \ >> - $(SRCDIR)program/prog_print.c \ >> - $(SRCDIR)program/prog_statevars.c \ >> - $(SRCDIR)program/programopt.c \ >> - $(SRCDIR)program/register_allocate.c \ >> - $(SRCDIR)program/sampler.cpp \ >> - $(SRCDIR)program/string_to_uint_map.cpp \ >> - $(SRCDIR)program/symbol_table.c \ >> - $(BUILDDIR)program/lex.yy.c \ >> - $(BUILDDIR)program/program_parse.tab.c >> - >> ASM_C_FILES = \ >> $(SRCDIR)x86/common_x86.c \ >> $(SRCDIR)x86/x86_xform.c \ >> diff --git a/src/mesa/program/Android.mk b/src/mesa/program/Android.mk >> index e85afe6..e340ed4 100644 >> --- a/src/mesa/program/Android.mk >> +++ b/src/mesa/program/Android.mk >> @@ -18,8 +18,30 @@ >> # FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER >> # DEALINGS IN THE SOFTWARE. >> >> +# ---------------------------------------------------------------------- >> +# libmesa_program.a >> +# ---------------------------------------------------------------------- >> LOCAL_PATH := $(call my-dir) >> >> +# get PROGRAM_FILES and GENERATED_FILES >> +include $(LOCAL_PATH)/Makefile.sources >> +include $(CLEAR_VARS) >> + >> +LOCAL_MODULE := libmesa_program >> +LOCAL_MODULE_CLASS := STATIC_LIBRARIES >> + >> +intermediates := $(call local-intermediates-dir) >> + >> +LOCAL_C_INCLUDES := \ >> + $(intermediates) \ >> + $(MESA_TOP)/src/mapi \ >> + $(MESA_TOP)/src/mesa \ >> + $(MESA_TOP)/src/glsl >> + >> + >> +LOCAL_SRC_FILES := $(PROGRAM_FILES) >> +LOCAL_GENERATED_SOURCES := $(addprefix >> $(intermediates)/,$(GENERATED_FILES)) >> + >> define local-l-to-c >> @mkdir -p $(dir $@) >> @echo "Mesa Lex: $(PRIVATE_MODULE) <= $<" >> @@ -32,48 +54,15 @@ define mesa_local-y-to-c-and-h >> $(hide) $(YACC) -o $@ -p "_mesa_program_" $< >> endef >> >> -# ---------------------------------------------------------------------- >> -# libmesa_program.a >> -# ---------------------------------------------------------------------- >> - >> -# Import the following variables: >> -# PROGRAM_FILES >> -include $(MESA_TOP)/src/mesa/Makefile.sources >> - >> -include $(CLEAR_VARS) >> - >> -LOCAL_MODULE := libmesa_program >> -LOCAL_MODULE_CLASS := STATIC_LIBRARIES >> - >> -intermediates := $(call local-intermediates-dir) >> +$(intermediates)/lex.yy.c: $(LOCAL_PATH)/program_lexer.l >> + $(call local-l-to-c) >> >> -# TODO(chadv): In Makefile.sources, move these vars to a different >> list so we can >> -# remove this kludge. >> -generated_sources_basenames := \ >> - lex.yy.c \ >> - program_parse.tab.c \ >> - program_parse.tab.h >> +$(intermediates)/program_parse.tab.c: $(LOCAL_PATH)/program_parse.y >> + $(call mesa_local-y-to-c-and-h) >> >> -LOCAL_SRC_FILES := \ >> - $(filter-out $(generated_sources_basenames),$(subst >> program/,,$(PROGRAM_FILES))) >> - >> -LOCAL_GENERATED_SOURCES := \ >> - $(addprefix >> $(intermediates)/program/,$(generated_sources_basenames)) >> - >> -$(intermediates)/program/program_parse.tab.c: >> $(LOCAL_PATH)/program_parse.y >> - $(mesa_local-y-to-c-and-h) >> - >> -$(intermediates)/program/program_parse.tab.h: >> $(intermediates)/program/program_parse.tab.c >> +$(intermediates)/program_parse.tab.h: >> $(intermediates)/program_parse.tab.c >> @ >> >> -$(intermediates)/program/lex.yy.c: $(LOCAL_PATH)/program_lexer.l >> - $(local-l-to-c) >> - >> -LOCAL_C_INCLUDES := \ >> - $(intermediates) \ >> - $(MESA_TOP)/src/mapi \ >> - $(MESA_TOP)/src/mesa \ >> - $(MESA_TOP)/src/glsl >> >> include $(MESA_COMMON_MK) >> include $(BUILD_STATIC_LIBRARY) >> diff --git a/src/mesa/program/Makefile.am b/src/mesa/program/Makefile.am >> index 5e05782..3b560bd 100644 >> --- a/src/mesa/program/Makefile.am >> +++ b/src/mesa/program/Makefile.am >> @@ -19,18 +19,26 @@ >> # FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR >> OTHER DEALINGS >> # IN THE SOFTWARE. >> >> -include ../Makefile.sources >> +include Makefile.sources >> + >> +AM_CPPFLAGS = \ >> + -I$(top_srcdir)/include \ >> + -I$(top_builddir)/src/mapi \ >> + -I$(top_srcdir)/src/mapi \ >> + -I$(top_builddir)/src/mesa \ >> + -I$(top_srcdir)/src/mesa \ >> + -I$(top_builddir)/src/glsl \ >> + -I$(top_srcdir)/src/glsl \ >> + $(DEFINES) >> >> -AM_CPPFLAGS = $(DEFINES) $(INCLUDE_DIRS) >> AM_CFLAGS = $(VISIBILITY_CFLAGS) >> AM_CXXFLAGS = $(VISIBILITY_CXXFLAGS) >> >> -SRCDIR = $(top_srcdir)/src/mesa/ >> -BUILDDIR = $(top_builddir)/src/mesa/ >> - >> noinst_LTLIBRARIES = libprogram.la >> >> -libprogram_la_SOURCES = $(PROGRAM_FILES) >> +libprogram_la_SOURCES = \ >> + $(PROGRAM_FILES) \ >> + $(GENERATED_FILES) >> >> lex.yy.c: program_lexer.l >> $(AM_V_GEN) $(LEX) --never-interactive --outfile=$@ $< >> @@ -38,8 +46,5 @@ lex.yy.c: program_lexer.l >> program_parse.tab.c program_parse.tab.h: program_parse.y >> $(AM_V_GEN) $(YACC) -p "_mesa_program_" -v -d >> --output=program_parse.tab.c $< >> >> -BUILT_SOURCES = \ >> - program_parse.tab.c \ >> - program_parse.tab.h \ >> - lex.yy.c >> +BUILT_SOURCES = $(GENERATED_FILES) >> CLEANFILES = $(BUILT_SOURCES) >> diff --git a/src/mesa/program/Makefile.sources >> b/src/mesa/program/Makefile.sources >> new file mode 100644 >> index 0000000..8b2dee5 >> --- /dev/null >> +++ b/src/mesa/program/Makefile.sources >> @@ -0,0 +1,27 @@ >> +PROGRAM_FILES := \ >> + arbprogparse.c \ >> + ir_to_mesa.cpp \ >> + prog_cache.c \ >> + prog_execute.c \ >> + prog_hash_table.c \ >> + prog_instruction.c \ >> + prog_noise.c \ >> + prog_opt_constant_fold.c \ >> + prog_optimize.c \ >> + prog_parameter.c \ >> + prog_parameter_layout.c \ >> + prog_print.c \ >> + program.c \ >> + program_parse_extra.c \ >> + programopt.c \ >> + prog_statevars.c \ >> + register_allocate.c \ >> + sampler.cpp \ >> + string_to_uint_map.cpp \ >> + symbol_table.c >> + >> + >> +GENERATED_FILES := \ >> + lex.yy.c \ >> + program_parse.tab.c \ >> + program_parse.tab.h >> > _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev