Opened 9 years ago

Closed 9 years ago

Last modified 8 years ago

#2924 closed defect (fixed)

[PATCH] Failure to compile wxWidgets library on OS X Yosemite

Reported by: Doménique Owned by: ben
Priority: Should Have Milestone: Alpha 18
Component: Build & Packages Keywords: library upstream patch
Cc: Patch:

Description

I upgraded my mac from Mavericks to Yosemite yesterday and I found that wxWidgets fails to compile a WebView component as Apple has adjusted WebKit-related headers. So this is really an upstream problem with wxWidgets about to be fixed in v3.0.3 (not released yet). As 0 A.D. currently uses v3.0.1, this ticket merely serves as a reminder to have a look at the library once it's released.

  • A temporary fix is available for Yosemite by simply pointing wxWidgets to the legacy WebKit header, a one line change according to this webpage: http://goharsha.com/blog/compiling-wxwidgets-3-0-2-mac-os-x-yosemite/
  • v3.0.3 alters the code to work with the new header, but in the mean time this is a quick fix to get it working.
  • Issue: on recompiling libraries, the build-osx-libs.sh file extracts and overwrites any such fixed made, so currently the one line change has to be made between extraction and compilation. Not handy, but keeps you busy as wxWidgets compiles ;)
  • 0 A.D. currently patches something on the library source. That issue is resolved upstream with a newer version as well (a quick look at the ticket suggests it is).
  • A solution for 0 A.D. could be to add the one line fix into the patch (with some gatekeeper code for OS X 10.10 only), and both issues may be resolved when wxWidgets v3.0.3 is released.

For the record, the compilation was done with Yosemite-specific Command Line Tools. I did not alter the minimum OS target.

Other than this issue, compilation completes (with some linker warnings though). I had a quick look and everything seems to work fine in Yosemite :)

Attachments (1)

2924.diff (1.0 KB ) - added by trompetin17 9 years ago.

Download all attachments as: .zip

Change History (7)

by trompetin17, 9 years ago

Attachment: 2924.diff added

comment:1 by trompetin17, 9 years ago

Keywords: review patch added
Summary: Failure to compile wxWidgets library on OS X Yosemite[PATCH] Failure to compile wxWidgets library on OS X Yosemite

due atlas doesn't use webkit(or webview) we could disable this features.

I tested in my osx yosemite(by accident)

comment:2 by historic_bruno, 9 years ago

Link to upstream ticket (still open): http://trac.wxwidgets.org/ticket/16329

comment:3 by historic_bruno, 9 years ago

Keywords: review removed

comment:4 by ben, 9 years ago

Owner: set to ben
Resolution: fixed
Status: newclosed

In 16155:

Updates build-osx-libs.sh to use wxWidgets 3.0.2.
Adds patch to fix wxWidgets build on Yosemite (based on http://trac.wxwidgets.org/changeset/76743), fixes #2924.
Removes patch for previous version of wxWidgets.

comment:5 by fabio, 9 years ago

Disabling not used features would probably a better approach.

comment:6 by fabio, 8 years ago

In 17621:

Update all OS X libraries to their latest versions (exlcuding currently unused libjpeg, see #2828). Some also include security fixes. Fixes #3721.
Also disable unused wxwidgets features. Patch by trompetin17, refs #2924.
Tested by wraitii.

Note: See TracTickets for help on using tickets.