Opened 4 years ago

Last modified 4 months ago

#4362 new task

Update and cleanup OS X libraries — at Version 4

Reported by: fabio Owned by:
Priority: Should Have Milestone: Alpha 24
Component: Build & Packages Keywords: macos
Cc: stanislas69, trompetin17, Krinkle Patch:

Description (last modified by Itms)

Update and cleanup build-osx-libs.sh:

  • update libraries to latest releases (should do for alpha22, some have security issues);
  • boost system may not be needed anymore; remove it if confirmed;
  • verify how to use already built libpng for wxwidgets, rather than its builtin version (no need to provide two libpng, wx one is also older).

Change History (4)

comment:1 by wraitii, 4 years ago

I created a branch that relies on Homebrew to download all non-bundled libs (except for gloox, as we do not use ssl and brew does).

https://github.com/wraitii/0ad/tree/OSX_libs_brew

This seems to compile on my system (10.11.6), and has the advantages of:

  • cutting down compile time substantially, particularly for wxwidgets/boost
  • making sure we always use the latest versions

Now we voluntarily didn't use brew before. I'm not exactly sure why, but here are a few notes:

  • Brew is largely the best and most common OS X package manager now
  • It used to requires sudo at some point but no longer does
  • It does not introduce conflicts with OSX's libraries, as it can provide "unlinked" versions (say, for libpng)
  • it's got all the libraries we use.

I don't see why we should/could not rely on it now, at least.

NB: I removed libiconv because it seemed to be only used to compile the others, but I'm not actually sure about that.

Last edited 4 years ago by wraitii (previous) (diff)

comment:2 by wraitii, 4 years ago

Keywords: rfc patch added

comment:3 by wraitii, 4 years ago

As a sidenote: using brew libraries and hot linking seems to work but fails to compile into a binary that's self-sufficient, it'll probably take more changes. As a side-sidenote, wxwidgets 3.0.2 no longer compiles on macOs 10.12 (Sierra), you have to use 3.1.0

edit:hm actually not either, we'll have to port an upstream patch.

Last edited 4 years ago by wraitii (previous) (diff)

comment:4 by Itms, 3 years ago

Description: modified (diff)

Can we push that to A23 or is there an important library update that needs to be performed before packaging?

Note: See TracTickets for help on using tickets.