Alan Ferrier wrote:
Hi guys,
Trying to do a "one-step" build. It's failing during the compile of
mod_nss-1.0.2 with:
nss_expr_eval.c: In function `nss_expr_eval_comp':
nss_expr_eval.c:116: error: `ap_regex_t' undeclared (first use in this
function)
nss_expr_eval.c:116: error: (Each undeclared identifier is reported only
once
nss_expr_eval.c:116: error: for each function it appears in.)
nss_expr_eval.c:116: error: `regex' undeclared (first use in this function)
nss_expr_eval.c:121: error: syntax error before ')' token
nss_expr_eval.c:133: error: syntax error before ')' token
make[2]: *** [nss_expr_eval.lo] Error 1
make[2]: Leaving directory
`/usr/local/src/dsbuild-fds102/ds/mod_nss/work/mod_nss-1.0.2'
make[1]: *** [build-work/mod_nss-1.0.2/Makefile] Error 2
make[1]: Leaving directory `/usr/local/src/dsbuild-fds102/ds/mod_nss'
make: *** [dep-../../ds/mod_nss] Error 2
Any clues would be appreciated.
The problem is that in Apache 2.0.54 (and below) there was no way for
the compiler to know the numeric version. Starting with 2.2 they added a
define for AP_SERVER_MAJORVERSION_NUMBER.
So what I did was assume that if that wasn't defined then we were
dealing with Apache 2.0 otherwise 2.2.
In at least 2.0.58 someone added this define in and caused the code to
blow up.
rob