You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@httpd.apache.org by Ben Hyde <bh...@gensym.com> on 1998/03/13 20:34:57 UTC

Things that might be static (take 2)

Reasons why this list isn't perfect.
  - main is in the list :-)
  - I don't compile up all the standard modules, most but not all.
  - I don't compile up third "non standard" modules, not even mine.
  - I don't handle lines were API_EXPORT isn't on the same
    line with the rest of the function signature.
  - I'm planning to be perfect in my next life.

AMCSocketCleanup
AMCSocketInitialize
add_file_conf
add_per_dir_conf
add_per_url_conf
ap__new_connection
ap_execve_is_not_here
basic_http_header
bytes_in_block_list
check_alarm
check_cmd_context
check_serverpath
check_symlinks
child_main
core_translate
create_connection_config
create_core_dir_config
create_core_server_config
create_default_per_dir_config
create_empty_config
create_server_config
default_handler
detach
directory_walk
do_nothing
file_walk
find_command
find_command_in_modules
fixup_virtual_hosts
force_library_loading
free_blocks
get_mime_headers
get_path_info
handle_command
init_config_globals
init_server_config
init_suexec
internal_internal_redirect
invoke_cmd
just_die
location_walk
main
make_sub_request
malloc_block
merge_core_dir_configs
merge_core_server_configs
merge_server_configs
new_block
open_error_log
os_is_not_here
plustospace
process_command_config
process_request_internal
proxy_c2hex
proxy_del_header
read_request_line
reinit_scoreboard
rename_original_env
reopen_scoreboard
require
satisfy
send_header_field
set_keepalive
set_signals
show_overrides
sig_coredump
spacetoplus
standalone_main
start_restart
start_shutdown
timeout
tm2sec
unload_file
unload_module
usage

---
#!/bin/csh -f 

set TMP = /tmp/tt

# Make a list of all symbols that are "U" and "T"
nm `find . -name '*.a' -print`  \
| grep ' [UT] '                 \
| sed 's/^[0-9a-f]* *//'        \
| sort +1                       \
| uniq                          \
> $TMP.tu

# Make a list of all the symbols that are "T" but not "U"
(cat $TMP.tu; grep 'T ' $TMP.tu) \
| sed 's/[TU] //'                \
| sort                           \
| uniq -c                        \
| sed -n '/ 2 /s/^ *2 *_//p'      \
> $TMP.t-u

# Make _rough_ list of all that are API_EXPORT
find . -name '*.c' -exec grep API_EXPORT '{}' \; \
| sed -n                 \
      -e 's/^[^)]*) *//' \
      -e 's/ *(.*$//'    \
      -e '/^[a-zA-Z]/p'  \
| sort -u \
> $TMP.x

# Make these static?
cat $TMP.t-u $TMP.t-u $TMP.x \
| sort                       \
| uniq -c                    \
| sed -n '/ 2 /s/ *2 *//p'   \
| tee $TMP.t-ux

# rm -rf $TMP.{tu,t-u,x,t-ux}

Re: Things that might be static (take 2)

Posted by Dean Gaudet <dg...@arctic.org>.
Stuff marked "_is_not_here" is just to prevent some ld/ar from complaining
about a .o file which has no exported functions.

Dean

On Fri, 13 Mar 1998, Ben Hyde wrote:

> ap_execve_is_not_here
> os_is_not_here