diff options
Diffstat (limited to 'updater/Android.mk')
-rw-r--r-- | updater/Android.mk | 32 |
1 files changed, 18 insertions, 14 deletions
diff --git a/updater/Android.mk b/updater/Android.mk index a3f6c28..8876120 100644 --- a/updater/Android.mk +++ b/updater/Android.mk @@ -3,7 +3,6 @@ LOCAL_PATH := $(call my-dir) updater_src_files := \ - ../mounts.c \ install.c \ updater.c @@ -22,7 +21,10 @@ LOCAL_SRC_FILES := $(updater_src_files) ifeq ($(TARGET_USERIMAGES_USE_EXT4), true) LOCAL_CFLAGS += -DUSE_EXT4 LOCAL_C_INCLUDES += system/extras/ext4_utils -LOCAL_STATIC_LIBRARIES += libext4_utils_static libz libsparse_static +LOCAL_STATIC_LIBRARIES += \ + libext4_utils_static \ + libsparse_static \ + libz endif ifeq ($(HAVE_SELINUX), true) @@ -31,8 +33,6 @@ LOCAL_STATIC_LIBRARIES += libselinux LOCAL_CFLAGS += -DHAVE_SELINUX endif # HAVE_SELINUX -LOCAL_STATIC_LIBRARIES += libflashutils libmtdutils libmmcutils libbmlutils - LOCAL_STATIC_LIBRARIES += $(TARGET_RECOVERY_UPDATER_LIBS) $(TARGET_RECOVERY_UPDATER_EXTRA_LIBS) LOCAL_STATIC_LIBRARIES += libapplypatch libedify libmtdutils libminzip libz LOCAL_STATIC_LIBRARIES += libmincrypt libbz @@ -53,18 +53,19 @@ LOCAL_C_INCLUDES += $(LOCAL_PATH)/.. inc := $(call intermediates-dir-for,PACKAGING,updater_extensions)/register.inc -# During the first pass of reading the makefiles, we dump the list of -# extension libs to a temp file, then copy that to the ".list" file if -# it is different than the existing .list (if any). The register.inc -# file then uses the .list as a prerequisite, so it is only rebuilt -# (and updater.o recompiled) when the list of extension libs changes. - -junk := $(shell mkdir -p $(dir $(inc));\ - echo $(TARGET_RECOVERY_UPDATER_LIBS) > $(inc).temp;\ - diff -q $(inc).temp $(inc).list 2>/dev/null || cp -f $(inc).temp $(inc).list) +# Encode the value of TARGET_RECOVERY_UPDATER_LIBS into the filename of the dependency. +# So if TARGET_RECOVERY_UPDATER_LIBS is changed, a new dependency file will be generated. +# Note that we have to remove any existing depency files before creating new one, +# so no obsolete dependecy file gets used if you switch back to an old value. +inc_dep_file := $(inc).dep.$(subst $(space),-,$(sort $(TARGET_RECOVERY_UPDATER_LIBS))) +$(inc_dep_file): stem := $(inc).dep +$(inc_dep_file) : + $(hide) mkdir -p $(dir $@) + $(hide) rm -f $(stem).* + $(hide) touch $@ $(inc) : libs := $(TARGET_RECOVERY_UPDATER_LIBS) -$(inc) : $(inc).list +$(inc) : $(inc_dep_file) $(hide) mkdir -p $(dir $@) $(hide) echo "" > $@ $(hide) $(foreach lib,$(libs),echo "extern void Register_$(lib)(void);" >> $@;) @@ -75,6 +76,9 @@ $(inc) : $(inc).list $(call intermediates-dir-for,EXECUTABLES,updater)/updater.o : $(inc) LOCAL_C_INCLUDES += $(dir $(inc)) +inc := +inc_dep_file := + LOCAL_MODULE := updater LOCAL_FORCE_STATIC_EXECUTABLE := true |