Forwarding to appropriate Boost list..

On Fri, Dec 1, 2017 at 3:09 AM, Richard Hodges <> wrote:

On 30 November 2017 at 17:15, Rene Rivera <> wrote:
On Thu, Nov 30, 2017 at 8:29 AM, Richard Hodges <> wrote:

On 30 November 2017 at 16:16, Rene Rivera <> wrote:
On Thu, Nov 30, 2017 at 6:37 AM, Richard Hodges via Boost <> wrote:

Have you tried getting bjam to correctly build boost for c++14 on iOS for a
specific version of iOS, as a universal library?

I have in the past when I used to do iOS programming for a living.
It's a dark art.

It is.. But the darkness of it is all Apple's fault. 

Have you tried to build for emscripten? (internal rules do not work).

Yes. Have you tried using the built-in b2 emscripten toolset?

Yes. It doesn't work.

I have to compile for 'generic linux' and then cheat on all the include paths an compiler flags. It's a nightmare.

I just checked.. I don't see a reported bug about that. What doesn't work?

Most of the libraries simply refuse to build if you compile with --toolset=emscripten. From memory, bjam/b2 reports errors around ambiguous rule definitions. The error message were cryptic and of course b2/bjam is a dark art in itself with no documentation or examples so I simply did not have time to investigate. In order to get a product out, I compile with --toolset=generic-linux and imbue CCFLAGS and LDFLAGS with all the magic pixie dust that emscripten needs to produce a reasonable static library. Of course I avoid libraries like coroutine etc.

For me, it would be easier if boost simply used a Makefile. At least that has a well-known syntax and interface, with obvious and easy-to-find rules. I have always felt that the very presence of bjam/b2 was an impediment to using boost, and in no way useful to end-users, particularly in cross-compiled environments.

Perhaps this is why I baulk at the idea of building any tool on top of this house of cards.

emscripten:  A standards-compliant c++14 to javascript/webassembly transpiler suite -

My use case is that I need the same source code to run under Linux, Windows, OSX, iOS, Android and in a web page. It turns out that c++ does all of that efficiently, neatly and compatibly.    

-- Rene Rivera
-- Grafik - Don't Assume Anything
-- Robot Dreams -