OSDN Git Service

Enable the PRC compatibility package feature for PRC market
[android-x86/frameworks-base.git] / core / jni / Android.mk
1 LOCAL_PATH:= $(call my-dir)
2 include $(CLEAR_VARS)
3
4 LOCAL_CFLAGS += -DHAVE_CONFIG_H -DKHTML_NO_EXCEPTIONS -DGKWQ_NO_JAVA
5 LOCAL_CFLAGS += -DNO_SUPPORT_JS_BINDING -DQT_NO_WHEELEVENT -DKHTML_NO_XBL
6 LOCAL_CFLAGS += -U__APPLE__
7 LOCAL_CFLAGS += -Wno-unused-parameter
8 LOCAL_CFLAGS += -Wno-non-virtual-dtor
9 LOCAL_CFLAGS += -Wno-maybe-uninitialized -Wno-parentheses
10 LOCAL_CFLAGS += -DHWUI_NEW_OPS
11 LOCAL_CPPFLAGS += -Wno-conversion-null
12
13 ifeq ($(TARGET_ARCH), arm)
14     LOCAL_CFLAGS += -DPACKED="__attribute__ ((packed))"
15 else
16     LOCAL_CFLAGS += -DPACKED=""
17 endif
18
19 ifneq ($(ENABLE_CPUSETS),)
20     LOCAL_CFLAGS += -DENABLE_CPUSETS
21 endif
22
23 ifneq ($(ENABLE_SCHED_BOOST),)
24     LOCAL_CFLAGS += -DENABLE_SCHED_BOOST
25 endif
26
27 LOCAL_CFLAGS += -DGL_GLEXT_PROTOTYPES -DEGL_EGLEXT_PROTOTYPES
28
29 LOCAL_CFLAGS += -DU_USING_ICU_NAMESPACE=0
30
31 LOCAL_SRC_FILES:= \
32     AndroidRuntime.cpp \
33     com_android_internal_content_NativeLibraryHelper.cpp \
34     com_google_android_gles_jni_EGLImpl.cpp \
35     com_google_android_gles_jni_GLImpl.cpp.arm \
36     android_app_Activity.cpp \
37     android_app_ApplicationLoaders.cpp \
38     android_app_NativeActivity.cpp \
39     android_app_admin_SecurityLog.cpp \
40     android_opengl_EGL14.cpp \
41     android_opengl_EGLExt.cpp \
42     android_opengl_GLES10.cpp \
43     android_opengl_GLES10Ext.cpp \
44     android_opengl_GLES11.cpp \
45     android_opengl_GLES11Ext.cpp \
46     android_opengl_GLES20.cpp \
47     android_opengl_GLES30.cpp \
48     android_opengl_GLES31.cpp \
49     android_opengl_GLES31Ext.cpp \
50     android_opengl_GLES32.cpp \
51     android_database_CursorWindow.cpp \
52     android_database_SQLiteCommon.cpp \
53     android_database_SQLiteConnection.cpp \
54     android_database_SQLiteGlobal.cpp \
55     android_database_SQLiteDebug.cpp \
56     android_graphics_drawable_AnimatedVectorDrawable.cpp \
57     android_graphics_drawable_VectorDrawable.cpp \
58     android_view_DisplayEventReceiver.cpp \
59     android_view_DisplayListCanvas.cpp \
60     android_view_GraphicBuffer.cpp \
61     android_view_HardwareLayer.cpp \
62     android_view_InputChannel.cpp \
63     android_view_InputDevice.cpp \
64     android_view_InputEventReceiver.cpp \
65     android_view_InputEventSender.cpp \
66     android_view_InputQueue.cpp \
67     android_view_KeyCharacterMap.cpp \
68     android_view_KeyEvent.cpp \
69     android_view_MotionEvent.cpp \
70     android_view_PointerIcon.cpp \
71     android_view_RenderNode.cpp \
72     android_view_RenderNodeAnimator.cpp \
73     android_view_Surface.cpp \
74     android_view_SurfaceControl.cpp \
75     android_view_SurfaceSession.cpp \
76     android_view_TextureView.cpp \
77     android_view_ThreadedRenderer.cpp \
78     android_view_VelocityTracker.cpp \
79     android_text_AndroidCharacter.cpp \
80     android_text_AndroidBidi.cpp \
81     android_text_StaticLayout.cpp \
82     android_os_Debug.cpp \
83     android_os_GraphicsEnvironment.cpp \
84     android_os_MemoryFile.cpp \
85     android_os_MessageQueue.cpp \
86     android_os_Parcel.cpp \
87     android_os_SELinux.cpp \
88     android_os_SystemClock.cpp \
89     android_os_SystemProperties.cpp \
90     android_os_Trace.cpp \
91     android_os_UEventObserver.cpp \
92     android_net_LocalSocketImpl.cpp \
93     android_net_NetUtils.cpp \
94     android_net_TrafficStats.cpp \
95     android_nio_utils.cpp \
96     android_util_AssetManager.cpp \
97     android_util_Binder.cpp \
98     android_util_EventLog.cpp \
99     android_util_MemoryIntArray.cpp \
100     android_util_Log.cpp \
101     android_util_PathParser.cpp \
102     android_util_Process.cpp \
103     android_util_StringBlock.cpp \
104     android_util_XmlBlock.cpp \
105     android_util_jar_StrictJarFile.cpp \
106     android_graphics_Canvas.cpp \
107     android_graphics_Picture.cpp \
108     android/graphics/Bitmap.cpp \
109     android/graphics/BitmapFactory.cpp \
110     android/graphics/Camera.cpp \
111     android/graphics/CanvasProperty.cpp \
112     android/graphics/ColorFilter.cpp \
113     android/graphics/DrawFilter.cpp \
114     android/graphics/FontFamily.cpp \
115     android/graphics/CreateJavaOutputStreamAdaptor.cpp \
116     android/graphics/Graphics.cpp \
117     android/graphics/HarfBuzzNGFaceSkia.cpp \
118     android/graphics/Interpolator.cpp \
119     android/graphics/MaskFilter.cpp \
120     android/graphics/Matrix.cpp \
121     android/graphics/Movie.cpp \
122     android/graphics/NinePatch.cpp \
123     android/graphics/NinePatchPeeker.cpp \
124     android/graphics/Paint.cpp \
125     android/graphics/Path.cpp \
126     android/graphics/PathMeasure.cpp \
127     android/graphics/PathEffect.cpp \
128     android/graphics/Picture.cpp \
129     android/graphics/PorterDuff.cpp \
130     android/graphics/BitmapRegionDecoder.cpp \
131     android/graphics/Rasterizer.cpp \
132     android/graphics/Region.cpp \
133     android/graphics/Shader.cpp \
134     android/graphics/SurfaceTexture.cpp \
135     android/graphics/Typeface.cpp \
136     android/graphics/Utils.cpp \
137     android/graphics/Xfermode.cpp \
138     android/graphics/YuvToJpegEncoder.cpp \
139     android/graphics/pdf/PdfDocument.cpp \
140     android/graphics/pdf/PdfEditor.cpp \
141     android/graphics/pdf/PdfRenderer.cpp \
142     android_media_AudioRecord.cpp \
143     android_media_AudioSystem.cpp \
144     android_media_AudioTrack.cpp \
145     android_media_DeviceCallback.cpp \
146     android_media_JetPlayer.cpp \
147     android_media_RemoteDisplay.cpp \
148     android_media_ToneGenerator.cpp \
149     android_hardware_Camera.cpp \
150     android_hardware_camera2_CameraMetadata.cpp \
151     android_hardware_camera2_legacy_LegacyCameraDevice.cpp \
152     android_hardware_camera2_legacy_PerfMeasurement.cpp \
153     android_hardware_camera2_DngCreator.cpp \
154     android_hardware_Radio.cpp \
155     android_hardware_SensorManager.cpp \
156     android_hardware_SerialPort.cpp \
157     android_hardware_SoundTrigger.cpp \
158     android_hardware_UsbDevice.cpp \
159     android_hardware_UsbDeviceConnection.cpp \
160     android_hardware_UsbRequest.cpp \
161     android_hardware_location_ContextHubService.cpp \
162     android_hardware_location_ActivityRecognitionHardware.cpp \
163     android_util_FileObserver.cpp \
164     android/opengl/poly_clip.cpp.arm \
165     android/opengl/util.cpp \
166     android_server_NetworkManagementSocketTagger.cpp \
167     android_server_Watchdog.cpp \
168     android_ddm_DdmHandleNativeHeap.cpp \
169     android_backup_BackupDataInput.cpp \
170     android_backup_BackupDataOutput.cpp \
171     android_backup_FileBackupHelperBase.cpp \
172     android_backup_BackupHelperDispatcher.cpp \
173     android_app_backup_FullBackup.cpp \
174     android_content_res_ObbScanner.cpp \
175     android_content_res_Configuration.cpp \
176     android_animation_PropertyValuesHolder.cpp \
177     com_android_internal_net_NetworkStatsFactory.cpp \
178     com_android_internal_os_PathClassLoaderFactory.cpp \
179     com_android_internal_os_Zygote.cpp \
180     com_android_internal_util_VirtualRefBasePtr.cpp \
181     com_android_internal_view_animation_NativeInterpolatorFactoryHelper.cpp
182
183 LOCAL_C_INCLUDES += \
184     $(JNI_H_INCLUDE) \
185     $(LOCAL_PATH)/android/graphics \
186     $(LOCAL_PATH)/../../libs/hwui \
187     $(LOCAL_PATH)/../../../native/opengl/libs \
188     $(LOCAL_PATH)/../../../native/vulkan/include \
189     $(call include-path-for, bluedroid) \
190     $(call include-path-for, libhardware)/hardware \
191     $(call include-path-for, libhardware_legacy)/hardware_legacy \
192     $(TOP)/frameworks/base/media/jni \
193     $(TOP)/system/core/base/include \
194     $(TOP)/system/core/include \
195     $(TOP)/system/media/camera/include \
196     $(TOP)/system/netd/include \
197     external/pdfium/core/include/fpdfapi \
198     external/pdfium/fpdfsdk/include \
199     external/pdfium/public \
200     external/pdfium \
201     external/skia/include/private \
202     external/skia/src/core \
203     external/skia/src/effects \
204     external/skia/src/images \
205     external/sqlite/dist \
206     external/sqlite/android \
207     external/expat/lib \
208     external/tremor/Tremor \
209     external/harfbuzz_ng/src \
210     libcore/include \
211     $(call include-path-for, audio-utils) \
212     frameworks/minikin/include \
213     external/freetype/include
214 # TODO: clean up Minikin so it doesn't need the freetype include
215
216 LOCAL_SHARED_LIBRARIES := \
217     libmemtrack \
218     libandroidfw \
219     libexpat \
220     libnativehelper \
221     liblog \
222     libcutils \
223     libutils \
224     libbinder \
225     libnetutils \
226     libui \
227     libgui \
228     libinput \
229     libinputflinger \
230     libcamera_client \
231     libcamera_metadata \
232     libskia \
233     libsqlite \
234     libEGL \
235     libGLESv1_CM \
236     libGLESv2 \
237     libvulkan \
238     libETC1 \
239     libhardware \
240     libhardware_legacy \
241     libselinux \
242     libsonivox \
243     libcrypto \
244     libssl \
245     libicuuc \
246     libicui18n \
247     libmedia \
248     libjpeg \
249     libusbhost \
250     libharfbuzz_ng \
251     libz \
252     libaudioutils \
253     libpdfium \
254     libimg_utils \
255     libnetd_client \
256     libradio \
257     libsoundtrigger \
258     libminikin \
259     libprocessgroup \
260     libnativebridge \
261     libradio_metadata \
262     libnativeloader \
263     libmemunreachable \
264
265 LOCAL_SHARED_LIBRARIES += \
266     libhwui \
267     libdl
268
269 ifeq ($(PRC_COMPATIBILITY_PACKAGE),true)
270     LOCAL_CFLAGS += -D_PRC_COMPATIBILITY_PACKAGE_
271     LOCAL_C_INCLUDES += $(LOCAL_PATH)/abipicker
272     LOCAL_SRC_FILES += abipicker/ABIPicker.cpp
273     LOCAL_POST_INSTALL_CMD := $(hide) \
274         mkdir -p $(TARGET_OUT_VENDOR)/etc/misc/; \
275         cp -f $(LOCAL_PATH)/abipicker/OEMWhiteList $(TARGET_OUT_VENDOR)/etc/misc/.OEMWhiteList; \
276         cp -f $(LOCAL_PATH)/abipicker/OEMBlackList $(TARGET_OUT_VENDOR)/etc/misc/.OEMBlackList; \
277         cp -f $(LOCAL_PATH)/abipicker/ThirdPartySO $(TARGET_OUT_VENDOR)/etc/misc/.ThirdPartySO
278 endif
279
280 # we need to access the private Bionic header
281 # <bionic_tls.h> in com_google_android_gles_jni_GLImpl.cpp
282 LOCAL_C_INCLUDES += bionic/libc/private
283
284 # AndroidRuntime.h depends on nativehelper/jni.h
285 LOCAL_EXPORT_C_INCLUDE_DIRS := libnativehelper/include
286
287 LOCAL_MODULE:= libandroid_runtime
288
289 # -Wno-unknown-pragmas: necessary for Clang as the GL bindings need to turn
290 #                       off a GCC warning that Clang doesn't know.
291 LOCAL_CFLAGS += -Wall -Werror -Wno-error=deprecated-declarations -Wunused -Wunreachable-code \
292         -Wno-unknown-pragmas
293
294 # -Wno-c++11-extensions: Clang warns about Skia using the C++11 override keyword, but this project
295 #                        is not being compiled with that level. Remove once this has changed.
296 LOCAL_CLANG_CFLAGS += -Wno-c++11-extensions
297
298 # b/22414716: thread_local (android/graphics/Paint.cpp) and Clang don't like each other at the
299 #             moment.
300 LOCAL_CLANG := false
301
302 include $(BUILD_SHARED_LIBRARY)
303
304 include $(call all-makefiles-under,$(LOCAL_PATH))