docs/razor-sections.txt
author J. Ali Harlow <ali@juiblex.co.uk>
Sat Oct 04 18:12:58 2014 +0100 (2014-10-04)
changeset 454 56ff755c268c
parent 262 63644cc28e0b
permissions -rw-r--r--
Only export symbols starting with razor_ in dynamic library.

Apart from being good practice to avoid clashes with higher-level
libraries and the application, this also fixes an obscure bug: The
gnulib library is used both by librazor (the dynamic library) and
by razor (the executable). In doing so, we want to have two separate
copies of the library despite the code duplication this involves.
Without the explicit limit to export only razor_ symbols, the razor
executable under mingw64 was picking up the getopt_long function
from librazor and the optind variable from libgnu which meant that
it did not see optind changing. Hiding librazor's copy of getopt
causes the linker to find libgnu's copy and everything works.

Note that under mingw librazor-#.dll still contains undocumented
(private) razor_ symbols but these will do no harm as long as nobody
tries to use them.
     1 <SECTION>
     2 <FILE>set</FILE>
     3 razor_set
     4 razor_set_create
     5 razor_set_open
     6 razor_set_destroy
     7 razor_set_write_to_fd
     8 razor_set_write
     9 razor_set_open_details
    10 razor_set_open_files
    11 razor_set_list_files
    12 razor_set_list_package_files
    13 razor_set_list_unsatisfied
    14 razor_set_create_from_yum
    15 razor_set_create_from_rpmdb
    16 razor_diff_callback_t
    17 razor_set_diff
    18 razor_set_create_remove_iterator
    19 razor_set_create_install_iterator
    20 </SECTION>
    21 
    22 <SECTION>
    23 <FILE>transaction</FILE>
    24 razor_transaction_create
    25 razor_transaction_install_package
    26 razor_transaction_remove_package
    27 razor_transaction_update_package
    28 razor_transaction_update_all
    29 razor_transaction_resolve
    30 razor_transaction_describe
    31 razor_transaction_finish
    32 razor_transaction_destroy
    33 razor_transaction_unsatisfied_property
    34 </SECTION>
    35 
    36 <SECTION>
    37 <FILE>importer</FILE>
    38 razor_importer
    39 razor_importer_create
    40 razor_importer_destroy
    41 razor_importer_begin_package
    42 razor_importer_add_details
    43 razor_importer_add_property
    44 razor_importer_add_file
    45 razor_importer_finish_package
    46 razor_importer_add_rpm
    47 razor_importer_finish
    48 </SECTION>
    49 
    50 <SECTION>
    51 <FILE>rpm</FILE>
    52 razor_rpm
    53 razor_rpm_open
    54 razor_rpm_install
    55 razor_rpm_close
    56 </SECTION>
    57 
    58 <SECTION>
    59 <FILE>root</FILE>
    60 razor_root
    61 razor_root_create
    62 razor_root_open
    63 razor_root_open_read_only
    64 razor_root_get_system_set
    65 razor_root_close
    66 razor_root_update
    67 razor_root_commit
    68 </SECTION>
    69 
    70 <SECTION>
    71 <FILE>iterator</FILE>
    72 razor_package_iterator
    73 razor_package_iterator_create
    74 razor_package_iterator_create_for_property
    75 razor_package_iterator_create_for_file
    76 razor_package_iterator_next
    77 razor_package_iterator_destroy
    78 razor_package_query_create
    79 razor_package_query_add_package
    80 razor_package_query_add_iterator
    81 razor_package_query_finish
    82 razor_property_iterator
    83 razor_property_iterator_create
    84 razor_property_iterator_next
    85 razor_property_iterator_destroy
    86 </SECTION>
    87 
    88 <SECTION>
    89 <FILE>misc</FILE>
    90 razor_package
    91 razor_package_get_details
    92 
    93 razor_property
    94 razor_property_relation_to_string
    95 razor_property_type_to_string
    96 
    97 razor_build_evr
    98 razor_versioncmp
    99 </SECTION>