Xref — Aosp
For developers, finding the definition of a specific function—say, AudioFlinger::openOutput() —by manually grepping through a local repo can take minutes. For reviewers trying to understand a patch's impact across subsystems, it’s a nightmare.
java -Xmx32g -jar /opt/opengrok/lib/opengrok.jar \ -c /usr/bin/ctags \ -s /var/opengrok/src \ -d /var/opengrok/data \ -H -P -S -G \ -W /var/opengrok/etc/configuration.xml xref aosp
# On Ubuntu/Debian sudo apt install opengrok universal-ctags OpenGrok needs a configuration.xml . Generate it via: For developers, finding the definition of a specific
// In Android.bp cc_library name: "libaudioclient", shared_libs: ["libutils", "libcutils"] "libcutils"] mkdir -p /var/opengrok/data
mkdir -p /var/opengrok/data,etc,logs,src # Link your AOSP source (avoid copying 100GB) ln -s /path/to/aosp /var/opengrok/src/aosp This step parses every symbol. For AOSP, this takes 1–2 hours and requires 32GB+ of RAM.
