LOCAL_PATH:= $(call my-dir) # # Gaia glue # include $(CLEAR_VARS) GAIA_PATH := $(abspath $(LOCAL_PATH)) LOCAL_MODULE := gaia LOCAL_MODULE_CLASS := DATA LOCAL_MODULE_TAGS := optional eng LOCAL_SRC_FILES := profile.tar.gz LOCAL_MODULE_PATH := $(TARGET_OUT_DATA)/local include $(BUILD_PREBUILT) # Collect all flags we need to pass to Gaia Makefile GAIA_MAKE_FLAGS := $(BOARD_GAIA_MAKE_FLAGS) GAIA_PROFILE_INSTALL_PARENT := $(TARGET_OUT_DATA)/local GAIA_APP_INSTALL_PARENT := $(GAIA_PROFILE_INSTALL_PARENT) CLEAN_PROFILE := 0 # In user (production) builds we put gaia apps in /system/b2g/webapps ifneq ($(filter user userdebug, $(TARGET_BUILD_VARIANT)),) GAIA_MAKE_FLAGS += PRODUCTION=1 B2G_SYSTEM_APPS := 1 endif # Gaia currently supports different builds by giving a specific device type. # GAIA_DEVICE_TYPE: # phone - default # tablet # tv ifneq (,$(GAIA_DEVICE_TYPE)) GAIA_MAKE_FLAGS += GAIA_DEVICE_TYPE=$(GAIA_DEVICE_TYPE) endif # Gaia currently needs to specify the default scale value manually or pictures # with correct resolution will not be applied. ifneq (,$(GAIA_DEV_PIXELS_PER_PX)) GAIA_MAKE_FLAGS += GAIA_DEV_PIXELS_PER_PX=$(GAIA_DEV_PIXELS_PER_PX) endif ifeq ($(B2G_SYSTEM_APPS),1) GAIA_APP_INSTALL_PARENT := $(TARGET_OUT)/b2g CLEAN_PROFILE := 1 endif GAIA_APP_INSTALL_PATH := $(GAIA_APP_INSTALL_PARENT)/webapps $(LOCAL_INSTALLED_MODULE): @echo Gaia install path: $(GAIA_APP_INSTALL_PATH) mkdir -p $(GAIA_PROFILE_INSTALL_PARENT) $(GAIA_APP_INSTALL_PARENT) rm -rf $(GAIA_APP_INSTALL_PATH) @rm -rf $(GAIA_APP_INSTALL_PARENT)/svoperapps cd $(GAIA_PROFILE_INSTALL_PARENT) && tar xfz $(abspath $<) mkdir -p $(TARGET_OUT)/b2g cp $(GAIA_PATH)/profile/user.js $(TARGET_OUT)/b2g/user.js ifneq ($(GAIA_PROFILE_INSTALL_PARENT), $(GAIA_APP_INSTALL_PARENT)) mv $(GAIA_PROFILE_INSTALL_PARENT)/webapps $(GAIA_APP_INSTALL_PARENT) endif GAIA_TESTS_STAGE := $(GAIA_PATH)/tests-stage .PHONY: gaia-tests-zip gaia-tests-zip: rm -rf $(GAIA_TESTS_STAGE) mkdir -p $(GAIA_TESTS_STAGE)/gaiatest/gaiatest/atoms @(cd $(GAIA_PATH)/tests/python && tar -chf - *) | (cd $(GAIA_TESTS_STAGE)/gaiatest && tar -xf -) @(cd $(GAIA_PATH)/tests/atoms && tar -chf - *) | (cd $(GAIA_TESTS_STAGE)/gaiatest/gaiatest/atoms && tar -xf -) (cd $(GAIA_TESTS_STAGE) && zip -r $(GAIA_PATH)/gaia-tests.zip *) .PHONY: gaia-prefs gaia-prefs: $(MAKE) -C $(GAIA_PATH) $(GAIA_MAKE_FLAGS) preferences settings .PHONY: $(LOCAL_PATH)/profile.tar.gz $(LOCAL_PATH)/profile.tar.gz: gaia-prefs ifeq ($(CLEAN_PROFILE), 1) rm -rf $(GAIA_PATH)/profile $(GAIA_PATH)/profile.tar.gz endif $(MAKE) -C $(GAIA_PATH) $(GAIA_MAKE_FLAGS) LD_LIBRARY_PATH=$(LD_LIBRARY_PATH) profile @FOLDERS='webapps'; \ if [ -d $(GAIA_PATH)/profile/indexedDB ]; then \ FOLDERS="indexedDB $${FOLDERS}"; \ fi; \ if [ -d $(GAIA_PATH)/profile/svoperapps ]; then \ FOLDERS="svoperapps $${FOLDERS}"; \ fi; \ cd $(GAIA_PATH)/profile && tar cfz $(abspath $@) $${FOLDERS}; \ if [ -d $(GAIA_PATH)/profile/indexedDB ]; then \ rm -rf $(GAIA_PATH)/profile/indexedDB; \ fi; \ if [ -d $(GAIA_PATH)/profile/svoperapps ]; then \ rm -rf $(GAIA_PATH)/profile/svoperapps; \ fi