Add support for building shared modules. A new Configuration command,
SharedModule, indicates that a module should be built as a shared library.
For example:
SharedModule modules/standard/mod_status.so
(note the change of extension).
Building Apache will then build modules/standard/mod_status.so. This should
be copied into somewhere under the server root and loaded with a directive like:
LoadModule status_module modules/mod_status.so
The compiler and linker flags for creating shareable and shared modules will
need adding for the supported OSes. I've put some default ones in for FreeBSD
and Linux. This can also be set in the Configuration file (if set here, it will
override the defaults contained within the Configure script). If there are no
SharedModule lines none of these extra options will be used anywhere in the
build process. If the final link of httpd requires any extra libraries
(typically -ldl) this will have to be given on EXTRA_LIBS in Configuration.
The Configure variables and Configuration options are
CFLAGS_SHLIB Options when building .o files ready for sharing
(e.g. -fpic)
LDFLAGS_SHLIB Options when linking .o files to .so (e.g. -Bshareable,
-export, -assert pure-text)
LDFLAGS_SHLIB_EXPORT
Options required when linking httpd so that it exports
its symbols for linking at runtime (e.g. -Bdynamic,
-rdynamic, -export-dynamic)
The options used in Configure could be placed in Configuration like this:
CFLAGS_SHLIB=-fpic
LDFLAGS_SHLIB=-Bshareable
LDFLAGS_SHLIB_EXPORT=-rdynamic
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/1.3.x@80094 13f79535-47bb-0310-9956-ffa450edef68
Loading
Please sign in to comment