You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
147 lines
4.6 KiB
147 lines
4.6 KiB
#!/bin/bash
|
|
|
|
# exit script immediately if a command fails
|
|
set -e
|
|
|
|
|
|
ANDROOT=$PWD
|
|
RESOLVED_REPO_PATH="$ANDROOT/$(dirname $(readlink $0))"
|
|
PATCHES_PATH=$RESOLVED_REPO_PATH/patches
|
|
|
|
pushd () {
|
|
command pushd "$@" > /dev/null
|
|
}
|
|
|
|
popd () {
|
|
command popd "$@" > /dev/null
|
|
}
|
|
|
|
commit_exists() {
|
|
_sha1=$1
|
|
git rev-parse --quiet --verify $_sha1^{commit}
|
|
}
|
|
|
|
apply_commit() {
|
|
_commit=$1
|
|
if commit_exists $_commit
|
|
then
|
|
git cherry-pick $_commit
|
|
else
|
|
git fetch $LINK $_commit && git cherry-pick $_commit
|
|
fi
|
|
}
|
|
|
|
apply_gerrit_cl_commit() {
|
|
_cl=$1
|
|
_commit=$2
|
|
if commit_exists $_commit
|
|
then
|
|
git cherry-pick $_commit
|
|
else
|
|
git fetch $LINK $_cl && git cherry-pick FETCH_HEAD
|
|
fi
|
|
}
|
|
|
|
apply_pull_commit() {
|
|
_pull=$1
|
|
_commit=$2
|
|
if commit_exists $_commit
|
|
then
|
|
git cherry-pick $_commit
|
|
else
|
|
git fetch $LINK pull/$_pull/head && git cherry-pick $_commit
|
|
fi
|
|
}
|
|
|
|
do_if_online() {
|
|
if [[ ! $OFFLINE = true ]]
|
|
then
|
|
$@
|
|
fi
|
|
}
|
|
|
|
echo ""
|
|
echo " ████████╗██████╗ ███████╗██████╗ ██╗ ███████╗"
|
|
echo " ╚══██╔══╝██╔══██╗██╔════╝██╔══██╗██║ ██╔════╝"
|
|
echo " ██║ ██████╔╝█████╗ ██████╔╝██║ █████╗"
|
|
echo " ██║ ██╔══██╗██╔══╝ ██╔══██╗██║ ██╔══╝"
|
|
echo " ██║ ██║ ██║███████╗██████╔╝███████╗███████╗"
|
|
echo " ╚═╝ ╚═╝ ╚═╝╚══════╝╚═════╝ ╚══════╝╚══════╝"
|
|
echo ""
|
|
echo " applying treble patches..."
|
|
echo ""
|
|
|
|
pushd $ANDROOT/kernel/sony/msm-4.9/kernel
|
|
# dtsi: tone: conjure oem into /vendor
|
|
git am < $PATCHES_PATH/dtsi-tone-conjure-oem-into-vendor.patch
|
|
# dtsi: loire: conjure oem into /vendor
|
|
git am < $PATCHES_PATH/dtsi-loire-conjure-oem-into-vendor.patch
|
|
popd
|
|
|
|
# TODO
|
|
#pushd $ANDROOT/kernel/sony/msm-4.14/kernel
|
|
## dtsi: tone: conjure oem into /vendor
|
|
#git am < $PATCHES_PATH/dtsi-tone-conjure-oem-into-vendor.patch
|
|
## dtsi: loire: conjure oem into /vendor
|
|
#git am < $PATCHES_PATH/dtsi-loire-conjure-oem-into-vendor.patch
|
|
#popd
|
|
|
|
pushd $ANDROOT/build/make
|
|
LINK="https://android.googlesource.com/platform/build"
|
|
# releasetools: Skip adding compatiblity.zip
|
|
git am < $PATCHES_PATH/build-releasetools-skip-compatiblity-zip.patch
|
|
# HACK: Allow excluding system from ota package
|
|
#git am < $PATCHES_PATH/build-releasetools-allow-no-system-ota.patch
|
|
apply_gerrit_cl_commit refs/changes/07/1240407/1 2cc601ecc90deaa5f0ccdeb948cad373c44a285e
|
|
popd
|
|
|
|
pushd $ANDROOT/device/sony/common
|
|
#LINK="https://git.ix5.org/felix/device-sony-common"
|
|
#(git remote --verbose | grep -q $LINK) || git remote add ix5 $LINK
|
|
#do_if_online git fetch ix5
|
|
|
|
# TODO: Unused as of now
|
|
# Revert: Switch selinux to enforcing
|
|
# (needed because there might be problems with misbehaving GSI sepolicies)
|
|
#git revert --no-edit selinux-enforcing-temp-tag
|
|
popd
|
|
|
|
pushd $ANDROOT/system/core
|
|
# init: Always allow permissive
|
|
# Horrible workaround to get permissive SELinux in user builds
|
|
git am < $PATCHES_PATH/system-core-always-allow-permissive.patch
|
|
popd
|
|
|
|
|
|
# because "set -e" is used above, when we get to this point, we know
|
|
# all patches were applied successfully.
|
|
echo ""
|
|
echo " ████████╗██████╗ ███████╗██████╗ ██╗ ███████╗"
|
|
echo " ╚══██╔══╝██╔══██╗██╔════╝██╔══██╗██║ ██╔════╝"
|
|
echo " ██║ ██████╔╝█████╗ ██████╔╝██║ █████╗"
|
|
echo " ██║ ██╔══██╗██╔══╝ ██╔══██╗██║ ██╔══╝"
|
|
echo " ██║ ██║ ██║███████╗██████╔╝███████╗███████╗"
|
|
echo " ╚═╝ ╚═╝ ╚═╝╚══════╝╚═════╝ ╚══════╝╚══════╝"
|
|
echo ""
|
|
echo " all treble patches applied successfully!"
|
|
echo ""
|
|
|
|
|
|
echo ""
|
|
echo ""
|
|
echo ""
|
|
echo ""
|
|
echo ""
|
|
echo ""
|
|
echo ""
|
|
echo ""
|
|
echo " DO NOT FORGET TO INCLUDE device/sony/customization!!!"
|
|
echo ""
|
|
echo " ELSE YOUR DEVICE WILL NOT BOOT!!!!"
|
|
echo ""
|
|
echo ""
|
|
echo " ALSO COPY THE ODM FILES!!!!"
|
|
echo ""
|
|
|
|
set +e
|