Mypal/ipc/chromium/src/third_party/libevent/README.mozilla

47 lines
1.8 KiB
Plaintext

This is a clean copy of libevent-2.0.21-stable with the following
modifications.
1. Add the following files:
- linux/event2/event-config.h
- mac/event2/event-config.h
- bsd/event2/event-config.h
- android/event2/event-config.h
These files are taken from libevent-2.0.21-stable built on the development
environment indicated by the first path component. You have to run
"./configure" and "make" to get all of the pre-processing done. The file can
then be found in "include/event2/".
You then need to modify the _EVENT_SIZEOF_* constants in the generated linux,
android, mac and bsd headers to be appropriate for both 32-bit and 64-bit
platforms. Use __LP64__ to distinguish the two cases. If you get something
wrong the CHECK_EVENT_SIZEOF static assertions in message_pump_libevent.cc will
fail.
2. This is ugly, prepare yourself. OS X has a weird problem with how the
"TAILQ_END(head)" is used, causing a linking error. Just replace all use of the
"TAILQ_END(head)" macro with "NULL".
3. Apply the following patches from
ipc/chromium/src/third_party/libevent/patches/:
- "mac-arc4random-buf.patch". This removes some bad OS X compatibility code.
This will allow libevent to compile on all supported versions of OS X.
- "openbsd-no-arc4random_addrandom.patch". This fixes the build on OpenBSD
(which doesn't provide arc4random_addrandom anymore, see #931354).
- "use-non-deprecated-syscalls.patch". This fixes the build on AArch64
architecture (which does not provide deprecated syscalls).
- "dont-use-issetugid-on-android.patch". This fixes the build on Android L
preview.
- "avoid-empty-sighandler.patch". This fixes some OS X crashes.
- "android64_support.patch". This fixes Android 64-bit support.
- "backport-upstream-fixes.patch". Backports a few upstream fixes from 2.1.x
to our in-tree copy of 2.0.21.