forked from openkylin/platform_build
Add a rule that builds an eclipse project file for an app.
Type make ECLIPSE-<app1>-<app2>... with the apps as listed in LOCAL_PACKAGE_NAME. Change-Id: Ieb96dfc9dfc13bdf1b3be53572092fc7bc695869
This commit is contained in:
parent
d868cad828
commit
77dc0a58e2
|
@ -496,6 +496,8 @@ ALL_MODULES.$(LOCAL_MODULE).REQUIRED := \
|
|||
$(ALL_MODULES.$(LOCAL_MODULE).REQUIRED) $(LOCAL_REQUIRED_MODULES)
|
||||
ALL_MODULES.$(LOCAL_MODULE).EVENT_LOG_TAGS := \
|
||||
$(ALL_MODULES.$(LOCAL_MODULE).EVENT_LOG_TAGS) $(event_log_tags)
|
||||
ALL_MODULES.$(LOCAL_MODULE).INTERMEDIATE_SOURCE_DIR := \
|
||||
$(ALL_MODULES.$(LOCAL_MODULE).EVENT_LOG_TAGS) $(LOCAL_INTERMEDIATE_SOURCE_DIR)
|
||||
|
||||
###########################################################
|
||||
## Take care of LOCAL_MODULE_TAGS
|
||||
|
|
|
@ -51,6 +51,7 @@ LOCAL_PREBUILT_JAVA_LIBRARIES:=
|
|||
LOCAL_PREBUILT_STATIC_JAVA_LIBRARIES:=
|
||||
LOCAL_PREBUILT_STRIP_COMMENTS:=
|
||||
LOCAL_INTERMEDIATE_SOURCES:=
|
||||
LOCAL_INTERMEDIATE_SOURCE_DIRS:=
|
||||
LOCAL_JAVACFLAGS:=
|
||||
LOCAL_JAVA_LIBRARIES:=
|
||||
LOCAL_NO_STANDARD_LIBRARIES:=
|
||||
|
|
|
@ -87,6 +87,7 @@ LOCAL_INTERMEDIATE_TARGETS += \
|
|||
$(full_classes_jarjar_jar) \
|
||||
$(built_dex)
|
||||
|
||||
LOCAL_INTERMEDIATE_SOURCE_DIR := $(intermediates.COMMON)/src
|
||||
|
||||
# TODO: It looks like the only thing we need from base_rules is
|
||||
# all_java_sources. See if we can get that by adding a
|
||||
|
@ -104,7 +105,7 @@ include $(BUILD_SYSTEM)/base_rules.mk
|
|||
$(LOCAL_INTERMEDIATE_TARGETS): \
|
||||
PRIVATE_CLASS_INTERMEDIATES_DIR := $(intermediates.COMMON)/classes
|
||||
$(LOCAL_INTERMEDIATE_TARGETS): \
|
||||
PRIVATE_SOURCE_INTERMEDIATES_DIR := $(intermediates.COMMON)/src
|
||||
PRIVATE_SOURCE_INTERMEDIATES_DIR := $(LOCAL_INTERMEDIATE_SOURCE_DIR)
|
||||
|
||||
# Since we're using intermediates.COMMON, make sure that it gets cleaned
|
||||
# properly.
|
||||
|
|
|
@ -49,6 +49,10 @@ BUILD_SYSTEM := $(TOPDIR)build/core
|
|||
DEFAULT_GOAL := droid
|
||||
$(DEFAULT_GOAL):
|
||||
|
||||
# Used to force goals to build. Only use for conditionally defined goals.
|
||||
.PHONY: FORCE
|
||||
FORCE:
|
||||
|
||||
# Set up various standard variables based on configuration
|
||||
# and host information.
|
||||
include $(BUILD_SYSTEM)/config.mk
|
||||
|
|
|
@ -0,0 +1,51 @@
|
|||
#
|
||||
# Copyright (C) 2010 The Android Open Source Project
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
#
|
||||
|
||||
define filter-ide-goals
|
||||
$(strip $(filter $(1)-%,$(MAKECMDGOALS)))
|
||||
endef
|
||||
|
||||
define filter-ide-modules
|
||||
$(strip $(subst -,$(space),$(patsubst $(1)-%,%,$(2))))
|
||||
endef
|
||||
|
||||
# eclipse
|
||||
eclipse_project_goals := $(call filter-ide-goals,ECLIPSE)
|
||||
ifdef eclipse_project_goals
|
||||
ifneq ($(words $(eclipse_project_goals)),1)
|
||||
$(error Only one ECLIPSE- goal may be specified: $(eclipse_project_goals))
|
||||
endif
|
||||
eclipse_project_modules := $(call filter-ide-modules,ECLIPSE,$(eclipse_project_goals))
|
||||
|
||||
source_paths := $(foreach m,$(eclipse_project_modules),$(ALL_MODULES.$(m).PATH)) \
|
||||
$(foreach m,$(eclipse_project_modules),$(ALL_MODULES.$(m).INTERMEDIATE_SOURCE_DIR))
|
||||
|
||||
.classpath: PRIVATE_MODULES := $(eclipse_project_modules)
|
||||
.classpath: PRIVATE_DIRS := $(source_paths) $(INTERNAL_SDK_SOURCE_DIRS)
|
||||
|
||||
# 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 '<classpath>' > $@
|
||||
$(hide) for p in $(PRIVATE_DIRS) ; do \
|
||||
echo -n ' <classpathentry kind="src" path="' >> $@ ; \
|
||||
( if [ -d $$p/src ] ; then echo -n $$p/src ; else echo -n $$p ; fi ) >> $@ ; \
|
||||
echo '"/>' >> $@ ; \
|
||||
done
|
||||
$(hide) echo '</classpath>' >> $@
|
||||
endif
|
||||
|
Loading…
Reference in New Issue