1 2genrule { 3 name: "android_util_StatsLog.cpp", 4 tools: ["stats-log-api-gen"], 5 cmd: "$(location stats-log-api-gen) --jni $(genDir)/android_util_StatsLog.cpp", 6 out: [ 7 "android_util_StatsLog.cpp", 8 ], 9} 10 11cc_library_shared { 12 name: "libandroid_runtime", 13 14 cflags: [ 15 "-Wno-unused-parameter", 16 "-Wno-non-virtual-dtor", 17 "-Wno-maybe-uninitialized", 18 "-Wno-parentheses", 19 20 "-DGL_GLEXT_PROTOTYPES", 21 "-DEGL_EGLEXT_PROTOTYPES", 22 23 "-DU_USING_ICU_NAMESPACE=0", 24 25 "-Wall", 26 "-Werror", 27 "-Wno-error=deprecated-declarations", 28 "-Wunused", 29 "-Wunreachable-code", 30 31 // TODO: Linear blending should be enabled by default, but we are 32 // TODO: making it an opt-in while it's a work in progress 33 //"-DANDROID_ENABLE_LINEAR_BLENDING", 34 ], 35 36 cppflags: ["-Wno-conversion-null"], 37 cpp_std: "c++17", 38 39 srcs: [ 40 "AndroidRuntime.cpp", 41 "com_android_internal_content_NativeLibraryHelper.cpp", 42 "com_google_android_gles_jni_EGLImpl.cpp", 43 "com_google_android_gles_jni_GLImpl.cpp", // TODO: .arm 44 "android_app_Activity.cpp", 45 "android_app_NativeActivity.cpp", 46 "android_app_admin_SecurityLog.cpp", 47 "android_opengl_EGL14.cpp", 48 "android_opengl_EGLExt.cpp", 49 "android_opengl_GLES10.cpp", 50 "android_opengl_GLES10Ext.cpp", 51 "android_opengl_GLES11.cpp", 52 "android_opengl_GLES11Ext.cpp", 53 "android_opengl_GLES20.cpp", 54 "android_opengl_GLES30.cpp", 55 "android_opengl_GLES31.cpp", 56 "android_opengl_GLES31Ext.cpp", 57 "android_opengl_GLES32.cpp", 58 "android_database_CursorWindow.cpp", 59 "android_database_SQLiteCommon.cpp", 60 "android_database_SQLiteConnection.cpp", 61 "android_database_SQLiteGlobal.cpp", 62 "android_database_SQLiteDebug.cpp", 63 "android_graphics_drawable_AnimatedVectorDrawable.cpp", 64 "android_graphics_drawable_VectorDrawable.cpp", 65 "android_view_DisplayEventReceiver.cpp", 66 "android_view_DisplayListCanvas.cpp", 67 "android_view_TextureLayer.cpp", 68 "android_view_InputChannel.cpp", 69 "android_view_InputDevice.cpp", 70 "android_view_InputEventReceiver.cpp", 71 "android_view_InputEventSender.cpp", 72 "android_view_InputQueue.cpp", 73 "android_view_KeyCharacterMap.cpp", 74 "android_view_KeyEvent.cpp", 75 "android_view_MotionEvent.cpp", 76 "android_view_PointerIcon.cpp", 77 "android_view_RenderNode.cpp", 78 "android_view_RenderNodeAnimator.cpp", 79 "android_view_Surface.cpp", 80 "android_view_SurfaceControl.cpp", 81 "android_view_SurfaceSession.cpp", 82 "android_view_TextureView.cpp", 83 "android_view_ThreadedRenderer.cpp", 84 "android_view_VelocityTracker.cpp", 85 "android_text_AndroidCharacter.cpp", 86 "android_text_Hyphenator.cpp", 87 "android_text_MeasuredParagraph.cpp", 88 "android_text_StaticLayout.cpp", 89 "android_os_Debug.cpp", 90 "android_os_GraphicsEnvironment.cpp", 91 "android_os_HidlSupport.cpp", 92 "android_os_HwBinder.cpp", 93 "android_os_HwBlob.cpp", 94 "android_os_HwParcel.cpp", 95 "android_os_HwRemoteBinder.cpp", 96 "android_os_MemoryFile.cpp", 97 "android_os_MessageQueue.cpp", 98 "android_os_Parcel.cpp", 99 "android_os_SELinux.cpp", 100 "android_os_SharedMemory.cpp", 101 "android_os_SystemClock.cpp", 102 "android_os_SystemProperties.cpp", 103 "android_os_Trace.cpp", 104 "android_os_UEventObserver.cpp", 105 "android_os_VintfObject.cpp", 106 "android_os_VintfRuntimeInfo.cpp", 107 "android_net_LocalSocketImpl.cpp", 108 "android_net_NetUtils.cpp", 109 "android_nio_utils.cpp", 110 "android_util_AssetManager.cpp", 111 "android_util_Binder.cpp", 112 "android_util_EventLog.cpp", 113 "android_util_Log.cpp", 114 "android_util_MemoryIntArray.cpp", 115 "android_util_PathParser.cpp", 116 "android_util_Process.cpp", 117 "android_util_StringBlock.cpp", 118 "android_util_XmlBlock.cpp", 119 "android_util_jar_StrictJarFile.cpp", 120 "android_graphics_Canvas.cpp", 121 "android_graphics_Picture.cpp", 122 "android/graphics/AnimatedImageDrawable.cpp", 123 "android/graphics/Bitmap.cpp", 124 "android/graphics/BitmapFactory.cpp", 125 "android/graphics/ByteBufferStreamAdaptor.cpp", 126 "android/graphics/Camera.cpp", 127 "android/graphics/CanvasProperty.cpp", 128 "android/graphics/ColorFilter.cpp", 129 "android/graphics/DrawFilter.cpp", 130 "android/graphics/FontFamily.cpp", 131 "android/graphics/FontUtils.cpp", 132 "android/graphics/CreateJavaOutputStreamAdaptor.cpp", 133 "android/graphics/GIFMovie.cpp", 134 "android/graphics/GraphicBuffer.cpp", 135 "android/graphics/Graphics.cpp", 136 "android/graphics/HarfBuzzNGFaceSkia.cpp", 137 "android/graphics/ImageDecoder.cpp", 138 "android/graphics/Interpolator.cpp", 139 "android/graphics/MaskFilter.cpp", 140 "android/graphics/Matrix.cpp", 141 "android/graphics/Movie.cpp", 142 "android/graphics/MovieImpl.cpp", 143 "android/graphics/NinePatch.cpp", 144 "android/graphics/NinePatchPeeker.cpp", 145 "android/graphics/Paint.cpp", 146 "android/graphics/Path.cpp", 147 "android/graphics/PathMeasure.cpp", 148 "android/graphics/PathEffect.cpp", 149 "android/graphics/Picture.cpp", 150 "android/graphics/BitmapRegionDecoder.cpp", 151 "android/graphics/Region.cpp", 152 "android/graphics/Shader.cpp", 153 "android/graphics/SurfaceTexture.cpp", 154 "android/graphics/Typeface.cpp", 155 "android/graphics/Utils.cpp", 156 "android/graphics/YuvToJpegEncoder.cpp", 157 "android/graphics/pdf/PdfDocument.cpp", 158 "android/graphics/pdf/PdfEditor.cpp", 159 "android/graphics/pdf/PdfRenderer.cpp", 160 "android/graphics/pdf/PdfUtils.cpp", 161 "android_media_AudioRecord.cpp", 162 "android_media_AudioSystem.cpp", 163 "android_media_AudioTrack.cpp", 164 "android_media_DeviceCallback.cpp", 165 "android_media_JetPlayer.cpp", 166 "android_media_MediaMetricsJNI.cpp", 167 "android_media_MicrophoneInfo.cpp", 168 "android_media_RemoteDisplay.cpp", 169 "android_media_ToneGenerator.cpp", 170 "android_hardware_Camera.cpp", 171 "android_hardware_camera2_CameraMetadata.cpp", 172 "android_hardware_camera2_legacy_LegacyCameraDevice.cpp", 173 "android_hardware_camera2_legacy_PerfMeasurement.cpp", 174 "android_hardware_camera2_DngCreator.cpp", 175 "android_hardware_display_DisplayViewport.cpp", 176 "android_hardware_HardwareBuffer.cpp", 177 "android_hardware_SensorManager.cpp", 178 "android_hardware_SerialPort.cpp", 179 "android_hardware_SoundTrigger.cpp", 180 "android_hardware_UsbDevice.cpp", 181 "android_hardware_UsbDeviceConnection.cpp", 182 "android_hardware_UsbRequest.cpp", 183 "android_hardware_location_ActivityRecognitionHardware.cpp", 184 "android_util_FileObserver.cpp", 185 "android/opengl/poly_clip.cpp", // TODO: .arm 186 "android/opengl/util.cpp", 187 "android_server_NetworkManagementSocketTagger.cpp", 188 "android_ddm_DdmHandleNativeHeap.cpp", 189 "android_backup_BackupDataInput.cpp", 190 "android_backup_BackupDataOutput.cpp", 191 "android_backup_FileBackupHelperBase.cpp", 192 "android_backup_BackupHelperDispatcher.cpp", 193 "android_app_backup_FullBackup.cpp", 194 "android_content_res_ApkAssets.cpp", 195 "android_content_res_ObbScanner.cpp", 196 "android_content_res_Configuration.cpp", 197 "android_animation_PropertyValuesHolder.cpp", 198 "android_security_Scrypt.cpp", 199 "com_android_internal_net_NetworkStatsFactory.cpp", 200 "com_android_internal_os_ClassLoaderFactory.cpp", 201 "com_android_internal_os_FuseAppLoop.cpp", 202 "com_android_internal_os_Zygote.cpp", 203 "com_android_internal_os_ZygoteInit.cpp", 204 "com_android_internal_util_VirtualRefBasePtr.cpp", 205 "com_android_internal_view_animation_NativeInterpolatorFactoryHelper.cpp", 206 "hwbinder/EphemeralStorage.cpp", 207 "fd_utils.cpp", 208 ], 209 210 include_dirs: [ 211 // we need to access the private Bionic header 212 // <bionic_tls.h> in com_google_android_gles_jni_GLImpl.cpp 213 "bionic/libc/private", 214 215 "external/skia/include/private", 216 "external/skia/src/codec", 217 "external/skia/src/core", 218 "external/skia/src/effects", 219 "external/skia/src/image", 220 "external/skia/src/images", 221 "frameworks/base/media/jni", 222 "libcore/include", 223 "system/media/camera/include", 224 "system/media/private/camera/include", 225 ], 226 227 static_libs: [ 228 "libgif", 229 "libseccomp_policy", 230 "libselinux", 231 "libgrallocusage", 232 "libscrypt_static", 233 ], 234 235 shared_libs: [ 236 "libbpf", 237 "libnetdutils", 238 "libmemtrack", 239 "libandroidfw", 240 "libappfuse", 241 "libbase", 242 "libcrypto", 243 "libnativehelper", 244 "liblog", 245 "libcutils", 246 "libdebuggerd_client", 247 "libutils", 248 "libbinder", 249 "libui", 250 "libgraphicsenv", 251 "libgui", 252 "libsensor", 253 "libinput", 254 "libcamera_client", 255 "libcamera_metadata", 256 "libsqlite", 257 "libEGL", 258 "libGLESv1_CM", 259 "libGLESv2", 260 "libvulkan", 261 "libziparchive", 262 "libETC1", 263 "libhardware", 264 "libhardware_legacy", 265 "libselinux", 266 "libicuuc", 267 "libmedia", 268 "libmediametrics", 269 "libaudioclient", 270 "libjpeg", 271 "libusbhost", 272 "libharfbuzz_ng", 273 "libz", 274 "libpdfium", 275 "libimg_utils", 276 "libnetd_client", 277 "libsoundtrigger", 278 "libminikin", 279 "libprocessgroup", 280 "libnativebridge", 281 "libnativeloader", 282 "libmemunreachable", 283 "libhidlbase", 284 "libhidltransport", 285 "libhwbinder", 286 "libvintf", 287 "libnativewindow", 288 "libhwui", 289 "libdl", 290 "libstatslog", 291 ], 292 293 generated_sources: ["android_util_StatsLog.cpp"], 294 295 local_include_dirs: ["android/graphics"], 296 export_include_dirs: [ 297 ".", 298 "include", 299 ], 300 export_shared_lib_headers: [ 301 // AndroidRuntime.h depends on nativehelper/jni.h 302 "libnativehelper", 303 304 // our headers include libnativewindow's public headers 305 "libnativewindow", 306 307 // GraphicsJNI.h includes hwui headers 308 "libhwui", 309 ], 310} 311