vmprof / vmprof-python

vmprof - a statistical program profiler
https://vmprof.readthedocs.io
Other
432 stars 55 forks source link

Support building without embedded libbacktrace #248

Open jhance opened 2 years ago

jhance commented 2 years ago

Our python setup requires cross compiling, which isn't working because of ./configure running within setup.py. I have locally patched out the embedded libbacktrace and replaced it with link opts to a cross compiled libbacktrace. It would be nice to not need the patch; perhaps you would accept an patch to have an environment var that drops the libbacktrace embed stuff (and maybe append -lbacktrace)?

I would like to know whether you would accept such a patch before submitting a PR.

mattip commented 2 years ago

Do you mean you are using the libbacktrace sources in this repo to build a cross compiled version without configure? Could we adopt the direct call to the compiler/linker for all the builds without configure?

jhance commented 2 years ago

No, I actually built it from upstream source and linked it statically in with some flag (iirc --extra-link-objects or something). In my patch to vmprof-python I removed all traces of the libbacktrace embed from setup.py as I no longer need the embedded copy.

My specific use case is really just that I'm trying to target a newer glibc than is on the system (so ./configure bails when it realizes it can't run the binaries it compiles)

Not running configure is not really feasible in the general case (in this case am building libbacktrace with a preconfigured output for config.h and so forth to suit the cross compilation.

mattip commented 2 years ago

The change would be to have a configuration option to use the native libbacktrace ?