am 09082d12: am 8a06bac1: Make make ECLIPSE-lunch build a .classpath for all the java stuff that will be included in the build.

This commit is contained in:
Joe Onorato 2010-06-01 16:09:51 -07:00 committed by Android Git Automerger
commit 368c640b14
2 changed files with 18 additions and 3 deletions

View File

@ -491,6 +491,8 @@ ALL_MODULES += $(LOCAL_MODULE)
# Don't use += on subvars, or else they'll end up being
# recursively expanded.
ALL_MODULES.$(LOCAL_MODULE).CLASS := \
$(ALL_MODULES.$(LOCAL_MODULE).CLASS) $(LOCAL_MODULE_CLASS)
ALL_MODULES.$(LOCAL_MODULE).PATH := \
$(ALL_MODULES.$(LOCAL_MODULE).PATH) $(LOCAL_PATH)
ALL_MODULES.$(LOCAL_MODULE).TAGS := \
@ -508,6 +510,8 @@ ALL_MODULES.$(LOCAL_MODULE).EVENT_LOG_TAGS := \
ALL_MODULES.$(LOCAL_MODULE).INTERMEDIATE_SOURCE_DIR := \
$(ALL_MODULES.$(LOCAL_MODULE).INTERMEDIATE_SOURCE_DIR) $(LOCAL_INTERMEDIATE_SOURCE_DIR)
INSTALLABLE_FILES.$(LOCAL_INSTALLED_MODULE).MODULE := $(LOCAL_MODULE)
###########################################################
## Take care of LOCAL_MODULE_TAGS
###########################################################

View File

@ -30,16 +30,27 @@ ifdef eclipse_project_goals
endif
eclipse_project_modules := $(call filter-ide-modules,ECLIPSE,$(eclipse_project_goals))
ifneq ($(filter lunch,$(eclipse_project_modules)),)
eclipse_project_modules := $(filter-out lunch,$(eclipse_project_modules))
installed_modules := $(foreach m,$(ALL_DEFAULT_INSTALLED_MODULES),\
$(INSTALLABLE_FILES.$(m).MODULE))
java_modules := $(foreach m,$(installed_modules),\
$(if $(filter JAVA_LIBRARIES APPS,$(ALL_MODULES.$(m).CLASS)),$(m),))
eclipse_project_modules := $(sort $(eclipse_project_modules) $(java_modules))
endif
source_paths := $(foreach m,$(eclipse_project_modules),$(ALL_MODULES.$(m).PATH)) \
$(foreach m,$(eclipse_project_modules),$(ALL_MODULES.$(m).INTERMEDIATE_SOURCE_DIR))
$(foreach m,$(eclipse_project_modules),$(ALL_MODULES.$(m).INTERMEDIATE_SOURCE_DIR)) \
$(INTERNAL_SDK_SOURCE_DIRS)
source_paths := $(sort $(source_paths))
.classpath: PRIVATE_MODULES := $(eclipse_project_modules)
.classpath: PRIVATE_DIRS := $(source_paths) $(INTERNAL_SDK_SOURCE_DIRS)
.classpath: PRIVATE_DIRS := $(source_paths)
# the mess below with ./src tries to guess whether the src
$(eclipse_project_goals): .classpath
.classpath: FORCE
$(hide) echo Generating .classpath for modules: $(PRIVATE_MODULES)
$(hide) echo Generating .classpath for eclipse
$(hide) echo '<classpath>' > $@
$(hide) for p in $(PRIVATE_DIRS) ; do \
echo -n ' <classpathentry kind="src" path="' >> $@ ; \