← Back to team overview

maria-developers team mailing list archive

Re: 57673bc: MDEV-14024 PCRE2


Hi, Alexey!

On Apr 23, Alexey Botchkov wrote:
> >> diff --git a/sql/item_cmpfunc.h b/sql/item_cmpfunc.h
> >> index 3d11a22..d3f52ed 100644
> >...
> >>  #define PCRE_STATIC 1             /* Important on Windows */
> >> -#include "pcre.h"                 /* pcre header file */
> >> +#define PCRE2_CODE_UNIT_WIDTH 8
> >
> >you sure, you want it here and not, say, in one universally-included
> >headers like my_config.h? You don't define it in other places now, so
> >they include different function names and macros.
> Since it's the only place where we include the 'pcre2.h', it probably
> makes sence to keep all pcre2-related stuff in one place.

No, that was precisely my point - you included pcre2.h in many (more
than one) files, but defined PCRE2_CODE_UNIT_WIDTH only here.
Otherwise I wouldn't have asked :)

> Still i moved the #define to the my_config.h.

Right, thanks.

> >> +if(EXISTS "${MYSQL_SOURCE_DIR}/pcre2")
> >> +  set(MYSQL_REGEX_INCLUDE_DIR "${MYSQL_SOURCE_DIR}/pcre2/src")
> >
> >eh, is that enough?
> >there were a lot more changes in the server, than just correcting the
> >path.
> Do you mean there's more to be done? Not sure i understand right.

To make the server use pcre2 you had to change something in the
sources, like, API function names, types names, etc.

But for mroonga you've just changed the include path. I was surprised
that it was enough. Perhaps mroonga doesn't use pcre at all?
Otherwise how could've it compiled without you changing function names
and types?

Chief Architect MariaDB
and security@xxxxxxxxxxx