Avoid Device-specific Android Source Code Fetching
Solution 1:
As someone else already has suggested, the local manifest can be used to patch the original manifest. However, manifests can also put projects into groups and you can use the -g
option to repo init
to choose which groups of projects you want to download.
I think all the device gits that you don't care about have been placed in the "device" group, so excluding that group by prefixing it with a hyphen should accomplish what you want. The default set of groups is "default,platform-platform", e.g. "default,platform-linux" or "default,platform-darwin", although the platform-* entry doesn't appear to match how the AOSP projects have been tagged. Anyway, this should get rid of the unwanted projects:
repo init -u ... -g default,-device
You can poke around the manifest (.repo/manifest.xml
) to find additional groups that you're not interested in.
Solution 2:
The aosp way of doing things is probably to use the repo tool to exclude or include specific packages. The best way of doing this is probably by adding your own local manifest that removes the packages you don't want. For instance, here is an example file:
<manifest><remotename="origin"fetch="ssh://git@github.com/MyRepository/" /><remove-projectname="device/lge/hammerhead"/><remove-projectname="device/lge/mako"/></manifest>
Throw this into a removal_manifest.xml (you can name it what ever you want) and put it into .repo/local_manifests in your repository.
Cyanogen has documented the local_manifests for all of us so you can refer back to their work here: Using Local Manifests
Post a Comment for "Avoid Device-specific Android Source Code Fetching"