]> git.ipfire.org Git - thirdparty/man-pages.git/log
thirdparty/man-pages.git
7 days agobin/grepc: Simplify (remove grepc_type())
Alejandro Colomar [Thu, 2 Nov 2023 18:33:54 +0000 (19:33 +0100)] 
bin/grepc: Simplify (remove grepc_type())

Signed-off-by: Alejandro Colomar <alx@kernel.org>
7 days agobin/grepc: Simplify (remove grepc_type_typedef())
Alejandro Colomar [Thu, 2 Nov 2023 18:30:00 +0000 (19:30 +0100)] 
bin/grepc: Simplify (remove grepc_type_typedef())

Signed-off-by: Alejandro Colomar <alx@kernel.org>
7 days agobin/grepc: Simplify (remove grepc_macro())
Alejandro Colomar [Thu, 2 Nov 2023 18:21:22 +0000 (19:21 +0100)] 
bin/grepc: Simplify (remove grepc_macro())

Signed-off-by: Alejandro Colomar <alx@kernel.org>
7 days agobin/grepc: Compact one-liner definitions
Alejandro Colomar [Thu, 2 Nov 2023 18:15:33 +0000 (19:15 +0100)] 
bin/grepc: Compact one-liner definitions

Signed-off-by: Alejandro Colomar <alx@kernel.org>
7 days agobin/grepc: Simplify (remove grepc_glibc_func_def())
Alejandro Colomar [Thu, 2 Nov 2023 18:10:43 +0000 (19:10 +0100)] 
bin/grepc: Simplify (remove grepc_glibc_func_def())

Signed-off-by: Alejandro Colomar <alx@kernel.org>
7 days agobin/grepc: Improve error messages
Alejandro Colomar [Thu, 2 Nov 2023 17:52:04 +0000 (18:52 +0100)] 
bin/grepc: Improve error messages

Signed-off-by: Alejandro Colomar <alx@kernel.org>
7 days agobin/grepc: Transform some if's to simpler test&&
Alejandro Colomar [Thu, 2 Nov 2023 17:32:41 +0000 (18:32 +0100)] 
bin/grepc: Transform some if's to simpler test&&

Signed-off-by: Alejandro Colomar <alx@kernel.org>
7 days agobin/grepc: Simplify (remove grepc_use())
Alejandro Colomar [Thu, 2 Nov 2023 17:13:22 +0000 (18:13 +0100)] 
bin/grepc: Simplify (remove grepc_use())

Signed-off-by: Alejandro Colomar <alx@kernel.org>
7 days agobin/grepc: Simplify (remove grepc_glibc_func())
Alejandro Colomar [Thu, 2 Nov 2023 17:08:34 +0000 (18:08 +0100)] 
bin/grepc: Simplify (remove grepc_glibc_func())

Signed-off-by: Alejandro Colomar <alx@kernel.org>
7 days agobin/grepc: Simplify (remove grepc_linux_func())
Alejandro Colomar [Thu, 2 Nov 2023 17:05:45 +0000 (18:05 +0100)] 
bin/grepc: Simplify (remove grepc_linux_func())

Signed-off-by: Alejandro Colomar <alx@kernel.org>
7 days agobin/grepc: Simplify (remove grepc_func())
Alejandro Colomar [Thu, 2 Nov 2023 17:02:39 +0000 (18:02 +0100)] 
bin/grepc: Simplify (remove grepc_func())

Signed-off-by: Alejandro Colomar <alx@kernel.org>
7 days agobin/grepc: Simplify (remove grepc_search_default())
Alejandro Colomar [Thu, 2 Nov 2023 16:59:27 +0000 (17:59 +0100)] 
bin/grepc: Simplify (remove grepc_search_default())

Signed-off-by: Alejandro Colomar <alx@kernel.org>
7 days agoUse pcre2grep(1) instead of pcregrep(1)
Alejandro Colomar [Thu, 2 Nov 2023 15:02:08 +0000 (16:02 +0100)] 
Use pcre2grep(1) instead of pcregrep(1)

PCRE are EOL.  Long live PCRE2.

Signed-off-by: Alejandro Colomar <alx@kernel.org>
7 days agoUse recursion to improve matching of function parameter lists
Alejandro Colomar [Sun, 8 Jan 2023 14:26:09 +0000 (15:26 +0100)] 
Use recursion to improve matching of function parameter lists

Signed-off-by: Alejandro Colomar <alx@kernel.org>
7 days agoSupport parenthesized function names
Alejandro Colomar [Sat, 7 Jan 2023 23:10:39 +0000 (00:10 +0100)] 
Support parenthesized function names

This creates some false positives, but with appropriate flags, those can
be removed.

Signed-off-by: Alejandro Colomar <alx@kernel.org>
7 days agogrepc, grepc.1: -tg, -tgp, -tgd: Add more support for glibc internal names of libc...
Alejandro Colomar [Wed, 17 Aug 2022 08:11:15 +0000 (10:11 +0200)] 
grepc, grepc.1: -tg, -tgp, -tgd: Add more support for glibc internal names of libc functions

Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
7 days agogrepc: -tm: Fix finding macros defined as empty
Alejandro Colomar [Tue, 21 Jun 2022 11:19:48 +0000 (13:19 +0200)] 
grepc: -tm: Fix finding macros defined as empty

Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
7 days agogrepc, grepc.1: -c: Add flag to color uses
Alejandro Colomar [Wed, 25 May 2022 21:40:22 +0000 (23:40 +0200)] 
grepc, grepc.1: -c: Add flag to color uses

Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
7 days agogrepc: Remove constraints in the file prefiltering
Alejandro Colomar [Wed, 25 May 2022 21:08:42 +0000 (23:08 +0200)] 
grepc: Remove constraints in the file prefiltering

To make -tu work correctly, which doesn't have the word-boundary
constraint.

Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
7 days agogrepc: -tut: Fix regex for braces in the same line as 'struct'
Alejandro Colomar [Wed, 25 May 2022 21:03:12 +0000 (23:03 +0200)] 
grepc: -tut: Fix regex for braces in the same line as 'struct'

Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
7 days agogrepc: Read in the helper
Alejandro Colomar [Wed, 25 May 2022 21:00:26 +0000 (23:00 +0200)] 
grepc: Read  in the helper

Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
7 days agogrepc: Don't search underlying structure of a typedef
Alejandro Colomar [Wed, 25 May 2022 13:46:26 +0000 (15:46 +0200)] 
grepc: Don't search underlying structure of a typedef

In some cases it might be nice, but in some other cases, it might
cause a lot of code to be printed.  Let the user explicitly search
for it or not in a separate run.

Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
7 days agogrepc: Fix glitch with incorrectly indented code
Alejandro Colomar [Tue, 24 May 2022 22:05:20 +0000 (00:05 +0200)] 
grepc: Fix glitch with incorrectly indented code

Avoid this glich from glibc:

./sysdeps/unix/sysv/linux/x86/sys/ucontext.h:133:
typedef struct
  {
    gregset_t __ctx(gregs);
    /* Note that fpregs is a pointer.  */
    fpregset_t __ctx(fpregs);
    __extension__ unsigned long long __reserved1 [8];
} mcontext_t;

/* Userlevel context.  */
typedef struct ucontext_t
  {
    unsigned long int __ctx(uc_flags);
    struct ucontext_t *uc_link;
    stack_t uc_stack;
    mcontext_t uc_mcontext;
    sigset_t uc_sigmask;
    struct _libc_fpstate __fpregs_mem;
    __extension__ unsigned long long int __ssp[4];
  } ucontext_t;

Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
7 days agogrepc: Fix some typedef corner cases
Alejandro Colomar [Tue, 24 May 2022 21:50:09 +0000 (23:50 +0200)] 
grepc: Fix some typedef corner cases

- Typedefs to arrays of structures.
- Typedefs to structures of the same name.

Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
7 days agogrepc: Improve regexes
Alejandro Colomar [Tue, 24 May 2022 20:56:00 +0000 (22:56 +0200)] 
grepc: Improve regexes

- Use the same ammount of spaces for the closing brace as for the
  opening brace.
- Fix position of attributes.

Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
7 days agogrepc: bugfix
Alejandro Colomar [Sat, 21 May 2022 23:27:14 +0000 (01:27 +0200)] 
grepc: bugfix

SC2068: Double quote array expansions to avoid re-splitting elements.

Reported-by: shellcheck(1)
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
7 days agogrepc: srcfix
Alejandro Colomar [Sat, 21 May 2022 23:25:46 +0000 (01:25 +0200)] 
grepc: srcfix

SC2124: Use $* instead of $@ to concatenate.

Reported-by: shellcheck(1)
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
7 days agogrepc: srcfix
Alejandro Colomar [Sat, 21 May 2022 23:21:22 +0000 (01:21 +0200)] 
grepc: srcfix

SC2004: $/${} is unnecessary on arithmetic variables.

Reported-by: shellcheck(1)
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
7 days agogrepc, grepc.1: Add -i flag as in grep(1)
Alejandro Colomar [Sat, 21 May 2022 22:51:30 +0000 (00:51 +0200)] 
grepc, grepc.1: Add -i flag as in grep(1)

Also, add some symmetry between ${iflag} and ${lflag}.

Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
7 days agogrepc, grepc.1: Remove -tu from the defaults
Alejandro Colomar [Sat, 21 May 2022 22:29:44 +0000 (00:29 +0200)] 
grepc, grepc.1: Remove -tu from the defaults

Normally, one either wants to see a declaration/definition, or its
uses, but not both at the same time.  Also, there are usually many
more use sites than than definitions, and therefore definitions
are shadowed between all the noise.  Restrict the default to
declarations and definitions, which in my experience seems to be
the most common use case.

Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
7 days agogrepc, grepc.1: -tu: Allow searching special characters
Alejandro Colomar [Fri, 20 May 2022 02:00:04 +0000 (04:00 +0200)] 
grepc, grepc.1: -tu: Allow searching special characters

Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
7 days agogrepc: Fix grepc_type_typedef_underlying_struct_union_enum
Alejandro Colomar [Fri, 20 May 2022 01:47:38 +0000 (03:47 +0200)] 
grepc: Fix grepc_type_typedef_underlying_struct_union_enum

When it calls grepc_type_struct_union_enum(), it needs to use a
different file list, since it's searching for an identifier
different from the one passed in the command line.

Also, while at it, improve the quoting of the pattern passed to
pcregrep(1).

Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
7 days agogrepc: -tt: Find typedefs to function pointers
Alejandro Colomar [Tue, 17 May 2022 08:59:52 +0000 (10:59 +0200)] 
grepc: -tt: Find typedefs to function pointers

Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
7 days agogrepc: tfix
Alejandro Colomar [Mon, 16 May 2022 22:38:10 +0000 (00:38 +0200)] 
grepc: tfix

Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
7 days agogrepc: srcfix
Alejandro Colomar [Mon, 16 May 2022 14:18:31 +0000 (16:18 +0200)] 
grepc: srcfix

Sort alphabetically the optstring.

Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
7 days agogrepc: Allow a pattern to start with '-'
Alejandro Colomar [Sat, 14 May 2022 23:53:26 +0000 (01:53 +0200)] 
grepc: Allow a pattern to start with '-'

Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
7 days agogrepc, grepc.1: -t...: Allow more granularity
Alejandro Colomar [Sat, 14 May 2022 23:40:56 +0000 (01:40 +0200)] 
grepc, grepc.1: -t...: Allow more granularity

Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
7 days agogrepc.1: wfix
Alejandro Colomar [Sat, 14 May 2022 23:28:28 +0000 (01:28 +0200)] 
grepc.1: wfix

7 days agogrepc, grepc.1: wfix
Alejandro Colomar [Sat, 14 May 2022 23:24:46 +0000 (01:24 +0200)] 
grepc, grepc.1: wfix

Rename functions to have different starting letters.  Also rename
the macro functions to more closely match ISO C nomenclature.

Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
7 days agogrepc, grepc.1: -tu: Search also within enum and type definitions
Alejandro Colomar [Sat, 14 May 2022 23:20:39 +0000 (01:20 +0200)] 
grepc, grepc.1: -tu: Search also within enum and type definitions

Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
7 days agogrepc: grepc_enum_constant: Fix edge cases
Alejandro Colomar [Sat, 14 May 2022 22:52:03 +0000 (00:52 +0200)] 
grepc: grepc_enum_constant: Fix edge cases

Most importantly, typedef enum.

Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
7 days agogrepc, grepc.1: Add -l flag as in grep(1)
Alejandro Colomar [Sat, 14 May 2022 16:22:47 +0000 (18:22 +0200)] 
grepc, grepc.1: Add -l flag as in grep(1)

Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
7 days agogrepc: grepc_use_macro: tfix
Alejandro Colomar [Fri, 13 May 2022 15:33:58 +0000 (17:33 +0200)] 
grepc: grepc_use_macro: tfix

Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
7 days agogrepc.1: ffix
Alejandro Colomar [Fri, 13 May 2022 15:20:03 +0000 (17:20 +0200)] 
grepc.1: ffix

Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
7 days agogrepc, grepc.1: Add -tu to search for uses
Alejandro Colomar [Fri, 13 May 2022 15:17:45 +0000 (17:17 +0200)] 
grepc, grepc.1: Add -tu to search for uses

Reported-by: наб <nabijaczleweli@nabijaczleweli.xyz>
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
7 days agogrepc: grepc_macro_*: Remove a few false positives
Alejandro Colomar [Fri, 13 May 2022 15:12:47 +0000 (17:12 +0200)] 
grepc: grepc_macro_*: Remove a few false positives

Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
7 days agogrepc: srcfix
Alejandro Colomar [Fri, 13 May 2022 15:12:06 +0000 (17:12 +0200)] 
grepc: srcfix

Use alphabetic order.

Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
7 days agogrepc, grepc.1: Add -k option for a more compact output
Alejandro Colomar [Thu, 12 May 2022 13:15:28 +0000 (15:15 +0200)] 
grepc, grepc.1: Add -k option for a more compact output

Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
7 days agogrepc, grepc.1: Add -t option to restrict the search to a type of code.
Alejandro Colomar [Thu, 12 May 2022 12:10:53 +0000 (14:10 +0200)] 
grepc, grepc.1: Add -t option to restrict the search to a type of code.

Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
7 days agogrepc: srcfix
Alejandro Colomar [Thu, 12 May 2022 11:47:38 +0000 (13:47 +0200)] 
grepc: srcfix

Improve grouping so that adding flags for running the different
functions is simple.

Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
7 days agogrepc, grepc.1: Don't print leading blank lines.
Alejandro Colomar [Wed, 11 May 2022 19:36:45 +0000 (21:36 +0200)] 
grepc, grepc.1: Don't print leading blank lines.

Also, update the manual page EXAMPLES regarding blank lines.

Reported-by: наб <nabijaczleweli@nabijaczleweli.xyz>
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
7 days agogrepc.1: SYNOPSIS: ffix
Alejandro Colomar [Wed, 11 May 2022 19:24:11 +0000 (21:24 +0200)] 
grepc.1: SYNOPSIS: ffix

Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
7 days agogrepc, grepc.1: Add optional FILE trailing arguments
Alejandro Colomar [Wed, 11 May 2022 18:46:01 +0000 (20:46 +0200)] 
grepc, grepc.1: Add optional FILE trailing arguments

Reported-by: наб <nabijaczleweli@nabijaczleweli.xyz>
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
7 days agogrepc, grepc.1: -g: Add option to restrict search to files tracked by git
Alejandro Colomar [Wed, 11 May 2022 17:51:46 +0000 (19:51 +0200)] 
grepc, grepc.1: -g: Add option to restrict search to files tracked by git

Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
7 days agogrepc, grepc.1: -x: Add option to edit file extension
Alejandro Colomar [Wed, 11 May 2022 17:51:46 +0000 (19:51 +0200)] 
grepc, grepc.1: -x: Add option to edit file extension

Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
7 days agogrepc, grepc.1: -h: Add option to print the usage message.
Alejandro Colomar [Wed, 11 May 2022 17:51:46 +0000 (19:51 +0200)] 
grepc, grepc.1: -h: Add option to print the usage message.

Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
7 days agogrepc: Usage: ffix
Alejandro Colomar [Wed, 11 May 2022 16:53:30 +0000 (18:53 +0200)] 
grepc: Usage: ffix

Using caps instead of <> will be nicer when we add options and
optional arguments for the files/directories:

  Usage: grepc [OPTION]... IDENTIFIER [FILE]...

vs

  Usage: grepc [<option>]... IDENTIFIER [<file>]...

Also, it's what pcregrep(1) and GNU grep(1) use, so it's good to
use the same syntax here.

Reported-by: наб <nabijaczleweli@nabijaczleweli.xyz>
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
7 days agogrepc.1: wfix
Alejandro Colomar [Tue, 10 May 2022 21:34:58 +0000 (23:34 +0200)] 
grepc.1: wfix

Reported-by: наб <nabijaczleweli@nabijaczleweli.xyz>
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
7 days agogrepc: Simplify escaping \
Alejandro Colomar [Tue, 10 May 2022 17:35:15 +0000 (19:35 +0200)] 
grepc: Simplify escaping \

Reported-by: наб <nabijaczleweli@nabijaczleweli.xyz>
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
7 days agogrepc: Use -r option to read(1)
Alejandro Colomar [Tue, 10 May 2022 17:33:15 +0000 (19:33 +0200)] 
grepc: Use -r option to read(1)

Let's fall on the safe side.

Reported-by: наб <nabijaczleweli@nabijaczleweli.xyz>
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
7 days agogrepc: Make it portable to sh(1)
Alejandro Colomar [Tue, 10 May 2022 17:24:26 +0000 (19:24 +0200)] 
grepc: Make it portable to sh(1)

Reported-by: наб <nabijaczleweli@nabijaczleweli.xyz>
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
7 days agogrepc: Use a portable shebang
Alejandro Colomar [Tue, 10 May 2022 17:17:51 +0000 (19:17 +0200)] 
grepc: Use a portable shebang

Reported-by: наб <nabijaczleweli@nabijaczleweli.xyz>
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
7 days agogrepc: Remove spurious blank lines
Alejandro Colomar [Tue, 10 May 2022 17:09:40 +0000 (19:09 +0200)] 
grepc: Remove spurious blank lines

Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
7 days agogrepc: Remove blank line between header and code
Alejandro Colomar [Tue, 10 May 2022 16:48:01 +0000 (18:48 +0200)] 
grepc: Remove blank line between header and code

Reported-by: наб <nabijaczleweli@nabijaczleweli.xyz>
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
7 days agogrepc: grepc_linux_syscall_def: Improve readability of regex
Alejandro Colomar [Tue, 10 May 2022 16:46:46 +0000 (18:46 +0200)] 
grepc: grepc_linux_syscall_def: Improve readability of regex

This improves the readability of the regex, and also the
robustness, at the cost of just a few ms.

Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
7 days agogrepc: grepc_find_files: Get a reduced list of files once
Alejandro Colomar [Tue, 10 May 2022 16:44:58 +0000 (18:44 +0200)] 
grepc: grepc_find_files: Get a reduced list of files once

Instead of running find and grep -l for every function, store the
result in a temporary file for reuse in all functions.

This is a considerable speedup, between 3x and 10x in some tests
within the Linux kernel source code.

Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
7 days agogrepc: Fix some corner cases
Alejandro Colomar [Mon, 9 May 2022 22:59:06 +0000 (00:59 +0200)] 
grepc: Fix some corner cases

Those two spaces are for handling some insane GNU style.  Those
are always spaces, so let's use '  ' instead of '\s\s' to make
sure we don't match two tabs, or things like that.

Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
7 days agogrepc.1: ffix
Alejandro Colomar [Mon, 9 May 2022 20:18:08 +0000 (22:18 +0200)] 
grepc.1: ffix

Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
7 days agogrepc.1: Add break points in URI
Alejandro Colomar [Mon, 9 May 2022 16:08:41 +0000 (18:08 +0200)] 
grepc.1: Add break points in URI

Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
7 days agogrepc.1: EXAMPLES: Add example with nxt_sprintf
Alejandro Colomar [Mon, 9 May 2022 15:45:44 +0000 (17:45 +0200)] 
grepc.1: EXAMPLES: Add example with nxt_sprintf

Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
7 days agogrepc.1: Add manual page
Alejandro Colomar [Mon, 9 May 2022 15:19:07 +0000 (17:19 +0200)] 
grepc.1: Add manual page

Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
7 days agogrepc: Use '' when possible
Alejandro Colomar [Mon, 9 May 2022 14:54:09 +0000 (16:54 +0200)] 
grepc: Use '' when possible

Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
7 days agogrepc: Fix some corner cases
Alejandro Colomar [Mon, 9 May 2022 14:04:54 +0000 (16:04 +0200)] 
grepc: Fix some corner cases

Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
7 days agogrepc: grepc_type_*: Fix some typedef corner cases
Alejandro Colomar [Mon, 9 May 2022 13:21:06 +0000 (15:21 +0200)] 
grepc: grepc_type_*: Fix some typedef corner cases

Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
7 days agogrepc: grepc_macro_simple: Fix regex for empty macro
Alejandro Colomar [Mon, 9 May 2022 12:58:37 +0000 (14:58 +0200)] 
grepc: grepc_macro_simple: Fix regex for empty macro

Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
7 days agogrepc: Optimize
Alejandro Colomar [Mon, 9 May 2022 12:35:57 +0000 (14:35 +0200)] 
grepc: Optimize

Use 2 grep(1) filters instead of 1, to be able to filter better
before the multiline pcregrep(1) filter, which is considerably
slower.

Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
7 days agogrepc: grepc_enum_constant, grepc_type_typedef_simple: Remove a few false positives
Alejandro Colomar [Mon, 9 May 2022 11:51:52 +0000 (13:51 +0200)] 
grepc: grepc_enum_constant, grepc_type_typedef_simple: Remove a few false positives

Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
7 days agogrepc: grepc_linux*, grepc_syscall*: Rename functions to clearly refer to linux
Alejandro Colomar [Mon, 9 May 2022 11:43:30 +0000 (13:43 +0200)] 
grepc: grepc_linux*, grepc_syscall*: Rename functions to clearly refer to linux

Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
7 days agogrepc: grepc_type_struct_union_enum: Don't duplicate output
Alejandro Colomar [Mon, 9 May 2022 11:38:43 +0000 (13:38 +0200)] 
grepc: grepc_type_struct_union_enum: Don't duplicate output

In definitions of the form

typedef struct foo {...} foo;

grepc_type_typedef_struct_union_enum() is already finding it.
Remove the duplicate here.

Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
7 days agogrepc: grepc_glibc_math: Support glibc math functions
Alejandro Colomar [Mon, 9 May 2022 11:20:54 +0000 (13:20 +0200)] 
grepc: grepc_glibc_math: Support glibc math functions

Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
7 days agogrepc: grepc_helper: Add helper function to remove repeated code
Alejandro Colomar [Sun, 8 May 2022 22:59:27 +0000 (00:59 +0200)] 
grepc: grepc_helper: Add helper function to remove repeated code

Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
7 days agogrepc: grepc_func_decl: Optimize
Alejandro Colomar [Sun, 8 May 2022 22:46:56 +0000 (00:46 +0200)] 
grepc: grepc_func_decl: Optimize

Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
7 days agogrepc: grepc_enum_constant: Fix pattern
Alejandro Colomar [Sun, 8 May 2022 22:46:43 +0000 (00:46 +0200)] 
grepc: grepc_enum_constant: Fix pattern

Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
7 days agogrepc: grepc_type_struct_union_enum: Optimize
Alejandro Colomar [Sun, 8 May 2022 22:44:11 +0000 (00:44 +0200)] 
grepc: grepc_type_struct_union_enum: Optimize

Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
7 days agogrepc: grepc_type_struct_union_enum: Allow attributes before struct|union|enum keyword
Alejandro Colomar [Sun, 8 May 2022 22:42:38 +0000 (00:42 +0200)] 
grepc: grepc_type_struct_union_enum: Allow attributes before struct|union|enum keyword

Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
7 days agogrepc: grepc_type_typedef_underlying_struct_union_enum: Don't duplicate output
Alejandro Colomar [Sun, 8 May 2022 22:37:18 +0000 (00:37 +0200)] 
grepc: grepc_type_typedef_underlying_struct_union_enum: Don't duplicate output

In typedefs of the form 'typedef struct foo foo;', don't print the
structure twice.

Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
7 days agogrepc: Allow tabs
Alejandro Colomar [Sun, 8 May 2022 22:10:49 +0000 (00:10 +0200)] 
grepc: Allow tabs

Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
7 days agogrepc: grepc_type*: Simplify finding typedefs
Alejandro Colomar [Sun, 8 May 2022 22:09:03 +0000 (00:09 +0200)] 
grepc: grepc_type*: Simplify finding typedefs

Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
7 days agogrepc: Consistently use Perl regex
Alejandro Colomar [Sun, 8 May 2022 21:52:23 +0000 (23:52 +0200)] 
grepc: Consistently use Perl regex

If we use different regex types within the program, then users
can't use regex patterns in the identifier due to
incompatibilities.  Let's use Perl regex everywhere we can, so
that users can consistently use Perl regex patterns in the
identifier.  Example:

$ grepc (vf|as)printf;

Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
7 days agogrepc: grepc_enum_constant: Find enumeration constant definitions
Alejandro Colomar [Sun, 8 May 2022 20:04:55 +0000 (22:04 +0200)] 
grepc: grepc_enum_constant: Find enumeration constant definitions

Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
7 days agogrepc: grepc_syscall_decl: Optimize
Alejandro Colomar [Sun, 8 May 2022 11:35:19 +0000 (13:35 +0200)] 
grepc: grepc_syscall_decl: Optimize

Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
7 days agogrepc: grep_macro_*: Allow tabs
Alejandro Colomar [Sun, 8 May 2022 11:33:16 +0000 (13:33 +0200)] 
grepc: grep_macro_*: Allow tabs

Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
7 days agogrepc: grepc_func_def: Find kernel function definitions
Alejandro Colomar [Sun, 8 May 2022 11:15:41 +0000 (13:15 +0200)] 
grepc: grepc_func_def: Find kernel function definitions

Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
7 days agogrepc: grepc_syscall: Find kernel syscalls (both declaration and definition)
Alejandro Colomar [Fri, 6 May 2022 14:56:43 +0000 (16:56 +0200)] 
grepc: grepc_syscall: Find kernel syscalls (both declaration and definition)

Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
7 days agogrepc: grepc_func_def: Increase robustness of regex
Alejandro Colomar [Fri, 6 May 2022 21:16:42 +0000 (23:16 +0200)] 
grepc: grepc_func_def: Increase robustness of regex

Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
7 days agogrepc: grepc_type_struct_union_enum: Increase robustness of regex
Alejandro Colomar [Fri, 6 May 2022 08:31:52 +0000 (10:31 +0200)] 
grepc: grepc_type_struct_union_enum: Increase robustness of regex

Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
7 days agogrepc: grepc_type_typedef_underlying_struct_union_enum: Fix corner cases
Alejandro Colomar [Fri, 6 May 2022 00:12:13 +0000 (02:12 +0200)] 
grepc: grepc_type_typedef_underlying_struct_union_enum: Fix corner cases

Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
7 days agogrepc: Fix parsing of arguments
Alejandro Colomar [Fri, 6 May 2022 00:10:21 +0000 (02:10 +0200)] 
grepc: Fix parsing of arguments

Allow one single argument only.

Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
7 days agogrepc: grepc_type_struct_union_enum: Support glibc
Alejandro Colomar [Thu, 5 May 2022 23:38:50 +0000 (01:38 +0200)] 
grepc: grepc_type_struct_union_enum: Support glibc

Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
7 days agogrepc: grep_func_decl: Support glibc
Alejandro Colomar [Thu, 5 May 2022 23:32:57 +0000 (01:32 +0200)] 
grepc: grep_func_decl: Support glibc

Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>