libevent/make-event-config.sed
Philip Prindeville 587e9f5828
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.
2018-06-08 02:14:38 +03:00

28 lines
731 B
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/