Revert "Fix build: Revert "Try to catch more misuse of $(my-dir).""
This reverts commit 4f6e8342ace107faa09f47bef5924882904d0634.
diff --git a/core/Makefile b/core/Makefile
index f0e8458..e7eafe8 100644
--- a/core/Makefile
+++ b/core/Makefile
@@ -1,5 +1,9 @@
# Put some miscellaneous rules here
+# HACK: clear LOCAL_PATH from including last build target before calling
+# intermedites-dir-for
+LOCAL_PATH := $(BUILD_SYSTEM)
+
# Pick a reasonable string to use to identify files.
ifneq "" "$(filter eng.%,$(BUILD_NUMBER))"
# BUILD_NUMBER has a timestamp in it, which means that
@@ -650,10 +654,6 @@
INSTALLED_RECOVERYIMAGE_TARGET := $(PRODUCT_OUT)/recovery.img
-# HACK: clear LOCAL_PATH from including last build target before calling
-# intermedites-dir-for
-LOCAL_PATH := $(call my-dir)
-
recovery_initrc := $(call include-path-for, recovery)/etc/init.rc
recovery_kernel := $(INSTALLED_KERNEL_TARGET) # same as a non-recovery system
recovery_ramdisk := $(PRODUCT_OUT)/ramdisk-recovery.img
diff --git a/core/definitions.mk b/core/definitions.mk
index 783cf3d..94e7432 100644
--- a/core/definitions.mk
+++ b/core/definitions.mk
@@ -118,14 +118,15 @@
###########################################################
## Retrieve the directory of the current makefile
+## Must be called before including any other makefile!!
###########################################################
# Figure out where we are.
define my-dir
$(strip \
$(eval LOCAL_MODULE_MAKEFILE := $$(lastword $$(MAKEFILE_LIST))) \
- $(if $(filter $(CLEAR_VARS),$(LOCAL_MODULE_MAKEFILE)), \
- $(error LOCAL_PATH must be set before including $$(CLEAR_VARS)) \
+ $(if $(filter $(BUILD_SYSTEM)/% $(OUT_DIR)/%,$(LOCAL_MODULE_MAKEFILE)), \
+ $(error my-dir must be called before including any other makefile.) \
, \
$(patsubst %/,%,$(dir $(LOCAL_MODULE_MAKEFILE))) \
) \
@@ -154,6 +155,7 @@
###########################################################
## Retrieve a list of all makefiles immediately below your directory
+## Must be called before including any other makefile!!
###########################################################
define all-subdir-makefiles
@@ -163,6 +165,7 @@
###########################################################
## Look in the named list of directories for makefiles,
## relative to the current directory.
+## Must be called before including any other makefile!!
###########################################################
# $(1): List of directories to look for under this directory