Re[2]: а проект nginx-ctpp похоже уже забросили ?
Ivan
bdfy на mail.ru
Чт Май 17 15:38:03 UTC 2012
вот спасибо. А скажите этот патч войдет в какой нибудь релиз nginx ?
Thu, 17 May 2012 12:15:19 +0400 от Валентин Бартенев <ne на vbart.ru>:
> On Thursday 17 May 2012 11:44:15 Ivan wrote:
> > тк багтрекер не работает поясню в чем заключ баг:
> >
> > gcc 4.4.6, ctpp2-2.7.5. nginx-1.2. Был наложен патч на nginx:
> >
> > --- auto/cc/gcc 2012-02-23 20:06:39.000000000 -0600
> > +++ auto/cc/gcc.fixed 2012-02-23 20:07:08.000000000 -0600
> > @@ -170,7 +170,7 @@
> >
> >
> > # stop on warning
> > -CFLAGS="$CFLAGS -Werror"
> > +# CFLAGS="$CFLAGS -Werror"
> >
> > ошибка при сборке nginx с параметрами:
> > ./configure --add-module=./../nginx-ctpp/
> > In file included from src/core/ngx_core.h:64,
> > from ./../nginx-ctpp//sources/ctpp2_process.h:12,
> > from ./../nginx-ctpp//sources/ctpp2_process.cpp:7:
> > src/core/ngx_regex.h:24: error: declaration of ‘pcre* <anonymous
> > struct>::pcre’ /usr/include/pcre.h:200: error: changes meaning of ‘pcre’
> > from ‘typedef struct real_pcre pcre’ make[1]: ***
> > [objs/addon/sources/ctpp2_process.o] Error 1
> > make[1]: Leaving directory `/home/isiyanko/rpmbuild/BUILDROOT/nginx-1.2.0'
> > make: *** [build] Error 2
> >
>
> Держите патч на nginx. С ним должно собираться без проблем. Патч нужен только
> для версий 1.1.12 и выше.
>
> Index: src/core/ngx_regex.h
> ===================================================================
> --- src/core/ngx_regex.h (revision 4638)
> +++ src/core/ngx_regex.h (working copy)
> @@ -21,7 +21,7 @@
>
>
> typedef struct {
> - pcre *pcre;
> + pcre *expression;
> pcre_extra *extra;
> } ngx_regex_t;
>
> @@ -50,8 +50,8 @@
> ngx_int_t ngx_regex_compile(ngx_regex_compile_t *rc);
>
> #define ngx_regex_exec(re, s, captures, size) \
> - pcre_exec(re->pcre, re->extra, (const char *) (s)->data, (s)->len, 0, 0, \
> - captures, size)
> + pcre_exec(re->expression, re->extra, (const char *) (s)->data, (s)->len, \
> + 0, 0, captures, size)
> #define ngx_regex_exec_n "pcre_exec()"
>
> ngx_int_t ngx_regex_exec_array(ngx_array_t *a, ngx_str_t *s, ngx_log_t *log);
> Index: src/core/ngx_regex.c
> ===================================================================
> --- src/core/ngx_regex.c (revision 4638)
> +++ src/core/ngx_regex.c (working copy)
> @@ -152,7 +152,7 @@
> return NGX_ERROR;
> }
>
> - rc->regex->pcre = re;
> + rc->regex->expression = re;
>
> /* do not study at runtime */
>
> @@ -367,8 +367,8 @@
> i = 0;
> }
>
> - elts[i].regex->extra = pcre_study(elts[i].regex->pcre, opt, &errstr);
> -
> + elts[i].regex->extra = pcre_study(elts[i].regex->expression, opt,
> + &errstr);
> if (errstr != NULL) {
> ngx_log_error(NGX_LOG_ALERT, cycle->log, 0,
> "pcre_study() failed: %s in \"%s\"",
> @@ -380,7 +380,7 @@
> int jit, n;
>
> jit = 0;
> - n = pcre_fullinfo(elts[i].regex->pcre, elts[i].regex->extra,
> + n = pcre_fullinfo(elts[i].regex->expression, elts[i].regex->extra,
> PCRE_INFO_JIT, &jit);
>
> if (n != 0 || jit != 1) {
>
> _______________________________________________
> nginx-ru mailing list
> nginx-ru на nginx.org
> http://mailman.nginx.org/mailman/listinfo/nginx-ru
Подробная информация о списке рассылки nginx-ru