Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 923e02ec authored by Joonsoo Kim's avatar Joonsoo Kim Committed by Michal Marek
Browse files

scripts/tags.sh: Support compiled source



We usually have interst in compiled files only,
because they are strongly related to individual's work.
Current tags.sh can't select compiled files, so support it.

We can use this functionality like below.
"make cscope O=. SRCARCH=xxxx COMPILED_SOURCE=compiled"

It must be executed after building the kernel.

Signed-off-by: default avatarJoonsoo Kim <js1304@gmail.com>
Signed-off-by: default avatarMichal Marek <mmarek@suse.cz>
parent 59658509
Loading
Loading
Loading
Loading
+31 −6
Original line number Diff line number Diff line
@@ -96,6 +96,32 @@ all_sources()
	find_other_sources '*.[chS]'
}

all_compiled_sources()
{
	for i in $(all_sources); do
		case "$i" in
			*.[cS])
				j=${i/\.[cS]/\.o}
				if [ -e $j ]; then
					echo $i
				fi
				;;
			*)
				echo $i
				;;
		esac
	done
}

all_target_sources()
{
	if [ -n "$COMPILED_SOURCE" ]; then
		all_compiled_sources
	else
		all_sources
	fi
}

all_kconfigs()
{
	for arch in $ALLSOURCE_ARCHS; do
@@ -111,18 +137,18 @@ all_defconfigs()

docscope()
{
	(echo \-k; echo \-q; all_sources) > cscope.files
	(echo \-k; echo \-q; all_target_sources) > cscope.files
	cscope -b -f cscope.out
}

dogtags()
{
	all_sources | gtags -i -f -
	all_target_sources | gtags -i -f -
}

exuberant()
{
	all_sources | xargs $1 -a                               \
	all_target_sources | xargs $1 -a                        \
	-I __initdata,__exitdata,__acquires,__releases          \
	-I __read_mostly,____cacheline_aligned                  \
	-I ____cacheline_aligned_in_smp                         \
@@ -174,7 +200,7 @@ exuberant()

emacs()
{
	all_sources | xargs $1 -a                               \
	all_target_sources | xargs $1 -a                        \
	--regex='/^(ENTRY|_GLOBAL)(\([^)]*\)).*/\2/'            \
	--regex='/^SYSCALL_DEFINE[0-9]?(\([^,)]*\).*/sys_\1/'   \
	--regex='/^TRACE_EVENT(\([^,)]*\).*/trace_\1/'		\
@@ -221,11 +247,10 @@ xtags()
	elif $1 --version 2>&1 | grep -iq emacs; then
		emacs $1
	else
		all_sources | xargs $1 -a
		all_target_sources | xargs $1 -a
        fi
}


# Support um (which uses SUBARCH)
if [ "${ARCH}" = "um" ]; then
	if [ "$SUBARCH" = "i386" ]; then