Hi Stefan, Here we go, cannot test beyond libhttp warning aren't a big deal but showing them anyway with errors
VC9 does not seem to like #ifndef APR_HAVE_UNISTD_H it grays out the define for YY_NO_UNISTD_H so it tries to include it in the build. Evidently APR_HAVE_UNISTD_H is not available to util_expr_private.h? Using my original #ifdef WIN32 works. That done see the mess below. Regards, Gregg \server\mpm\winnt\service.c(861) : warning C4090: 'function' : different 'const' qualifiers \server\util_mutex.c(151) : error C2440: 'function' : cannot convert from 'apr_status_t (__stdcall *)(void *)' to 'apr_status_t (__cdecl *)(void *)' \server\util_mutex.c(151) : warning C4024: 'apr_pool_cleanup_register' : different types for formal and actual parameter 3 util_expr_parse.c util_expr_parse.c(114) : error C2059: syntax error : 'constant' util_expr_parse.c(327) : warning C4273: 'malloc' : inconsistent dll linkage C:\Program Files\Microsoft Visual Studio 9.0\VC\include\stdlib.h(601) : see previous definition of 'malloc' util_expr_parse.c(334) : warning C4273: 'free' : inconsistent dll linkage C:\Program Files\Microsoft Visual Studio 9.0\VC\include\stdlib.h(600) : see previous definition of 'free' util_expr_scan.c c:\buildprep\httpd-2.3.9\server\util_expr_parse.h(44) : error C2059: syntax error : 'constant' util_expr_scan.l(92) : error C2065: 'T_STR_BEGIN' : undeclared identifier util_expr_scan.l(101) : error C2065: 'T_STR_END' : undeclared identifier util_expr_scan.l(109) : error C2065: 'T_STRING' : undeclared identifier util_expr_scan.l(153) : error C2065: 'T_STRING' : undeclared identifier util_expr_scan.l(157) : error C2065: 'T_REGEX_BACKREF' : undeclared identifier util_expr_scan.l(175) : error C2065: 'T_STRING' : undeclared identifier util_expr_scan.l(179) : error C2065: 'T_VAR_BEGIN' : undeclared identifier util_expr_scan.l(193) : error C2065: 'T_VAR_BEGIN' : undeclared identifier util_expr_scan.l(198) : error C2065: 'T_REGEX_BACKREF' : undeclared identifier util_expr_scan.l(206) : error C2065: 'T_ID' : undeclared identifier util_expr_scan.l(211) : error C2065: 'T_VAR_END' : undeclared identifier util_expr_scan.l(232) : error C2065: 'T_STRING' : undeclared identifier util_expr_scan.l(236) : error C2065: 'T_VAR_END' : undeclared identifier util_expr_scan.l(265) : error C2065: 'T_REGEX_I' : undeclared identifier util_expr_scan.l(271) : error C2065: 'T_REGEX' : undeclared identifier util_expr_scan.l(276) : error C2065: 'T_REGEX' : undeclared identifier util_expr_scan.l(282) : error C2065: 'T_OP_STR_EQ' : undeclared identifier util_expr_scan.l(283) : error C2065: 'T_OP_STR_NE' : undeclared identifier util_expr_scan.l(284) : error C2065: 'T_OP_STR_LT' : undeclared identifier util_expr_scan.l(285) : error C2065: 'T_OP_STR_LE' : undeclared identifier util_expr_scan.l(286) : error C2065: 'T_OP_STR_GT' : undeclared identifier util_expr_scan.l(287) : error C2065: 'T_OP_STR_GE' : undeclared identifier util_expr_scan.l(288) : error C2065: 'T_OP_REG' : undeclared identifier util_expr_scan.l(289) : error C2065: 'T_OP_NRE' : undeclared identifier util_expr_scan.l(290) : error C2065: 'T_OP_AND' : undeclared identifier util_expr_scan.l(291) : error C2065: 'T_OP_AND' : undeclared identifier util_expr_scan.l(292) : error C2065: 'T_OP_OR' : undeclared identifier util_expr_scan.l(293) : error C2065: 'T_OP_OR' : undeclared identifier util_expr_scan.l(294) : error C2065: 'T_OP_NOT' : undeclared identifier util_expr_scan.l(295) : error C2065: 'T_OP_NOT' : undeclared identifier util_expr_scan.l(296) : error C2065: 'T_OP_CONCAT' : undeclared identifier util_expr_scan.l(297) : error C2065: 'T_OP_IN' : undeclared identifier util_expr_scan.l(298) : error C2065: 'T_OP_EQ' : undeclared identifier util_expr_scan.l(299) : error C2065: 'T_OP_NE' : undeclared identifier util_expr_scan.l(300) : error C2065: 'T_OP_GE' : undeclared identifier util_expr_scan.l(301) : error C2065: 'T_OP_LE' : undeclared identifier util_expr_scan.l(302) : error C2065: 'T_OP_GT' : undeclared identifier util_expr_scan.l(303) : error C2065: 'T_OP_LT' : undeclared identifier util_expr_scan.l(306) : error C2065: 'T_OP_LT' : undeclared identifier util_expr_scan.l(307) : error C2065: 'T_OP_LE' : undeclared identifier util_expr_scan.l(308) : error C2065: 'T_OP_GT' : undeclared identifier util_expr_scan.l(309) : error C2065: 'T_OP_GE' : undeclared identifier util_expr_scan.l(310) : error C2065: 'T_OP_NE' : undeclared identifier util_expr_scan.l(311) : error C2065: 'T_OP_EQ' : undeclared identifier util_expr_scan.l(312) : error C2065: 'T_OP_IN' : undeclared identifier util_expr_scan.l(316) : error C2065: 'T_OP_UNARY' : undeclared identifier util_expr_scan.l(321) : error C2065: 'T_OP_BINARY' : undeclared identifier util_expr_scan.l(335) : error C2065: 'T_DIGIT' : undeclared identifier util_expr_scan.l(343) : error C2065: 'T_ID' : undeclared identifier util_expr_scan.c(1718) : warning C4018: '<' : signed/unsigned mismatch util_expr_eval.c \server\util_expr_eval.c(43) : warning C4180: qualifier applied to function type has no meaning; ignored \server\util_expr_eval.c(96) : warning C4180: qualifier applied to function type has no meaning; ignored \server\util_expr_eval.c(109) : warning C4018: '<' : signed/unsigned mismatch \server\util_expr_eval.c(350) : error C2440: ':' : cannot convert from 'int (__stdcall *)(ap_expr_lookup_parms *)' to 'ap_expr_lookup_fn (__cdecl *)' \server\util_expr_eval.c(350) : error C2440: '=' : cannot convert from 'ap_expr_lookup_fn (__stdcall *)' to 'ap_expr_lookup_fn (__cdecl *)' \server\util_expr_eval.c(661) : warning C4180: qualifier applied to function type has no meaning; ignored \server\util_expr_eval.c(661) : warning C4090: 'initializing' : different 'const' qualifiers \server\util_expr_eval.c(673) : warning C4180: qualifier applied to function type has no meaning; ignored \server\util_expr_eval.c(673) : warning C4090: 'initializing' : different 'const' qualifiers \server\util_expr_eval.c(1276) : error C2440: 'function' : cannot convert from 'apr_status_t (__stdcall *)(void *)' to 'apr_status_t (__cdecl *)(void *)' \server\util_expr_eval.c(1276) : warning C4024: 'apr_pool_cleanup_register' : different types for formal and actual parameter 3 log.c \server\log.c(452) : error C2440: 'function' : cannot convert from 'apr_status_t (__stdcall *)(void *)' to 'apr_status_t (__cdecl *)(void *)' \server\log.c(452) : warning C4024: 'apr_pool_cleanup_register' : different types for formal and actual parameter 3 \server\log.c(1020) : warning C4018: '>' : signed/unsigned mismatch config.c \server\config.c(480) : error C2440: 'function' : cannot convert from 'apr_status_t (__stdcall *)(void *)' to 'apr_status_t (__cdecl *)(void *)' \server\config.c(480) : warning C4024: 'apr_pool_cleanup_register' : different types for formal and actual parameter 3 Original Message ----------------------- On Tuesday 23 November 2010, Gregg L. Smith wrote: > In util_expr_scan.c line 612 there is an #ifndef YY_NO_UNISTD_H > around a include to unistd.h, where would you suggest putting a > > #ifdef WIN32 > #define YY_NO_UNISTD_H > #endif > > util_expr_private.h? Yes, exactly. Maybe it should be #ifndef APR_HAVE_UNISTD_H #define YY_NO_UNISTD_H #endif though.