| package { |
| default_applicable_licenses: ["frameworks_base_core_jni_license"], |
| } |
| |
| // Added automatically by a large-scale-change |
| // See: http://go/android-license-faq |
| license { |
| name: "frameworks_base_core_jni_license", |
| visibility: [":__subpackages__"], |
| license_kinds: [ |
| "SPDX-license-identifier-Apache-2.0", |
| ], |
| license_text: [ |
| "NOTICE", |
| ], |
| } |
| |
| soong_config_module_type { |
| name: "cc_library_shared_for_libandroid_runtime", |
| module_type: "cc_library_shared", |
| config_namespace: "ANDROID", |
| bool_variables: [ |
| "release_binder_death_recipient_weak_from_jni", |
| ], |
| properties: [ |
| "cflags", |
| ], |
| } |
| |
| cc_library_shared_for_libandroid_runtime { |
| name: "libandroid_runtime", |
| host_supported: true, |
| cflags: [ |
| "-Wno-unused-parameter", |
| "-Wno-non-virtual-dtor", |
| "-Wno-maybe-uninitialized", |
| "-Wno-parentheses", |
| |
| "-DGL_GLEXT_PROTOTYPES", |
| "-DEGL_EGLEXT_PROTOTYPES", |
| |
| "-DU_USING_ICU_NAMESPACE=0", |
| |
| "-Wall", |
| "-Werror", |
| "-Wno-error=deprecated-declarations", |
| "-Wunused", |
| "-Wunreachable-code", |
| |
| "-DNAMESPACE_FOR_HASH_FUNCTIONS=farmhash", |
| ], |
| |
| cppflags: ["-Wno-conversion-null"], |
| |
| product_variables: { |
| eng: { |
| cflags: ["-DNO_RESET_STACK_PROTECTOR"], |
| }, |
| }, |
| |
| soong_config_variables: { |
| release_binder_death_recipient_weak_from_jni: { |
| cflags: ["-DBINDER_DEATH_RECIPIENT_WEAK_FROM_JNI"], |
| }, |
| }, |
| |
| cpp_std: "gnu++20", |
| |
| srcs: [ |
| "android_animation_PropertyValuesHolder.cpp", |
| "android_os_SystemClock.cpp", |
| "android_os_SystemProperties.cpp", |
| "android_os_Trace.cpp", |
| "android_text_AndroidCharacter.cpp", |
| "android_util_EventLog.cpp", |
| "android_util_Log.cpp", |
| "android_util_StringBlock.cpp", |
| "android_util_XmlBlock.cpp", |
| "android_util_jar_StrictJarFile.cpp", |
| "com_android_internal_util_VirtualRefBasePtr.cpp", |
| "core_jni_helpers.cpp", |
| ":deviceproductinfoconstants_aidl", |
| ], |
| |
| include_dirs: [ |
| "external/skia/include/private", |
| "frameworks/base/media/jni", |
| "system/media/camera/include", |
| "system/media/private/camera/include", |
| ], |
| |
| shared_libs: [ |
| "libbase", |
| "libcutils", |
| "libharfbuzz_ng", |
| "liblog", |
| "libminikin", |
| "libz", |
| "server_configurable_flags", |
| ], |
| |
| static_libs: [ |
| "libnativehelper_lazy", |
| "libziparchive_for_incfs", |
| "libguiflags", |
| ], |
| |
| export_include_dirs: [ |
| ".", |
| "include", |
| ], |
| |
| defaults: [ |
| "latest_android_media_audio_common_types_cpp_target_shared", |
| ], |
| |
| target: { |
| android: { |
| srcs: [ |
| "AndroidRuntime.cpp", |
| "com_android_internal_content_F2fsUtils.cpp", |
| "com_android_internal_content_NativeLibraryHelper.cpp", |
| "com_google_android_gles_jni_EGLImpl.cpp", |
| "com_google_android_gles_jni_GLImpl.cpp", // TODO: .arm |
| "android_app_Activity.cpp", |
| "android_app_ActivityThread.cpp", |
| "android_app_NativeActivity.cpp", |
| "android_app_admin_SecurityLog.cpp", |
| "android_opengl_EGL14.cpp", |
| "android_opengl_EGL15.cpp", |
| "android_opengl_EGLExt.cpp", |
| "android_opengl_GLES10.cpp", |
| "android_opengl_GLES10Ext.cpp", |
| "android_opengl_GLES11.cpp", |
| "android_opengl_GLES11Ext.cpp", |
| "android_opengl_GLES20.cpp", |
| "android_opengl_GLES30.cpp", |
| "android_opengl_GLES31.cpp", |
| "android_opengl_GLES31Ext.cpp", |
| "android_opengl_GLES32.cpp", |
| "android_database_CursorWindow.cpp", |
| "android_database_SQLiteCommon.cpp", |
| "android_database_SQLiteConnection.cpp", |
| "android_database_SQLiteGlobal.cpp", |
| "android_database_SQLiteDebug.cpp", |
| "android_database_SQLiteRawStatement.cpp", |
| "android_graphics_GraphicBuffer.cpp", |
| "android_graphics_SurfaceTexture.cpp", |
| "android_view_CompositionSamplingListener.cpp", |
| "android_view_DisplayEventReceiver.cpp", |
| "android_view_InputChannel.cpp", |
| "android_view_InputDevice.cpp", |
| "android_view_InputEventReceiver.cpp", |
| "android_view_InputEventSender.cpp", |
| "android_view_InputQueue.cpp", |
| "android_view_KeyCharacterMap.cpp", |
| "android_view_KeyEvent.cpp", |
| "android_view_MotionEvent.cpp", |
| "android_view_MotionPredictor.cpp", |
| "android_view_PointerIcon.cpp", |
| "android_view_Surface.cpp", |
| "android_view_SurfaceControl.cpp", |
| "android_view_SurfaceControlHdrLayerInfoListener.cpp", |
| "android_graphics_BLASTBufferQueue.cpp", |
| "android_view_SurfaceSession.cpp", |
| "android_view_TextureView.cpp", |
| "android_view_TunnelModeEnabledListener.cpp", |
| "android_view_VelocityTracker.cpp", |
| "android_view_VerifiedKeyEvent.cpp", |
| "android_view_VerifiedMotionEvent.cpp", |
| "android_text_Hyphenator.cpp", |
| "android_os_Debug.cpp", |
| "android_os_GraphicsEnvironment.cpp", |
| "android_os_HidlMemory.cpp", |
| "android_os_HidlSupport.cpp", |
| "android_os_HwBinder.cpp", |
| "android_os_HwBlob.cpp", |
| "android_os_HwParcel.cpp", |
| "android_os_HwRemoteBinder.cpp", |
| "android_os_NativeHandle.cpp", |
| "android_os_MemoryFile.cpp", |
| "android_os_MessageQueue.cpp", |
| "android_os_Parcel.cpp", |
| "android_os_PerformanceHintManager.cpp", |
| "android_os_SELinux.cpp", |
| "android_os_ServiceManager.cpp", |
| "android_os_SharedMemory.cpp", |
| "android_os_storage_StorageManager.cpp", |
| "android_os_UEventObserver.cpp", |
| "android_os_VintfObject.cpp", |
| "android_os_VintfRuntimeInfo.cpp", |
| "android_os_incremental_IncrementalManager.cpp", |
| "android_net_LocalSocketImpl.cpp", |
| "android_service_DataLoaderService.cpp", |
| "android_util_AssetManager.cpp", |
| "android_util_Binder.cpp", |
| "android_util_CharsetUtils.cpp", |
| "android_util_MemoryIntArray.cpp", |
| "android_util_Process.cpp", |
| "android_media_audio_common_AidlConversion.cpp", |
| "android_media_AudioDeviceAttributes.cpp", |
| "android_media_AudioEffectDescriptor.cpp", |
| "android_media_AudioRecord.cpp", |
| "android_media_AudioSystem.cpp", |
| "android_media_AudioTrackCallback.cpp", |
| "android_media_AudioTrack.cpp", |
| "android_media_AudioAttributes.cpp", |
| "android_media_AudioProductStrategies.cpp", |
| "android_media_AudioVolumeGroups.cpp", |
| "android_media_AudioVolumeGroupCallback.cpp", |
| "android_media_DeviceCallback.cpp", |
| "android_media_MediaMetricsJNI.cpp", |
| "android_media_MicrophoneInfo.cpp", |
| "android_media_midi.cpp", |
| "android_media_RemoteDisplay.cpp", |
| "android_media_ToneGenerator.cpp", |
| "android_hardware_Camera.cpp", |
| "android_hardware_camera2_CameraMetadata.cpp", |
| "android_hardware_camera2_DngCreator.cpp", |
| "android_hardware_camera2_impl_CameraExtensionJpegProcessor.cpp", |
| "android_hardware_camera2_utils_SurfaceUtils.cpp", |
| "android_hardware_display_DisplayManagerGlobal.cpp", |
| "android_hardware_display_DisplayViewport.cpp", |
| "android_hardware_HardwareBuffer.cpp", |
| "android_hardware_OverlayProperties.cpp", |
| "android_hardware_SensorManager.cpp", |
| "android_hardware_SerialPort.cpp", |
| "android_hardware_SyncFence.cpp", |
| "android_hardware_UsbDevice.cpp", |
| "android_hardware_UsbDeviceConnection.cpp", |
| "android_hardware_UsbRequest.cpp", |
| "android_hardware_location_ActivityRecognitionHardware.cpp", |
| "android_util_FileObserver.cpp", |
| "android/opengl/poly_clip.cpp", // TODO: .arm |
| "android/opengl/util.cpp", |
| "android_ddm_DdmHandleNativeHeap.cpp", |
| "android_backup_BackupDataInput.cpp", |
| "android_backup_BackupDataOutput.cpp", |
| "android_backup_FileBackupHelperBase.cpp", |
| "android_backup_BackupHelperDispatcher.cpp", |
| "android_app_backup_FullBackup.cpp", |
| "android_content_res_ApkAssets.cpp", |
| "android_content_res_ObbScanner.cpp", |
| "android_content_res_Configuration.cpp", |
| "android_content_res_ResourceTimer.cpp", |
| "android_security_Scrypt.cpp", |
| "com_android_internal_content_om_OverlayConfig.cpp", |
| "com_android_internal_content_om_OverlayManagerImpl.cpp", |
| "com_android_internal_net_NetworkUtilsInternal.cpp", |
| "com_android_internal_os_ClassLoaderFactory.cpp", |
| "com_android_internal_os_FuseAppLoop.cpp", |
| "com_android_internal_os_KernelAllocationStats.cpp", |
| "com_android_internal_os_KernelCpuBpfTracking.cpp", |
| "com_android_internal_os_KernelCpuTotalBpfMapReader.cpp", |
| "com_android_internal_os_KernelCpuUidBpfMapReader.cpp", |
| "com_android_internal_os_KernelSingleProcessCpuThreadReader.cpp", |
| "com_android_internal_os_KernelSingleUidTimeReader.cpp", |
| "com_android_internal_os_LongArrayMultiStateCounter.cpp", |
| "com_android_internal_os_LongMultiStateCounter.cpp", |
| "com_android_internal_os_Zygote.cpp", |
| "com_android_internal_os_ZygoteCommandBuffer.cpp", |
| "com_android_internal_os_ZygoteInit.cpp", |
| "com_android_internal_security_VerityUtils.cpp", |
| "hwbinder/EphemeralStorage.cpp", |
| "fd_utils.cpp", |
| "android_hardware_input_InputWindowHandle.cpp", |
| "android_hardware_input_InputApplicationHandle.cpp", |
| "android_window_WindowInfosListener.cpp", |
| "android_window_ScreenCapture.cpp", |
| "jni_common.cpp", |
| ], |
| |
| static_libs: [ |
| "libasync_safe", |
| "libbinderthreadstateutils", |
| "libdmabufinfo", |
| "libgif", |
| "libgui_window_info_static", |
| "libseccomp_policy", |
| "libgrallocusage", |
| "libscrypt_static", |
| "libstatssocket_lazy", |
| "libskia", |
| "libtextclassifier_hash_static", |
| "libexpresslog_jni", |
| ], |
| |
| shared_libs: [ |
| "audioclient-types-aidl-cpp", |
| "audioflinger-aidl-cpp", |
| "audiopolicy-types-aidl-cpp", |
| "spatializer-aidl-cpp", |
| "av-types-aidl-cpp", |
| "android.hardware.camera.device@3.2", |
| "libandroid_net", |
| "libbattery", |
| "libnetdutils", |
| "libmemtrack", |
| "libandroidfw", |
| "libappfuse", |
| "libcrypto", |
| "libcutils", |
| "libdebuggerd_client", |
| "libutils", |
| "libbinder", |
| "libbinder_ndk", |
| "libui", |
| "libgraphicsenv", |
| "libgui", |
| "libhwui", |
| "libmediandk", |
| "libpermission", |
| "libPlatformProperties", |
| "libsensor", |
| "libinput", |
| "libicu", |
| "libcamera_client", |
| "libcamera_metadata", |
| "libprocinfo", |
| "libsqlite", |
| "libEGL", |
| "libGLESv1_CM", |
| "libGLESv2", |
| "libGLESv3", |
| "libincfs", |
| "libdataloader", |
| "libvulkan", |
| "libETC1", |
| "libjpeg", |
| "libhardware", |
| "libhardware_legacy", |
| "libselinux", |
| "libmedia", |
| "libmedia_helper", |
| "libmediametrics", |
| "libmeminfo", |
| "libaudioclient", |
| "libaudioclient_aidl_conversion", |
| "libaudiofoundation", |
| "libaudiopolicy", |
| "libusbhost", |
| "libpdfium", |
| "libimg_utils", |
| "libnetd_client", |
| "libprocessgroup", |
| "libnativebridge_lazy", |
| "libnativeloader_lazy", |
| "libmemunreachable", |
| "libhidlbase", |
| "libvintf", |
| "libnativedisplay", |
| "libnativewindow", |
| "libdl", |
| "libdl_android", |
| "libtimeinstate", |
| "server_configurable_flags", |
| "libimage_io", |
| "libultrahdr", |
| ], |
| export_shared_lib_headers: [ |
| // our headers include libnativewindow's public headers |
| "libnativewindow", |
| ], |
| export_static_lib_headers: [ |
| // AndroidRuntime.h depends on nativehelper/jni.h |
| "libnativehelper_lazy", |
| ], |
| header_libs: [ |
| "bionic_libc_platform_headers", |
| "dnsproxyd_protocol_headers", |
| "flatbuffer_headers", |
| "libtextclassifier_hash_headers", |
| "tensorflow_headers", |
| ], |
| runtime_libs: [ |
| "libidmap2", |
| ], |
| }, |
| host: { |
| cflags: [ |
| "-Wno-unused-const-variable", |
| "-Wno-unused-function", |
| ], |
| srcs: [ |
| "LayoutlibLoader.cpp", |
| ], |
| include_dirs: [ |
| "external/vulkan-headers/include", |
| "frameworks/native/libs/math/include", |
| "frameworks/native/libs/nativebase/include", |
| "frameworks/native/libs/nativewindow/include", |
| ], |
| shared_libs: [ |
| "libicui18n", |
| "libicuuc", |
| ], |
| static_libs: [ |
| "libandroidfw", |
| "libbinary_parse", |
| "libdng_sdk", |
| "libft2", |
| "libhwui", |
| "libimage_type_recognition", |
| "libjpeg", |
| "libpiex", |
| "libpng", |
| "libtiff_directory", |
| "libui-types", |
| "libutils", |
| "libwebp-decode", |
| "libwebp-encode", |
| "libwuffs_mirror_release_c", |
| "libimage_io", |
| "libjpegdecoder", |
| "libjpegencoder", |
| "libultrahdr", |
| ], |
| }, |
| host_linux: { |
| srcs: [ |
| "android_content_res_ApkAssets.cpp", |
| "android_database_CursorWindow.cpp", |
| "android_database_SQLiteCommon.cpp", |
| "android_database_SQLiteConnection.cpp", |
| "android_database_SQLiteGlobal.cpp", |
| "android_database_SQLiteDebug.cpp", |
| "android_hardware_input_InputApplicationHandle.cpp", |
| "android_os_MessageQueue.cpp", |
| "android_os_Parcel.cpp", |
| |
| "android_view_KeyCharacterMap.cpp", |
| "android_view_KeyEvent.cpp", |
| "android_view_InputChannel.cpp", |
| "android_view_InputDevice.cpp", |
| "android_view_InputEventReceiver.cpp", |
| "android_view_InputEventSender.cpp", |
| "android_view_MotionEvent.cpp", |
| "android_view_VelocityTracker.cpp", |
| "android_view_VerifiedKeyEvent.cpp", |
| "android_view_VerifiedMotionEvent.cpp", |
| |
| "android_util_AssetManager.cpp", |
| "android_util_Binder.cpp", |
| |
| "android_util_FileObserver.cpp", |
| ], |
| static_libs: [ |
| "libinput", |
| "libbinderthreadstateutils", |
| "libsqlite", |
| "libgui_window_info_static", |
| ], |
| shared_libs: [ |
| // libbinder needs to be shared since it has global state |
| // (e.g. gDefaultServiceManager) |
| "libbinder", |
| "libhidlbase", // libhwbinder is in here |
| "libvintf", |
| ], |
| }, |
| }, |
| |
| // Workaround Clang LTO crash. |
| lto: { |
| never: true, |
| }, |
| } |