Closed Bug 1318914 Opened 8 years ago Closed 8 years ago

Build --with-system-libevent fails with libevent 2.1

Categories

(Core :: IPC, defect)

defect
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla53
Tracking Status
firefox-esr45 --- fixed
firefox52 --- fixed
firefox-esr52 --- fixed
firefox53 --- fixed

People

(Reporter: glandium, Assigned: glandium)

Details

Attachments

(1 file)

/tmp/buildd/firefox-51.0~b1/ipc/chromium/src/base/message_pump_libevent.cc:26:19: error: '_EVENT_SIZEOF_LONG' was not declared in this scope
     static_assert(_EVENT_SIZEOF_##TYPE == sizeof(type), \
                   ^
/tmp/buildd/firefox-51.0~b1/ipc/chromium/src/base/message_pump_libevent.cc:29:1: note: in expansion of macro 'CHECK_EVENT_SIZEOF'
 CHECK_EVENT_SIZEOF(LONG,      long);
 ^~~~~~~~~~~~~~~~~~
/tmp/buildd/firefox-51.0~b1/ipc/chromium/src/base/message_pump_libevent.cc:26:19: error: '_EVENT_SIZEOF_LONG_LONG' was not declared in this scope
     static_assert(_EVENT_SIZEOF_##TYPE == sizeof(type), \
                   ^
/tmp/buildd/firefox-51.0~b1/ipc/chromium/src/base/message_pump_libevent.cc:30:1: note: in expansion of macro 'CHECK_EVENT_SIZEOF'
 CHECK_EVENT_SIZEOF(LONG_LONG, long long);
 ^~~~~~~~~~~~~~~~~~
/tmp/buildd/firefox-51.0~b1/ipc/chromium/src/base/message_pump_libevent.cc:26:19: error: '_EVENT_SIZEOF_PTHREAD_T' was not declared in this scope
     static_assert(_EVENT_SIZEOF_##TYPE == sizeof(type), \
                   ^
/tmp/buildd/firefox-51.0~b1/ipc/chromium/src/base/message_pump_libevent.cc:31:1: note: in expansion of macro 'CHECK_EVENT_SIZEOF'
 CHECK_EVENT_SIZEOF(PTHREAD_T, pthread_t);
 ^~~~~~~~~~~~~~~~~~
/tmp/buildd/firefox-51.0~b1/ipc/chromium/src/base/message_pump_libevent.cc:26:19: error: '_EVENT_SIZEOF_SHORT' was not declared in this scope
     static_assert(_EVENT_SIZEOF_##TYPE == sizeof(type), \
                   ^
/tmp/buildd/firefox-51.0~b1/ipc/chromium/src/base/message_pump_libevent.cc:32:1: note: in expansion of macro 'CHECK_EVENT_SIZEOF'
 CHECK_EVENT_SIZEOF(SHORT,     short);
 ^~~~~~~~~~~~~~~~~~
/tmp/buildd/firefox-51.0~b1/ipc/chromium/src/base/message_pump_libevent.cc:26:19: error: '_EVENT_SIZEOF_SIZE_T' was not declared in this scope
     static_assert(_EVENT_SIZEOF_##TYPE == sizeof(type), \
                   ^
/tmp/buildd/firefox-51.0~b1/ipc/chromium/src/base/message_pump_libevent.cc:33:1: note: in expansion of macro 'CHECK_EVENT_SIZEOF'
 CHECK_EVENT_SIZEOF(SIZE_T,    size_t);
 ^~~~~~~~~~~~~~~~~~
/tmp/buildd/firefox-51.0~b1/ipc/chromium/src/base/message_pump_libevent.cc:26:19: error: '_EVENT_SIZEOF_VOID_P' was not declared in this scope
     static_assert(_EVENT_SIZEOF_##TYPE == sizeof(type), \
                   ^
/tmp/buildd/firefox-51.0~b1/ipc/chromium/src/base/message_pump_libevent.cc:34:1: note: in expansion of macro 'CHECK_EVENT_SIZEOF'
 CHECK_EVENT_SIZEOF(VOID_P,    void*);
 ^~~~~~~~~~~~~~~~~~

The reason is that version 2.1 now defines EVENT__SIZEOF_* instead of _EVENT_SIZEOF_*.
Comment on attachment 8812539 [details]
Bug 1318914 - Fix --with-system-libevent build against libevent 2.1.

https://reviewboard.mozilla.org/r/94246/#review94692
Attachment #8812539 - Flags: review?(wmccloskey) → review+
Pushed by mh@glandium.org:
https://hg.mozilla.org/integration/autoland/rev/9e4d3eb55534
Fix --with-system-libevent build against libevent 2.1. r=billm
https://hg.mozilla.org/mozilla-central/rev/9e4d3eb55534
Status: NEW → RESOLVED
Closed: 8 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla53
[Tracking Requested - why for this release]:
Comment on attachment 8812539 [details]
Bug 1318914 - Fix --with-system-libevent build against libevent 2.1.

Let's get this on ESR train(s). Downstream prefers system libraries and is slowly migrating to libevent-2.1.x

http://repology.org/metapackage/libevent/versions
http://repology.org/metapackage/libevent2/versions

Approval Request Comment
[ESR consideration]: Bundled libevent on ESR45 lacks https://github.com/libevent/libevent/commit/20d6d4458bee , so downstream is encouraged to pass --with-system-libevent. However, if system libevent is too new we get the build error.
[Feature/Bug causing the regression]: Upstream libevent renamed internal macros
[User impact if declined]: Broken build --with-system-libevent in .mozconfig
[Is this code covered by automated tests?]: Not yet until bundled copy is updated to 2.1.x.
[Has the fix been verified in Nightly?]: Yes. Also downstream in FreeBSD before *and* after libevent-2.1.8 update.
[Needs manual test from QE? If yes, steps to reproduce]: No
[List of other uplifts needed for the feature/fix]: None
[Is the change risky?]: No
[Why is the change risky/not risky?]: Can only break build.
[String changes made/needed]: None
Attachment #8812539 - Flags: approval-mozilla-esr45?
Attachment #8812539 - Flags: approval-mozilla-beta?
Comment on attachment 8812539 [details]
Bug 1318914 - Fix --with-system-libevent build against libevent 2.1.

handle API change in libevent 2.1, beta52+
Attachment #8812539 - Flags: approval-mozilla-beta? → approval-mozilla-beta+
Setting qe-verify- per comment 6.
Flags: qe-verify-
Comment on attachment 8812539 [details]
Bug 1318914 - Fix --with-system-libevent build against libevent 2.1.

Let's take this in ESR45 for build issue with libevent. ESR45+.
Attachment #8812539 - Flags: approval-mozilla-esr45? → approval-mozilla-esr45+
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: