opengrokfs implements a FUSE filesystem backed by the OpenGrok web interface. A cscope clone which uses the OpenGrok web interface as the backend is also included.
Install with pip:
pip3 install opengrokfs
Run opengrokfs with the URL of the OpenGrok start page and the local directory where the filesystem should be mounted:
mkdir -p mnt opengrokfs http://androidxref.com/7.1.1_r6/ mnt
Now you can access the files:
$ ls mnt/ Android.bp bootable bionic development external art bootstrap.bash dalvik device frameworks ...
Use oggrep to search using OpenGrok’s “Full Search”:
$ cd mnt/bionic/ mnt/bionic$ oggrep O_LARGEFILE libc/kernel/uapi/asm-arm/asm/fcntl.h:#define O_LARGEFILE 0400000 libc/kernel/uapi/asm-arm64/asm/fcntl.h:#define O_LARGEFILE 0400000 libc/bionic/lfs64_support.cpp:// are already 64-bit ready. In particular, we don't have non-O_LARGEFILE libc/bionic/open.cpp: return flags | O_LARGEFILE; libc/kernel/uapi/asm-mips/asm/fcntl.h:#define O_LARGEFILE 0x2000 libc/kernel/uapi/asm-generic/fcntl.h:#ifndef O_LARGEFILE libc/kernel/uapi/asm-generic/fcntl.h:#define O_LARGEFILE 00100000 tests/stdlib_test.cpp: ASSERT_EQ(O_LARGEFILE, fcntl(tf.fd, F_GETFL) & O_LARGEFILE);
ogcscope emulates cscope’s line-oriented interface but uses OpenGrok as the backend:
mnt/bionic$ ogcscope -dl
>> 1CLONE_CHILD_SETTID
cscope: 1 lines
libc/kernel/uapi/linux/sched.h <unknown> 41 #define CLONE_CHILD_SETTID 0x01000000
>> 0CLONE_CHILD_SETTID
cscope: 5 lines
libc/bionic/clone.cpp <unknown> 53 if ((flags & (CLONE_PARENT_SETTID|CLONE_SETTLS|CLONE_CHILD_SETTID|CLONE_CHILD_CLEARTID)) != 0) {
libc/bionic/clone.cpp <unknown> 56 if ((flags & (CLONE_SETTLS|CLONE_CHILD_SETTID|CLONE_CHILD_CLEARTID)) != 0) {
libc/bionic/clone.cpp <unknown> 59 if ((flags & (CLONE_CHILD_SETTID|CLONE_CHILD_CLEARTID)) != 0) {
libc/bionic/fork.cpp <unknown> 34 #define FORK_FLAGS (CLONE_CHILD_SETTID | CLONE_CHILD_CLEARTID | SIGCHLD)
libc/kernel/uapi/linux/sched.h <unknown> 41 #define CLONE_CHILD_SETTID 0x01000000
ogcscope can be used from within any editor which supports cscope. For example, for vim:
mnt/bionic$ vim -c 'set cscopeprg=ogcscope' -c 'cs add .opengrokfs'
Release files for opengrokfs 0.2.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| opengrokfs-0.2.1.tar.gz | 5.7 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| opengrokfs-0.2.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 15.1 kB
Release files / opengrokfs-0.2.1.tar.gz
| Download URL | opengrokfs-0.2.1.tar.gz |
|---|---|
| Size | 5.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
435edd9f41f9aa1d208be3b13fc6b7fc4007ac45dd06424435ecd3de9fd00d4a
|
|
BLAKE2b-256 checksum How to use checksums |
586b082832f64ff63e2ed6c7fec5b71ff257108575adc7a1fc73f89dc3d15f23
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
Release files / opengrokfs-0.2.1-py3-none-any.whl
| Download URL | opengrokfs-0.2.1-py3-none-any.whl |
|---|---|
| Size | 9.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
08acfd774cb9e14e46748909143c03d6157e6fcd0f4a6cb55a354dfed44d6c69
|
|
BLAKE2b-256 checksum How to use checksums |
25b48a5be4cd8744f4dc66b4d379281b25df2122e0606e321809d0a8f01d1e33
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |