Make interop tool generate one self-contained .kt.bc
This commit is contained in:
committed by
SvyatoslavScherbina
parent
f564bd7707
commit
ebced0aa2d
+19
@@ -10,6 +10,8 @@ fi
|
||||
declare -a java_args
|
||||
declare -a interop_args
|
||||
|
||||
OUTPUT_FILE_NAME=nativelib.kt.bc
|
||||
|
||||
while [ $# -gt 0 ]; do
|
||||
case "$1" in
|
||||
-D*)
|
||||
@@ -20,6 +22,10 @@ while [ $# -gt 0 ]; do
|
||||
java_args=("${java_args[@]}" "${1:2}")
|
||||
shift
|
||||
;;
|
||||
-o:*)
|
||||
OUTPUT_FILE_NAME="${1:3}"
|
||||
shift
|
||||
;;
|
||||
*)
|
||||
interop_args=("${interop_args[@]}" "$1")
|
||||
shift
|
||||
@@ -54,11 +60,24 @@ INTEROP_TOOL=org.jetbrains.kotlin.native.interop.gen.jvm.MainKt
|
||||
|
||||
FLAVOR_ARG=-flavor:native
|
||||
|
||||
GENERATED_DIR="$OUTPUT_FILE_NAME-build/kotlin"
|
||||
GENERATED_ARG="-generated:$GENERATED_DIR"
|
||||
NATIVES_DIR="$OUTPUT_FILE_NAME-build/natives"
|
||||
NATIVES_ARG="-natives:$NATIVES_DIR"
|
||||
CSTUBSNAME=cstubs
|
||||
CSTUBSNAME_ARG="-cstubsname:$CSTUBSNAME"
|
||||
|
||||
LIBCLANG_DISABLE_CRASH_RECOVERY=1 \
|
||||
LD_LIBRARY_PATH=${NATIVE_LIB} \
|
||||
$JAVACMD $JAVA_OPTS ${java_args[@]} \
|
||||
-cp $INTEROP_CLASSPATH \
|
||||
$INTEROP_TOOL \
|
||||
"$GENERATED_ARG" "$NATIVES_ARG" "$CSTUBSNAME_ARG" \
|
||||
$FLAVOR_ARG "${interop_args[@]}" \
|
||||
|| exit 1
|
||||
|
||||
# Stubs may be rather big, so we may need more heap space.
|
||||
XMX_ARG=-J-Xmx3G
|
||||
|
||||
$KONAN_HOME/bin/konanc $XMX_ARG "$GENERATED_DIR" -nolink -nativelibrary "$NATIVES_DIR/$CSTUBSNAME.bc" \
|
||||
-o "$OUTPUT_FILE_NAME"
|
||||
|
||||
Reference in New Issue
Block a user