summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--NWGNUmakefile6
-rw-r--r--build/make_nw_export.awk41
-rw-r--r--build/nw_export.inc15
-rw-r--r--modules/cluster/NWGNUmodheartbeat4
-rw-r--r--modules/cluster/NWGNUmodheartmonitor2
-rw-r--r--modules/core/mod_watchdog.h2
6 files changed, 32 insertions, 38 deletions
diff --git a/NWGNUmakefile b/NWGNUmakefile
index 9951591e5f..0ee27cdb0c 100644
--- a/NWGNUmakefile
+++ b/NWGNUmakefile
@@ -309,12 +309,6 @@ endif
#
FILES_nlm_exports = \
@$(NWOS)/httpd.imp \
- (AP$(VERSION_MAJMIN)) ap_hook_watchdog_exit \
- (AP$(VERSION_MAJMIN)) ap_hook_watchdog_init \
- (AP$(VERSION_MAJMIN)) ap_hook_watchdog_need \
- (AP$(VERSION_MAJMIN)) ap_hook_watchdog_step \
- (AP$(VERSION_MAJMIN)) ap_watchdog_get_instance \
- (AP$(VERSION_MAJMIN)) ap_watchdog_register_callback \
$(EOLIST)
#
diff --git a/build/make_nw_export.awk b/build/make_nw_export.awk
index 4c3e6195ea..60c7a56f95 100644
--- a/build/make_nw_export.awk
+++ b/build/make_nw_export.awk
@@ -25,24 +25,10 @@ BEGIN {
#/ap_some_name/{next}
/ap_mpm_pod_/{next}
-function add_symbol (sym_name) {
- if (count) {
- found++
- }
- gsub (/ /, "", sym_name)
- line = line sym_name ",\n"
-
- if (count == 0) {
- printf(" %s", line)
- line = ""
- }
-}
-
/^[ \t]*AP([RU]|_CORE|_WD)?_DECLARE[^(]*[(][^)]*[)]([^ ]* )*[^(]+[(]/ {
sub("[ \t]*AP([RU]|_CORE|_WD)?_DECLARE[^(]*[(][^)]*[)][ \t]*", "")
sub("[(].*", "")
sub("([^ ]* (^([ \t]*[(])))+", "")
-
add_symbol($0)
next
}
@@ -52,7 +38,17 @@ function add_symbol (sym_name) {
symbol = args[2]
sub("^[ \t]+", "", symbol)
sub("[ \t]+$", "", symbol)
+ add_symbol("ap_hook_" symbol)
+ add_symbol("ap_hook_get_" symbol)
+ add_symbol("ap_run_" symbol)
+ next
+}
+/^[ \t]*AP[RU]?_DECLARE_EXTERNAL_HOOK[^(]*[(][^)]*/ {
+ split($0, args, ",")
+ symbol = args[4]
+ sub("^[ \t]+", "", symbol)
+ sub("[ \t]+$", "", symbol)
add_symbol("ap_hook_" symbol)
add_symbol("ap_hook_get_" symbol)
add_symbol("ap_run_" symbol)
@@ -81,12 +77,19 @@ function add_symbol (sym_name) {
}
/^[ \t]*(extern[ \t]+)?AP[RU]?_DECLARE_DATA .*;$/ {
- varname = $NF;
- gsub( /[*;]/, "", varname);
- gsub( /\[.*\]/, "", varname);
- add_symbol(varname);
+ gsub(/[*;]/, "", $NF)
+ gsub(/\[.*\]/, "", $NF)
+ add_symbol($NF)
}
#END {
-# printf(" %s", line)
+# printf("\n\n#found: %d symbols.\n", found)
#}
+
+function add_symbol(sym_name) {
+ found++
+ sub (" ", "", sym_name)
+ printf(" %s,\n", sym_name)
+}
+
+
diff --git a/build/nw_export.inc b/build/nw_export.inc
index 45b48e7c88..a1f7adabf6 100644
--- a/build/nw_export.inc
+++ b/build/nw_export.inc
@@ -7,13 +7,14 @@
so that httpd.h will not mess with them. This allows
them to pass untouched so that the AWK script can pick
them out of the preprocessed result file. */
-#define AP_DECLARE AP_DECLARE
-#define AP_CORE_DECLARE AP_CORE_DECLARE
-#define AP_DECLARE_NONSTD AP_DECLARE_NONSTD
-#define AP_CORE_DECLARE_NONSTD AP_CORE_DECLARE_NONSTD
-#define AP_DECLARE_HOOK AP_DECLARE_HOOK
-#define AP_DECLARE_DATA AP_DECLARE_DATA
-#define AP_WD_DECLARE AP_WD_DECLARE
+#define AP_DECLARE AP_DECLARE
+#define AP_CORE_DECLARE AP_CORE_DECLARE
+#define AP_DECLARE_NONSTD AP_DECLARE_NONSTD
+#define AP_CORE_DECLARE_NONSTD AP_CORE_DECLARE_NONSTD
+#define AP_DECLARE_HOOK AP_DECLARE_HOOK
+#define AP_DECLARE_DATA AP_DECLARE_DATA
+#define AP_WD_DECLARE AP_WD_DECLARE
+#define APR_DECLARE_EXTERNAL_HOOK APR_DECLARE_EXTERNAL_HOOK
#undef APACHE_OS_H
#include "httpd.h"
diff --git a/modules/cluster/NWGNUmodheartbeat b/modules/cluster/NWGNUmodheartbeat
index eb25636170..6b069cd176 100644
--- a/modules/cluster/NWGNUmodheartbeat
+++ b/modules/cluster/NWGNUmodheartbeat
@@ -215,10 +215,6 @@ FILES_nlm_Ximports = \
@$(APR)/aprlib.imp \
@$(NWOS)/httpd.imp \
@libc.imp \
- (AP$(VERSION_MAJMIN)) ap_hook_watchdog_exit \
- (AP$(VERSION_MAJMIN)) ap_hook_watchdog_init \
- (AP$(VERSION_MAJMIN)) ap_hook_watchdog_need \
- (AP$(VERSION_MAJMIN)) ap_hook_watchdog_step \
$(EOLIST)
#
diff --git a/modules/cluster/NWGNUmodheartmonitor b/modules/cluster/NWGNUmodheartmonitor
index b772a2bbcd..d5f01fd67e 100644
--- a/modules/cluster/NWGNUmodheartmonitor
+++ b/modules/cluster/NWGNUmodheartmonitor
@@ -215,8 +215,6 @@ FILES_nlm_Ximports = \
@$(APR)/aprlib.imp \
@$(NWOS)/httpd.imp \
@libc.imp \
- (AP$(VERSION_MAJMIN)) ap_watchdog_get_instance \
- (AP$(VERSION_MAJMIN)) ap_watchdog_register_callback \
$(EOLIST)
#
diff --git a/modules/core/mod_watchdog.h b/modules/core/mod_watchdog.h
index c99712f8d7..c7af27f090 100644
--- a/modules/core/mod_watchdog.h
+++ b/modules/core/mod_watchdog.h
@@ -88,6 +88,7 @@ typedef struct ap_watchdog_t ap_watchdog_t;
/* Create a set of AP_WD_DECLARE(type), AP_WD_DECLARE_NONSTD(type) and
* AP_WD_DECLARE_DATA with appropriate export and import tags for the platform
*/
+#if !defined(AP_WD_DECLARE)
#if !defined(WIN32)
#define AP_WD_DECLARE(type) type
#define AP_WD_DECLARE_NONSTD(type) type
@@ -105,6 +106,7 @@ typedef struct ap_watchdog_t ap_watchdog_t;
#define AP_WD_DECLARE_NONSTD(type) __declspec(dllimport) type
#define AP_WD_DECLARE_DATA __declspec(dllimport)
#endif
+#endif
/**
* Callback function used for watchdog.