From: Victor J. Orlikowski Date: Thu, 7 Jun 2001 10:03:29 +0000 (+0000) Subject: Generate httpd.exp on the fly. X-Git-Tag: 2.0.19~126 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=d3feaed25f52d4fa04e125366c77cf1f0edca306;p=apache Generate httpd.exp on the fly. This should allow DSOs to work on AIX, without the headache of maintaining the httpd.exp file. This is adapted from OS/2's generation of ApacheCoreOS2.def. There exist a few bugs still: 1) mod_dav and mod_proxy may not yet work, due to certain namespace issues. 2) Some symbols may need to be added, a la core_header.def Once these have been fixed, the old httpd.exp file will be deleted. git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@89288 13f79535-47bb-0310-9956-ffa450edef68 --- diff --git a/CHANGES b/CHANGES index bf148b6af1..3b096b83cc 100644 --- a/CHANGES +++ b/CHANGES @@ -1,4 +1,6 @@ Changes with Apache 2.0.19-dev + *) Automatically generate httpd.exp for AIX. + [Victor J. Orlikowski] *) Add a new request hook, error_log. This phase allows modules to act on the error log string _after_ it has been written diff --git a/configure.in b/configure.in index 23cfb9fd1a..ac69a1f46e 100644 --- a/configure.in +++ b/configure.in @@ -234,8 +234,8 @@ if test "$apache_need_shared" = "yes"; then $SHELL $ac_aux_dir/ltconfig --output=shlibtool --disable-static --srcdir=$ac_aux_dir --cache-file=./config.cache $ac_aux_dir/ltmain.sh case "$host" in *-ibm-aix*) - HTTPD_LDFLAGS="$HTTPD_LDFLAGS -Wl,-bE:$abs_srcdir/support/httpd.exp" - SH_LDFLAGS="$SH_LDFLAGS -Wl,-bI:$abs_srcdir/support/httpd.exp" + HTTPD_LDFLAGS="$HTTPD_LDFLAGS -Wl,-bE:$abs_srcdir/server/httpd.exp" + SH_LDFLAGS="$SH_LDFLAGS -Wl,-bI:$abs_srcdir/server/httpd.exp" ;; *beos) SH_LDFLAGS='$(top_builddir)/_APP_' diff --git a/modules/mappers/mod_so.c b/modules/mappers/mod_so.c index ba9466f622..56e2d86004 100644 --- a/modules/mappers/mod_so.c +++ b/modules/mappers/mod_so.c @@ -238,7 +238,7 @@ static const char *load_module(cmd_parms *cmd, void *dummy, apr_dso_error(modhandle, my_error, sizeof(my_error)), NULL); } - ap_log_perror(APLOG_MARK, APLOG_DEBUG|APLOG_NOERRNO, 0, cmd->pool, + ap_log_error(APLOG_MARK, APLOG_DEBUG | APLOG_NOERRNO, 0, cmd->server, "loaded module %s", modname); /* @@ -309,7 +309,7 @@ static const char *load_file(cmd_parms *cmd, void *dummy, const char *filename) NULL); } - ap_log_error(APLOG_MARK, APLOG_DEBUG|APLOG_NOERRNO, 0, NULL, + ap_log_error(APLOG_MARK, APLOG_DEBUG | APLOG_NOERRNO, 0, cmd->server, "loaded file %s", filename); return NULL; diff --git a/server/.cvsignore b/server/.cvsignore index 88ac171b53..12e2b53ac2 100644 --- a/server/.cvsignore +++ b/server/.cvsignore @@ -12,3 +12,4 @@ exports.c Debug Release apache.exports +httpd.exp diff --git a/server/Makefile.in b/server/Makefile.in index 983ebd61a6..6f983fab48 100644 --- a/server/Makefile.in +++ b/server/Makefile.in @@ -1,7 +1,7 @@ TARGET_EXPORTS = apache.exports CLEAN_TARGETS = gen_test_char test_char.h gen_uri_delims uri_delims.h \ - $(TARGET_EXPORTS) ApacheCoreOS2.def + $(TARGET_EXPORTS) ApacheCoreOS2.def httpd.exp EXTRACLEAN_TARGETS = exports.c SUBDIRS = mpm @@ -16,7 +16,7 @@ LTLIBRARY_SOURCES = \ util_filter.c exports.c buildmark.c scoreboard.c \ error_bucket.c protocol.c core.c request.c -TARGETS = delete-exports $(LTLIBRARY_NAME) $(CORE_IMPLIB_FILE) +TARGETS = delete-exports $(LTLIBRARY_NAME) $(CORE_IMPLIB_FILE) httpd.exp include $(top_srcdir)/build/rules.mk include $(top_srcdir)/build/library.mk @@ -59,3 +59,8 @@ exports.lo: exports.c ApacheCoreOS2.def: exports.c $(top_srcdir)/os/$(OS_DIR)/core_header.def cat $(top_srcdir)/os/$(OS_DIR)/core_header.def > $@ $(CPP) $< $(ALL_CPPFLAGS) $(ALL_INCLUDES) | grep "ap_hack_" | sed -e 's/^.*[)]\(.*\);$$/ "\1"/' >> $@ + +# Rule to make exp file for AIX DSOs +httpd.exp: exports.c + echo "#! ." > $@ + $(CPP) $(ALL_CPPFLAGS) $(ALL_INCLUDES) exports.c | grep "ap_hack_" | sed -e 's/^.*[)]\(.*\);$$/\1/' >> $@ diff --git a/support/Makefile.in b/support/Makefile.in index 70f287b9e7..75f17b186e 100644 --- a/support/Makefile.in +++ b/support/Makefile.in @@ -12,7 +12,7 @@ include $(top_srcdir)/build/rules.mk install: @test -d $(bindir) || $(MKINSTALLDIRS) $(bindir) - @cp -p httpd.exp $(bindir) + @cp -p $(top_srcdir)/server/httpd.exp $(bindir) @cp -p apachectl $(bindir) chmod 755 $(bindir)/apachectl @if test -f $(builddir)/apxs; then \