1 # Licensed to the Apache Software Foundation (ASF) under one or more
2 # contributor license agreements. See the NOTICE file distributed with
3 # this work for additional information regarding copyright ownership.
4 # The ASF licenses this file to You under the Apache License, Version 2.0
5 # (the "License"); you may not use this file except in compliance with
6 # the License. You may obtain a copy of the License at
8 # http://www.apache.org/licenses/LICENSE-2.0
10 # Unless required by applicable law or agreed to in writing, software
11 # distributed under the License is distributed on an "AS IS" BASIS,
12 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 # See the License for the specific language governing permissions and
14 # limitations under the License.
17 # Based on apr's make_export.awk, which is
18 # based on Ryan Bloom's make_export.pl
21 printf(" (APACHE2)\n")
24 # List of functions that we don't support, yet??
27 function add_symbol
(sym_name
) {
31 gsub (/ /, "", sym_name
)
32 line = line sym_name
",\n"
40 /^
[ \t]*AP
([RU
]|_CORE
)?_DECLARE
[^
(]*[(][^
)]*[)]([^
]* )*[^
(]+[(]/ {
41 sub("[ \t]*AP([RU]|_CORE)?_DECLARE[^(]*[(][^)]*[)][ \t]*", "")
43 sub("([^ ]* (^([ \t]*[(])))+", "")
49 /^
[ \t]*AP_DECLARE_HOOK
[^
(]*[(][^
)]*/ {
52 sub("^[ \t]+", "", symbol
)
53 sub("[ \t]+$", "", symbol
)
55 add_symbol
("ap_hook_" symbol
)
56 add_symbol
("ap_hook_get_" symbol
)
57 add_symbol
("ap_run_" symbol
)
61 /^
[ \t]*APR_POOL_DECLARE_ACCESSOR
[^
(]*[(][^
)]*[)]/ {
62 sub("[ \t]*APR_POOL_DECLARE_ACCESSOR[^(]*[(]", "", $
0)
64 add_symbol
("apr_" $
0 "_pool_get")
68 /^
[ \t]*APR_DECLARE_INHERIT_SET
[^
(]*[(][^
)]*[)]/ {
69 sub("[ \t]*APR_DECLARE_INHERIT_SET[^(]*[(]", "", $
0)
71 add_symbol
("apr_" $
0 "_inherit_set")
75 /^
[ \t]*APR_DECLARE_INHERIT_UNSET
[^
(]*[(][^
)]*[)]/ {
76 sub("[ \t]*APR_DECLARE_INHERIT_UNSET[^(]*[(]", "", $
0)
78 add_symbol
("apr_" $
0 "_inherit_unset")
82 /^
[ \t]*(extern
[ \t]+)?AP
[RU
]?_DECLARE_DATA .
*;$
/ {
84 gsub( /[*;]/, "", varname
);
85 gsub( /\
[.
*\
]/, "", varname
);