2011-11-28 16:37:47 +00:00
|
|
|
PRODUCT_BRAND ?= cyanogenmod
|
|
|
|
|
2013-02-28 18:33:25 +00:00
|
|
|
SUPERUSER_EMBEDDED := true
|
2013-03-04 08:37:02 +00:00
|
|
|
SUPERUSER_PACKAGE_PREFIX := com.android.settings.cyanogenmod.superuser
|
2013-02-28 18:33:25 +00:00
|
|
|
|
2012-08-21 09:18:40 +00:00
|
|
|
ifneq ($(TARGET_SCREEN_WIDTH) $(TARGET_SCREEN_HEIGHT),$(space))
|
|
|
|
# determine the smaller dimension
|
|
|
|
TARGET_BOOTANIMATION_SIZE := $(shell \
|
|
|
|
if [ $(TARGET_SCREEN_WIDTH) -lt $(TARGET_SCREEN_HEIGHT) ]; then \
|
|
|
|
echo $(TARGET_SCREEN_WIDTH); \
|
|
|
|
else \
|
|
|
|
echo $(TARGET_SCREEN_HEIGHT); \
|
|
|
|
fi )
|
|
|
|
|
|
|
|
# get a sorted list of the sizes
|
|
|
|
bootanimation_sizes := $(subst .zip,, $(shell ls vendor/cm/prebuilt/common/bootanimation))
|
|
|
|
bootanimation_sizes := $(shell echo -e $(subst $(space),'\n',$(bootanimation_sizes)) | sort -rn)
|
|
|
|
|
|
|
|
# find the appropriate size and set
|
|
|
|
define check_and_set_bootanimation
|
|
|
|
$(eval TARGET_BOOTANIMATION_NAME := $(shell \
|
|
|
|
if [ -z "$(TARGET_BOOTANIMATION_NAME)" ]; then
|
|
|
|
if [ $(1) -le $(TARGET_BOOTANIMATION_SIZE) ]; then \
|
|
|
|
echo $(1); \
|
|
|
|
exit 0; \
|
|
|
|
fi;
|
|
|
|
fi;
|
|
|
|
echo $(TARGET_BOOTANIMATION_NAME); ))
|
|
|
|
endef
|
|
|
|
$(foreach size,$(bootanimation_sizes), $(call check_and_set_bootanimation,$(size)))
|
|
|
|
|
2014-01-30 20:51:04 +00:00
|
|
|
ifeq ($(TARGET_BOOTANIMATION_HALF_RES),true)
|
|
|
|
PRODUCT_BOOTANIMATION := vendor/cm/prebuilt/common/bootanimation/halfres/$(TARGET_BOOTANIMATION_NAME).zip
|
|
|
|
else
|
2013-08-21 20:43:54 +00:00
|
|
|
PRODUCT_BOOTANIMATION := vendor/cm/prebuilt/common/bootanimation/$(TARGET_BOOTANIMATION_NAME).zip
|
2012-03-14 07:10:33 +00:00
|
|
|
endif
|
2014-01-30 20:51:04 +00:00
|
|
|
endif
|
2012-03-14 07:10:33 +00:00
|
|
|
|
2011-11-27 19:56:54 +00:00
|
|
|
ifdef CM_NIGHTLY
|
|
|
|
PRODUCT_PROPERTY_OVERRIDES += \
|
|
|
|
ro.rommanager.developerid=cyanogenmodnightly
|
|
|
|
else
|
|
|
|
PRODUCT_PROPERTY_OVERRIDES += \
|
|
|
|
ro.rommanager.developerid=cyanogenmod
|
|
|
|
endif
|
|
|
|
|
|
|
|
PRODUCT_BUILD_PROP_OVERRIDES += BUILD_UTC_DATE=0
|
|
|
|
|
2013-11-06 21:55:11 +00:00
|
|
|
ifeq ($(PRODUCT_GMS_CLIENTID_BASE),)
|
|
|
|
PRODUCT_PROPERTY_OVERRIDES += \
|
|
|
|
ro.com.google.clientidbase=android-google
|
|
|
|
else
|
|
|
|
PRODUCT_PROPERTY_OVERRIDES += \
|
|
|
|
ro.com.google.clientidbase=$(PRODUCT_GMS_CLIENTID_BASE)
|
|
|
|
endif
|
|
|
|
|
2011-11-27 19:56:54 +00:00
|
|
|
PRODUCT_PROPERTY_OVERRIDES += \
|
|
|
|
keyguard.no_require_sim=true \
|
|
|
|
ro.url.legal=http://www.google.com/intl/%s/mobile/android/basic/phone-legal.html \
|
|
|
|
ro.url.legal.android_privacy=http://www.google.com/intl/%s/mobile/android/basic/privacy.html \
|
|
|
|
ro.com.android.wifi-watchlist=GoogleGuest \
|
|
|
|
ro.setupwizard.enterprise_mode=1 \
|
|
|
|
ro.com.android.dateformat=MM-dd-yyyy \
|
|
|
|
ro.com.android.dataroaming=false
|
|
|
|
|
2013-08-04 12:25:00 +00:00
|
|
|
PRODUCT_PROPERTY_OVERRIDES += \
|
2013-09-25 16:13:25 +00:00
|
|
|
ro.build.selinux=1
|
2013-08-04 12:25:00 +00:00
|
|
|
|
2014-02-05 06:59:01 +00:00
|
|
|
# Thank you, please drive thru!
|
|
|
|
PRODUCT_PROPERTY_OVERRIDES += persist.sys.dun.override=0
|
|
|
|
|
2013-03-20 10:47:17 +00:00
|
|
|
ifneq ($(TARGET_BUILD_VARIANT),eng)
|
2013-02-15 15:46:39 +00:00
|
|
|
# Enable ADB authentication
|
|
|
|
ADDITIONAL_DEFAULT_PROPERTIES += ro.adb.secure=1
|
2013-03-20 10:47:17 +00:00
|
|
|
endif
|
2013-02-15 15:46:39 +00:00
|
|
|
|
2011-11-27 19:56:54 +00:00
|
|
|
# Copy over the changelog to the device
|
|
|
|
PRODUCT_COPY_FILES += \
|
|
|
|
vendor/cm/CHANGELOG.mkdn:system/etc/CHANGELOG-CM.txt
|
|
|
|
|
2012-03-04 08:37:42 +00:00
|
|
|
# Backup Tool
|
2013-10-07 05:41:52 +00:00
|
|
|
ifneq ($(WITH_GMS),true)
|
2011-11-27 19:56:54 +00:00
|
|
|
PRODUCT_COPY_FILES += \
|
2012-03-04 08:37:42 +00:00
|
|
|
vendor/cm/prebuilt/common/bin/backuptool.sh:system/bin/backuptool.sh \
|
|
|
|
vendor/cm/prebuilt/common/bin/backuptool.functions:system/bin/backuptool.functions \
|
2012-12-19 01:11:21 +00:00
|
|
|
vendor/cm/prebuilt/common/bin/50-cm.sh:system/addon.d/50-cm.sh \
|
|
|
|
vendor/cm/prebuilt/common/bin/blacklist:system/addon.d/blacklist
|
2013-10-07 05:41:52 +00:00
|
|
|
endif
|
2011-11-27 19:56:54 +00:00
|
|
|
|
2011-12-20 20:14:24 +00:00
|
|
|
# init.d support
|
|
|
|
PRODUCT_COPY_FILES += \
|
|
|
|
vendor/cm/prebuilt/common/etc/init.d/00banner:system/etc/init.d/00banner \
|
|
|
|
vendor/cm/prebuilt/common/bin/sysinit:system/bin/sysinit
|
|
|
|
|
2012-04-06 01:18:18 +00:00
|
|
|
# userinit support
|
|
|
|
PRODUCT_COPY_FILES += \
|
|
|
|
vendor/cm/prebuilt/common/etc/init.d/90userinit:system/etc/init.d/90userinit
|
|
|
|
|
2012-10-18 15:38:25 +00:00
|
|
|
# CM-specific init file
|
|
|
|
PRODUCT_COPY_FILES += \
|
|
|
|
vendor/cm/prebuilt/common/etc/init.local.rc:root/init.cm.rc
|
|
|
|
|
2012-03-07 13:34:38 +00:00
|
|
|
# Bring in camera effects
|
2012-01-14 23:50:25 +00:00
|
|
|
PRODUCT_COPY_FILES += \
|
2012-01-12 06:10:39 +00:00
|
|
|
vendor/cm/prebuilt/common/media/LMprec_508.emd:system/media/LMprec_508.emd \
|
|
|
|
vendor/cm/prebuilt/common/media/PFFprec_600.emd:system/media/PFFprec_600.emd
|
2011-11-27 19:56:54 +00:00
|
|
|
|
|
|
|
# Enable SIP+VoIP on all targets
|
|
|
|
PRODUCT_COPY_FILES += \
|
2012-07-11 10:21:50 +00:00
|
|
|
frameworks/native/data/etc/android.software.sip.voip.xml:system/etc/permissions/android.software.sip.voip.xml
|
2011-11-27 19:56:54 +00:00
|
|
|
|
2013-01-30 20:45:20 +00:00
|
|
|
# Enable wireless Xbox 360 controller support
|
|
|
|
PRODUCT_COPY_FILES += \
|
|
|
|
frameworks/base/data/keyboards/Vendor_045e_Product_028e.kl:system/usr/keylayout/Vendor_045e_Product_0719.kl
|
|
|
|
|
2012-03-26 00:21:32 +00:00
|
|
|
# This is CM!
|
|
|
|
PRODUCT_COPY_FILES += \
|
|
|
|
vendor/cm/config/permissions/com.cyanogenmod.android.xml:system/etc/permissions/com.cyanogenmod.android.xml
|
|
|
|
|
2012-05-04 09:15:56 +00:00
|
|
|
# T-Mobile theme engine
|
|
|
|
include vendor/cm/config/themes_common.mk
|
|
|
|
|
2011-11-27 19:56:54 +00:00
|
|
|
# Required CM packages
|
|
|
|
PRODUCT_PACKAGES += \
|
2011-12-21 00:16:01 +00:00
|
|
|
Development \
|
2011-11-27 19:56:54 +00:00
|
|
|
LatinIME \
|
2013-09-25 16:13:25 +00:00
|
|
|
BluetoothExt
|
2011-11-27 19:56:54 +00:00
|
|
|
|
|
|
|
# Optional CM packages
|
|
|
|
PRODUCT_PACKAGES += \
|
2013-07-21 16:34:19 +00:00
|
|
|
VoicePlus \
|
2013-11-11 00:39:36 +00:00
|
|
|
Basic \
|
|
|
|
libemoji
|
2011-11-27 01:31:19 +00:00
|
|
|
|
2011-12-14 22:02:19 +00:00
|
|
|
# Custom CM packages
|
|
|
|
PRODUCT_PACKAGES += \
|
2013-11-05 15:26:20 +00:00
|
|
|
Launcher3 \
|
2013-12-13 02:54:49 +00:00
|
|
|
Trebuchet \
|
2011-12-14 22:02:19 +00:00
|
|
|
DSPManager \
|
2011-12-15 06:27:07 +00:00
|
|
|
libcyanogen-dsp \
|
2012-05-05 23:23:24 +00:00
|
|
|
audio_effects.conf \
|
2012-05-25 00:31:26 +00:00
|
|
|
CMWallpapers \
|
2012-09-29 16:17:45 +00:00
|
|
|
Apollo \
|
2012-12-30 18:37:40 +00:00
|
|
|
CMFileManager \
|
2013-08-20 10:53:56 +00:00
|
|
|
LockClock \
|
2013-11-13 21:16:33 +00:00
|
|
|
CMUpdater \
|
|
|
|
CMFota \
|
2013-12-13 11:17:08 +00:00
|
|
|
CMAccount
|
2011-12-14 22:02:19 +00:00
|
|
|
|
2013-08-07 23:49:44 +00:00
|
|
|
# CM Hardware Abstraction Framework
|
|
|
|
PRODUCT_PACKAGES += \
|
|
|
|
org.cyanogenmod.hardware \
|
|
|
|
org.cyanogenmod.hardware.xml
|
|
|
|
|
2012-04-15 09:39:25 +00:00
|
|
|
# Extra tools in CM
|
|
|
|
PRODUCT_PACKAGES += \
|
2013-11-24 12:05:59 +00:00
|
|
|
libsepol \
|
2012-07-05 08:20:47 +00:00
|
|
|
openvpn \
|
|
|
|
e2fsck \
|
|
|
|
mke2fs \
|
2012-09-21 00:09:07 +00:00
|
|
|
tune2fs \
|
|
|
|
bash \
|
|
|
|
nano \
|
|
|
|
htop \
|
|
|
|
powertop \
|
2013-07-06 11:07:56 +00:00
|
|
|
lsof \
|
|
|
|
mount.exfat \
|
|
|
|
fsck.exfat \
|
|
|
|
mkfs.exfat \
|
|
|
|
ntfsfix \
|
2013-09-25 16:13:25 +00:00
|
|
|
ntfs-3g \
|
|
|
|
gdbserver \
|
|
|
|
micro_bench \
|
|
|
|
oprofiled \
|
|
|
|
sqlite3 \
|
|
|
|
strace
|
2012-04-15 09:39:25 +00:00
|
|
|
|
2012-07-19 10:34:25 +00:00
|
|
|
# Openssh
|
|
|
|
PRODUCT_PACKAGES += \
|
|
|
|
scp \
|
|
|
|
sftp \
|
|
|
|
ssh \
|
|
|
|
sshd \
|
|
|
|
sshd_config \
|
|
|
|
ssh-keygen \
|
2012-08-19 12:00:04 +00:00
|
|
|
start-ssh
|
|
|
|
|
|
|
|
# rsync
|
|
|
|
PRODUCT_PACKAGES += \
|
|
|
|
rsync
|
2012-07-19 10:34:25 +00:00
|
|
|
|
2013-09-25 16:13:25 +00:00
|
|
|
# These packages are excluded from user builds
|
|
|
|
ifneq ($(TARGET_BUILD_VARIANT),user)
|
|
|
|
|
|
|
|
PRODUCT_PACKAGES += \
|
2013-11-06 20:41:34 +00:00
|
|
|
procmem \
|
|
|
|
procrank \
|
2013-09-25 16:13:25 +00:00
|
|
|
Superuser \
|
|
|
|
su
|
|
|
|
|
|
|
|
# Terminal Emulator
|
|
|
|
PRODUCT_COPY_FILES += \
|
|
|
|
vendor/cm/proprietary/Term.apk:system/app/Term.apk \
|
|
|
|
vendor/cm/proprietary/lib/armeabi/libjackpal-androidterm4.so:system/lib/libjackpal-androidterm4.so
|
|
|
|
|
|
|
|
PRODUCT_PROPERTY_OVERRIDES += \
|
|
|
|
persist.sys.root_access=1
|
|
|
|
else
|
|
|
|
|
|
|
|
PRODUCT_PROPERTY_OVERRIDES += \
|
|
|
|
persist.sys.root_access=0
|
|
|
|
|
|
|
|
endif
|
|
|
|
|
2013-08-12 22:41:14 +00:00
|
|
|
# easy way to extend to add more packages
|
|
|
|
-include vendor/extra/product.mk
|
|
|
|
|
2011-12-20 23:02:07 +00:00
|
|
|
PRODUCT_PACKAGE_OVERLAYS += vendor/cm/overlay/common
|
2011-11-28 15:44:23 +00:00
|
|
|
|
2013-11-05 15:26:20 +00:00
|
|
|
PRODUCT_VERSION_MAJOR = 11
|
|
|
|
PRODUCT_VERSION_MINOR = 0
|
2013-07-25 00:12:16 +00:00
|
|
|
PRODUCT_VERSION_MAINTENANCE = 0-RC0
|
2011-11-28 15:44:23 +00:00
|
|
|
|
2013-09-24 16:58:56 +00:00
|
|
|
# Set CM_BUILDTYPE from the env RELEASE_TYPE, for jenkins compat
|
|
|
|
|
|
|
|
ifndef CM_BUILDTYPE
|
|
|
|
ifdef RELEASE_TYPE
|
|
|
|
# Starting with "CM_" is optional
|
|
|
|
RELEASE_TYPE := $(shell echo $(RELEASE_TYPE) | sed -e 's|^CM_||g')
|
|
|
|
CM_BUILDTYPE := $(RELEASE_TYPE)
|
|
|
|
endif
|
2012-05-07 05:49:33 +00:00
|
|
|
endif
|
2013-09-24 16:58:56 +00:00
|
|
|
|
|
|
|
# Filter out random types, so it'll reset to UNOFFICIAL
|
|
|
|
ifeq ($(filter RELEASE NIGHTLY SNAPSHOT EXPERIMENTAL,$(CM_BUILDTYPE)),)
|
|
|
|
CM_BUILDTYPE :=
|
2012-05-07 05:49:33 +00:00
|
|
|
endif
|
|
|
|
|
2012-06-08 10:08:15 +00:00
|
|
|
ifdef CM_BUILDTYPE
|
2013-09-24 16:58:56 +00:00
|
|
|
ifneq ($(CM_BUILDTYPE), SNAPSHOT)
|
|
|
|
ifdef CM_EXTRAVERSION
|
|
|
|
# Force build type to EXPERIMENTAL
|
|
|
|
CM_BUILDTYPE := EXPERIMENTAL
|
|
|
|
# Remove leading dash from CM_EXTRAVERSION
|
|
|
|
CM_EXTRAVERSION := $(shell echo $(CM_EXTRAVERSION) | sed 's/-//')
|
|
|
|
# Add leading dash to CM_EXTRAVERSION
|
|
|
|
CM_EXTRAVERSION := -$(CM_EXTRAVERSION)
|
|
|
|
endif
|
|
|
|
else
|
|
|
|
ifndef CM_EXTRAVERSION
|
|
|
|
# Force build type to EXPERIMENTAL, SNAPSHOT mandates a tag
|
|
|
|
CM_BUILDTYPE := EXPERIMENTAL
|
|
|
|
else
|
|
|
|
# Remove leading dash from CM_EXTRAVERSION
|
|
|
|
CM_EXTRAVERSION := $(shell echo $(CM_EXTRAVERSION) | sed 's/-//')
|
|
|
|
# Add leading dash to CM_EXTRAVERSION
|
|
|
|
CM_EXTRAVERSION := -$(CM_EXTRAVERSION)
|
|
|
|
endif
|
2012-06-08 10:08:15 +00:00
|
|
|
endif
|
|
|
|
else
|
|
|
|
# If CM_BUILDTYPE is not defined, set to UNOFFICIAL
|
2012-05-07 05:49:33 +00:00
|
|
|
CM_BUILDTYPE := UNOFFICIAL
|
2012-06-08 10:08:15 +00:00
|
|
|
CM_EXTRAVERSION :=
|
2012-05-07 05:49:33 +00:00
|
|
|
endif
|
|
|
|
|
2013-12-13 17:04:14 +00:00
|
|
|
ifeq ($(CM_BUILDTYPE), UNOFFICIAL)
|
|
|
|
ifneq ($(TARGET_UNOFFICIAL_BUILD_ID),)
|
2013-12-17 22:22:58 +00:00
|
|
|
CM_EXTRAVERSION := -$(TARGET_UNOFFICIAL_BUILD_ID)
|
2013-12-13 17:04:14 +00:00
|
|
|
endif
|
|
|
|
endif
|
|
|
|
|
2013-09-24 16:58:56 +00:00
|
|
|
ifeq ($(CM_BUILDTYPE), RELEASE)
|
2013-11-11 00:55:51 +00:00
|
|
|
ifndef TARGET_VENDOR_RELEASE_BUILD_ID
|
|
|
|
CM_VERSION := $(PRODUCT_VERSION_MAJOR).$(PRODUCT_VERSION_MINOR).$(PRODUCT_VERSION_MAINTENANCE)$(PRODUCT_VERSION_DEVICE_SPECIFIC)-$(CM_BUILD)
|
|
|
|
else
|
|
|
|
ifeq ($(TARGET_BUILD_VARIANT),user)
|
|
|
|
CM_VERSION := $(PRODUCT_VERSION_MAJOR).$(PRODUCT_VERSION_MINOR)-$(TARGET_VENDOR_RELEASE_BUILD_ID)-$(CM_BUILD)
|
|
|
|
else
|
|
|
|
CM_VERSION := $(PRODUCT_VERSION_MAJOR).$(PRODUCT_VERSION_MINOR).$(PRODUCT_VERSION_MAINTENANCE)$(PRODUCT_VERSION_DEVICE_SPECIFIC)-$(CM_BUILD)
|
|
|
|
endif
|
|
|
|
endif
|
2011-11-28 15:44:23 +00:00
|
|
|
else
|
2012-12-04 13:46:48 +00:00
|
|
|
ifeq ($(PRODUCT_VERSION_MINOR),0)
|
2013-09-24 16:58:56 +00:00
|
|
|
CM_VERSION := $(PRODUCT_VERSION_MAJOR)-$(shell date -u +%Y%m%d)-$(CM_BUILDTYPE)$(CM_EXTRAVERSION)-$(CM_BUILD)
|
2012-12-04 13:46:48 +00:00
|
|
|
else
|
2013-09-24 16:58:56 +00:00
|
|
|
CM_VERSION := $(PRODUCT_VERSION_MAJOR).$(PRODUCT_VERSION_MINOR)-$(shell date -u +%Y%m%d)-$(CM_BUILDTYPE)$(CM_EXTRAVERSION)-$(CM_BUILD)
|
2012-12-04 13:46:48 +00:00
|
|
|
endif
|
2011-11-28 15:44:23 +00:00
|
|
|
endif
|
2012-02-23 22:07:44 +00:00
|
|
|
|
|
|
|
PRODUCT_PROPERTY_OVERRIDES += \
|
|
|
|
ro.cm.version=$(CM_VERSION) \
|
2013-12-10 12:35:08 +00:00
|
|
|
ro.modversion=$(CM_VERSION) \
|
|
|
|
ro.cmlegal.url=http://www.cyanogenmod.org/docs/privacy
|
2012-11-13 10:42:11 +00:00
|
|
|
|
2013-10-23 19:56:56 +00:00
|
|
|
-include vendor/cm-priv/keys/keys.mk
|
|
|
|
|
2014-01-09 10:25:31 +00:00
|
|
|
CM_DISPLAY_VERSION := $(CM_VERSION)
|
|
|
|
|
2014-01-24 17:58:36 +00:00
|
|
|
ifneq ($(PRODUCT_DEFAULT_DEV_CERTIFICATE),)
|
|
|
|
ifneq ($(PRODUCT_DEFAULT_DEV_CERTIFICATE),build/target/product/security/testkey)
|
2014-01-09 10:25:31 +00:00
|
|
|
ifneq ($(CM_BUILDTYPE), UNOFFICIAL)
|
|
|
|
ifndef TARGET_VENDOR_RELEASE_BUILD_ID
|
|
|
|
ifneq ($(CM_EXTRAVERSION),)
|
2014-02-16 17:15:07 +00:00
|
|
|
# Remove leading dash from CM_EXTRAVERSION
|
|
|
|
CM_EXTRAVERSION := $(shell echo $(CM_EXTRAVERSION) | sed 's/-//')
|
2014-01-09 10:25:31 +00:00
|
|
|
TARGET_VENDOR_RELEASE_BUILD_ID := $(CM_EXTRAVERSION)
|
|
|
|
else
|
2014-02-16 17:15:07 +00:00
|
|
|
TARGET_VENDOR_RELEASE_BUILD_ID := $(shell date -u +%Y%m%d)
|
2014-01-09 10:25:31 +00:00
|
|
|
endif
|
|
|
|
else
|
2014-02-16 17:15:07 +00:00
|
|
|
TARGET_VENDOR_RELEASE_BUILD_ID := $(TARGET_VENDOR_RELEASE_BUILD_ID)
|
2014-01-09 10:25:31 +00:00
|
|
|
endif
|
2014-02-16 17:15:07 +00:00
|
|
|
CM_DISPLAY_VERSION=$(PRODUCT_VERSION_MAJOR).$(PRODUCT_VERSION_MINOR)-$(TARGET_VENDOR_RELEASE_BUILD_ID)
|
2014-01-09 10:25:31 +00:00
|
|
|
endif
|
|
|
|
endif
|
2014-01-11 16:00:16 +00:00
|
|
|
endif
|
2014-01-09 10:25:31 +00:00
|
|
|
|
|
|
|
PRODUCT_PROPERTY_OVERRIDES += \
|
|
|
|
ro.cm.display.version=$(CM_DISPLAY_VERSION)
|
|
|
|
|
2014-01-31 19:59:56 +00:00
|
|
|
-include $(WORKSPACE)/build_env/image-auto-bits.mk
|
2013-12-08 06:04:17 +00:00
|
|
|
|
|
|
|
-include vendor/cyngn/product.mk
|