diff --git a/bootanimation/Android.mk b/bootanimation/Android.mk new file mode 100644 index 00000000..f7ba13ba --- /dev/null +++ b/bootanimation/Android.mk @@ -0,0 +1,52 @@ +# +# Copyright (C) 2016 The CyanogenMod Project +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# + +define build-bootanimation + sh vendor/cm/bootanimation/generate-bootanimation.sh \ + $(TARGET_SCREEN_WIDTH) \ + $(TARGET_SCREEN_HEIGHT) \ + $(TARGET_BOOTANIMATION_HALF_RES) +endef + +TARGET_GENERATED_BOOTANIMATION := $(TARGET_OUT_INTERMEDIATES)/BOOTANIMATION/bootanimation.zip +$(TARGET_GENERATED_BOOTANIMATION): + @echo "Building bootanimation" + $(build-bootanimation) + +ifeq ($(TARGET_BOOTANIMATION),) + TARGET_BOOTANIMATION := $(TARGET_GENERATED_BOOTANIMATION) + ifeq ($(shell command -v convert),) + $(info **********************************************) + $(info The boot animation could not be generated as) + $(info ImageMagick is not installed in your system.) + $(info $(space)) + $(info Please install ImageMagick from this website:) + $(info https://imagemagick.org/script/binary-releases.php) + $(info **********************************************) + $(error stop) + endif +endif + +include $(CLEAR_VARS) +LOCAL_MODULE := bootanimation.zip +LOCAL_MODULE_CLASS := ETC +LOCAL_MODULE_PATH := $(TARGET_OUT)/media + +include $(BUILD_SYSTEM)/base_rules.mk + +$(LOCAL_BUILT_MODULE): $(TARGET_BOOTANIMATION) + @mkdir -p $(dir $@) + @cp $(TARGET_BOOTANIMATION) $@ diff --git a/prebuilt/common/bootanimation/1600.zip b/bootanimation/bootanimation.tar similarity index 97% rename from prebuilt/common/bootanimation/1600.zip rename to bootanimation/bootanimation.tar index f008848a..50e82bf0 100644 Binary files a/prebuilt/common/bootanimation/1600.zip and b/bootanimation/bootanimation.tar differ diff --git a/bootanimation/desc.txt b/bootanimation/desc.txt new file mode 100644 index 00000000..4aecc8ed --- /dev/null +++ b/bootanimation/desc.txt @@ -0,0 +1,3 @@ +c 1 0 part0 +c 0 0 part1 +c 1 0 part2 diff --git a/bootanimation/generate-bootanimation.sh b/bootanimation/generate-bootanimation.sh new file mode 100755 index 00000000..37b83145 --- /dev/null +++ b/bootanimation/generate-bootanimation.sh @@ -0,0 +1,32 @@ +#!/bin/bash + +WIDTH="$1" +HEIGHT="$2" +HALF_RES="$3" +OUT="$ANDROID_PRODUCT_OUT/obj/BOOTANIMATION" + +if [ "$HEIGHT" -lt "$WIDTH" ]; then + SIZE="$HEIGHT" +else + SIZE="$WIDTH" +fi + +if [ "$HALF_RES" = "true" ]; then + IMAGESIZE=$(expr $SIZE / 2) +else + IMAGESIZE="$SIZE" +fi + +RESOLUTION=""$IMAGESIZE"x"$IMAGESIZE"" + +mkdir -p $ANDROID_PRODUCT_OUT/obj/BOOTANIMATION/bootanimation/part{0..2} +tar xfp "vendor/cm/bootanimation/bootanimation.tar" --to-command="convert - -resize '$RESOLUTION' \"png8:$OUT/bootanimation/\$TAR_FILENAME\"" + +# Create desc.txt +echo "$SIZE" "$SIZE" 30 > "$OUT/bootanimation/desc.txt" +cat "vendor/cm/bootanimation/desc.txt" >> "$OUT/bootanimation/desc.txt" + +# Create bootanimation.zip +cd "$OUT/bootanimation" + +zip -qr0 "$OUT/bootanimation.zip" . diff --git a/config/common.mk b/config/common.mk index 2b8c10f1..969bd873 100644 --- a/config/common.mk +++ b/config/common.mk @@ -1,38 +1,5 @@ PRODUCT_BRAND ?= cyanogenmod -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))) - -ifeq ($(TARGET_BOOTANIMATION_HALF_RES),true) -PRODUCT_BOOTANIMATION := vendor/cm/prebuilt/common/bootanimation/halfres/$(TARGET_BOOTANIMATION_NAME).zip -else -PRODUCT_BOOTANIMATION := vendor/cm/prebuilt/common/bootanimation/$(TARGET_BOOTANIMATION_NAME).zip -endif -endif - PRODUCT_BUILD_PROP_OVERRIDES += BUILD_UTC_DATE=0 ifeq ($(PRODUCT_GMS_CLIENTID_BASE),) diff --git a/config/common_full_phone.mk b/config/common_full_phone.mk index 6ee8c004..94798dc5 100644 --- a/config/common_full_phone.mk +++ b/config/common_full_phone.mk @@ -8,9 +8,4 @@ PRODUCT_PACKAGES += \ # Include CM LatinIME dictionaries PRODUCT_PACKAGE_OVERLAYS += vendor/cm/overlay/dictionaries -ifeq ($(TARGET_SCREEN_WIDTH) $(TARGET_SCREEN_HEIGHT),$(space)) - PRODUCT_COPY_FILES += \ - vendor/cm/prebuilt/common/bootanimation/480.zip:system/media/bootanimation.zip -endif - $(call inherit-product, vendor/cm/config/telephony.mk) diff --git a/config/common_full_tablet_wifionly.mk b/config/common_full_tablet_wifionly.mk index 8dc9332e..47e7845a 100644 --- a/config/common_full_tablet_wifionly.mk +++ b/config/common_full_tablet_wifionly.mk @@ -7,8 +7,3 @@ PRODUCT_PACKAGES += \ # Include CM LatinIME dictionaries PRODUCT_PACKAGE_OVERLAYS += vendor/cm/overlay/dictionaries - -ifeq ($(TARGET_SCREEN_WIDTH) $(TARGET_SCREEN_HEIGHT),$(space)) - PRODUCT_COPY_FILES += \ - vendor/cm/prebuilt/common/bootanimation/800.zip:system/media/bootanimation.zip -endif diff --git a/config/common_full_tv.mk b/config/common_full_tv.mk index 779b918c..10b2a5cf 100644 --- a/config/common_full_tv.mk +++ b/config/common_full_tv.mk @@ -1,7 +1,2 @@ # Inherit common CM stuff $(call inherit-product, vendor/cm/config/common_full.mk) - -ifeq ($(TARGET_SCREEN_WIDTH) $(TARGET_SCREEN_HEIGHT),$(space)) - PRODUCT_COPY_FILES += \ - vendor/cm/prebuilt/common/bootanimation/800.zip:system/media/bootanimation.zip -endif diff --git a/config/common_mini_phone.mk b/config/common_mini_phone.mk index 828b5b9d..b4c0cb3d 100644 --- a/config/common_mini_phone.mk +++ b/config/common_mini_phone.mk @@ -4,9 +4,4 @@ $(call inherit-product, vendor/cm/config/common_mini.mk) PRODUCT_PACKAGES += \ LatinIME -ifeq ($(TARGET_SCREEN_WIDTH) $(TARGET_SCREEN_HEIGHT),$(space)) - PRODUCT_COPY_FILES += \ - vendor/cm/prebuilt/common/bootanimation/320.zip:system/media/bootanimation.zip -endif - $(call inherit-product, vendor/cm/config/telephony.mk) diff --git a/config/common_mini_tablet_wifionly.mk b/config/common_mini_tablet_wifionly.mk index 1d5810ff..285a55d4 100644 --- a/config/common_mini_tablet_wifionly.mk +++ b/config/common_mini_tablet_wifionly.mk @@ -4,8 +4,3 @@ $(call inherit-product, vendor/cm/config/common_mini.mk) # Required CM packages PRODUCT_PACKAGES += \ LatinIME - -ifeq ($(TARGET_SCREEN_WIDTH) $(TARGET_SCREEN_HEIGHT),$(space)) - PRODUCT_COPY_FILES += \ - vendor/cm/prebuilt/common/bootanimation/800.zip:system/media/bootanimation.zip -endif diff --git a/config/common_mini_tv.mk b/config/common_mini_tv.mk index 63f2bcf3..86f1a6b8 100644 --- a/config/common_mini_tv.mk +++ b/config/common_mini_tv.mk @@ -1,7 +1,2 @@ # Inherit common CM stuff $(call inherit-product, vendor/cm/config/common_mini.mk) - -ifeq ($(TARGET_SCREEN_WIDTH) $(TARGET_SCREEN_HEIGHT),$(space)) - PRODUCT_COPY_FILES += \ - vendor/cm/prebuilt/common/bootanimation/800.zip:system/media/bootanimation.zip -endif diff --git a/prebuilt/common/bootanimation/1080.zip b/prebuilt/common/bootanimation/1080.zip deleted file mode 100644 index c2d29e20..00000000 Binary files a/prebuilt/common/bootanimation/1080.zip and /dev/null differ diff --git a/prebuilt/common/bootanimation/1200.zip b/prebuilt/common/bootanimation/1200.zip deleted file mode 100644 index 95b1fdc2..00000000 Binary files a/prebuilt/common/bootanimation/1200.zip and /dev/null differ diff --git a/prebuilt/common/bootanimation/1440.zip b/prebuilt/common/bootanimation/1440.zip deleted file mode 100644 index d9c6dc3c..00000000 Binary files a/prebuilt/common/bootanimation/1440.zip and /dev/null differ diff --git a/prebuilt/common/bootanimation/1536.zip b/prebuilt/common/bootanimation/1536.zip deleted file mode 100644 index a2fc1b6e..00000000 Binary files a/prebuilt/common/bootanimation/1536.zip and /dev/null differ diff --git a/prebuilt/common/bootanimation/240.zip b/prebuilt/common/bootanimation/240.zip deleted file mode 100644 index 94b671e8..00000000 Binary files a/prebuilt/common/bootanimation/240.zip and /dev/null differ diff --git a/prebuilt/common/bootanimation/320.zip b/prebuilt/common/bootanimation/320.zip deleted file mode 100644 index 7a9f86d7..00000000 Binary files a/prebuilt/common/bootanimation/320.zip and /dev/null differ diff --git a/prebuilt/common/bootanimation/360.zip b/prebuilt/common/bootanimation/360.zip deleted file mode 100644 index 19061376..00000000 Binary files a/prebuilt/common/bootanimation/360.zip and /dev/null differ diff --git a/prebuilt/common/bootanimation/480.zip b/prebuilt/common/bootanimation/480.zip deleted file mode 100644 index de6d2faa..00000000 Binary files a/prebuilt/common/bootanimation/480.zip and /dev/null differ diff --git a/prebuilt/common/bootanimation/540.zip b/prebuilt/common/bootanimation/540.zip deleted file mode 100644 index 3458bbb0..00000000 Binary files a/prebuilt/common/bootanimation/540.zip and /dev/null differ diff --git a/prebuilt/common/bootanimation/600.zip b/prebuilt/common/bootanimation/600.zip deleted file mode 100644 index f7662ce6..00000000 Binary files a/prebuilt/common/bootanimation/600.zip and /dev/null differ diff --git a/prebuilt/common/bootanimation/720.zip b/prebuilt/common/bootanimation/720.zip deleted file mode 100644 index aaabf4fe..00000000 Binary files a/prebuilt/common/bootanimation/720.zip and /dev/null differ diff --git a/prebuilt/common/bootanimation/768.zip b/prebuilt/common/bootanimation/768.zip deleted file mode 100644 index f8521ddf..00000000 Binary files a/prebuilt/common/bootanimation/768.zip and /dev/null differ diff --git a/prebuilt/common/bootanimation/800.zip b/prebuilt/common/bootanimation/800.zip deleted file mode 100644 index 08d57858..00000000 Binary files a/prebuilt/common/bootanimation/800.zip and /dev/null differ diff --git a/prebuilt/common/bootanimation/halfres/1080.zip b/prebuilt/common/bootanimation/halfres/1080.zip deleted file mode 100644 index efb45ca4..00000000 Binary files a/prebuilt/common/bootanimation/halfres/1080.zip and /dev/null differ diff --git a/prebuilt/common/bootanimation/halfres/1200.zip b/prebuilt/common/bootanimation/halfres/1200.zip deleted file mode 100644 index d63a0b09..00000000 Binary files a/prebuilt/common/bootanimation/halfres/1200.zip and /dev/null differ diff --git a/prebuilt/common/bootanimation/halfres/1440.zip b/prebuilt/common/bootanimation/halfres/1440.zip deleted file mode 100644 index eba63464..00000000 Binary files a/prebuilt/common/bootanimation/halfres/1440.zip and /dev/null differ diff --git a/prebuilt/common/bootanimation/halfres/1536.zip b/prebuilt/common/bootanimation/halfres/1536.zip deleted file mode 100644 index 3f6da277..00000000 Binary files a/prebuilt/common/bootanimation/halfres/1536.zip and /dev/null differ diff --git a/prebuilt/common/bootanimation/halfres/1600.zip b/prebuilt/common/bootanimation/halfres/1600.zip deleted file mode 100644 index 61132a97..00000000 Binary files a/prebuilt/common/bootanimation/halfres/1600.zip and /dev/null differ diff --git a/prebuilt/common/bootanimation/halfres/240.zip b/prebuilt/common/bootanimation/halfres/240.zip deleted file mode 100644 index 59735d06..00000000 Binary files a/prebuilt/common/bootanimation/halfres/240.zip and /dev/null differ diff --git a/prebuilt/common/bootanimation/halfres/320.zip b/prebuilt/common/bootanimation/halfres/320.zip deleted file mode 100644 index 7497da0c..00000000 Binary files a/prebuilt/common/bootanimation/halfres/320.zip and /dev/null differ diff --git a/prebuilt/common/bootanimation/halfres/360.zip b/prebuilt/common/bootanimation/halfres/360.zip deleted file mode 100644 index f1247f70..00000000 Binary files a/prebuilt/common/bootanimation/halfres/360.zip and /dev/null differ diff --git a/prebuilt/common/bootanimation/halfres/480.zip b/prebuilt/common/bootanimation/halfres/480.zip deleted file mode 100644 index 44db576e..00000000 Binary files a/prebuilt/common/bootanimation/halfres/480.zip and /dev/null differ diff --git a/prebuilt/common/bootanimation/halfres/540.zip b/prebuilt/common/bootanimation/halfres/540.zip deleted file mode 100644 index 35b631cf..00000000 Binary files a/prebuilt/common/bootanimation/halfres/540.zip and /dev/null differ diff --git a/prebuilt/common/bootanimation/halfres/600.zip b/prebuilt/common/bootanimation/halfres/600.zip deleted file mode 100644 index ec352f7f..00000000 Binary files a/prebuilt/common/bootanimation/halfres/600.zip and /dev/null differ diff --git a/prebuilt/common/bootanimation/halfres/720.zip b/prebuilt/common/bootanimation/halfres/720.zip deleted file mode 100644 index cc7b7d38..00000000 Binary files a/prebuilt/common/bootanimation/halfres/720.zip and /dev/null differ diff --git a/prebuilt/common/bootanimation/halfres/768.zip b/prebuilt/common/bootanimation/halfres/768.zip deleted file mode 100644 index f87e834f..00000000 Binary files a/prebuilt/common/bootanimation/halfres/768.zip and /dev/null differ diff --git a/prebuilt/common/bootanimation/halfres/800.zip b/prebuilt/common/bootanimation/halfres/800.zip deleted file mode 100644 index 051db72e..00000000 Binary files a/prebuilt/common/bootanimation/halfres/800.zip and /dev/null differ diff --git a/prebuilt/common/bootanimation/halfres/generate-half-res-anims.sh b/prebuilt/common/bootanimation/halfres/generate-half-res-anims.sh deleted file mode 100755 index 70f6fad6..00000000 --- a/prebuilt/common/bootanimation/halfres/generate-half-res-anims.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/sh - -HALF_RES_RESOLUTIONS="240 320 360 480 540 600 720 768 800 1080 1200 1440 1536 1600" - -for i in $HALF_RES_RESOLUTIONS; do - rm -f $i.zip - mkdir $i - cd $i - if [ -f ../../$(($i/2)).zip ]; then - # use the existing scaled images - echo "Using existing half-scale images instead of scaling from $i px" - unzip ../../$(($i/2)).zip - rm -f desc.txt - unzip ../../$i.zip desc.txt - else - unzip ../../$i.zip - for j in */*.[pP][nN][gG]; do - convert $j -resize 50% tmp.png - mv tmp.png $j - done - fi - zip -r0 ../$i.zip . - cd .. - rm -rf $i -done