# This mapfile (or version script) lists the public symbols that are # publically exported by each version of the tecla library. This file # has the format required by the Sun and Linux linkers, and also acts # as a template from which map files for other systems can be derived # with awk or sed. # # Under Solaris and Linux, this map file is used by ld during shared # library creation. It has two purposes: # # 1. It specifies which symbols in the library are to be made visible # to applications. This has the dual benefits of reducing namespace # polution, and of preventing applications from using private # internal library functions that might change or disappear in # future releases. # # 2. The information listed in this file is recorded in the shared # library, such that when an application is linked against it, the # linker can record a dependency in the application which says # which is the earliest library version which included all of the # symbols that the application needs. This means that if the # application is copied to another system that has an earlier # version of the library, the linker can quickly determine whether # the earlier version contains all of the symbols that it needs. # # Under Linux, mapfiles can also be used to allow multiple # incompatible versions of a given function to exist in a library, # thus supporting applications that were compiled against different # incompatible versions of the library. Since this feature (and the # inclusion of .symver directives) isn't supported by Solaris, it # can't be included in this file. Non backwards compatibility in the # ABI must instead be handled in the more traditional way, by # incrementing the major version number. # # When a new minor release is made, a new tecla_1.x specification # should be added which inherits the symbols of the previous release # and lists newly added functions. For example, below you will find # the following clause: # # tecla_1.3 { # global: # ef_list_expansions; # } tecla_1.2; # # This says that ef_list_expansions is the name of a public function # that was added in the 1.3 release, and that the symbols defined in # the previous tecla_1.2 clause have been inherited by tecla_1.3. # # For more details see the following URL: # # http://www.usenix.org/publications/library/proceedings/als2000/browndavid.html #------------------------------------------------------------------------------- tecla_1.2 { global: cfc_file_start; cfc_literal_escapes; cfc_set_check_fn; cpl_add_completion; cpl_check_exe; cpl_complete_word; cpl_file_completions; cpl_init_FileArgs; cpl_last_error; cpl_list_completions; cpl_record_error; del_CplFileConf; del_ExpandFile; del_GetLine; del_PathCache; del_PcaPathConf; del_WordCompletion; ef_expand_file; ef_last_error; gl_change_terminal; gl_customize_completion; gl_get_line; new_CplFileConf; new_ExpandFile; new_GetLine; new_PathCache; new_PcaPathConf; new_WordCompletion; pca_last_error; pca_lookup_file; pca_path_completions; pca_scan_path; pca_set_check_fn; ppc_file_start; ppc_literal_escapes; local: *; }; tecla_1.3 { global: ef_list_expansions; } tecla_1.2; tecla_1.4 { global: gl_configure_getline; gl_save_history; gl_load_history; gl_group_history; gl_show_history; gl_resize_history; gl_limit_history; gl_clear_history; gl_toggle_history; gl_watch_fd; libtecla_version; gl_terminal_size; gl_state_of_history; gl_range_of_history; gl_size_of_history; gl_lookup_history; gl_echo_mode; gl_replace_prompt; gl_prompt_style; gl_ignore_signal; gl_trap_signal; gl_last_signal; } tecla_1.3; tecla_l.5 { global: gl_inactivity_timeout; gl_completion_action; gl_register_action; gl_display_text; gl_error_message; gl_return_status; gl_set_term_size; gl_list_signals; gl_catch_blocked; gl_io_mode; gl_raw_io; gl_normal_io; gl_tty_signals; gl_abandon_line; gl_handle_signal; gl_pending_io; gl_bind_keyseq; cpl_recall_matches; gl_erase_terminal; } tecla_1.4; tecla_1.6 { global: gl_append_history; gl_automatic_history; gl_query_char; gl_read_char; } tecla_l.5;