skip biglink for jb 4.3#258
Conversation
|
Fixes #232 (for JB 4.3+). Still testing it, but it seems like it's working. I'm using After some more testing, I'll make a cleanup commit to finish this off. |
|
Good work here. I think the option could be changed to be something more generic, such as: --no-biglink or something like that. The description can mention the JB optimization. But this can be used anytime, biglink is just a prevention for a possible issue, but avoiding it could be done at any time. Could you change the option name and merge it ? :) |
|
Will do!
|
bionic in Android Jelly Bean 4.3+ dynamically allocates soinfo structs (https://android.googlesource.com/platform/bionic/+/0be1819b22b33fbedcb150f96a196ed096abe2fc%5E1..0be1819b22b33fbedcb150f96a196ed096abe2fc/). This means it is no longer subject to the dlopen limit.
I added a
-joption to distribute.sh which bypasses liblink and biglink in order to distribute the real.soextension modules. liblink is skipped by re-exporting$LIBLINKto provide the real linker, so no recipes need to be changed.This should make it easier to debug issues with extension modules. Currently, a bad module can corrupt
libpymodules.so, which means the only error provided will be_event.so is too small to be an ELF executable, regardless of which module caused the issue.