14 Commits
vic ... qoppa

Author SHA1 Message Date
Alessandro Astone
59bcb4c6d5 setup-makefiles: Rename variables to please extract-tools 2022-03-11 18:33:52 +01:00
Alessandro Astone
2f2c2296f5 Update android version in zip name for Q
This was long forgotten
2022-02-24 17:16:01 +01:00
Alessandro Astone
177d1f1ce1 SetupWizard is arch dependent 2022-02-24 14:58:49 +01:00
Alessandro Astone
d6035b9d9f Regen makefiles 2022-02-24 14:57:35 +01:00
Alessandro Astone
ea10299451 Add version and arch checks 2022-02-08 00:54:30 +01:00
Alessandro Astone
8dab22a84a Always cleanup on failure 2022-02-08 00:53:17 +01:00
LuK1337
4fe3f73006 Ignore product block device in case it's a symlink
This is common on devices where maintainers have chosen not to use
real partitions because of their size being too small to be useful
2022-02-01 18:33:48 +01:00
Alessandro Astone
be8e53eb32 Provision apk lives in product in Android 10 2022-02-01 18:33:25 +01:00
Erik Jensen
4557509f55 Support tab-delimited /etc/recovery.fstab
Previously, update-binary only supported space-delimited /etc/recovery.fstab.
2021-12-08 18:20:20 +01:00
Alessandro Astone
ccacac122a Include prebuilt static toybox
Built from lineage-18
2021-12-08 18:20:20 +01:00
Alessandro Astone
0dfbc1825a Exclude addon.d fragments from backup 2021-12-08 18:20:20 +01:00
Alessandro Astone
1d1a30c107 Improve free space checks
And don't count as needed space that will be freed from the replaced
files. This will allow to flash the zip over an existing installation
when space is tight.

Also:
awk      -->  tr | cut  because recovery might not provide awk
grep -v  -->  tail -1   in du because it might spit out 3 lines
2021-12-08 18:20:20 +01:00
Alessandro Astone
bc019515f6 Rename SetupWizard to SetupWizardPrebuilt in install scripts
Reflects the apk name used in this branch
2021-12-08 18:20:18 +01:00
Alessandro Astone
94437f53f2 Rewrite mounting
* Support dynamic partitions
* Mount system at /mnt/system to not interfere with newer recoveries
* Android 10+ system images always contain a rootfs before system
* Don't use system toybox
2021-12-08 18:16:46 +01:00
31 changed files with 582 additions and 382 deletions

65
arm/Android.bp Normal file
View File

@@ -0,0 +1,65 @@
/**
* Copyright (C) 2019-2022 The LineageOS 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.
*
* This file is generated by device/gapps/arm/setup-makefiles.sh
*/
soong_namespace {
}
android_app_import {
name: "PrebuiltGmsCore",
owner: "gapps",
apk: "proprietary/priv-app/PrebuiltGmsCore/PrebuiltGmsCore.apk",
presigned: true,
dex_preopt: {
enabled: false,
},
privileged: true,
}
android_app_import {
name: "MarkupGoogle",
owner: "gapps",
apk: "proprietary/app/MarkupGoogle/MarkupGoogle.apk",
presigned: true,
dex_preopt: {
enabled: false,
},
}
android_app_import {
name: "SetupWizardPrebuilt",
owner: "gapps",
apk: "proprietary/priv-app/SetupWizardPrebuilt/SetupWizardPrebuilt.apk",
overrides: ["Provision"],
presigned: true,
dex_preopt: {
enabled: false,
},
privileged: true,
}
android_app_import {
name: "Velvet",
owner: "gapps",
apk: "proprietary/priv-app/Velvet/Velvet.apk",
presigned: true,
dex_preopt: {
enabled: false,
},
privileged: true,
}

View File

@@ -1,4 +1,4 @@
# Copyright (C) 2017-2019 The LineageOS Project
# Copyright (C) 2017-2022 The LineageOS Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@@ -12,47 +12,10 @@
# See the License for the specific language governing permissions and
# limitations under the License.
# This file is generated by device/gapps//setup-makefiles.sh
# This file is generated by device/gapps/arm/setup-makefiles.sh
LOCAL_PATH := $(call my-dir)
ifneq ($(filter arm,$(TARGET_ARCH)),)
include $(CLEAR_VARS)
LOCAL_MODULE := PrebuiltGmsCore
LOCAL_MODULE_OWNER := gapps
LOCAL_SRC_FILES := proprietary/priv-app/PrebuiltGmsCore/PrebuiltGmsCore.apk
LOCAL_CERTIFICATE := PRESIGNED
LOCAL_MODULE_TAGS := optional
LOCAL_MODULE_CLASS := APPS
LOCAL_DEX_PREOPT := false
LOCAL_MODULE_SUFFIX := .apk
LOCAL_PRIVILEGED_MODULE := true
include $(BUILD_PREBUILT)
ifeq ($(TARGET_IS_GROUPER),)
include $(CLEAR_VARS)
LOCAL_MODULE := MarkupGoogle
LOCAL_MODULE_OWNER := gapps
LOCAL_SRC_FILES := proprietary/app/MarkupGoogle/MarkupGoogle.apk
LOCAL_CERTIFICATE := PRESIGNED
LOCAL_MODULE_TAGS := optional
LOCAL_MODULE_CLASS := APPS
LOCAL_DEX_PREOPT := false
LOCAL_MODULE_SUFFIX := .apk
include $(BUILD_PREBUILT)
include $(CLEAR_VARS)
LOCAL_MODULE := Velvet
LOCAL_MODULE_OWNER := gapps
LOCAL_SRC_FILES := proprietary/priv-app/Velvet/Velvet.apk
LOCAL_CERTIFICATE := PRESIGNED
LOCAL_MODULE_TAGS := optional
LOCAL_MODULE_CLASS := APPS
LOCAL_DEX_PREOPT := false
LOCAL_MODULE_SUFFIX := .apk
LOCAL_PRIVILEGED_MODULE := true
include $(BUILD_PREBUILT)
ifeq ($(TARGET_ARCH),arm)
endif
endif

View File

@@ -1,4 +1,4 @@
# Copyright (C) 2017-2019 The LineageOS Project
# Copyright (C) 2017-2022 The LineageOS Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@@ -12,5 +12,5 @@
# See the License for the specific language governing permissions and
# limitations under the License.
# This file is generated by device/gapps//setup-makefiles.sh
# This file is generated by device/gapps/arm/setup-makefiles.sh

View File

@@ -1,4 +1,4 @@
# Copyright (C) 2017-2019 The LineageOS Project
# Copyright (C) 2017-2022 The LineageOS Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@@ -12,19 +12,23 @@
# See the License for the specific language governing permissions and
# limitations under the License.
# This file is generated by device/gapps//setup-makefiles.sh
# This file is generated by device/gapps/arm/setup-makefiles.sh
PRODUCT_SOONG_NAMESPACES += \
vendor/gapps/arm
PRODUCT_COPY_FILES += \
vendor/gapps/arm/proprietary/lib/libjni_latinimegoogle.so:system/lib/libjni_latinimegoogle.so
vendor/gapps/arm/proprietary/lib/libjni_latinimegoogle.so:$(TARGET_COPY_OUT_SYSTEM)/lib/libjni_latinimegoogle.so
PRODUCT_PACKAGES += \
PrebuiltGmsCore
ifeq ($(TARGET_IS_GROUPER),)
PRODUCT_COPY_FILES += \
vendor/gapps/arm/proprietary/app/MarkupGoogle/lib/arm/libsketchology_native.so:system/app/MarkupGoogle/lib/arm/libsketchology_native.so
vendor/gapps/arm/proprietary/app/MarkupGoogle/lib/arm/libsketchology_native.so:$(TARGET_COPY_OUT_SYSTEM)/app/MarkupGoogle/lib/arm/libsketchology_native.so
PRODUCT_PACKAGES += \
MarkupGoogle \
SetupWizardPrebuilt \
Velvet
endif

65
arm64/Android.bp Normal file
View File

@@ -0,0 +1,65 @@
/**
* Copyright (C) 2019-2022 The LineageOS 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.
*
* This file is generated by device/gapps/arm64/setup-makefiles.sh
*/
soong_namespace {
}
android_app_import {
name: "PrebuiltGmsCore",
owner: "gapps",
apk: "proprietary/priv-app/PrebuiltGmsCore/PrebuiltGmsCore.apk",
presigned: true,
dex_preopt: {
enabled: false,
},
privileged: true,
}
android_app_import {
name: "MarkupGoogle",
owner: "gapps",
apk: "proprietary/app/MarkupGoogle/MarkupGoogle.apk",
presigned: true,
dex_preopt: {
enabled: false,
},
}
android_app_import {
name: "SetupWizardPrebuilt",
owner: "gapps",
apk: "proprietary/priv-app/SetupWizardPrebuilt/SetupWizardPrebuilt.apk",
overrides: ["Provision"],
presigned: true,
dex_preopt: {
enabled: false,
},
privileged: true,
}
android_app_import {
name: "Velvet",
owner: "gapps",
apk: "proprietary/priv-app/Velvet/Velvet.apk",
presigned: true,
dex_preopt: {
enabled: false,
},
privileged: true,
}

View File

@@ -1,4 +1,4 @@
# Copyright (C) 2017-2019 The LineageOS Project
# Copyright (C) 2017-2022 The LineageOS Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@@ -12,47 +12,10 @@
# See the License for the specific language governing permissions and
# limitations under the License.
# This file is generated by device/gapps//setup-makefiles.sh
# This file is generated by device/gapps/arm64/setup-makefiles.sh
LOCAL_PATH := $(call my-dir)
ifneq ($(filter arm64,$(TARGET_ARCH)),)
include $(CLEAR_VARS)
LOCAL_MODULE := PrebuiltGmsCore
LOCAL_MODULE_OWNER := gapps
LOCAL_SRC_FILES := proprietary/priv-app/PrebuiltGmsCore/PrebuiltGmsCore.apk
LOCAL_CERTIFICATE := PRESIGNED
LOCAL_MODULE_TAGS := optional
LOCAL_MODULE_CLASS := APPS
LOCAL_DEX_PREOPT := false
LOCAL_MODULE_SUFFIX := .apk
LOCAL_PRIVILEGED_MODULE := true
include $(BUILD_PREBUILT)
ifeq ($(TARGET_IS_GROUPER),)
include $(CLEAR_VARS)
LOCAL_MODULE := MarkupGoogle
LOCAL_MODULE_OWNER := gapps
LOCAL_SRC_FILES := proprietary/app/MarkupGoogle/MarkupGoogle.apk
LOCAL_CERTIFICATE := PRESIGNED
LOCAL_MODULE_TAGS := optional
LOCAL_MODULE_CLASS := APPS
LOCAL_DEX_PREOPT := false
LOCAL_MODULE_SUFFIX := .apk
include $(BUILD_PREBUILT)
include $(CLEAR_VARS)
LOCAL_MODULE := Velvet
LOCAL_MODULE_OWNER := gapps
LOCAL_SRC_FILES := proprietary/priv-app/Velvet/Velvet.apk
LOCAL_CERTIFICATE := PRESIGNED
LOCAL_MODULE_TAGS := optional
LOCAL_MODULE_CLASS := APPS
LOCAL_DEX_PREOPT := false
LOCAL_MODULE_SUFFIX := .apk
LOCAL_PRIVILEGED_MODULE := true
include $(BUILD_PREBUILT)
ifeq ($(TARGET_ARCH),arm64)
endif
endif

View File

@@ -1,4 +1,4 @@
# Copyright (C) 2017-2019 The LineageOS Project
# Copyright (C) 2017-2022 The LineageOS Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@@ -12,5 +12,5 @@
# See the License for the specific language governing permissions and
# limitations under the License.
# This file is generated by device/gapps//setup-makefiles.sh
# This file is generated by device/gapps/arm64/setup-makefiles.sh

View File

@@ -1,4 +1,4 @@
# Copyright (C) 2017-2019 The LineageOS Project
# Copyright (C) 2017-2022 The LineageOS Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@@ -12,20 +12,24 @@
# See the License for the specific language governing permissions and
# limitations under the License.
# This file is generated by device/gapps//setup-makefiles.sh
# This file is generated by device/gapps/arm64/setup-makefiles.sh
PRODUCT_SOONG_NAMESPACES += \
vendor/gapps/arm64
PRODUCT_COPY_FILES += \
vendor/gapps/arm64/proprietary/lib/libjni_latinimegoogle.so:system/lib/libjni_latinimegoogle.so \
vendor/gapps/arm64/proprietary/lib64/libjni_latinimegoogle.so:system/lib64/libjni_latinimegoogle.so
vendor/gapps/arm64/proprietary/lib/libjni_latinimegoogle.so:$(TARGET_COPY_OUT_SYSTEM)/lib/libjni_latinimegoogle.so \
vendor/gapps/arm64/proprietary/lib64/libjni_latinimegoogle.so:$(TARGET_COPY_OUT_SYSTEM)/lib64/libjni_latinimegoogle.so
PRODUCT_PACKAGES += \
PrebuiltGmsCore
ifeq ($(TARGET_IS_GROUPER),)
PRODUCT_COPY_FILES += \
vendor/gapps/arm64/proprietary/app/MarkupGoogle/lib/arm64/libsketchology_native.so:system/app/MarkupGoogle/lib/arm64/libsketchology_native.so
vendor/gapps/arm64/proprietary/app/MarkupGoogle/lib/arm64/libsketchology_native.so:$(TARGET_COPY_OUT_SYSTEM)/app/MarkupGoogle/lib/arm64/libsketchology_native.so
PRODUCT_PACKAGES += \
MarkupGoogle \
SetupWizardPrebuilt \
Velvet
endif

View File

@@ -8,8 +8,11 @@
#
DATE=$(date -u +%Y%m%d_%H%M%S)
TOP=$(realpath .)
ANDROIDV=9.0.0
ANDROIDV=10.0.0
SDKV=29
GARCH=$1
CPUARCH=$GARCH
[ ! -z "$2" ] && CPUARCH=$2
OUT=$TOP/out
BUILD=$TOP/build
METAINF=$BUILD/meta
@@ -45,12 +48,17 @@ function create() {
echo "Build directories are now ready" >> $GLOG
echo "Getting prebuilts..."
echo "Copying stuff" >> $GLOG
cp $TOP/toybox-$GARCH $OUT/$GARCH/toybox >> $GLOG
cp -r $PREBUILT/* $OUT/$GARCH/system >> $GLOG
cp -r $COMMON/* $OUT/$GARCH/system >> $GLOG
echo "Generating addon.d script" >> $GLOG
test -d $OUT/$GARCH/system/addon.d || mkdir -p $OUT/$GARCH/system/addon.d
cp -f addond_head $OUT/$GARCH/system/addon.d
cp -f addond_tail $OUT/$GARCH/system/addon.d
echo "Writing build props..."
echo "arch=$CPUARCH" > $OUT/$GARCH/build.prop
echo "version=$SDKV" >> $OUT/$GARCH/build.prop
echo "version_nice=$ANDROIDV" >> $OUT/$GARCH/build.prop
}
function zipit() {

View File

@@ -11,11 +11,11 @@ distclean:
gapps_arm:
@echo "Compiling GApps for arm..."
@bash $(BUILD_GAPPS) arm 2>&1
@bash $(BUILD_GAPPS) arm armv7l 2>&1
gapps_arm64:
@echo "Compiling GApps for arm64..."
@bash $(BUILD_GAPPS) arm64 2>&1
@bash $(BUILD_GAPPS) arm64 aarch64 2>&1
gapps_x86:
@echo "Compiling GApps for x86..."

View File

@@ -3,21 +3,17 @@
OUTFD="/proc/self/fd/$2"
ZIP=$3
exec_util() {
LD_LIBRARY_PATH=$LD_PATH $UTILS $1
}
set_con() {
exec_util "chcon -h u:object_r:"$1":s0 $2"
exec_util "chcon u:object_r:"$1":s0 $2"
chcon -h u:object_r:"$1":s0 $2
chcon u:object_r:"$1":s0 $2
}
set_perm() {
exec_util "chmod $1 $2"
chmod $1 $2
}
set_owner() {
exec_util "chown $1:$2 $3"
chown $1:$2 $3
}
ui_print() {
@@ -25,103 +21,221 @@ ui_print() {
echo "ui_print" > "$OUTFD";
}
getprop2() {
grep -m 1 "^$2=" $1 | cut -d= -f2
}
nice_arch() {
case $1 in
aarch64*|armv8*)
echo "arm64"
;;
arm*)
echo "arm"
;;
*)
echo $1
;;
esac
}
cleanup() {
ui_print "Cleaning up files"
rm -rf $TMP/system
rm -rf $TMP/bin
rm $TMP/toybox
ui_print "Unmounting partitions"
umount -l "$SYSTEM_MNT"
umount -l /product || true
}
error() {
ui_print "$1"
cleanup
exit 1
}
error_no_space() {
error "Not enough space for GApps! Aborting"
}
error_mounting() {
error "Could not mount $1! Aborting"
}
get_block_for_mount_point() {
grep -v "^#" /etc/recovery.fstab | grep "[[:blank:]]$1[[:blank:]]" | tail -n1 | tr -s [:blank:] ' ' | cut -d' ' -f1
}
find_block() {
local name="$1"
local fstab_entry=$(get_block_for_mount_point "/$name")
# P-SAR hacks
[ -z "$fstab_entry" ] && [ "$name" = "system" ] && fstab_entry=$(get_block_for_mount_point "/")
[ -z "$fstab_entry" ] && [ "$name" = "system" ] && fstab_entry=$(get_block_for_mount_point "/system_root")
local dev
if [ "$DYNAMIC_PARTITIONS" = "true" ]; then
if [ -n "$fstab_entry" ]; then
dev="${BLK_PATH}/${fstab_entry}${SLOT_SUFFIX}"
else
dev="${BLK_PATH}/${name}${SLOT_SUFFIX}"
fi
else
if [ -n "$fstab_entry" ]; then
dev="${fstab_entry}${SLOT_SUFFIX}"
else
dev="${BLK_PATH}/${name}${SLOT_SUFFIX}"
fi
fi
if [ -b "$dev" ]; then
echo "$dev"
fi
}
compute_apps_size() {
NEEDED_STORAGE_SYSTEM=$(expr $(du -cs `find -maxdepth 1 -mindepth 1` | tail -n1 | cut -f1) + $STORAGE_BUFFER)
RECLAIMABLE_STORAGE_SYSTEM=$(find . -type f | sed "s|^./|$SYSTEM_OUT/|" | xargs ls -d 2>/dev/null | xargs du -cs PLACEHOLDER 2>/dev/null | tail -n1 | cut -f1)
NEEDED_STORAGE_SYSTEM=$(expr $NEEDED_STORAGE_SYSTEM - $RECLAIMABLE_STORAGE_SYSTEM)
}
remove_big_optional_apps() {
ui_print "Low resource device detected, removing large extras"
rm -rf app/MarkupGoogle
rm -rf priv-app/AndroidMigratePrebuilt
rm -rf priv-app/SetupWizardPrebuilt
rm -rf priv-app/Velvet
}
ui_print "**********************"
ui_print "MindTheGapps installer"
ui_print "**********************"
SYSTEMASROOT=`getprop ro.build.system_root_image`
ui_print "Extracting files"
TMP=/tmp
cd "$TMP"
unzip -o "$ZIP"
rm -rf META-INF
ui_print "Mounting system partition"
# Check for arch. We need to do this before extracting our toybox, since that might be
# compiled for a different architecture. Just hope that all environments have at least
# a proper `grep` and `uname`.
GAPPS_ARCH=$(getprop2 $TMP/build.prop arch)
CPU_ARCH=$(uname -m)
if [ $GAPPS_ARCH != $CPU_ARCH ]; then
error "This package is built for $(nice_arch $GAPPS_ARCH) but your device is $(nice_arch $CPU_ARCH)! Aborting"
fi
ui_print "Setting up environment"
TOYBOX="${TMP}/toybox"
chmod +x "$TOYBOX"
TOYS_PATH="${TMP}/bin"
rm -rf "$TOYS_PATH";
$TOYBOX install -d "$TOYS_PATH"
for toy in $($TOYBOX); do
$TOYBOX ln -sf "$TOYBOX" "${TOYS_PATH}/${toy}"
done
PATH="${TOYS_PATH}:${PATH}"
ui_print "Mounting partitions"
# Ensure system is unmounted so mounting succeeds
umount /system || true
umount /system || umount /mnt/system || true
umount /product || true
if [ "$SYSTEMASROOT" == "true" ]; then
CURRENTSLOT=`getprop ro.boot.slot_suffix`
if [ ! -z "$CURRENTSLOT" ]; then
# Find partitions
DYNAMIC_PARTITIONS=`getprop ro.boot.dynamic_partitions`
if [ "$DYNAMIC_PARTITIONS" = "true" ]; then
BLK_PATH="/dev/block/mapper"
else
BLK_PATH=/dev/block/bootdevice/by-name
fi
CURRENTSLOT=`getprop ro.boot.slot_suffix`
if [ ! -z "$CURRENTSLOT" ]; then
if [ "$CURRENTSLOT" == "_a" ]; then
TARGETSYSTEM=/dev/block/bootdevice/by-name/system_a
SLOT_SUFFIX="_a"
else
TARGETSYSTEM=/dev/block/bootdevice/by-name/system_b
fi
else
TARGETSYSTEM=/dev/block/bootdevice/by-name/system
fi
mkdir -p /system_root
if mount -o rw $TARGETSYSTEM /system_root && mount -o bind /system_root/system /system; then
ui_print "/system mounted"
else
ui_print "Could not mount /system! Aborting"
exit 1
SLOT_SUFFIX="_b"
fi
fi
SYSTEM_BLOCK=$(find_block "system")
PRODUCT_BLOCK=$(find_block "product")
# Disable rw protection on dynamic partitions
if [ "$DYNAMIC_PARTITIONS" = "true" ]; then
blockdev --setrw "$SYSTEM_BLOCK"
fi
# Mount and define SYSTEM_OUT
SYSTEM_MNT=/mnt/system
mkdir -p "$SYSTEM_MNT" || true
if mount -o rw "$SYSTEM_BLOCK" "$SYSTEM_MNT"; then
ui_print "$SYSTEM_MNT mounted"
else
if mount /system; then
ui_print "/system mounted"
error_mounting "$SYSTEM_MNT"
fi
SYSTEM_OUT="${SYSTEM_MNT}/system"
# Compare sdk version
GAPPS_VERSION=$(getprop2 $TMP/build.prop version)
ANDROID_VERSION=$(getprop2 $SYSTEM_OUT/build.prop ro.build.version.sdk)
if [ "$GAPPS_VERSION" != "$ANDROID_VERSION" ]; then
gapps_version_nice=$(getprop2 $TMP/build.prop version_nice)
android_version_nice=$(getprop2 $SYSTEM_OUT/build.prop ro.build.version.release)
error "This package is for Android $gapps_version_nice (SDK $GAPPS_VERSION) but your system is Android $android_version_nice (SDK $ANDROID_VERSION)! Aborting"
fi
# Ignore product block device in case it's a symlink
# This is common on devices where maintainers have chosen not to use
# real partitions because of their size being too small to be useful
if [ -L "${SYSTEM_MNT}/product" ]; then
PRODUCT_BLOCK=""
fi
if [ -n "$PRODUCT_BLOCK" ]; then
mkdir /product || true
if mount -o rw "$PRODUCT_BLOCK" /product; then
ui_print "/product mounted"
else
ui_print "Could not mount /system! Aborting"
exit 1
error_mounting "/product"
fi
fi
if [ -f /system/bin/toybox ]; then
UTILS=/system/bin/toybox
LD_PATH=/system/lib
else
ui_print "Could not find /system/bin/toybox! Aborting"
exit 1
fi
DIRS="addon.d app priv-app framework etc lib"
if [ -d /system/lib64 ]; then
DIRS="$DIRS lib64"
LD_PATH=/system/lib64
fi
LOWMEM=1572864
MEM=`grep MemTotal /proc/meminfo | awk '{ print $2 }'`
STORAGE=`exec_util "df /system" | grep -v Filesystem | awk '{ print $4 }'`
# Compute storage requirements
SYSTEM_STORAGE=`df $SYSTEM_MNT | tail -1 | tr -s ' ' | cut -d ' ' -f4`
STORAGE_BUFFER=10240
ui_print "Extracting files"
cd /tmp
unzip -o "$ZIP"
exec_util "rm -rf META-INF"
cd system
compute_apps_size
NEEDED_STORAGE=`expr $(exec_util "du -s ." | awk '{ print $1 }') + $STORAGE_BUFFER`
if [ "$MEM" -lt "$LOWMEM" ] || [ "$STORAGE" -lt "$NEEDED_STORAGE" ]; then
ui_print "Low resource device detected, removing large extras"
exec_util "rm -rf app/MarkupGoogle"
exec_util "rm -rf priv-app/AndroidMigratePrebuilt"
exec_util "rm -rf priv-app/SetupWizard"
exec_util "rm -rf priv-app/Velvet"
NEEDED_STORAGE=`expr $(exec_util "du -s ." | awk '{ print $1 }') + $STORAGE_BUFFER`
if [ "$STORAGE" -lt "$NEEDED_STORAGE" ]; then
ui_print "Not enough space for GApps! Aborting"
cd ..
exec_util "rm -rf system"
exit 1
if [ "$SYSTEM_STORAGE" -lt "$NEEDED_STORAGE_SYSTEM" ]; then
remove_big_optional_apps
compute_apps_size
if [ "$SYSTEM_STORAGE" -lt "$NEEDED_STORAGE_SYSTEM" ]; then
error_no_space
fi
fi
ui_print "Generating addon.d file"
cat addon.d/addond_head > addon.d/30-gapps.sh
for f in `exec_util "find . -type f"`; do
for f in `find . ! -path "./addon.d/*" -type f`; do
line=$(echo "$f" | sed 's/\.\///')
echo "$line" >> addon.d/30-gapps.sh
done
cat addon.d/addond_tail >> addon.d/30-gapps.sh
rm addon.d/addond_head addon.d/addond_tail
ui_print "Preparing files for copying"
for dirs in $DIRS; do
set_perm 0755 $dir
for d in `exec_util "find ./$dir -type d"`; do
for d in `find . -mindepth 1 -type d -type d`; do
set_perm 0755 $d
set_owner root root $d
done
for f in `exec_util "find ./$dir -type f"`; do
done
for f in `find . -type f`; do
type=$(echo "$f" | sed 's/.*\.//')
if [ "$type" == "sh" ] || [ "$type" == "$f" ]; then
set_perm 0755 $f
@@ -130,24 +244,15 @@ for dirs in $DIRS; do
fi
set_owner root root $f
set_con system_file $f
done
done
ui_print "Copying files"
exec_util "cp --preserve=a -r ./* /system/"
if [ -e priv-app/SetupWizard ] ; then
exec_util "rm -rf /system/priv-app/Provision"
cp --preserve=a -r ./* "${SYSTEM_OUT}/"
if [ -e priv-app/SetupWizardPrebuilt ] ; then
rm -rf "${SYSTEM_OUT}/product/priv-app/Provision"
fi
ui_print "Cleaning up files"
cd ../
exec_util "rm -rf system"
ui_print "Unmounting system partition"
if umount -l /system; then
if [ "$SYSTEMASROOT" == "true" ]; then
umount -l /system_root
fi
fi
cleanup
ui_print "Done!"
exit 0

118
common/Android.bp Normal file
View File

@@ -0,0 +1,118 @@
/**
* Copyright (C) 2019-2022 The LineageOS 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.
*
* This file is generated by device/gapps/common/setup-makefiles.sh
*/
soong_namespace {
}
android_app_import {
name: "GoogleCalendarSyncAdapter",
owner: "gapps",
apk: "proprietary/app/GoogleCalendarSyncAdapter/GoogleCalendarSyncAdapter.apk",
presigned: true,
dex_preopt: {
enabled: false,
},
}
android_app_import {
name: "GoogleContactsSyncAdapter",
owner: "gapps",
apk: "proprietary/app/GoogleContactsSyncAdapter/GoogleContactsSyncAdapter.apk",
presigned: true,
dex_preopt: {
enabled: false,
},
}
android_app_import {
name: "PrebuiltExchange3Google",
owner: "gapps",
apk: "proprietary/app/PrebuiltExchange3Google/PrebuiltExchange3Google.apk",
presigned: true,
dex_preopt: {
enabled: false,
},
}
android_app_import {
name: "GoogleFeedback",
owner: "gapps",
apk: "proprietary/priv-app/GoogleFeedback/GoogleFeedback.apk",
presigned: true,
dex_preopt: {
enabled: false,
},
privileged: true,
}
android_app_import {
name: "GooglePartnerSetup",
owner: "gapps",
apk: "proprietary/priv-app/GooglePartnerSetup/GooglePartnerSetup.apk",
presigned: true,
dex_preopt: {
enabled: false,
},
privileged: true,
}
android_app_import {
name: "GoogleServicesFramework",
owner: "gapps",
apk: "proprietary/priv-app/GoogleServicesFramework/GoogleServicesFramework.apk",
presigned: true,
dex_preopt: {
enabled: false,
},
privileged: true,
}
android_app_import {
name: "Phonesky",
owner: "gapps",
apk: "proprietary/priv-app/Phonesky/Phonesky.apk",
presigned: true,
dex_preopt: {
enabled: false,
},
privileged: true,
}
dex_import {
name: "com.google.android.dialer.support",
owner: "gapps",
jars: ["proprietary/framework/com.google.android.dialer.support.jar"],
}
dex_import {
name: "com.google.android.maps",
owner: "gapps",
jars: ["proprietary/framework/com.google.android.maps.jar"],
}
android_app_import {
name: "AndroidMigratePrebuilt",
owner: "gapps",
apk: "proprietary/priv-app/AndroidMigratePrebuilt/AndroidMigratePrebuilt.apk",
presigned: true,
dex_preopt: {
enabled: false,
},
privileged: true,
}

View File

@@ -1,4 +1,4 @@
# Copyright (C) 2017-2019 The LineageOS Project
# Copyright (C) 2017-2022 The LineageOS Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@@ -12,138 +12,10 @@
# See the License for the specific language governing permissions and
# limitations under the License.
# This file is generated by device/gapps//setup-makefiles.sh
# This file is generated by device/gapps/common/setup-makefiles.sh
LOCAL_PATH := $(call my-dir)
ifneq ($(filter arm arm64 x86,$(TARGET_ARCH)),)
include $(CLEAR_VARS)
LOCAL_MODULE := GoogleCalendarSyncAdapter
LOCAL_MODULE_OWNER := gapps
LOCAL_SRC_FILES := proprietary/app/GoogleCalendarSyncAdapter/GoogleCalendarSyncAdapter.apk
LOCAL_CERTIFICATE := PRESIGNED
LOCAL_MODULE_TAGS := optional
LOCAL_MODULE_CLASS := APPS
LOCAL_DEX_PREOPT := false
LOCAL_MODULE_SUFFIX := .apk
include $(BUILD_PREBUILT)
include $(CLEAR_VARS)
LOCAL_MODULE := GoogleContactsSyncAdapter
LOCAL_MODULE_OWNER := gapps
LOCAL_SRC_FILES := proprietary/app/GoogleContactsSyncAdapter/GoogleContactsSyncAdapter.apk
LOCAL_CERTIFICATE := PRESIGNED
LOCAL_MODULE_TAGS := optional
LOCAL_MODULE_CLASS := APPS
LOCAL_DEX_PREOPT := false
LOCAL_MODULE_SUFFIX := .apk
include $(BUILD_PREBUILT)
include $(CLEAR_VARS)
LOCAL_MODULE := PrebuiltExchange3Google
LOCAL_MODULE_OWNER := gapps
LOCAL_SRC_FILES := proprietary/app/PrebuiltExchange3Google/PrebuiltExchange3Google.apk
LOCAL_CERTIFICATE := PRESIGNED
LOCAL_MODULE_TAGS := optional
LOCAL_MODULE_CLASS := APPS
LOCAL_DEX_PREOPT := false
LOCAL_MODULE_SUFFIX := .apk
include $(BUILD_PREBUILT)
include $(CLEAR_VARS)
LOCAL_MODULE := GoogleFeedback
LOCAL_MODULE_OWNER := gapps
LOCAL_SRC_FILES := proprietary/priv-app/GoogleFeedback/GoogleFeedback.apk
LOCAL_CERTIFICATE := PRESIGNED
LOCAL_MODULE_TAGS := optional
LOCAL_MODULE_CLASS := APPS
LOCAL_DEX_PREOPT := false
LOCAL_MODULE_SUFFIX := .apk
LOCAL_PRIVILEGED_MODULE := true
include $(BUILD_PREBUILT)
include $(CLEAR_VARS)
LOCAL_MODULE := GooglePartnerSetup
LOCAL_MODULE_OWNER := gapps
LOCAL_SRC_FILES := proprietary/priv-app/GooglePartnerSetup/GooglePartnerSetup.apk
LOCAL_CERTIFICATE := PRESIGNED
LOCAL_MODULE_TAGS := optional
LOCAL_MODULE_CLASS := APPS
LOCAL_DEX_PREOPT := false
LOCAL_MODULE_SUFFIX := .apk
LOCAL_PRIVILEGED_MODULE := true
include $(BUILD_PREBUILT)
include $(CLEAR_VARS)
LOCAL_MODULE := GoogleServicesFramework
LOCAL_MODULE_OWNER := gapps
LOCAL_SRC_FILES := proprietary/priv-app/GoogleServicesFramework/GoogleServicesFramework.apk
LOCAL_CERTIFICATE := PRESIGNED
LOCAL_MODULE_TAGS := optional
LOCAL_MODULE_CLASS := APPS
LOCAL_DEX_PREOPT := false
LOCAL_MODULE_SUFFIX := .apk
LOCAL_PRIVILEGED_MODULE := true
include $(BUILD_PREBUILT)
include $(CLEAR_VARS)
LOCAL_MODULE := Phonesky
LOCAL_MODULE_OWNER := gapps
LOCAL_SRC_FILES := proprietary/priv-app/Phonesky/Phonesky.apk
LOCAL_CERTIFICATE := PRESIGNED
LOCAL_MODULE_TAGS := optional
LOCAL_MODULE_CLASS := APPS
LOCAL_DEX_PREOPT := false
LOCAL_MODULE_SUFFIX := .apk
LOCAL_PRIVILEGED_MODULE := true
include $(BUILD_PREBUILT)
include $(CLEAR_VARS)
LOCAL_MODULE := com.google.android.dialer.support
LOCAL_MODULE_OWNER := gapps
LOCAL_SRC_FILES := proprietary/framework/com.google.android.dialer.support.jar
LOCAL_CERTIFICATE := PRESIGNED
LOCAL_MODULE_TAGS := optional
LOCAL_MODULE_CLASS := JAVA_LIBRARIES
LOCAL_MODULE_SUFFIX := .jar
include $(BUILD_PREBUILT)
include $(CLEAR_VARS)
LOCAL_MODULE := com.google.android.maps
LOCAL_MODULE_OWNER := gapps
LOCAL_SRC_FILES := proprietary/framework/com.google.android.maps.jar
LOCAL_CERTIFICATE := PRESIGNED
LOCAL_MODULE_TAGS := optional
LOCAL_MODULE_CLASS := JAVA_LIBRARIES
LOCAL_MODULE_SUFFIX := .jar
include $(BUILD_PREBUILT)
ifeq ($(TARGET_IS_GROUPER),)
include $(CLEAR_VARS)
LOCAL_MODULE := AndroidMigratePrebuilt
LOCAL_MODULE_OWNER := gapps
LOCAL_SRC_FILES := proprietary/priv-app/AndroidMigratePrebuilt/AndroidMigratePrebuilt.apk
LOCAL_CERTIFICATE := PRESIGNED
LOCAL_MODULE_TAGS := optional
LOCAL_MODULE_CLASS := APPS
LOCAL_DEX_PREOPT := false
LOCAL_MODULE_SUFFIX := .apk
LOCAL_PRIVILEGED_MODULE := true
include $(BUILD_PREBUILT)
include $(CLEAR_VARS)
LOCAL_MODULE := SetupWizardPrebuilt
LOCAL_MODULE_OWNER := gapps
LOCAL_SRC_FILES := proprietary/priv-app/SetupWizardPrebuilt/SetupWizardPrebuilt.apk
LOCAL_OVERRIDES_PACKAGES := Provision
LOCAL_CERTIFICATE := PRESIGNED
LOCAL_MODULE_TAGS := optional
LOCAL_MODULE_CLASS := APPS
LOCAL_DEX_PREOPT := false
LOCAL_MODULE_SUFFIX := .apk
LOCAL_PRIVILEGED_MODULE := true
include $(BUILD_PREBUILT)
endif
endif

View File

@@ -1,4 +1,4 @@
# Copyright (C) 2017-2019 The LineageOS Project
# Copyright (C) 2017-2022 The LineageOS Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@@ -12,5 +12,5 @@
# See the License for the specific language governing permissions and
# limitations under the License.
# This file is generated by device/gapps//setup-makefiles.sh
# This file is generated by device/gapps/common/setup-makefiles.sh

View File

@@ -1,4 +1,4 @@
# Copyright (C) 2017-2019 The LineageOS Project
# Copyright (C) 2017-2022 The LineageOS Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@@ -12,17 +12,20 @@
# See the License for the specific language governing permissions and
# limitations under the License.
# This file is generated by device/gapps//setup-makefiles.sh
# This file is generated by device/gapps/common/setup-makefiles.sh
PRODUCT_SOONG_NAMESPACES += \
vendor/gapps/common
PRODUCT_COPY_FILES += \
vendor/gapps/common/proprietary/etc/permissions/com.google.android.dialer.support.xml:system/etc/permissions/com.google.android.dialer.support.xml \
vendor/gapps/common/proprietary/etc/permissions/com.google.android.maps.xml:system/etc/permissions/com.google.android.maps.xml \
vendor/gapps/common/proprietary/etc/permissions/privapp-permissions-google-p.xml:system/etc/permissions/privapp-permissions-google-p.xml \
vendor/gapps/common/proprietary/etc/permissions/privapp-permissions-google-ps.xml:system/etc/permissions/privapp-permissions-google-ps.xml \
vendor/gapps/common/proprietary/etc/permissions/privapp-permissions-google.xml:system/etc/permissions/privapp-permissions-google.xml \
vendor/gapps/common/proprietary/etc/sysconfig/google-hiddenapi-package-whitelist.xml:system/etc/sysconfig/google-hiddenapi-package-whitelist.xml \
vendor/gapps/common/proprietary/etc/sysconfig/google.xml:system/etc/sysconfig/google.xml \
vendor/gapps/common/proprietary/etc/sysconfig/google_build.xml:system/etc/sysconfig/google_build.xml
vendor/gapps/common/proprietary/etc/permissions/com.google.android.dialer.support.xml:$(TARGET_COPY_OUT_SYSTEM)/etc/permissions/com.google.android.dialer.support.xml \
vendor/gapps/common/proprietary/etc/permissions/com.google.android.maps.xml:$(TARGET_COPY_OUT_SYSTEM)/etc/permissions/com.google.android.maps.xml \
vendor/gapps/common/proprietary/etc/permissions/privapp-permissions-google-p.xml:$(TARGET_COPY_OUT_SYSTEM)/etc/permissions/privapp-permissions-google-p.xml \
vendor/gapps/common/proprietary/etc/permissions/privapp-permissions-google-ps.xml:$(TARGET_COPY_OUT_SYSTEM)/etc/permissions/privapp-permissions-google-ps.xml \
vendor/gapps/common/proprietary/etc/permissions/privapp-permissions-google.xml:$(TARGET_COPY_OUT_SYSTEM)/etc/permissions/privapp-permissions-google.xml \
vendor/gapps/common/proprietary/etc/sysconfig/google-hiddenapi-package-whitelist.xml:$(TARGET_COPY_OUT_SYSTEM)/etc/sysconfig/google-hiddenapi-package-whitelist.xml \
vendor/gapps/common/proprietary/etc/sysconfig/google.xml:$(TARGET_COPY_OUT_SYSTEM)/etc/sysconfig/google.xml \
vendor/gapps/common/proprietary/etc/sysconfig/google_build.xml:$(TARGET_COPY_OUT_SYSTEM)/etc/sysconfig/google_build.xml
PRODUCT_PACKAGES += \
GoogleCalendarSyncAdapter \
@@ -37,6 +40,5 @@ PRODUCT_PACKAGES += \
ifeq ($(TARGET_IS_GROUPER),)
PRODUCT_PACKAGES += \
AndroidMigratePrebuilt \
SetupWizardPrebuilt
AndroidMigratePrebuilt
endif

View File

@@ -1,3 +1,4 @@
-app/MarkupGoogle/MarkupGoogle.apk;PRESIGNED|012bf4c0622d9d0aa4361a62e7ce07a1eb056b8f
-priv-app/SetupWizardPrebuilt/SetupWizardPrebuilt.apk;PRESIGNED|3656ccfa12fd73e6f130e947e4fd1699c9e5be12
-priv-app/Velvet/Velvet.apk;PRESIGNED|1bd57d7a32d77ec007ca7ad8032cca8d9038c555
app/MarkupGoogle/lib/arm/libsketchology_native.so|479720ba394500786e5b5a39deb09a93d5bce9db

View File

@@ -1,3 +1,4 @@
-app/MarkupGoogle/MarkupGoogle.apk;PRESIGNED|012bf4c0622d9d0aa4361a62e7ce07a1eb056b8f
-priv-app/SetupWizardPrebuilt/SetupWizardPrebuilt.apk;PRESIGNED|d7756e156c070b0acabe76c0df74229d5a25ab29
-priv-app/Velvet/Velvet.apk;PRESIGNED|314043242c4253b61d9d4fcf656489d3fa0265be
app/MarkupGoogle/lib/arm64/libsketchology_native.so|71898873b8d07af8f0589ac6faf64770300b2e21

View File

@@ -1,2 +1 @@
-priv-app/AndroidMigratePrebuilt/AndroidMigratePrebuilt.apk;PRESIGNED|eb965010832814a84afc32db11bf1c89586b78bc
-priv-app/SetupWizardPrebuilt/SetupWizardPrebuilt.apk;PRESIGNED

View File

@@ -1 +1,2 @@
-priv-app/SetupWizardPrebuilt/SetupWizardPrebuilt.apk;PRESIGNED|6032fa4174bf17062099c3dded3a2f22c9c51bf3
-priv-app/Velvet/Velvet.apk;PRESIGNED|cd13e9ea9d5b3337b8a22b9ea7939132458cbced

View File

@@ -20,7 +20,7 @@ set -e
export INITIAL_COPYRIGHT_YEAR=2017
export GAPPS_COMMON=common
export DEVICE_COMMON=common
export VENDOR=gapps
# Load extract_utils and do some sanity checks
@@ -37,7 +37,7 @@ fi
. "$HELPER"
# Initialize the helper for common gapps
setup_vendor "$GAPPS_COMMON" "$VENDOR" "$LINEAGE_ROOT" true
setup_vendor "$DEVICE_COMMON" "$VENDOR" "$LINEAGE_ROOT" true
# Copyright headers
write_headers "arm arm64 x86"
@@ -47,40 +47,36 @@ write_makefiles "$MY_DIR"/proprietary-files-common.txt
# Gapps that are too large for grouper
echo "ifeq (\$(TARGET_IS_GROUPER),)" >> "$PRODUCTMK"
echo "ifeq (\$(TARGET_IS_GROUPER),)" >> "$ANDROIDMK"
write_makefiles "$MY_DIR"/proprietary-files-common-nongrouper.txt
echo "endif" >> "$PRODUCTMK"
echo "endif" >> "$ANDROIDMK"
sed -i 's/TARGET_DEVICE/TARGET_ARCH/g' "$ANDROIDMK"
# Make Google SuW override Provision
sed -i 's/\(SetupWizardPrebuilt.apk\)/\1\nLOCAL_OVERRIDES_PACKAGES := Provision/' "$ANDROIDMK"
# We are done with common
write_footers
for TARGET in arm arm64 x86; do
for DEVICE in arm arm64 x86; do
# Reinitialize the helper for target gapps
setup_vendor "$TARGET" "$VENDOR" "$LINEAGE_ROOT" true
setup_vendor "$DEVICE" "$VENDOR" "$LINEAGE_ROOT"
# Copyright headers and guards
write_headers "$TARGET"
write_headers "$DEVICE"
write_makefiles "$MY_DIR"/proprietary-files-$TARGET.txt
write_makefiles "$MY_DIR"/proprietary-files-$DEVICE.txt
# Gapps that are too large for grouper
echo "ifeq (\$(TARGET_IS_GROUPER),)" >> "$PRODUCTMK"
echo "ifeq (\$(TARGET_IS_GROUPER),)" >> "$ANDROIDMK"
write_makefiles "$MY_DIR"/proprietary-files-$TARGET-nongrouper.txt
write_makefiles "$MY_DIR"/proprietary-files-$DEVICE-nongrouper.txt
echo "endif" >> "$PRODUCTMK"
echo "endif" >> "$ANDROIDMK"
printf '\n%s\n' "\$(call inherit-product, vendor/gapps/common/common-vendor.mk)" >> "$PRODUCTMK"
sed -i 's/TARGET_DEVICE/TARGET_ARCH/g' "$ANDROIDMK"
# Make Google SuW override Provision
sed -i 's/\(SetupWizardPrebuilt.apk",\)/\1\n\toverrides: ["Provision"],/' "$ANDROIDBP"
# We are done with target
write_footers

BIN
toybox-arm Normal file

Binary file not shown.

BIN
toybox-arm64 Normal file

Binary file not shown.

BIN
toybox-x86 Normal file

Binary file not shown.

55
x86/Android.bp Normal file
View File

@@ -0,0 +1,55 @@
/**
* Copyright (C) 2019-2022 The LineageOS 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.
*
* This file is generated by device/gapps/x86/setup-makefiles.sh
*/
soong_namespace {
}
android_app_import {
name: "PrebuiltGmsCore",
owner: "gapps",
apk: "proprietary/priv-app/PrebuiltGmsCore/PrebuiltGmsCore.apk",
presigned: true,
dex_preopt: {
enabled: false,
},
privileged: true,
}
android_app_import {
name: "SetupWizardPrebuilt",
owner: "gapps",
apk: "proprietary/priv-app/SetupWizardPrebuilt/SetupWizardPrebuilt.apk",
overrides: ["Provision"],
presigned: true,
dex_preopt: {
enabled: false,
},
privileged: true,
}
android_app_import {
name: "Velvet",
owner: "gapps",
apk: "proprietary/priv-app/Velvet/Velvet.apk",
presigned: true,
dex_preopt: {
enabled: false,
},
privileged: true,
}

View File

@@ -1,4 +1,4 @@
# Copyright (C) 2017-2019 The LineageOS Project
# Copyright (C) 2017-2022 The LineageOS Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@@ -12,36 +12,10 @@
# See the License for the specific language governing permissions and
# limitations under the License.
# This file is generated by device/gapps//setup-makefiles.sh
# This file is generated by device/gapps/x86/setup-makefiles.sh
LOCAL_PATH := $(call my-dir)
ifneq ($(filter x86,$(TARGET_ARCH)),)
include $(CLEAR_VARS)
LOCAL_MODULE := PrebuiltGmsCore
LOCAL_MODULE_OWNER := gapps
LOCAL_SRC_FILES := proprietary/priv-app/PrebuiltGmsCore/PrebuiltGmsCore.apk
LOCAL_CERTIFICATE := PRESIGNED
LOCAL_MODULE_TAGS := optional
LOCAL_MODULE_CLASS := APPS
LOCAL_DEX_PREOPT := false
LOCAL_MODULE_SUFFIX := .apk
LOCAL_PRIVILEGED_MODULE := true
include $(BUILD_PREBUILT)
ifeq ($(TARGET_IS_GROUPER),)
include $(CLEAR_VARS)
LOCAL_MODULE := Velvet
LOCAL_MODULE_OWNER := gapps
LOCAL_SRC_FILES := proprietary/priv-app/Velvet/Velvet.apk
LOCAL_CERTIFICATE := PRESIGNED
LOCAL_MODULE_TAGS := optional
LOCAL_MODULE_CLASS := APPS
LOCAL_DEX_PREOPT := false
LOCAL_MODULE_SUFFIX := .apk
LOCAL_PRIVILEGED_MODULE := true
include $(BUILD_PREBUILT)
ifeq ($(TARGET_ARCH),x86)
endif
endif

View File

@@ -1,4 +1,4 @@
# Copyright (C) 2017-2019 The LineageOS Project
# Copyright (C) 2017-2022 The LineageOS Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@@ -12,5 +12,5 @@
# See the License for the specific language governing permissions and
# limitations under the License.
# This file is generated by device/gapps//setup-makefiles.sh
# This file is generated by device/gapps/x86/setup-makefiles.sh

View File

@@ -1,4 +1,4 @@
# Copyright (C) 2017-2019 The LineageOS Project
# Copyright (C) 2017-2022 The LineageOS Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@@ -12,16 +12,20 @@
# See the License for the specific language governing permissions and
# limitations under the License.
# This file is generated by device/gapps//setup-makefiles.sh
# This file is generated by device/gapps/x86/setup-makefiles.sh
PRODUCT_SOONG_NAMESPACES += \
vendor/gapps/x86
PRODUCT_COPY_FILES += \
vendor/gapps/x86/proprietary/lib/libjni_latinimegoogle.so:system/lib/libjni_latinimegoogle.so
vendor/gapps/x86/proprietary/lib/libjni_latinimegoogle.so:$(TARGET_COPY_OUT_SYSTEM)/lib/libjni_latinimegoogle.so
PRODUCT_PACKAGES += \
PrebuiltGmsCore
ifeq ($(TARGET_IS_GROUPER),)
PRODUCT_PACKAGES += \
SetupWizardPrebuilt \
Velvet
endif