aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormosimchah <mosimchah@gmail.com>2025-12-06 08:10:59 -0500
committermosimchah <mosimchah@gmail.com>2025-12-06 08:28:37 -0500
commit8ddb572c8bd80d76ac33ce3929b9ca76130293b2 (patch)
tree761710821b7d222cb721d92a5b1096d270a2c73b
parent85195f64e931ca22fac0d6fc4c179f7d551b2ccc (diff)
aicp: add our build changes from w16.0_pre-rebase_12-3-25
https://github.com/AICP/vendor_aicp/tree/w16.0_pre-rebase-12-3-25 sed lineage, review.lineageos.org commit a9565d7a1fe506ef81895102f6d36c69e1e1e800 Author: SpiritCroc <dev@spiritcroc.de> Date: Fri Nov 14 08:08:23 2025 +0100 Fix lineage kernel source revision for kernel build Change-Id: Ic1440e548909b90344e4d3b6887ee5c77c59453a commit 97bbfa59adb9f56431caa47f92eac988fb4027b7 Author: Michael Bestas <mkbestas@lineageos.org> Date: Tue Oct 21 22:18:02 2025 +0300 envsetup: Add build_kernel function for Pixel OOT kernel build Change-Id: Ib2840cb2bf236a6d25906b60256ef521dd6a2c8a commit 7fb53d350b34956d2526768babcabf8718d207a2 Author: Michael Bestas <mkbestas@lineageos.org> Date: Sat Oct 18 22:20:11 2025 +0300 Revert "tools: getb64key - print the base64 version of a PEM public key file" Reason for revert: This has been unused since lineage-16.0 This reverts commit 0a656b6446808bfa501c0b9bbc1405868aacd2c4. Change-Id: Ib804efa52b1af444be1de68066be48c30ea4d22b commit 8feae64cf87cb22e6c5d3b176c1cef2413ff3186 Author: Nolen Johnson <johnsonnolen@gmail.com> Date: Sat Oct 18 22:24:48 2025 -0400 lineage: targets: car*: Refactor and update artifact list Change-Id: I0bc8aa03ed854f7e770ce32e0fe8df8f97e3929f commit 54dfb317f5a61089d7eb6638da3bcc4a058e4871 Author: LuK1337 <priv.luk@gmail.com> Date: Sat Sep 20 10:18:29 2025 +0200 lineage: products: Disable EPPE for cuttlefish targets Change-Id: Ie448ab0fa840289707e2505b68681ed1f9a72eda commit 8d69435a23646018d1c6115cc80f3654c8f4eec2 Author: Aaron Kling <webgeek1234@gmail.com> Date: Tue Sep 23 23:39:34 2025 -0500 kernel: Set scmversion for kernel platform By default, the version control information isn't checked to save time. The normal version check uses repo, which is blocked by the aosp build system. So the manifest is generated separately and passed to bazel. Change-Id: I2232903af6b6b7869aef3f66d836236a041887cc commit 54f62513a04726003ce13b8130e548c0c457eb86 Author: Aaron Kling <webgeek1234@gmail.com> Date: Tue Sep 23 17:08:39 2025 -0500 kernel: Fix building kernel platform with in-tree out This was originally verified against out-of-tree, which is already an absolute path. With in-tree out, the path is relative. Since pwd is changed to the root of the kernel platform tree, the dist path needs to be absolute. Fixes: 7cd90ecd (kernel: Support building from kernel platform) Change-Id: Ib9cecdc5f8bfd3345afc73c050ab6214ac4c48d6 commit 3af73868607b0575afd00a154e1a63b452fb9454 Author: Yumi Yukimura <me.cafebabe@gmail.com> Date: Mon Aug 25 23:30:27 2025 +0800 aicp_generic_*target: Disable soong defined system image for now We don't support it yet. Change-Id: Ic5cfa50ff66bfee723b74d4e5511582b42a2eeca commit 74cc5c2e7092cd92122d4b27c14c3cd3c92e4f19 Author: Aaron Kling <webgeek1234@gmail.com> Date: Tue Jul 15 20:32:33 2025 -0500 kernel: Support building from kernel platform This expects a few build variables to be set: * TARGET_KERNEL_PLATFORM_TARGET: The base target name. For example, 'tegra' will indicate that the dist target is tegra_dist, abi is tegra_abi, etc. * TARGET_KERNEL_VERSION: Used to determine the kernel checkout path. For example, a value of 6.6 will expect the kernel platform repo to be checked out to $BUILD_TOP/../kernel-6.6. * TARGET_KERNEL_SOURCE: Relative to the top of the kernel platform checkout, the path to the kernel build rules. For example, vendor/nvidia/tegra. * BOARD_KERNEL_IMAGE_NAME: The kernel image to use. For example, Image. Using the examples above, this will run bazel in the kernel-6.6 directory on the target //vendor/nvidia/tegra:tegra_dist, then source the output from $OUT/tegra/dist, with the prebuilt kernel image being Image. Change-Id: If96e96dffa2c0bfd9bd824bb3d8064eb861c9d00 commit 45771b00c6e01e12cb434a830022de7466320231 Author: Michael Bestas <mkbestas@lineageos.org> Date: Wed Jul 23 19:52:06 2025 +0300 build: Drop VARIANT_DEFCONFIG/SELINUX_DEFCONFIG support This has been unused for a long time and any users that mistakenly use this should migrate to defconfig fragments. Change-Id: I70f1aa82e3adcbf85b11e8685f188d0eadfff2e3 commit 4a7a0b06702e05c9f7e8ab4a8d26fd5b26899b0a Author: Michael Bestas <mkbestas@lineageos.org> Date: Wed Jul 23 19:35:47 2025 +0300 build: Drop separate recovery kernel support Last users were in lineage-18.1, build side is no longer being ported. Change-Id: I091498ab3536eeb050511d71cc37373f6a77486d commit 07decfe0cc4e3f3898f36e85f25e3bfafa3c631f Author: LuK1337 <priv.luk@gmail.com> Date: Sat Jul 26 10:51:22 2025 +0200 Revert "soong: Make mkdir install dir optional" This reverts commit ff19773ea462d75ce12f094ae7c9c3e526fafeb8. Change-Id: Ia701f07eaabbf33098434ea2e4851d9ba5cdaff6 commit 43c492287d6c578c7bee407eb23281847ee3b393 Author: Yumi Yukimura <me.cafebabe@gmail.com> Date: Wed Sep 25 16:52:22 2024 +0800 kernel: Fix building x86 kernel with GCC Change-Id: Ib1097d604776adc63c31b90cec9a0d13729248be commit 4a3a2c3364b72b6329a291443062c481f70e4dc8 Author: Yumi Yukimura <me.cafebabe@gmail.com> Date: Mon May 19 03:15:52 2025 +0800 kernel: Sign kernel modules only if CONFIG_MODULE_SIG_FORMAT=y Change-Id: If8ef12f2b751390fc1689edb551379ca2e4e78be commit 9f23e47ae1d368ac0ef8b08c6bd2d06162f3eb3d Author: Yumi Yukimura <me.cafebabe@gmail.com> Date: Mon May 19 03:04:27 2025 +0800 kernel: Fix build when device does not set BOARD_SYSTEM_KERNEL_MODULES_LOAD ... but sets SYSTEM_KERNEL_MODULES build/make lets BOARD_SYSTEM_KERNEL_MODULES_LOAD default to false when it's unset. Change-Id: I581da33bf0321f171aa6a20bdb023e1ee824cb18 commit 88de98de33065a965588e399fa55c70bc718903e Author: Yumi Yukimura <me.cafebabe@gmail.com> Date: Mon May 19 02:36:51 2025 +0800 kernel: Support installing kernel modules to system * Example usecase: Installing zram.ko on devices without system_dlkm Change-Id: I3afe358bcd444f7c3724e5682d4056fe52cfeea9 commit e32c8d1eefd4205be9ca4d99b4327c164b9ed863 Author: Yumi Yukimura <me.cafebabe@gmail.com> Date: Fri Apr 11 00:13:18 2025 +0800 kernel: Add support for external kernel configs (v2) For targets that uses mainline kernel, the kernel tree usually only contains configs on top of the upstream repository. In such case, if we put the configs in elsewhere, we can simply just track the upstream kernel repo, without needing to import configs. Example usage: TARGET_KERNEL_CONFIG_EXT := \ $(COMMON_PATH)/kconfig/platform_defconfig \ $(COMMON_PATH)/kconfig/common-addons.config TARGET_KERNEL_CONFIG_EXT += \ $(DEVICE_PATH)/kconfig/device.config Change-Id: Ibafd0afa7ec06df643ba290a6149a4f0781d67fb commit 4ffc3dde2460a349b3347a4364c63379464a1182 Author: Yumi Yukimura <me.cafebabe@gmail.com> Date: Sun May 4 15:23:57 2025 +0800 kernel: Enhancements to searching DTBs during non-QCOM DTB image generation * Allow wildcard pattern * Support searching in specified directory * Add variable that accepts a list of such patterns Change-Id: I35da8ed19447b4ab69142152d7dc8e60bc55bf14 commit d461d2ffc228f4ff26e6217160e812db1f1e2f5c Author: Nick Reuter <nreuter85@gmail.com> Date: Sun Aug 24 21:51:32 2025 -0500 build: Update rust toolchain dynamically Change-Id: Iedcc0ebc7f42f65bd1b9578d92bf101f642dec7e commit 8c55a42114aaf724acc9327e33bd163cb44e6613 Author: Michael Bestas <mkbestas@lineageos.org> Date: Sun Jul 20 17:35:42 2025 +0300 build: Move qti_kernel_headers to hardware/qcom-caf/common Change-Id: I09403ac6799adce970a289136dcbab4703f20b84 commit c8fbac39da3f1b8f4b8b7952fdb90889e2435e0a Author: mosimchah <mosimchah@gmail.com> Date: Tue Sep 30 00:59:11 2025 -0400 w16.0 Change-Id: I45a84adc994f65bc31295a82393aed7104d100f0 commit e734b3e28d00cb0f66df643caea3a6153e388ace Author: inferno0230 <mail@inferno0230.in> Date: Tue Sep 9 12:05:45 2025 +0530 merge_dtbs: Use DeviceTreeInfo's hash in get_name() Fixes duplicate output filename collision: INFO: Saving to: benz-23871-crow-overlay-DVT1-camera-0x46232744d57254d9.dtbo Merging overlay blob out/target/product/benz/obj/DTB_OBJ/arch/arm64/boot/dts/vendor/qcom/camera/oplus/benz-camera-overlay.dtbo Reloading overlay blob out/target/product/benz/obj/DTB_OBJ/arch/arm64/boot/dts/vendor/qcom/camera/oplus/benz-camera-overlay.dtbo Merging overlay blob out/target/product/benz/obj/DTB_OBJ/arch/arm64/boot/dts/vendor/qcom/camera/oplus/benz-camera-overlay.dtbo INFO: Saving to: benz-23871-crow-overlay-DVT1-23061-audio-23061-display-camera-0x46232744d57254d9.dtbo Merging overlay blob out/target/product/benz/obj/DTB_OBJ/arch/arm64/boot/dts/vendor/qcom/audio/oplus/benz-23061-audio-crow-overlay.dtbo Reloading overlay blob out/target/product/benz/obj/DTB_OBJ/arch/arm64/boot/dts/vendor/qcom/audio/oplus/benz-23061-audio-crow-overlay.dtbo Merging overlay blob out/target/product/benz/obj/DTB_OBJ/arch/arm64/boot/dts/vendor/qcom/audio/oplus/benz-23061-audio-crow-overlay.dtbo Merging overlay blob out/target/product/benz/obj/DTB_OBJ/arch/arm64/boot/dts/vendor/qcom/display/oplus/benz-23061-display-crow-overlay.dtbo Reloading overlay blob out/target/product/benz/obj/DTB_OBJ/arch/arm64/boot/dts/vendor/qcom/display/oplus/benz-23061-display-crow-overlay.dtbo Merging overlay blob out/target/product/benz/obj/DTB_OBJ/arch/arm64/boot/dts/vendor/qcom/display/oplus/benz-23061-display-crow-overlay.dtbo Merging overlay blob out/target/product/benz/obj/DTB_OBJ/arch/arm64/boot/dts/vendor/qcom/camera/oplus/benz-camera-overlay.dtbo Reloading overlay blob out/target/product/benz/obj/DTB_OBJ/arch/arm64/boot/dts/vendor/qcom/camera/oplus/benz-camera-overlay.dtbo Merging overlay blob out/target/product/benz/obj/DTB_OBJ/arch/arm64/boot/dts/vendor/qcom/camera/oplus/benz-camera-overlay.dtbo INFO: Saving to: benz-23871-crow-overlay-DVT1-23061-audio-23061-display-camera-0x46232744d57254d9.dtbo Traceback (most recent call last): File "/sauce/los/vendor/lineage/build/tools/merge_dtbs.py", line 567, in main() ~~~~^^ File "/sauce/los/vendor/lineage/build/tools/merge_dtbs.py", line 551, in main created.extend(dt.save(args.out)) ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^ File "/sauce/los/vendor/lineage/build/tools/merge_dtbs.py", line 469, in save yield mdt.save(name, out_dir) ~~~~~~~~^^^^^^^^^^^^^^^ File "/sauce/los/vendor/lineage/build/tools/merge_dtbs.py", line 361, in save assert not os.path.exists(out_file), "Cannot overwrite: {}".format(out_file) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ AssertionError: Cannot overwrite: out/target/product/benz/obj/DTB_OBJ/out/benz-23871-crow-overlay-DVT1-23061-audio-23061-display-camera-0x46232744d57254d9.dtbo Change-Id: Ia7817e91da7bde1e3a4d577c3b45d5805b0b9938 Signed-off-by: inferno0230 <mail@inferno0230.in> commit cccc31234a15bae22873e80cf237555dce005701 Author: Yumi Yukimura <me.cafebabe@gmail.com> Date: Mon Aug 25 01:43:51 2025 +0800 lineage: Move build-manifest.xml build rule into `build/tasks` * For Android.mk deprecation Change-Id: I4aba949ae0af7674955d7a2c439d191348b41f3c commit a86271e97d5e818c8e7cfead73fa807267c79f09 Author: Yumi Yukimura <me.cafebabe@gmail.com> Date: Mon Aug 25 01:33:10 2025 +0800 lineage: Restore Android.mk based build-manifest.xml build rule Users don't like the increased delay during `. build/envsetup.sh` or `lunch`... Change-Id: I1a92a171f2e2ec1ba2453d6c666cefcd9884b39b commit 938b2bc117d379f378e9f1ba2463cf883553ea2d Author: Yumi Yukimura <me.cafebabe@gmail.com> Date: Wed Aug 20 21:07:33 2025 +0800 lineage: Move build-manifest.xml generation to a separate script Change-Id: I68a13fdb47a034157a54ff5781c13b3fa17371d2 commit 3ea5712984b7babdc0dd5e87dec2485bd32ea63c Author: LuK1337 <priv.luk@gmail.com> Date: Sun Aug 10 13:39:53 2025 +0200 kernel: Introduce macros for comparing versions and make use of them Change-Id: Ie7debfea218117987f7e9588a71447061db08416 commit 72b9c760079d1c95868b4452d361da02eb03390d Author: Cosmin Tanislav <demonsingur@gmail.com> Date: Wed Jul 2 23:02:37 2025 +0300 merge_dtbs: allow one overlay to depend on multiple others Some overlays might depend on multiple other overlays, remove this check to allow it to happen. Change-Id: Ib60c194fb4c0cfef02233da6539da61fa387f428 commit 3c7aad61e54989a3629e0e276d600d5d39b62c9a Author: dianlujitao <dianlujitao@lineageos.org> Date: Sun Feb 2 19:06:49 2025 +0800 kernel: Automatically adapt path suffix for GKI modules It has been noticed that sm8750 no longer puts GKI modules in the subdirectory. Moreover, this seems to be something specific to QCOM, so guard it as such. Change-Id: Iac9c895c9c1eef06b2e4ce75bd7c5c2aa356fbb1 commit 7ba8a8dd84b14a172becf17e82db2fe94d30da5a Author: Julian Veit <claymore1298@gmail.com> Date: Sat Jul 5 09:08:02 2025 +0000 repopick: Fix showing help when no arguments given the correct way Previous solution broke picking from topic/hashtag/query. Change-Id: I087de693e3a8e16d62f318d59287e53ea3fc2430 commit 9c6e16d08b6c57bf9bdf56c4f55cc40ac66862ea Author: SpiritCroc <dev@spiritcroc.de> Date: Wed Jul 2 08:09:38 2025 +0200 repopick: Fix showing help when no arguments given Change-Id: I7a996a95a057dc70b1e8b54ea35326ec44ee81f4 commit 2fe7fd5b53cabfeb4c30e83cb45a2f9177559911 Author: Shun Terabayashi <shunonymous@gmail.com> Date: Thu Jun 26 02:37:13 2025 +0900 aicp: Fix vendor_aicp path used in building kernel Change-Id: Ia32927442d60cf66288284b503f3b66ae32a2708 commit fd289bf5e35a6ad9ec8a93ca3e05d59240100b44 Author: Michael W <baddaemon87@gmail.com> Date: Sun Jun 22 21:10:02 2025 +0200 repopick: Paginate queries properly Currently there is a limit of 500 changes per page, giving us only those when repopicking a query. By observing the "_more_changes" field in the response and adding the "start" parameter to the query we can do pagination and return all changes Test: repopick -p -Q "branch:lineage-23.0" Result before: 500 changes Result after: 1094 changes (correct count as of time of commit) Change-Id: I00304bc2c87b75cef89a26838da3dd1b1f0e65db commit f243a9dc4ff11d3277745eaba6754bdd5b467c35 Author: Chirayu Desai <chirayudesai1@gmail.com> Date: Wed Nov 6 20:23:09 2024 +0530 repopick: unquote URL Test: repopick -Q "status:open+-is:wip" works Change-Id: I346c5c40e8197ad1c91235ee1cbacaa3d30c7b91 commit 7bec70589083e9b22178d006d8be11032b469cb4 Author: LuK1337 <priv.luk@gmail.com> Date: Mon Dec 9 19:18:10 2024 +0100 repopick: Use add_mutually_exclusive_group() where possible Change-Id: I7e38e2371d075afd53200d60703eb4466fff07e3 commit 005da9347620cd3b05b0511eb6e9042010c3bdb8 Author: Michael Bestas <mkbestas@gmail.com> Date: Mon Dec 9 20:06:48 2024 +0200 repopick: Add support for hashtags Test: repopick -H redbull Change-Id: I1522be31e547a7f8917223e7eeae4389de083227 commit 79cdb3ffe39b209a50adb6cbb9c2938622f42782 Author: LuK1337 <priv.luk@gmail.com> Date: Tue Mar 26 20:09:05 2024 +0100 repopick: Require python3 Change-Id: I95f598947a29b2095bd7539b1f279dccc1b25097 commit 58650ef48016309ea13e19a9e1590e9a2747fd41 Author: LuK1337 <priv.luk@gmail.com> Date: Mon Mar 11 11:57:32 2024 +0100 repopick: Use `number` instead of `id` for error msgs Change-Id: I1ebfd8315d1dbbdbee2cd50095f5d7c6b98e7057 commit cc3434f0b1fc1f138efced02f95260df79a7ee63 Author: LuK1337 <priv.luk@gmail.com> Date: Sun Feb 11 19:10:52 2024 +0100 repopick: Skip commit_exists() check when using -p Change-Id: I7b99e8c940bddad80e6362302f1ae24248e42faf commit fda089cf2eaf28a69ad238096ec976d6d021cb79 Author: LuK1337 <priv.luk@gmail.com> Date: Thu Feb 8 13:47:41 2024 +0100 repopick: Fix logic for skipping already merged changes We can't iterate a list and update it at the same time. Test: Run `repopick -t XXI` twice Change-Id: I85651783531b59fd4b48d54a663c22cb243edac7 commit ed257150e33320591464e0955e75910de496ec5f Author: dianlujitao <dianlujitao@lineageos.org> Date: Thu Feb 8 20:23:35 2024 +0800 repopick: Use hostname of the URL to determine lineage gerrit Change-Id: Ifd3883917bc4acd7d58179235d880f2e4a43b670 commit 711e0fe98f5d9e3e3e902a8786e04cb0b8eb9553 Author: dianlujitao <dianlujitao@lineageos.org> Date: Sun Jan 14 17:27:02 2024 +0800 repopick: Clear Pyright warnings Change-Id: I63962cc31820329a0fcf8ed96a13ef12a9f67875 commit 5602cd246234b1c23e9b39ad579590078ed520bc Author: dianlujitao <dianlujitao@lineageos.org> Date: Sun Jan 14 17:21:29 2024 +0800 repopick: Check fetch result based on the actual commit Checking for FETCH_HEAD is not reliable when fetching in parallel. Change-Id: I0c07f7c4bffb80e5d12b13f301ba684b95112272 commit d8612ab33cae1bff7116c83ff80a2bb1a22fc484 Author: dianlujitao <dianlujitao@lineageos.org> Date: Sat Jan 13 23:56:59 2024 +0800 repopick: Apply change in parallel Change-Id: Iafd803422082bcc17f2ad3300df3882d689f3674 commit 90025a22825972b9121d5fd33928809b836d67a5 Author: dianlujitao <dianlujitao@lineageos.org> Date: Sat Jan 13 21:27:00 2024 +0800 repopick: Avoid repeatedly performing the same check Jobs such as check for already picked changes only need to be done once for each git repository, but it was lunched every time picking a commit. Change-Id: I87b3fea101dbcedb38502015fe9a9af5f25b397c commit cf00f6fac2a3ecfde4aecad73b565be1a24daa85 Author: dianlujitao <dianlujitao@lineageos.org> Date: Sun Jan 14 17:01:12 2024 +0800 repopick: Use the builtin urllib to handle HTTP basic authentication Also do proper URL encode while at it. Change-Id: I64c0913eed535b109af2adc830288b3dd17c0cbb commit a482edd35240bb6d2572d075514e537b714d8461 Author: dianlujitao <dianlujitao@lineageos.org> Date: Sun Jan 14 14:57:41 2024 +0800 repopick: Clean up subprocess calls * Use the builtin approach to decode text output * Drop unnecessary system shell usage * Use subprocess.run when we don't need its stdout Change-Id: Ibb2aeae442b5e97828fe4e0eb783e6512288d245 commit 80e2c2e5e4ffa80a9236f92a75d916130472a7cd Author: dianlujitao <dianlujitao@lineageos.org> Date: Sun Jan 14 17:59:24 2024 +0800 repopick: Organize imports and format with black Change-Id: I94080fb8adba0af83d86f0c67af8fac460ffbea0 commit 086b5825490fc7e7d3a3243b6961ec7ea6097119 Author: dianlujitao <dianlujitao@lineageos.org> Date: Sat Jan 13 17:33:41 2024 +0800 repopick: Remove python2 support Change-Id: I8f164eea3a17888bcf30ff649ddcf81a00bab582 commit 249c08764972589557c22d97797b426b7d835c92 Author: LuK1337 <priv.luk@gmail.com> Date: Wed Sep 20 20:28:20 2023 +0200 repopick: Fix regex related SyntaxWarning on Python 3.12 Change-Id: I23f80997f34a158d564a2e41043242a5af9f2ac3 commit 872ffb1696eccbd473c89ce4106ab359064b74f7 Author: micky387 <mickaelsaibi@free.fr> Date: Sat Oct 12 10:40:41 2024 -0400 envsetup.sh: Export LLVM_AOSP_PREBUILTS_VERSION with the current clang version from soong Needed for KERNEL_CLANG_VERSION if TARGET_KERNEL_CLANG_VERSION hasn't been set by the device config It's boring to change it on each Google change ... Change-Id: I1d682611cbf6c60d7ae6227b0b5afde591adf471 commit 8ecf7ee6aeb6ebbe0a1fe340fde1212f5b7dde3e Author: Alexander Koskovich <akoskovich@pm.me> Date: Thu Jun 12 21:08:59 2025 -0400 merge_dtbs: Add qcom,oem-id to EXTRA_KEYS This is used by Nothing to differentiate between the base & pro models on the Phone (3a). Change-Id: I56f7e58f134571ea35a6dafef54e2b30ba20b5f0 commit d29c5f6168003dad8f9c2f3a4d626bdcc23ec427 Author: Cosmin Tanislav <demonsingur@gmail.com> Date: Tue Jun 10 13:49:23 2025 +0300 merge_dtbs: ignore not matching DTBOs when finding symbols for a fixup Change-Id: I1705341d9ec68b46ac6f6c1007c6ea28f9c4e95d commit 7cfda6a310260540d321149dc9ecd2774bffc872 Author: Yumi Yukimura <me.cafebabe@gmail.com> Date: Thu Oct 24 18:48:53 2024 +0800 aicp: products: Add Cuttlefish products How-to: 1. Build and install cuttlefish packages by following [1] 2. Build LineageOS image and hosttar ``` source build/envsetup.sh breakfast cf_phone_x86_64 m hosttar updatepackage ``` 3. Extract LineageOS image and hosttar ``` mkdir lineage-cvd cd lineage-cvd unzip <LineageOS tree>/out/target/product/vsoc_x86_64/lineage_cf_phone_x86_64-img.zip tar xzvf <LineageOS tree>/out/host/linux-x86/cvd-host_package.tar.gz ``` 4. Run it ``` HOME=$PWD ./bin/launch_cvd ``` 5. Open https://127.0.0.1:8443 in browser, and enjoy [1]: https://github.com/google/android-cuttlefish?tab=readme-ov-file#debian-packages Change-Id: I7d69db7be99d250f02d7e76fd398ebf5c2ca7c5f commit e18eec10ecac6f7060a0a7769b010f52b955dd23 Author: Cosmin Tanislav <demonsingur@gmail.com> Date: Sun Jun 8 15:15:07 2025 +0300 merge_dtbs: Sort DTBOs based on needed symbols Some DTBOs might use symbols from other DTBOs and require them to be applied before them. Sort them based on the __symbols__ and __fixups__ nodes, by creating a dependency graph. Change-Id: I40acf5da6b673b636a91f75ae3f3c634f2b5c505 commit c8653dca8a43589b88aacc7143fec3a641c21855 Author: Nikita Savchenko <NikitaSavc@yandex.ru> Date: Sat Jun 7 16:22:03 2025 +0000 kernel: Report all modules not found at once Change-Id: Ic46f72989b2dd5de574cc33b7e9f7499323d9bb0 commit dffe7fa65f414bb81b5c905cc6120a8fa7a0053d Author: Aaron Kling <webgeek1234@gmail.com> Date: Wed Apr 16 20:59:01 2025 -0500 soong: Support prebuilt_kernel_headers This depends on a kernel headers tarball path being passed in TARGET_PREBUILT_KERNEL_HEADERS, in the style that the kleaf kernel platform build generates. Change-Id: Ib82659fa44ef221e73d0d129daafbaae6bad87a2 commit 357cbf4f96b243b4fd15c0b69d02df2ea2fc0222 Author: Aaron Kling <webgeek1234@gmail.com> Date: Mon Apr 14 13:54:36 2025 -0500 vars: Add kernel platform branches Also add an envsetup function to set up all kernel platform working trees Change-Id: I23a8d18fac3562121b6907fd77c9d9a4486c04a1 commit 52b3f09d85b053c22c508b1aade90c281e5f65a4 Author: Julian Veit <claymore1298@gmail.com> Date: Sun Jun 1 17:44:05 2025 +0200 kernel.mk: bring in line with LOS Change-Id: I74668e1b036e2dd41d65d9ffe9dbb1462203de98 commit 0fb2c930ac23c639a37419cd327d45d75434af98 Author: dianlujitao <dianlujitao@lineageos.org> Date: Sun Feb 2 17:50:11 2025 +0800 kernel: sign GKI modules Only signed GKI modules are permitted to export symbols listed in the android/abi_gki_protected_exports file. Attempting to export these symbols from an unsigned module will result in the module failing to load, with a 'Permission denied' error message. Change-Id: Ie15b00a6c288eda21b319eb0f735cf4f9e6e7933 commit 87f330b5e2a4cde8e0637d354171572b270131bc Author: dianlujitao <dianlujitao@lineageos.org> Date: Sat Feb 1 19:36:38 2025 +0800 kernel: reduce the use of find when copying modules Change-Id: I16879cd3295bbfc16c3d34c4e120dcde6e24a19e commit 7a32c4668debec16089ad76a9a0e2985f835d474 Author: Aaron Kling <webgeek1234@gmail.com> Date: Mon Mar 11 23:40:38 2024 -0500 kernel: Error on duplicate modules This can happen when an out of tree module target uses a matching module name from the base kernel. This causes two problems: 1) Depmod gets confused and only pulls symbols from one of the modules 2) Copying the modules to modules_out is not entirely deterministic and is based on the first variant to be returned by find, meaning that the variant that gets copied to the device could change build to build. To avoid these issues, fail the build if this happens and force the build target to only generate one copy of each module name. Change-Id: I2e47ba4e142054feabaa1ab80fbbe0332fd84a62 commit 123391754d330c7bb8ec1b2ad7d86a06f5418706 Author: Cosmin Tanislav <demonsingur@gmail.com> Date: Fri Apr 4 18:53:29 2025 +0300 kernel: use DTBS_OUT variable DTBS_OUT is set to $(DTB_OUT)/out, use it. Change-Id: Id6ec8b1f32e4b54cd9c463c3af7146711a800d81 commit f8f9a6e04fd21b114aa2083751b3170552bea076 Author: Arian <arian.kulmer@web.de> Date: Thu Jul 14 18:26:54 2022 +0200 android: merge_dtbs: Respect oem specific extra ids Some OEMs add their own properties to avoid merging incompatible overlays for different devices with the same QCOM soc. Change-Id: Ic5b38a122173d8e9ecc1f0f399411cb37acf3150 commit 3ff47c6e6ba49fc22389f67d85ae2ba4af067df5 Author: Guru Das Srinagesh <quic_gurus@quicinc.com> Date: Mon Feb 27 18:17:54 2023 -0800 merge_dtbs: Craft unique name for final saved merged trees Incorporate the hash of a combination of all msm-ids, board-ids, and pmic-ids of the InnerMergedDeviceTree in the final filenames of the saved InnerMergedDeviceTrees. Change-Id: I629e1a274b23d71061c547578d1ddbcf92c8cf79 Signed-off-by: Guru Das Srinagesh <quic_gurus@quicinc.com> commit c9eeb5d678629ca61bc1bf093fc6d52f5bfb843d Author: Guru Das Srinagesh <quic_gurus@quicinc.com> Date: Fri Feb 24 18:30:54 2023 -0800 merge_dtbs: Use logging and argparse Use the logging module to log important information to various log levels: info, debug, warning and error. - Modify __str__ representations of classes DeviceTree and InnerMergedDeviceTree for readability in debug logs - Make parse_dt_files() return instead of yield so as to order all the filename parsing at one go after the preceding log messages Use the argparse module to specify script arguments cleanly. Also make the corresponding change to merge_dtbs.sh to invoke this script with the correct flags. Change-Id: Id09d9d7b34cde60eff99876f0c0c4f6643852aee Signed-off-by: Guru Das Srinagesh <quic_gurus@quicinc.com> commit 73ceb03dbca3b3e0085d96ee1ff7f9fba785b711 Author: Guru Das Srinagesh <quic_gurus@quicinc.com> Date: Tue Feb 21 12:10:54 2023 -0800 merge_dtbs.py: Print only basenames of dtb* files When debugging issues with the script, it helps to not have in the script's output the fully qualified path names of the DTB and DTBO files being merged as they are very lengthy. Retain only the relevant parts of the filnames - the basenames for better readability. Change-Id: Ia18584fcf9ff173c4b22d4543c83c4091e15b8f8 Signed-off-by: Guru Das Srinagesh <quic_gurus@quicinc.com> commit a777f249fae720c1ec3a440cd3fc00acd9465f67 Author: Maitreya25 <maitreyapatni25@gmail.com> Date: Sat Mar 16 08:01:22 2024 +0000 kernel: Include OEM DTBs in build Some OEMs (for example: oplus) push their dtbs to their own folders which causes kernel build to error out, fix this by including non qcom dtbs as well. Change-Id: I2f51db103475cd2609cd061e0ec66af5accb96ab commit e3d835598447bef4ce14bfea84fcfa8830d2c598 Author: Bruno Martins <bgcngm@gmail.com> Date: Sat Oct 28 11:43:33 2023 +0100 kernel: Replace BOARD_SYSTEM_KERNEL_MODULES with SYSTEM_KERNEL_MODULES Commit 47931c1 introduced GKI modules handling with the assumption that using BOARD_SYSTEM_KERNEL_MODULES would still work in Android 14, but turns out that it conflicts with build/make/core rules. Change-Id: I9167940c08b8420be254c52698f1faa2e3e7f793 commit fc26b31195ace9286d703131868409e44fea07fa Author: Aaron Kling <webgeek1234@gmail.com> Date: Tue Mar 12 19:15:29 2024 -0500 fixup! kernel: Support copying modules to boot ramdisk Original commit incorrectly added kernel as a dep to the vendor ramdisk for this path, when instead the dep should be added to the boot ramdisk. Change-Id: I25a42d403fe2ddb0538b08c2dd8f761eae960810 commit 50ad72ae3b9ec7ef5834c4a03a20beb30f1990cd Author: LuK1337 <priv.luk@gmail.com> Date: Mon Jul 22 15:33:39 2024 +0200 kernel: Deduplicate file paths in file_list.txt This is a workaround for broken dirty rebuilds. Test: breakfast gts4lvwifi && m && m Change-Id: I2529efd0685f15eace5031df39e226dd5eaca1e8 commit f3256d4a352b4acae0412db94ff7dad9e6b9d6e6 Author: Bruno Martins <bgcngm@gmail.com> Date: Thu Dec 7 16:21:40 2023 +0000 kernel: Ensure that module load lists are properly formed Do not allow module load lists to contain unexistent kernel modules and bail out if that's the case, informing that the list must be corrected. The lists can be formed including the full module path and with or without the file extension, like shown below: kernel/drivers/watchdog/softdog.ko kernel/net/wireless/cfg80211.ko kernel/net/mac80211/mac80211.ko or simply: softdog.ko cfg80211.ko mac80211.ko or ultimately: softdog cfg80211 mac80211 Either way, the newly generated modules.load file will now only contain the module name without the extension, which is inline with modules.alias and modules.blocklist. Change-Id: I969274f7edf249c98ca241e37b6e41a921d36908 commit b75a6b486019bc7ec87ff468bf1c2c501b7802b4 Author: dianlujitao <dianlujitao@lineageos.org> Date: Sat Feb 1 21:44:22 2025 +0800 kernel: break the build when depmod finds missing symbols Change-Id: I033590d2309d4e8fbff3ab6b5a73eb903d5b3be9 commit e16c760607742405e00acf055ae003645e721b56 Author: Sebastiano Barezzi <seba@sebaubuntu.dev> Date: Wed Dec 20 02:16:43 2023 +0100 kernel: Add `{recovery}kernelconfig` This target just builds the `.config` in `KERNEL_OBJ`/`RECOVERY_KERNEL_OBJ` to quickly check if fragments are applied properly, not to be used during an actual kernel build Change-Id: Ic92fe7bd544f6d0f1b3169c1405aceb6702775e0 commit 87ec3c41d20adf65713d732e1507d9f83dba3218 Author: Aaron Kling <webgeek1234@gmail.com> Date: Tue Jan 2 21:16:38 2024 -0600 kernel: Support copying modules to boot ramdisk Android supports loading modules from the boot ramdisk in the case of vendor ramdisk not existing. Change-Id: Ide1255b2c37ee262c8a4181d5eb0e380d0488edc commit 8f4db9adca5728b0e7b92fab311a2e215e767bba Author: Tim Zimmermann <tim@linux4.de> Date: Wed Sep 6 13:09:51 2023 +0200 kernel: Use correct variable name for vendor_kernel_boot modules * This was missed in bdfc913935c2a8c38ed999a4c84bb96492e0e5fe * Aligns the variable name for vendor_kernel_boot modules with AOSP Change-Id: I8d59f7b5d62e29a0484ca36fadcb74acab4f1859 commit 29aab7df5648d5f2c54da6a90e51df3da60f60a6 Author: Han Sol Jin <hansol@hansol.ca> Date: Thu Jul 11 09:03:56 2024 -0700 kernel: use systemimage_intermediates on devices with no vendor Change I8b6040e03589bde2af4e161c891ded237a9bb335 did not account for devices without a separate vendor partition, causing build to fail with the following: FAILED: ninja: '/file_list.txt', needed by 'out/target/product/joan/obj/KERNEL_OBJ/arch/arm64/boot/Image.gz-dtb', missing and no known rule to make it Use systemimage_intermediates instead on said devices. Test: m kernel Co-authored-by: Bruno Martins <bgcngm@gmail.com> Change-Id: If9eb75a1bef98345e9c137c2463e392d50be239b commit 5ec695abc6307291607e8ea3f0b51143cf0b6a32 Author: dianlujitao <dianlujitao@lineageos.org> Date: Sat Feb 1 23:10:11 2025 +0800 kernel: consider gki modules when running depmod for vendor modules Change-Id: I6c2367b7d93a866039c15d4ace7baeb937cb490e commit 94e23201e4bb06188cc63d817d9edc76bd2331e4 Author: Aaron Kling <webgeek1234@gmail.com> Date: Sun Jul 7 16:29:49 2024 -0500 kernel: Add kernel modules to partition file list This is required to ensure that kernel modules end up on the final partition images when `BUILD_BROKEN_INCORRECT_PARTITION_IMAGES` environment variable or board config variable is not set. See https://android.googlesource.com/platform/build/+/152cdfab7c2a02a64b24a706566183d863db7a38 for more information. Co-authored-by: Bruno Martins <bgcngm@gmail.com> Change-Id: I8b6040e03589bde2af4e161c891ded237a9bb335 commit 00b6dea746ab1314956d89aa660a200b2d806a5b Author: Aaron Kling <webgeek1234@gmail.com> Date: Wed Dec 20 14:44:45 2023 -0600 kernel: Support kernel modules via kbuild TARGET_EXTERNAL_KERNEL_MODULES variable is used for the list of modules, same as the existing functionality, but is invoked if ':kbuild' is appended to a module name Existing external module build calls make in the module directory, which is a standalone module build. The module makefile may chain to kbuild, but that depends on the module. This addition invokes the kernel build system, passing the module directory via the M= param, which is the kernel standard for building out of tree modules. Change-Id: I38a582952f79f7155cdbf8a5975cf23074bbdab0 commit 191a4dd724f07724b0cda71bdb10b5c83d2500a7 Author: Bruno Martins <bgcngm@gmail.com> Date: Sat Sep 9 15:56:40 2023 +0100 kernel: Handle GKI modules All devices lauching with Android 13 (and above) must include a system_dlkm partition, where GKI modules should reside. Android 13 build system only supports providing prebuilt modules, by pointing BOARD_SYSTEM_DLKM_SRC to the modules source folder. Google will introduce BOARD_SYSTEM_KERNEL_MODULES for Android 14, so take a step forward and use that macro to exclude the listed modules from the usual vendor DLKM partition and place them into the GKI module partition. Note that the GKI modules are placed into lib/modules/androidX-Y.Z, as defined by Google and observed in system_dlkm_modprobe script. Change-Id: I2b1644479788cb5c9568cac738202b1d55fc28d7 commit 307183a6613973f5e27547cb2666a3fee5f10fb2 Author: Aaron Kling <webgeek1234@gmail.com> Date: Mon Mar 24 22:12:32 2025 -0500 kernel: Use correct recovery modules.load variable Originally, BOARD_RECOVERY_RAMDISK_KERNEL_MODULES_LOAD was used, but BOARD_RECOVERY_KERNEL_MODULES_LOAD is what build/make uses. Use the proper variable by default and if it's not set, use the old variable. Change-Id: I3522e4782ae56f67e49b234236fbb86c8ec65b92 commit 686c1d7856641c614317e7a79a205d8dcf7d2d19 Author: Neel Chauhan <neel@neelc.org> Date: Thu Jul 21 09:30:48 2022 -0700 kernel.mk: Allow building external kernel modules Here, we introduce the TARGET_EXTERNAL_KERNEL_MODULES variable for the list of external modules. Change-Id: I1f8b7a48e66bb0c9efbc396692e5a7159f0b835c commit a3aa108f45abc307823812a3fad57aa34af710c6 Author: LuK1337 <priv.luk@gmail.com> Date: Sat Nov 11 23:54:12 2023 +0100 kernel: Make INTERNAL_VENDOR_RAMDISK_TARGET depend on kernel This lets us package kernel modules into recovery ramdisk inside vendor_boot. Change-Id: I274bc95ce8682e2f13a595174ab279c129866f6a commit dc22cf2ad606e427e65d6b9dd259225d2915f141 Author: Aaron Kling <webgeek1234@gmail.com> Date: Thu Apr 17 12:11:12 2025 -0500 kernel: Stop warnings for prebuilt kernel platform If both prebuilt kernel and prebuilt kernel headers are provided, assume that they match. Change-Id: I8818659bd4642aa20260ff638d4a0c3f2b56a463 commit cf3d3f1029bbaaa556e4f5c6347a71cc07bd790c Author: SGCMarkus <markusornik@gmail.com> Date: Fri Sep 15 19:08:00 2023 +0200 kernel: Allow to limit the used .dtb files for the final DTB image On some devices too many .dtb files are generated. Instead of taking all of them, allow to only take selected .dtb files for the final DTB image. Example: Motorola Edge 40 Pro (rtwo, sm8550) generates the following: obj/DTB_OBJ/out/kaka-rumi.dtb obj/DTB_OBJ/out/kalama-rtwo-base-kalama-rtwo-evb1-overlay.dtb obj/DTB_OBJ/out/kalama-rtwo-base-kalama-rtwo-evt1-overlay.dtb obj/DTB_OBJ/out/kalama-rtwo-base-kalama-rtwo-na-vzw-evt2-overlay.dtb obj/DTB_OBJ/out/kalama-rtwo-base-kalama-rtwo-prc-dvt1b-overlay.dtb obj/DTB_OBJ/out/kalama-rtwo-base-kalama-rtwo-prc-pvt-overlay.dtb obj/DTB_OBJ/out/kalama-rtwo-base-kalama-rtwo-row-dvt1b-overlay.dtb obj/DTB_OBJ/out/kalama-rtwo-base.dtb obj/DTB_OBJ/out/kalama-v2-rtwo-base-kalama-rtwo-evb1-overlay.dtb obj/DTB_OBJ/out/kalama-v2-rtwo-base-kalama-rtwo-evt1-overlay.dtb obj/DTB_OBJ/out/kalama-v2-rtwo-base-kalama-rtwo-na-vzw-evt2-overlay.dtb obj/DTB_OBJ/out/kalama-v2-rtwo-base-kalama-rtwo-prc-dvt1b-overlay.dtb obj/DTB_OBJ/out/kalama-v2-rtwo-base-kalama-rtwo-prc-pvt-overlay.dtb obj/DTB_OBJ/out/kalama-v2-rtwo-base-kalama-rtwo-row-dvt1b-overlay.dtb obj/DTB_OBJ/out/kalama-v2-rtwo-base.dtb with only kalama-rtwo-base.dtb and kalama-v2-rtwo-base.dtb needed. Disabling compilation of the other kalama.dtb isn't possible, as this would also disable the compilation of the needed .dtbo files. Because they are earlier in alphabetical order, and the matching board ids, the bootloader ends up selecting those, instead of the correct ones. This results in USB (and possible other things) to not work. Change-Id: I486b6ec538a3e4906b5b8aa5ecb355b480b60de7 commit 689135bba20cc8fdb742b50480f0cc7530c8cecf Author: Aaron Kling <webgeek1234@gmail.com> Date: Sun Aug 20 15:32:58 2023 -0500 kernel: Support Qualcomm merge_dtbs script Script from clo kernel/build at kernel.lnx.5.10.r1-rel Change-Id: Ia90975c895644b86d9f861ddd5a18b7cf6ce1470 commit 4c7a8909e93f8f9ada6851cb78dd48f9973e4f2c Author: Michael Bestas <mkbestas@lineageos.org> Date: Mon Sep 30 18:47:04 2024 +0300 kernel: Nuke --cuda-path/--hip-path Revert "kernel: Check HIP support of clang before disabling it" This reverts commit 62c1374385b31f33e1ca02d394bc8d6f5ede97a6. Revert "kernel: Force disable LLVM HIP" This reverts commit ef68678120f9b4e77a119294cdb93f47b85e4b09. Revert "kernel: Force disable LLVM CUDA" This reverts commit ba14020f85e6923c0c983ba1a916d0931f11541e. Change-Id: I5cb2b4624eb0ec25dbc8c1b5888708d961ae59d7 commit dc4f4dc78205064559a0a2f88c3202474295ee41 Author: Sebastiano Barezzi <seba@sebaubuntu.dev> Date: Fri Jul 12 03:10:44 2024 +0200 kernel: Better x86 support - Mention the right kernel image on documentation - Build dtbs only when the dts folder exists, Google enables CONFIG_OF on x86_64 GKI config, this is also the same check done on Linux Makefile Change-Id: I1b0f7a39b0b00f2a4516d2cff79e591136ee3af8 commit c085ffb985b6ecb76fa7ffc56778e0bbeaaff29d Author: Yumi Yukimura <me.cafebabe@gmail.com> Date: Tue Jan 9 15:53:23 2024 +0800 kernel: Add support to append DTBs to kernel image * Many Qualcomm targets that uses boot header v0 or v1 have the DTBs appended to the end of kernel image. * In downstream msm kernels up to msm-4.19, Appending DTBs is handled in the kernel tree. However, on msm-5.4 and newer msm kernels, and on mainline kernel, This is not supported. * Normally, DTB processing depends on how the bootloader loads it and should not be handled in the kernel tree, so we handle it here. * Instead of appending all DTBs by default, Get the list of DTBs that needs to be included from a variable, so that we don't need to modify dts Makefile to exclude unwanted DTBs, and we could also ensure the DTBs are appended in a specific order. Change-Id: I603d1ebac5ee808bad045b85f9868d572d52cb80 commit 3a648d993c208ded6a86f7f288810bb5aba375d1 Author: Michael Bestas <mkbestas@lineageos.org> Date: Tue May 27 18:18:52 2025 +0300 Revert "Add product_launched_with_j{,_mr1,mr2}.mk" This reverts commit c756f6051fafee5c9b0aebb4fdf217caadc3bd70. Reason for revert: Dead. Change-Id: Ia4f1e45d18459004625c38754440c018333a3452 commit 8b64471c11db371583f00651d16cd5a848343d56 Author: Julian Veit <claymore1298@gmail.com> Date: Mon May 26 17:38:00 2025 +0200 Revert "vendor: soong: Add camera_needs_client_info" This reverts commit 6fa93e54a8f06b6989f9fa93130f50dd177712f5. Change-Id: I1eaecd2958fe9c541762cbb847743dbb7c7e7465 commit 918ed3bc009862949460ded5b2c5e98089186f76 Author: Michael Bestas <mkbestas@lineageos.org> Date: Wed Mar 26 20:06:00 2025 +0200 soong: Move QTI gralloc configs to select() Change-Id: Icb28d5c2aa5d51860799b87b7b9b04c48014f7f4 commit 9ba8871670c4782d69c7e274ce1ff46ec3cb037f Author: LuK1337 <priv.luk@gmail.com> Date: Wed Oct 30 08:37:45 2024 +0100 soong: Remove LD_SHIM_LIBS support Change-Id: I4a45fdd9a140a95aa42861bf294bfb8e8bb91f34 commit cdd3159ebae6d2e0b91eedb717f10b9cccf23376 Author: Julian Veit <claymore1298@gmail.com> Date: Mon May 26 17:22:32 2025 +0200 Revert "vendor: soong: Optionally disable Bluetooth LE" This reverts commit 37debbfe04e15caf0b445a420250e1dfa52eb319. Change-Id: I627e9859e86b662fa91d8051f1bfe6a40bb6acd0 commit 4b3e4908b427652b48fb3c1fbe419b6394d68af7 Author: Julian Veit <claymore1298@gmail.com> Date: Mon May 26 17:09:24 2025 +0200 Revert "soong: Conditionally spoof ro.product.first_api_level to 32 [1/2]" This reverts commit a57872d11f0edab694ac9ab85481ecc4f77bcbbb. Change-Id: I663f50a5ee5e76c4b0d966a7fb5ff80980888dbd commit 6bc95dbf2f85f1a91a4c0f6a80f156ced6443378 Author: Michael Bestas <mkbestas@lineageos.org> Date: Fri Apr 25 00:11:03 2025 +0300 config: Move camera override format from reserved to select() Change-Id: Ic8453eb9ef5fcd5b9bbfe22a8bb8100be2644e2d commit 29a17bf237e6b43a79a31fa3d34b89e81d22f023 Author: Michael Bestas <mkbestas@lineageos.org> Date: Thu Apr 24 23:28:44 2025 +0300 config: Move bootloader message offset to select() Change-Id: Ic97af638005c299963d0aaa39e04227dcbca8751 commit b58f1c8dc836ed764d7badb6cd04caad2cb84f60 Author: Michael Bestas <mkbestas@lineageos.org> Date: Thu Apr 24 23:00:03 2025 +0300 config: Move USB restrictions to select() Change-Id: I0dd6ccca2493ac50019d7d077c25302d62ea4ab3 commit bcd97fd92ac51a6bc53b55e2740631529ccabc39 Author: Michael Bestas <mkbestas@lineageos.org> Date: Thu Apr 24 23:49:46 2025 +0300 config: Move libperfmgr mode extension lib to select() Change-Id: I81ff7c05e9918a6f52f8b1bb7bcf179d3a76d078 commit c9345b77fb2690845c78624d535e5fb3b39a6084 Author: Michael Bestas <mkbestas@lineageos.org> Date: Thu Apr 24 22:50:34 2025 +0300 config: Move Lineage PowerShare HAL to select() Change-Id: If687bda38370e8dc664cef26fbb907202444d049 commit 15a8cfc2c67f09ef41b267a422cc2f4cf4cb34f0 Author: Michael Bestas <mkbestas@lineageos.org> Date: Thu Apr 24 20:43:42 2025 +0300 config: Move Lineage Health HAL to select() Change-Id: Ie7f29e75d812fff0faf27f9c82ca432a78c199fb commit 6669c5f40b16fbc5a8b9b713595067309072d95d Author: Michael Bestas <mkbestas@lineageos.org> Date: Fri Apr 25 00:09:31 2025 +0300 config: Move vendor_init lib to select() Change-Id: Iccda5ad6d1c37a63ff7959bd3887e120ad403d5c commit 52fb1421818335919a76e649627d99796ccc3d48 Author: Michael Bestas <mkbestas@lineageos.org> Date: Thu Apr 24 23:40:03 2025 +0300 config: Move surfaceflinger UDFPS lib to select() Change-Id: Iecf818e3f45811760a2e51156014e4ef6ec6afa7 commit 212943982ea975fe55ec4ea4b4133e00e6f648cb Author: Julian Veit <Claymore1298@gmail.com> Date: Thu May 8 10:29:35 2025 +0200 V are still kicking Change-Id: Id8ba030ea40479aad74da5e9046f0320222a7d7d Signed-off-by: George Zacharia <george.zcharia@gmail.com> commit 64e3e8f0eba8c382f40ce297332fb54d3c44b238 Author: Michael Bestas <mkbestas@gmail.com> Date: Thu Sep 12 03:51:01 2024 +0300 build: Move version & legal properties to PRODUCT_SYSTEM_PROPERTIES ADDITIONAL_SYSTEM_PROPERTIES is being deprecated. No functional changes. Change-Id: I01fd45edcc6c700540d3b7352fc466e65677a44e commit e7d5f4e4e4fbd845fd6e7bd785c4d961c89a6b59 Author: Michael Bestas <mkbestas@gmail.com> Date: Fri Sep 6 19:02:31 2024 +0300 soong: generator: Update for 15 Change-Id: I6f5be3f06f282b036cee5c2a884f1082f698bcaf commit 5933d16d0f68a6564914d5cdf306e1328a939c81 Author: Bruno Martins <bgcngm@gmail.com> Date: Wed Oct 25 00:53:43 2023 +0100 lineage: Move all QCOM board configs to hardware/qcom-caf/common Change-Id: I6ead35cf884255a8897a3e3e27fc7936d11be616 commit 6e704027f4be87af7791b20a88d47c0f896dfa83 Author: Michael Bestas <mkbestas@lineageos.org> Date: Wed Mar 26 19:01:54 2025 +0200 soong: move nvidia enhancements config to select Original flag is still used by device specific makefile guards. Change-Id: I528ee2a2a25680994561e4c3fc377f7b57106a89 commit 0df23a7986ad3caf85669d0e24ad8e20abf74883 Author: Michael Bestas <mkbestas@lineageos.org> Date: Wed Mar 26 19:25:20 2025 +0200 soong: move EGL display array config to select Change-Id: Ia03dd6b49637ed3b7432df26824fcbf01d92106b commit 722bcba04aae18ec869fc506269fca78a19d539b Author: Michael Bestas <mkbestas@lineageos.org> Date: Wed Mar 26 19:00:38 2025 +0200 soong: move QTI surfaceflinger config to select Change-Id: If98ed6feb18a5dea66857e507c5e4a369baa5a8b commit 4f18128b0d4b0b8a03f345f9c8c74eda771f945f Author: Michael Bestas <mkbestas@lineageos.org> Date: Wed Mar 26 11:40:16 2025 +0200 soong: drop librmnetctl config Flag hasn't been ported since lineage-19.1. Change-Id: I2078d19cc80e4b64b86e2aab0bd68d7ee0f14224 commit 9b3ab1039de767406dcd502b71b380329342249f Author: Michael Bestas <mkbestas@lineageos.org> Date: Wed Mar 26 11:30:53 2025 +0200 soong: move extended compress format config to select Change-Id: Id56bad89607cd2961a571c148ec40e9334f0a6ce commit eb404d510db441f7c70eb54e7638e749e1f0e100 Author: Cosmin Tanislav <demonsingur@gmail.com> Date: Sun Mar 2 20:15:45 2025 +0200 soong: move vibrator effect stream config to select Change-Id: I341733b822e7de2dd109eaa16910ad3357a1dfc6 commit 5c44a336f989336d096e99d5195f6f5a65daf6d0 Author: borbelyvince <borbely.vince.11@gmail.com> Date: Fri Feb 7 18:47:02 2025 +0100 Revert "config: Changes for libfmjni bp conversion" This reverts commit d6777fa812d257b276985889a33f2fb5d41a577b. Reason for revert: The soong namespaces can be removed after reworking libfmjni to use select() with filegroups and header libs for qcom/slsi. Broadcom is not used in any recent shipping device and mtk can continue using prebuilt for now. Change-Id: I078b321c7c55c3d7e5cd97e2664208c3d44f513a commit d0e450ac46a8d42c6a5aeb72987a9d1f919171c6 Author: LuK1337 <priv.luk@gmail.com> Date: Thu Mar 6 10:06:43 2025 +0100 soong: generator: Update for BP1A Change-Id: Icd8b04d2297a12a1dbbee1713e495949b7b2379a commit 037462503605fdb3462bf5bcc07f16373d961568 Author: LuK1337 <priv.luk@gmail.com> Date: Sun Jan 19 01:18:19 2025 +0100 soong: Make mkdir install dir optional This prevents overriding commands error when device doesn't have it in PRODUCT_PACKAGES. Change-Id: Id4924ffe60d18ea54eb7c4dfa0d270ed2b00cef7 commit 963ea86e5d0ffd6f0883be869f1ae8df6ac98008 Author: Luca Stefani <luca.stefani.ge1@gmail.com> Date: Fri Jan 17 22:05:52 2025 +0100 soong: Add mkdir module Co-authored-by: LuK1337 <priv.luk@gmail.com> Change-Id: I7b98cf5b120817a271036fca3aa0582d77861993 commit a2881b495c08afe4d63bcffba000c9ada81761c4 Author: Michael Bestas <mikeioannina@gmail.com> Date: Fri Dec 6 19:36:35 2024 +0200 soong: generator: Update for AP4A Change-Id: I57d820cd25fa8fa4557f671510c39bfe9923845d commit 6bbb80a4a513e639347d037e864fb78235de3744 Author: Luca Stefani <luca.stefani.ge1@gmail.com> Date: Fri Nov 22 17:59:03 2024 +0100 Zap aapt_version_code_defaults It was caused by package-cache in case Build.VERSION.INCREMENTAL doesn't change across builds, which is always the case for local builds, exporting BUILD_NUMBER to something != eng.$USER will fix it the next build. Change-Id: Ic602197e6711ced511a0b102b1140c5db4ec8397 commit 3990308a272d3d328e757bc89a4481929b17a4bb Author: Michael Bestas <mkbestas@lineageos.org> Date: Mon Sep 9 10:19:31 2024 +0300 build: Switch to _get_build_var_cached Change-Id: Id53622f5ce7de406f66b8374c3e91604deb4742b commit 7a3b5241eb6bc7ff844bb475c176327123660258 Author: Michael Bestas <mkbestas@lineageos.org> Date: Mon Sep 9 08:34:41 2024 +0300 build: Import check_product from lineage-21.0 build/make Change-Id: I6cb2856bbc15bc25fc3ad6a4c1a6aa6aa56057f1 commit be1a397f01bac578d6a84fa1da3bca7b2271cb9b Author: Dhina17 <dhinalogu@gmail.com> Date: Wed Jul 10 18:32:14 2024 +0530 envsetup: dopush: Update regex to match remaining build time QPR2 introduced remaining build time in the progress box [0] but it was broken with tee cmd so dopush() was worked fine. Now, QPR3 fixed that issue so dopush() is broken. Example: [ 99% 394/395 1m30s remaining] Copy: out/target/product/devon/apex/art_boot_images/javalib/arm/boot.art [100% 395/395 1m30s remaining] Install: out/target/product/devon/system/framework/framework.jar Change-Id: Ifdfcfe0f750d39f4e3fe7d669e5094729d75e224 commit d46c0cd24919894324f1d80f7e47c223bfe76620 Author: Michael Bestas <mkbestas@lineageos.org> Date: Fri Oct 18 19:57:45 2024 +0300 config: Changes for libfmjni bp conversion Change-Id: I666bdc4c1d0cdab4d2557c07f32466cceabe8439 commit a57872d11f0edab694ac9ab85481ecc4f77bcbbb Author: AnierinB <anierin@evolution-x.org> Date: Fri Jul 19 18:09:00 2024 +0000 soong: Conditionally spoof ro.product.first_api_level to 32 [1/2] Devices that shipped on API 33 or higher need to set ro.product.first_api_level to 32 in order to pass integrity. Set SPOOF_FIRST_API_LEVEL_32 := true in BoardConfig*.mk to enable. Change-Id: I4478f228c0ee4e442100df2d99563be8ca41b9e0 Signed-off-by: AnierinB <anierin@evolution-x.org> Signed-off-by: Jackeagle <jackeagle102@gmail.com> commit f14e49a29ab6bbeadecfcdebc7a67eb6dff052c1 Author: Cosmin Tanislav <demonsingur@gmail.com> Date: Thu Aug 22 13:25:31 2024 +0300 soong: add powershare configs Change-Id: Ia0654765e45b9b36caca680eac134c714dcb4da0 commit 99103337dc6b633a91ad45a5a489f406b8a10c86 Author: LuK1337 <priv.luk@gmail.com> Date: Mon Dec 11 01:33:44 2023 +0100 build: Add macro for sha1 checked add-radio-file This makes it slightly safer in case radio/*.img contains LFS pointer instead of actual blob. Change-Id: Ia3561400c62675eac9f717f7eae74e4cdf71cf45 commit 0207a348926494a45faf53f632e1ba290ec7396b Author: Julian Veit <Claymore1298@gmail.com> Date: Sun Jun 30 20:40:10 2024 +0200 kernel.mk: add back RECOVERY_KERNEL_MODULES target Change-Id: Idffe3b6171740642db3816afb3023ef3ca1fee2a commit e5c4902324844c08b454392153a54e97b567c759 Author: LuK1337 <priv.luk@gmail.com> Date: Sun Dec 24 00:20:33 2023 +0100 bacon: Depend on $(DEFAULT_GOAL) This makes sure that $OUT contains images for all partitions. Test: breakfast tangorpro && m bacon && ls $OUT/vendor_boot.img Change-Id: Ia59a1fb7d9d1054040453ff2e7954ea6d7c61fde commit fa0f4db599cbbea77cdd1dd6e2901dc5aa745a2a Author: Arian <arian.kulmer@web.de> Date: Sat May 18 15:40:29 2024 +0200 soong: Add power libperfmgr extension config Change-Id: I401335a1851948bae8de42d0f86af4763dd795b3 commit de32553732b4c01efcc575a48ad45bd89bc99f7f Author: LuK1337 <priv.luk@gmail.com> Date: Thu Mar 7 10:31:13 2024 +0100 kernel: Add clean headers script to workaround conflicts with bionic After the "Avoid multiple definitions of sigaction." change in bionic, we ought to modify our kernel headers to make sure that sigaction struct is not present in uapi headers. Change-Id: I15645480e013e79cbcafaac99253368b646b6b11 commit 4dda2cd005cb7c9266b2f8734b7873720b8fe25c Author: basamaryan <basam.aryan@gmail.com> Date: Thu Oct 5 14:17:47 2023 +0200 kernel: Rename mkdtboimg.py * Changed in https://android-review.googlesource.com/q/topic:%22colefaust_rename_mkdtboimg%22 Change-Id: Idd2ade7035c79207321ecbc70d6a4ddf9f4ed600 commit 2cf39cf390b28a6db21b7cc0746a39b0abe905e1 Author: Michael Bestas <mkbestas@lineageos.org> Date: Fri Oct 20 01:47:13 2023 +0300 Hookup GRALLOC_HANDLE_HAS_UBWCP_FORMAT The gralloc struct has been conditionally adjusted not to break blobs that use the old struct. Change-Id: I4dd1d1890ad08364d5315386ab830ce9e0edd041 commit 91b2a463088f4224a5a367f0e41f9ba63ef6bef3 Author: Michael Bestas <mkbestas@gmail.com> Date: Thu Feb 24 12:27:50 2022 +0200 build: Provide qti_kernel_headers module Change-Id: Ifbe76bf4e08fe6671886d83dde084381ebeda180 commit 80ad487a355375d99eb28d075b1227a374df47a9 Author: Michael Bestas <mkbestas@gmail.com> Date: Wed Mar 6 12:57:32 2024 +0200 envsetup: Fix breakfast Change-Id: I9742638765f323876bffcdd0d9c1131d28a54614 commit fca645cb57d7b56cd58629d52b3c6bb4ed3693cd Author: George Zacharia <george.zcharia@gmail.com> Date: Fri Apr 26 09:11:59 2024 +0530 vendor_aicp: Prepare for UpsideDownCake Change-Id: I0a21c7e8f324968ff763ab7a528cf99f3430725e commit 7db651814dd346479410c53f7b6c0e805cfe0d9d Author: Arian <arian.kulmer@web.de> Date: Sat Nov 4 10:49:49 2023 +0100 soong: Add qti vibrator effect stream config Change-Id: I87b08a02f91a941d22dab5d1acb9bfbbce06f03b commit d763ade6d8e7749d9d81505853a862c8f4032025 Author: Rohit Sekhar <git@merothh.com> Date: Tue Sep 19 15:48:20 2023 +0530 vendor/aicp: Hookup TARGET_CAMERA_OVERRIDE_FORMAT_FROM_RESERVED Change-Id: I67b87e98b65300df9a63ddd6d316ae4dd33ab427 commit 2676395bd312694edccda1c2b44b863381e6ef95 Author: Bruno Martins <bgcngm@gmail.com> Date: Thu Apr 27 09:53:38 2023 +0100 qcom: Add support for kalama platform Change-Id: I393c3c1ca398b5b34d7b9d8a76ccdf8af329957c commit abc505c370fe885ba296537233b0f0caf2d4054d Author: Bruno Martins <bgcngm@gmail.com> Date: Tue May 16 21:40:28 2023 +0100 Hookup GRALLOC_HANDLE_HAS_CUSTOM_CONTENT_MD_RESERVED_SIZE The gralloc struct has been conditionally adjusted not to break blobs that use the old struct. So far only GRALLOC_HANDLE_HAS_RESERVED_SIZE was hooked up for Google Pixels, but it's now time to hook up the remaining flag. Change-Id: I175bd328bd9733b9487e349f7a8486f15ef0a450 commit 9006fff12e245b445bc7fb4e59f99eaa3040682e Author: Ralf Luther <luther.ralf@gmail.com> Date: Sat Jul 1 11:42:18 2023 +0200 soong: Add `aapt_version_code` default This appends `--version_code=$(date -u +%Y%m%d)` to aapt flags, which is useful for flushing some caches upon system updates. reference: https://review.lineageos.org/c/LineageOS/android_vendor_lineage/+/359115 Original author: "Ɓukasz Patron <priv.luk@gmail.com>" Change-Id: I9e3bdc6fa1cfd1903d7c6705ae6426f710ecf9e2 commit d20eaef78fdc35aeeff7204209774b68f38cc91c Author: Luofan Chen <clfbbn@gmail.com> Date: Fri May 5 10:54:14 2023 +0800 soong: Add TARGET_HEALTH_CHARGING_CONTROL related configs To specify the charging control allowed modes: TARGET_HEALTH_CHARGING_CONTROL_SUPPORTS_{BYPASS,DEADLINE,TOGGLE}, To specify the charging control paths: TARGET_HEALTH_CHARGING_CONTROL_{CHARGING_PATH,DEADLINE_PATH}, To specify data written to TARGET_HEALTH_CHARGING_CONTROL_CHARGING_PATH: TARGET_HEALTH_CHARGING_CONTROL_CHARGING_{ENABLE,DISABLE} Change-Id: I88831c84966f82648c8ca60de5abb34416140f6c commit 49284c1c1a908d4f295a20c2359257f51a02a771 Author: Chirayu Desai <chirayudesai1@gmail.com> Date: Sat May 27 05:14:32 2023 +0530 repopick: Don't ignore change status for query mode (-Q) * Why not just use force with it if you really want to pick abandoned changes? * Avoids surprises Change-Id: I7420e1c37cc127d1f74539d5685bd9bf77be44c3 commit faf81032802812a05df9cb382520cb7b46f1d277 Author: Michael Bestas <mkbestas@lineageos.org> Date: Mon Apr 17 19:29:41 2023 +0300 envsetup: aospremote: Take .gitupstream into account Adapt function for .gitupstream so we always get the correct remote without needing to calculate the path manually. Test: Run `aospremote` in `kernel/configs` repository. Change-Id: Idcac37ded4a5b2d62d26dc01dd7d68039def6220 commit 5b700fe506e6e62bf83f5416636388dc3062b135 Author: Nolen Johnson <johnsonnolen@gmail.com> Date: Sat Mar 18 00:31:32 2023 -0400 soong: Bring bootloader_message_offset back This is squashed revert of: Revert "config: Remove BOOTLOADER_MESSAGE_OFFSET" This reverts commit a8bbd0e4aa41915818774984e04c977afe234498. Change-Id: I66df34e901e87e543102377469a150a9bf03e5b8 Revert "Revert "soong: Export bootloader_message_offset to dependencies"" This reverts commit d0b4f9894add43e5caa8720575391e781cab2cf2. Reason for revert: Bringing this back, LGE 8996 lives. Change-Id: Iae68fee53ba647d8c64c54388e7296232adf4db8 Change-Id: I358d8e19f2d4da590c9579c1473b5f1964bb71aa commit d731ed3e874b7cbb5608963a4d19deccd00b8a10 Author: dianlujitao <dianlujitao@lineageos.org> Date: Thu Mar 2 20:29:25 2023 +0800 kernel: Check HIP support of clang before disabling it Old clang releases don't support --hip-path, so passing this flag will break the build. Change-Id: If36defb0e74893581849700fb67e6aa4617908a8 commit 6fa0075ae1f5c38a3268165273ce08dd82c8b4ec Author: dianlujitao <dianlujitao@lineageos.org> Date: Wed Mar 1 23:06:18 2023 +0800 kernel: Force disable LLVM HIP Gets rid of the following from clang -v: ``` Found HIP installation: /opt/rocm, version 5.4.22804 ``` Change-Id: Ic58b3fb2dd67d345372bec7f5d2cf023ed2fb34d commit bb06ebdd6331b00ee5f08bc1c3ac8ae9cfa6b018 Merge: 94df8dda 37debbfe Author: Ronny Horn <ronny.horn.rh@gmail.com> Date: Mon Feb 13 19:54:57 2023 +0100 Merge "vendor: soong: Optionally disable Bluetooth LE" into t13.0 commit d1ef01e0cbfed21856241236b80fa798dd72d42d Author: Arian <arian.kulmer@web.de> Date: Mon Apr 4 14:31:44 2022 +0200 qcom: Add taro platform Change-Id: I96e3bbccc306817986c6f039a57fd1daa94e7f2d commit 37debbfe04e15caf0b445a420250e1dfa52eb319 Author: Kujou Yuko <i@779.moe> Date: Sun Nov 13 13:17:03 2022 +0800 vendor: soong: Optionally disable Bluetooth LE READ_BUFFER_SIZE_V2 and SET_HOST_FEATURE Signed-off-by: Kujou Yuko <i@779.moe> Change-Id: I4c2fa81f67b24f60b625bd7f5d23146d63985fd4 commit ce4caf34ce61d24392ff150a31739c151ebdf156 Author: Alessandro Astone <ales.astone@gmail.com> Date: Sat Dec 31 22:08:16 2022 +0100 kernel: Force disable LLVM CUDA The kernel tries to define the LINUX_COMPILER macro from the output of `$(CC) -v | grep ' version '`, but in clang that might produce more than one line containing ' version ' when CUDA is installed: ``` Android (8490178, based on r450784d) clang version 14.0.6 Found CUDA installation: /usr/local/cuda, version 11.0 ``` That causes the macro to expand into multiple lines, upsetting the compiler that cannot find the ending double quote. In upstream linux this is fixed from v5.8 Change-Id: Icde4253e989df1cbbefc0ce98f437d16822fc93b commit 057bc18488058f8a65d9021833a4d4533dc2c92c Author: SahilSonar <sss.sonar2003@gmail.com> Date: Wed Feb 9 11:44:09 2022 +0100 qcom: Add holi platform Change-Id: I1f41059c385a37bef71bd7d8ee34739d8bcca77a commit f39fe343123002374de2488b8fb2f0ae0939ec8f Author: George Zacharia <george.zcharia@gmail.com> Date: Wed Jan 18 21:11:32 2023 +0300 vendor_aicp: drop LoS recovery additions ** not needed after https://gerrit.aicp-rom.com/q/topic:13-recovery topic Change-Id: Ic0fe784f7683fcf627cad1609d46f009854b2b38 commit fab913c89ecaf644d504258ccf1fc36354887092 Author: Michael Bestas <mkbestas@lineageos.org> Date: Mon Nov 14 13:09:00 2022 +0200 kernel: Allow devices to opt-in for full LLVM build android11-5.4 kernel can fully compile with LLVM with a few cherrypicks from android12-5.4 and android12-5.10 Change-Id: Ib71935d284ad78f1c23d039c15bfc5e0314a19eb commit 820535d1ada913d68c1db6c89250d44936bccda5 Author: Michael Bestas <mkbestas@lineageos.org> Date: Fri Nov 4 02:12:03 2022 +0200 kernel: Support copying modules to vendor_kernel_boot Test: Build gs201 with source built kernel/modules, boot. Change-Id: Ie66400ddd44cfd249e1b4710f4d1c4efa32389a4 commit 95a7d2ecafe662727f0bde1f9784f872a9171d2f Author: Michael Bestas <mkbestas@lineageos.org> Date: Tue Nov 1 15:01:22 2022 +0200 kernel: Remove TARGET_KERNEL_MODULES error This has been an error for 3 years now, plus it has not been functional for even more years. Change-Id: I8b12e8d08847ba119d2904f90766105367025d9c commit 670ee5cb7246cce63fe2ed5a954520e1663bfab7 Author: Michael Bestas <mkbestas@lineageos.org> Date: Tue Nov 1 14:57:41 2022 +0200 kernel: Only add GCC to PATH when using GNU binutils Change-Id: Ia842ed409145a81a92077dde5d6e9749a057f047 commit 7150e0e1ac6895828d591f4f07383f018767ab1e Author: Michael Bestas <mkbestas@lineageos.org> Date: Tue Nov 1 14:48:50 2022 +0200 kernel: Override LD_LIBRARY_PATH only on <5.10 5.10 doesn't need LD_LIBRARY_PATH set Change-Id: I5f6e732610f947d50b47e238d6a42365396b18ad commit b1ed39e71d28b5dd614532ee3ec0865102dc84d6 Author: Michael Bestas <mkbestas@lineageos.org> Date: Tue Nov 1 14:41:42 2022 +0200 kernel: Fix clang version override Change-Id: I18fceeeeab5426f55a73d0cb8d72abd5f40c67ec commit 86681b7e3592df1458409953e02863b6450824e3 Author: Tim Zimmermann <tim@linux4.de> Date: Thu Jul 14 21:25:36 2022 +0200 kernel: Support building dtbimage with mkdtboimg.py config Change-Id: Ic0efbf0308e334c1cfe0df0493caa71afe27a621 commit e08e3a1f509606e8669a74c3acf42036aec74ca9 Author: Michael Bestas <mkbestas@lineageos.org> Date: Sat Sep 10 23:19:55 2022 +0300 kernel: Changes for 5.10 build without GCC Change-Id: Id6e09467937e60e6b00a30a246ba0a4a8d71687b commit f5a532a7e2780549a42d216cb72ff5ed2e533ef3 Author: Michael Bestas <mkbestas@lineageos.org> Date: Tue Aug 30 03:13:24 2022 +0300 config: Remove TARGET_CAMERA_BOOTTIME_TIMESTAMP This is no longer needed in T Change-Id: Id14c88a548c14a8c26858a13f262f355ba72745e commit ebbbbabc41e28b35f2d4e47179684e8fdaba59aa Merge: 548a74e4 f6bac5fe Author: Semavi Ulusoy <doc.divxm@gmail.com> Date: Tue Oct 18 19:57:58 2022 +0200 Merge "QCOM: RIP pre-UM families" into t13.0 commit 548a74e4b85d54ffe4203cf2a7c319ad7f7a7e29 Author: Aaron Kling <webgeek1234@gmail.com> Date: Mon Oct 17 00:17:13 2022 -0500 kernel: Add support for custom dtbimage generation rules Change-Id: I79d67f9f40ef3f0970d0e29393d00600b57e337b commit f6bac5fe50989fec4c0db3d7ba610e6e7bf61cdd Author: Michael Bestas <mkbestas@lineageos.org> Date: Tue Sep 13 03:10:38 2022 +0300 QCOM: RIP pre-UM families Change-Id: I36e88d74928303ef13334e5feb3d4d3a98c25bd3 commit beeec66bcb9932199a244ec8ab75b06d408fde0c Author: Chirayu Desai <chirayudesai1@gmail.com> Date: Tue Sep 20 01:50:17 2022 +0530 fixup! Hookup GRALLOC_HANDLE_HAS_RESERVED_SIZE Change-Id: Id12058a238c241acb138e3e419bb0bab8280e51b commit 0a073e82c223ef0d17adbbd3c59983202842b094 Author: Chirayu Desai <chirayudesai1@gmail.com> Date: Sat Sep 17 04:47:54 2022 +0530 Hookup GRALLOC_HANDLE_HAS_RESERVED_SIZE * Needed for camera on redbull 13 Change-Id: Ibc1d941f8a6e5e61e3a56cb0065e387022fa3441 commit 914cbf419feb8e223cc13b6dd2551177a5127840 Author: Luca Stefani <luca.stefani.ge1@gmail.com> Date: Mon Sep 12 17:55:12 2022 -0400 kernel: Allow passing empty DTB to mkbootimg via board-flag * Boot Image header v2 demands a DTB be passed by default. * We don't /need/ one at all, as we have and use a dedicated DTB partition. * Signing hates trying to find dtb.img anywhere for some magical reason, so cheat and introduce a flag to include a blank one. Change-Id: I889ce3815476a55829870b30de1b9210283a79ae (cherry picked from commit fa16b42ddd1eb341f201b8d810c717ea12afe1cb) commit 24e3c0d03516eaf10e174d05a57d5306f54a15d0 Author: Michael Bestas <mkbestas@lineageos.org> Date: Sun Aug 28 16:44:19 2022 +0300 kernel: Changes for LLVM binutils * Remove KERNEL_LD from kernel.mk, we simply set LD in BoardConfigKernel * Add llvm-ar in path allowlist (used by LTO) Change-Id: I76addb6f9d8d413edb1832dba23082ffb6d5ebc3 commit 372470238f92b1bc7cb3690a963b784abe03624f Author: Semavi Ulusoy <doc.divxm@gmail.com> Date: Sat Sep 3 11:43:39 2022 +0300 vendor_aicp: clang things: get inline with LoS Change-Id: Ib66106f3d85450dfa70c557b0dd131359934cd6e commit 7d2818ef35d3f04e55060c2f9ecc331e77d882c4 Merge: 48738f9d 64c12cad Author: Semavi Ulusoy <doc.divxm@gmail.com> Date: Sat Sep 3 21:26:37 2022 +0200 Merge changes Ie3d798a0,I3024e503,Ib1bca251,I2946fdb0,I2aff9bb7, ... into t13.0 * changes: config: Remove BOOTLOADER_MESSAGE_OFFSET config: Remove TARGET_PROCESS_SDK_VERSION_OVERRIDE config: Remove TARGET_DISABLE_POSTRENDER_CLEANUP config: Remove TARGET_NEEDS_NETD_DIRECT_CONNECT_RULE config: Remove TARGET_IGNORES_FTP_PPTP_CONNTRACK_FAILURE config: Remove TARGET_HAS_MEMFD_BACKPORT config: Remove TARGET_SPECIFIC_CAMERA_PARAMETER_LIBRARY config: Remove TARGET_HAS_LEGACY_CAMERA_HAL1 config: Remove TARGET_USES_QCOM_BSP_LEGACY config: Remove QCOM HW FDE setup config: RIP QTI BT stack commit 48738f9d242e60b8c44a19bedb01e12e168ec6ea Author: Arian <arian.kulmer@web.de> Date: Wed Aug 17 19:28:53 2022 +0200 soong: generator: Replace android.SourceDepTag usage with IsSourceDepTagWithOutputTag Change-Id: Iad5d9a07d06a7efda233cc8d3387e8db5c3b0ab5 commit 64c12cad33392dd50f6efba563615079f7702713 Author: Michael Bestas <mkbestas@lineageos.org> Date: Tue Aug 30 03:08:53 2022 +0300 config: Remove BOOTLOADER_MESSAGE_OFFSET This hasn't been ported after lineage-18.1 Change-Id: Ie3d798a009a4e0042b767839b39dd6f68695ef2a commit bad5e1f4051a387021c548054bac8ac41eaed64e Author: Michael Bestas <mkbestas@lineageos.org> Date: Tue Aug 30 03:03:26 2022 +0300 config: Remove TARGET_PROCESS_SDK_VERSION_OVERRIDE This hasn't been ported after lineage-18.1 Change-Id: I3024e503e97075d5bfffc41b60da83a445a4e580 commit 29361ff3fe6c849da81b6c72d98d94c3a4feb0ed Author: Michael Bestas <mkbestas@lineageos.org> Date: Tue Aug 30 03:00:53 2022 +0300 config: Remove TARGET_DISABLE_POSTRENDER_CLEANUP This hasn't been ported after lineage-18.1 Change-Id: Ib1bca251c6de7529c58ea2fb9b439e37b55be6c5 commit a6fe071cf791b2b65b95f7c43f8b2ef042b3d540 Author: Michael Bestas <mkbestas@lineageos.org> Date: Tue Aug 30 02:59:07 2022 +0300 config: Remove TARGET_NEEDS_NETD_DIRECT_CONNECT_RULE This hasn't been ported after lineage-18.1 Change-Id: I2946fdb08c09a3bfd238d65103869dc89ca2b558 commit 0beaf0b984ed470c8830d01d627ba45aef72075c Author: Michael Bestas <mkbestas@lineageos.org> Date: Tue Aug 30 02:48:39 2022 +0300 config: Remove TARGET_IGNORES_FTP_PPTP_CONNTRACK_FAILURE This hasn't been ported after lineage-17.1 Change-Id: I2aff9bb7bc17fa1444a904d47248d885268bf29b commit b54cebd19e8b15c1416d561ba1fad44c5470833b Author: Michael Bestas <mkbestas@lineageos.org> Date: Tue Aug 30 02:44:38 2022 +0300 config: Remove TARGET_HAS_MEMFD_BACKPORT Change-Id: I17444007429f826bf3d7504cba760204c476e664 commit ded099a2fa64c8235cf79f0136631d3b99e0849f Author: Michael Bestas <mkbestas@lineageos.org> Date: Tue Aug 30 03:07:32 2022 +0300 config: Remove TARGET_SPECIFIC_CAMERA_PARAMETER_LIBRARY This hasn't been ported after lineage-18.1 Change-Id: Ib3ae63ee549b774349268a42923e462a3ef975a0 commit 5faa4622667e74e8505b3245e46c71f40ab910f7 Author: Michael Bestas <mkbestas@lineageos.org> Date: Tue Aug 30 02:43:52 2022 +0300 config: Remove TARGET_HAS_LEGACY_CAMERA_HAL1 Change-Id: I6f4cbe41f6df3ceb6b4058d5b6e77c02e1899809 commit bf220fd96c5dd84684755a706d14b659c45da7dd Author: Michael Bestas <mkbestas@lineageos.org> Date: Tue Aug 30 02:39:47 2022 +0300 config: Remove TARGET_USES_QCOM_BSP_LEGACY Change-Id: I93f111285c46e1a1f811b9d8555de96474d60386 commit c676a3540a7e4377f2c5bf9ad00fdb675e4ff851 Author: Michael Bestas <mkbestas@lineageos.org> Date: Tue Aug 30 02:36:39 2022 +0300 config: Remove QCOM HW FDE setup Change-Id: Ia88a5331e5f3b69a2eea95aa13338f4282779856 commit 02ccf377cf8f7ff4479ff64d65f92a1c7825e209 Author: Semavi Ulusoy <doc.divxm@gmail.com> Date: Thu Sep 1 17:35:07 2022 +0300 vendor_aicp: prepare for Tiramisu Signed-off-by: Julian Veit <claymore1298@gmail.com> Signed-off-by: Semavi Ulusoy <doc.divxm@gmail.com> Change-Id: I23dc126bdd82e4932cbf30dc7f79c5c1673c8f00 commit a274fa35281a1adc803f68e3fbd510148e5a1773 Author: Michael Bestas <mkbestas@lineageos.org> Date: Sat Aug 13 15:14:17 2022 +0300 kernel: Always build dtb targets before dtbo.img Fixes: error: unable to open output file 'arch/arm64/boot/dts/google/devices/bluejay/google-base/.gs101-b0.dtb.dts.tmp': 'No such file or directory' Change-Id: I457062e46062fb3553421d196b432de7d06a49ad commit 419eeecb602c593d5a29ba0c94a185d8ba8dd41c Author: Michael Bestas <mkbestas@lineageos.org> Date: Sat Aug 13 02:56:34 2022 +0300 kernel: Add support for vendor_boot image header version 4 vendor_boot v4 supports packaging multiple "fragmented" vendor ramdisks. A secondary can be used to store the kernel modules instead of storing them in the "normal" vendor_ramdisk. Test: Create a vendor_boot with source built kernel/modules, gs101 still boots. Change-Id: Ic295ccf201c2593e08b9559ae28f80c70a7eb341 commit 5e6c722e04030034ad9cc1f33288debcdbad39b5 Author: Neel Chauhan <neel@neelc.org> Date: Thu Jul 21 09:30:48 2022 -0700 kernel.mk: Allow building external kernel modules Here, we introduce the TARGET_EXTERNAL_KERNEL_MODULES variable for the list of external modules. Change-Id: I1f8b7a48e66bb0c9efbc396692e5a7159f0b835c commit b8fbc2d0dba4c2d5f5c9a85a3de268c453306ffb Author: Michael Bestas <mkbestas@lineageos.org> Date: Wed Aug 10 05:29:55 2022 +0300 kernel: Allow overriding dtb target On some devices we might want to build just the *.dtb files that we actually need instead of the every dtb that exists. Change-Id: Id7a152499d4ee1dd08f79d34cc34bfe959313515 commit 85dacea05a9ab2bc609a7c98228f8edf9fd89cda Author: Michael Bestas <mkbestas@lineageos.org> Date: Wed Aug 10 05:18:59 2022 +0300 kernel: Allow overriding dtbo target name gs101 kernel uses google/dtbo.img target for dtbo.img Change-Id: Ib03f35c0035f56d303771de9399bcce3d02c0775 commit 751cb13dac9b25242bc85fb60d8ff2001a947121 Author: Andrew Sapperstein <asapperstein@google.com> Date: Wed Jul 29 07:36:41 2020 +0530 config: common: Create a module for adding fonts_customization.xml Previously, we used PRODUCT_COPY_FILES. However, that does not allow overriding the file to use a different one on a per-device basis. This change migrates the logic to using a BUILD_PREBUILT module called fonts_customization.xml. To add additional fonts, the add_additional_fonts.py script has been added. If ADDITIONAL_FONTS_FILE is defined, add_additional_fonts.py is run and generates a new version of fonts_customization.xml that contains the content of ADDITIONAL_FONTS_FILE added where "<!-- additional fonts -->" is added. Adapted for AICP Change-Id: Iad14d3c5a27b08024627bcdf054761c3ada3f92c commit a84eab862af5c98830245ba3d05b4f172c858587 Author: Akhil Narang <akhilnarang.1999@gmail.com> Date: Tue Oct 2 13:29:15 2018 +0530 build: repopick: pick only open changes in a topic This reduces the pointless spam saying that change X is already merged Change-Id: If84daeabf00602b1da30543b255097d9335b074f Signed-off-by: Akhil Narang <akhilnarang.1999@gmail.com> commit b4de1932f5c242a74a5adb1ea4a16570f8194fc2 Author: Alexander Koskovich <akoskovich@pm.me> Date: Thu Jun 16 13:14:14 2022 -0700 kernel: Move TARGET_KERNEL_ADDITIONAL_FLAGS to kernel task * Currently, because DTC_EXT make flag is in the kernel task the only way to override it is to have TARGET_KERNEL_ADDITIONAL_FLAGS come after. Change-Id: If62ed979581dc07eafd4628ce2b2d799388d3704 commit dbb3f0907e9ba6c537407ab56346b3cdaef10dfd Author: Alexander Koskovich <akoskovich@pm.me> Date: Wed Jun 15 22:50:47 2022 -0700 kernel: Switch to AOSP DTC instead of using scripts/dtc Change-Id: I8faf295dfb84ab7481b80d5b7d2add8ed8ddf6d9 commit 4d83c13ee17b21db0744329a8b8130ae89eebd93 Author: Semavi Ulusoy <doc.divxm@gmail.com> Date: Mon Jun 20 12:21:53 2022 +0200 Revert "kernel: Remove unneeded MKDTIMG dependency" This reverts commit caa3bddf00129c06f35923e43d5e770645da6b99 | AOSP. Reason for revert: Breaks pixel dtbo.img build, since kernel depends on mkdtimg. Add it back so it gets compiled and kernel can pick it up. Change-Id: I0f3f3683cf4a5e4a3f9412f13f7b0005f115bd6a commit 91d8b81fcf50918f17e8db79e9cc6ec36e4485a8 Author: Michael Bestas <mkbestas@lineageos.org> Date: Thu Jun 16 07:10:08 2022 +0300 kernel: Remove unneeded MKDTIMG dependency Change-Id: Icc1923e922adb50b02252883aa6814101837adfc commit 32882269679bdfd833999a5fc07c37cbec935c80 Author: dianlujitao <dianlujitao@lineageos.org> Date: Sun Jun 12 18:50:34 2022 +0800 kernel: Ensure dtb(o) always get rebuilt * AOSP build system is not aware of dtb(o) source update, and thus won't rebuild the images, results in outdated artifact. * Convert DTB(O)_OUT to make targets and make the images depend on them to address the issue. This makes AOSP build system be aware of their timestamp changes and re-execute recipes depending on them. Finally, it's up to kernel's build system to decide actions to take. Test: m dtb(o)image and observe dtb(o).img get rebuilt Change-Id: I197e7d2d3e013ded0e555fc22bb6a1200d40df9c commit 5f3c9121f4ce9c4889dfbca0bfa5c25d0b2d134d Author: dianlujitao <dianlujitao@lineageos.org> Date: Sun Jun 12 17:07:30 2022 +0800 kernel: Avoid unnecessary savedefconfig Change-Id: I5400e549a6574208d67c5d107ca56eee402fa7f2 commit 481306ef22e875b7a0f09fcc79a20095363a1e0c Author: dianlujitao <dianlujitao@lineageos.org> Date: Sun Jun 12 16:42:37 2022 +0800 kernel: Clean up kernel copy recipes ACP and ALL_PREBUILT are dropped years ago and thus have become no-ops. Change-Id: Ic317cb4a4fa406cce0dc86555fb8da34d21fb2bf commit 6bea9eb375f3f3110859d35e9b0f19b1cc60b9f4 Author: Michael W <baddaemon87@gmail.com> Date: Fri Jun 3 18:26:14 2022 +0200 repopick: Limit commit counting * For every commit, repopick checks the last commits for the presence of the commits to be picked * In every project a change should go in, it calls "git rev-list --count" to find the maximum amount of commits to be searched, but it only cares if there are less (or equal) commits at all than to be checked * Therefore, we can limit the counting to one more than we want to check * This is relevant for example for fw/b, where there is a huge amount of changes and therefore a lot of time used to count * Example: fw/b git rev-list --count HEAD: 46.693s git rev-list --count --max-count=1000 : 0.019s * Real-life example: repopick -t qs-lightmode Old: 2m33.375s New: 0m6.657s Change-Id: If0500574fb282e332996b606dd9926841f8e0e88 commit d6c87b2b2d39d1a5339985f34517bfb966448011 Author: Danny Trunk <dtrunk90@gmail.com> Date: Wed Mar 23 22:28:02 2022 +0100 soong: Add TARGET_USES_EGL_DISPLAY_ARRAY conditional This soong variable is used to conditionally revert a commit [1] which causes random camera crashes on tama devices [1] https://github.com/LineageOS/android_frameworks_native/commit/a9550f3fe9097e0934e9b44c5aac6b914fb46aec Change-Id: I749c7029f8f2b6d6d95b066aed4929c33e3c75e7 commit 3ccb9d38dfaa304e5f92ccb4db716bc7bafcce8e Author: Michael Bestas <mkbestas@lineageos.org> Date: Thu Jun 9 18:50:47 2022 +0300 envsetup: Add sort-blobs-list Change-Id: Ie871fe0bc9dd432e632ca8e9d7fa70c96a82a8c3 commit cb1e0431ac05d5b21df069173864d7125c948c8c Author: Alexander Koskovich <akoskovich@pm.me> Date: Wed May 11 16:02:12 2022 -0700 lineage: build: Wipe DTB/O OBJs before build * They can linger and cause problems, e.g. mismatching kernel and DTBs. Change-Id: I4adafe140093ff675fc3f55e3233a754d44d5656 commit 14df58f5bd39e1c47db2ac4c33417abe13b56f69 Author: Sebastiano Barezzi <barezzisebastiano@gmail.com> Date: Wed May 18 09:51:13 2022 +0200 soong: Drop TARGET_USES_QTI_CAMERA_DEVICE * qcom-camera topic hasn't been ported to 19.1 Change-Id: Ifb053d215527d602109bbb451d96ec80cf028548 commit 3626679a6b8693d490630332716e45194b114533 Author: mosimchah <mosimchah@gmail.com> Date: Tue May 3 18:55:11 2022 -0400 aicp: use s12.1 for roomservice Change-Id: Ifdc5cafe8501b9e1938f49a6cc96a5793a9da750 commit 62eb24c0288ca1177eefa088d2a0198e82656268 Author: Bruno Martins <bgcngm@gmail.com> Date: Fri Apr 8 21:17:01 2022 +0100 kernel: Document TARGET_KERNEL_RECOVERY_CONFIG usage Change-Id: Idefd38dae5e8beac7d7de797f3f792fea25dacef commit f677454478571e9d2a837c50e2e9725f8a4f2c6c Author: Bruno Martins <bgcngm@gmail.com> Date: Fri Apr 8 20:49:25 2022 +0100 kernel: Fix building recovery images Commit 8ac7d31 introduced this issue. Test: run `m recoveryimage` and verify that recovery image is now built. Change-Id: Iffdd8112db2ba1baff28db7ee4c340dbb5ebd917 commit b3668c558b6034e270d39f37a59d09873dcf505d Author: Bruno Martins <bgcngm@gmail.com> Date: Fri Apr 8 19:37:17 2022 +0100 kernel: Fix kernel rebuilding Commit 8ac7d31 introduced this issue. Test: run `m installclean && m bootimage` and observe that kernel image is built. Change-Id: I41eb7cd2e5108bae8f4c40c0f9a300a8a3cc95a7 commit 1aade509d5c530155ba7db9f92df1d385dea829e Author: Sebastiano Barezzi <barezzisebastiano@gmail.com> Date: Wed Mar 16 17:42:13 2022 +0100 build: tasks: kernel: Rework kernel fragments handling * Since some time you can specify multiple configs when you prepare .config and they'll get merged to main one * To use it inline: TARGET_KERNEL_CONFIG := main_defconfig fragment1.config fragment2.config ... * TARGET_KERNEL_ADDITIONAL_CONFIG has been nuked since it's superseed by this new logic * kernelsavedefconfig will only use the base defconfig Change-Id: I479c762a9235ed0ef6fcdc79b53e084d5e2d78a6 commit 5c59f3f55f15347c2f51f47f0bd9fa19ee7b68b5 Author: LuK1337 <priv.luk@gmail.com> Date: Wed Mar 23 20:39:30 2022 +0100 soong: Add TARGET_TRUST_USB_CONTROL_{PATH,ENABLE,DISABLE} Change-Id: Ib245114588fd14c83069e4365f9ca3e9e9536ba9 commit 875617d3f0e54e7058906d47e84cc5d68e75064d Author: Tom Pratt <tom.pratt@outlook.com> Date: Thu Mar 3 10:54:03 2022 +0100 vendor_aicp: Fix GSI targets Inherit from AOSP gsi_{arch}.mk, because aosp_{arch}.mk files are obsolete in Android 12. Rename for consistency with AOSP gsi/sdk targets. Change-Id: I449390521307ff4f269a9ebf1ad3a5ffc398bc97 commit 627ef4c89348f013c0de5966c326bda316d8e19d Author: Michael Bestas <mkbestas@lineageos.org> Date: Thu Feb 17 18:49:04 2022 +0200 build: Fix kernelsavedefconfig target Change-Id: Ie3d9a187693f2435f2555658c833de666848e48e commit 894cd10d917e92de03eaa4062a9bfcda9c5e17da Author: Hikari-no-Tenshi <kyryljan.serhij@gmail.com> Date: Thu Mar 10 15:14:03 2022 +0300 vendor: soong: switch to camera_needs_client_info_lib Change-Id: If06e73aae5fe9f1d03573ca2d5d12d53c9631b51 (cherry picked from commit d9ee6985ecd5ddbf172cd4fa64987bf05aaa2da3) commit e47e0cd52ff9d766be2949162e5452fd06a5b5de Author: Alexander Koskovich <akoskovich@pm.me> Date: Mon Mar 7 11:29:34 2022 -0700 lineage: config: Make LLVM kernel compile the default * GCC was deprecated awhile ago, the large majority of devices should now be using this. Clang should be opt out as opposed to opt in. Change-Id: Ie388aff8eca189663f2f615f7d059e47eaf2dce3 commit 4f071d9c36be9621259bca48800316cd9282b952 Author: Danny Lin <danny@kdrag0n.dev> Date: Fri Feb 25 23:06:45 2022 +0300 vendor_aicp: main.mk: Remove build flavor override Multiple conflicting values for the same property fails the build on Android 12, and we don't need SafetyNet to pass on userdebug/eng builds anyway. Signed-off-by: Semavi Ulusoy <doc.divxm@gmail.com> Change-Id: Id5414ab055ebfdf4146c0e20f74ed00bff17a2f3 commit 976e7a530b92c0cd230e10e2bc52d62bb4b4ae35 Author: Jarl-Penguin <jarlpenguin@outlook.com> Date: Sun Feb 20 13:26:31 2022 +0100 kernel: INSTALLED_RECOVERY_KERNEL -> INSTALLED_RECOVERY_KERNEL_TARGET * Make it consistent with the rest of the targets Signed-off-by: Jarl-Penguin <jarlpenguin@outlook.com> Change-Id: I869d3d8570b4deb2f1e019efa975526a528ca3e7 commit a68471d72a497dda29fb9b08a213b467519a8ee4 Author: Bruno Martins <bgcngm@gmail.com> Date: Tue Feb 8 19:35:40 2022 +0000 envsetup: Fix long time broken path to sh Change-Id: Ia76d14e10571dd6f3ac9f4adf288effae851ffe3 commit 07c6341f268de2a700dec4e81819b3c8453bb694 Author: Michael W <baddaemon87@gmail.com> Date: Wed Jun 17 17:37:09 2020 +0200 envsetup: dopush: Correct paths * In order to automatically restart the system when pushing SystemUI, the path must actually be correct * Since android 10 it's in system/*product*/priv-app and 11 will move it again, so just match it anywhere * Make framework also location independent Change-Id: I4a9eb1edbbb21ab8abe17815c606921f7a538b7f commit 058b7fc57bc0922d09708b1dc88723cd7b673c2d Author: TheScarastic <warabhishek@gmail.com> Date: Tue Oct 12 06:09:57 2021 +0000 soong: Rename fod to udfps * now flag is changed to TARGET_SURFACEFLINGER_UDFPS_LIB from TARGET_SURFACEFLINGER_FOD_LIB Change-Id: I499b31d00a053b865ceaa3b34a9762f980bbf14e commit 7b312227df7f5986b38478922753f49abb59c6d3 Author: George Zacharia <george.zcharia@gmail.com> Date: Wed Jan 12 19:58:31 2022 +0530 aicp: oops! we missed one again Follow-up of b5bb3a1f48130a9fd50f0c289446d1912eddca57 Change-Id: Id50e8dd2ea13e3f9f5eea28290bfdd275de74d81 commit 7ed9e9ec23ef619ac8e2db2faf788cfbbd85c58a Author: Kyle Harrison <khwebmail@gmail.com> Date: Wed Oct 27 14:54:44 2021 +0100 soong: Update camera_in_mediaserver_defaults - Add android.hardware.camera.provider@2.7 Change-Id: I1ad534d87ce3b35d0116bccdbc0ac7f70c799c00 commit 3d5d67194493c53607a12810f64350b2f7fc8da4 Author: Alessandro Astone <ales.astone@gmail.com> Date: Mon Jan 11 23:51:49 2021 +0100 build: Define QC_OPEN_PATH All references in sm7250 repos point to the correct location if we simply define QC_OPEN_PATH as vendor/qcom/opensource Change-Id: Ibb580230212a08c73a251c88630217b192979eb4 commit 0b650e0d648320d94717b65b7bac11e31878b285 Author: SagarMakhar <sagarmakhar@gmail.com> Date: Fri Sep 17 19:07:22 2021 +0000 Rework rule building in lineage_generator Signed-off-by: SagarMakhar <sagarmakhar@gmail.com> Co-authored-by: Arian <arian.kulmer@web.de> Change-Id: I05c36b8660e51a18ac70a6712b2d03edfc561156 commit b5bb3a1f48130a9fd50f0c289446d1912eddca57 Author: Julian Veit <claymore1298@gmail.com> Date: Mon Jan 3 17:22:43 2022 +0100 aicp: s/-ADDITIONAL_BUILD_PROPERTIES/ADDITIONAL_SYSTEM_PROPERTIES Change-Id: I10e4974cc4649abfea61d3b9ba7715f56f1c795c commit 71c7158448fe4d44a23fd35c211bd491dca5b49b Author: George Zacharia <george.zcharia@gmail.com> Date: Thu Oct 14 16:47:30 2021 +0200 vendor_aicp: Excuse KERNEL_LD when not using KERNEL_SUPPORTS_LLVM_TOOLS Change-Id: I9546666114d1d3279dd2c3db23c5bfc2bbfdfb5c commit 5e2a9f204c0b51f10afe26cc0f36b159087fab1e Author: marcost2 <marcostolcachir@gmail.com> Date: Tue Jul 6 12:55:59 2021 -0300 Add support for separate kernels for boot and recovery [1/2] * Either as prebuilts, or with separate defconfigs Change-Id: Iad877a5fbef095e3e5d792aebb240c230a829552 commit 6fa93e54a8f06b6989f9fa93130f50dd177712f5 Author: Anushek Prasal <anushekprasal@gmail.com> Date: Tue Jan 5 15:19:43 2021 +0530 vendor: soong: Add camera_needs_client_info ** AICPfied Signed-off-by: Anushek Prasal <anushekprasal@gmail.com> Change-Id: I60a9b2a137d70e7592b43dd2f9a05bbb6a2ef694 commit fc7799779e6fdb92b5326c0f278edbd838fe061d Author: Sebastiano Barezzi <barezzisebastiano@gmail.com> Date: Fri Jun 11 00:39:41 2021 +0200 soong: Add TARGET_CAMERA_BOOTTIME_TIMESTAMP conditional Change-Id: Ic48acda208fc9990fc5c9159ad06518d48f21477 commit 8c87cefb12c89738bf23333c03fcef4bab2ea504 Author: Bruno Martins <bgcngm@gmail.com> Date: Mon Jun 14 14:47:33 2021 +0100 Revert "soong: Add TARGET_QTI_USB_SUPPORTS_{AUDIO,DEBUG}_ACCESSORY flags" This reverts commit ba8e075ed4d7cc079ab2e8a297da28df5ef3b8e7. It is no longer necessary. Change-Id: I5d9656ffb686e939f006d5fb1effaba835f93ed2 commit 249bdfc3d364a492e4c8a45d889b93906c5820f6 Author: LuK1337 <priv.luk@gmail.com> Date: Thu Jun 10 20:50:15 2021 +0200 kernel: Pass absolute path for KCONFIG_ALLCONFIG It fails to read relative one, at least on QCOM 4.19 kernel base. Change-Id: Iacbcadfabfcebb80a7f5934825123fdfa913c63c commit 4673da9290865b24d3f45b114bf01001654eecb0 Author: JamieHoSzeYui <henloboii@protonmail.ch> Date: Wed Mar 17 14:44:44 2021 +0800 qcom: add lahaina platform lahaina = Snapdragon 888 Signed-off-by: Aryan Sinha <sinha.aryan03@gmail.com> Change-Id: Iaad90031451a9d1d3c8cbe8b61c1cf19717df4ee commit d506d8a610e8199ebbb7ac4c2d27ebe46068735b Author: Michele Bono <bono.michele94@gmail.com> Date: Sat May 29 13:58:57 2021 +0200 Revert "Revert "bacon: switch to sha256 checksum"" This reverts commit e566103b0318e485dfbaef984db2eef8ad8498d0. Reason for revert: Jenny is hot now! Change-Id: I534966e1a8b09f9eddd0e144041c5b9881685f2c commit e566103b0318e485dfbaef984db2eef8ad8498d0 Author: Semavi Ulusoy <doc.divxm@gmail.com> Date: Sat May 29 09:27:38 2021 +0200 Revert "bacon: switch to sha256 checksum" build_soong change and download site shall be prepared first This reverts commit 8abd8adadb7dd62166967c7f3eb62161f5398004. Reason for revert: <INSERT REASONING HERE> Change-Id: Ie799dea739dcef2eea2f7581f3ee13717a7523fa commit 8abd8adadb7dd62166967c7f3eb62161f5398004 Author: Julian Veit <Claymore1298@gmail.com> Date: Sat May 1 11:56:15 2021 +0200 bacon: switch to sha256 checksum As md5 is not considered as secure since some time, and sha256 is industry standard, lets switch over here too. Change-Id: I22015be20126a4348affa5ef97e2c28fbd7b4717 commit efa44713aa7b83b82125d4a4bb3d3fd267381a63 Author: LuK1337 <priv.luk@gmail.com> Date: Fri May 28 07:55:34 2021 +0200 generated_kernel_headers: Also add usr/include/audio to include path Needed for QGKI 5.4. Change-Id: I44c77167828fdc3577cfd1eb548c8ceb7c418cbb commit d94f0abdb84e6f5ac3a3c1818729641d1751ab6d Author: Danny Lin <danny@kdrag0n.dev> Date: Thu Apr 15 22:36:39 2021 -0700 Only use stock build fingerprint for Google Play Services SafetyNet's CTS profile attestation checks whether Build.FINGERPRINT matches that of the device's stock OS, which has passed CTS testing. This means that we need to spoof the fingerprint for Google Play Services in order to pass SafetyNet. We used to set the real system build fingerprint to the stock one, but Android relies on each build having a unique fingerprint in order to clear the correct caches and update persistent state for system changes. On devices that no longer receive updates from the OEM, the build fingerprint never changes and Android doesn't account for updates correctly, which causes issues when updating without wiping data. Only spoofing the fingerprint for Google Play Services fixes this issue. Corresponding frameworks/base commit: "Spoof build fingerprint for Google Play Services" Change-Id: I6bc5bf4f93758e0fac6073957f051d69c1a1bc95 commit d9b0e314f66c6d46b020cc12fc816597b5bd5381 Author: Danny Lin <danny@kdrag0n.dev> Date: Mon Feb 1 09:25:13 2021 -0500 vendor: More prop overrides for Google Play Services and SafetyNet - Add support for overriding product info Google Play Store will serve debug versions of their apps if it detects an aosp_<devicename> device name because they use AOSP device trees internally for testing and debugging. We also need to override the fingerprint and other information to match stock in order for Google SafetyNet to pass. **************************************** - Remove support for overriding product name Overriding the product name will no longer be supported; device trees should instead be debranded to make the product name match the stock device codename. **************************************** - Fake build tags as release-keys While SafetyNet doesn't check this property, some banking apps (including the RootBeer library) do and flag the device as rooted if test-keys is detected. Change-Id: I48d61be98b95deeb03a38b74f939ccedf8644a0b commit 7ad29ff8d38d3ddf835321ad7130bf5318b7cd4b Author: Bruno Martins <bgcngm@gmail.com> Date: Fri Apr 30 23:10:45 2021 +0100 envsetup: Make dopush() /system_ext aware Change-Id: Iee4b1fea656f2fd0262cde4f5a634ec95dd6dab8 commit 8472b1e3105c0891867dfda0be1826544c4e42b0 Author: Dhina17 <dhinalogu@gmail.com> Date: Fri Apr 23 22:31:37 2021 +0530 envsetup: replace __detect_shell with basename $SHELL - __detect_shell is dead long ago. $SHELL is a global env var in all shells. Change-Id: Ie6bd4bbc9d52832a6d42933993c4bc6d0d058633 commit 47b39fee05b2f67dab103bc39edc919f4de7d589 Author: Dhina17 <dhinalogu@gmail.com> Date: Fri Apr 23 21:52:29 2021 +0530 envsetup: fix lineagegerrit push for zsh - fixes: error: src refspec HEADefs/for/lineage-18.1 does not match any In zsh, :r is a modifier. Change-Id: Ie6a2a079a96f13c8eb6732a796bab2c2700d7276 commit 7cc347386d46e394df15c964d2d74917863c1a53 Author: LuK1337 <priv.luk@gmail.com> Date: Tue Apr 13 19:38:19 2021 +0200 vendor_aicp: Handle build type suffixes properly This gets rid of grep error code when running breakfast. Change-Id: I7a8eb86b6068ae1973a96a929129da9eaa84865c commit 5d87b87c5bc427664943a0e0e0c8c773aa15be7e Author: LuK1337 <priv.luk@gmail.com> Date: Sat Apr 10 10:56:15 2021 +0200 soong: Add TARGET_QTI_USB_SUPPORTS_{AUDIO,DEBUG}_ACCESSORY flags Change-Id: I18a93fa12bf3d911919a80996d41d52714ee42bf commit d0d836cf58e5934997ccf5dc228f036f957e030a Author: mosimchah <mosimchah@gmail.com> Date: Mon Mar 15 02:11:48 2021 -0400 roomservice: update from PixelExperience https: //github.com/PixelExperience/vendor_aosp/commits/eleven/build/tools/roomservice.py - keep our changes - use https Updated up to here https://github.com/PixelExperience/vendor_aosp/commits/ecfe839ee6e4cda3d479a7bc56f4248410e82636/build/tools/roomservice.py ecfe839e Initial changes for 11 4adfca1b vendor: Cleanup roomservice 30126b33 vendor: Improve roomservice fallback branch 156a4ac2 vendor: roomservice: Allow defining custom clone depth 27589d43 Merge "roomservice: support new manifest formats." into ten 5b23bb8d roomservice: support new manifest formats. 2054d11b roomservice: fix inconsistent spacing 6ce86362 vendor: roomservice: Add support for custom branch 8f9cb495 Initial changes for Android 10 e893c687 tools: Fix spelling in roomservice 4af60ab2 Initial changes for P 6d454f95 roomservice: Change 'bailing out' message to something more friendly 0be09dd3 roomservice: tell user in the case of a dependency already in manifest ffe2ee51 roomservice: fix a weird error 7c121208 roomservice: give us some more info about what we're about to sync 2587c9d1 roomservice: rewrite some logic 8764407c roomservice: bringup for PixelExperience a72b8667 roomservice: use force-sync when adding projects with roomservice 921d6f33 Update roomservice fallback branch db1a1301 roomservice: add debug method c6835249 roomservice: touchup revision assignment ad443c52 roomservice: add branch to deps if not provided 8eb85a32 roomservice: check against the path, not name 9cdc6e7c Overhaul roomservice for sanity and cleanliness 55a7d044 roomservice: hack the calculated revision in to shape ba117449 Fixup roomservice 1c1f728c roomservice: Improve error handling on search d1edbaa7 roomservice: Fix search of devices forked to PixelExperience d7810468 roomservice: Improve new device retrieval 1e303dd9 roomservice: python3 support a22ecf4a roomservice: Add lightweight dependencies to repositories e631736d roomservice delivers you lunch combos from the github. 5e5315a2 vendor: Remove old roomservice 591760cb Changes for PixelExperience Change-Id: I52c1bca7e8f0ba44cfd9c09e1ae70c6f9088d7bf commit 5097b6b44869407334858b462c5cbbc1666a18f4 Author: Nolen Johnson <johnsonnolen@gmail.com> Date: Tue Mar 9 22:15:54 2021 +0100 lineage: targets: x86{,_64}_ab: Don't explicitly include SDK addon * This resolves some build warnings on these targets, as it's being declared elsewhere. Change-Id: If142b7435d8f4b81f8477516545bb54462518487 commit 471a16aaf363d85d811ead79afcda5db2b8a2afe Author: Nolen Johnson <johnsonnolen@gmail.com> Date: Tue Mar 9 14:10:39 2021 -0500 lineage: targets: Add support for Legacy GSIs * This is needed for VNDK27, and other older, hackier Treble implementations. * We can't include `legacy_gsi_release.mk` as it's included in the `aosp_${ARCH}_ab` targets themselves, unlike the standard `aosp_${ARCH}` targets which guard `gsi_release.mk`'s inclusion with `aosp_${ARCH}` product guards. Change-Id: I16c5983c18110b24eef84e382e0ae6852efb03c3 commit f9c80879e140977d4b87b0263410cdaf26331a0b Author: Nolen Johnson <johnsonnolen@gmail.com> Date: Mon Feb 22 12:36:48 2021 -0500 soong: Add TARGET_LEGACY_HW_DISK_ENCRYPTION conditional Change-Id: I2c67fe632d415353273839493a86cdd75bd93b23 commit 649b3530bf0937fa4d44ffe02921647d1d96de21 Author: Alessandro Astone <ales.astone@gmail.com> Date: Fri Jan 8 17:43:27 2021 +0100 kernel: Support pixel style vendor_boot modules Mini documentation: List the names of boot modules in BOOT_KERNEL_MODULES to add them to vendor_boot. All modules still end up in their primary location (normally vendor/lib/modules). Boot modules will be kept here as duplicates. The list of boot modules is then depmod'ed and copied to the vendor ramdisk. The file modules.load is created from BOARD_$(IMAGE)_KERNEL_MODULES_LOAD as the ordered list of modules to be loaded form that location, either parsed by a modprobe script or by init itself (only boot modules) When using vendor_boot modules, vendor/lib/modules/modules.load should list all modules but boot modules. Also don't clear the output directory, because one might want to push a modules.blocklist there. Change-Id: I89a4aad42a6585a572812f1d7e89f5d78931e1e6 commit 01d9adf95b0bc04f96db31377ac8dd3e53da3cca Merge: 65fdff0d ef12bdc3 Author: Semavi Ulusoy <doc.divxm@gmail.com> Date: Tue Feb 2 18:25:52 2021 +0100 Merge changes from topics "custom-clang-proton", "r-hardcoded-clang" into r11.1 * changes: kernel: Add KERNEL_SUPPORTS_LLVM_TOOLS to permit building with LLVM Build Tools kernel: Cleanup some of the clang logic commit 65fdff0d28d51db1d2980fed46407d6b264894c2 Author: TheMalachite <eliasgheeraert@gmail.com> Date: Wed Jan 27 00:03:34 2021 +0100 qcom: Add bengal platform Signed-off-by: TheMalachite <eliasgheeraert@gmail.com> Change-Id: Ia9f602a1d6f109554c6462eaa02214c43b9295dd commit ef12bdc3bc52c1abd423d1b75aade50bfa851bef Author: baalajimaestro <me@baalajimaestro.me> Date: Sun Jan 3 20:05:58 2021 +0300 kernel: Add KERNEL_SUPPORTS_LLVM_TOOLS to permit building with LLVM Build Tools Selects LD, AR, NM, STRIP, OBJCOPY, OBJDUMP with their respective LLVM based binaries Needs a compatible toolchain, and a compatible kernel source. Signed-off-by: baalajimaestro <me@baalajimaestro.me> Change-Id: Id934b8e0e474478e8dedf18482a78da78daf3bba Signed-off-by: doc HD <doc.divxm@gmail.com> commit 5cd9c5d1ef3d39fe8ecc09e6c864fd63f32737ef Author: George Zacharia <george.zcharia@gmail.com> Date: Wed Jan 20 08:04:27 2021 +0100 kernel: Cleanup some of the clang logic Only handle the AOSP Clang logic here, other variants will have to depend on the variable available Change-Id: I3281eca9720a1c498544e6d9b18581ce0b949d4f commit cdf46b8c8d051fe44fbbbec104a2660fbc38ecce Author: Akhil Narang <akhilnarang.1999@gmail.com> Date: Tue Jan 19 13:13:15 2021 +0300 roomservice: add in support for setting a custom clone-depth for any dependency Change-Id: I9b5d94cb80b8a276ba5189c2ff0a76910d4c2dea commit d7d61dde46ff27b65e8d638659bba52ecacb8fff Author: Alessandro Astone <ales.astone@gmail.com> Date: Tue Jan 5 18:04:14 2021 +0100 lineage: Commonize display_intf_headers for QSSI supported platforms Change-Id: I7224c10295c4123222d81b92f7829502e3cc2d61 commit abd99c306c39952ce8cfbd6c2e8da31b136ef21d Author: mosimchah <mosimchah@gmail.com> Date: Sun Jan 3 10:03:27 2021 -0500 aicp: track extract utils from the new lineage repos Change-Id: Ib34c27c5fc6ef51599273e81b5e30065c41ed9a8 commit 6bc1ba17a3cdae68fed8d40aa0010e0fe1885884 Author: Sebastiano Barezzi <barezzisebastiano@gmail.com> Date: Wed Dec 23 16:35:43 2020 +0100 fixup! extract_utils: implement patchelf * Move $PATCHELF exporting from oat2dex to setup_vendor * Since it requires $HOST to be set, let's make it global, so oat2dex can also use it Change-Id: I4556a3c19cd01c9b3a68d358d19a361217d9c3c1 commit 95a2fdd8d984ca282d1ee88671dfa0ddcf63c494 Author: Alessandro Astone <ales.astone@gmail.com> Date: Fri Dec 4 01:04:01 2020 +0100 extract_utils: generate_prop_list: Ignore vdex/odex files too Change-Id: Ibe77e8b93466a71d4d0c48ca8f4ff2e00c6e40af (cherry picked from commit ee669788bc86330215f2444b3beb1f3870329c9e) commit 4077b3d0a358ef6fa458d56eaa2c3333d87d07a6 Author: Jan Altensen <info@stricted.net> Date: Sat Oct 17 18:10:26 2020 +0200 soong: add TARGET_HAS_MEMFD_BACKPORT conditional Change-Id: I71b3a86c96bfe53e93e99c071bc8f3a8c56c77b7 commit 83e0ae831eeedf3ba23e4463e4c5b3ebd45b57cb Author: Arne Coucheron <arco68@gmail.com> Date: Sat Nov 7 00:46:10 2020 +0100 soong: Add flag for disabling postrender cleanup Some legacy devices experiences bad lag unless this is disabled. Disable it with: TARGET_DISABLE_POSTRENDER_CLEANUP := true Change-Id: I2b40dc4cbcab06fb293d1f407321af2fae846a51 commit 6d0ccccdaf76ca8d1eaba4dd312a18b2062b5a14 Author: Georg Veichtlbauer <georg@vware.at> Date: Mon Nov 30 20:26:23 2020 +0100 Fix AICP manifest file name - otherwise, breakfast would fail due to missing default rev Change-Id: I2d24489d9cd1dfce06e721fc823625ef9d3ad7bf commit 09672a424cf884cf6160e35406e538dbc50a1c94 Author: Volodymyr Zhdanov <wight554@gmail.com> Date: Thu Oct 22 01:33:24 2020 +0300 extract_utils: implement patchelf Change-Id: I406f70ef1ce9ec7a0998f77439b7d3fa3ec4e62a commit ac18c2bdf438c02f96a32450a8a6a2808789eec7 Author: LuK1337 <priv.luk@gmail.com> Date: Mon Nov 23 10:55:24 2020 +0100 repopick: Use project revision if available * Fixes repopicking from repos synced under multiple paths + branches. Change-Id: Icb165f3d9df67f1b11304e8d7ed955464dcb57bc commit 925403f32550677087aebb07ccd6cfada032acd6 Author: Michael Bestas <mkbestas@gmail.com> Date: Tue Nov 10 23:09:21 2020 +0200 kernel: Make system/vendor images depend on modules * We're having a race with the kernel module build and vendor.img generation, and sometimes when vendor.img wins it won't include any modules in the image, which leads to all sorts of breakage Change-Id: I2cdde96530aa8e47351cace76352788cde631058 commit d19d051bc15bb8494f9580dcb8a9ef8466a87c24 Author: Michael Bestas <mkbestas@lineageos.org> Date: Fri Nov 13 19:18:45 2020 +0200 build: Remove hardware/qcom-caf/thermal pathmap * Thermal HAL was converted to HIDL service and .mk to .bp, devices can override it by using a different named service Change-Id: Ia3e0d86e791555992e7889f33f7d55f224b9a582 commit 839ac5f6eb7449f488b4bcff74c7e53cca5f1101 Author: Julian Veit <Claymore1298@gmail.com> Date: Sun Nov 15 09:20:51 2020 +0100 aicp: add propery for Lineage-recovery - second part Lineage uses the the format: YYYYMMDD_HHMMSS and uses both strings in recovery - so lets reconstruct this too. The first parts was merged in https://gerrit.aicp-rom.com/c/AICP/vendor_aicp/+/104752 So lets add the second part now. Change-Id: I622b5ad46bd02e38ff0d6270bb1fe6f59c1d52a6 commit c8e644821ea646699ac78ee06a3140f28139939d Author: Michael Bestas <mkbestas@lineageos.org> Date: Sat Nov 7 22:43:50 2020 +0200 Remove build/core/clear_vars.mk LOCAL_IGNORE_SUBDIR has been deprecated since 16.0 Change-Id: I3d27034a070977acef32c3b9b654badce1506359 commit b26547f1ac91bb3d09c1400681f30adcd63524af Author: Julian Veit <Claymore1298@gmail.com> Date: Fri Oct 23 11:27:53 2020 +0200 aicp: add propery for Lineage-recovery Change-Id: Ie532de50a12028f5d0719ec033e85dabcdc68429 commit dfc7c49a4e77d456a7f7e498de8a28ff6068c320 Author: LuK1337 <priv.luk@gmail.com> Date: Fri Oct 30 13:32:49 2020 +0100 lineage: Add data-ipa-cfg-mgr to soong namespace in BoardConfigQcom Before: $ breakfast capricorn && m ipacm FAILED: ninja: unknown target 'ipacm', did you mean 'lpadd'? After: $ breakfast capricorn && m ipacm * happily compiles * Change-Id: Ib68978d4f287dcdea45fc21382af05b1890caca4 commit 4b58e997546ed27c6229462bb98c63385236bcb5 Author: Aayush Gupta <aayushgupta219@gmail.com> Date: Tue Oct 27 17:59:21 2020 +0530 lineage: Don't enforce specifying image name on prebuilt kernel - The goal of specifying kernel image name was to whether kernel needs appended dtb or not, which is not something required if the kernel is prebuilt Ref: [0]: Commit edc1cebc2f7baedf6479874db2848b45e22f4205 Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com> Change-Id: I6b43756a2eac59729a67b5f80dac112f8b6bcc5b commit 73217925f739329a8fd7ce6c0a5eb0f3058d3070 Author: razorloves <razorloves@gmail.com> Date: Mon Oct 19 00:46:19 2020 -0500 Declare vendor/qcom/opensource/data-ipa-cfg-mgr as soong namespace The mk files in vendor/qcom/opensource/data-ipa-cfg-mgr were converted to bp, so this is needed to avoid duplicate module build errors on devices that use a different data-ipa-cfg-mgr hal. Co-authored-by: Christian Oder <myself5@carbonrom.org> Change-Id: Ib4d566e43145745afac0259c95c0a563779fa3bd commit 850ab844a55845e4773757cb2a9ffcda47c6ad44 Author: Aayush Gupta <aayushgupta219@gmail.com> Date: Wed Oct 21 16:29:53 2020 +0530 fixup! soong: Add lineage soong config variables error: system/netd/server/Android.bp:162:1: module "netd" variant "android_arm64_armv8-a_cfi": cppflags: Flag DIGNORES_FTP_PPTP_CONNTRACK_FAILURE must start with - Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com> Change-Id: I24b89f13425cf586e6ff50d83e71fb1a052bf4ed commit 826d290a1509b26f0010b4287feb0387e339566a Author: Alessandro Astone <ales.astone@gmail.com> Date: Thu Oct 1 13:01:36 2020 +0200 soong: Export bootloader_message_offset to dependencies Change-Id: I5b81d4a58406b1b521297a217dc33086e70259d0 commit 621a703875d138d2aa492224f7080a5da953a999 Author: Pig <pig.priv@gmail.com> Date: Thu Oct 15 02:58:37 2020 +0800 soong: Add lineage soong config variables Ref: https://android.googlesource.com/platform/build/soong/+/refs/tags/android-11.0.0_r4#soong-config-variables Change-Id: Icaf35b65b63d4245c92e39ce628bb8d6ffd0d4bb commit 55f2e2c5e17ddaa16831ed28d9f1b165b2540b42 Author: Pig <pig.priv@gmail.com> Date: Thu Oct 15 02:36:40 2020 +0800 Revert lineage soong product variables changes * This reverts commits 7ef0e170 and 4ed4605 and removes relevant flags to prepare for using Soong config variables as per Google's docs Change-Id: Ib6ae5a8a922104d37f8d0e08242b428eb129785c commit f5a00805b9e8383515fa4e2ea3348ce00891d080 Author: Bruno Martins <bgcngm@gmail.com> Date: Thu Oct 15 16:12:30 2020 +0100 Revert "lineage: Add flag for skipping EV_REL input in recovery" This reverts commit fd27bb49121c7a3199d1dc81b05ce86df3546bab. Should have never been added. This time should be done with a prop. Change-Id: I72a4563834447d4dbeda66dfb232b0541727cb55 commit 97d71f840c840ce275306c3544b1876fa1b18ff0 Author: Bruno Martins <bgcngm@gmail.com> Date: Thu Oct 15 21:39:23 2020 +0100 Revert "soong_config: Add flag for msm8974 1440p EGL workaround" This reverts commit f3f7eb2d8782d200d7855b778ba43e71fefff79f. Support for this in fw/native has been ported in the previous branch and is very unlikely that will be done or even needed for R. Change-Id: I9c9709e323d6a27f3c9196887af7ab0ffa1819e9 commit e137d698d80737da43950c63d58b7906cb4759e6 Author: Pig <pig.priv@gmail.com> Date: Thu Oct 15 02:58:37 2020 +0800 soong: Run bpfix Change-Id: Id528c99180d34129862c67ef92a00a5ef0fdf61e commit 71c2eeb8b91fa75454efaa0e15200a6ab02d56a4 Author: doc HD <doc.divxm@gmail.com> Date: Tue Oct 6 14:51:29 2020 +0300 vendor_aicp: remove execaicpscripts for now. Change-Id: I38c7e834ff5945a5b7dae9379c651ab85540f35c commit d0e7393651e184113be46f4d75d983d8b6a2d43f Author: LuK1337 <priv.luk@gmail.com> Date: Tue Sep 15 11:06:18 2020 +0200 aicp: Disable inline kernel building for generic {arm,arm64} targets Change-Id: I766779a2babc170481174899aaf610cbfeb8d754 commit cd218f0e9f8de17da42b250a026f605b352e5f0c Author: LuK1337 <priv.luk@gmail.com> Date: Tue Sep 15 03:03:31 2020 +0200 aicp: Manually include gsi_release.mk for generic aicp targets * AOSP wrapped these around aosp_{arm,arm64,x86,x86_64} checks thus we need to have them here instead. Change-Id: Ia3e1e37361330c4b28759f07a3fef6c78565e958 commit 81a292822cf9407ae645fded0bf082584d2c687d Author: Alessandro Astone <ales.astone@gmail.com> Date: Mon Sep 14 21:14:47 2020 +0200 kernel: Import function to install kernel modules from Q * The new refactored function doesn't work with shell expanded variables, like our $$modules. * This is the _easy_ fix. A proper fix would imply generating the module list into a make variable from the shell variable, but with kati that looks unfeasable (to me...) Change-Id: I8198c62fa93ad94d4b9bf7175fe5eea452c243ea commit a424d62a7136036f0ef960b2699b767d2eed72f1 Author: Bruno Martins <bgcngm@gmail.com> Date: Thu Sep 24 11:51:33 2020 +0100 lineage: Use $(HOST_PREBUILT_TAG) where possible Change-Id: If211d23ce72b3404368cd723cbb9ea801e61802c commit c0c3003fddd55eeab3269fcf6e1441af2383588b Author: dianlujitao <dianlujitao@lineageos.org> Date: Sat Sep 12 00:15:13 2020 +0800 extract_utils: Disable ELF check for shared library * This is indeed a nice feature, but it's absolutely a bad idea to hardcode dependencies of prebuilt modules in proprietary-files.txt. Change-Id: I8c2d75ff62c0c7862f40e777bcbad4d9cebc074c commit ed99afa395a5bc49656fe3b002b3c9766325f260 Author: Jan Altensen <info@stricted.net> Date: Fri Sep 11 21:41:08 2020 +0200 bacon: switch to toybox md5sum * fixes "error: MD5SUM is obsolete." Change-Id: I38e167e24e9eb5596a1e8e2f2d915f648bc1283c commit c4633f46769dad38dd14039fc814cd01782901e2 Author: nebrassy <nebras30@gmail.com> Date: Thu Sep 10 13:29:19 2020 +0200 vendor: BuildOsVariant > BuildOSTarget Fixes the following build error: vendor/lineage/build/soong/generator/generator.go:125:26: ctx.Config().BuildOsVariant undefined (type android.Config has no field or method BuildOsVariant) Change-Id: I3385941b2931e5be8010d31f80f3aa033d0d3727 commit 232947ced2abc0a26839fc3ff213da36da3e4a5d Author: Michele Bono <bono.michele94@gmail.com> Date: Mon Oct 5 16:38:34 2020 +0200 vendor_aicp: Aicp R11.0 Change-Id: I7a14761b70b0ef3dc4f5787f944b908c14acb855 commit 911ccb784a5f4fa04f934320d665840bb2e44358 Author: Alexander Koskovich <zvnexus@outlook.com> Date: Wed Sep 16 17:58:53 2020 -0700 extract_utils: Fix system_ext framework blueprint generation. Change-Id: I20e44be6ea48b9bd5b05055d3cf465f63c908463 commit 356aa5c95e6d2782a3f8aafbc703b2e8a13edf31 Author: Luca Stefani <luca.stefani.ge1@gmail.com> Date: Wed Sep 9 15:53:58 2020 +0200 extract_utils: Add support for system_ext Change-Id: I0760cdd9bec1a0a0551aa68a60c34f9c00932668 commit 958e7ca09a0dfc5e58293b6ee7e64bf37b13ba48 Author: Luca Stefani <luca.stefani.ge1@gmail.com> Date: Thu Sep 3 20:56:29 2020 +0200 Revert "kernel: prevent additional config from being always rebuilt" This reverts commit 70d5cc42e0a681768d07e47a767d891993d165cb. Reason for revert: Mismatch module/kernel Change-Id: I2ae2df476f6cc06c8732336f325822cc2214ef79 commit 95bebaf70b0986f497be904aab592b988e4a7c0f Author: Adrian DC <radian.dc@gmail.com> Date: Tue Aug 18 00:13:11 2020 +0200 kernel: prevent additional config from being always rebuilt * A simple "make kernel" or incremental system build always triggers a complete kernel recompilation, even though the kernel sources were unchanged * The reason is because .additional_config is always considered new and invalidates the .config file, forcing the kernel to rebuild itself every time * Instead, prevent the /dev/null and KERNEL_OBJ dependencies having irrelevant timestamp changes with an empty variable * Command "make kernel" takes 3 seconds versus 40s before Change-Id: I3b583077b7ef5873eebde3e4b0e790f5d7587ed3 Signed-off-by: Adrian DC <radian.dc@gmail.com> commit eaa574482cf004e67de247c2680e5e842d3566bb Author: Aayush Gupta <aayushgupta219@gmail.com> Date: Tue Aug 25 10:03:10 2020 +0000 vendor: kernel: Add back support for custom dtboimg makefile It was removed accidentally in commit fe00ea9. Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com> Change-Id: Icadd7b17b3a732fc2c8aa14f1e4dbd4bc66eb7f9 commit c3d2e8372c2b11c1e218585305bf3bc8fa8c9f14 Author: Weikai Kong <pig.priv@gmail.com> Date: Mon Aug 24 15:52:00 2020 +0200 Revert "kernel: Set full path to DTC" This reverts commit 5061962d73e10ee751825ee7b2a880bf4186e904. Reason for revert: breaks build with upstreamed dtc > Change-Id: Idcbb7b95bd54bb6ecfe30f3d55ee90bd57708995 commit 3464db242958213b0e7f8ae67db8cdef0ff663e1 Author: Luca Stefani <luca.stefani.ge1@gmail.com> Date: Mon Aug 3 11:58:00 2020 +0200 kernel: Add support for mkdtimg cfg_create Change-Id: If761bb034c175a03a10e5f70753db3a3ded496a8 commit bf67c613b51e0b4e714a34adaaf3767ce33b2c48 Author: Luca Stefani <luca.stefani.ge1@gmail.com> Date: Wed Aug 5 11:37:46 2020 +0200 kernel: Switch to mkdtboimg.py Change-Id: I6f444a3e2265f163e84eaf00d054697dbcf0f803 commit 1f614354c36fad8e53091f00efd20fe802474b61 Author: Luca Stefani <luca.stefani.ge1@gmail.com> Date: Sun Aug 2 19:08:31 2020 +0200 kernel: Rework how DTB/DTBO are built * Remove the separate dtbo.mk task and merge it in kernel.mk * Merge in-kernel and separated DTBO image generation Change-Id: I2cae84095cbd3d68abbe1899a9cae34c8a1e5fc9 commit 6ae764301aab814040abb40eb231c3a803c549e8 Author: Chirayu Desai <chirayudesai1@gmail.com> Date: Mon Apr 20 23:40:53 2020 +0530 kernel: Set full path to DTC * This makes it use the latest source built dtc instead of the prebuilt, which is too old for coral/4.14 * Would be best to have it use the in-kernel DTC though, as that should always work for that particular kernel. * When OUT_DIR_COMMON_BASE isn't set, this path is relative (i.e. out/), so append $(KERNEL_BUILD_OUT_PREFIX) to account for that. Change-Id: I6ffe72a2fb061ee81b385f31f4acf682876b27c8 commit d138b042371c01044fda627b805a9218356ad00e Author: Rashed Abdel-Tawab <rashed@linux.com> Date: Tue Oct 15 00:56:52 2019 -0400 kernel: Make dtb.img depend on dtc and dtbo.img on mkdtimg Change-Id: Id079861b43862881f6a00ec70a585d98d42c4687 commit 6a095344acffdf080ce16c70ec18281aec2a6ee1 Author: George Zacharia <george.zcharia@gmail.com> Date: Mon Aug 10 23:31:53 2020 +0300 repopick: Fix repopick after c240b4a5d7c4dfdfbf8bca72a1bcd094fcf2dee8 Change-Id: I6d479eb1f8ce241077cdf229cc1fc9d9f4b83c9a commit 09463662b306e68d1f5492c70a772dfebd8371a8 Author: Aayush Gupta <aayushgupta219@gmail.com> Date: Sun Jul 26 07:19:19 2020 +0000 repopick: Address PEP8 warnings regarding indentations and variable naming - Format variables into snake case - Add spacing between # and text - Space after ',' - Test for membership with "not in" instead - Remove too many empty lines Ref: [0]: https://www.python.org/dev/peps/pep-0008/#function-and-variable-names [1]: https://www.python.org/dev/peps/pep-0008/#block-comments [2]: http://pep8online.com/ Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com> Change-Id: I16dedf465674056571782921983eb3ec4276a1f8 commit c240b4a5d7c4dfdfbf8bca72a1bcd094fcf2dee8 Author: Aayush Gupta <aayushgupta219@gmail.com> Date: Sun Jul 26 06:47:01 2020 +0000 repopick: Use empty metavar parameter to fix help's indentation Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com> Change-Id: I05329c3e5d234846a65f230f69d6b36aa3cc6fa1 commit 0ee94c5bd8290726ca953b0926a9a9759120c52d Author: Luca Stefani <luca.stefani.ge1@gmail.com> Date: Mon Aug 3 11:32:19 2020 +0200 kernel: Bail-out if kernel config isn't set * And remove stale info comment Change-Id: I0cdd5ff54ed316858045f4c4ada4d78e593667cd commit 0050eb03878070798cba509e944c259135ea7d97 Author: Luca Stefani <luca.stefani.ge1@gmail.com> Date: Sat Aug 1 21:20:23 2020 +0200 kernel: Add support for module aliases * On devices using vendor_overlay it could be useful to be able to re-name the installed modules to match the ones in vendor -> An example is QCOM techpack where default module name in kernel doesn't match installed module name Change-Id: If9458bca06218aeb8c91283057c083d909bf5104 commit 3093b62458a2db362d15106615e2103f3d5209e2 Author: Luca Stefani <luca.stefani.ge1@gmail.com> Date: Sat Aug 1 17:24:29 2020 +0200 kernel: Allow installing modules on vendor_overlay * This allows to easily overlay kernel vendor modules on devices with prebuilt vendor.img Change-Id: Ie870f0c486043b57e4b8b10696830331540ae010 commit 09c8b18b4cc8909c0614e13f5504e5cc8172e6f7 Author: Aaron Kling <webgeek1234@gmail.com> Date: Tue Jun 30 14:22:55 2020 -0500 repopick: Use upstream instead of revision to determine branch This is to allow repopick to determine a branch even on a revision locked manifest. If upstream is not set, it falls back to revision. Per the repo manifest documentation: Attribute upstream: Name of the Git ref in which a sha1 can be found. Used when syncing a revision locked manifest in -c mode to avoid having to sync the entire ref space. Project elements not setting their own upstream will inherit this value. Change-Id: I12876f7e3b440f9eab6d1b96eba9b18a13cff2e0 commit 36af2d31ad851e84699cd5c9b740d3a71bd8b310 Author: dianlujitao <dianlujitao@lineageos.org> Date: Sun Jun 28 22:16:44 2020 +0800 Export CAF msm-4.14 audio headers Change-Id: Idc7def38ad90abf4a62e30b3cec97bcb76696a6d commit 0a54155bd7a51e9bb6a0654cbb8c5bbd437ac079 Author: Aaron Kling <webgeek1234@gmail.com> Date: Fri Jun 19 18:43:16 2020 -0500 repopick: Fallback to name when project path is empty When a manifest project path and project name is identical, the repo manifest parser returns None for the project path. Since both name and path are required, fall back to using name for path when path is None. Change-Id: I2fb3cc0cc643808a3049171804742f249d737679 commit 549db6a15046eabbb24bc276fd587d37b49d5794 Author: LuK1337 <priv.luk@gmail.com> Date: Thu Jun 25 15:52:52 2020 +0200 qcom: Add UM 4.19 platforms Change-Id: Ida4861b95b0b9748ef3848674b7121010126dd3d commit b455222344b00d4dd401b928a9e4a6f1a385fcd7 Author: TheHitMan7 <krtik.vrma@gmail.com> Date: Fri May 8 14:33:44 2020 +0530 qcom: Add atoll platform Signed-off-by: TheHitMan7 <krtik.vrma@gmail.com> Change-Id: Idc74d064620649e7423a2fee076da8bd43e1cbd3 commit 066c9930a845d1c9e0c1e359866e14772f3582fb Merge: f202bfe8 1de1c520 Author: Ralf Luther <luther.ralf@gmail.com> Date: Sun Jun 7 16:13:10 2020 +0200 Merge "roomservice: support new manifest formats." into q10.0 commit 208fc0d688724febad52446f5d5fa6f7956e6f92 Author: TheScarastic <warabhishek@gmail.com> Date: Mon May 25 10:09:14 2020 +0000 soong: Add flag for fod extension Change-Id: Ib45706cc50fa88b9b05af1c68eec9d1f08d70569 commit 515f08d680baca3ab1d5f22bfcf6028850238276 Author: Andreas Schneider <asn@cryptomilk.org> Date: Mon May 25 17:03:17 2020 +0200 extract-utils: Fix usage for ETC files which need sub_dir Thanks to Tad. Change-Id: I6a0e7978afce6444d0827f97d7686f23aa7500c9 commit 924c36bc8373924b17c3a36e8d380ca0d19cab4f Author: dianlujitao <dianlujitao@lineageos.org> Date: Mon May 25 18:08:31 2020 +0800 Export qcom UM hal root to soong Change-Id: Iabb75e8745dba9069c2eab0d5ef41b2171f4c048 commit b440d7ea819ded429073825ca8150b783a00b50f Author: dianlujitao <dianlujitao@lineageos.org> Date: Mon May 25 18:20:26 2020 +0800 vendor_aicp: Sort soong variables alphabetically Change-Id: I880b07972fefb7fa2b40ab4aeacd073fb9a942b4 commit ce5fbd57f2427fa24b16b00cc113fa31b45fbeb6 Author: Andreas Schneider <asn@cryptomilk.org> Date: Sat May 23 15:58:43 2020 +0200 extract_utils: Fix vendor Android.bp creation with subdirectory error: vendor/samsung/beyond0lte/Android.bp:37:9: unrecognized property "sub_dir" Change-Id: I23becda0345f41d2cb1462e74b66a787e9ad4c96 commit d020e72adbc482fb4da37befea2376c983afcdca Author: Paul Keith <javelinanddart@gmail.com> Date: Wed May 6 19:10:03 2020 -0700 lineage: Add flag for skipping EV_REL input in recovery * Needed now that recovery is in bp Change-Id: I625ac22e79912cbdea328eba12dc1dd16448e7a8 commit 49a5285853a26e88c7fb6d2dc99ce8d90cfdf4b6 Author: Giuseppe Maggio <jertlok@protonmail.com> Date: Mon Mar 18 17:24:06 2019 +0100 Add multiple topics support to repopick Allow to pick multiple topics by appending them after the relative parser argument. Change-Id: I25666f23f879af8d9eb51703da4f35867698bb08 Signed-off-by: Josh Fox (XlxFoXxlX) <joshfox87@gmail.com> commit d0343de407dbe432aebef105de6e1ef9c8c5b6c5 Author: Kevin F. Haggerty <haggertk@lineageos.org> Date: Wed Apr 8 16:38:40 2020 -0600 Add product_launched_with_j{,_mr1,mr2}.mk Change-Id: Ibb21a4826e6dffe6b9b74898e2bd55b491bb15f7 commit f6e7583f6a5f5bafea19955ca2691d516b3d77d8 Author: dianlujitao <dianlujitao@lineageos.org> Date: Tue Apr 21 23:01:13 2020 +0800 extract_utils: Handle Brotli compressed block image Change-Id: I1b3ef34ebba9b43fd684c6abaa1dbc77c8786da7 commit 28fee21438eb56ff26f750de4b056fa18ebf625c Author: dianlujitao <dianlujitao@lineageos.org> Date: Tue Apr 21 23:03:20 2020 +0800 extract_utils: Support odm/product/vendor partition for zip extract Change-Id: Iec06835f1703e276f8882c5ee327ef241a2f8f23 commit ce2aa8925132fe88db019ebae30c54eba07667b3 Author: Nolen Johnson <johnsonnolen@gmail.com> Date: Fri Apr 17 13:13:20 2020 -0400 tasks: kernel: Clarify prebuilt kernel deprecation notice Change-Id: I229029a3b36c5564a445752c6e495817a0969240 commit 5687896620e6a82a6cb30286928353df31f06a76 Author: Luca Stefani <luca.stefani.ge1@gmail.com> Date: Fri Apr 3 18:58:16 2020 +0200 kernel: Allow specifying a custom linker binary * This is needed for using LLVM LLD ( and ThinLTO ) Change-Id: If603274326f0ff22f967455847ffe1c595f04aa5 commit 67f6ff880ca48146bbfe8dff887f7f924bd4249d Author: Julian Veit <claymore1298@gmail.com> Date: Wed Apr 8 23:29:56 2020 +0200 vendor_aicp: improve TARGET_KERNEL_CLANG_CUSTOM Boardflag When Boardflag TARGET_KERNEL_CLANG_VERSION is just set to "latest, the build process will choose automatic the latest clang version. The version to choose is defined in custom-clang repo in clang_custom.mk in variable CLANG_CUSTOM_VERSION_LATEST. Change-Id: I6e5a80d5480a41526151828c8651fa18f61e00b6 commit 6e96a8b0770c04b62d803c1e8ce295174b329752 Author: dianlujitao <dianlujitao@lineageos.org> Date: Mon Apr 6 12:45:36 2020 +0800 extract_utils: Generate deodexed apk/jar with consistent checksum * zip stores timestamp for all included files. The timestamps of dex files are different across different runs, result in inconsistent checksum of output apk/jar. * Workaround the issue by using fixed timestamp for dex files. Change-Id: I21f3a7e32cdfdb07c5f5c140df2e797efd4a8005 commit 42877d8f44c88c9fc73ea57d34ea247337cccf92 Author: dianlujitao <dianlujitao@lineageos.org> Date: Mon Apr 6 12:43:16 2020 +0800 extract_utils: Fix doubled path separator * $DST_FILE is already prefixed with "/", don't double it. Change-Id: I2655313abd7720a54b20f541a95960ae9ec373ad commit 8ce5077bc89d804d4584260cbdc109ae468cda83 Author: Marko Man <darkobas@gmail.com> Date: Fri Apr 3 20:57:58 2020 +0300 vendor_aicp: add TARGET_CAMERA_NEEDS_CLIENT_INFO flag Change-Id: Id1de0c389f589ad4ef2a24760df595454950f595 commit 083be3b49b7d67e41d98b9fb6230554311bfec7d Author: theimpulson <aayushgupta219@gmail.com> Date: Tue Mar 31 03:41:01 2020 +0000 soong_config: Add TARGET_IGNORES_FTP_PPTP_CONNTRACK_FAILURE Signed-off-by: theimpulson <aayushgupta219@gmail.com> Change-Id: I2c56fd1c09ead3e33fa2f2eb782971bd1dd9d666 commit c69b7091280fb138990659434005200c2acbc501 Author: dianlujitao <dianlujitao@lineageos.org> Date: Tue Mar 3 17:26:32 2020 +0800 Export techpack/audio uapi headers of msm 4.14 kernel * With the techpack integration implementation of Google's msm-4.14 kernel https://bit.ly/2WqiMFx (CAF didn't port this to their kernel thus suppose Google's port is the standard one), these headers are installed to include/audio/include/uapi. * This fixes building audio HAL with 4.14 kernel Change-Id: I8283699470a7bcb31c771c9aa770a825b4e82519 commit 971672b1555be20cd60be7d43282da2a64563abe Author: Han Wang <416810799@qq.com> Date: Tue Mar 10 09:40:47 2020 +0200 extract_utils: Fix up 4a2b65fb60af23b6beccd8c405fc7cea90b9474d Change-Id: I9e5ea799812ca932de95ec6cbdedb604cbde5736 commit 53aab4c7c5cf37d884cc0c1b01d991733c59287e Author: doc HD <doc.divxm@gmail.com> Date: Tue Mar 10 09:21:38 2020 +0300 extract_utils: rebrand to AICP Change-Id: I1d62af098d52f0b0bb26345a1a1ffe00389df44c commit c1e3853e54f2173b770f40279a50d1f7d59a5230 Author: XiNGRZ <chenxingyu92@gmail.com> Date: Tue Dec 24 10:37:13 2019 +0800 extract_utils: Fix bad substitution for zsh Change-Id: I5f4fabc62b1ac3da159b36c3ae6080e145948530 commit 6dbc1aa46b033f55ccbb82a3c5648d3a27944c7a Author: Alessandro Astone <ales.astone@gmail.com> Date: Sat Sep 28 16:53:08 2019 +0200 vendor_aicp: envsetup: modernize functions [installrecovery] * Don't try to mount system [installboot] * Kill kernel module pushing * Now we don't need to mount system anymore ^.^ [eat] * No need to use /cache/recovery/command when we have adb reboot sideload-auto-reboot * Make use of our custom adb wait-for-online [_adb_connected] * Could be removed entirely, but for now make it use adb wait-for-online Change-Id: Ife25e63c63c784670c7d330f8a69de01326de1a0 commit 8910e099b41a3b501c28fbaba78e2768d5f5d384 Author: Julian Veit <claymore1298@gmail.com> Date: Sun Mar 1 19:15:25 2020 +0100 vendor_aicp: introduce TARGET_KERNEL_CLANG_CUSTOM Boardflag Change-Id: I54bef07029f2f18102891304736ebcf90553d5ae commit 1de1c520b242d101dfff446b614c9a89aba73981 Author: Tom Powell <tom@powell.io> Date: Fri Feb 28 13:24:00 2020 +0300 roomservice: support new manifest formats. .repo/manifest.xml is no longer a symlink becuase apparently windows developers need to use repo and windows needs admin for symlinks. Change-Id: I12f22d374d0a175b331f35960c99a7ab347b1e37 commit b99ad2dc7dc395463e639771a295aba854c3c988 Author: Andreas Schneider <asn@cryptomilk.org> Date: Thu Feb 27 12:46:17 2020 +0100 dtbo: Sort the files we found Change-Id: Iece383362d00d600c5861914b9f2600020229d80 commit d698879dad83b29dae51c63668fcceb78d574b5f Author: Simon Shields <simon@lineageos.org> Date: Mon Nov 18 23:56:08 2019 +1100 repopick: fix --check-picked on Python 3 This is very subtly broken: we look for the string 'Change-Id:' in an array of byte strings. Fix this by decoding the git output to utf-8 strings. Change-Id: I708ad0adacb61c89bfba0fd88eeb2e37648317af commit c010b925a74b06bf3fe055c110518f47768b2ae8 Author: Kshitij Gupta <kshitijgm@gmail.com> Date: Mon Feb 10 18:24:44 2020 +0000 tasks: dtbo: Add support for custom dtbo generation rules Change-Id: I27fdade5eb177a06795fee7cc19066ec161642d9 commit 15294eb6c83c3993ebf7c6ef3b2bc8c9678d6462 Author: Michele Bono <bono.michele94@gmail.com> Date: Wed Jan 29 17:58:13 2020 +0100 vendor: Fix props Change-Id: Iac1d772a13702f6fe683d339d462c3cc6d9ac5fc commit 2222225c64876e1acdc36e89629b812a3350aa15 Author: dianlujitao <dianlujitao@lineageos.org> Date: Thu Jan 2 15:26:44 2020 +0800 extract_utils: Drop string after semicolon when parsing destination This fixes parsing when arguments contain colons, a typical usecase would be: -vendor/app/TimeService/TimeService.apk;:timeservice_app_cert Change-Id: I7500ae09632632ddc10734d9b1df267e28286b67 commit c88b2bcabec571e828fa8ec0a82ba01f21dc4883 Author: Julian Veit <claymore1298@gmail.com> Date: Fri Nov 8 14:36:02 2019 +0100 vendir_aicp: add pre_scripts.txt mechanism [1/2] Add a mechanismus to execute script on breakfast command. The mechanism check, if the script pre_scripts.txt exist in device tree and execute the listed scripts. Change-Id: Ib4dd384667f2f4f2466bdc44bc4aac564694ccb4 commit 6398e42367deb99d7f128e76ba7d03d860551130 Author: Roman Birg <romanbirg@gmail.com> Date: Wed Mar 28 09:47:30 2018 -0700 vendor: make dopush recognize files on more partitions Change-Id: Ied1a243730df1d683fd237f8ea7bd9b1742db105 Signed-off-by: Roman Birg <romanbirg@gmail.com> commit 3f2c818544c64aebd3889791a51f230d5a3ba1cb Author: Michael Bestas <mkbestas@lineageos.org> Date: Fri Sep 20 01:15:25 2019 +0300 soong: Add AUDIO_FEATURE_ENABLED_EXTENDED_COMPRESS_FORMAT Change-Id: Iac6366d714ab3634def648e6a8c0c30d684a9383 commit a29c0b03f939f54646fa7132ffc7a825964d194a Author: Jan Altensen <info@stricted.net> Date: Thu Sep 12 06:50:49 2019 +0200 soong_config: add TARGET_NEEDS_NETD_DIRECT_CONNECT_RULE Change-Id: I96dd2f7dd629a06de288332e1d00be827029e89c commit 2a2d2156b3c047805da0a56f13c237e1bfd90b93 Author: Bruno Martins <bgcngm@gmail.com> Date: Thu Nov 21 15:50:28 2019 +0000 Revert "lineage: add BUILD_RRO_SYSTEM_PACKAGE target" AOSP pushes RROs to system by default now, therefore our custom target is not needed anymore. This reverts commit 546c9a1ec50392d77851302742a7f338a8426cad. **** AICPfied. Change-Id: I46753a3b60a89f0198058fbc6d07d3db8a6699b5 commit eb7487c9851dae429f217a08559bdf12e9f2bdc4 Author: Rashed Abdel-Tawab <rashed@linux.com> Date: Wed Nov 20 15:22:57 2019 -0500 kernel: Only build dtb.img if prebuilt DTB directory is not set If the prebuilt directory is set, then the AOSP commands get activated, which will conflict with ours, so just disable ours if the prebuilt directory is set. Change-Id: Ia998ea3d1a2d3403d0261cecae12d8a5c4f689ec commit 57f31c3053d3441329fcc3a72152ef1a7dd2c260 Author: Bruno Martins <bgcngm@gmail.com> Date: Sat Sep 28 23:25:02 2019 +0100 Revert "vendor: Add qcom platform type to soongs vars" These vars are no longer useful as of Q because it looks like CAF dropped their surfaceflinger extensions (ExtSurfaceFlinger). This reverts commit 97cb87c80972e109dedf58fb71b03489b97dd923. Change-Id: I09701f6a47830a30486f35052b4ea7ab15a9660b commit 60773141ed404dcfcbc73437348f7111bce04a43 Author: dianlujitao <dianlujitao@lineageos.org> Date: Tue Oct 8 14:46:58 2019 +0800 soong_config: Reverse wait for qsee flag * Disabled by QCOM on P and onwards Change-Id: I3f27d399293a95ad75446482c8711adf5fed1f78 commit 19a92c1a6bb12c5e82b6ba72e29d09f524798c76 Author: Michael Bestas <mkbestas@lineageos.org> Date: Thu Oct 3 16:25:16 2019 +0300 Revert "soong_config: Add flag for legacy HW FDE" * No longer needed with HIDL cryptfs HALs This reverts commit c61fabe667d95b05117485566c920c44c0253644. Change-Id: Idea6bbec97af3951a0be2c3df4068cdad7ef8b0a commit 5108a0173aea60f2eb5e9b32942e237fbc6fdd56 Author: Adrian DC <radian.dc@gmail.com> Date: Sun Oct 13 12:34:06 2019 +0200 repopick: Support project paths detection on different branches * When some projects are declared in the manifests with specific changes (revision="refs/changes/../....../."), the path detection does not work, while most cases have a unique paths * Allow projects with unique branches to select their paths upon repopick with a warning about the selection Change-Id: Ic873d69f57c78f233db3d0de4ebd529f896799ea commit a901ff6e224a03611d0bd87cf280a28a1d915dbd Merge: 6cb18bf1 2d0f89f4 Author: doc HD <doc.divxm@gmail.com> Date: Tue Oct 29 23:34:30 2019 +0100 Merge "vendor/aicp: Fix dopush" into q10.0 commit 46ee487a042f53b463c841d73f29933ecd2e872e Author: Mohd Faraz <mohd.faraz.abc@gmail.com> Date: Tue Oct 8 16:13:50 2019 +0530 extract_utils: Added Suffix uses COMMON_SUFFIX * COMMON_JAVA_PACKAGE_SUFFIX for jar * COMMON_ANDROID_PACKAGE_SUFFIX for apk Change-Id: I812405dac12ef7183985c66a6e43b0ea5f85989c Signed-off-by: Mohd Faraz <mohd.faraz.abc@gmail.com> commit 5d25bc1230b539d751ba5ff561a8103b6dbe7d80 Author: Rashed Abdel-Tawab <rashed@linux.com> Date: Fri Sep 20 10:30:38 2019 -0700 extract_files: Implement blueprint file generation Switch to blueprint on: - shared objects - $partiton/etc/ files - JARs - executable binaries and scripts - APKs Only /sbin binaries are still in Android.mk because blueprint doesn't handle sbin installation yet Change-Id: I1dfd7e8bb575367b2a7fa9e333c4c6fa3aa68180 commit d000882f41a4ae69c191cf29311ce16639411a61 Author: Rashed Abdel-Tawab <rashed@linux.com> Date: Fri Sep 20 07:06:09 2019 -0700 extract_files: Add initial blueprint creation Start the copyrights for these at 2019 because the blueprints won't have existed before then. Change-Id: I5300109949785dd19555e35d17a1e80daef498b0 commit 4e8c2e5f8c9c02e5ec935f5bcfbc4767f5fc1cb5 Author: Rashed Abdel-Tawab <rashed@linux.com> Date: Sat Oct 5 00:09:41 2019 -0400 extract_files: Match non-treble path prefixes Some devices put stuff on /system, /system/vendor or even /system/vendor/odm. Search for these paths too when generating TARGET_COPY_OUT_$partition variables. Change-Id: Ie2c087e57aaca02d5ea93f290d5fc50d1315a600 commit 6d3cceecf3393069576ecbc64a6afb9bbe719b87 Author: Rashed Abdel-Tawab <rashed@linux.com> Date: Sat Sep 28 23:37:36 2019 -0400 extract_files: Support system/ prefixes With support for 4 independent partitions now, we seriously need to start putting /system blobs in their own directory. Add support for file lists with system/ prefixes while maintaining support for old file lists without it. Also, TARGET_COPY_OUT_SYSTEM is a thing now, and all devices, regardless of treble or not, set TARGET_COPY_OUT_$partition so let's get rid of the treble compat option and default it to true. Change-Id: I5b798d293768d7c1e16db3ba01e2de3e083088d7 commit a353751a19f48fefce49a056ee78642031accbf3 Author: Rashed Abdel-Tawab <rashed@linux.com> Date: Fri Sep 20 07:32:39 2019 -0700 extract_files: Add ODM partition blob support Change-Id: Id94bbef879b6f4bcc20645c259981f9d163649c9 commit 2d0f89f4eb18265d94ebf51eee5931fa0c4c1a19 Author: Sam Mortimer <sam@mortimer.me.uk> Date: Sat Oct 12 02:14:13 2019 -0700 vendor/aicp: Fix dopush * $OUT is now absolute so strip $ANDROID_BUILD_TOP before looking for targets to adb push. Change-Id: If00e58a98484b7b6b2ee6e4ecd00fc3031e1f47b commit 6839a8363165a4a429c54dc8de5b40de3f22dbba Author: Dan Pasanen <dan.pasanen@gmail.com> Date: Mon Oct 7 12:55:32 2019 -0500 build: dt_image: use prebuilt lz4 binary for compressing * Also remove the lz4c fallback. We're providing an lz4 binary that works, so it shouldn't ever have to fall back to lz4c. Change-Id: I5b1346c55dc97daec13e087c501840628a7265e8 commit fafabae6300a7b3ab13ca955ea1a70ab8a1dedd9 Author: SpiritCroc <dev@spiritcroc.de> Date: Sun Oct 20 10:18:13 2019 +0200 roomservice: Use default branch from aicp remote For manifest default, we're using aosp right now, so fix roomservice. Change-Id: I9800fcdde4fd772ab96fc56d278fdc3ce1ee89ed commit 312eab822bfa97da0db04f98a9290d8bc20fee18 Author: Rashed Abdel-Tawab <rashed@linux.com> Date: Sun Oct 13 16:59:57 2019 -0700 kernel: Define DTBS_OUT path for dtb.img building Change-Id: I9fb3943c44c74985d9a4a841338767345a11ded2 commit 6c75d791873a0c2c2a706bfc5fd88051fdc821f3 Author: Rashed Abdel-Tawab <rashed@linux.com> Date: Mon Oct 7 14:42:30 2019 -0400 kernel: Move our dtb.img logic here Our build/make changes break incremenetal builds with prebuilt dtb dir (see discussion here: https://android-review.googlesource.com/c/platform/build/+/1134337/1/core/Makefile ) Instead of using the AOSP recipe, just define our own and use it by not defining BOARD_PREBUILT_DTBIMAGE_DIR Change-Id: If579b1670db447557b6f76ca79ecec22661c4080 commit 893cb67c651b562dfc826299d2dec0f5fc5a72ef Author: Rashed Abdel-Tawab <rashed@linux.com> Date: Fri Sep 27 23:37:14 2019 -0400 kernel: Build dtb.img from compiled dtbs Change-Id: If419d090740c005357fbd1665f78296d106b4509 commit 54b3c776ae4950f4c87502a7cbda49ea9f7a2114 Author: Rashed Abdel-Tawab <rashed@linux.com> Date: Mon Sep 30 15:39:31 2019 -0400 kernel: Don't re-define dtbo.img names These are already set in BoardConfig, no need to set them again Change-Id: I30eb44f748d0f427145beb5d6cd53ece14281abd commit 8cc88fcf4321a3df31188e9998fd651370953deb Author: Michael Bestas <mkbestas@lineageos.org> Date: Wed Sep 25 21:08:30 2019 +0300 build: Remove qcom power HAL pathmap * Power HAL is a HIDL HAL now, so you can simply build a device specific one with a different name Change-Id: I88b0a71dbcc98cbc8e7b5c284a3956e259d21115 commit 121798c2cf6334101807f63d8a807112301d3e81 Author: Rashed Abdel-Tawab <rashed@linux.com> Date: Mon Sep 30 11:11:50 2019 -0400 kernel: Make kernel depend on depmod After moving modules to this target, we need to depend on depmod Change-Id: I32ac51173db304cc019e45df006c26a2583b8587 commit a3f7710ef6e30af990bae0891178d12ff01cde12 Author: Michael Bestas <mkbestas@lineageos.org> Date: Sun Sep 22 17:19:49 2019 +0300 Revert "soong_config: Add flag for devices use metadata as FDE key" * Qcom reverted the relevant commit in cryptfs_hw This reverts commit a4d6ce67e76769bea45a1538c3e2d52b12dd9a38. Change-Id: Ife1812ebc80946953e3d1a558617c94ddbc7fad4 commit 991e1cfb7b52c0a46b6560c6044b1a132421a43f Author: Alessandro Astone <ales.astone@gmail.com> Date: Wed Sep 11 12:33:20 2019 +0200 lineage: allow Has_legacy_camera_hal1 to configure Shared_libs and Overrides * mediaserver is now bp Change-Id: I07e42ca605a3677ae431b38b0e68e5248e0a608c commit 2a42429429f4fac7e64cc0c50e50ce44591d6468 Author: PIPIPIG233666 <2212848813@qq.com> Date: Sun Sep 29 12:47:28 2019 -0400 extract_utils: Fix typo * ./../../xiaomi/sm6150-common/../../../vendor/lineage/build/tools/extract_utils.sh: line 1: /#!/bin/bash: No such file or directory. Signed-off-by: PIPIPIG233666 <2212848813@qq.com> Change-Id: I178f745d4ecb818c38706ff100611df19221065d commit bff5a39199f89f15abf0ffa3562d5404e3e99ab2 Author: Bruno Martins <bgcngm@gmail.com> Date: Mon Sep 23 11:51:33 2019 +0100 extract_utils: Source the prebuilts from the new repo The prebuilt tools now live in prebuilts/tools-lineage. Change-Id: I4022210c52e1002aae0c6e622a480e5c7e10c366 commit a503017f0aa7ec63e457ee4dbc2fa3c2be8321cc Author: Bruno Martins <bgcngm@gmail.com> Date: Mon Sep 23 11:51:33 2019 +0100 build/tools: Move prebuilts to the new repository Going to be imported into prebuilts/tools-lineage. Change-Id: I81dd06249a8de8f4970be30d75b396c85d4c4fb7 commit 467973bd26bead5639df7e6ed19fbb18a05759d6 Author: Alessandro Astone <ales.astone@gmail.com> Date: Fri Sep 6 13:07:03 2019 +0200 vendor: env: fixup recovery fstab path Change-Id: I36860bdee4f9d3c186ca643becb37ad20213628c commit a2ae6c5fde3443ca32e6e3b1dd42ae29790ebe7e Author: Michael Bestas <mkbestas@lineageos.org> Date: Wed Sep 25 21:11:43 2019 +0300 build: Don't set pathmap for repositories that do not exist * Camera, gps and sensors are device specific most of the time so we do not sync the generic repositories for these projects Change-Id: Ibb5d0066e362d285a862ea0c0f2a2c824f84f73d commit 555cbaa074b5234716a6b539a7ec284fd8c3642f Author: Michael Bestas <mkbestas@lineageos.org> Date: Wed Sep 25 21:04:48 2019 +0300 build: Don't set pathmap for AOSP qcom hardware repositories * No longer needed after I9cf83430ffec4fbd224e724513d371ba8785606d Change-Id: I594266314e1121ac6f13f9ed79774088667090d4 commit f9887ab7b28f7438b2480ae3d161b034c7c0d2de Author: Rashed Abdel-Tawab <rashed@linux.com> Date: Sat Sep 7 23:49:07 2019 -0700 build: Move to new qcom HAL directory layout All CAF forked HALs now reside in hardware/qcom-caf/ Change-Id: I9f84cebf021418c0b402bc3186f37643e63afb24 commit 0882486a1ce194910ccc28639683418b85cbdc81 Author: Michael Bestas <mkbestas@lineageos.org> Date: Wed Sep 25 21:03:05 2019 +0300 build: Move hardware/qcom/audio back to its original path * This is a leftover from the early pathmap changes in cm-12.0 Change-Id: Ie1dc738c65cd7ffbf352eb10271b00da0f5ff393 commit 94b9318c4ee9ce0efe5af829a414b95edba8c20c Author: Michael Bestas <mkbestas@lineageos.org> Date: Wed Sep 25 20:57:26 2019 +0300 build: Remove ability to set WLAN/BT_VENDOR variant * These flags have no users since cm-14.1 Change-Id: Ia2b2fd5d95e856fdae3ec23532bc6eceff2910c6 commit 4c91a066b858d425a60d27e641b44810d7362cd0 Author: LuK1337 <priv.luk@gmail.com> Date: Sat Sep 21 11:47:33 2019 +0200 repopick: Print change subject as unicode * This prevents from seeing stuff like "b'frameworks: Add unlinked ringtone and notification volumes'" when using python3 as default. Change-Id: Ie1fa85681b648edcee65680d784da4dff1779616 commit bdeb27be9fcadf78d697200b6ffcf4910860f04b Author: Luca Stefani <luca.stefani.ge1@gmail.com> Date: Sat Sep 14 16:26:26 2019 +0200 kernel: Fix specifying custom clang compiler version * Folder layout name changed in Q Change-Id: I823867334e87fbb3c240a92e62484b6531dfcd22 commit 957002e29856e75d21a33daad817327f7c4bc84e Author: Tim Schumacher <timschumi@gmx.de> Date: Sun Sep 8 15:32:39 2019 +0200 Add generic aicp targets to lunch choices Change-Id: I80d77d7cdbdfa156e951003a218ba8a58d51b3d4 commit 2de061123e405358ec68870b9697644c7b09352d Author: Han Wang <416810799@qq.com> Date: Tue Sep 10 13:08:04 2019 +0200 soong_config: Add new flag for vendor_init Change-Id: I383f1de230ecf7b79d78fe701b140bd1bc6795f2 commit a8e705f52c4c125490b61f12fbd098efb5391d56 Author: Stricted <info@stricted.net> Date: Sat Feb 17 17:28:52 2018 +0100 vendor: soong: replace space with colon on TARGET_LD_SHIM_LIBS that way we can split the shim list logically into multiple lines like TARGET_LD_SHIM_LIBS := /system/bin/gpsd|/vendor/lib/libshim_gpsd.so \ /system/lib/libexynoscamera.so|/vendor/lib/libexynoscamera_shim.so \ /system/lib/libstagefright.so|/system/lib/libstagefright_shim.so to not have one single huge line [lineage-17.0] this got lost in: soong: rework soong_config for Pie Change-Id: I3c5001f02975e5487ba66a02217f1d24d2021272 Change-Id: Ice1411ee22b78da1dbf22eac412b9e4978acebdf commit 70bc9fb0a73c114dea3c4a8a3d30d9b691f520af Author: dianlujitao <dianlujitao@lineageos.org> Date: Thu Sep 12 17:37:45 2019 +0800 kernel: Fix module installation and clean up * Fold module installation into kernel image recipe. * Specify make argument to strip modules on installation instead of explicitly invoking the strip tool. * Remove support of TARGET_KERNEL_MODULES, it's a phony target thus we're not allowed to depend on it per Android 10 restriction. It has been useless for years anyway. * Apply minor clean-ups. Change-Id: I288af1b2f741f524c2ef49554e15cb91c3115209 commit 94b3350f78e15822d2004064560e5ed53213efdd Author: Rashed Abdel-Tawab <rashed@linux.com> Date: Tue Sep 10 08:44:55 2019 -0700 kernel: Set kernel build outdir prefix for depmod too I missed these in the absolute path killing Change-Id: Ibd63c36b9bafe264c7e05672838e5e0186ac5314 commit a2c6e1f9ae7c7eda0cf69b27e047ccbfadb104a5 Author: Rashed Abdel-Tawab <rashed@linux.com> Date: Tue Sep 10 08:38:34 2019 -0700 kernel: Add GCC toolchains to the path Tools like `as` only exist in the GCC toolchain, so we need that Change-Id: I025d0d9bdf6eda94a538d2d6ddafbecc8830f471 commit e8d8b99a7d0ba85a13f2f4a51b81eff2ea6499f2 Author: Raienryu97 <cherukupallip@gmail.com> Date: Wed Sep 11 00:17:17 2019 +0300 vendor_aicp: Add command brunchopen to envsetup This command does the normal brunch and just opens up the final zip directory in a file manager. Thanks Davor for helping make this work on all file managers. brunchopen : Don't change dir, only open zip dir. Change-Id: I258b8e5de481daf1fd66d66398b94c0315ee7492 commit cd2c4f4b3e4cf465dff9f93ea54327acb7d6ab3a Author: Bruno Martins <bgcngm@gmail.com> Date: Wed Sep 11 22:02:28 2019 +0100 vendor: Trash the last bits of SDClang support Change-Id: I9ccb9b931a63342e233578c3ddbc5ea6391af601 commit 82d4a5794e6c8f8d598c1b3dfa3c82b31f325edb Author: Bruno Martins <bgcngm@gmail.com> Date: Wed Sep 11 21:54:28 2019 +0100 envsetup: Remove call to deprecated function This allows us to get rid of the following warning when running `breakfast` command: add_lunch_combo is obsolete. Use COMMON_LUNCH_CHOICES in your AndroidProducts.mk instead. Change-Id: I5b05515465d40b9b77f74c69293a1431c5325f5d commit f5d75b4d71b401141a8d29af38ab577cf6dce39e Author: Bruno Martins <bgcngm@gmail.com> Date: Wed Sep 11 21:48:43 2019 +0100 envsetup: Kill Jack args export Jack is dead since O. Change-Id: I46e2102de025cbe141fb08f0edfb7d24ee3b7e91 commit c502196c63fde04d8789ea05deff96ab296455a9 Author: Sam Mortimer <sam@mortimer.me.uk> Date: Tue Sep 10 11:40:34 2019 -0700 vendor Support relative OUT_DIR in fixup_common_out_dir * For use with AICP_FIXUP_COMMON_OUT=1, update symlink handling to work with relative OUT_DIR. * Fixes error: FAILED: ninja: error: mkdir(out/target/common/obj): No such file or directory Change-Id: I958be470b4d9ff2074442f210b1a73541e4981c8 commit c10cb1aa33666883864fe76a9e0961fb7b8d7fd0 Author: razorloves <razorloves@gmail.com> Date: Mon Jul 29 02:21:34 2019 -0500 extract_utils: Support extracting from product partition Change-Id: I2d0d01253fdf93d63a26556208d45cd69e76329f (cherry picked from commit ea15be6e92e3be0c103948d220de64fd2e1d781f) commit ff2f9e407be16c09bbd53718f69528904076c097 Author: LuK1337 <priv.luk@gmail.com> Date: Mon Sep 9 21:58:19 2019 +0200 lineage: Mark generated_kernel_includes as recovery_available Change-Id: Id4eed981e601244330a8ced1d5433254d808b3fd commit 47b37823a72bc8c307ff6a76d60e0b93547e12ae Author: Rashed Abdel-Tawab <rashed@linux.com> Date: Sat Sep 7 17:01:13 2019 -0700 kernel: Use absolute path for kernel O= argument The kernel make command is executed in the build root. Without absolute out paths, kernel out start with "out/" meaning it would be created in the kernel source. Add BUILD_ROOT to the argument to ensure it's always made in the actual out/ dir. Change-Id: I425134a893d4d5c9f31efccaf75e153b5462b76c commit e3b732d6996aceee0740677e4cd876a2acf5385f Author: dianlujitao <dianlujitao@lineageos.org> Date: Fri Sep 6 10:46:50 2019 +0800 Fix real file depends on PHONY target Change-Id: I638273c4e14d741b531385a30a963ca965ab9dfc commit a9b7a251558d6ee960ef5edb78d64b19f3db9d09 Author: Rashed Abdel-Tawab <rashed@linux.com> Date: Fri Sep 6 10:44:50 2019 -0700 kernel: Use prebuilt binaries perl, lz4c, and a bunch of other binaries are not allowed anymore. So we need to provide our own. Change-Id: Iafc71a35ffb831f5191e020ad1e09ad99d9dc421 commit b1edb65c2420e19761cac967161a6d618455fd86 Author: Rashed Abdel-Tawab <rashed@linux.com> Date: Thu Sep 5 21:21:13 2019 -0700 kernel: Use full path to the make command make is now a dissallowed command so just run the full command Change-Id: I523a7ca8d4cc32287e8dfc51469a32429d536601 commit ac872b7a21181c5a62b027df4a05749335c1f0fd Author: Alessandro Astone <ales.astone@gmail.com> Date: Fri Sep 6 01:13:17 2019 +0200 vendor: soong: _contents -> _json_contents Change-Id: I34849652cb4fcce793653e9ab4999f8b8f718e97 commit 06f2e9a316ffe71cfd6097993f6bf6aa3896f322 Author: Sam Mortimer <sam@mortimer.me.uk> Date: Wed Sep 4 23:03:18 2019 -0700 vendor: Depend on existing definition of empty Defined and marked readonly in build/make here: https://github.com/LineageOS/android_build/blob/7ddc50a066287b804a754951a597668d627478df/common/core.mk#L46 Change-Id: I172548f66a82677b206abed5b5bb489a1e19508d commit 04fce9300482eec6c253e47b4686ef06dfaeb3a1 Author: Rashed Abdel-Tawab <rashed@linux.com> Date: Sun Sep 1 17:44:22 2019 -0700 aicp: Add goldfish privapp whitelist and move to common aicp makefile Aicp GSIs now work. Test: lunch lineage_arm64-eng; m -j systemimage Change-Id: Ic2be5e9e2353b12a6cfd8f002dea0e72280b28ac commit 47fc02266f9cb20963567b886027dd1cce1d2ff4 Author: Michele Bono <bono.michele94@gmail.com> Date: Wed Sep 4 11:58:16 2019 +0200 vendor_aicp: Rework for Android10 Change-Id: I5c4b1b42be11bd1840705edcc9cb41b5781666de commit f3fec536cdfe6d7e765c36d812022a80acdf30ee Author: Michele Bono <bono.michele94@gmail.com> Date: Fri Aug 16 18:34:46 2019 +0200 vendor: fix a lot of shit going on Change-Id: I5b789ee5ba273c7fdbbb707bafb2255ca2224457 commit 81fe8594129aeccbc500d4d53746aa1c2f7aa814 Author: jhenrique09 <jhenrique09.mcz@hotmail.com> Date: Tue Jul 16 15:58:42 2019 -0300 vendor: Add qcom platform type to soongs vars Required for new commits on frameworks/native * Fix lag during screen recording on some platforms * Fix screen flickering after disconnecting from Android Auto on some platforms Change-Id: Ia0ed0bbfda44fb5ccb184ace854ec1bf9a7d819a commit 903b7ec5bfed3fafc6bed3038b801f0a7578f269 Author: Rashed Abdel-Tawab <rashed@linux.com> Date: Fri May 17 12:03:57 2019 -0700 qcom: Add UM 4.14 platforms * Note: msmnile is treated like msmnile because unlike other Qualcomm codenames msmnile does not expand to 8150. Change-Id: If246c0ec06de22097d369c17ce48aa1270bab19c commit 7d40d59f701976a8940cabf823be76c29485ea35 Author: LuK1337 <priv.luk@gmail.com> Date: Fri Jul 12 12:55:35 2019 +0200 kernel: Consider depmod version when handling kernel modules * This fixes dirty boot image rebuilding on devices with CONFIG_LOCALVERSION_AUTO=y and any driver set to =m. * Basically appending `cat include/config/kernel.release` to modules path makes sure that our find does not return old modules which would make cp fail with 'cp: will not overwrite just-created' message. Change-Id: Ifb79d33b95d7671d8b2d6633644c8b8290d1f442 commit eb3bc193fd915cb83afd14f47689222c36cfc35b Author: Rashed Abdel-Tawab <rashed@linux.com> Date: Thu Mar 15 12:55:22 2018 -0700 extract_utils: Support multidex Co-authored-by: Erfan Abdi <erfangplus@gmail.com> Change-Id: I4881658d303b6c5c7f0b141beb50c1e9100af611 commit 3e1cf93b8d3a886022607961f2119b0bbaccdb7d Author: Isaac Chen <isaacchen@isaacchen.cn> Date: Wed Oct 3 15:29:15 2018 +0530 build: Support SDM710 platform Change-Id: I958a6bfd1087f5437f4074e614198bb622d476ce Signed-off-by: Isaac Chen <isaacchen@isaacchen.cn> commit 501e29b33086deb785f461a885c6b96d092c37b7 Author: Ethan Chen <intervigil@gmail.com> Date: Sat Jun 22 14:12:40 2019 -0700 build: Separate platform macros from QCOM platform definition * The macros used in the file formerly called "qcom_utils.mk" are actually generic and not QCOM-specific. Move the QCOM_BOARD definitions to a QCOM-specific location, and name the remaning macros something more generic. Change-Id: I6747bc9201e56b456caf251122057d7dbc233f1c commit 636987eadfc64a5d77617c4e27b2b792fba67245 Author: Ethan Chen <intervigil@gmail.com> Date: Sat Jun 22 13:30:38 2019 -0700 build: Reorganize inclusion of QCOM macros * There's actually not a whole lot QC-specific about these macros, make them available at definition.mk inclusion time rather than relying on BoardConfig to include them. * Don't create a dependency on QCOM macros from a makefile that is included very early in the build process. Change-Id: I3dcaf0e068ca44732cfe58f69384621781ddda67 commit 6a3f4f93e49f953e14062779657b7c0453c1b2c8 Author: Ethan Chen <intervigil@gmail.com> Date: Sat Jun 22 13:16:21 2019 -0700 build: Set mode for makefiles * These shouldn't be executable. Change-Id: Idcb4e46f0ac69116b4837cd31f9f2e506b41a3f2 commit 585f79f03b25e2dbd07dbb7aa4943b892ff6a70d Author: Rashed Abdel-Tawab <rashed@linux.com> Date: Fri Mar 29 20:07:25 2019 -0700 extract_utils: Add functions to extract vendor blobs from vendor.img Change-Id: I6f37adc955856fa78e719eb30249800abe80020c commit aa1365cc605b3aa9215b16bbbd769aa6608edb5b Author: Luca Weiss <luca@z3ntu.xyz> Date: Sun Nov 25 14:07:12 2018 +0100 repopick: cmp() is not available in Python 3, define it manually Change-Id: I16a89aa555e62f105d888e87cb43afd26606076b commit bbc7b673f716c39d4e8d4c005157fbc5bf4d71e7 Author: Erfan Abdi <erfangplus@gmail.com> Date: Sat Mar 9 12:03:41 2019 +0200 soong_config: Add flag for devices use metadata as FDE key Change-Id: I5f70280e72613a8f850cb3263c45e95e80cb8b3c Signed-off-by: Erfan Abdi <erfangplus@gmail.com> commit d06580fb621f320bc59377218583e91489da6216 Author: Rashed Abdel-Tawab <rashed@linux.com> Date: Thu May 16 14:01:19 2019 -0700 lineage: Rework DTBO image generation Currently we handle the DTBO images from start to finish, including AVB footers, and just drop them in $(PRODUCT_OUT)/dtbo.img when done. While this works for the most part, we are limited in what we can do with the DTBO images. For example non-A/B device recovery images must have a copy of the DTBO image appended to recovery (see AOSP docs: https://source.android.com/devices/bootloader/recovery-image ). This means that we need to pass the pre-AVB dtbo image into BOARD_PREBUILT_DTBOIMAGE in order to let the AOSP build system handle it. This commit reworks the way the DTBO images are built, placing them at $(PRODUCT_OUT)/dtbo-pre.img instead and setting BOARD_PREBUILT_DTBOIMAGE to that path so the AOSP build system can pick the images up and sign them and append to recovery (for applicable devices). Change-Id: I8819d7cd92ba298de67dbc7f6b321917ba8524f1 commit c9920ccfb0ec0751d453a1fc5b2c5dd4a958e53a Author: Vladimir Oltean <olteanv@gmail.com> Date: Thu Jan 17 03:07:34 2019 +0200 extract_utils: introduce support for executing blob fixups * Traditionally, the task of hex-editing blobs has been approached in 2 ways: (1) Do it out-of-band, commit the modified blob, and record its edited sha1sum in proprietary-files.txt (aka pin it). (2) Do it in-band, by adding code to the device-level extract-files.sh (usually this performs patchelf or sed). This code runs after the extract_utils functions were invoked. * Problems of approach (1): - It relies on verbal (basically commit message) documentation of the hex-editing that was done. Makes it more difficult to reproduce. - Each time blobs are updated, pinning needs to be temporarily removed, hex-editing done again manually and new hash put back. * Problems of approach (2): - It is incompatible with the concept of pinning, which is useful for kanging blobs from another device. A pinned blob would either: - Match the hash, get hex-edited, then it won't match the hash next time around. - Not match the hash (because of, say, hex-editing), then the extraction script would use an unwanted blob version instead of the pinned one (either that, or say "!! file not found in source"). * In summary, this patch adds system-wide support for approach (2) in order to address the aforementioned shortcomings. * At device level, users of extract_utils who wish to perform blob fixups can override a blob_fixup() Bash function in their extract-files.sh immediately after running "source ${HELPER}". The blob_fixup() function will be called by the common extract() function after extracting every individual blob, giving the user the opportunity to hook custom code after this operation takes place. * In proprietary-files.txt, the line corresponding to this blob which needs fixups can look in one of 2 ways: (a) vendor/lib64/vendor.qti.gnss@1.0_vendor.so Do this if you are taking the blob from the stock ROM. The fixup script will always run after the blob is extracted. (b) vendor/lib64/vendor.qti.gnss@1.0_vendor.so|249c76153f8de014bf2dd2ab623ee3d87741fbc8|f7e9ee8e3804887a2f3939128e860767e6f27258 Do this if you are kanging the blob from somebody else. The pinning logic now applies for both the pre- and the post-fixup hashes. The fixup script will only run if the blob doesn't match the hex-edited blob, although the fixup script should really be idempotent. Change-Id: Ifdd73c885d995c645f6210597537693d1a2f903f Signed-off-by: Vladimir Oltean <olteanv@gmail.com> commit 80f0dd542956ea24668c718910d43ed30714db8f Author: SpiritCroc <dev@spiritcroc.de> Date: Thu May 9 15:53:44 2019 +0200 roomservice: allow adding remove-project Change-Id: I3c2c34618c6cdf5b60a3dede99710c147c251c8e commit 3ab4378df2880a4f74bbdf37a54df7884945a003 Author: Thor Lee <guaiyihu@foxmail.com> Date: Thu May 2 09:31:30 2019 +0200 kernel: Fix modules path generated in modules.dep This patch fixes the error generated path of modules in modules.dep. Tested on Redmi Note 5(whyred). Before: /vendorlib/modules/test-iosched.ko: /vendorlib/modules/mpq-adapter.ko: /vendorlib/modules/ufs_test.ko: /vendorlib/modules/test-iosched.ko /vendorlib/modules/rdbg.ko: /vendorlib/modules/br_netfilter.ko: /vendorlib/modules/gspca_main.ko: /vendorlib/modules/mpq-dmx-hw-plugin.ko: /vendorlib/modules/mpq-adapter.ko After: /vendor/lib/modules/test-iosched.ko: /vendor/lib/modules/mpq-adapter.ko: /vendor/lib/modules/ufs_test.ko: /vendor/lib/modules/test-iosched.ko /vendor/lib/modules/rdbg.ko: /vendor/lib/modules/br_netfilter.ko: /vendor/lib/modules/gspca_main.ko: /vendor/lib/modules/mpq-dmx-hw-plugin.ko: /vendor/lib/modules/mpq-adapter.ko Change-Id: I84d51f4c418fda0d99890db0fd5d976c42f54295 commit 6926663997d1e5e6f98e99e8f3bae2c59da458cc Author: Giuseppe Maggio <jertlok@protonmail.com> Date: Mon Mar 18 17:24:06 2019 +0100 Add multiple topics support to repopick Allow to pick multiple topics by appending them after the relative parser argument. Change-Id: I25666f23f879af8d9eb51703da4f35867698bb08 commit d041eae0d2ad08a9cab59790cd5d1d0c19619842 Author: Ethan Chen <intervigil@gmail.com> Date: Sat Mar 3 18:44:40 2018 -0800 qcom_target: Move RIL path mapping to core/config.mk * hardware/ril is a required project for any build. Move the path mapping logic to core/config.mk so any build has access to the correct default mapping. Change-Id: Ia52919d7877ddc91f8a4a988fd0858d14837fc4c commit 22ee62d037a06a5335c639704cdc3f6456f0a58f Author: Ethan Chen <intervigil@gmail.com> Date: Sat Feb 9 15:15:11 2019 -0800 kernel: Use build-image-kernel-modules instead of copying it * Call the build system's build-image-kernel-modules function instead of redefining all of it inline ourselves. Change-Id: Ifc4bd3c452393389a14174f4cc29a8f7ef064b93 commit 1e801e880fd7e000b08878b5fd6b1c9e06ba86b5 Author: Ethan Chen <intervigil@gmail.com> Date: Sat Feb 9 16:26:51 2019 -0800 kernel: Use a macro for kernel build targets Change-Id: Idb61ddbfd630401da09a0c3207aaab7e25bc4b14 commit 7003bb0200ed80da4cdd9c4f820f1c2c3291a1b7 Author: Ethan Chen <intervigil@gmail.com> Date: Sat Feb 9 21:05:01 2019 -0800 kernel: Detect kernel module usage better * Check for any actual kernel modules, rather than just the presence of kernel modules being enabled as a kernel feature. Change-Id: I6b7e82d5c59dd57621d9f9e2d1fd606997790d1c commit ca363c506c3dbd2b2957b0adad2efc7e88eb39a4 Author: Ethan Chen <intervigil@gmail.com> Date: Sat Feb 9 15:23:18 2019 -0800 kernel: Move kernel module dir cleanup/creation to module install target * The directories used by the kernel module install rules are performed as part of the rules in the kernel build itself. This is likely a leftover from before kernel module install was separated. Change-Id: Iee2f73a0f8e0f274b1c2931ba57277ff14d7f5cc commit f153e6433958831e18d396d9cf718418f5ffa265 Author: Ethan Chen <intervigil@gmail.com> Date: Sun Feb 10 12:12:50 2019 -0800 kernel: Move full kernel build guard flag below all targets * The Pixel DTBO generation step should also be guarded by the full kernel build flag. Change-Id: I06d230b1b32ad9d974f90bfe6ae82008f4454d83 commit 6f653997707c7c026176156d6feb12c20a09ea73 Author: mosimchah <mosimchah@gmail.com> Date: Tue Mar 5 21:07:48 2019 -0500 vendor_aicp: Add build templates from lineage Updated until https://github.com/LineageOS/android_vendor_lineage/commit/bff959a5ab1eaeb7bf42782d06333f276306504c https://github.com/LineageOS/android_vendor_lineage/tree/lineage-16.0/build/templates Change-Id: I753c80e3c5d95e6121b32885eee10dd618421508 commit 1fee04dd634cad4ffc96dd6297309b3194a42f37 Author: Vladimir Oltean <olteanv@gmail.com> Date: Sat Jan 19 00:44:07 2019 +0200 extract_utils: make --section match words anywhere in the line Change-Id: Ia3fe2160f0f4bc7da1b5bd31a21080af51b41fab Signed-off-by: Vladimir Oltean <olteanv@gmail.com> commit fa62cfc6d99fe17624e34f5a90c2c1815b6b4fc4 Author: Vladimir Oltean <olteanv@gmail.com> Date: Thu Jan 17 03:05:52 2019 +0200 extract_utils: introduce -k (kang mode) option * The use case is easier updating of pinned blobs. When --kang is set, pinning is automatically ignored, and the script will print lines at its output that can be directly copied back into the proprietary-files.txt. * Best served together with --section ${SECTION}, and proper grouping of the proprietary-files.txt. Change-Id: I648fbcbd4580a4a002b00828bcfee18d1e265d7b Signed-off-by: Vladimir Oltean <olteanv@gmail.com> commit 2a3e68f2eafa7088ffa5fa61697308eea630a988 Author: Vladimir Oltean <olteanv@gmail.com> Date: Thu Jan 17 03:04:16 2019 +0200 extract_utils: cleanup variable names and arguments passed to extract() function * This also makes the --section argument non-positional, since otherwise it is not possible to easily support more than one optional positional argument. This is in preparation of one more optional argument to come in a follow-up patch: --kang. Change-Id: Ieb142e0854319defb9a278ab68cd4aeefd0fbdd5 Signed-off-by: Vladimir Oltean <olteanv@gmail.com> commit b5cfebda9a9b50a60375c962d2a438756b3980b6 Author: Vladimir Oltean <olteanv@gmail.com> Date: Sun Jan 6 19:38:31 2019 +0200 extract_utils: be compatible with system-as-root layouts * The use case is that if you have the following layout: $TOP --- system.img | +-- vendor.img you should be able (from $TOP) to: mkdir system; mount -o ro,loop system.img system mkdir vendor; mount -o ro,loop vendor.img vendor and then (from device tree) ./extract-files.sh $TOP But this doesn't work if system.img is SAR and contains another "system" dir inside. This patch makes sure it searches for a "system" dir in the provided path as well, if it couldn't find the blob anywhere else. Change-Id: Ib49cd5b587b3a57478a66ff69cf840270c2b1403 Signed-off-by: Vladimir Oltean <olteanv@gmail.com> commit 0c9a41ec2a18bdd11e17985c2f69402df1da2b54 Author: Vladimir Oltean <olteanv@gmail.com> Date: Mon Dec 24 01:03:47 2018 +0200 extract_utils: drop the "/system/" prefix from prints of blob names * This makes the printed output closer to the proprietary-files.txt syntax Change-Id: I81b844bb6bb1d1a2f91a39151a892fbfc0bed20b Signed-off-by: Vladimir Oltean <olteanv@gmail.com> commit d9887b350fbd08365e4bc10822793a73c39b4a50 Author: Luca Stefani <luca.stefani.ge1@gmail.com> Date: Sun Feb 3 12:25:55 2019 +0100 Never allow neverallows Change-Id: Ibf07e9e319d676666e3e7389720c24917e38a9ac commit d643543db646aa0bcc278c6c3957c446d0773bae Author: Michael Bestas <mkbestas@lineageos.org> Date: Mon May 28 13:49:51 2018 +0300 lineage: qcom: Set thermal & vr HAL pathmaps Change-Id: I1f9e5060764fe8e4e0f58c0ded1f6bf1b28c0567 commit c224142469365327cd96cfaa4f70fa8d665e76d4 Author: mosimchah <mosimchah@gmail.com> Date: Sun Jan 20 17:21:12 2019 -0500 vendor_aicp: Update build tools from lineage Updated until https://github.com/LineageOS/android_vendor_lineage/commit/b2c382193d25547b928ea7f6fd9fc2efaa291f9e https://github.com/LineageOS/android_vendor_lineage/tree/lineage-16.0/build/tools Change-Id: I8f7fdceda62b3fa7370ffc02209c83d1493ef70e commit f49c4e1e219afbae04ba488529a1e557a4917729 Author: Michael Bestas <mkbestas@lineageos.org> Date: Thu Jan 3 23:54:09 2019 +0200 lineage: qcom: Set proper CAF data-ipa-cfg-mgr pathmap Change-Id: Ibaec558bfe945a204968e7f7a3df85dd91d49483 commit a1a88bc8ebd488a68db9cdf451eeed4f19902de9 Author: Ethan Chen <intervigil@gmail.com> Date: Sun Dec 9 16:43:56 2018 -0800 lineage: qcom: Set data-ipa-cfg-mgr pathmap Change-Id: Ifaf6d008425ef38fa8de2aa734cc4b05654995f2 commit 827d60cd4b8bd975598b2966ef9f859222178da4 Author: SpiritCroc <dev@spiritcroc.de> Date: Mon Jan 14 20:27:44 2019 +0100 roomservice: support devices with underscore in deps only mode Test: Add castor_windy repo to .repo/local_manifests/aicp_manifest.xml Run ./vendor/aicp/build/tools/roomservice castor_windy true Before: No dependencies synced Now: Dependencies synced Change-Id: I5e88d3f750b612d1ed023efba81250ec6f3eafe6 commit 0e0e3c75766f67bb014d42a99304ff794f7fd9b1 Author: Michele Bono <bono.michele94@gmail.com> Date: Mon Jan 14 10:50:00 2019 +0100 vendor: bring inline with LineageOS Change-Id: I82aabbad2490e2cdc28d4d86961b10a6786f5ea4 commit 033cf7d527eab278eaa552a6bac755209132dfd7 Author: Michael Bestas <mkbestas@lineageos.org> Date: Tue Aug 28 20:31:16 2018 +0300 soong_config: Add flag for crypto waiting on QSEE to start Change-Id: I9a5493667c6bb3636468a90df0da65cf5e8c3a8b commit 5a153f7b4a01e1a05c6bc562c8680ac0d687239d Author: Michael Bestas <mkbestas@lineageos.org> Date: Tue Aug 28 20:19:05 2018 +0300 soong_config: Add flag for legacy HW FDE Change-Id: I4ced98000e7349135dfb62bba9579e1dbf6b959c commit e742e79deb424310d25270e6c09e085592a569ea Author: AnilKumar Chimata <anilc@codeaurora.org> Date: Wed Jun 20 20:25:55 2018 +0530 soong_config: Add new flags for HW FDE Add new flags for HW FDE to pass CFlags to source code. CRs-Fixed: 2210986 Change-Id: I70d68f015ee8eb8d123ce863ce8e36d0310bc082 commit 9038f6f3909658b7fb4233a531898bab78061499 Author: doc HD <doc.divxm@gmail.com> Date: Fri Jan 11 12:09:45 2019 +0300 vendor_aicp: soong: Add missing variables for qcom_bsp_legacy flag Change-Id: I07dbac3cac41019ed0d01655a30a6119bedb5729 commit 466005d789e3ce798cea9c7fc5c034b045d6f173 Author: Michael Bestas <mkbestas@lineageos.org> Date: Sat Dec 29 23:34:17 2018 +0200 soong_config: Add flag for msm8974 1440p EGL workaround Change-Id: Iad2df3dad223604f1e2c454432b9c9239db8d035 commit 90da27565cd2e9b81ecba462ba565a57dc3503ca Author: Stricted <info@stricted.net> Date: Tue Oct 9 22:28:25 2018 +0200 repopick: add hashtag support Change-Id: Id9196e7cdaa50bf01fa18ed4e31004b7f1e8038b commit 5546fdeddbfaf70c53202cb6af71ed74968db6b8 Author: Gabriele M <moto.falcon.git@gmail.com> Date: Tue Apr 10 18:35:12 2018 +0200 repopick: Update SSH queries result to match HTTP queries Needed after the recent repopick changes. Change-Id: I14f57afefeb9579d1d9896d8dc4512645b5b68e9 commit a3148406d99eec84c9228bb8e233cd3256b7a86a Author: Gabriele M <moto.falcon.git@gmail.com> Date: Sun Apr 1 17:50:58 2018 +0200 repopick: Allow to pick changes by URL Change-Id: I460c987cc03c4f6ff03ecab1bc39e52cec413c13 commit fd3629805d3568e5177cffe1a370212b43801b0a Author: Gabriele M <moto.falcon.git@gmail.com> Date: Sun Apr 1 17:50:57 2018 +0200 repopick: Actually print the patchset number We are printing the change number twice... Change-Id: I4f63766d4162f5d016badad662842badd6da3588 commit 7ff9f8ab849caef29964807da4648ae4fc2e5fe8 Author: Gabriele M <moto.falcon.git@gmail.com> Date: Sun Apr 1 17:50:55 2018 +0200 repopick: Ignore the trailing slash in change numbers Trailing slashes cause 'patchset' to be an empty string, which cannot be converted to an int. If we have a trailing slash, ignore it and pick the current patchset. Change-Id: Ifad60b7f6ff3dcfd9dd80b2e93b1f909aa360666 commit 304ee1960bd7176b8e512f38958f1671e12f3b92 Author: Gabriele M <moto.falcon.git@gmail.com> Date: Sat Mar 31 14:26:59 2018 +0200 repopick: Try to keep the changes sorted Sort the changes according to their parent first and then according to their number. Change-Id: Iebdb8789728b2ccd528e19437e162129eb27973c commit 18e9c9c61cd2c2b4a9c38ba16f0fc5bb801357e5 Author: nailyk <nailyk_git@nailyk.fr> Date: Thu Sep 28 08:37:59 2017 +0000 tools: repopick: Correctly order changeset * Without key=int sorting is done in alphabetical order. This cause 999 being picked after 1000. Change-Id: I540f0e55093a33d80d78a0cf0c31dc83f7168279 commit 7259bbe13c6c88a1d912a430e37d7da20f999e17 Author: Michele Bono <bono.michele94@gmail.com> Date: Mon Dec 10 11:20:40 2018 +0100 Revert "repopick: add hashtag support" This reverts commit 0c8d1e69a3f11865367f1c5c19edda2bffe5c8c4. Change-Id: I8635e77c93be5409b2186af818a3dc53a25926b8 commit fcfac1a5eaaec1619660ae2961242f1e78fd447b Author: Adrian DC <radian.dc@gmail.com> Date: Sun Dec 4 12:30:26 2016 +0100 repopick: Avoid failing on commits lookup * Some projects with multiple merges and discountinuous histories could trigger an error here when the HEAD~{?} does not exist, hence avoid this by ignoring the commit and continue the search Change-Id: Ice28c87d1bf8897da52236b637bbb0c5d349f848 commit a26109875be8295acab18101d707b50cc639560c Author: Ethan Chen <intervigil@gmail.com> Date: Wed Nov 28 00:54:35 2018 -0800 lineage: Add techpack/audio to include path also Change-Id: Ib5af4c77f3342c01325e32222401d7584bac337a commit 3d3362e8f08faf0a172d167bab7b9a4a0b980e99 Author: Rashed Abdel-Tawab <rashed@linux.com> Date: Fri Sep 21 18:32:47 2018 -0700 sepolicy: ignore neverallows Change-Id: Ib68df6e2aeedd04049cb256dd2f37400d9778631 commit bfb49f5f4d465e41f1424acfbdbe95ccaff1ebc1 Author: Bruno Martins <bgcngm@gmail.com> Date: Mon Nov 5 11:25:57 2018 +0000 lineage: Consider techpack/audio when generating kernel headers * New fancy kernels have techpack modules and we need to account for headers of those modules. Change-Id: I4da9606d5933209287dd5e881f06ee1e39443f70 commit 322deceb395b3416f9cb84f92ad3802ea2d4bdb2 Author: Dan Pasanen <dan.pasanen@gmail.com> Date: Mon Jan 23 15:08:52 2017 -0600 repopick: support auth'ing to gerrit and picking drafts * Use requests if installed. If not fall back to urllib. This is done because users may or may not have requests installed and requiring them to do so for simple http stuff isn't really reasonable. * If requests is installed and a .gerritrc file exists in the user's HOME directory, try to get credentials out of it for the given gerrit instance. If auth for the correct gerrit instance exists, use it to auth to gerrit. If no .gerritrc exists, just use requests with no auth. Example ~/.gerritrc entry: review.lineageos.org|invisiblek|httppasswordhere Change-Id: I95be26d51bfd31b53f3613e8dbfb7bba46324571 commit 5230ab6b7241981b3328f452daecba390a2bce4f Author: Adrian DC <radian.dc@gmail.com> Date: Thu Sep 7 22:59:54 2017 +0200 repopick: Support overriding the default commits count to check * Support passing -c 20 to consider 20 changes instead of 10 Change-Id: I2b36228fb0020501896c800b13713aef284a5772 commit cf0d8e44aa0d9a39e3e5bb1747b161f7552613e4 Author: Dan Pasanen <dan.pasanen@gmail.com> Date: Sun Jul 9 09:41:33 2017 -0500 repopick: don't bail on drafts * When using an ssh gerrit instance (-g) it is perfectly reasonable to pick a draft commit. Don't require force picking (-f) in order to do so. Change-Id: I420f566ee1bb1f0b0d2a2ef29d95e0545db70b89 commit d79abdce021dbee3c584408a353e31286bd82183 Author: LuK1337 <priv.luk@gmail.com> Date: Fri Mar 24 23:25:13 2017 +0100 repopick: Don't convert patchset to int if it's None * donuts * Change-Id: I65bfb1741481b01874f21d83b5a43b0902b7d8ea commit 32c15c64020f5e7631f5691a82521ae447b56abf Author: Adrian DC <radian.dc@gmail.com> Date: Thu Aug 30 23:07:23 2018 +0200 repopick: Warn about empty commits instead of failing * If a cherry-pick results in an empty commit (hints about git commit --allow-empty), we should warn instead of failing all repopicks Change-Id: I8410d7d02c4118c8072de609cf3c291e2d8523e6 commit 1cf64680f7386dbfc921929cc91cc7bf0fe57669 Author: Harry Youd <harry@harryyoud.co.uk> Date: Tue Jul 18 18:52:42 2017 +0100 repopick: Add 'reset' option In case of conflict, reset to initial state by aborting the cherry-pick, leaving the working directory clean Change-Id: I2353b92254b67ea49835bc88b6fc9bc3910b5107 commit 6f6d43e34399eafff732a8e9feffb18fc854fbc9 Author: LuK1337 <priv.luk@gmail.com> Date: Fri Mar 24 20:00:48 2017 +0100 repopick: Fix cherry picking specific patchsets Change-Id: I396a1218f141a1ff4cb45252cc01a1487c2afd31 commit e39835868c05ae3b06dc031f16f6c63d49dba4a1 Author: Vladimir Oltean <olteanv@gmail.com> Date: Tue Oct 23 02:32:11 2018 +0300 repopick: be able to kang yourself * Trying to repopick a change with -f -P|--path will fail as "already applied" if the remote repository was also cloned locally, as the script first checks the presence of the remote repo in the project pathmap. * This change gives priority of the -P parameter if it was provided. Change-Id: I8562272e2946143dc1e7159edc6bdad5d3435197 Signed-off-by: Vladimir Oltean <olteanv@gmail.com> commit 9aa253d5faf3d74ab00378922580ae7936ac6011 Author: Tim Schumacher <timschumi@gmx.de> Date: Sat Oct 13 14:37:54 2018 +0200 repopick: Try to fast-forward first Change-Id: I4890ce8075556eb3f57d89c283543f620f39fa02 commit 0c8d1e69a3f11865367f1c5c19edda2bffe5c8c4 Author: Stricted <info@stricted.net> Date: Tue Oct 9 22:28:25 2018 +0200 repopick: add hashtag support Change-Id: Ic59873f5a550d92bf5c06a7a67f068a2b23a8e33 commit 317ef81389c293669b9b87ca1af0a0eb450e9e8a Author: Michele Bono <bono.michele94@gmail.com> Date: Fri Oct 26 00:20:00 2018 +0200 vendor: ship rro packages in system overlay/ instead of app/ Also do not error on src files Change-Id: Ief0e123997fe1c2b1dfe1f8cc2c680c7eff55827 commit ffadda9ddb52eda7ad4e9260ef35c93a0ef98122 Author: Nathan Chancellor <natechancellor@gmail.com> Date: Sun Oct 21 19:07:47 2018 -0700 kernel.mk: Support kernels that use LTO Google added support for LTO + CFI in the Pixel 3 kernel, which requires not only Clang but a couple of additional binaries, namely llvm-ar and llvm-dis for IR generation. Google expects these binaries to be in PATH according to their definitions and the build.config.common file: https://android.googlesource.com/kernel/msm/+/android-9.0.0_r0.31/Makefile#637 https://android.googlesource.com/kernel/msm/+/android-9.0.0_r0.31/build.config.common However, kernel.mk does not add the LLVM bin directory to PATH so the build fails because the binaries can't be found. We could add LLVM_AR and LLVM_DIS to the make commands like CC and CROSS_COMPILE; however, adding the bin directory to PATH is a more sustainable solution as Google might require new binaries in the future. Additionally, LTO needs access to the LLVMgold library so it needs to be available in LD_LIBRARY_PATH. Add a PATH_OVERRIDE variable that will set up PATH and LD_LIBRARY_PATH with the bin and lib64 folders from the requested LLVM toolchain respectively when building with Clang. This won't affect kernels that don't use LTO like Wahoo. Change-Id: Ib16fa0d3180de2f96accb2f7648b07a017f8f98b Signed-off-by: Nathan Chancellor <natechancellor@gmail.com> commit 89849c7eba5c42c7e986b9fb5ae1f7f08d0a4316 Author: Ralf Luther <luther.ralf@gmail.com> Date: Fri Oct 19 20:44:40 2018 +0200 vendor_aicp: AICP'ify boot flash from image Change-Id: Ie3e517eff762a8c889c92cdf0d2fc64e45e8aa9b commit e313bac6d61d5c9ff3096d0a1cfae07fe260f9b5 Author: Ralf Luther <luther.ralf@gmail.com> Date: Fri Oct 19 20:43:46 2018 +0200 vendor_aicp: AICP'ify extract utilities script Change-Id: I60e51d7ca1d65e5309cb192b33c78c47abde1bdc commit c02e25b34603e9bde2e0f68a7afa8741c16f49d4 Author: Ralf Luther <luther.ralf@gmail.com> Date: Fri Oct 19 20:42:37 2018 +0200 vendor_aicp: AICP'ify build targets ...just a name change. Change-Id: I666a70f87213706b689d5438c4b8762b2f87f8df commit a0e3c208cc8c0c770a3bc144eda1bd0a5cf7d802 Merge: afe72543 3f4ab264 Author: Michele Bono (Miccia) <bono.michele94@gmail.com> Date: Tue Oct 23 11:04:34 2018 +0000 Merge changes from topics "pie-kernel-headers", "aicpify" into p9.0 * changes: aicp: Move some kernel definitions to BoardConfigKernel vendor/aicp: Remove kernel.mk headers generation aicp: Dynamically generate kernel headers using aicp generator vendor/aicp: Add soong generator module type vendor_aicp: AICP'ify more commit 3f4ab264ad17f63efebaf9515a7c49877309c077 Author: Rashed Abdel-Tawab <rashed@linux.com> Date: Thu Sep 20 15:19:57 2018 -0700 aicp: Move some kernel definitions to BoardConfigKernel Kernel source settings should always come at BoardConfig population time so things that use the variable later don't end up pointing to an empty or wrong variable. The following is also squashed in: Author: Christopher N. Hesse <raymanfx@gmail.com> Date: Fri Aug 10 00:23:54 2018 +0200 tasks: kernel: Honor prebuilt kernel flag For devices that want to use a prebuilt kernel, TARGET_KERNEL_SOURCE would still be set to TARGET_AUTO_KDIR, meaning the build system would still try to build the kernel if TARGET_AUTO_KDIR was present. Setting TARGET_PREBUILT_KERNEL indicates this is not wanted, so don't attempt to do it. Change-Id: Ic79b3ac1b9c946fd258ada43dce2b08bb74ea0d9 Change-Id: If046b86ff0d18c76898e90295be873a8379f678a commit 12cb0dedb0e04b63816a92000e16a79cbac54267 Author: Sam Mortimer <sam@mortimer.me.uk> Date: Thu Sep 20 13:44:44 2018 -0700 vendor/aicp: Remove kernel.mk headers generation *) This has been deprecated by the bp mobule generated_kernel_headers. *) To build with kernel headers, do this: LOCAL_HEADER_LIBRARIES += generated_kernel_headers Or for soong targets: header_libs: [ "generated_kernel_headers" ], Change-Id: Idad445709f0ee0ec11b41b40123b14976a0052ad commit 78dd8ec530e481257b320ad07a0c63d1cae7ab7b Author: Rashed Abdel-Tawab <rashed@linux.com> Date: Tue Sep 18 21:53:24 2018 -0700 aicp: Dynamically generate kernel headers using aicp generator Add a soong vendor plugin for kernel config variables so we can use these in go. Change-Id: Id31f2be8fcc5aba2d965dbe815edaaf1d28279c6 commit 7f5066ba06c493173a0a1a49ab0474b6c83b52a9 Author: Sam Mortimer <sam@mortimer.me.uk> Date: Tue Sep 18 15:56:14 2018 -0700 vendor/aicp: Add soong generator module type *) Similar to genrule but can be used to generate content when the output directory and file structure are not known ahead of time. *) An example use case is to build kernel headers. Change-Id: I10deb7ba8825393b0b5fdbf2d96b12ad37257e12 commit 9d0a4a9748c4c8fc9fac226d6c0056830c2e8def Author: Ralf Luther <luther.ralf@gmail.com> Date: Fri Oct 19 20:33:39 2018 +0200 vendor_aicp: create "los" not "cm" remote change creation of "cm" remotes to "los" remotes in environment setup Change-Id: If4bafd5dc31dd3826e0ccc590c6f6be7a8c9c1be commit 592c131c8328f43b9deddcec88a72c33ee0bb47c Author: Ethan Chen <intervigil@gmail.com> Date: Sun May 20 16:58:01 2018 -0700 build: Use TOPDIR, not TOP Change-Id: I5b2677c22aa878e46e01f4e5b31769e21937c38a commit 61d646595e7c2818726b3092844a803c05b25678 Author: Joey <joey@lineageos.org> Date: Mon Oct 22 01:15:25 2018 +0300 lineage: add BUILD_RRO_SYSTEM_PACKAGE target Allows to ship rro packages in system instead of vendor Change-Id: I8822ca477e80297dce477de2d87bd3e74d4cbfb0 Signed-off-by: Joey <joey@lineageos.org> commit 4db508fd112c7fdac8474bd2427ab2a52fddba93 Merge: abf045c8 60c35e93 Author: doc HD <doc.divxm@gmail.com> Date: Wed Oct 17 05:23:26 2018 +0000 Merge "soong_config: Allow process-specific override of target SDK version" into p9.0 commit 60c35e9398b1efb4616d4f65e8e0f64ed674f0e0 Author: Danny Baumann <dannybaumann@web.de> Date: Wed Aug 29 11:04:58 2018 +0200 soong_config: Allow process-specific override of target SDK version Change-Id: I1fc89a0468fde1716981966c6682a30a3c92f829 commit abf045c8728748410975866d14b915bf615abeaa Author: Julian Veit <claymore1298@gmail.com> Date: Sat Oct 13 09:45:32 2018 +0200 vendor_aicp: fix typo in Uses_generic_camera_parameter_library Fixes typo, which was introduced in e3a361f204cd28f03794488c3918b6926405790b Test: compilation of boardflag TARGET_SPECIFIC_CAMERA_PARAMETER_LIBRARY enabled. Change-Id: I5442f46983bbc1717f55161f204ec100a3761d06 commit f163698fde46f35a840ae464df2ace6b40c0c0c2 Author: doc HD <doc.divxm@gmail.com> Date: Fri Oct 12 11:25:52 2018 +0300 vendor_aicp: Fix soong build variables Change-Id: Ie295b5651f9752364e77c1708aff75d1c29843c0 commit b632cf933bd932179112a03726fc051d022141a9 Author: doc HD <doc.divxm@gmail.com> Date: Wed Oct 3 18:32:20 2018 +0300 vendor_aicp: Rebrand CM -> Lineage Some legacy devices needs to build dt.img and will look for dtbToolLineage Change-Id: I51d335c8e72f72a0429dbb370fe030acc1ce9cd6 commit 636e70389a3223c87698be794536d7964b52ebc6 Author: SpiritCroc <dev@spiritcroc.de> Date: Wed Oct 3 16:07:18 2018 +0200 Fix repopick path detection from AICP gerrit Change-Id: I19a7d8dc91eee166236f56aed2b679c09ef457e4 commit 3e86bfbdaf7e1b5c522a33e844fd4823c91439c7 Author: SpiritCroc <dev@spiritcroc.de> Date: Wed Oct 3 11:22:37 2018 +0200 vendor/aicp: AICPfy Change-Id: If1aea5e4f84f7cfa84b80b939f67c9137297a421 commit 346d3bb540140b10cd7b366d6c51f6379b75b353 Author: Luca Stefani <luca.stefani.ge1@gmail.com> Date: Thu Jul 12 17:23:54 2018 +0200 build: Add dtbo task Change-Id: I1101cb204ab583a204447d63e6a031a17179dfe7 (cherry picked from commit 8bffb053db418022c7cba5d67234412edd675862) commit 909184bb0f305e3192ec5387eb3ac132dad1811a Author: Rashed Abdel-Tawab <rashed@linux.com> Date: Sat Aug 25 11:10:25 2018 -0700 gzosp: Move QC board variables earlier These variables are usually set in a device's BoardConfig, setting them in qcom_target is at the very end of the "configuration process" which results in them being unavailable to plenty of other configuration "things" (ex. soong namespaces or soong config). Move them to right after a device's BoardConfig has been found and loaded. Change-Id: Iddd731202d22ed3f8eb010197ce20d3c75a1f40a commit bfe988441ad758f6262dffda20371350c7065221 Author: Ethan Chen <intervigil@gmail.com> Date: Fri Sep 7 00:17:04 2018 -0700 qcom_target: Add wlan-caf to CFI paths * The default AOSP hardware/qcom/wlan path is listed in PRODUCT_CFI_INCLUDE_PATHS since wpa_supplicant is compiled with control flow integrity checks. Add the Qualcomm WLAN variant to PRODUCT_CFI_INCLUDE_PATHS as well so wpa_supplicant can safely link it without exploding. Change-Id: Id5577846e1e1ea11f8a665d62847c80803e285f7 commit 31bf08117771358bb62e5920488da9e39f50d547 Author: Kevin F. Haggerty <haggertk@lineageos.org> Date: Sat Aug 25 20:23:19 2018 -0600 soong_config: Allow extension of valid gralloc 1.0 buffer usage bits * fw/native change I7f4174581e24e361577640b9263514a168ed482d implemented validation of the buffer description info prior to creating the descriptor. Some of our legacy devices need to whitelist additional usage bits to support various functionality. * The TARGET_ADDITIONAL_GRALLOC_10_USAGE_BITS variable can contain a singular roll-up value (e.g., 0x02000000U), a left-shifted bit (e.g., (1 << 25)), a bitwise OR of these things, or essentially anything that the compiler can choke down. Change-Id: I2127d33b03426b5e0f981aae837e07d82163fa17 commit 6014312ba39192c4122997c34f036fde43355d2f Author: Kevin F. Haggerty <haggertk@lineageos.org> Date: Tue Aug 28 18:22:25 2018 -0600 soong_config: Add add_json_str_omitempty function * This function wraps add_json_str so that it does not add the soong variable key:value pair to json structure if the second argument (value) is empty/unset, preventing the need for more complex conditional logic in the middle the code that builds the struct * This concept allows us to make use of the omitempty field option for purposes like single variables controlling ifdef blocks as well as carrying the desired value Change-Id: I99c8c162069c2aa8ff3d0bab2636b01181e74a9d commit 513449d8f38d2cd519e8665da02be9f7f5263dc3 Author: Bruno Martins <bgcngm@gmail.com> Date: Mon Aug 27 10:08:54 2018 +0100 soong_config: Remove extra spacing * Let's not rewrite the whole list while adding new vars Change-Id: Icab6116839bbb74a75d207310562faf9d780828b commit 5a480dd71b4fa491dfc0a076bdec3aeb6791fcb6 Author: Bruno Martins <bgcngm@gmail.com> Date: Fri Aug 10 13:17:11 2018 +0100 gzosp: Make sure to consider our product makefiles Change-Id: Ia0c7281791b37fff5fce9c62b3f0ba56c35d45ba commit ad59f641e7b885c874a0b9f6308e1393f8c0d9a2 Author: Simon Shields <simon@lineageos.org> Date: Thu Apr 12 11:34:14 2018 +1000 gzosp: enable building otatools with generic targets Change-Id: I4bbd32378e159084f8e5dfb852749f77feb31788 commit 6bb2105e0182641a29cfaf24943000123ffad349 Author: Simon Shields <simon@lineageos.org> Date: Tue Mar 20 23:03:49 2018 +1100 gzosp: add generic gzosp targets These are used for building addonsu. Change-Id: If6def9729328ea2ce1e977fd7b9ff42cfc2f6dda commit 240335b95df8875d74050d42c81a0a4c51230ab8 Author: Jaap Jan Meijer <jjmeijer88@gmail.com> Date: Mon May 8 18:00:59 2017 +0200 Don't enable ANDROID_BINDER_IPC_32BIT for mixed userspace/kernel TARGET_USES_64_BIT_BINDER should be used for the userspace binder now. Change-Id: I5cede00e7667969e394d06169dff54659900d90f commit 207514dc5d59cb00f6a5db0acff3e845981c1d7a Author: Luca Stefani <luca.stefani.ge1@gmail.com> Date: Wed Jul 11 00:35:33 2018 +0200 kernel: Allow installing modules on system Change-Id: Id4386cd37645dc9e9253410e0b2093cd2e6b04dc commit 0bd33efb37a304179673258d4bf6feb2ff41656d Author: Simon Shields <simon@lineageos.org> Date: Thu Apr 5 15:02:29 2018 +1000 build: dt_image: support prebuilt DT images If for whatever reason we need a prebuilt DT image, it has to end up in target files for the signing slave. Change BOARD_KERNEL_PREBUILT_DT to hold the path of the prebuilt DT image, if it's going to be used. Change-Id: I8042d347d271da5c3963824777d399bbc4229aa9 commit 66b3ea7cfd63434b0b0a4bebfb021d69990a1d3d Author: Zhao Wei Liew <zhaoweiliew@gmail.com> Date: Sun Mar 5 19:22:52 2017 +0800 cm: build: tasks: Remove BUILD_TINY_ANDROID check This flag has been obsolete for a while now. Change-Id: Ib78a1b141ddd757d2546b2eff2158e6e0cc0d673 commit 2cd6323ae7758729790dc887e49575ac1c537396 Author: Dan Pasanen <dan.pasanen@gmail.com> Date: Tue Jan 24 14:09:10 2017 -0600 tasks: dt: add flag to optionally compress dt with lz4 * Gotta save that space somehow. This is in the continuing effort to remove custom mkbootimg.mk files in device trees Change-Id: Ie8b3cedf6e37d1d11c2383dd3590f9908ad7818c commit d87ae4719f02f42515f35bdc48d4b0d94986aff3 Author: Prema Chand Alugu <premaca@gmail.com> Date: Sat Aug 11 01:01:14 2018 +0530 build: Nuke the kernel headers deprecation error * Many CAF repos still use those * Additional commits in build repo should take care of this * Can be revisited if needed Change-Id: I65cb22fd9babb79e166eabc1c9c6db958f651d24 commit c80f7db9947da5803a6e8ade7d9ee8da35f14e7a Author: Prema Chand Alugu <premaca@gmail.com> Date: Sat Aug 11 01:00:17 2018 +0530 bootimage: Use OUT_DIR since OUT is deprecated Change-Id: I8fda73ef587c3a6e8c6f3c7f8c0b191d7143a03c commit e3a361f204cd28f03794488c3918b6926405790b Author: Simon Shields <simon@lineageos.org> Date: Fri Aug 10 14:40:27 2018 +1000 soong: rework soong_config for Pie Change-Id: I3c5001f02975e5487ba66a02217f1d24d2021272 commit a0db4d25202974dd992d14f99014b7c3b177da16 Author: Rashed Abdel-Tawab <rashed@linux.com> Date: Tue Aug 7 17:44:14 2018 -0700 kernel: Set CROSS_COMPILE_ARM32 if using aarch64 Wahoo's P kernel is complaining about this... IDK what it's even used for but whatever. Change-Id: I700e66a417ed431c31d82fc950f5e5acd07ab281 commit 08536dadbd517bc4472f977a12030c94c9cc2693 Author: Rashed Abdel-Tawab <rashed@linux.com> Date: Mon Aug 6 22:01:29 2018 -0700 kernel: Remove ANDROID_BUILD_TOP This is no longer used in Pie, so just get the top dir of the build system and use that. Change-Id: I4bc416e471ddeb9810960f4ddcd647b20aa531c2 commit 1ca908cd997aa41485923111d9dff1aa394c5a00 Author: Prema Chand Alugu <premaca@gmail.com> Date: Sat Jul 28 10:13:31 2018 +0530 repopick: Fix : fatal: 'github' does not appear to be a git repository We track our repo with 'gzosp', and lets use it instead of generic 'github'. -- The below error should be fixed with the above -- fatal: 'github' does not appear to be a git repository fatal: Could not read from remote repository. Please make sure you have the correct access rights and the repository exists. Change-Id: I184c67281d80fdcdb4a746e9a7cba15d542c017c commit 1019f854e2c417fe6230d3ad2328da4e661b2b03 Author: Bruno Martins <bgcngm@gmail.com> Date: Wed Jul 4 11:00:15 2018 +0100 build: Add support for sdm845 platform Change-Id: Icda63780d7a422303c73f77bd888c1b30bd4bf79 commit b0db1e83d9ab05d476088aad0f0703fd40c4c1fa Author: merothh <merothh@gmail.com> Date: Tue Jun 5 01:11:29 2018 +0000 vendor: qcom_target/qcom_utils: add missing sdm660 platform * QCOM_BOARD_PLATFORM not being defined kept libqdMetaData from building on msm8998 HAls * Enable TARGET_USES_COLOR_METADATA for sdm660 as well * missed in c64b10c2e70b0bcf1d9c7271a2c67087b4c99a91 Change-Id: I87ef2983e7513bbc2b59659be784b3999a23ba8e commit 67701d13d024f1f5cf3d8d3db081ddc874e06756 Author: Akhil Narang <akhilnarang.1999@gmail.com> Date: Tue Mar 6 16:23:58 2018 +0530 gzosp: repopick: fix pick in the case of same name/path * If the repo has the same path as the name, repo manifest returns only the name * This breaks repopick, as it does not know where the repository is * Fix it by setting the path as the name is there in no path This case probably isn't too common, just one repository in our case - updater Change-Id: I1fb5e6c07fca5e4fdb9c43aba28579fd51eee1ee Signed-off-by: Akhil Narang <akhilnarang.1999@gmail.com> commit 884a544bf7d4e4df002224dc0c253d635970b65c Author: Michele Bono <bono.michele94@gmail.com> Date: Sat Apr 14 15:00:37 2018 +0200 kernel.mk: Get rid of URLs in Clang version string Device kernel must have: https://github.com/Miccia94/kernel_xiaomi_msm8998/commit/fe4042f0f021b5960a1f851f631ccc2a2c07c56d https://github.com/Miccia94/kernel_xiaomi_msm8998/commit/642e39769780c4d4da9dc310c215deb22f94881b https://github.com/Miccia94/kernel_xiaomi_msm8998/commit/5594f02c5288303e089b689d61d3828cc52d6f8c Change-Id: If924924c648baaf80f942a2adc4bd698b0e131c6 Signed-off-by: Nathan Chancellor <natechancellor@gmail.com> commit 19806152a877018d14d82d7822f9a95dc47823bd Author: Nathan Chancellor <natechancellor@gmail.com> Date: Wed Apr 11 16:23:19 2018 -0700 build: kernel: Use LLVM_PREBUILTS_VERSION if no version is specified Some ROMs may want to track Google's master branch, which has Clang 6 and 7 toolchains available, as it gets rid of some hacks in the kernel source. Unfortunately, with the current default choosing logic, the latest one would be chosen, which it shouldn't be. Use the variable set in build/make/core/clang/versions.mk, as that's what was intended. Change-Id: I607c7f750f62caabee4cdccea67846feb7f632fa Signed-off-by: Nathan Chancellor <natechancellor@gmail.com> commit 638b824418e642047b18004b4ade1f070becad69 Author: Dan Pasanen <dan.pasanen@gmail.com> Date: Sun Feb 18 22:13:05 2018 -0600 kernel: fix ccache variable sanitation for clang builds * When using "?=", expansion doesn't happen right away, so the ccache variable is sanitized before KERNEL_CC gets expanded and no ccache is ever used for clang builds. * With ":=", expansion happens immediately. So let's manually check if KERNEL_CC is already set somewhere else to determine whether or not we should set it ourselves using ":=". Change-Id: I8a61767606a4f3d4c6ba88c68b10fd2e11783406 Signed-off-by: Nathan Chancellor <natechancellor@gmail.com> commit 158d647e62b3580aa1af8228513bb3ac0392fa83 Author: Rashed Abdel-Tawab <rashed@linux.com> Date: Sat Mar 24 11:17:49 2018 -0700 soong: Add TARGET_USES_QTI_CAMERA_DEVICE Change-Id: I925b137edeed9fa11bbe566002147b444328c661 commit 32dc0d4e939785f3103220a1009dee4ca02a3d20 Author: Anay Wadhera <anay1018@gmail.com> Date: Tue Mar 27 15:22:41 2018 -0700 envsetup: include user variants Change-Id: I38b440c9074ea10fd258e0a271dc9f010e6021dc commit 827d25981e67f43172da90e2869a9ba49f3c18b9 Author: Adrian DC <radian.dc@gmail.com> Date: Sun Feb 18 14:51:05 2018 +0100 gzosp: Sort soong variables and configurations Change-Id: I4a191f8ce61123e30f780f8e39411a7723fb6197 commit 8d39092e61f2e0eff9cf8c53193d3c1a72bbe4ee Author: Stricted <info@stricted.net> Date: Sat Feb 17 17:28:52 2018 +0100 gzosp: soong: replace space with colon on TARGET_LD_SHIM_LIBS that way we can split the shim list logically into multiple lines like TARGET_LD_SHIM_LIBS := /system/bin/gpsd|/vendor/lib/libshim_gpsd.so \ /system/lib/libexynoscamera.so|/vendor/lib/libexynoscamera_shim.so \ /system/lib/libstagefright.so|/system/lib/libstagefright_shim.so to not have one single huge line Change-Id: Ice1411ee22b78da1dbf22eac412b9e4978acebdf commit 16eb91fc96a2ba6a945ba312ea1a5b06dc9ded8b Author: Paul Keith <javelinanddart@gmail.com> Date: Thu Feb 15 21:46:00 2018 +0100 gzosp: soong: Add var for linker shim libs * To limit security exposure, we're forcing all devices to define shim libs with a TARGET_LD_SHIM_LIBS Change-Id: Ic8722c42807429f2faa3546316c71c40533ce195 commit 92619e3474d05c4b4a675ebf6fd8311db3d4aa16 Author: Akhil Narang <akhilnarang.1999@gmail.com> Date: Wed Feb 14 18:20:14 2018 +0000 Revert "repopick: fetch only from gerrit, not from github" This reverts commit 0fa798cb7a0707ae58fb010ca9be2edecc5a16d4. Change-Id: Iccf2747fba3ed5d81b57df614c5f34145f1ad2e4 Signed-off-by: Akhil Narang <akhilnarang.1999@gmail.com> commit 92107a785902bb1c8ba84fafc0c3d7abb37cd114 Author: Aaron Kling <webgeek1234@gmail.com> Date: Fri Jan 12 18:19:27 2018 -0600 Fix kernel build failure on some devices and build hosts Change-Id: Ib6ba53994b4e04503ee4636a6aaab9c0bc3f676c commit 2bceb44655957c40ea6923e9a13de8064b791432 Author: martinusbe <martinusbe@gmail.com> Date: Sat Jan 20 10:36:44 2018 +0100 roomservice: fix the missing space, my ocd got triggered * anon-existing < a non-existing Change-Id: I186a2d4e7788894dfe906aff7140508c9a43e971 commit 49a5cc55325fabfa83716068b3270ffdda062977 Author: Dan Pasanen <invisiblek@cyanogenmod.org> Date: Thu Oct 12 01:11:29 2017 -0700 qcom_utils: allow overriding get-vendor-board-platforms * Some devices need this function to return something, yet also do not set BOARD_USES_QCOM_HARDWARE. Allow them to override this. Change-Id: I3cf78da39b006ba805ae35fde7379357faa10250 (cherry picked from commit 012cc275e09346ef7909b6a5a144aed59b375ccd) commit ec53b47d8381f8f81609e8a4aada7b45b0a66015 Author: Tom Marshall <tdm.code@gmail.com> Date: Thu Nov 9 21:02:33 2017 +0100 kernel: Rework kernel header logic The existing kernel header logic has several issues: * It does not depend on the actual kernel headers, so it does not detect actual kernel header changes. * It does depend on the kernel config, which should not be used to generate (user space) kernel headers. The end result is that kernel headers aren't properly regenerated when needed, and spuriously regenerated when not needed. Additionally, the kernel header rebuild mucks around with the kernel config, which is unneccesary and fraught with danger. Rewrite the kernel header dependency and generation logic as follows: * Use the dependency file $(KERNEL_OUT)/.headers_install_deps to manage dependencies on the actual kernel header files which are exported to user space (and the top level kernel Makefile, which is used to generate version.h). The dependency file is exactly the same as what GCC would output for a C/C++ dependency with the M/MM flags. * Conditionally include the dependency file to detect when headers should be (re)generated. * Introduce the phony target INSTALLED_KERNEL_HEADERS for modules to declare a dependency on kernel headers. Additionally: * Get rid of TARGET_KERNEL_HEADER_ARCH and KERNEL_HEADER_DEFCONFIG. * Get rid of KERNEL_OUT_STAMP and move commands to the appropriate places in the rules. * Fail the build when $(KERNEL_OUT)/usr is mentioned in a dependency. Note a separate commit to build/core/binary.mk will provide a migration path and a suitable deprecation warning. * Declare the kernel*config targets phony. Change-Id: I8b46f4ea1c622d8e73cca5157be96ec09d42ebb3 commit 69380234c29745891ea96417e536da21dbb9abf0 Author: Christian Oder <myself5@carbonrom.org> Date: Sat Nov 25 16:52:17 2017 +0100 kernel: Allow building dtbo.img taimen uses the dtbo.img as an DTB Overlay in order to use the same defconfig for both, taimen and wahoo. The dtbo.img is built with "make dtbo.img". Allow automatically building it when setting TARGET_NEEDS_DTBOIMAGE to true, or by manually calling make dtboimage. Thanks to luca020400 for help with the kernel.mk logic [raymanfx] Add AVB hash footer support Change-Id: Iaddafaa98e3e84880462a2c35b899e3fea21e161 commit 007b6f5c3312e462a3c4f95ecd60812bcdb1ba95 Author: Dan Pasanen <dan.pasanen@gmail.com> Date: Fri Dec 8 13:46:30 2017 -0600 kernel: don't build for TARGET_NO_KERNEL targets Change-Id: I14ad45c06922c0775e0574ddbcfcdc33353af465 commit a3eb73e5938ef10e4b956e999f1b1dc57a25fa16 Author: Joe Maples <joe@frap129.org> Date: Mon Nov 27 10:09:38 2017 -0500 tasks: kernel: Add support for Clang kernel builds Add support for compiling kernels with Clang as intoduced on android-4.4 In order to compile with clang, you must set TARGET_KERNEL_CLANG_COMPILE. If you wish to specify a specific clang version, also set TARGET_KERNEL_CLANG_VERSION, but if that is not set, the build system will default to the latest version of clang available in prebuilts/clang Change-Id: I79dc1dca9758a930f2f5ba1754b5d8de114af900 Signed-off-by: Joe Maples <joe@frap129.org> commit b1bab2c6bc5d89945ad0107775e4f3e5d15c26f9 Author: Rashed Abdel-Tawab <rashed@linux.com> Date: Fri Nov 3 12:04:40 2017 -0700 validus: qcom: Set power HAL pathmap Change-Id: I063821f8405cafc57b37a61d119a9b8b7ef9df4a commit 4c5cb27051f24ccecfa3c733e33899ebaebbeb63 Author: Rashed Abdel-Tawab <rashed@linux.com> Date: Mon Dec 11 12:31:57 2017 -0800 build: Merge UM platforms into common HALs and disable BSP While UM platform HALs are interchangable and very much interoperable between platforms and kernels, some have qualms about commonizing platforms that Qualcomm hasn't fully commonized themselves yet. Therefore introduce 2 seperate UM platforms, UM3.18 and UM4.4 (corresponding to the kernel version used for that "version" of UM) and use msm8996 for UM3.18 and msm8998 for UM4.4 (sdm845 will probably be UM4.9). Also disable TARGET_USES_QCOM_BSP on the UM platforms to match Qualcomm trees as it causes WiFi display not to work and calls for missing headers and struct elements at build time. Change-Id: Ia574231243b7d628d35959b474dd28bd37ac4031 commit f114a9bb84006e1d8ce3cbac90d7a203266f3456 Author: Rashed Abdel-Tawab <rashed@linux.com> Date: Mon Dec 11 13:18:54 2017 -0800 build: qcom: Add TARGET_USES_UM_PLATFORM to force UM build Since CAF has moved msm8909 to UM3.18 on oreo, we can build it with that. However this will require tons of devicetree and kernel changes, so make it opt-in for maintainers to use if they fix their trees for it. Change-Id: Ief5b46163a65617ada7bb962a720038acdd9e2ae Signed-off-by: ATechnoHazard <amolele@gmail.com> commit 3e4ec9fde56035d3a5eb0997d10583ec3b7e86ee Author: Michael Bestas <mkbestas@lineageos.org> Date: Sat Jul 8 17:09:40 2017 +0000 qcom_target: Commonize UM target HALs * Use msm8996 HAL for 8953 & 8937 since they share the exact same git history sha1 in all 7.0+ released tags. Change-Id: I764a9a092b6d530de8a9b9e6e54f41c0b5d8a593 commit 18e1ca27fd8bb7dfa85c4b7fe753e50219c29680 Author: martinusbe <martinusbe@gmail.com> Date: Sun Dec 31 00:01:57 2017 +0100 roomservice: default to 8.1 branch Change-Id: Ic27d96d208848dfe3383ab7781e5b6a97a998f8c commit 95860c433ec542bcbbd6030d1dbbf1dbcfcdaf31 Author: Ethan Chen <intervigil@gmail.com> Date: Sun Dec 3 23:59:48 2017 -0800 kernel: Handle kernel modules correctly Place kernel module output in the correct location. Perform depmod steps (copied from build-image-kernel-modules function in build/make/core/Makefile). See: https://source.android.com/devices/architecture/kernel/modular-kernels Change-Id: I6e70012a5c1acdb276f9bee0d57631d2805f71ea commit 0524c41f2514e220150872e7d338df727a397893 Author: Rashed Abdel-Tawab <rashed@linux.com> Date: Tue Oct 31 20:01:35 2017 -0700 gzosp: Add TARGET_SPECIFIC_CAMERA_PARAMETER_LIBRARY variable handling Change-Id: I6f1cbcd883e91c8c3724dbe53732c7e777e21657 commit a06f7e139e87666b4ca6fd3161ba4b0a8d8ef6ce Author: martinusbe <martinusbe@gmail.com> Date: Wed Dec 6 16:34:56 2017 +0100 vendor_gzosp: 8.1 * cleanup some as well * back to Alpha for 8.1 Change-Id: Ieb278256da1e36c860e4ca60d41e80346730665a commit ebde9418d045e1d92d4c9220ca16bff6a071398c Author: Martinusbe <martinusbe@gmail.com> Date: Mon Nov 27 17:12:33 2017 +0100 extract_utils: gzosp Change-Id: Idc66eaac5e678cb1f10935f5ca8b6de9c232a04b commit ad70a1ae076feee56a5a85503a961daf490a0433 Author: Gabriele M <moto.falcon.git@gmail.com> Date: Wed Oct 11 00:58:59 2017 +0200 extract_utils: Fix pinning when not cleaning vendor dir Skip the extraction of pinned files if the ones currently available have the expected sha1. If we don't, we will overwrite pinned files with potentially incorrect files when the current vendor files are not moved to a temporary directory (i.e. when not cleaning vendor). Change-Id: I640d6bf2ed98eb366a4df17f0ebeaec81cb5274b commit fa7a28713d128aaecb2f81b791e125176878d358 Author: Gabriele M <moto.falcon.git@gmail.com> Date: Wed Oct 11 12:55:51 2017 +0200 extract_utils: Allow to interrupt the extraction We want to cleanup our temporary files independently on the signal, so just execute a trap on 0. This will ensure temporary files are always removed and doesn't require any extra care when trapping signals such as SIGINT that require an explicit exit call. Change-Id: Ieff4f15c44a9ac9d5a543d14c140ebd72c0e7344 commit 5518e19abd99589db3e0800c40801402f5f15f44 Author: Rashed Abdel-Tawab <rashed@linux.com> Date: Sun Oct 8 17:33:42 2017 -0400 extract_files: Mark vendor etc files as proprietary Change-Id: Iad8d87a18e5b1dc68c7f2265c0e35a9313804408 commit b4659e3d0c08aedd2c2a4ae985b8258d3c6e8c77 Author: Christian Oder <myself5@carbonrom.org> Date: Sun Oct 8 23:15:52 2017 +0200 extract_utils: cover vendor/frameworks Change-Id: If60b9b6c47cfd9c32477f92ad87011eddb41753b commit eca8894b23df906ad218d352b0206474a37758ff Author: Rashed Abdel-Tawab <rashed@linux.com> Date: Sat Oct 7 14:18:39 2017 -0400 extract_files: Add support for treble compatible makefiles To be honest, this name is a little misleading, this is how it should have been done in the first place. This allows devices to copy vendor files to the proper location depending on TARGET_COPY_OUT_VENDOR rather than hardcoding system/vendor. This allows devices with dedicated vendor partitions to copy directly to vendor. The only reason it's optional is that some nexi set TARGET_COPY_OUT_VENDOR to system which would cause some weird breakage. Change-Id: Ic46bc1086737835340abef9f61693d386bc6a5dc commit 54568390ed836dc44d9a155c09b28f498b61bc26 Author: Rashed Abdel-Tawab <rashed@linux.com> Date: Sat Aug 5 23:11:35 2017 -0400 extract_files: Adjust deodex path and tmpdir * Make a tempdir using the mktemp command rather than just making a dir in /tmp to accomodate for systems that don't set proper perms or dont have /tmp * Fix the deodex procedure to pull files from the right path Change-Id: I181863599b6670e3a149069dbb7b13ebf73bae8e commit fefc9ba4032250c94022737529484bb79962e492 Author: M1cha <sigmaepsilon92@gmail.com> Date: Wed Jan 4 09:00:11 2017 +0100 extract_utils: implement LOCAL_MODULE_RELATIVE_PATH Change-Id: Ia97633652ff9647a6e82013b208097be5c5575a9 commit 7e288ce81e41ca0c47e858f141e19947c0aa29d4 Author: Rashed Abdel-Tawab <rashed@linux.com> Date: Wed Aug 23 15:13:17 2017 -0400 extract_utils: Add VDEX deodex capabilities for oreo Oreo introduces new optimized dex files (or vdex). While smali/baksmali have supported vdex since 2.2.1, you actually have to have the .vdex in the same location as the .oat or else the smali will fail due to not finding the .vdex. Copy it (if it exists) and echo a warning since vdex deodexing is still experimental. Change-Id: Ic612751be45a8b6e54b8794b426a4d5adbbf13d2 commit 403ef2220653566971b420481196b5eebbef3b70 Author: Harry Youd <harry@harryyoud.co.uk> Date: Sat Aug 5 09:18:56 2017 +0100 Fix extract_utils when not using blob sections "$3" evaluates as "" when $3 is empty, and so $# is still 3 When $3 is empty, do not use it Change-Id: I87df7dd8ed23cac3d4cff16dce0996bbe0a3e6cc commit 14b4042676f32ba92a387fbdd94cace6a475a20a Author: Rashed Abdel-Tawab <rashed@linux.com> Date: Tue Apr 4 18:03:35 2017 -0400 extract_files: Add support for paths without system/ Sometime blob directories are contained in dirs not named system (ex. extracting blobs from another vendor dir) so check if the file exists without system/ before appending "system/" to filenames. Change-Id: I4ba946e178260b4f4804b1ac4422645e3085c665 commit a5465853014ab482a7b8a383a49d69f8d6dede81 Author: Rashed Abdel-Tawab <rashed@linux.com> Date: Tue Apr 4 02:48:18 2017 -0400 extract_files: Add support for specifying blob sections Sometimes the need arises to update one specific subset of blobs while holding others steady. Introduce a way to specify the "section" of blobs to update (obviously requires the proprietary-files to be properly split up first) Requires additional changes in device tree extract_files.sh to support passing the additional arguments Change-Id: I98feab56f8bfade2818b1b5264e019440d4c57c5 commit d7584406ec6ff2eded0f16dc90c6794f433ae8f0 Author: Gabriele M <moto.falcon.git@gmail.com> Date: Mon May 1 18:22:04 2017 +0200 extract_utils: Fix cleanup variables assigment The current assignment is wrong, we cleanup the files when we tell not to do so. Change-Id: I73a9a17f5ebae6f2dbdc3d6d9aaa28cd75fb4f87 commit 477d5f0194fd10b9994ffd823a098ce03cf1fd33 Author: Dobroslaw Kijowski <dobo90@gmail.com> Date: Thu May 18 12:35:02 2017 +0200 extract_utils: fix extracting XML files containing binary characters When a line from the XML file contains a character which grep classifies as a binary one, it will omit this line at all. Moreover it will append 'Binary file matches' to the stdout. This behavior breaks some XML files. To fix this issue, let's tell grep to process a binary file as if it were text. Change-Id: I6ec5689f73a0926870e502f3f8ee77346b47d05f commit be64ff7c03c8f4faeb6f647577e2914bfa9529fb Author: Dan Pasanen <dan.pasanen@gmail.com> Date: Tue Mar 21 09:06:11 2017 -0500 extract_utils: support extracting directly from an ota zip * Specify the ota zip name as the only parameter to extract-files.sh * Will extract to $CM_ROOT/system_dump * Bail out on A/B OTA zips. We cannot support these. * Handles block based OTA zips by using sdat2img.py * Store the zip's MD5 and check if its already extracted. If so, don't bother extracting again Change-Id: I03038e38dac51e6cb60d493c7e6362754d1daf02 commit a4d3791988c4dcf1707675ad012f2a12ee888bcc Author: Paul Keith <javelinanddart@aidenswann.com> Date: Wed Mar 8 15:02:37 2017 -0600 extract_utils: Fix locale issue with sort * On some machines, LC_ALL=C is set, causing the sort order of makefiles to be different than those without this locale change that is set * Set LC_ALL=C on all machines for consistent ordering * From 'man sort': The locale specified by the environment affects sort order. Set LC_ALL=C to get the traditional sort order that uses native byte values. * Thanks to haggertk and rashed for verifying this for me Change-Id: I5bbb94b0dfe599a67036de4312e8af913e9b8d30 Signed-off-by: Paul Keith <javelinanddart@aidenswann.com> commit 96ec88fd7333bf200c45a979f789269a33aea686 Author: Christopher R. Palmer <crpalmer@gmail.com> Date: Sat Mar 4 05:12:29 2017 -0500 extract-utils: Fix handling of pulling src:dest pairs from dumps Currently, the priority of the src and dest is inverted between pulling from adb and pulling from a system dump. Assume that we have a camera wrapper and write the proprietary-files.txt lib/hw/camera.msm8996.so:lib/hw/camera.vendor.msm8996.so If we pull from a phone running Lineage that has both files, we get camera.vendor.msm8996.so as the pulled blob. If we take the exact same build and pull it from the system dump (aka, your own $OUT directory that built the installed software) you get camera.msm8996.so pull instead! Make both paths follow the same logic so that you get the same file independent of the source. Change-Id: I479e0ae765339cc38fa05fcaad7943c528129463 commit bfb26ef1c428d29bb3c8fcb08b48bfbc072d8ae9 Author: Adrian DC <radian.dc@gmail.com> Date: Sun Jan 15 14:03:26 2017 +0100 extract_utils: Detect output existence before moving it for backup * Avoids: Cleaning output directory (./../../../vendor/.../.../proprietary).. mv: cannot stat './../../../vendor/.../.../proprietary/*': No such file or directory Change-Id: I3258e64f3997f139d8db4fb4e07d14964a469c78 commit 652141815fe7935543e9571f4818ac993a3aba72 Author: Matt Mower <mowerm@gmail.com> Date: Sat Jan 7 14:08:17 2017 -0600 extract_utils: Introduce variable INITIAL_COPYRIGHT_YEAR Let a device specify INITIAL_COPYRIGHT_YEAR=XXXX in setup-makefiles.sh so that the correct copyright(s) is/are included in vendor makefiles. The CyanogenMod copyright is retained when INITIAL_COPYRIGHT_YEAR<2017 and the LineageOS copyright is now included for >=2017. Change-Id: I6895b5b69bc7ba399042ac3c29e17f3209d15f1b commit 381ca9eda9420acfae1198c15774673991723058 Author: Gabriele M <moto.falcon.git@gmail.com> Date: Thu Jan 5 22:10:00 2017 +0100 extract_utils: Update backsmali command -e no longer exists starting from v2.2b3, so update the command. While at it, add the logic to deal with Android N separated boot oat files. Change-Id: Iab8e3946d6421824fea74e26dc43d2db38573022 commit 34ceb4d0ef240588977db770d7807fed6d6db1ca Author: Rashed Abdel-Tawab <rashed@linux.com> Date: Wed Nov 23 23:00:37 2016 -0500 extract_utils: Use shasum on macOS macOS doesn't have sha1sum but instead shasum, so use that if 'uname -s' returns Darwin Change-Id: I1ab8721327a561e8df78562bbc0b12e884cc4a93 commit 9766052878b38a17bcca18f583de2eee387cb3cf Author: Elektroschmock <elektroschmock78@googlemail.com> Date: Tue Oct 4 21:11:43 2016 +0200 extract_utils: Add option to define the certificate for jars Change-Id: I3fb4ff29b2ce898989f5599b47f47ee7fcfc5e92 commit f582a350ceb9d489c8394be9d8db6aa94cc2d237 Author: Sam Mortimer <sam@mortimer.me.uk> Date: Wed Oct 5 09:50:49 2016 -0700 extract_utils: Update to smali/baksmali v2.2b3 The cli changed slightly: https://github.com/JesusFreke/smali/wiki/SmaliBaksmali2.2 And, for deodexing angler at least, baksmali needs access to boot*.oat rather than just boot.oat so point at source rather than copy Resurrected from http://review.cyanogenmod.org/#/c/164958/ With fixed adb $SRC deodexing Change-Id: Id6ae0e9d7a5554687124e99fb03a808f3115bb95 commit 789504eb968d3ed12d709b1a21b7c971d612c8bb Author: HashBang <hashbang173@gmail.com> Date: Mon Aug 1 14:36:46 2016 -0400 extract_utils: Do not change app SRC if there are arguments Do not prepend app or priv-app to the src when a path is explicitly given as an argument. This fixes the SRC path in such conditions. Change-Id: I43370f17fe224df323fcfa9b0d5eae4ee2996524 commit f5a0ca0796d4c36591118b641e7dc5f01330aded Author: Rashed Abdel-Tawab <rashed@linux.com> Date: Sun Oct 2 01:00:54 2016 -0400 extract_utils: Add ability to set custom device guard In some cases we may not want to check against TARGET_DEVICE so allow setting a custom variable to check against Change-Id: Ia2fb338f453137a95a59c6940b0cc16b261505bf commit 033c7c86de9bf8c34050f309f755332b84f55fe1 Author: Rashed Abdel-Tawab <rashed@linux.com> Date: Sat Oct 1 20:33:00 2016 -0400 extract_utils: Add ability to set custom vendor.mk name In some circumstances we might want to set a custom vendor.mk filename. If not set, then just default to the current device name Change-Id: Icb59ebee67ce17b41ac613020685773efb01103d Signed-off-by: Martinusbe <martinusbe@gmail.com> commit 4bab7835b628309adadf2ddeaae4b2f72d27bbe9 Author: Tom Marshall <tdm.code@gmail.com> Date: Fri Nov 10 01:00:18 2017 +0100 gzosp: build: kernel: Rework kernel module logic The existing kernel module logic does not detect failed kernel module builds. This is because the module build logic is a long shell chain that invokes make macros which are not intended to be used in this way. The essense of the issue is that we get a shell chain that looks like: cmd && cmd && var=value; cmd && var=value; cmd; The shell breaks this into three separate commands. The first builds the modules. The other two are the macro invocations. So the result of the command is the result of the last macro invocation, which will always succeed even if the modules fail to build. The issue is made worse by the existing build rule conflating the built kernel modules and the installed kernel modules. Fix this by reducing the built kernel module command to a single shell command and creating a separate target INSTALLED_KERNEL_MODULES. Any kernel module build failure will show up properly. The commands for INSTALLED_KERNEL_MODULES do not invoke any macros and should avoid the issue described above. Finally, this also removes the fake target no-external-modules and unifies the install logic for in-tree and out-of-tree modules. Change-Id: I3d13056e217e1e937c8c3a345032682ffc394bca commit 007edaa93cd0cc75e2fc993e983f34b2fa57fe24 Author: Andersonmendes2016 <lge500meu@gmail.com> Date: Sat Oct 28 21:01:59 2017 -0200 build: Fix soong flags Change-Id: Ic754b8a13658ddc40620f985583bd1754b732b19 commit 30ebfe1091a511b5d8cb05076626e95aa5a00b93 Author: Harsh Shandilya <msfjarvis@gmail.com> Date: Sun Jul 16 13:35:59 2017 +0530 repopick: Work around HTTPError due to extra slashes When using external gerrit instances, sometimes urllib2 doesn't like having a trailing backslash, raising an HTTPError. Fix this issue by catching this exception and retrying with the offending backslash removed. Test: Prior to this patch repopick --gerrit https://substratum.review 422 423 424 428 430 431 448 451 -P frameworks/base/ will not work. With this applied it works fine. Change-Id: I812ea29f9614e2aa034b06069ae4f6bd36978c4d commit ea6f69f8ba1d0b998aec8683cabb6f48ff9d8476 Author: Harsh Shandilya <msfjarvis@gmail.com> Date: Sun Jan 1 19:17:27 2017 +0530 repopick : Don't print the git command to be exec'd In all humility, we don't give a fuck what's happening in the back as long as it works and picks the damn changes Change-Id: Icaa25246625285b7ef71469d66e21b498a45a483 Signed-off-by: Simao Gomes Viana <xdevs23@outlook.com> commit 5f35eb759e20440f4c00bb7ce0d4095234f45998 Author: Harsh Shandilya <msfjarvis@gmail.com> Date: Tue Oct 31 12:35:37 2017 +0000 roomservice: Silence warning about deprecated macros Change-Id: I3cd4c0ab1bdf4f2f6debdf19ddb87d22dce5c7f5 commit 0fa798cb7a0707ae58fb010ca9be2edecc5a16d4 Author: Akhil Narang <akhilnarang.1999@gmail.com> Date: Sun Aug 14 16:51:31 2016 +0530 repopick: fetch only from gerrit, not from github Change-Id: Idd7ec7097537d8528cf82af036f38da3411ee40d Signed-off-by: Akhil Narang <akhilnarang.1999@gmail.com> Signed-off-by: Martinusbe <martinusbe@gmail.com> commit 946065a74603a7b0f0a3535828c33fcf5439b69c Author: Akhil Narang <akhilnarang.1999@gmail.com> Date: Mon Oct 2 16:54:27 2017 +0530 repopick: adapt for GZOSP's setup Change-Id: I1b8097b4dd74405f936b446cfacab424db931de2 Signed-off-by: Akhil Narang <akhilnarang.1999@gmail.com> commit 7c3353b43f2f82329447d514d3abbd2b8aa8264f Author: Martinusbe <martinusbe@gmail.com> Date: Sun Oct 15 23:56:52 2017 +0200 repopick: update for 2017 * need to rework envsetup too Change-Id: Id7def7213368c4aa7caa1adc4c9caf0998b3cf2e commit 463fd2bdab939218032d1fed6cc53c95fa044af7 Author: Martinusbe <martinusbe@gmail.com> Date: Sun Oct 15 21:13:09 2017 +0200 repopick: default to gzosp gerrit Change-Id: I10068df89c75803cb377567dfb35f6efa302d812 commit 33193269c3ab80aed338fde72d99948716528a99 Author: theringmaster <gzroms@hotmail.com> Date: Mon Sep 25 11:31:15 2017 -0400 Put roomservice in the correct folder commit a5d1ffd245bff2442d29f590c853fce39556ac0c Author: Martinusbe <martinusbe@gmail.com> Date: Sun Sep 10 00:40:43 2017 +0200 build: add getb64key.py commit 1c0d82f5ca33983ba6ff8bb3a28fcda770b37acc Author: Prema Chand Alugu <premaca@gmail.com> Date: Tue Sep 5 23:08:06 2017 +0530 Revert "hax: Force CAF qcom bt/wlan pathmap to AOSP" This reverts commit 1fb115542bf5186bc70f16f36f43f8f6d89f36ba. Let's got with CAF versions from now! commit 8217e1f7f06437fd55fab72c65541c4c41165efc Author: Prema Chand Alugu <premaca@gmail.com> Date: Sat Sep 2 04:17:14 2017 +0530 Revert "qcom_target: remove cflags" This reverts commit aab96aa715e0f005ade9352875567f7f1180a506. commit c64b10c2e70b0bcf1d9c7271a2c67087b4c99a91 Author: Prema Chand Alugu <premaca@gmail.com> Date: Thu Aug 31 23:55:35 2017 +0530 minor cleanup commit d1dab90bf912476e6e58e7904ea53e068bb5ee1e Author: Adrian DC <radian.dc@gmail.com> Date: Mon Jul 24 14:05:30 2017 +0200 soong_config: Add TARGET_NEEDS_PLATFORM_TEXT_RELOCATIONS * Soong product variable 'needs_text_relocations' Change-Id: Ia22c94922f37c49f0d66a67747efa0ee97b4e477 Signed-off-by: Adrian DC <radian.dc@gmail.com> commit 2d9ad0135d6a01c72f0044c2f756cfd7e3215002 Author: Adrian DC <radian.dc@gmail.com> Date: Mon Jul 24 14:05:30 2017 +0200 soong_config: Add TARGET_USES_MEDIA_EXTENSIONS variable * Soong product variable 'uses_media_extensions' Change-Id: Icf36c7e4a90ace7a4c603c63ab1126c1554ffab8 Signed-off-by: Adrian DC <radian.dc@gmail.com> commit 0649e5dbcbd69b1f3a0085cca9ed068cf70807be Author: Adrian DC <radian.dc@gmail.com> Date: Mon Jul 24 14:04:34 2017 +0200 soong_config: Add TARGET_HAS_LEGACY_CAMERA_HAL1 variable * Soong product variable 'has_legacy_camera_hal1' Change-Id: I10800cba0c431297b5d7aad6e97d57a01232d73e Signed-off-by: Adrian DC <radian.dc@gmail.com> commit 1fb115542bf5186bc70f16f36f43f8f6d89f36ba Author: Michael Bestas <mkbestas@lineageos.org> Date: Thu Aug 24 23:55:32 2017 +0300 hax: Force CAF qcom bt/wlan pathmap to AOSP Change-Id: Ifcc2bc9bc2d0f05a83391d11f6756ce62609ec47 commit cd24d1850d1fa155d5606372221276ecbd44bcc1 Author: Luca Stefani <luca020400@lineageos.org> Date: Thu Aug 17 22:23:22 2017 +0200 vendor: Add project pathmap defs Change-Id: I5357eadcf6efe6ddbd6686ed69db0d59114e0a5d commit cc82820b77905c7ee56040ec98b4a5fc2bc79ff3 Author: Simon Shields <simon@lineageos.org> Date: Wed Aug 23 12:03:36 2017 +1000 gzosp: add soong bits for boardflags Change-Id: If01db1eb6b1432a6c4d26d5c9701895ab4dc3ff5 commit aab96aa715e0f005ade9352875567f7f1180a506 Author: Martinusbe <martinusbe@gmail.com> Date: Tue Aug 22 22:40:15 2017 +0200 qcom_target: remove cflags * soong doesn't like them commit 8fa96782bc3404d278ba5bdd3f7d171b4411f107 Author: Prema Chand Alugu <premaca@gmail.com> Date: Tue Aug 22 17:55:38 2017 +0530 Start Gzosp vendor Change-Id: If555a7097ccc8c854d676606efd74a96c490e1f9
-rw-r--r--build/core/main.mk12
-rw-r--r--build/core/main_version.mk28
-rw-r--r--build/envsetup.sh188
-rw-r--r--build/tasks/bacon.mk12
-rw-r--r--build/tasks/kernel.mk2
-rw-r--r--build/tools/add_additional_fonts.py49
-rwxr-xr-xbuild/tools/repopick.py4
-rwxr-xr-xbuild/tools/roomcleaner.py229
-rwxr-xr-xbuild/tools/roomservice.py493
9 files changed, 728 insertions, 289 deletions
diff --git a/build/core/main.mk b/build/core/main.mk
new file mode 100644
index 000000000..2ca3fc751
--- /dev/null
+++ b/build/core/main.mk
@@ -0,0 +1,12 @@
+# Include AICP versions
+include $(TOPDIR)vendor/aicp/build/core/main_version.mk
+
+# Override product info for Google Play Services and SafetyNet
+ifeq ($(PRODUCT_OVERRIDE_INFO),true)
+PRODUCT_SYSTEM_PROPERTIES += \
+ ro.build.tags=release-keys \
+ ro.build.stock_fingerprint=$(PRODUCT_OVERRIDE_FINGERPRINT) \
+
+# Description needs special treatment because it contains spaces
+PRIVATE_BUILD_DESC := $(PRODUCT_OVERRIDE_DESC)
+endif
diff --git a/build/core/main_version.mk b/build/core/main_version.mk
new file mode 100644
index 000000000..470e0e0ce
--- /dev/null
+++ b/build/core/main_version.mk
@@ -0,0 +1,28 @@
+# Build fingerprint
+ifneq ($(BUILD_FINGERPRINT),)
+PRODUCT_SYSTEM_PROPERTIES += \
+ ro.build.fingerprint=$(BUILD_FINGERPRINT)
+endif
+
+# AICP System Version
+PRODUCT_SYSTEM_PROPERTIES += \
+ ro.aicp.display.version=$(AICP_VERSION) \
+ ro.aicp.buildtype=$(AICP_BUILDTYPE) \
+ ro.aicp.version.update=$(AICP_BRANCH)-$(VERSION) \
+ ro.modversion=$(AICP_VERSION) \
+ ro.aicp.version=$(VERSION)-$(AICP_BUILDTYPE)
+
+# additions for LOS-recovery
+#PRODUCT_SYSTEM_PROPERTIES += \
+# ro.lineage.build.version=$(VERSION) \
+# ro.lineage.version=-$(shell date +%Y%m%d)_$(shell date +%H%M%S)-
+
+# AICP Stats
+PRODUCT_SYSTEM_PROPERTIES += \
+ ro.aicp.branch=$(AICP_BRANCH) \
+ ro.romstats.url=https://stats.aicp-rom.com/ \
+ ro.romstats.name=AICP \
+ ro.romstats.buildtype=$(AICP_BUILDTYPE) \
+ ro.romstats.version=$(VERSION) \
+ ro.romstats.tframe=1 \
+ ro.romstats.askfirst=1
diff --git a/build/envsetup.sh b/build/envsetup.sh
index 6f29163ea..76f2cdd1e 100644
--- a/build/envsetup.sh
+++ b/build/envsetup.sh
@@ -1,3 +1,58 @@
+function __print_aicp_functions_help() {
+cat <<EOF
+Additional AICP functions:
+- cout: Changes directory to out.
+- mmp: Builds all of the modules in the current directory and pushes them to the device.
+- mmap: Builds all of the modules in the current directory and its dependencies, then pushes the package to the device.
+- mmmp: Builds all of the modules in the supplied directories and pushes them to the device.
+- aicpgerrit: A Git wrapper that fetches/pushes patch from/to AICP Gerrit Review.
+- aicprebase: Rebase a Gerrit change and push it again.
+- aicpremote: Add git remote for AICP Gerrit Review.
+- aospremote: Add git remote for matching AOSP repository.
+- cafremote: Add git remote for matching CodeAurora repository.
+- githubremote: Add git remote for AICP Github.
+- mka: Builds using SCHED_BATCH on all processors.
+- mkap: Builds the module(s) using mka and pushes them to the device.
+- cmka: Cleans and builds using mka.
+- repodiff: Diff 2 different branches or tags within the same repo
+- repolastsync: Prints date and time of last repo sync.
+- reposync: Parallel repo sync using ionice and SCHED_BATCH.
+- repopick: Utility to fetch changes from Gerrit.
+- sort-blobs-list: Sort proprietary-files.txt sections with LC_ALL=C.
+- installboot: Installs a boot.img to the connected device.
+- installrecovery: Installs a recovery.img to the connected device.
+EOF
+}
+
+function mk_timer()
+{
+ local start_time=$(date +"%s")
+ $@
+ local ret=$?
+ local end_time=$(date +"%s")
+ local tdiff=$(($end_time-$start_time))
+ local hours=$(($tdiff / 3600 ))
+ local mins=$((($tdiff % 3600) / 60))
+ local secs=$(($tdiff % 60))
+ local ncolors=$(tput colors 2>/dev/null)
+ echo
+ if [ $ret -eq 0 ] ; then
+ echo -n "#### make completed successfully "
+ else
+ echo -n "#### make failed to build some targets "
+ fi
+ if [ $hours -gt 0 ] ; then
+ printf "(%02g:%02g:%02g (hh:mm:ss))" $hours $mins $secs
+ elif [ $mins -gt 0 ] ; then
+ printf "(%02g:%02g (mm:ss))" $mins $secs
+ elif [ $secs -gt 0 ] ; then
+ printf "(%s seconds)" $secs
+ fi
+ echo " ####"
+ echo
+ return $ret
+}
+
CLANG_VERSION=$(${ANDROID_BUILD_TOP}/build/soong/scripts/get_clang_version.py)
export LLVM_AOSP_PREBUILTS_VERSION="${CLANG_VERSION}"
@@ -12,12 +67,12 @@ function check_product()
echo "Couldn't locate the top of the tree. Try setting TOP." >&2
return
fi
- if (echo -n $1 | grep -q -e "^lineage_") ; then
- LINEAGE_BUILD=$(echo -n $1 | sed -e 's/^lineage_//g')
+ if (echo -n $1 | grep -q -e "^aicp_") ; then
+ AICP_BUILD=$(echo -n $1 | sed -e 's/^aicp_//g')
else
- LINEAGE_BUILD=
+ AICP_BUILD=
fi
- export LINEAGE_BUILD
+ export AICP_BUILD
TARGET_PRODUCT=$1 \
TARGET_RELEASE=$2 \
@@ -40,6 +95,18 @@ function brunch()
return $?
}
+function brunchopen()
+{
+ breakfast $*
+ if [ $? -eq 0 ]; then
+ mka bacon && xdg-open $ANDROID_PRODUCT_OUT
+ else
+ echo "No such item in brunch menu. Try 'breakfast'"
+ return 1
+ fi
+ return $?
+}
+
function breakfast()
{
target=$1
@@ -59,7 +126,7 @@ function breakfast()
variant="userdebug"
fi
- lunch lineage_$target-$aosp_target_release-$variant
+ lunch aicp_$target-$aosp_target_release-$variant
fi
fi
return $?
@@ -70,7 +137,7 @@ alias bib=breakfast
function eat()
{
if [ "$OUT" ] ; then
- ZIPPATH=`ls -tr "$OUT"/lineage-*.zip | tail -1`
+ ZIPPATH=`ls -tr "$OUT"/aicp_*.zip | tail -1`
if [ ! -f $ZIPPATH ] ; then
echo "Nothing to eat"
return 1
@@ -78,13 +145,13 @@ function eat()
echo "Waiting for device..."
adb wait-for-device-recovery
echo "Found device"
- if (adb shell getprop ro.lineage.device | grep -q "$LINEAGE_BUILD"); then
+ if (adb shell getprop ro.lineage.device | grep -q "$AICP_BUILD"); then
echo "Rebooting to sideload for install"
adb reboot sideload-auto-reboot
adb wait-for-sideload
adb sideload $ZIPPATH
else
- echo "The connected device does not appear to be $LINEAGE_BUILD, run away!"
+ echo "The connected device does not appear to be $AICP_BUILD, run away!"
fi
return $?
else
@@ -208,43 +275,43 @@ function dddclient()
fi
}
-function lineageremote()
+function aicpremote()
{
if ! git rev-parse --git-dir &> /dev/null
then
echo ".git directory not found. Please run this from the root directory of the Android repository you wish to set up."
return 1
fi
- git remote rm lineage 2> /dev/null
+ git remote rm aicp 2> /dev/null
local REMOTE=$(git config --get remote.github.projectname)
- local LINEAGE="true"
+ local AICP="true"
if [ -z "$REMOTE" ]
then
REMOTE=$(git config --get remote.aosp.projectname)
- LINEAGE="false"
+ AICP="false"
fi
if [ -z "$REMOTE" ]
then
REMOTE=$(git config --get remote.clo.projectname)
- LINEAGE="false"
+ AICP="false"
fi
- if [ $LINEAGE = "false" ]
+ if [ $AICP = "false" ]
then
local PROJECT=$(echo $REMOTE | sed -e "s#platform/#android/#g; s#/#_#g")
- local PFX="LineageOS/"
+ local PFX="AICP/"
else
local PROJECT=$REMOTE
fi
- local LINEAGE_USER=$(git config --get review.review.lineageos.org.username)
- if [ -z "$LINEAGE_USER" ]
+ local AICP_USER=$(git config --get review.gerrit.aicp-rom.com.username)
+ if [ -z "$AICP_USER" ]
then
- git remote add lineage ssh://review.lineageos.org:29418/$PFX$PROJECT
+ git remote add aicp ssh://gerrit.aicp-rom.com:29418/$PFX$PROJECT
else
- git remote add lineage ssh://$LINEAGE_USER@review.lineageos.org:29418/$PFX$PROJECT
+ git remote add aicp ssh://$AICP_USER@gerrit.aicp-rom.com:29418/$PFX$PROJECT
fi
- echo "Remote 'lineage' created"
+ echo "Remote 'aicp' created"
}
function aospremote()
@@ -326,7 +393,7 @@ function githubremote()
local PROJECT=$(echo $REMOTE | sed -e "s#platform/#android/#g; s#/#_#g")
- git remote add github https://github.com/LineageOS/$PROJECT
+ git remote add github https://github.com/AICP/$PROJECT
echo "Remote 'github' created"
}
@@ -344,6 +411,20 @@ function privateremote()
echo "Remote 'private' created"
}
+function privateremote()
+{
+ if ! git rev-parse --git-dir &> /dev/null
+ then
+ echo ".git directory not found. Please run this from the root directory of the Android repository you wish to set up."
+ return 1
+ fi
+ git remote rm private 2> /dev/null
+ local PROJECT=$(git config --get remote.github.projectname)
+
+ git remote add private git@github.com:$PROJECT.git
+ echo "Remote 'private' created"
+}
+
function installboot()
{
if [ ! -e "$OUT/recovery/root/system/etc/recovery.fstab" ];
@@ -371,14 +452,14 @@ function installboot()
adb wait-for-device-recovery
adb root
adb wait-for-device-recovery
- if (adb shell getprop ro.lineage.device | grep -q "$LINEAGE_BUILD");
+ if (adb shell getprop ro.lineage.device | grep -q "$AICP_BUILD");
then
adb push $OUT/boot.img /cache/
adb shell dd if=/cache/boot.img of=$PARTITION
adb shell rm -rf /cache/boot.img
echo "Installation complete."
else
- echo "The connected device does not appear to be $LINEAGE_BUILD, run away!"
+ echo "The connected device does not appear to be $AICP_BUILD, run away!"
fi
}
@@ -409,18 +490,18 @@ function installrecovery()
adb wait-for-device-recovery
adb root
adb wait-for-device-recovery
- if (adb shell getprop ro.lineage.device | grep -q "$LINEAGE_BUILD");
+ if (adb shell getprop ro.lineage.device | grep -q "$AICP_BUILD");
then
adb push $OUT/recovery.img /cache/
adb shell dd if=/cache/recovery.img of=$PARTITION
adb shell rm -rf /cache/recovery.img
echo "Installation complete."
else
- echo "The connected device does not appear to be $LINEAGE_BUILD, run away!"
+ echo "The connected device does not appear to be $AICP_BUILD, run away!"
fi
}
-function lineagegerrit() {
+function aicpgerrit() {
if [ "$(basename $SHELL)" = "zsh" ]; then
# zsh does not define FUNCNAME, derive from funcstack
local FUNCNAME=$funcstack[1]
@@ -430,7 +511,7 @@ function lineagegerrit() {
$FUNCNAME help
return 1
fi
- local user=`git config --get review.review.lineageos.org.username`
+ local user=`git config --get review.gerrit.aicp-rom.com.username`
local review=`git config --get remote.github.review`
local project=`git config --get remote.github.projectname`
local command=$1
@@ -466,7 +547,7 @@ EOF
case $1 in
__cmg_*) echo "For internal use only." ;;
changes|for)
- if [ "$FUNCNAME" = "lineagegerrit" ]; then
+ if [ "$FUNCNAME" = "aicpgerrit" ]; then
echo "'$FUNCNAME $1' is deprecated."
fi
;;
@@ -559,7 +640,7 @@ EOF
${local_branch}:refs/for/$remote_branch || return 1
;;
changes|for)
- if [ "$FUNCNAME" = "lineagegerrit" ]; then
+ if [ "$FUNCNAME" = "aicpgerrit" ]; then
echo >&2 "'$FUNCNAME $command' is deprecated."
fi
;;
@@ -658,15 +739,15 @@ EOF
esac
}
-function lineagerebase() {
+function aicprebase() {
local repo=$1
local refs=$2
local pwd="$(pwd)"
local dir="$(gettop)/$repo"
if [ -z $repo ] || [ -z $refs ]; then
- echo "LineageOS Gerrit Rebase Usage: "
- echo " lineagerebase <path to project> <patch IDs on Gerrit>"
+ echo "AICP Gerrit Rebase Usage: "
+ echo " aicprebase <path to project> <patch IDs on Gerrit>"
echo " The patch IDs appear on the Gerrit commands that are offered."
echo " They consist on a series of numbers and slashes, after the text"
echo " refs/changes. For example, the ID in the following command is 26/8126/2"
@@ -687,7 +768,7 @@ function lineagerebase() {
echo "Bringing it up to date..."
repo sync .
echo "Fetching change..."
- git fetch "http://review.lineageos.org/p/$repo" "refs/changes/$refs" && git cherry-pick FETCH_HEAD
+ git fetch "http://gerrit.aicp-rom.com/p/$repo" "refs/changes/$refs" && git cherry-pick FETCH_HEAD
if [ "$?" != "0" ]; then
echo "Error cherry-picking. Not uploading!"
return
@@ -771,7 +852,7 @@ function dopush()
echo "Device Found."
fi
- if (adb shell getprop ro.lineage.device | grep -q "$LINEAGE_BUILD") || [ "$FORCE_PUSH" = "true" ];
+ if (adb shell getprop ro.lineage.device | grep -q "$AICP_BUILD") || [ "$FORCE_PUSH" = "true" ];
then
# retrieve IP and PORT info if we're using a TCP connection
TCPIPPORT=$(adb devices \
@@ -890,7 +971,7 @@ EOF
rm -f $OUT/.log
return 0
else
- echo "The connected device does not appear to be $LINEAGE_BUILD, run away!"
+ echo "The connected device does not appear to be $AICP_BUILD, run away!"
fi
}
@@ -915,7 +996,7 @@ function fixup_common_out_dir() {
common_out_dir=$(_get_build_var_cached OUT_DIR)/target/common
target_device=$(_get_build_var_cached TARGET_DEVICE)
common_target_out=common-${target_device}
- if [ ! -z $LINEAGE_FIXUP_COMMON_OUT ]; then
+ if [ ! -z $AICP_FIXUP_COMMON_OUT ]; then
if [ -d ${common_out_dir} ] && [ ! -L ${common_out_dir} ]; then
mv ${common_out_dir} ${common_out_dir}-${target_device}
ln -s ${common_target_out} ${common_out_dir}
@@ -973,14 +1054,14 @@ function build_kernel() {
echo "Syncing ${KERNEL_BUILD_TOP}"
local target_kernel_manifest=$(echo android_kernel_${target_kernel_source}_manifest | tr / _)
local repo_init_args=("-b" "${lineage_version}")
- if [ -n "${LINEAGE_MIRROR}" ]; then
- repo_init_args+=("--reference" "${LINEAGE_MIRROR}")
+ if [ -n "${AICP_MIRROR}" ]; then
+ repo_init_args+=("--reference" "${AICP_MIRROR}")
fi
if [ -n "${REPO_VERSION}" ]; then
repo_init_args+=("--repo-rev" "${REPO_VERSION}")
fi
- yes | repo init -u https://github.com/LineageOS/${target_kernel_manifest}.git ${repo_init_args[@]} || [ $? -eq 141 ]
+ yes | repo init -u https://github.com/AICP/${target_kernel_manifest}.git ${repo_init_args[@]} || [ $? -eq 141 ]
if [ $? -ne 0 ]; then
echo "Kernel source repo init failed"
popd > /dev/null
@@ -1011,4 +1092,33 @@ function build_kernel() {
cp -a "${KERNEL_BUILD_TOP}/out/${target_kernel_device}/dist/"* "${target_kernel_dir}/"
chmod -x "${target_kernel_dir}/"*
echo "Kernel build output copied to ${target_kernel_dir}/"
+
+}
+
+function sync_all_kernels() {
+ source ${ANDROID_BUILD_TOP}/vendor/aicp/vars/kernel_platform
+
+ for kver in "${!kernel_branches[@]}"; do
+ BRANCH="${kernel_branches[$kver]}"
+ KERNELVER=$(echo "$BRANCH" |awk -F"-" '{ print $3 }');
+ KERNELPATH=$(realpath ${ANDROID_BUILD_TOP}/../kernel-${KERNELVER})
+ if [ ! -d "${KERNELPATH}" ]; then
+ echo Initializing kernel-${KERNELVER};
+ mkdir -p ${KERNELPATH}
+ pushd ${KERNELPATH}
+ repo init -u $kernel_manifest_url -b $BRANCH
+ reposync
+ popd
+ else
+ echo Updating kernel-${KERNELVER};
+ pushd ${KERNELPATH}
+ CURBRANCH=$(repo info |grep '^Manifest merge branch' |awk -F'/' '{ print $NF }')
+ if [ "$CURBRANCH" != "$BRANCH" ]; then
+ echo Updating kernel-${KERNELVER} from $CURBRANCH to $BRANCH
+ repo init -b $BRANCH
+ fi
+ reposync
+ popd
+ fi
+ done
}
diff --git a/build/tasks/bacon.mk b/build/tasks/bacon.mk
index 272a4b8ef..ae3cb42cc 100644
--- a/build/tasks/bacon.mk
+++ b/build/tasks/bacon.mk
@@ -16,14 +16,14 @@
# -----------------------------------------------------------------
# Lineage OTA update package
-LINEAGE_TARGET_PACKAGE := $(PRODUCT_OUT)/lineage-$(LINEAGE_VERSION).zip
+AICP_TARGET_PACKAGE := $(PRODUCT_OUT)/$(AICP_VERSION).zip
SHA256 := prebuilts/build-tools/path/$(HOST_PREBUILT_TAG)/sha256sum
-$(LINEAGE_TARGET_PACKAGE): $(INTERNAL_OTA_PACKAGE_TARGET)
- $(hide) ln -f $(INTERNAL_OTA_PACKAGE_TARGET) $(LINEAGE_TARGET_PACKAGE)
- $(hide) $(SHA256) $(LINEAGE_TARGET_PACKAGE) | sed "s|$(PRODUCT_OUT)/||" > $(LINEAGE_TARGET_PACKAGE).sha256sum
- @echo "Package Complete: $(LINEAGE_TARGET_PACKAGE)" >&2
+$(AICP_TARGET_PACKAGE): $(INTERNAL_OTA_PACKAGE_TARGET)
+ $(hide) ln -f $(INTERNAL_OTA_PACKAGE_TARGET) $(AICP_TARGET_PACKAGE)
+ $(hide) $(SHA256) $(AICP_TARGET_PACKAGE) | sed "s|$(PRODUCT_OUT)/||" > $(AICP_TARGET_PACKAGE).sha256sum
+ @echo "Package Complete: $(AICP_TARGET_PACKAGE)" >&2
.PHONY: bacon
-bacon: $(LINEAGE_TARGET_PACKAGE) $(DEFAULT_GOAL)
+bacon: $(AICP_TARGET_PACKAGE) $(DEFAULT_GOAL)
diff --git a/build/tasks/kernel.mk b/build/tasks/kernel.mk
index 8729ad49d..981d24465 100644
--- a/build/tasks/kernel.mk
+++ b/build/tasks/kernel.mk
@@ -210,7 +210,7 @@ else
$(error "NO KERNEL CONFIG")
else
ifneq ($(TARGET_FORCE_PREBUILT_KERNEL),)
- ifneq ($(filter RELEASE NIGHTLY SNAPSHOT EXPERIMENTAL,$(LINEAGE_BUILDTYPE)),)
+ ifneq ($(filter RELEASE NIGHTLY SNAPSHOT EXPERIMENTAL,$(AICP_BUILDTYPE)),)
$(error "PREBUILT KERNEL IS NOT ALLOWED ON OFFICIAL BUILDS!")
else
$(warning **********************************************************)
diff --git a/build/tools/add_additional_fonts.py b/build/tools/add_additional_fonts.py
new file mode 100644
index 000000000..b162e74cb
--- /dev/null
+++ b/build/tools/add_additional_fonts.py
@@ -0,0 +1,49 @@
+#!/usr/bin/env python3
+#
+# Copyright (C) 2017 The Android Open Source 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.
+#
+
+import sys
+
+
+def main(argv):
+ original_file = "vendor/aicp/prebuilt/common/etc/fonts_customization.xml"
+
+ if len(argv) >= 3:
+ output_file_path = argv[1]
+ override_file_paths = argv[2:]
+ else:
+ raise ValueError("Wrong number of arguments %s" % len(argv))
+
+ fallback_placeholder_found = False
+ with open(original_file, "r") as input_file:
+ with open(output_file_path, "w") as output_file:
+ for line in input_file:
+ # If we've found the spot to add additional fonts, add them.
+ if line.strip() == "<!-- additional fonts -->":
+ fallback_placeholder_found = True
+ for override_file_path in override_file_paths:
+ with open(override_file_path) as override_file:
+ for override_line in override_file:
+ output_file.write(override_line)
+ output_file.write(line)
+ if not fallback_placeholder_found:
+ raise ValueError(
+ "<!-- additional fonts --> not found in source file: %s" % original_file
+ )
+
+
+if __name__ == "__main__":
+ main(sys.argv)
diff --git a/build/tools/repopick.py b/build/tools/repopick.py
index d5e29f210..dd4e04ac7 100755
--- a/build/tools/repopick.py
+++ b/build/tools/repopick.py
@@ -196,7 +196,7 @@ def is_closed(status):
def is_lineage_gerrit(remote_url):
p = urllib.parse.urlparse(remote_url)
- return p.hostname == "review.lineageos.org"
+ return p.hostname == "gerrit.aicp-rom.com"
def commit_exists(project_path, revision):
@@ -302,7 +302,7 @@ def main():
parser.add_argument(
"-g",
"--gerrit",
- default="https://review.lineageos.org",
+ default="https://gerrit.aicp-rom.com",
metavar="",
help="Gerrit Instance to use. Form proto://[user@]host[:port]",
)
diff --git a/build/tools/roomcleaner.py b/build/tools/roomcleaner.py
new file mode 100755
index 000000000..c9fac839c
--- /dev/null
+++ b/build/tools/roomcleaner.py
@@ -0,0 +1,229 @@
+#!/usr/bin/env python
+# Copyright (C) 2012 The CyanogenMod Project
+# Copyright (C) 2012-2017 AICP 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.
+
+from __future__ import print_function
+
+import base64
+import filecmp
+import json
+import netrc
+import os
+import re
+import sys
+try:
+ # For python3
+ import urllib.error
+ import urllib.parse
+ import urllib.request
+except ImportError:
+ # For python2
+ import imp
+ import urllib2
+ import urlparse
+ urllib = imp.new_module('urllib')
+ urllib.error = urllib2
+ urllib.parse = urlparse
+ urllib.request = urllib2
+
+from xml.etree import ElementTree
+
+device_path = sys.argv[1]
+
+if device_path.endswith("/"):
+ device_path = device_path[:-1]
+
+try:
+ device = device_path[device_path.rfind("/") + 1:]
+except:
+ device = device_path
+
+repositories = []
+
+page = 1
+
+local_manifests = r'.repo/local_manifests'
+if not os.path.exists(local_manifests): os.makedirs(local_manifests)
+
+removal_manifest = ".repo/local_manifests/00_aicp_removals.xml"
+tmp_removal_manifest = ".repo/local_manifests/tmp_aicp_removals.xml"
+
+def exists_in_tree(lm, repository):
+ for child in lm.getchildren():
+ if child.attrib['name'].endswith(repository):
+ return child
+ return None
+
+# in-place prettyprint formatter
+def indent(elem, level=0):
+ i = "\n" + level*" "
+ if len(elem):
+ if not elem.text or not elem.text.strip():
+ elem.text = i + " "
+ if not elem.tail or not elem.tail.strip():
+ elem.tail = i
+ for elem in elem:
+ indent(elem, level+1)
+ if not elem.tail or not elem.tail.strip():
+ elem.tail = i
+ else:
+ if level and (not elem.tail or not elem.tail.strip()):
+ elem.tail = i
+
+def is_in_manifest(projectname):
+ try:
+ lm = ElementTree.parse(tmp_removal_manifest)
+ lm = lm.getroot()
+ except:
+ lm = ElementTree.Element("manifest")
+
+ for localpath in lm.findall("remove-project"):
+ if localpath.get("name") == projectname:
+ return 1
+
+ return None
+
+def add_to_manifest_dependencies(repositories):
+ try:
+ lm = ElementTree.parse(tmp_removal_manifest)
+ lm = lm.getroot()
+ except:
+ lm = ElementTree.Element("manifest")
+
+ for repository in repositories:
+ repo_name = repository['repository']
+ existing_project = exists_in_tree(lm, repo_name)
+ if existing_project != None:
+ print('Remove-project for AICP/%s already exists' % (repo_name))
+ continue
+
+ print ('Adding remove-project to manifest: %s' % (repo_name))
+ project = ElementTree.Element("remove-project", attrib = { "name": repo_name })
+
+ lm.append(project)
+
+ indent(lm, 0)
+ raw_xml = ElementTree.tostring(lm).decode()
+ raw_xml = '<?xml version="1.0" encoding="UTF-8"?>\n' + raw_xml
+
+ f = open(tmp_removal_manifest, 'w')
+ f.write(raw_xml)
+ f.close()
+
+def add_to_manifest(repositories):
+ try:
+ lm = ElementTree.parse(tmp_removal_manifest)
+ lm = lm.getroot()
+ except:
+ lm = ElementTree.Element("manifest")
+
+ for repository in repositories:
+ repo_name = repository['repository']
+ if exists_in_tree(lm, repo_name):
+ print('Remove-project for AICP/%s already exists' % (repo_name))
+ continue
+
+ print ('Adding remove-project to manifest: %s' % (repo_name))
+ project = ElementTree.Element("remove-project", attrib = { "name": "AICP/%s" % (repo_name) })
+
+ lm.append(project)
+
+ indent(lm, 0)
+ raw_xml = ElementTree.tostring(lm).decode()
+ raw_xml = '<?xml version="1.0" encoding="UTF-8"?>\n' + raw_xml
+
+ f = open(tmp_removal_manifest, 'w')
+ f.write(raw_xml)
+ f.close()
+
+def fetch_dependencies(repo_path):
+ #print('Looking for required remove-projects')
+ dependencies_path = repo_path + '/aicp.removal.dependencies'
+ syncable_repos = []
+
+ if os.path.exists(dependencies_path):
+ dependencies_file = open(dependencies_path, 'r')
+ dependencies = json.loads(dependencies_file.read())
+ fetch_list = []
+
+ for dependency in dependencies:
+ if not is_in_manifest("%s" % dependency['repository']):
+ fetch_list.append(dependency)
+
+ dependencies_file.close()
+
+ if len(fetch_list) > 0:
+ add_to_manifest_dependencies(fetch_list)
+
+ if len(syncable_repos) > 0:
+ print('Syncing dependencies')
+ os.system('repo sync --force-sync %s' % ' '.join(syncable_repos))
+
+def remove_removals(removal_manifest):
+ tmp_manifest_disable = ".repo/local_manifests/aicp_manifest.xml"
+ tmp_manifest_disabled = ".repo/local_manifests/tmp_disabled"
+ syncable_repos = []
+ try:
+ lm = ElementTree.parse(removal_manifest)
+ lm = lm.getroot()
+ except:
+ lm = ElementTree.Element("manifest")
+ for child in lm.getchildren():
+ syncable_repos.append(child.attrib['name'])
+ os.system('rm %s' % removal_manifest)
+
+ if os.path.exists(tmp_manifest_disable):
+ os.system('mv %s %s' % (tmp_manifest_disable, tmp_manifest_disabled))
+ for remove_dep in syncable_repos:
+ remove_dependency(os.popen('repo list -p %s' % remove_dep).read()[:-1], tmp_manifest_disabled)
+ if os.path.exists(tmp_manifest_disabled):
+ os.system('mv %s %s' % (tmp_manifest_disabled, tmp_manifest_disable))
+
+ os.system('repo sync --force-sync %s' % ' '.join(syncable_repos))
+
+def remove_dependency(dependency_paths, manifest_path):
+ try:
+ lm = ElementTree.parse(manifest_path)
+ lm = lm.getroot()
+ except:
+ lm = ElementTree.Element("manifest")
+ for child in lm.getchildren():
+ for dependency_path in dependency_paths.split('\n'):
+ if child.attrib['path'] == dependency_path:
+ print('Removing dependency %s from local manifest to avoid conflicts' % child.attrib['path'])
+ lm.remove(child)
+ f = open(manifest_path, 'w')
+ f.write(ElementTree.tostring(lm).decode())
+ f.close()
+
+fetch_dependencies(device_path)
+
+if os.path.exists(removal_manifest):
+ if os.path.exists(tmp_removal_manifest):
+ if filecmp.cmp(removal_manifest, tmp_removal_manifest):
+ print('Leaving repo removals in local manifest unchanged')
+ os.system('rm %s' % tmp_removal_manifest)
+ else:
+ print('Updating repo removals in local manifest')
+ remove_removals(removal_manifest)
+ os.system('mv %s %s' % (tmp_removal_manifest, removal_manifest))
+ else:
+ print('Removing previous repo removals from local manifest')
+ remove_removals(removal_manifest)
+elif os.path.exists(tmp_removal_manifest):
+ print('Created repo removals for local manifest')
+ os.system('mv %s %s' % (tmp_removal_manifest, removal_manifest))
+else:
+ print('No remove-project used or required')
diff --git a/build/tools/roomservice.py b/build/tools/roomservice.py
index 8c55c518d..c7f601476 100755
--- a/build/tools/roomservice.py
+++ b/build/tools/roomservice.py
@@ -1,6 +1,6 @@
-#!/usr/bin/env python3
+#!/usr/bin/env python
# Copyright (C) 2012-2013, The CyanogenMod Project
-# (C) 2017-2018,2020-2021, The LineageOS Project
+# (C) 2017, 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.
@@ -16,64 +16,70 @@
from __future__ import print_function
-import glob
+import base64
import json
+import netrc
import os
-import re
-import subprocess
import sys
-import urllib.error
-import urllib.parse
-import urllib.request
from xml.etree import ElementTree
-dryrun = os.getenv('ROOMSERVICE_DRYRUN') == "true"
-if dryrun:
- print("Dry run roomservice, no change will be made.")
+try:
+ # For python3
+ import urllib.error
+ import urllib.parse
+ import urllib.request
+except ImportError:
+ # For python2
+ import imp
+ import urllib2
+ import urlparse
+ urllib = imp.new_module('urllib')
+ urllib.error = urllib2
+ urllib.parse = urlparse
+ urllib.request = urllib2
-product = sys.argv[1]
+DEBUG = False
-if len(sys.argv) > 2:
- depsonly = sys.argv[2]
-else:
- depsonly = None
+custom_local_manifest = ".repo/local_manifests/roomservice.xml"
+custom_default_revision = os.getenv('ROOMSERVICE_DEFAULT_BRANCH', 'w16.0')
+custom_dependencies = "aicp.dependencies"
+org_manifest = "aicp" # leave empty if org is provided in manifest
+org_display = "AICP" # needed for displaying
-try:
- device = product[product.index("_") + 1:]
-except:
- device = product
+github_auth = None
-if not depsonly:
- print("Device %s not found. Attempting to retrieve device repository from LineageOS Github (http://github.com/LineageOS)." % device)
-repositories = []
+local_manifests = '.repo/local_manifests'
+if not os.path.exists(local_manifests):
+ os.makedirs(local_manifests)
-if not depsonly:
- githubreq = urllib.request.Request("https://raw.githubusercontent.com/LineageOS/mirror/main/default.xml")
- try:
- result = ElementTree.fromstring(urllib.request.urlopen(githubreq, timeout=10).read().decode())
- except urllib.error.URLError:
- print("Failed to fetch data from GitHub")
- sys.exit(1)
- except ValueError:
- print("Failed to parse return data from GitHub")
- sys.exit(1)
- for res in result.findall('.//project'):
- repositories.append(res.attrib['name'][10:])
-local_manifests = r'.repo/local_manifests'
-if not os.path.exists(local_manifests): os.makedirs(local_manifests)
+def debug(*args, **kwargs):
+ if DEBUG:
+ print(*args, **kwargs)
+
+
+def add_auth(g_req):
+ global github_auth
+ if github_auth is None:
+ try:
+ auth = netrc.netrc().authenticators("api.github.com")
+ except (netrc.NetrcParseError, IOError):
+ auth = None
+ if auth:
+ github_auth = base64.b64encode(
+ ('%s:%s' % (auth[0], auth[2])).encode()
+ )
+ else:
+ github_auth = ""
+ if github_auth:
+ g_req.add_header("Authorization", "Basic %s" % github_auth)
-def exists_in_tree(lm, path):
- for child in lm.getchildren():
- if child.attrib['path'] == path:
- return True
- return False
-# in-place prettyprint formatter
def indent(elem, level=0):
- i = "\n" + level*" "
+ # in-place prettyprint formatter
+ i = "\n" + " " * level
if len(elem):
if not elem.text or not elem.text.strip():
elem.text = i + " "
@@ -87,228 +93,233 @@ def indent(elem, level=0):
if level and (not elem.tail or not elem.tail.strip()):
elem.tail = i
-def get_manifest_path():
- '''Find the current manifest path
- In old versions of repo this is at .repo/manifest.xml
- In new versions, .repo/manifest.xml includes an include
- to some arbitrary file in .repo/manifests'''
-
- m = ElementTree.parse(".repo/manifest.xml")
+def load_manifest(manifest):
try:
- m.findall('default')[0]
- return '.repo/manifest.xml'
- except IndexError:
- return ".repo/manifests/{}".format(m.find("include").get("name"))
-
-def get_default_revision():
- m = ElementTree.parse(get_manifest_path())
- d = m.findall('default')[0]
- r = d.get('revision')
- return r.replace('refs/heads/', '').replace('refs/tags/', '')
-
-def get_from_manifest(devicename):
- for path in glob.glob(".repo/local_manifests/*.xml"):
- try:
- lm = ElementTree.parse(path)
- lm = lm.getroot()
- except:
- lm = ElementTree.Element("manifest")
-
- for localpath in lm.findall("project"):
- if re.search("android_device_.*_%s$" % device, localpath.get("name")):
- return localpath.get("path")
-
+ man = ElementTree.parse(manifest).getroot()
+ except (IOError, ElementTree.ParseError):
+ man = ElementTree.Element("manifest")
+ return man
+
+def get_from_manifest(device_name):
+ if os.path.exists(custom_local_manifest):
+ man = load_manifest(custom_local_manifest)
+ for local_path in man.findall("project"):
+ lp = local_path.get("path").strip('/')
+ if lp.startswith("device/") and lp.endswith("/" + device_name):
+ return lp
return None
-def is_in_manifest(projectpath):
- for path in glob.glob(".repo/local_manifests/*.xml"):
- try:
- lm = ElementTree.parse(path)
- lm = lm.getroot()
- except:
- lm = ElementTree.Element("manifest")
-
- for localpath in lm.findall("project"):
- if localpath.get("path") == projectpath:
- return True
-
- # Search in main manifest, too
- try:
- lm = ElementTree.parse(get_manifest_path())
- lm = lm.getroot()
- except:
- lm = ElementTree.Element("manifest")
-
- for localpath in lm.findall("project"):
- if localpath.get("path") == projectpath:
- return True
-
- # ... and don't forget the lineage snippet
- try:
- lm = ElementTree.parse(".repo/manifests/snippets/lineage.xml")
- lm = lm.getroot()
- except:
- lm = ElementTree.Element("manifest")
- for localpath in lm.findall("project"):
- if localpath.get("path") == projectpath:
+def is_in_manifest(project_path):
+ man = load_manifest(custom_local_manifest)
+ for local_path in man.findall("project"):
+ if local_path.get("path") == project_path:
return True
-
return False
-def add_to_manifest(repositories):
- if dryrun:
- return
-
- try:
- lm = ElementTree.parse(".repo/local_manifests/roomservice.xml")
- lm = lm.getroot()
- except:
- lm = ElementTree.Element("manifest")
- for repository in repositories:
- repo_name = repository['repository']
- repo_target = repository['target_path']
- repo_revision = repository['branch']
- print('Checking if %s is fetched from %s' % (repo_target, repo_name))
- if is_in_manifest(repo_target):
- print('LineageOS/%s already fetched to %s' % (repo_name, repo_target))
+def add_to_manifest(repos, fallback_branch=None):
+ lm = load_manifest(custom_local_manifest)
+
+ for repo in repos:
+ repo_name = repo['repository']
+ repo_path = repo['target_path']
+ if 'branch' in repo:
+ repo_branch=repo['branch']
+ else:
+ repo_branch=custom_default_revision
+ if 'remote' in repo:
+ repo_remote=repo['remote']
+ elif "/" not in repo_name:
+ repo_remote=org_manifest
+ elif "/" in repo_name:
+ repo_remote="aicp"
+
+ if is_in_manifest(repo_path):
+ print('already exists: %s' % repo_path)
continue
- project = ElementTree.Element("project", attrib = {
- "path": repo_target,
- "remote": "github",
- "name": "LineageOS/%s" % repo_name,
- "revision": repo_revision })
- if repo_remote := repository.get("remote", None):
- # aosp- remotes are only used for kernel prebuilts, thus they
- # don't let you customize clone-depth/revision.
- if repo_remote.startswith("aosp-"):
- project.attrib["name"] = repo_name
- project.attrib["remote"] = repo_remote
- project.attrib["clone-depth"] = "1"
- del project.attrib["revision"]
- if project.attrib.get("revision", None) == get_default_revision():
- del project.attrib["revision"]
- print("Adding dependency: %s -> %s" % (project.attrib["name"], project.attrib["path"]))
+ print('Adding dependency:\nRepository: %s\nBranch: %s\nRemote: %s\nPath: %s\n' % (repo_name, repo_branch,repo_remote, repo_path))
+
+ project = ElementTree.Element(
+ "project",
+ attrib={"path": repo_path,
+ "remote": repo_remote,
+ "name": "%s" % repo_name}
+ )
+
+ clone_depth = os.getenv('ROOMSERVICE_CLONE_DEPTH')
+ if clone_depth:
+ project.set('clone-depth', clone_depth)
+
+ if repo_branch is not None:
+ project.set('revision', repo_branch)
+ elif fallback_branch:
+ print("Using branch %s for %s" %
+ (fallback_branch, repo_name))
+ project.set('revision', fallback_branch)
+ else:
+ print("Using default branch for %s" % repo_name)
+ if 'clone-depth' in repo:
+ print("Setting clone-depth to %s for %s" % (repo['clone-depth'], repo_name))
+ project.set('clone-depth', repo['clone-depth'])
lm.append(project)
- indent(lm, 0)
- raw_xml = ElementTree.tostring(lm).decode()
- raw_xml = '<?xml version="1.0" encoding="UTF-8"?>\n' + raw_xml
+ indent(lm)
+ raw_xml = "\n".join(('<?xml version="1.0" encoding="UTF-8"?>',
+ ElementTree.tostring(lm).decode()))
- f = open('.repo/local_manifests/roomservice.xml', 'w')
+ f = open(custom_local_manifest, 'w')
f.write(raw_xml)
f.close()
-def fetch_dependencies(repo_path):
- print('Looking for dependencies in %s' % repo_path)
- dependencies_path = repo_path + '/lineage.dependencies'
- syncable_repos = []
- verify_repos = []
-
- if os.path.exists(dependencies_path):
- dependencies_file = open(dependencies_path, 'r')
- dependencies = json.loads(dependencies_file.read())
- fetch_list = []
-
- for dependency in dependencies:
- if not is_in_manifest(dependency['target_path']):
- fetch_list.append(dependency)
- syncable_repos.append(dependency['target_path'])
- if 'branch' not in dependency:
- if dependency.get('remote', 'github') == 'github':
- dependency['branch'] = get_default_or_fallback_revision(dependency['repository'])
- if not dependency['branch']:
- sys.exit(1)
- else:
- dependency['branch'] = None
- verify_repos.append(dependency['target_path'])
-
- if not os.path.isdir(dependency['target_path']):
- syncable_repos.append(dependency['target_path'])
-
- dependencies_file.close()
-
- if len(fetch_list) > 0:
- print('Adding dependencies to manifest')
- add_to_manifest(fetch_list)
+_fetch_dep_cache = []
+
+
+def fetch_dependencies(repo_path, fallback_branch=None, first_dependency=False):
+ global _fetch_dep_cache
+ if repo_path in _fetch_dep_cache:
+ return
+ _fetch_dep_cache.append(repo_path)
+
+ print('Looking for dependencies')
+
+ if first_dependency:
+ os.system('vendor/aicp/build/tools/roomcleaner.py %s' % repo_path)
+
+ dep_p = '/'.join((repo_path, custom_dependencies))
+ if os.path.exists(dep_p):
+ with open(dep_p) as dep_f:
+ dependencies = json.load(dep_f)
else:
+ dependencies = {}
print('%s has no additional dependencies.' % repo_path)
- if len(syncable_repos) > 0:
+ fetch_list = []
+ syncable_repos = []
+
+ for dependency in dependencies:
+ if not is_in_manifest(dependency['target_path']):
+ if not dependency.get('branch'):
+ dependency['branch'] = custom_default_revision
+
+ fetch_list.append(dependency)
+ syncable_repos.append(dependency['target_path'])
+ else:
+ print("Dependency already present in manifest: %s => %s" % (dependency['repository'], dependency['target_path']))
+
+ if fetch_list:
+ print('Adding dependencies to manifest\n')
+ add_to_manifest(fetch_list, fallback_branch)
+
+ if syncable_repos:
print('Syncing dependencies')
- if not dryrun:
- os.system('repo sync --force-sync %s' % ' '.join(syncable_repos))
+ os.system('repo sync --force-sync --no-tags --current-branch --no-clone-bundle %s' % ' '.join(syncable_repos))
- for deprepo in verify_repos:
+ for deprepo in syncable_repos:
fetch_dependencies(deprepo)
-def get_default_or_fallback_revision(repo_name):
- default_revision = get_default_revision()
- print("Default revision: %s" % default_revision)
+
+def has_branch(branches, revision):
+ return revision in (branch['name'] for branch in branches)
+
+
+def detect_revision(repo):
+ """
+ returns None if using the default revision, else return
+ the branch name if using a different revision
+ """
print("Checking branch info")
+ githubreq = urllib.request.Request(
+ repo['branches_url'].replace('{/branch}', ''))
+ add_auth(githubreq)
+ result = json.loads(urllib.request.urlopen(githubreq).read().decode())
- try:
- stdout = subprocess.run(
- ["git", "ls-remote", "-h", "https://:@github.com/LineageOS/" + repo_name],
- stdout=subprocess.PIPE,
- stderr=subprocess.PIPE,
- ).stdout.decode()
- branches = [x.split("refs/heads/")[-1] for x in stdout.splitlines()]
- except:
- return ""
-
- if default_revision in branches:
- return default_revision
-
- if os.getenv('ROOMSERVICE_BRANCHES'):
- fallbacks = list(filter(bool, os.getenv('ROOMSERVICE_BRANCHES').split(' ')))
- for fallback in fallbacks:
- if fallback in branches:
- print("Using fallback branch: %s" % fallback)
- return fallback
-
- print("Default revision %s not found in %s. Bailing." % (default_revision, repo_name))
- print("Branches found:")
- for branch in branches:
- print(branch)
- print("Use the ROOMSERVICE_BRANCHES environment variable to specify a list of fallback branches.")
- return ""
-
-if depsonly:
- repo_path = get_from_manifest(device)
- if repo_path:
- fetch_dependencies(repo_path)
- else:
- print("Trying dependencies-only mode on a non-existing device tree?")
+ print("Calculated revision: %s" % custom_default_revision)
+
+ if has_branch(result, custom_default_revision):
+ return custom_default_revision
+ print("Branch %s not found" % custom_default_revision)
sys.exit()
-else:
- for repo_name in repositories:
- if re.match(r"^android_device_[^_]*_" + device + "$", repo_name):
- print("Found repository: %s" % repo_name)
-
- manufacturer = repo_name.replace("android_device_", "").replace("_" + device, "")
- repo_path = "device/%s/%s" % (manufacturer, device)
- revision = get_default_or_fallback_revision(repo_name)
- if revision == "":
- # Some devices have the same codename but shipped a long time ago and may not have
- # a current branch set up.
- # Continue looking up all repositories until a match is found or no repos are left
- # to check.
- continue
-
- device_repository = {'repository':repo_name,'target_path':repo_path,'branch':revision}
- add_to_manifest([device_repository])
-
- print("Syncing repository to retrieve project.")
- os.system('repo sync --force-sync %s' % repo_path)
- print("Repository synced!")
-
- fetch_dependencies(repo_path)
- print("Done")
- sys.exit()
-
-print("Repository for %s not found in the LineageOS Github repository list. If this is in error, you may need to manually add it to your local_manifests/roomservice.xml." % device)
+
+def main():
+ global DEBUG
+ try:
+ depsonly = bool(sys.argv[2] in ['true', 1])
+ except IndexError:
+ depsonly = False
+
+ if os.getenv('ROOMSERVICE_DEBUG'):
+ DEBUG = True
+
+ product = sys.argv[1]
+ device = product[product.find("_") + 1:] or product
+
+ if depsonly:
+ repo_path = get_from_manifest(device)
+ if repo_path:
+ fetch_dependencies(repo_path, None, True)
+ else:
+ # Try again without removing underscores
+ device = product
+ repo_path = get_from_manifest(device)
+ if repo_path:
+ fetch_dependencies(repo_path)
+ else:
+ print("Trying dependencies-only mode on a "
+ "non-existing device tree?")
+ sys.exit()
+
+ print("Device {0} not found. Attempting to retrieve device repository from "
+ "{1} Github (https://github.com/{1}).".format(device, org_display))
+
+ githubreq = urllib.request.Request(
+ "https://api.github.com/search/repositories?"
+ "q={0}+user:{1}+in:name+fork:true".format(device, org_display))
+ add_auth(githubreq)
+
+ repositories = []
+
+ try:
+ result = json.loads(urllib.request.urlopen(githubreq).read().decode())
+ except urllib.error.URLError:
+ print("Failed to search GitHub")
+ sys.exit()
+ except ValueError:
+ print("Failed to parse return data from GitHub")
+ sys.exit()
+ for res in result.get('items', []):
+ repositories.append(res)
+
+ for repository in repositories:
+ repo_name = repository['name']
+
+ if not (repo_name.startswith("device_") and
+ repo_name.endswith("_" + device)):
+ continue
+ print("Found repository: %s" % repository['name'])
+
+ fallback_branch = detect_revision(repository)
+ manufacturer = repo_name[7:-(len(device)+1)]
+ repo_path = "device/%s/%s" % (manufacturer, device)
+ adding = [{'repository': "AICP/%s" % repo_name, 'target_path': repo_path}]
+
+ add_to_manifest(adding, fallback_branch)
+
+ print("Syncing repository to retrieve project.")
+ os.system('repo sync --force-sync --no-tags --current-branch --no-clone-bundle %s' % repo_path)
+ print("Repository synced!")
+
+ fetch_dependencies(repo_path, fallback_branch, True)
+ print("Done")
+ sys.exit()
+
+ print("Repository for %s not found in the %s Github repository list."
+ % (device, org_display))
+ print("If this is in error, you may need to manually add it to your "
+ "%s" % custom_local_manifest)
+
+if __name__ == "__main__":
+ main()