• Martin Storsjö's avatar
    options_table: Remove a now unnecessary include of config.h · 1a469a5e
    Martin Storsjö authored
    The include of config.h was added in 2012 in 1d9c2dc8, due to
    the use of CONFIG_SNOW_ENCODER ifdefs within options_table.h.
    When the snow codec was dropped later (in a0c5917f in 2013),
    this include no longer served any purpose.
    
    options_table.h is included in builds for the host as well, when
    building documentation. config.h should not be included in code
    that is built for the host, since it can contain workarounds
    for the target compiler/environment, like adding a missing define
    of restrict, defining getenv(x) to NULL for environments that lack
    getenv.
    
    The seemingly innocent include reordering in 2025d378 broke
    builds that have getenv(x) defined to NULL in config.h (Windows CE
    and Windows Phone/RT), since libavcodec/options_table.h include
    config.h, while libavformat/options_table.h end up bringing in
    more system headers, and those system headers can contain a proper
    definition of getenv, which clash with the getenv define in config.h.
    This was avoided earlier as long as libavformat/options_table.h (or
    avformat.h) was included before libavcodec/options_table.h.
    
    This fixes builds for Windows Phone/RT and CE.
    Signed-off-by: 's avatarMartin Storsjö <martin@martin.st>
    1a469a5e
options_table.h 51.7 KB