diff --git a/tools/tagsgen/tagsgen_kernel b/tools/tagsgen/tagsgen_kernel deleted file mode 100755 index 377eab6..0000000 --- a/tools/tagsgen/tagsgen_kernel +++ /dev/null @@ -1,22 +0,0 @@ - -rm -f cscope.* -rm -f tags -# Put all sources into a file list. -find ./src -name '*.cc' > tagfilelist -find ./src -name '*.c' >> tagfilelist -find ./src -name '*.h' >> tagfilelist -find ./src -name '*.s' >> tagfilelist -find ./src -name '*.S' >> tagfilelist -find ./src -name '*.lds' >> tagfilelist - -find ./include -name '*.h' >> tagfilelist -find ./include -name '*.s' >> tagfilelist -find ./include -name '*.S' >> tagfilelist -find ./include -name '*.lds' >> tagfilelist - -# Use file list to include in tags. -ctags --languages=C,Asm --recurse -Ltagfilelist - -cscope -q -k -R -i tagfilelist -# Remove file list. -rm -f tagfilelist diff --git a/tools/tagsgen/tagsgen_kernel.py b/tools/tagsgen/tagsgen_kernel.py new file mode 100755 index 0000000..a129cae --- /dev/null +++ b/tools/tagsgen/tagsgen_kernel.py @@ -0,0 +1,54 @@ +#! /usr/bin/env python2.6 +# -*- mode: python; coding: utf-8; -*- + +import os, sys + +PROJRELROOT = '../../' +sys.path.append(os.path.abspath(os.path.join(os.path.dirname(__file__), PROJRELROOT))) + +from config.configuration import * +config = configuration_retrieve() + +platform = config.platform +subarch = config.subarch +arch = config.arch + +def main(): + os.system("rm -f cscope.*") + os.system("rm -f tags") + + # Type of files to be included + file_extn = ['*.cc', '*.c', '*.h', '*.s', '*.S', '*.lds'] + + # Kernel directories + src_dir_path = 'src' + include_dir_path = 'include/l4' + + search_folder = \ + ['api', 'arch/'+ arch, 'arch/'+ arch + '/' + subarch, 'drivers', \ + 'generic', 'glue/' + arch, 'lib', 'platform/' + platform] + + # Put all sources into a file list. + for extn in file_extn: + for dir in search_folder: + # Directory depth to be searched + if dir == 'drivers': + depth = 5 + else: + depth = 1 + + os.system("find " + join(src_dir_path, dir) + \ + " -maxdepth " + str(depth) + " -name '" + extn + "' >> tagfilelist") + os.system("find " + join(include_dir_path, dir) + \ + " -maxdepth " + str(depth) + " -name '" + extn + "' >> tagfilelist") + + # Use file list to include in tags. + os.system("ctags --languages=C,Asm --recurse -Ltagfilelist") + os.system("cscope -q -k -R -i tagfilelist") + + # Remove file list. + os.system("rm -f tagfilelist") + +if __name__ == "__main__": + main() +