X-Git-Url: http://git.bitcoin.ninja/index.cgi?a=blobdiff_plain;f=genbindings.sh;h=c7a06d5e18a53554e3b2e166525ed05ef7d2ea44;hb=9bd1b30bd6a039a220c473ee054002befa013f32;hp=741f9de1f103fab385fdeba6a4d931c51333253a;hpb=5347510e990d410512ff0730c89e4fdaf6c9bdd2;p=ldk-java diff --git a/genbindings.sh b/genbindings.sh index 741f9de1..c7a06d5e 100755 --- a/genbindings.sh +++ b/genbindings.sh @@ -85,7 +85,7 @@ if [ "$3" = "true" ]; then $COMPILE -o liblightningjni_debug$LDK_TARGET_SUFFIX.so -g -fsanitize=address -shared-libasan -rdynamic -I"$1"/lightning-c-bindings/include/ $2 src/main/jni/bindings.c "$1"/lightning-c-bindings/target/$LDK_TARGET/debug/libldk.a -lm else LDK_LIB="$1"/lightning-c-bindings/target/$LDK_TARGET/release/libldk.a - if [ "$IS_MAC" = "false" ]; then + if [ "$IS_MAC" = "false" -a "$4" = "false" ]; then COMPILE="$COMPILE -Wl,--version-script=libcode.version -fuse-ld=lld" # __cxa_thread_atexit_impl is used to more effeciently cleanup per-thread local storage by rust libstd. # However, it is not available on glibc versions 2.17 or earlier, and rust libstd has a null-check and @@ -128,7 +128,7 @@ else LDK_LIB="tmp/libldk.bc tmp/libldk.a" fi $COMPILE -o liblightningjni_release$LDK_TARGET_SUFFIX.so -flto -O3 -I"$1"/lightning-c-bindings/include/ $2 src/main/jni/bindings.c $LDK_LIB - if [ "$IS_MAC" = "false" ]; then + if [ "$IS_MAC" = "false" -a "$4" = "false" ]; then GLIBC_SYMBS="$(objdump -T liblightningjni_release$LDK_TARGET_SUFFIX.so | grep GLIBC_ | grep -v "GLIBC_2\.2\." | grep -v "GLIBC_2\.3\(\.\| \)" | grep -v "GLIBC_2.\(14\|17\) " || echo)" if [ "$GLIBC_SYMBS" != "" ]; then echo "Unexpected glibc version dependency! Some users need glibc 2.17 support, symbols for newer glibcs cannot be included."