• Nick Mathewson's avatar
    Completely refactor how FILENAME_PRIVATE works · a3e0a87d
    Nick Mathewson authored
    We previously used FILENAME_PRIVATE identifiers mostly for
    identifiers exposed only to the unit tests... but also for
    identifiers exposed to the benchmarker, and sometimes for
    identifiers exposed to a similar module, and occasionally for no
    really good reason at all.
    Now, we use FILENAME_PRIVATE identifiers for identifiers shared by
    Tor and the unit tests.  They should be defined static when we
    aren't building the unit test, and globally visible otherwise. (The
    STATIC macro will keep us honest here.)
    For identifiers used only by the unit tests and never by Tor at all,
    on the other hand, we wrap them in #ifdef TOR_UNIT_TESTS.
    This is not the motivating use case for the split test/non-test
    build system; it's just a test example to see how it works, and to
    take a chance to clean up the code a little.