Compare commits
9
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
eabe405e91 | ||
|
|
246520de0b | ||
|
|
5ecf530ffb | ||
|
|
de01a6f9a1 | ||
|
|
470e8fae7d | ||
|
|
4a1518f08e | ||
|
|
6a343a619d | ||
|
|
a2fed94d14 | ||
|
|
c981584ef2 |
@@ -22,7 +22,7 @@ Clone both this and the patches repos:
|
|||||||
|
|
||||||
Finally, start the build script - for example, to build for all supported archs:
|
Finally, start the build script - for example, to build for all supported archs:
|
||||||
|
|
||||||
bash lineage_build_unified/buildbot_unified.sh treble 32B A64B 64B
|
bash lineage_build_unified/buildbot_unified.sh treble 32B 32BO A64B A64BG A64BO 64B 64BG
|
||||||
|
|
||||||
Be sure to update the cloned repos from time to time!
|
Be sure to update the cloned repos from time to time!
|
||||||
|
|
||||||
|
|||||||
@@ -0,0 +1,31 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
set -e
|
||||||
|
|
||||||
|
patches="$(readlink -f -- $1)"
|
||||||
|
|
||||||
|
shopt -s nullglob
|
||||||
|
for project in $(cd $patches; echo *);do
|
||||||
|
p="$(tr _ / <<<$project |sed -e 's;platform/;;g')"
|
||||||
|
[ "$p" == build ] && p=build/make
|
||||||
|
[ "$p" == vendor/hardware/overlay ] && p=vendor/hardware_overlay
|
||||||
|
[ "$p" == vendor/partner/gms ] && p=vendor/partner_gms
|
||||||
|
pushd $p
|
||||||
|
git clean -fdx; git reset --hard
|
||||||
|
for patch in $patches/$project/*.patch;do
|
||||||
|
if git apply --check $patch;then
|
||||||
|
git am $patch
|
||||||
|
elif patch -f -p1 --dry-run < $patch > /dev/null;then
|
||||||
|
#This will fail
|
||||||
|
git am $patch || true
|
||||||
|
patch -f -p1 < $patch
|
||||||
|
git add -u
|
||||||
|
git am --continue
|
||||||
|
else
|
||||||
|
echo "Failed applying $patch"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
popd
|
||||||
|
done
|
||||||
|
|
||||||
+34
-77
@@ -1,6 +1,7 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
echo ""
|
echo ""
|
||||||
echo "LineageOS 19.x Unified Buildbot"
|
echo "LineageOS 18.x Unified Buildbot"
|
||||||
|
echo "ATTENTION: this script syncs repo on each run"
|
||||||
echo "Executing in 5 seconds - CTRL-C to exit"
|
echo "Executing in 5 seconds - CTRL-C to exit"
|
||||||
echo ""
|
echo ""
|
||||||
sleep 5
|
sleep 5
|
||||||
@@ -20,19 +21,11 @@ then
|
|||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
NOSYNC=false
|
|
||||||
PERSONAL=false
|
PERSONAL=false
|
||||||
for var in "${@:2}"
|
if [ ${!#} == "personal" ]
|
||||||
do
|
then
|
||||||
if [ ${var} == "nosync" ]
|
|
||||||
then
|
|
||||||
NOSYNC=true
|
|
||||||
fi
|
|
||||||
if [ ${var} == "personal" ]
|
|
||||||
then
|
|
||||||
PERSONAL=true
|
PERSONAL=true
|
||||||
fi
|
fi
|
||||||
done
|
|
||||||
|
|
||||||
# Abort early on error
|
# Abort early on error
|
||||||
set -eE
|
set -eE
|
||||||
@@ -49,44 +42,23 @@ BUILD_DATE="$(date +%Y%m%d)"
|
|||||||
WITHOUT_CHECK_API=true
|
WITHOUT_CHECK_API=true
|
||||||
WITH_SU=true
|
WITH_SU=true
|
||||||
|
|
||||||
prep_build() {
|
echo "Preparing local manifests"
|
||||||
echo "Preparing local manifests"
|
mkdir -p .repo/local_manifests
|
||||||
mkdir -p .repo/local_manifests
|
cp ./lineage_build_unified/local_manifests_${MODE}/*.xml .repo/local_manifests
|
||||||
cp ./lineage_build_unified/local_manifests_${MODE}/*.xml .repo/local_manifests
|
echo ""
|
||||||
echo ""
|
|
||||||
|
|
||||||
echo "Syncing repos"
|
echo "Syncing repos"
|
||||||
repo sync -c --force-sync --no-clone-bundle --no-tags -j$(nproc --all)
|
repo sync -c --force-sync --no-clone-bundle --no-tags -j$(nproc --all)
|
||||||
echo ""
|
echo ""
|
||||||
|
|
||||||
echo "Setting up build environment"
|
echo "Setting up build environment"
|
||||||
source build/envsetup.sh &> /dev/null
|
source build/envsetup.sh &> /dev/null
|
||||||
mkdir -p ~/build-output
|
mkdir -p ~/build-output
|
||||||
echo ""
|
echo ""
|
||||||
|
|
||||||
repopick -t twelve-monet
|
|
||||||
repopick -Q "status:open+project:LineageOS/android_packages_apps_AudioFX+branch:lineage-19.0"
|
|
||||||
repopick -Q "status:open+project:LineageOS/android_packages_apps_Etar+branch:lineage-19.0"
|
|
||||||
repopick -Q "status:open+project:LineageOS/android_packages_apps_Trebuchet+branch:lineage-19.0+NOT+317783+NOT+318747"
|
|
||||||
repopick -t twelve-burnin
|
|
||||||
repopick -t twelve-buttons
|
|
||||||
repopick -t twelve-fingerprint
|
|
||||||
repopick -t twelve-volume-panel-location
|
|
||||||
repopick -t twelve-swap-volume-buttons
|
|
||||||
repopick -t twelve-camera-button
|
|
||||||
repopick -t twelve-navbar-runtime-toggle
|
|
||||||
repopick -t twelve-buttons-lights
|
|
||||||
repopick -t twelve-keyboard-lights
|
|
||||||
repopick -t twelve-statusbar-brightness-and-qs-slider
|
|
||||||
repopick -t twelve-powermenu
|
|
||||||
repopick 321337 # Deprioritize important developer notifications
|
|
||||||
repopick 321338 # Allow disabling important developer notifications
|
|
||||||
repopick 321339 # Allow disabling USB notifications
|
|
||||||
}
|
|
||||||
|
|
||||||
apply_patches() {
|
apply_patches() {
|
||||||
echo "Applying patch group ${1}"
|
echo "Applying patch group ${1}"
|
||||||
bash ~/treble_experimentations/apply-patches.sh ./lineage_patches_unified/${1}
|
bash ./lineage_build_unified/apply_patches.sh ./lineage_patches_unified/${1}
|
||||||
}
|
}
|
||||||
|
|
||||||
prep_device() {
|
prep_device() {
|
||||||
@@ -111,58 +83,43 @@ finalize_treble() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
build_device() {
|
build_device() {
|
||||||
if [ ${1} == "arm64" ]
|
|
||||||
then
|
|
||||||
lunch lineage_arm64-userdebug
|
|
||||||
make -j$(nproc --all) systemimage
|
|
||||||
mv $OUT/system.img ~/build-output/lineage-19.0-$BUILD_DATE-UNOFFICIAL-arm64$(${PERSONAL} && echo "-personal" || echo "").img
|
|
||||||
else
|
|
||||||
brunch ${1}
|
brunch ${1}
|
||||||
mv $OUT/lineage-*.zip ~/build-output/lineage-19.0-$BUILD_DATE-UNOFFICIAL-${1}$($PERSONAL && echo "-personal" || echo "").zip
|
mv $OUT/lineage-*.zip ~/build-output/lineage-18.1-$BUILD_DATE-UNOFFICIAL-${1}$($PERSONAL && echo "-personal" || echo "").zip
|
||||||
fi
|
|
||||||
}
|
}
|
||||||
|
|
||||||
build_treble() {
|
build_treble() {
|
||||||
case "${1}" in
|
case "${1}" in
|
||||||
("A64B") TARGET=treble_a64_bvS;;
|
("32B") TARGET=arm_bvS;;
|
||||||
("A64BG") TARGET=treble_a64_bgS;;
|
("32BO") TARGET=arm_boS;;
|
||||||
("64B") TARGET=treble_arm64_bvS;;
|
("A64B") TARGET=a64_bvS;;
|
||||||
("64BG") TARGET=treble_arm64_bgS;;
|
("A64BG") TARGET=a64_bgS;;
|
||||||
|
("A64BO") TARGET=a64_boS;;
|
||||||
|
("64B") TARGET=arm64_bvS;;
|
||||||
|
("64BG") TARGET=arm64_bgS;;
|
||||||
(*) echo "Invalid target - exiting"; exit 1;;
|
(*) echo "Invalid target - exiting"; exit 1;;
|
||||||
esac
|
esac
|
||||||
lunch lineage_${TARGET}-userdebug
|
lunch lineage_${TARGET}-userdebug
|
||||||
make installclean
|
make installclean
|
||||||
make -j$(nproc --all) systemimage
|
make -j$(nproc --all) systemimage
|
||||||
mv $OUT/system.img ~/build-output/lineage-19.0-$BUILD_DATE-UNOFFICIAL-${TARGET}$(${PERSONAL} && echo "-personal" || echo "").img
|
|
||||||
make vndk-test-sepolicy
|
make vndk-test-sepolicy
|
||||||
|
mv $OUT/system.img ~/build-output/lineage-18.1-$BUILD_DATE-UNOFFICIAL-${TARGET}$(${PERSONAL} && echo "-personal" || echo "").img
|
||||||
}
|
}
|
||||||
|
|
||||||
if ${NOSYNC}
|
echo "Applying patches"
|
||||||
|
prep_${MODE}
|
||||||
|
apply_patches patches_platform
|
||||||
|
apply_patches patches_${MODE}
|
||||||
|
if ${PERSONAL}
|
||||||
then
|
then
|
||||||
echo "ATTENTION: syncing/patching skipped!"
|
|
||||||
echo ""
|
|
||||||
echo "Setting up build environment"
|
|
||||||
source build/envsetup.sh &> /dev/null
|
|
||||||
echo ""
|
|
||||||
else
|
|
||||||
prep_build
|
|
||||||
echo "Applying patches"
|
|
||||||
prep_${MODE}
|
|
||||||
apply_patches patches_platform
|
|
||||||
apply_patches patches_${MODE}
|
|
||||||
if ${PERSONAL}
|
|
||||||
then
|
|
||||||
apply_patches patches_platform_personal
|
apply_patches patches_platform_personal
|
||||||
apply_patches patches_${MODE}_personal
|
apply_patches patches_${MODE}_personal
|
||||||
fi
|
|
||||||
finalize_${MODE}
|
|
||||||
echo ""
|
|
||||||
fi
|
fi
|
||||||
|
finalize_${MODE}
|
||||||
|
echo ""
|
||||||
|
|
||||||
for var in "${@:2}"
|
for var in "${@:2}"
|
||||||
do
|
do
|
||||||
if [ ${var} == "nosync" ] || [ ${var} == "personal" ]
|
if [ ${var} == "personal" ]
|
||||||
then
|
then
|
||||||
continue
|
continue
|
||||||
fi
|
fi
|
||||||
|
|||||||
@@ -1,13 +1,10 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<manifest>
|
<manifest>
|
||||||
<project name="phhusson/vendor_hardware_overlay" path="vendor/hardware_overlay" remote="github" revision="pie" />
|
<project name="phhusson/vendor_hardware_overlay" path="vendor/hardware_overlay" remote="github" revision="pie" />
|
||||||
<project name="phhusson/device_phh_treble" path="device/phh/treble" remote="github" revision="android-12.0" />
|
<project name="phhusson/device_phh_treble" path="device/phh/treble" remote="github" revision="android-11.0" />
|
||||||
<project name="phhusson/vendor_vndk-tests" path="vendor/vndk-tests" remote="github" revision="master" />
|
<project name="phhusson/vendor_vndk-tests" path="vendor/vndk-tests" remote="github" revision="master" />
|
||||||
<project name="phhusson/vendor_interfaces" path="vendor/interfaces" remote="github" revision="android-11.0" />
|
<project name="phhusson/vendor_interfaces" path="vendor/interfaces" remote="github" revision="android-11.0" />
|
||||||
<project name="phhusson/vendor_lptools" path="vendor/lptools" remote="github" revision="master" />
|
|
||||||
<project name="phhusson/vendor_magisk" path="vendor/magisk" remote="github" revision="android-10.0" />
|
<project name="phhusson/vendor_magisk" path="vendor/magisk" remote="github" revision="android-10.0" />
|
||||||
<remote name="gitlab" fetch="https://gitlab.com/" />
|
<remote name="gitlab" fetch="https://gitlab.com/" />
|
||||||
<project name="davi.sh/gms-android-12" path="vendor/partner_gms" remote="gitlab" revision="master" />
|
<project name="00p513-dev/partner_gms" path="vendor/partner_gms" remote="gitlab" revision="11" />
|
||||||
<remove-project name="platform/packages/apps/Gallery2" />
|
|
||||||
<project name="LineageOS/android_packages_apps_Gallery2" path="packages/apps/Gallery2" remote="github" revision="lineage-18.1" />
|
|
||||||
</manifest>
|
</manifest>
|
||||||
|
|||||||
Reference in New Issue
Block a user