[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH 9/9] grep: libify *search.c
From: |
Paolo Bonzini |
Subject: |
[PATCH 9/9] grep: libify *search.c |
Date: |
Fri, 19 Mar 2010 12:36:52 +0100 |
* src/Makefile.am (libsearch_a_SOURCES): Add dfasearch.c, kwsearch.c,
pcresearch.c.
* src/esearch.c, src/fsearch.c, * src/gsearch.c: Only include search.h.
* src/dfasearch.c (GEAcompile, EGexecute): Export.
* src/kwsearch.c (Fcompile, Fexecute): Export.
* src/pcresearch.c (Pcompile, Pexecute): Export.
* src/search.h: Add new exported functions.
---
src/Makefile.am | 4 ++--
src/dfasearch.c | 5 ++---
src/esearch.c | 2 +-
src/fsearch.c | 2 +-
src/gsearch.c | 4 +---
src/kwsearch.c | 4 ++--
src/pcresearch.c | 4 ++--
src/search.h | 14 ++++++++++++++
8 files changed, 25 insertions(+), 14 deletions(-)
diff --git a/src/Makefile.am b/src/Makefile.am
index 7ebc126..6571529 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -25,7 +25,8 @@ fgrep_SOURCES = fgrep.c fsearch.c
noinst_HEADERS = grep.h dfa.h kwset.h search.h system.h mbsupport.h
noinst_LIBRARIES = libsearch.a
-libsearch_a_SOURCES = kwset.c dfa.c searchutils.c
+libsearch_a_SOURCES = kwset.c dfa.c searchutils.c dfasearch.c kwsearch.c \
+ pcresearch.c
LDADD = $(LIBINTL) libsearch.a ../lib/libgreputils.a
grep_LDADD = $(LDADD) $(PCRE_LIBS)
@@ -34,5 +35,4 @@ INCLUDES = -I$(top_srcdir)/lib -DLOCALEDIR=\"$(localedir)\"
EXTRA_DIST = \
dosbuf.c \
- pcresearch.c dfasearch.c kwsearch.c \
vms_fab.c vms_fab.h
diff --git a/src/dfasearch.c b/src/dfasearch.c
index 791a5ed..d6e0fea 100644
--- a/src/dfasearch.c
+++ b/src/dfasearch.c
@@ -110,8 +110,7 @@ kwsmusts (void)
}
}
-/* No __VA_ARGS__ in C89. So we have to do it this way. */
-static void
+void
GEAcompile (char const *pattern, size_t size, reg_syntax_t syntax_bits)
{
const char *err;
@@ -195,7 +194,7 @@ GEAcompile (char const *pattern, size_t size, reg_syntax_t
syntax_bits)
free(motif);
}
-static size_t
+size_t
EGexecute (char const *buf, size_t size, size_t *match_size, char const
*start_ptr)
{
char const *buflim, *beg, *end, *match, *best_match, *mb_start;
diff --git a/src/esearch.c b/src/esearch.c
index b1be2a7..734d31e 100644
--- a/src/esearch.c
+++ b/src/esearch.c
@@ -1,4 +1,4 @@
-#include "dfasearch.c"
+#include "search.h"
static void
Ecompile (char const *pattern, size_t size)
diff --git a/src/fsearch.c b/src/fsearch.c
index b16e769..1c03a6f 100644
--- a/src/fsearch.c
+++ b/src/fsearch.c
@@ -1,4 +1,4 @@
-#include "kwsearch.c"
+#include "search.h"
struct matcher const matchers[] = {
{ "fgrep", Fcompile, Fexecute },
diff --git a/src/gsearch.c b/src/gsearch.c
index 8eee952..9559fd8 100644
--- a/src/gsearch.c
+++ b/src/gsearch.c
@@ -1,6 +1,4 @@
-#include "dfasearch.c"
-#include "pcresearch.c"
-#include "kwsearch.c"
+#include "search.h"
static void
Gcompile (char const *pattern, size_t size)
diff --git a/src/kwsearch.c b/src/kwsearch.c
index 0e0f3bf..abe4923 100644
--- a/src/kwsearch.c
+++ b/src/kwsearch.c
@@ -29,7 +29,7 @@
any string matching the regexp. */
static kwset_t kwset;
-static void
+void
Fcompile (char const *pattern, size_t size)
{
char const *beg, *end, *lim, *err, *pat;
@@ -74,7 +74,7 @@ Fcompile (char const *pattern, size_t size)
error (EXIT_TROUBLE, 0, "%s", err);
}
-static size_t
+size_t
Fexecute (char const *buf, size_t size, size_t *match_size, char const
*start_ptr)
{
char const *beg, *try, *end, *mb_start;
diff --git a/src/pcresearch.c b/src/pcresearch.c
index c3411b7..3b208a7 100644
--- a/src/pcresearch.c
+++ b/src/pcresearch.c
@@ -32,7 +32,7 @@ static pcre *cre;
static pcre_extra *extra;
#endif
-static void
+void
Pcompile (char const *pattern, size_t size)
{
#if !HAVE_LIBPCRE
@@ -99,7 +99,7 @@ Pcompile (char const *pattern, size_t size)
#endif
}
-static size_t
+size_t
Pexecute (char const *buf, size_t size, size_t *match_size, char const
*start_ptr)
{
#if !HAVE_LIBPCRE
diff --git a/src/search.h b/src/search.h
index cb3b535..10e4d5c 100644
--- a/src/search.h
+++ b/src/search.h
@@ -37,6 +37,7 @@
#include "kwset.h"
#include "xalloc.h"
+/* searchutils.c */
void kwsinit (kwset_t *);
#ifdef MBS_SUPPORT
@@ -44,4 +45,17 @@ char * mbtolower (const char *, size_t *);
bool is_mb_middle(const char **, const char *, const char *);
#endif
+/* dfasearch.c */
+void GEAcompile (char const *, size_t, reg_syntax_t);
+size_t EGexecute (char const *, size_t, size_t *, char const *);
+
+/* kwsearch.c */
+void Fcompile (char const *, size_t);
+size_t Fexecute (char const *, size_t, size_t *, char const *);
+
+/* pcresearch.c */
+void Pcompile (char const *, size_t);
+size_t Pexecute (char const *, size_t, size_t *, char const *);
+
+
#endif /* GREP_SEARCH_H */
--
1.6.6.1
- [PATCH 4/9] grep: make egrep/fgrep use struct matcher, (continued)
- [PATCH 4/9] grep: make egrep/fgrep use struct matcher, Paolo Bonzini, 2010/03/19
- [PATCH 5/9] grep: eliminate {COMPILE,EXECUTE}_{RET,ARGS,FCT}, Paolo Bonzini, 2010/03/19
- [PATCH 6/9] grep: remove one #ifdef, Paolo Bonzini, 2010/03/19
- [PATCH 8/9] grep: prepare for libification of *search.c, Paolo Bonzini, 2010/03/19
- [PATCH 9/9] grep: libify *search.c,
Paolo Bonzini <=
- [PATCH 7/9] grep: split search.c, Paolo Bonzini, 2010/03/19
- Re: [PATCH 0/9] remove most {,E,F}GREP_PROGRAM occurrences, Jim Meyering, 2010/03/19
- Re: [PATCH 0/9] remove most {,E,F}GREP_PROGRAM occurrences, Jim Meyering, 2010/03/19
- Re: [PATCH 0/9] remove most {,E,F}GREP_PROGRAM occurrences, Jim Meyering, 2010/03/19
- Re: [PATCH 0/9] remove most {,E,F}GREP_PROGRAM occurrences, Jim Meyering, 2010/03/22