1package { 2 default_applicable_licenses: ["frameworks_base_core_jni_license"], 3} 4 5// Added automatically by a large-scale-change 6// See: http://go/android-license-faq 7license { 8 name: "frameworks_base_core_jni_license", 9 visibility: [":__subpackages__"], 10 license_kinds: [ 11 "SPDX-license-identifier-Apache-2.0", 12 ], 13 license_text: [ 14 "NOTICE", 15 ], 16} 17 18soong_config_module_type { 19 name: "cc_library_shared_for_libandroid_runtime", 20 module_type: "cc_library_shared", 21 config_namespace: "ANDROID", 22 bool_variables: [ 23 "release_binder_death_recipient_weak_from_jni", 24 "release_package_libandroid_runtime_punch_holes", 25 ], 26 properties: [ 27 "cflags", 28 ], 29} 30 31cc_library_shared_for_libandroid_runtime { 32 name: "libandroid_runtime", 33 host_supported: true, 34 cflags: [ 35 "-Wno-unused-parameter", 36 "-Wno-non-virtual-dtor", 37 "-Wno-maybe-uninitialized", 38 "-Wno-parentheses", 39 40 "-DGL_GLEXT_PROTOTYPES", 41 "-DEGL_EGLEXT_PROTOTYPES", 42 43 "-DU_USING_ICU_NAMESPACE=0", 44 45 "-Wall", 46 "-Werror", 47 "-Wextra", 48 "-Wthread-safety", 49 "-Wno-error=deprecated-declarations", 50 "-Wno-unused-parameter", 51 "-Wunused", 52 "-Wunreachable-code", 53 ], 54 55 cppflags: ["-Wno-conversion-null"], 56 57 product_variables: { 58 eng: { 59 cflags: ["-DNO_RESET_STACK_PROTECTOR"], 60 }, 61 }, 62 63 soong_config_variables: { 64 release_binder_death_recipient_weak_from_jni: { 65 cflags: ["-DBINDER_DEATH_RECIPIENT_WEAK_FROM_JNI"], 66 }, 67 release_package_libandroid_runtime_punch_holes: { 68 cflags: ["-DENABLE_PUNCH_HOLES"], 69 }, 70 }, 71 72 cpp_std: "gnu++20", 73 74 srcs: [ 75 "android_animation_PropertyValuesHolder.cpp", 76 "android_content_res_ApkAssets.cpp", 77 "android_os_SystemClock.cpp", 78 "android_os_SystemProperties.cpp", 79 "android_text_AndroidCharacter.cpp", 80 "android_text_Hyphenator.cpp", 81 "android_util_AssetManager.cpp", 82 "android_util_EventLog.cpp", 83 "android_util_Log.cpp", 84 "android_util_StringBlock.cpp", 85 "android_util_XmlBlock.cpp", 86 "android_util_jar_StrictJarFile.cpp", 87 "android_view_InputDevice.cpp", 88 "android_view_KeyCharacterMap.cpp", 89 "android_view_KeyEvent.cpp", 90 "android_view_MotionEvent.cpp", 91 "android_view_Surface.cpp", 92 "android_view_VelocityTracker.cpp", 93 "android_view_VerifiedKeyEvent.cpp", 94 "android_view_VerifiedMotionEvent.cpp", 95 "com_android_internal_util_VirtualRefBasePtr.cpp", 96 "core_jni_helpers.cpp", 97 ":deviceproductinfoconstants_aidl", 98 ], 99 100 include_dirs: [ 101 "external/skia/include/private", 102 "frameworks/base/media/jni", 103 "system/media/camera/include", 104 "system/media/private/camera/include", 105 ], 106 107 static_libs: [ 108 "libziparchive_for_incfs", 109 "libguiflags", 110 ], 111 112 export_include_dirs: [ 113 ".", 114 "include", 115 ], 116 117 defaults: [ 118 "aconfig_lib_cc_shared_link.defaults", 119 "latest_android_media_audio_common_types_cpp_target_shared", 120 ], 121 122 target: { 123 android: { 124 srcs: [ 125 "AndroidRuntime.cpp", 126 "com_android_internal_content_F2fsUtils.cpp", 127 "com_android_internal_content_FileSystemUtils.cpp", 128 "com_android_internal_content_NativeLibraryHelper.cpp", 129 "com_google_android_gles_jni_EGLImpl.cpp", 130 "com_google_android_gles_jni_GLImpl.cpp", // TODO: .arm 131 "android_app_Activity.cpp", 132 "android_app_ActivityThread.cpp", 133 "android_app_NativeActivity.cpp", 134 "android_app_admin_SecurityLog.cpp", 135 "android_opengl_EGL14.cpp", 136 "android_opengl_EGL15.cpp", 137 "android_opengl_EGLExt.cpp", 138 "android_opengl_GLES10.cpp", 139 "android_opengl_GLES10Ext.cpp", 140 "android_opengl_GLES11.cpp", 141 "android_opengl_GLES11Ext.cpp", 142 "android_opengl_GLES20.cpp", 143 "android_opengl_GLES30.cpp", 144 "android_opengl_GLES31.cpp", 145 "android_opengl_GLES31Ext.cpp", 146 "android_opengl_GLES32.cpp", 147 "android_database_CursorWindow.cpp", 148 "android_database_SQLiteCommon.cpp", 149 "android_database_SQLiteConnection.cpp", 150 "android_database_SQLiteGlobal.cpp", 151 "android_database_SQLiteDebug.cpp", 152 "android_database_SQLiteRawStatement.cpp", 153 "android_graphics_GraphicBuffer.cpp", 154 "android_graphics_SurfaceTexture.cpp", 155 "android_view_CompositionSamplingListener.cpp", 156 "android_view_DisplayEventReceiver.cpp", 157 "android_view_InputChannel.cpp", 158 "android_view_InputEventReceiver.cpp", 159 "android_view_InputEventSender.cpp", 160 "android_view_InputQueue.cpp", 161 "android_view_MotionPredictor.cpp", 162 "android_view_PointerIcon.cpp", 163 "android_view_SurfaceControl.cpp", 164 "android_view_SurfaceControlActivePictureListener.cpp", 165 "android_view_SurfaceControlHdrLayerInfoListener.cpp", 166 "android_view_WindowManagerGlobal.cpp", 167 "android_graphics_BLASTBufferQueue.cpp", 168 "android_view_SurfaceSession.cpp", 169 "android_view_TextureView.cpp", 170 "android_view_TunnelModeEnabledListener.cpp", 171 "android_os_Debug.cpp", 172 "android_os_GraphicsEnvironment.cpp", 173 "android_os_HidlMemory.cpp", 174 "android_os_HidlSupport.cpp", 175 "android_os_HwBinder.cpp", 176 "android_os_HwBlob.cpp", 177 "android_os_HwParcel.cpp", 178 "android_os_HwRemoteBinder.cpp", 179 "android_os_NativeHandle.cpp", 180 "android_os_MemoryFile.cpp", 181 "android_os_MessageQueue.cpp", 182 "android_os_Parcel.cpp", 183 "android_os_PerformanceHintManager.cpp", 184 "android_os_SELinux.cpp", 185 "android_os_ServiceManager.cpp", 186 "android_os_ServiceManagerNative.cpp", 187 "android_os_SharedMemory.cpp", 188 "android_os_storage_StorageManager.cpp", 189 "android_os_Trace.cpp", 190 "android_os_UEventObserver.cpp", 191 "android_os_incremental_IncrementalManager.cpp", 192 "android_net_LocalSocketImpl.cpp", 193 "android_service_DataLoaderService.cpp", 194 "android_util_Binder.cpp", 195 "android_util_CharsetUtils.cpp", 196 "android_util_MemoryIntArray.cpp", 197 "android_util_Process.cpp", 198 "android_media_audio_common_AidlConversion.cpp", 199 "android_media_AudioDeviceAttributes.cpp", 200 "android_media_AudioEffectDescriptor.cpp", 201 "android_media_AudioRecord.cpp", 202 "android_media_AudioSystem.cpp", 203 "android_media_AudioTrackCallback.cpp", 204 "android_media_AudioTrack.cpp", 205 "android_media_AudioAttributes.cpp", 206 "android_media_AudioProductStrategies.cpp", 207 "android_media_AudioVolumeGroups.cpp", 208 "android_media_AudioVolumeGroupCallback.cpp", 209 "android_media_DeviceCallback.cpp", 210 "android_media_MediaMetricsJNI.cpp", 211 "android_media_MicrophoneInfo.cpp", 212 "android_media_midi.cpp", 213 "android_media_RemoteDisplay.cpp", 214 "android_media_ToneGenerator.cpp", 215 "android_hardware_Camera.cpp", 216 "android_hardware_camera2_CameraMetadata.cpp", 217 "android_hardware_camera2_CameraDevice.cpp", 218 "android_hardware_camera2_DngCreator.cpp", 219 "android_hardware_camera2_impl_CameraExtensionJpegProcessor.cpp", 220 "android_hardware_camera2_utils_SurfaceUtils.cpp", 221 "android_hardware_display_DisplayManagerGlobal.cpp", 222 "android_hardware_display_DisplayViewport.cpp", 223 "android_hardware_display_DisplayTopology.cpp", 224 "android_hardware_HardwareBuffer.cpp", 225 "android_hardware_OverlayProperties.cpp", 226 "android_hardware_SensorManager.cpp", 227 "android_hardware_SerialPort.cpp", 228 "android_hardware_SyncFence.cpp", 229 "android_hardware_UsbDevice.cpp", 230 "android_hardware_UsbDeviceConnection.cpp", 231 "android_hardware_UsbRequest.cpp", 232 "android_hardware_location_ActivityRecognitionHardware.cpp", 233 "android_util_FileObserver.cpp", 234 "android/opengl/poly_clip.cpp", // TODO: .arm 235 "android/opengl/util.cpp", 236 "android_ddm_DdmHandleNativeHeap.cpp", 237 "android_backup_BackupDataInput.cpp", 238 "android_backup_BackupDataOutput.cpp", 239 "android_backup_FileBackupHelperBase.cpp", 240 "android_backup_BackupHelperDispatcher.cpp", 241 "android_app_PropertyInvalidatedCache.cpp", 242 "android_app_backup_FullBackup.cpp", 243 "android_content_res_ObbScanner.cpp", 244 "android_content_res_Configuration.cpp", 245 "android_content_res_ResourceTimer.cpp", 246 "android_security_Scrypt.cpp", 247 "com_android_internal_content_om_OverlayConfig.cpp", 248 "com_android_internal_content_om_OverlayManagerImpl.cpp", 249 "com_android_internal_net_NetworkUtilsInternal.cpp", 250 "com_android_internal_os_ApplicationSharedMemory.cpp", 251 "com_android_internal_os_ClassLoaderFactory.cpp", 252 "com_android_internal_os_DebugStore.cpp", 253 "com_android_internal_os_FuseAppLoop.cpp", 254 "com_android_internal_os_KernelAllocationStats.cpp", 255 "com_android_internal_os_KernelCpuBpfTracking.cpp", 256 "com_android_internal_os_KernelCpuTotalBpfMapReader.cpp", 257 "com_android_internal_os_KernelCpuUidBpfMapReader.cpp", 258 "com_android_internal_os_KernelSingleProcessCpuThreadReader.cpp", 259 "com_android_internal_os_KernelSingleUidTimeReader.cpp", 260 "com_android_internal_os_LongArrayMultiStateCounter.cpp", 261 "com_android_internal_os_LongMultiStateCounter.cpp", 262 "com_android_internal_os_Zygote.cpp", 263 "com_android_internal_os_ZygoteCommandBuffer.cpp", 264 "com_android_internal_os_ZygoteInit.cpp", 265 "com_android_internal_security_VerityUtils.cpp", 266 "com_android_internal_util_ArrayUtils.cpp", 267 "hwbinder/EphemeralStorage.cpp", 268 "fd_utils.cpp", 269 "android_hardware_input_InputWindowHandle.cpp", 270 "android_hardware_input_InputApplicationHandle.cpp", 271 "android_window_InputTransferToken.cpp", 272 "android_window_WindowInfosListener.cpp", 273 "android_window_ScreenCapture.cpp", 274 "jni_common.cpp", 275 "android_tracing_PerfettoDataSource.cpp", 276 "android_tracing_PerfettoDataSourceInstance.cpp", 277 "android_tracing_PerfettoProducer.cpp", 278 ], 279 280 static_libs: [ 281 "libasync_safe", 282 "libbinderthreadstateutils", 283 "libdmabufinfo", 284 "libgenfslabelsversion.ffi", 285 "libgui_window_info_static", 286 "libkernelconfigs", 287 "libnativehelper_lazy", 288 "libseccomp_policy", 289 "libgrallocusage", 290 "libscrypt_static", 291 "libstatssocket_lazy", 292 "libskia", 293 ], 294 295 shared_libs: [ 296 "libbase", 297 "libharfbuzz_ng", 298 "liblog", 299 "libmediautils", 300 "libminikin", 301 "libz", 302 "android.database.sqlite-aconfig-cc", 303 "android.media.audiopolicy-aconfig-cc", 304 "audioclient-types-aidl-cpp", 305 "audioflinger-aidl-cpp", 306 "audiopolicy-types-aidl-cpp", 307 "spatializer-aidl-cpp", 308 "av-types-aidl-cpp", 309 "[email protected]", 310 "camera_platform_flags_c_lib", 311 "android.hardware.common.fmq-V1-cpp", 312 "android.hardware.common-V2-cpp", 313 "android.hardware.common.fmq-V1-ndk", 314 "android.hardware.common-V2-ndk", 315 "libandroid_net", 316 "libfmq", 317 "libbattery", 318 "libnetdutils", 319 "libmemtrack", 320 "libandroidfw", 321 "libappfuse", 322 "libcrypto", 323 "libcutils", 324 "libdebuggerd_client", 325 "libdebugstore_cxx", 326 "libutils", 327 "libbinder", 328 "libbinderdebug", 329 "libbinder_ndk", 330 "libui", 331 "libgraphicsenv", 332 "libgui", 333 "libhwui", 334 "libmediandk", 335 "libpermission", 336 "libPlatformProperties", 337 "libsensor", 338 "libinput", 339 "libicu", 340 "libcamera_client", 341 "libcamera_metadata", 342 "libprocinfo", 343 "libsqlite", 344 "libEGL", 345 "libGLESv1_CM", 346 "libGLESv2", 347 "libGLESv3", 348 "libincfs", 349 "libdataloader", 350 "libvulkan", 351 "libETC1", 352 "libjpeg", 353 "libhardware", 354 "libhardware_legacy", 355 "libselinux", 356 "libmedia", 357 "libmedia_helper", 358 "libmediametrics", 359 "libmeminfo", 360 "libaudioclient", 361 "libaudioclient_aidl_conversion", 362 "libaudiofoundation", 363 "libaudiopolicy", 364 "libusbhost", 365 "libpdfium", 366 "libimg_utils", 367 "libnetd_client", 368 "libprocessgroup", 369 "libnativebridge_lazy", 370 "libnativeloader_lazy", 371 "libmemunreachable", 372 "libhidlbase", 373 "libnativedisplay", 374 "libnativewindow", 375 "libdl", 376 "libdl_android", 377 "libtimeinstate", 378 "server_configurable_flags", 379 "libaconfig_storage_read_api_cc", 380 "libimage_io", 381 "libultrahdr", 382 "libperfetto_c", 383 "libtracing_perfetto", 384 ], 385 export_shared_lib_headers: [ 386 // our headers include libnativewindow's public headers 387 "libnativewindow", 388 ], 389 export_static_lib_headers: [ 390 // AndroidRuntime.h depends on nativehelper/jni.h 391 "libnativehelper_lazy", 392 ], 393 header_libs: [ 394 "bionic_libc_platform_headers", 395 "dnsproxyd_protocol_headers", 396 "flatbuffer_headers", 397 "tensorflow_headers", 398 ], 399 runtime_libs: [ 400 "libidmap2", 401 ], 402 }, 403 host: { 404 cflags: [ 405 "-Wno-unused-const-variable", 406 "-Wno-unused-function", 407 ], 408 srcs: [ 409 "platform/host/HostRuntime.cpp", 410 "platform/host/native_window_jni.cpp", 411 ], 412 include_dirs: [ 413 "external/vulkan-headers/include", 414 "frameworks/native/libs/math/include", 415 "frameworks/native/libs/nativebase/include", 416 "frameworks/native/libs/nativewindow/include", 417 ], 418 static_libs: [ 419 "libandroidfw", 420 "libbase", 421 "libbinary_parse", 422 "libcutils", 423 "libdng_sdk", 424 "libft2", 425 "libharfbuzz_ng", 426 "libhostgraphics", 427 "libhwui", 428 "libicui18n", 429 "libicuuc", 430 "libicuuc_stubdata", 431 "libimage_type_recognition", 432 "libinput", 433 "libjpeg", 434 "liblog", 435 "libminikin", 436 "libnativehelper_jvm", 437 "libpiex", 438 "libpng", 439 "libtiff_directory", 440 "libui-types", 441 "libutils", 442 "libwebp-decode", 443 "libwebp-encode", 444 "libwuffs_mirror_release_c", 445 "libz", 446 "libimage_io", 447 "libjpegdecoder", 448 "libjpegencoder", 449 "libultrahdr", 450 "server_configurable_flags", 451 ], 452 export_static_lib_headers: [ 453 "libnativehelper_jvm", 454 "libui-types", 455 ], 456 stl: "libc++_static", 457 }, 458 host_linux: { 459 srcs: [ 460 "android_database_CursorWindow.cpp", 461 "android_database_SQLiteCommon.cpp", 462 "android_database_SQLiteConnection.cpp", 463 "android_database_SQLiteGlobal.cpp", 464 "android_database_SQLiteDebug.cpp", 465 "android_database_SQLiteRawStatement.cpp", 466 "android_hardware_input_InputApplicationHandle.cpp", 467 "android_os_MessageQueue.cpp", 468 "android_os_Parcel.cpp", 469 470 "android_view_InputChannel.cpp", 471 "android_view_InputEventReceiver.cpp", 472 "android_view_InputEventSender.cpp", 473 474 "android_util_Binder.cpp", 475 476 "android_util_FileObserver.cpp", 477 ], 478 static_libs: [ 479 "libbinderthreadstateutils", 480 "libsqlite", 481 "libgui_window_info_static", 482 "libbinder", 483 "libhidlbase", // libhwbinder is in here 484 ], 485 }, 486 linux_glibc_x86_64: { 487 ldflags: ["-static-libgcc"], 488 dist: { 489 targets: ["layoutlib"], 490 dir: "layoutlib_native/linux", 491 tag: "stripped_all", 492 }, 493 }, 494 }, 495} 496 497cc_library_shared { 498 name: "libvintf_jni", 499 500 cpp_std: "gnu++20", 501 502 srcs: [ 503 "android_os_VintfObject.cpp", 504 "android_os_VintfRuntimeInfo.cpp", 505 ], 506 507 shared_libs: [ 508 "libbase", 509 "liblog", 510 "libnativehelper", 511 "libvintf", 512 ], 513 514 required: [ 515 "vintf", 516 ], 517} 518