Edit

kc3-lang/libevent/make-event-config.sed

Branch :

  • Show log

    Commit

  • Author : Philip Prindeville
    Date : 2018-04-18 15:09:35
    Hash : 587e9f58
    Message : config.h can't be prefixed unconditionally The script make-event-config.sed was mangling all the symbols by prefixing them with "EVENT__". The problem here is that some symbols aren't for local consumption within libevent, but rather influence other system header files (ex: __USE_FILE_OFFSET64 is used by dozens of header files including <sys/sendfile.h>). As a workaround, all symbols starting with a capital letter only (with the exception of STDC_HEADERS which must also be left untouched) will be mangled. Future contributors will need to be aware of this distinction.

  • make-event-config.sed
  • # Sed script to postprocess config.h into event-config.h.
    
    1i\
    /* event2/event-config.h\
     *\
     * This file was generated by autoconf when libevent was built, and post-\
     * processed by Libevent so that its macros would have a uniform prefix.\
     *\
     * DO NOT EDIT THIS FILE.\
     *\
     * Do not rely on macros in this file existing in later versions.\
     */\
    \
    #ifndef EVENT2_EVENT_CONFIG_H_INCLUDED_\
    #define EVENT2_EVENT_CONFIG_H_INCLUDED_\
    
    $a\
    \
    #endif /* event2/event-config.h */
    
    /#\( *\)undef STDC_HEADERS\>/b
    /#\( *\)define STDC_HEADERS\>/b
    
    # Only rewrite symbols starting with capitals
    s/#\( *\)define \([A-Z]\)/#\1define EVENT__\2/
    s/#\( *\)undef \([A-Z]\)/#\1undef EVENT__\2/
    s/#\( *\)if\(n*\)def \([A-Z]\)/#\1if\2def EVENT__\2/