summaryrefslogtreecommitdiff
path: root/extract_utils.sh
AgeCommit message (Collapse)Author
2022-01-14extract_utils: Add support for extracting QTI common componentsHEADsugisawa-mr1sugisawaTheStrix
Change-Id: I4bc21d1c21f6e2b477360943ad063161b2e0cfad
2021-12-09extract_utils: Support A/B OTAsChirayu Desai
Change-Id: I52e66fa392f7a8fb5401db179b1242d5d216d137
2021-12-09extract_utils: Avoid requiring sudoChirayu Desai
* We can use the available debugfs function, which works without root Change-Id: Ic24f8a7441fe53af3dd18bafd5f6afce7411999c
2021-12-09regen-vendor: Support directly extracting from sparse imagesChirayu Desai
Change-Id: I1707b013fe661c45ede57960fa448eccfc4350d5
2021-12-09regen-vendor: Allow proprietary list generation for all partitionsMichael Bestas
Change-Id: I7fa77cc0406e47b2553ea20f8eb527fd3f7a0296
2021-12-09extract_utils: Support images as a sourceChirayu Desai
* Handles both sparse images as well as filesystem images * Uses debugfs to extract, no root needed! * Usecase: Factory images Change-Id: I3e1bc3834dea108e63ab707a1a89dc2d0743913e
2021-12-09extract_utils: Update debugfs error messageMichael Bestas
Change-Id: I3fb0a3a0c4f52de03009b68036a16cef01ead9c6
2021-12-09extract_utils: Handle prebuilt APEXChirayu Desai
Change-Id: I38314fc54d67c3f44374fa945d82954d4c1bd2bc
2021-12-09extract_utils: Automatically add apk/jar/vintf fragments to PRODUCT_PACKAGESMichael Bestas
Change-Id: I9d12e00c294d02b40fde2b66d7797f69f6504c35
2021-11-15Remove default skipped files from generate_prop_list_from_image()Michael Bestas
* This list hasn't been updated in a long time and doesn't contain all the default vendor modules. Simply drop it and regenerate the full list device side automatically with a script. Change-Id: I8cf99d1b726f390f9a3bc2903e69eb26da7ebea9
2021-11-15Use LC_ALL=C sorting in generate_prop_list_from_image()Michael Bestas
* Generate consistent output Change-Id: Ibab238d15a64fbad83fcfad19cb7c6f266d6ecb1
2021-09-27extract_utils: Seperate multiple override targets with commaArian
This follows the style google uses, for example in [1]. With this change it will generate 'overrides: ["TargetOne", "TargetTwo"],' instead of 'overrides: ["TargetOne TargetTwo"],' for this line: -system/app/TargetZero/TargetZero.apk;OVERRIDES=TargetOne,TargetTwo [1]: https://github.com/LineageOS/android_packages_apps_CellBroadcastReceiver/blob/2daf3ecf897c35725c8ae78f7fd6533773a8bf50/Android.bp#L53 Change-Id: I154ee3a4cc51e0938c860dcfc125eacf279d102e
2021-09-09extract_utils: Don't fixup pinned files when they are supposed to be keptArian
Change-Id: I6f38bf5928061b0f09eda04f85e00b11912d0227
2021-09-09extract_utils: Display the fixup hash when keeping pinned filesArian
Change-Id: I32e288b1b06f103179d894d0a68a2ce34df31913
2021-08-23fixup! extract_utils: Add support for overriding packagesLuK1337
This unifies arguments parsing + fixes case where OVERRIDES=pkg would generate .bp without `certificate: "platform"`. Change-Id: I0036e0e942ff9272da10f14aeb7235f0b6b92b00
2021-08-23extract_utils: Add support for overriding packagesTheStrix
* An example of how this can be used is say a device wants to use the original OEM camera, e.g. Essential PH-1. Klik is required in order to use the external camera module that you could buy for the device so it's preferred to use it over Camera2 or Snap. * An example of how to use this argument: -system/priv-app/Klik/Klik.apk;OVERRIDES=Camera2 Change-Id: I2504cbb760b20ed86c2dc088cc4bd74b78ba64d9
2021-08-23extract_utils: Skip colored echo when pipedBruno Martins
Change-Id: I8a03a36f3fa022e6858cc5c1dbca8b8037efed03
2021-08-23extract_utils: Add a bit of color to the outputBruno Martins
Change-Id: I2a779362121645d6d1cee7858a305425190eab56
2021-08-23extract_utils: Introduce colored echo helper functionBruno Martins
Change-Id: I25db42087232c646525f281cc0a1404fe60d1c8c
2021-07-14extract_utils: Add "check_elf_files: false" also for binariesSebastiano Barezzi
Change-Id: I93c1524fac13d8bcb0558277b7f0bc76706457c2
2021-02-23extract_utils: Implement versioned patchelf and patchelf 0.8Sebastiano Barezzi
* Result of patchelf v0.9: E dlopen failed: "/vendor/lib64/libvendor.goodix.hardware.fingerprint@1.0-service.so" loaded phdr 0x70d4cd6000 not in loadable segment * While searching up this issue, I found a LineageOS Gerrit change (Ibeb09b6ec37ef62b6a5abe40bae1e8bd8d92e7af) with the same error * Hamsi2k mentioned in the change that patchelf v0.8 is needed to fix the issue * Building patchelf v0.8 and trying to patch the blobs works * Implement versioned patchelf logic, allowing the script to both select the default patchelf and a specific patchelf version only for some files * Leave 0.9 as the default version to not change the default behaviour Change-Id: I6c0cbe76baf241233fdd125f5ed1eccbd5855124
2020-12-29Replace Apache 2.0 boilerplate/reference with SPDXMichael Bestas
Change-Id: I691c4893e500aa791868adb82573ef2357805faf
2020-12-28Remove copyright headers from automatically generated filesMichael Bestas
It doesn't make sense to place a copyright header in automatically generated makefiles, plus this is a grey area since we are extracting proprietary OEM files. Let's be safe and replace the Apache 2.0 header with a warning regarding manual modification of the makefiles. Change-Id: I7cafd3f0def33efff96af60280646c44c1ba9a53
2020-12-28Remove branding from script variablesMichael Bestas
No need to force branding down everyone's throat, most of the other android forks using these scripts are rebranding the variables anyway. Let's reduce fragmentation. Change-Id: Ie9c223d1a42728076f45b40a11cd0820010db8b1
2020-12-28Adapt for new tools locationMichael Bestas
Change-Id: I2eea1b75e5cc1c5afc0311a8818c54317f750d3f
2020-12-28Adapt for new script locationMichael Bestas
Change-Id: I8758d7b167b96bd04308bf3d3fcb059feb7fdcc2
2020-12-27fixup! extract_utils: implement patchelfSebastiano Barezzi
* 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
2020-12-15extract_utils: generate_prop_list: Ignore vdex/odex files tooAlessandro Astone
Change-Id: Ibe77e8b93466a71d4d0c48ca8f4ff2e00c6e40af (cherry picked from commit ee669788bc86330215f2444b3beb1f3870329c9e)
2020-11-26extract_utils: implement patchelfVolodymyr Zhdanov
Change-Id: I406f70ef1ce9ec7a0998f77439b7d3fa3ec4e62a
2020-10-06extract_utils: Set `filename_from_src: true` for `CLASS=ETC` targetsLuK1337
Change-Id: I881f6a67d84d8de0a4bef17bf3c9eac049679c38
2020-09-20extract_utils: Disable ELF check for shared librarydianlujitao
* 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
2020-09-17extract_utils: Fix system_ext framework blueprint generation.Alexander Koskovich
Change-Id: I20e44be6ea48b9bd5b05055d3cf465f63c908463
2020-09-09extract_utils: Add support for system_extLuca Stefani
Change-Id: I0760cdd9bec1a0a0551aa68a60c34f9c00932668
2020-05-25extract-utils: Fix usage for ETC files which need sub_dirAndreas Schneider
Thanks to Tad. Change-Id: I6a0e7978afce6444d0827f97d7686f23aa7500c9
2020-05-23extract_utils: Fix vendor Android.bp creation with subdirectoryAndreas Schneider
error: vendor/samsung/beyond0lte/Android.bp:37:9: unrecognized property "sub_dir" Change-Id: I23becda0345f41d2cb1462e74b66a787e9ad4c96
2020-04-25extract_utils: Handle Brotli compressed block imagedianlujitao
Change-Id: I1b3ef34ebba9b43fd684c6abaa1dbc77c8786da7
2020-04-25extract_utils: Support odm/product/vendor partition for zip extractdianlujitao
Change-Id: Iec06835f1703e276f8882c5ee327ef241a2f8f23
2020-04-06extract_utils: Generate deodexed apk/jar with consistent checksumdianlujitao
* 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
2020-04-06extract_utils: Fix doubled path separatordianlujitao
* $DST_FILE is already prefixed with "/", don't double it. Change-Id: I2655313abd7720a54b20f541a95960ae9ec373ad
2020-03-10extract_utils: Fix up b64d23778fd121b78703b3f16e17f9cc00aad3c1Han Wang
Change-Id: I9e5ea799812ca932de95ec6cbdedb604cbde5736
2020-03-10extract_utils: Fix bad substitution for zshXiNGRZ
Change-Id: I5f4fabc62b1ac3da159b36c3ae6080e145948530
2020-01-10extract_utils: Drop string after semicolon when parsing destinationdianlujitao
This fixes parsing when arguments contain colons, a typical usecase would be: -vendor/app/TimeService/TimeService.apk;:timeservice_app_cert Change-Id: I7500ae09632632ddc10734d9b1df267e28286b67
2019-10-27extract_utils: Added Suffix uses COMMON_SUFFIXMohd Faraz
* 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>
2019-10-27extract_files: Implement blueprint file generationRashed Abdel-Tawab
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
2019-10-27extract_files: Add initial blueprint creationRashed Abdel-Tawab
Start the copyrights for these at 2019 because the blueprints won't have existed before then. Change-Id: I5300109949785dd19555e35d17a1e80daef498b0
2019-10-27extract_files: Match non-treble path prefixesRashed Abdel-Tawab
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
2019-10-27extract_files: Support system/ prefixesRashed Abdel-Tawab
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
2019-09-29extract_utils: Fix typoPIPIPIG233666
* ./../../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
2019-09-29extract_utils: Source the prebuilts from the new repoBruno Martins
The prebuilt tools now live in prebuilts/tools-lineage. Change-Id: I4022210c52e1002aae0c6e622a480e5c7e10c366
2019-09-27extract_files: Add ODM partition blob supportRashed Abdel-Tawab
Change-Id: Id94bbef879b6f4bcc20645c259981f9d163649c9