Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 84d38149 authored by Jerome Gaillard's avatar Jerome Gaillard
Browse files

Build more native code for Windows

Build android_os_Trace.cpp, android_util_StringBlock.cpp and
android_util_XmlBlock.cpp on Windows as well.

Bug: 117921091
Test: layoutlib tests
Change-Id: I9c676aa1f2fb3ba6b78b1a6cbd9c8c25cfab0958
parent df801ee4
Loading
Loading
Loading
Loading
+3 −6
Original line number Diff line number Diff line
@@ -35,8 +35,11 @@ cc_library_shared {
        "android_animation_PropertyValuesHolder.cpp",
        "android_os_SystemClock.cpp",
        "android_os_SystemProperties.cpp",
        "android_os_Trace.cpp",
        "android_util_EventLog.cpp",
        "android_util_Log.cpp",
        "android_util_StringBlock.cpp",
        "android_util_XmlBlock.cpp",
        "com_android_internal_util_VirtualRefBasePtr.cpp",
        "com_android_internal_view_animation_NativeInterpolatorFactoryHelper.cpp",
    ],
@@ -138,7 +141,6 @@ cc_library_shared {
                "android_os_SELinux.cpp",
                "android_os_SharedMemory.cpp",
                "android_os_storage_StorageManager.cpp",
                "android_os_Trace.cpp",
                "android_os_UEventObserver.cpp",
                "android_os_VintfObject.cpp",
                "android_os_VintfRuntimeInfo.cpp",
@@ -150,8 +152,6 @@ cc_library_shared {
                "android_util_Binder.cpp",
                "android_util_MemoryIntArray.cpp",
                "android_util_Process.cpp",
                "android_util_StringBlock.cpp",
                "android_util_XmlBlock.cpp",
                "android_util_jar_StrictJarFile.cpp",
                "android_media_AudioDeviceAddress.cpp",
                "android_media_AudioEffectDescriptor.cpp",
@@ -311,11 +311,8 @@ cc_library_shared {
            srcs: [
                "android_content_res_ApkAssets.cpp",
                "android_os_MessageQueue.cpp",
                "android_os_Trace.cpp",
                "android_util_AssetManager.cpp",
                "android_util_FileObserver.cpp",
                "android_util_StringBlock.cpp",
                "android_util_XmlBlock.cpp",
            ],
        },
    },
+55 −49
Original line number Diff line number Diff line
@@ -91,21 +91,24 @@ struct RegJNIRec {
// Map of all possible class names to register to their corresponding JNI registration function pointer
// The actual list of registered classes will be determined at runtime via the 'native_classes' System property
static const std::unordered_map<std::string, RegJNIRec> gRegJNIMap = {
    {"android.animation.PropertyValuesHolder", REG_JNI(register_android_animation_PropertyValuesHolder)},
        {"android.animation.PropertyValuesHolder",
         REG_JNI(register_android_animation_PropertyValuesHolder)},
#ifdef __linux__
    {"android.content.AssetManager", REG_JNI(register_android_content_AssetManager)},
    {"android.content.StringBlock", REG_JNI(register_android_content_StringBlock)},
    {"android.content.XmlBlock", REG_JNI(register_android_content_XmlBlock)},
        {"android.content.res.ApkAssets", REG_JNI(register_android_content_res_ApkAssets)},
        {"android.content.res.AssetManager", REG_JNI(register_android_content_AssetManager)},
#endif
        {"android.content.res.StringBlock", REG_JNI(register_android_content_StringBlock)},
        {"android.content.res.XmlBlock", REG_JNI(register_android_content_XmlBlock)},
        {"android.graphics.Bitmap", REG_JNI(register_android_graphics_Bitmap)},
        {"android.graphics.BitmapFactory", REG_JNI(register_android_graphics_BitmapFactory)},
    {"android.graphics.ByteBufferStreamAdaptor", REG_JNI(register_android_graphics_ByteBufferStreamAdaptor)},
        {"android.graphics.ByteBufferStreamAdaptor",
         REG_JNI(register_android_graphics_ByteBufferStreamAdaptor)},
        {"android.graphics.Canvas", REG_JNI(register_android_graphics_Canvas)},
        {"android.graphics.RenderNode", REG_JNI(register_android_view_RenderNode)},
        {"android.graphics.ColorFilter", REG_JNI(register_android_graphics_ColorFilter)},
        {"android.graphics.ColorSpace", REG_JNI(register_android_graphics_ColorSpace)},
    {"android.graphics.CreateJavaOutputStreamAdaptor", REG_JNI(register_android_graphics_CreateJavaOutputStreamAdaptor)},
        {"android.graphics.CreateJavaOutputStreamAdaptor",
         REG_JNI(register_android_graphics_CreateJavaOutputStreamAdaptor)},
        {"android.graphics.DrawFilter", REG_JNI(register_android_graphics_DrawFilter)},
        {"android.graphics.FontFamily", REG_JNI(register_android_graphics_FontFamily)},
        {"android.graphics.Graphics", REG_JNI(register_android_graphics_Graphics)},
@@ -122,26 +125,29 @@ static const std::unordered_map<std::string, RegJNIRec> gRegJNIMap = {
        {"android.graphics.Region", REG_JNI(register_android_graphics_Region)},
        {"android.graphics.Shader", REG_JNI(register_android_graphics_Shader)},
        {"android.graphics.Typeface", REG_JNI(register_android_graphics_Typeface)},
    {"android.graphics.drawable.AnimatedVectorDrawable", REG_JNI(register_android_graphics_drawable_AnimatedVectorDrawable)},
    {"android.graphics.drawable.VectorDrawable", REG_JNI(register_android_graphics_drawable_VectorDrawable)},
        {"android.graphics.drawable.AnimatedVectorDrawable",
         REG_JNI(register_android_graphics_drawable_AnimatedVectorDrawable)},
        {"android.graphics.drawable.VectorDrawable",
         REG_JNI(register_android_graphics_drawable_VectorDrawable)},
        {"android.graphics.fonts.Font", REG_JNI(register_android_graphics_fonts_Font)},
        {"android.graphics.fonts.FontFamily", REG_JNI(register_android_graphics_fonts_FontFamily)},
        {"android.graphics.text.LineBreaker", REG_JNI(register_android_graphics_text_LineBreaker)},
    {"android.graphics.text.MeasuredText", REG_JNI(register_android_graphics_text_MeasuredText)},
        {"android.graphics.text.MeasuredText",
         REG_JNI(register_android_graphics_text_MeasuredText)},
#ifdef __linux__
        {"android.os.FileObserver", REG_JNI(register_android_os_FileObserver)},
        {"android.os.MessageQueue", REG_JNI(register_android_os_MessageQueue)},
#endif
        {"android.os.SystemClock", REG_JNI(register_android_os_SystemClock)},
        {"android.os.SystemProperties", REG_JNI(register_android_os_SystemProperties)},
#ifdef __linux__
        {"android.os.Trace", REG_JNI(register_android_os_Trace)},
#endif
        {"android.util.EventLog", REG_JNI(register_android_util_EventLog)},
        {"android.util.Log", REG_JNI(register_android_util_Log)},
        {"android.util.PathParser", REG_JNI(register_android_util_PathParser)},
    {"com.android.internal.util.VirtualRefBasePtr", REG_JNI(register_com_android_internal_util_VirtualRefBasePtr)},
    {"com.android.internal.view.animation.NativeInterpolatorFactoryHelper", REG_JNI(register_com_android_internal_view_animation_NativeInterpolatorFactoryHelper)},
        {"com.android.internal.util.VirtualRefBasePtr",
         REG_JNI(register_com_android_internal_util_VirtualRefBasePtr)},
        {"com.android.internal.view.animation.NativeInterpolatorFactoryHelper",
         REG_JNI(register_com_android_internal_view_animation_NativeInterpolatorFactoryHelper)},
};
// Vector to store the names of classes that need delegates of their native methods
static vector<string> classesToDelegate;
@@ -159,7 +165,7 @@ static int register_jni_procs(const std::unordered_map<std::string, RegJNIRec>&

int AndroidRuntime::registerNativeMethods(JNIEnv* env,
        const char* className, const JNINativeMethod* gMethods, int numMethods) {

    cout << "Register for class: " << className << endl;
    string classNameString = string(className);
    if (find(classesToDelegate.begin(), classesToDelegate.end(), classNameString)
            != classesToDelegate.end()) {