Bug 92123 - Header problems cause various autoconfs not work
Summary: Header problems cause various autoconfs not work
Keywords:
Status: CLOSED NOTABUG
Alias: None
Product: Red Hat Linux
Classification: Retired
Component: httpd
Version: 9
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Joe Orton
QA Contact: Brian Brock
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2003-06-02 22:30 UTC by Stephen John Smoogen
Modified: 2007-04-18 16:54 UTC (History)
0 users

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2003-06-03 07:58:08 UTC
Embargoed:


Attachments (Terms of Use)

Description Stephen John Smoogen 2003-06-02 22:30:34 UTC
Description of problem:

There is a problem in the file /usr/include/httpd/apr_uri.h in Red Hat Linux 8/9
 that causes a simple autoconf test for httpd/httpd.h not to work. The problem
is that the header file contains the line

#include <apr_network_io.h>

which causes autoconf to die when testing for httpd.h There seem to be two fixes.. 

one change it to read like all other header files.

#include "apr_network_io.h"

or put link /usr/include/httpd -> /etc/httpd/include

The second one is probably due to some hack in our configure.ac files.



Version-Release number of selected component (if applicable):
[smoogen@smoogen1 lama-2.0]$ rpm -qa | grep httpd | sort
httpd-2.0.40-21.3
httpd-devel-2.0.40-21.3
httpd-manual-2.0.40-21.3
redhat-config-httpd-1.0.1-18


How reproducible:

100%

# Process this file with autoconf to produce a configure script.
AC_INIT(mod_xxx, 1.0, darkside)
AC_CONFIG_SRCDIR(./mod_xxx.c)
AM_INIT_AUTOMAKE
AM_CONFIG_HEADER(config.h)
PACKAGE=mod_xxx
VERSION=9.0
# Checks for header files.
AC_HEADER_STDC
AC_CHECK_HEADERS([arpa/inet.h fcntl.h netdb.h netinet/in.h stdlib.h string.h
sys/socket.h sys/time.h syslog.h unistd.h lber.h ldap.h httpd/httpd.h])

Comment 1 Joe Orton 2003-06-03 07:58:08 UTC
The supported interface for building modules is using:

  apxs -c mod_foo.c

this will ensure that -I/usr/include/httpd and whatever else is used, as
necessary.  If you don't want to use apxs -c, you should add:

  -I`apxs -q INCLUDEDIR`

to CPPFLAGS before running the header checks, but this is not future-proof (and 
will fail with the packages in Raw Hide).




Comment 2 Stephen John Smoogen 2003-06-03 19:29:31 UTC
If possible, is the <> link in that header file to force only the use of apxs?
It looks like there are several parts that need to be made ready for the project
and we had hoped to use autoconf to get those other parts going. It looked like
using a standard test on httpd/httpd.h would show that the proper items were
installed. however that test fails because of the <> entry on the header file.



Comment 3 Joe Orton 2003-06-03 20:04:15 UTC
No, it's not deliberately to force use of apxs. Your test will work if you add:

   AC_PROG_PROG(APXS, apxs)
   CPPFLAGS="$CPPFLAGS -I`$APXS -q INCLUDEDIR`"

before the AC_CHECK_HEADERS test, as I eluded to above, still with caveat.


Note You need to log in before you can comment on or make changes to this bug.