Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 67c2ed39 authored by Gaurav Shah's avatar Gaurav Shah
Browse files

Support build targets with no installable apps/packages

Specifically, do not error out if no installable apps are found.

- When creating an archive of all the apps, and if no apps exist
for the target, generate an empty archive file.
- If building for a target with no installable jar(s) or apk(s),
generate an empty package stats file.

The former is just an output artifact. The latter is used
by the upload_pkg_stats.py script which correctly handles
an empty input file.

BUG: 23421592

Change-Id: I48db9f9e1f61914d8fd938130e09b41849685450
parent 04ba3123
Loading
Loading
Loading
Loading
+12 −2
Original line number Diff line number Diff line
@@ -314,7 +314,12 @@ $(PACKAGE_STATS_FILE): $(PACKAGES_TO_STAT)
	@echo Package stats: $@
	@mkdir -p $(dir $@)
	$(hide) rm -f $@
ifeq ($(PACKAGES_TO_STAT),)
# Create empty package stats file if target builds no jar(s) or apk(s).
	$(hide) touch $@
else
	$(hide) build/tools/dump-package-stats $^ > $@
endif

.PHONY: package-stats
package-stats: $(PACKAGE_STATS_FILE)
@@ -1736,8 +1741,13 @@ $(APPS_ZIP): $(INSTALLED_SYSTEMIMAGE)
	@echo "Package apps: $@"
	$(hide) rm -rf $@
	$(hide) mkdir -p $(dir $@)
	$(hide) zip -qj $@ $(TARGET_OUT_APPS)/*/*.apk $(TARGET_OUT_APPS_PRIVILEGED)/*/*.apk

	$(hide) apps_to_zip=`find $(TARGET_OUT_APPS) $(TARGET_OUT_APPS_PRIVILEGED) -mindepth 2 -maxdepth 3 -name "*.apk"`; \
	if [ -z "$$apps_to_zip" ]; then \
		echo "No apps to zip up. Generating empty apps archive." ; \
		a=$$(mktemp /tmp/XXXXXXX) && touch $$a && zip $@ $$a && zip -d $@ $$a; \
	else \
		zip -qj $@ $$apps_to_zip; \
	fi

#------------------------------------------------------------------
# A zip of emma code coverage meta files. Generated for fully emma