blob: 317e4bc7c364bbce02580fc23e75de441415d4a9 [file] [log] [blame]
# Based on apr's make_export.awk, which is
# based on Ryan Bloom's make_export.pl
# List of functions that we don't support, yet??
/apr_##name##_set_inherit/{next}
/apr_##name##_unset_inherit/{next}
/apr_compare_groups/{next}
/apr_compare_users/{next}
/apr_find_pool/{next}
/apr_generate_random_bytes/{next}
/apr_lock_create_np/{next}
/apr_md5_set_xlate/{next}
/apr_mmap_create/{next}
/apr_mmap_delete/{next}
/apr_mmap_offset/{next}
/apr_os_thread_get/{next}
/apr_os_thread_put/{next}
/apr_pool_free_blocks_num_bytes/{next}
/apr_pool_join/{next}
/apr_pool_num_bytes/{next}
/apr_proc_mutex_child_init/{next}
/apr_proc_mutex_create/{next}
/apr_proc_mutex_create_np/{next}
/apr_proc_mutex_destroy/{next}
/apr_proc_mutex_lock/{next}
/apr_proc_mutex_trylock/{next}
/apr_proc_mutex_unlock/{next}
/apr_proc_other_child_check/{next}
/apr_proc_other_child_read/{next}
/apr_proc_other_child_register/{next}
/apr_proc_other_child_unregister/{next}
/apr_sendfile/{next}
/apr_shm_avail/{next}
/apr_shm_calloc/{next}
/apr_shm_destroy/{next}
/apr_shm_free/{next}
/apr_shm_init/{next}
/apr_shm_malloc/{next}
/apr_shm_name_get/{next}
/apr_shm_name_set/{next}
/apr_shm_open/{next}
/apr_signal/{next}
/apr_signal_thread/{next}
/apr_socket_from_file/{next}
/apr_thread_once/{next}
/apr_thread_once_init/{next}
/apr_xlate_close/{next}
/apr_xlate_conv_buffer/{next}
/apr_xlate_conv_byte/{next}
/apr_xlate_conv_char/{next}
/apr_xlate_get_sb/{next}
/apr_xlate_open/{next}
/apr_brigade_consume/{next}
/apr_bucket_mmap_create/{next}
/apr_bucket_mmap_make/{next}
/apr_bucket_type_mmap/{next}
/apr_md4_set_xlate/{next}
#/XML_ParserFree/{next}
#/XML_ParserCreate/{next}
#/XML_SetUserData/{next}
#/XML_SetElementHandler/{next}
#/XML_SetCharacterDataHandler/{next}
#/XML_Parse/{next}
#/XML_GetErrorCode/{next}
#/XML_ErrorString/{next}
function add_symbol (sym_name) {
if (count) {
found++
}
# for (i = 0; i < count; i++) {
# line = line "\t"
# }
line = line sym_name ",\n"
if (count == 0) {
printf(" %s", line)
line = ""
}
}
/^[ \t]*AP[RU]?_DECLARE[^(]*[(][^)]*[)]([^ ]* )*[^(]+[(]/ {
sub("[ \t]*AP[RU]?_DECLARE[^(]*[(][^)]*[)][ \t]*", "")
sub("[(].*", "")
sub("([^ ]* (^([ \t]*[(])))+", "")
add_symbol($0)
next
}
/^[ \t]*AP_DECLARE_HOOK[^(]*[(][^)]*[)]/ {
split($0, args, ",")
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_DATA .*;$/ {
varname = $NF;
gsub( /[*;]/, "", varname);
gsub( /\[.*\]/, "", varname);
add_symbol(varname);
}
#END {
# printf(" %s", line)
#}