Найти определения функций в дереве исходных текстов ядра Linux рекурсивно - PullRequest
1 голос
/ 03 декабря 2011

Мне нужен способ получить определения функций из определенной подсистемы дерева исходных текстов ядра (скажем, mm). Моя первоначальная мысль заключалась в поиске регулярного выражения ") \ n {", которое по соглашению является отправной точкой функции ядра Linux.

К сожалению, я обнаружил, что символ новой строки используется в качестве разделителя в grep, поэтому его нельзя использовать в регулярном выражении.

Кто-нибудь получил обходной путь или другую полезную команду?

Спасибо!

Ответы [ 2 ]

0 голосов
/ 05 декабря 2011

Честно говоря, вы пытаетесь выполнить синтаксический анализ, а регулярное выражение - неправильный подход.Конечно, вы можете получить что-то, что работает в 99% случаев, но это может вас удивить странными и неожиданными способами.

Изучение использования парсера

0 голосов
/ 03 декабря 2011

Другой подход заключается в настройке компилятора GCC для поиска того, что вы хотите.

В частности, недавний GCC (то есть версия 4.6 ) может быть расширенс плагинами (закодированными в C) или с расширениями, закодированными в GCC MELT (MELT - это высокоуровневый предметно-ориентированный язык для расширения GCC).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...