Share Gaia assets and adapters, keep private profiles and development documents local, and update both public READMEs.
98 lines
3 KiB
Makefile
Executable file
98 lines
3 KiB
Makefile
Executable file
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
|