The libc.symbols file is the output of:

    llvm-nm -defined-only -extern-only ~/.emscripten_cache/libc.bc

The characters preceding the function name indicate what type of symbol it
is. 'D' is data section symbol, 'W' is weak, 'T' is text symbol, etc. See
'man nm' for more details.

You'll want to rebuild libc.bc before running llvm-nm so that you get the
new symbols.

The symbols files are used by the linking process within emscripten to tell
it what libraries to link against (like libc, libcextra, libcxx and
libcxxabi) when certain symbols are needed.

I'm guessing that you found out how to include new .c files into the build.
(Adding them to the code and then editing tools/system_libs.py)

 - Bruce



On Fri, Apr 18, 2014 at 8:36 PM, Soeren Balko <[email protected]> wrote:

> By looking into some examples from the bundled musl clib, I was (kind of)
> able to reverse-engineer what I had to do in order to add more native
> functions to it. However, I may still have missed something. In particular,
> I do not quite understand the lines in the symbols files (libc.symbols
> etc.), where the function name is preceded by a single, uppercase character
> (T, W, D, etc.). This may be a stupid question, but what do these
> characters stand for and how do they impact how the functions are used by
> the emscripten toolchain. I figured that "W" may stand for "weak", no?
>
> Soeren
>
> --
> 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.
>

-- 
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.

Reply via email to