db479b48bd4d75423ed4a45e15b75089d1a8ad72fielding# Licensed to the Apache Software Foundation (ASF) under one or more
db479b48bd4d75423ed4a45e15b75089d1a8ad72fielding# contributor license agreements. See the NOTICE file distributed with
db479b48bd4d75423ed4a45e15b75089d1a8ad72fielding# this work for additional information regarding copyright ownership.
db479b48bd4d75423ed4a45e15b75089d1a8ad72fielding# The ASF licenses this file to You under the Apache License, Version 2.0
db479b48bd4d75423ed4a45e15b75089d1a8ad72fielding# (the "License"); you may not use this file except in compliance with
db479b48bd4d75423ed4a45e15b75089d1a8ad72fielding# the License. You may obtain a copy of the License at
240b85022b73af58a6d971cd3d05d54037d8f682nd#
240b85022b73af58a6d971cd3d05d54037d8f682nd# http://www.apache.org/licenses/LICENSE-2.0
240b85022b73af58a6d971cd3d05d54037d8f682nd#
240b85022b73af58a6d971cd3d05d54037d8f682nd# Unless required by applicable law or agreed to in writing, software
240b85022b73af58a6d971cd3d05d54037d8f682nd# distributed under the License is distributed on an "AS IS" BASIS,
240b85022b73af58a6d971cd3d05d54037d8f682nd# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
240b85022b73af58a6d971cd3d05d54037d8f682nd# See the License for the specific language governing permissions and
240b85022b73af58a6d971cd3d05d54037d8f682nd# limitations under the License.
06b6cb227bb560084b5f87b30fa0023440abf369manojBEGIN {
06b6cb227bb560084b5f87b30fa0023440abf369manoj RS = " "
7184de27ec1d62a83c41cdeac0953ca9fd661e8csf # the core module must come first
141b1a93f508248cbc0e9a124cc38041eb3e2562rbb modules[n++] = "core"
141b1a93f508248cbc0e9a124cc38041eb3e2562rbb pmodules[pn++] = "core"
06b6cb227bb560084b5f87b30fa0023440abf369manoj}
d59bcf65a7217a26e765ab07cb6bbf5b427ad9e3ben{
d59bcf65a7217a26e765ab07cb6bbf5b427ad9e3ben modules[n] = $1;
d59bcf65a7217a26e765ab07cb6bbf5b427ad9e3ben pmodules[pn] = $1;
d59bcf65a7217a26e765ab07cb6bbf5b427ad9e3ben gsub("\n","",modules[n]);
d59bcf65a7217a26e765ab07cb6bbf5b427ad9e3ben gsub("\n","",pmodules[pn]);
d59bcf65a7217a26e765ab07cb6bbf5b427ad9e3ben ++n;
d59bcf65a7217a26e765ab07cb6bbf5b427ad9e3ben ++pn;
d59bcf65a7217a26e765ab07cb6bbf5b427ad9e3ben}
06b6cb227bb560084b5f87b30fa0023440abf369manojEND {
06b6cb227bb560084b5f87b30fa0023440abf369manoj print "/*"
06b6cb227bb560084b5f87b30fa0023440abf369manoj print " * modules.c --- automatically generated by Apache"
06b6cb227bb560084b5f87b30fa0023440abf369manoj print " * configuration script. DO NOT HAND EDIT!!!!!"
06b6cb227bb560084b5f87b30fa0023440abf369manoj print " */"
06b6cb227bb560084b5f87b30fa0023440abf369manoj print ""
2d71630471d1c23f0137309e3c3957c633ecbfd6rbb print "#include \"ap_config.h\""
06b6cb227bb560084b5f87b30fa0023440abf369manoj print "#include \"httpd.h\""
06b6cb227bb560084b5f87b30fa0023440abf369manoj print "#include \"http_config.h\""
06b6cb227bb560084b5f87b30fa0023440abf369manoj print ""
141b1a93f508248cbc0e9a124cc38041eb3e2562rbb for (i = 0; i < pn; ++i) {
06b6cb227bb560084b5f87b30fa0023440abf369manoj printf ("extern module %s_module;\n", pmodules[i])
06b6cb227bb560084b5f87b30fa0023440abf369manoj }
06b6cb227bb560084b5f87b30fa0023440abf369manoj print ""
06b6cb227bb560084b5f87b30fa0023440abf369manoj print "/*"
06b6cb227bb560084b5f87b30fa0023440abf369manoj print " * Modules which implicitly form the"
06b6cb227bb560084b5f87b30fa0023440abf369manoj print " * list of activated modules on startup,"
06b6cb227bb560084b5f87b30fa0023440abf369manoj print " * i.e. these are the modules which are"
06b6cb227bb560084b5f87b30fa0023440abf369manoj print " * initially linked into the Apache processing"
06b6cb227bb560084b5f87b30fa0023440abf369manoj print " * [extendable under run-time via AddModule]"
06b6cb227bb560084b5f87b30fa0023440abf369manoj print " */"
06b6cb227bb560084b5f87b30fa0023440abf369manoj print "module *ap_prelinked_modules[] = {"
141b1a93f508248cbc0e9a124cc38041eb3e2562rbb for (i = 0 ; i < n; ++i) {
06b6cb227bb560084b5f87b30fa0023440abf369manoj printf " &%s_module,\n", modules[i]
06b6cb227bb560084b5f87b30fa0023440abf369manoj }
06b6cb227bb560084b5f87b30fa0023440abf369manoj print " NULL"
06b6cb227bb560084b5f87b30fa0023440abf369manoj print "};"
06b6cb227bb560084b5f87b30fa0023440abf369manoj print ""
06b6cb227bb560084b5f87b30fa0023440abf369manoj print "/*"
c2549f0b237ac86f3623a601a766969d805dbc2and print " * We need the symbols as strings for <IfModule> containers"
c2549f0b237ac86f3623a601a766969d805dbc2and print " */"
c2549f0b237ac86f3623a601a766969d805dbc2and print ""
c2549f0b237ac86f3623a601a766969d805dbc2and print "ap_module_symbol_t ap_prelinked_module_symbols[] = {"
c2549f0b237ac86f3623a601a766969d805dbc2and for (i = 0; i < n; ++i) {
c2549f0b237ac86f3623a601a766969d805dbc2and printf (" {\"%s_module\", &%s_module},\n", modules[i], modules[i])
c2549f0b237ac86f3623a601a766969d805dbc2and }
c2549f0b237ac86f3623a601a766969d805dbc2and print " {NULL, NULL}"
c2549f0b237ac86f3623a601a766969d805dbc2and print "};"
c2549f0b237ac86f3623a601a766969d805dbc2and print ""
c2549f0b237ac86f3623a601a766969d805dbc2and print "/*"
06b6cb227bb560084b5f87b30fa0023440abf369manoj print " * Modules which initially form the"
06b6cb227bb560084b5f87b30fa0023440abf369manoj print " * list of available modules on startup,"
06b6cb227bb560084b5f87b30fa0023440abf369manoj print " * i.e. these are the modules which are"
06b6cb227bb560084b5f87b30fa0023440abf369manoj print " * initially loaded into the Apache process"
06b6cb227bb560084b5f87b30fa0023440abf369manoj print " * [extendable under run-time via LoadModule]"
06b6cb227bb560084b5f87b30fa0023440abf369manoj print " */"
06b6cb227bb560084b5f87b30fa0023440abf369manoj print "module *ap_preloaded_modules[] = {"
141b1a93f508248cbc0e9a124cc38041eb3e2562rbb for (i = 0; i < pn; ++i) {
06b6cb227bb560084b5f87b30fa0023440abf369manoj printf " &%s_module,\n", pmodules[i]
06b6cb227bb560084b5f87b30fa0023440abf369manoj }
06b6cb227bb560084b5f87b30fa0023440abf369manoj print " NULL"
06b6cb227bb560084b5f87b30fa0023440abf369manoj print "};"
06b6cb227bb560084b5f87b30fa0023440abf369manoj print ""
06b6cb227bb560084b5f87b30fa0023440abf369manoj}