47 lines
1.8 KiB
Plaintext
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.
|