* Fix rua on macOS Signed-off-by: Molly Sophia <mollysophia379@gmail.com> * Release allocate resource * Formatting * feat: package native lib into jar; Signed-off-by: LinHeLurking <LinHe.Lurking@gmail.com> * fix: multiple platform gradle build; Signed-off-by: LinHeLurking <LinHe.Lurking@gmail.com> * fix: linux build; Signed-off-by: LinHe <LinHe.Lurking@gmail.com> * Update command to use windows cmd --------- Signed-off-by: Molly Sophia <mollysophia379@gmail.com> Signed-off-by: LinHeLurking <LinHe.Lurking@gmail.com> Signed-off-by: LinHe <LinHe.Lurking@gmail.com> Co-authored-by: cenkang <cenkang@apical.com.cn> Co-authored-by: Molly Sophia <mollysophia379@gmail.com> Co-authored-by: LinHeLurking <LinHe.Lurking@gmail.com>
51 lines
1.3 KiB
C
51 lines
1.3 KiB
C
#include "ruapu_binding.h"
|
|
#include <stdio.h>
|
|
|
|
#define RUAPU_IMPLEMENTATION
|
|
#include "ruapu.h"
|
|
|
|
#ifdef __cplusplus
|
|
extern "C"
|
|
{
|
|
#endif
|
|
|
|
JNIEXPORT void JNICALL Java_ruapu_Ruapu_init(JNIEnv *env, jclass jcls)
|
|
{
|
|
ruapu_init();
|
|
}
|
|
|
|
JNIEXPORT jint JNICALL Java_ruapu_Ruapu_supports(JNIEnv *env, jclass jcls, jstring j_isa)
|
|
{
|
|
const char *isa = (*env)->GetStringUTFChars(env, j_isa, NULL);
|
|
int supported = ruapu_supports(isa);
|
|
(*env)->ReleaseStringUTFChars(env, j_isa, isa);
|
|
|
|
return supported;
|
|
}
|
|
|
|
JNIEXPORT jobjectArray JNICALL Java_ruapu_Ruapu_rua(JNIEnv *env, jclass jcls)
|
|
{
|
|
const char *const *supported = ruapu_rua();
|
|
int size = 0U;
|
|
jclass jStringcls = (*env)->FindClass(env, "java/lang/String");
|
|
while (*supported)
|
|
{
|
|
supported++;
|
|
size++;
|
|
}
|
|
|
|
jobjectArray isa_array = (*env)->NewObjectArray(env, size, jStringcls, NULL);
|
|
int total_idx = 0;
|
|
supported = ruapu_rua();
|
|
while (*supported)
|
|
{
|
|
jstring str_isa = (*env)->NewStringUTF(env, *supported++);
|
|
(*env)->SetObjectArrayElement(env, isa_array, total_idx++, str_isa);
|
|
}
|
|
return isa_array;
|
|
}
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|