libbpf: Add cscope and tags targets to Makefile
authorToke Høiland-Jørgensen <toke@redhat.com>
Fri, 4 Oct 2019 15:34:44 +0000 (17:34 +0200)
committerAlexei Starovoitov <ast@kernel.org>
Sun, 6 Oct 2019 01:24:56 +0000 (18:24 -0700)
Using cscope and/or TAGS files for navigating the source code is useful.
Add simple targets to the Makefile to generate the index files for both
tools.

Signed-off-by: Toke Høiland-Jørgensen <toke@redhat.com>
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
Tested-by: Andrii Nakryiko <andriin@fb.com>
Acked-by: Andrii Nakryiko <andriin@fb.com>
Link: https://lore.kernel.org/bpf/20191004153444.1711278-1-toke@redhat.com
tools/lib/bpf/.gitignore
tools/lib/bpf/Makefile

index d9e9dec04605e619431c4929e409b261b651667a..12382b0c71c7afa9e3e1dc47991951c2089c83d0 100644 (file)
@@ -3,3 +3,6 @@ libbpf.pc
 FEATURE-DUMP.libbpf
 test_libbpf
 libbpf.so.*
+TAGS
+tags
+cscope.*
index c6f94cffe06e106549b835e9970b6aeeb577c9a8..10b77644a17cfd11f583ec3926a91c5b3e349eb4 100644 (file)
@@ -133,6 +133,8 @@ LIB_TARGET  := $(addprefix $(OUTPUT),$(LIB_TARGET))
 LIB_FILE       := $(addprefix $(OUTPUT),$(LIB_FILE))
 PC_FILE                := $(addprefix $(OUTPUT),$(PC_FILE))
 
+TAGS_PROG := $(if $(shell which etags 2>/dev/null),etags,ctags)
+
 GLOBAL_SYM_COUNT = $(shell readelf -s --wide $(BPF_IN) | \
                           cut -d "@" -f1 | sed 's/_v[0-9]_[0-9]_[0-9].*//' | \
                           awk '/GLOBAL/ && /DEFAULT/ && !/UND/ {print $$8}' | \
@@ -262,7 +264,7 @@ clean:
 
 
 
-PHONY += force elfdep bpfdep
+PHONY += force elfdep bpfdep cscope tags
 force:
 
 elfdep:
@@ -271,6 +273,14 @@ elfdep:
 bpfdep:
        @if [ "$(feature-bpf)" != "1" ]; then echo "BPF API too old"; exit 1 ; fi
 
+cscope:
+       ls *.c *.h > cscope.files
+       cscope -b -q -I $(srctree)/include -f cscope.out
+
+tags:
+       rm -f TAGS tags
+       ls *.c *.h | xargs $(TAGS_PROG) -a
+
 # Declare the contents of the .PHONY variable as phony.  We keep that
 # information in a variable so we can use it in if_changed and friends.
 .PHONY: $(PHONY)