Hi, We are building a rather large project with emscripten using cmake. It's all pretty good, but I have one niggle about the build process. Our application is split up into libraries with about thirty to fifty object files each, and some of the low-level ones are OS wrappers, providing an abstraction of Windows/Unix/Mac behaviour, and now we've added emscripten as an OS (our AppLoop class for example needs its own AppLoopImpl for emscripten, to sit alongside the implementations using select() on Unix, CFRunLoop on Mac, and MsgWaitForMultipleObjects on Win).
Unfortunately, it doesn't seem to be possible to add JS libraries to a ".a" archive, unless I'm invoking it incorrectly? We have to pass "--js-library" for each one to the linker at the end, but it's awkward propagating all the filenames from the cmake subprojects to the final link line. Would it be possible for emar to just stuff the JS files in to our static libraries alongside the bitcode objects? The linker can then pull them out at the other end of the process and add them to its list of additional libraries. The emar wrapper is just python, easy to modify without having to delve into the internals of anything, so it can do anything it likes to pretend that .js files are just pre-compiled objects of a special form that can indeed be added to an archive. We could use ".pre.js" and ".post.js" as the extensions to indicate preamble and postable code. That would also greatly simply the dependency tracking in the current cmake macros emscripten supplies (em_link_js_library), which uses some odd hacks to get incremental builds to work. This is just an idea; I haven't quite thought whether or not it would work. Nick -- You received this message because you are subscribed to the Google Groups "emscripten-discuss" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.
