146f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)# 246f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)# Copyright (C) 2012 The Android Open Source Project 346f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)# 446f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)# Licensed under the Apache License, Version 2.0 (the "License"); 546f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)# you may not use this file except in compliance with the License. 646f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)# You may obtain a copy of the License at 746f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)# 846f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)# http://www.apache.org/licenses/LICENSE-2.0 946f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)# 1046f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)# Unless required by applicable law or agreed to in writing, software 1146f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)# distributed under the License is distributed on an "AS IS" BASIS, 1246f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 1346f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)# See the License for the specific language governing permissions and 1446f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)# limitations under the License. 1546f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)# 1646f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles) 1746f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)# This package provides the 'glue' layer between Chromium and WebView. 1846f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles) 1946f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)LOCAL_PATH := $(call my-dir) 200a0259ff81b6a18766473d72feeb82dba3a35093Torne (Richard Coles)CHROMIUM_PATH := external/chromium_org 21a2b0d0b4d6d1ff22fbb1329e358e1cc0a112aab3Jonathan Dixon 22a2b0d0b4d6d1ff22fbb1329e358e1cc0a112aab3Jonathan Dixon# Java glue layer JAR, calls directly into the chromium AwContents Java API. 2346f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)include $(CLEAR_VARS) 2446f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles) 2546f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)LOCAL_MODULE := webviewchromium 2646f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles) 2746f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)LOCAL_MODULE_TAGS := optional 2846f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles) 295b636587610c88fe2316b78c4ee58ca32119f2d9Torne (Richard Coles)LOCAL_STATIC_JAVA_LIBRARIES += android_webview_java 3046f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles) 3146f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)LOCAL_SRC_FILES := $(call all-java-files-under, java) 3246f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles) 338a25a8e322e8699b0d3f756465fee5a66ab4dc82Torne (Richard Coles)LOCAL_JARJAR_RULES := $(CHROMIUM_PATH)/android_webview/build/jarjar-rules.txt 348a25a8e322e8699b0d3f756465fee5a66ab4dc82Torne (Richard Coles) 35617a9fdc247d2bb599f94f1ae267df82b8e66ab6Ben Murdoch# TODO: filter webviewchromium_webkit_strings based on PRODUCT_LOCALES. 36a05566067d5a010130b0b1aa36eb0d7b3f73e122Torne (Richard Coles)LOCAL_REQUIRED_MODULES := \ 37ebf3772d08779f136eef48c45e8b286b27b21132Ben Murdoch libwebviewchromium \ 38ebf3772d08779f136eef48c45e8b286b27b21132Ben Murdoch libwebviewchromium_plat_support \ 39ebf3772d08779f136eef48c45e8b286b27b21132Ben Murdoch webviewchromium_pak \ 40617a9fdc247d2bb599f94f1ae267df82b8e66ab6Ben Murdoch webviewchromium_webkit_strings_am.pak \ 41617a9fdc247d2bb599f94f1ae267df82b8e66ab6Ben Murdoch webviewchromium_webkit_strings_ar.pak \ 42617a9fdc247d2bb599f94f1ae267df82b8e66ab6Ben Murdoch webviewchromium_webkit_strings_bg.pak \ 43617a9fdc247d2bb599f94f1ae267df82b8e66ab6Ben Murdoch webviewchromium_webkit_strings_bn.pak \ 44617a9fdc247d2bb599f94f1ae267df82b8e66ab6Ben Murdoch webviewchromium_webkit_strings_ca.pak \ 45617a9fdc247d2bb599f94f1ae267df82b8e66ab6Ben Murdoch webviewchromium_webkit_strings_cs.pak \ 46617a9fdc247d2bb599f94f1ae267df82b8e66ab6Ben Murdoch webviewchromium_webkit_strings_da.pak \ 47617a9fdc247d2bb599f94f1ae267df82b8e66ab6Ben Murdoch webviewchromium_webkit_strings_de.pak \ 48617a9fdc247d2bb599f94f1ae267df82b8e66ab6Ben Murdoch webviewchromium_webkit_strings_el.pak \ 49617a9fdc247d2bb599f94f1ae267df82b8e66ab6Ben Murdoch webviewchromium_webkit_strings_en-GB.pak \ 50617a9fdc247d2bb599f94f1ae267df82b8e66ab6Ben Murdoch webviewchromium_webkit_strings_en-US.pak \ 51617a9fdc247d2bb599f94f1ae267df82b8e66ab6Ben Murdoch webviewchromium_webkit_strings_es-419.pak \ 52617a9fdc247d2bb599f94f1ae267df82b8e66ab6Ben Murdoch webviewchromium_webkit_strings_es.pak \ 53617a9fdc247d2bb599f94f1ae267df82b8e66ab6Ben Murdoch webviewchromium_webkit_strings_et.pak \ 54617a9fdc247d2bb599f94f1ae267df82b8e66ab6Ben Murdoch webviewchromium_webkit_strings_fa.pak \ 55617a9fdc247d2bb599f94f1ae267df82b8e66ab6Ben Murdoch webviewchromium_webkit_strings_fil.pak \ 56617a9fdc247d2bb599f94f1ae267df82b8e66ab6Ben Murdoch webviewchromium_webkit_strings_fi.pak \ 57617a9fdc247d2bb599f94f1ae267df82b8e66ab6Ben Murdoch webviewchromium_webkit_strings_fr.pak \ 58617a9fdc247d2bb599f94f1ae267df82b8e66ab6Ben Murdoch webviewchromium_webkit_strings_gu.pak \ 59617a9fdc247d2bb599f94f1ae267df82b8e66ab6Ben Murdoch webviewchromium_webkit_strings_he.pak \ 60617a9fdc247d2bb599f94f1ae267df82b8e66ab6Ben Murdoch webviewchromium_webkit_strings_hi.pak \ 61617a9fdc247d2bb599f94f1ae267df82b8e66ab6Ben Murdoch webviewchromium_webkit_strings_hr.pak \ 62617a9fdc247d2bb599f94f1ae267df82b8e66ab6Ben Murdoch webviewchromium_webkit_strings_hu.pak \ 63617a9fdc247d2bb599f94f1ae267df82b8e66ab6Ben Murdoch webviewchromium_webkit_strings_id.pak \ 64617a9fdc247d2bb599f94f1ae267df82b8e66ab6Ben Murdoch webviewchromium_webkit_strings_it.pak \ 65617a9fdc247d2bb599f94f1ae267df82b8e66ab6Ben Murdoch webviewchromium_webkit_strings_ja.pak \ 66617a9fdc247d2bb599f94f1ae267df82b8e66ab6Ben Murdoch webviewchromium_webkit_strings_kn.pak \ 67617a9fdc247d2bb599f94f1ae267df82b8e66ab6Ben Murdoch webviewchromium_webkit_strings_ko.pak \ 68617a9fdc247d2bb599f94f1ae267df82b8e66ab6Ben Murdoch webviewchromium_webkit_strings_lt.pak \ 69617a9fdc247d2bb599f94f1ae267df82b8e66ab6Ben Murdoch webviewchromium_webkit_strings_lv.pak \ 70617a9fdc247d2bb599f94f1ae267df82b8e66ab6Ben Murdoch webviewchromium_webkit_strings_ml.pak \ 71617a9fdc247d2bb599f94f1ae267df82b8e66ab6Ben Murdoch webviewchromium_webkit_strings_mr.pak \ 72617a9fdc247d2bb599f94f1ae267df82b8e66ab6Ben Murdoch webviewchromium_webkit_strings_ms.pak \ 73617a9fdc247d2bb599f94f1ae267df82b8e66ab6Ben Murdoch webviewchromium_webkit_strings_nb.pak \ 74617a9fdc247d2bb599f94f1ae267df82b8e66ab6Ben Murdoch webviewchromium_webkit_strings_nl.pak \ 75617a9fdc247d2bb599f94f1ae267df82b8e66ab6Ben Murdoch webviewchromium_webkit_strings_pl.pak \ 76617a9fdc247d2bb599f94f1ae267df82b8e66ab6Ben Murdoch webviewchromium_webkit_strings_pt-BR.pak \ 77617a9fdc247d2bb599f94f1ae267df82b8e66ab6Ben Murdoch webviewchromium_webkit_strings_pt-PT.pak \ 78617a9fdc247d2bb599f94f1ae267df82b8e66ab6Ben Murdoch webviewchromium_webkit_strings_ro.pak \ 79617a9fdc247d2bb599f94f1ae267df82b8e66ab6Ben Murdoch webviewchromium_webkit_strings_ru.pak \ 80617a9fdc247d2bb599f94f1ae267df82b8e66ab6Ben Murdoch webviewchromium_webkit_strings_sk.pak \ 81617a9fdc247d2bb599f94f1ae267df82b8e66ab6Ben Murdoch webviewchromium_webkit_strings_sl.pak \ 82617a9fdc247d2bb599f94f1ae267df82b8e66ab6Ben Murdoch webviewchromium_webkit_strings_sr.pak \ 83617a9fdc247d2bb599f94f1ae267df82b8e66ab6Ben Murdoch webviewchromium_webkit_strings_sv.pak \ 84617a9fdc247d2bb599f94f1ae267df82b8e66ab6Ben Murdoch webviewchromium_webkit_strings_sw.pak \ 85617a9fdc247d2bb599f94f1ae267df82b8e66ab6Ben Murdoch webviewchromium_webkit_strings_ta.pak \ 86617a9fdc247d2bb599f94f1ae267df82b8e66ab6Ben Murdoch webviewchromium_webkit_strings_te.pak \ 87617a9fdc247d2bb599f94f1ae267df82b8e66ab6Ben Murdoch webviewchromium_webkit_strings_th.pak \ 88617a9fdc247d2bb599f94f1ae267df82b8e66ab6Ben Murdoch webviewchromium_webkit_strings_tr.pak \ 89617a9fdc247d2bb599f94f1ae267df82b8e66ab6Ben Murdoch webviewchromium_webkit_strings_uk.pak \ 90617a9fdc247d2bb599f94f1ae267df82b8e66ab6Ben Murdoch webviewchromium_webkit_strings_vi.pak \ 91617a9fdc247d2bb599f94f1ae267df82b8e66ab6Ben Murdoch webviewchromium_webkit_strings_zh-CN.pak \ 92617a9fdc247d2bb599f94f1ae267df82b8e66ab6Ben Murdoch webviewchromium_webkit_strings_zh-TW.pak 93a05566067d5a010130b0b1aa36eb0d7b3f73e122Torne (Richard Coles) 94ac2530ca1b3791854af1d7284ed31384f8550789Torne (Richard Coles)LOCAL_PROGUARD_ENABLED := full 959eea229e384e9aeee1d36a38f3130d96e1510667Torne (Richard Coles)LOCAL_PROGUARD_FLAG_FILES := proguard.flags 9646f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles) 973ea7e2214406c213fc5612886e78e41bed64f3d5Kristian MonsenLOCAL_JAVACFLAGS := -Xlint:unchecked -Werror 983ea7e2214406c213fc5612886e78e41bed64f3d5Kristian Monsen 9946f104289826e85ba76a1a2139d7ecc7daca07b1Torne (Richard Coles)include $(BUILD_JAVA_LIBRARY) 100a2b0d0b4d6d1ff22fbb1329e358e1cc0a112aab3Jonathan Dixon 1011d6f99d5c9c776f5cfc638b0e020fb08dd536dcaTorne (Richard Coles)ifneq ($(strip $(LOCAL_JARJAR_RULES)),) 1021d6f99d5c9c776f5cfc638b0e020fb08dd536dcaTorne (Richard Coles)# Add build rules to check that the jarjar'ed jar only contains whitelisted 1031d6f99d5c9c776f5cfc638b0e020fb08dd536dcaTorne (Richard Coles)# packages. Only enable this when we are running jarjar. 104527aec2b7316d7d7c088156af8e118b525dc48bdTorne (Richard Coles)LOCAL_JAR_CHECK_WHITELIST := $(LOCAL_PATH)/jar_package_whitelist.txt 1051d6f99d5c9c776f5cfc638b0e020fb08dd536dcaTorne (Richard Coles) 1061d6f99d5c9c776f5cfc638b0e020fb08dd536dcaTorne (Richard Coles)jar_check_ok := $(intermediates.COMMON)/jar_check_ok 1071d6f99d5c9c776f5cfc638b0e020fb08dd536dcaTorne (Richard Coles)$(jar_check_ok): PRIVATE_JAR_CHECK := $(LOCAL_PATH)/tools/jar_check.py 1081d6f99d5c9c776f5cfc638b0e020fb08dd536dcaTorne (Richard Coles)$(jar_check_ok): PRIVATE_JAR_CHECK_WHITELIST := $(LOCAL_JAR_CHECK_WHITELIST) 1091d6f99d5c9c776f5cfc638b0e020fb08dd536dcaTorne (Richard Coles)$(jar_check_ok): $(full_classes_jarjar_jar) $(LOCAL_PATH)/tools/jar_check.py $(LOCAL_JAR_CHECK_WHITELIST) 1101d6f99d5c9c776f5cfc638b0e020fb08dd536dcaTorne (Richard Coles) @echo Jar check: $@ 1111d6f99d5c9c776f5cfc638b0e020fb08dd536dcaTorne (Richard Coles) $(hide) $(PRIVATE_JAR_CHECK) $< $(PRIVATE_JAR_CHECK_WHITELIST) 1121d6f99d5c9c776f5cfc638b0e020fb08dd536dcaTorne (Richard Coles) $(hide) touch $@ 1131d6f99d5c9c776f5cfc638b0e020fb08dd536dcaTorne (Richard Coles) 1141d6f99d5c9c776f5cfc638b0e020fb08dd536dcaTorne (Richard Coles)$(LOCAL_BUILT_MODULE): $(jar_check_ok) 1151d6f99d5c9c776f5cfc638b0e020fb08dd536dcaTorne (Richard Coles)endif 1161d6f99d5c9c776f5cfc638b0e020fb08dd536dcaTorne (Richard Coles) 117c09906e775b8e8ab1e3cd1c25080a4baa5724f80Torne (Richard Coles) 1181d6f99d5c9c776f5cfc638b0e020fb08dd536dcaTorne (Richard Coles) 119a2b0d0b4d6d1ff22fbb1329e358e1cc0a112aab3Jonathan Dixon# Native support library (libwebviewchromium_plat_support.so) - does NOT link 120c09906e775b8e8ab1e3cd1c25080a4baa5724f80Torne (Richard Coles)# any native chromium code. 121a2b0d0b4d6d1ff22fbb1329e358e1cc0a112aab3Jonathan Dixoninclude $(CLEAR_VARS) 122a2b0d0b4d6d1ff22fbb1329e358e1cc0a112aab3Jonathan Dixon 123a2b0d0b4d6d1ff22fbb1329e358e1cc0a112aab3Jonathan DixonLOCAL_MODULE:= libwebviewchromium_plat_support 124a2b0d0b4d6d1ff22fbb1329e358e1cc0a112aab3Jonathan Dixon 125a2b0d0b4d6d1ff22fbb1329e358e1cc0a112aab3Jonathan DixonLOCAL_SRC_FILES:= \ 126a2b0d0b4d6d1ff22fbb1329e358e1cc0a112aab3Jonathan Dixon plat_support/draw_gl_functor.cpp \ 127991b0c63bb8c0b0d8577a255b026117e9f37ceceJonathan Dixon plat_support/jni_entry_point.cpp \ 128991b0c63bb8c0b0d8577a255b026117e9f37ceceJonathan Dixon plat_support/graphics_utils.cpp \ 129c5cde8c18df853e11d1ec528508fd0fe2e742d5cKaan Baloglu plat_support/graphic_buffer_impl.cpp \ 130a2b0d0b4d6d1ff22fbb1329e358e1cc0a112aab3Jonathan Dixon 131a2b0d0b4d6d1ff22fbb1329e358e1cc0a112aab3Jonathan DixonLOCAL_C_INCLUDES:= \ 132991b0c63bb8c0b0d8577a255b026117e9f37ceceJonathan Dixon $(CHROMIUM_PATH) \ 133991b0c63bb8c0b0d8577a255b026117e9f37ceceJonathan Dixon external/skia/include/core \ 134991b0c63bb8c0b0d8577a255b026117e9f37ceceJonathan Dixon frameworks/base/core/jni/android/graphics \ 135c5cde8c18df853e11d1ec528508fd0fe2e742d5cKaan Baloglu frameworks/native/include/ui \ 136a2b0d0b4d6d1ff22fbb1329e358e1cc0a112aab3Jonathan Dixon 137a2b0d0b4d6d1ff22fbb1329e358e1cc0a112aab3Jonathan DixonLOCAL_SHARED_LIBRARIES += \ 138991b0c63bb8c0b0d8577a255b026117e9f37ceceJonathan Dixon libandroid_runtime \ 13982e61dd79e147076444acc16664368338904dc04Ying Wang liblog \ 140991b0c63bb8c0b0d8577a255b026117e9f37ceceJonathan Dixon libcutils \ 141991b0c63bb8c0b0d8577a255b026117e9f37ceceJonathan Dixon libskia \ 142c5cde8c18df853e11d1ec528508fd0fe2e742d5cKaan Baloglu libui \ 143a2b0d0b4d6d1ff22fbb1329e358e1cc0a112aab3Jonathan Dixon libutils \ 144a2b0d0b4d6d1ff22fbb1329e358e1cc0a112aab3Jonathan Dixon 145a2b0d0b4d6d1ff22fbb1329e358e1cc0a112aab3Jonathan DixonLOCAL_MODULE_TAGS := optional 146a2b0d0b4d6d1ff22fbb1329e358e1cc0a112aab3Jonathan Dixon 14703506360ed108ae00fad990fa49f7ada97fc7a04Kristian Monsen# To remove warnings from skia header files 14803506360ed108ae00fad990fa49f7ada97fc7a04Kristian MonsenLOCAL_CFLAGS := -Wno-unused-parameter 14903506360ed108ae00fad990fa49f7ada97fc7a04Kristian Monsen 150a2b0d0b4d6d1ff22fbb1329e358e1cc0a112aab3Jonathan Dixoninclude $(BUILD_SHARED_LIBRARY) 15125e9b72ff8ea3106d97cfee01dd9cb3ad5ec2c82Primiano Tucciinclude $(call first-makefiles-under,$(LOCAL_PATH)) 152