Bug 178691

Summary: Wrong apr_off_t type makes mod_mono build fail on 32bit archs
Product: [Fedora] Fedora Reporter: Matthias Saou <matthias>
Component: aprAssignee: Joe Orton <jorton>
Status: CLOSED NOTABUG QA Contact:
Severity: medium Docs Contact:
Priority: medium    
Version: rawhide   
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2006-01-30 13:38:50 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Matthias Saou 2006-01-23 15:44:42 UTC
I've recompiled successfully mod_mono on FC development x86_64, but the very
same source package fails on i386 with :

[...]
configure:21429: gcc -c -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions
-fstack-protector --param=ssp-buffer-size=4 -m32 -march=i386 -mtune=pentium4
-fasynchronous-unwind-tables  -I/usr/include/apr-1  -I/usr/include/httpd 
conftest.c >&5
In file included from /usr/include/httpd/ap_config.h:25,
                 from /usr/include/httpd/httpd.h:43,
                 from conftest.c:51:
/usr/include/apr-1/apr.h:270: error: expected '=', ',', ';', 'asm' or
'__attribute__' before 'apr_off_t'
[...]

Which makes it fallback to apache 1.3 when trying to detect the apache
version (which is 2.0 obviously).

That line reads "typedef  off64_t           apr_off_t;" which apparently
32bit gcc doesn't like. Changing the type made the detection work, and the
build to succeed, but I'm not 100% sure the type I've set is correct.

Comment 1 Joe Orton 2006-01-30 13:38:50 UTC
mod_mono needs to use `apr-1-config --cppflags` etc in CPPFLAGS etc, or use
apxs, otherwise it won't pick up necessary flags like -D_LARGEFILE64_SOURCE.

Comment 2 Matthias Saou 2006-01-30 14:35:03 UTC
Indeed, that was the problem, as compilation works after changing that in
configure. Thanks a lot!