1*fc3927beSAndroid Build Coastguard Worker// 2*fc3927beSAndroid Build Coastguard Worker// Copyright (C) 2008 The Android Open Source Project 3*fc3927beSAndroid Build Coastguard Worker// 4*fc3927beSAndroid Build Coastguard Worker// Licensed under the Apache License, Version 2.0 (the "License"); 5*fc3927beSAndroid Build Coastguard Worker// you may not use this file except in compliance with the License. 6*fc3927beSAndroid Build Coastguard Worker// You may obtain a copy of the License at 7*fc3927beSAndroid Build Coastguard Worker// 8*fc3927beSAndroid Build Coastguard Worker// http://www.apache.org/licenses/LICENSE-2.0 9*fc3927beSAndroid Build Coastguard Worker// 10*fc3927beSAndroid Build Coastguard Worker// Unless required by applicable law or agreed to in writing, software 11*fc3927beSAndroid Build Coastguard Worker// distributed under the License is distributed on an "AS IS" BASIS, 12*fc3927beSAndroid Build Coastguard Worker// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13*fc3927beSAndroid Build Coastguard Worker// See the License for the specific language governing permissions and 14*fc3927beSAndroid Build Coastguard Worker// limitations under the License. 15*fc3927beSAndroid Build Coastguard Worker// 16*fc3927beSAndroid Build Coastguard Worker 17*fc3927beSAndroid Build Coastguard Worker// 18*fc3927beSAndroid Build Coastguard Worker// Define rules to build temp_layoutlib.jar, which contains a subset of 19*fc3927beSAndroid Build Coastguard Worker// the classes in framework.jar. The layoutlib_create tool is used to 20*fc3927beSAndroid Build Coastguard Worker// transform the framework jar into the temp_layoutlib jar. 21*fc3927beSAndroid Build Coastguard Worker// 22*fc3927beSAndroid Build Coastguard Worker 23*fc3927beSAndroid Build Coastguard Workerpackage { 24*fc3927beSAndroid Build Coastguard Worker // See: http://go/android-license-faq 25*fc3927beSAndroid Build Coastguard Worker default_applicable_licenses: ["Android-Apache-2.0"], 26*fc3927beSAndroid Build Coastguard Worker} 27*fc3927beSAndroid Build Coastguard Worker 28*fc3927beSAndroid Build Coastguard Workerjava_genrule_host { 29*fc3927beSAndroid Build Coastguard Worker name: "temp_layoutlib", 30*fc3927beSAndroid Build Coastguard Worker tools: ["layoutlib_create"], 31*fc3927beSAndroid Build Coastguard Worker out: ["temp_layoutlib.jar"], 32*fc3927beSAndroid Build Coastguard Worker srcs: [ 33*fc3927beSAndroid Build Coastguard Worker ":atf-prebuilt-557133692{.jar}", // HOST 34*fc3927beSAndroid Build Coastguard Worker ":icu4j-icudata-jarjar{.jar}", // HOST 35*fc3927beSAndroid Build Coastguard Worker ":icu4j-icutzdata-jarjar{.jar}", // HOST 36*fc3927beSAndroid Build Coastguard Worker ], 37*fc3927beSAndroid Build Coastguard Worker device_common_srcs: [ 38*fc3927beSAndroid Build Coastguard Worker ":core-icu4j-for-host{.jar}", 39*fc3927beSAndroid Build Coastguard Worker ":core-libart-for-host{.jar}", 40*fc3927beSAndroid Build Coastguard Worker ":framework-all{.jar}", 41*fc3927beSAndroid Build Coastguard Worker ":ext{.jar}", 42*fc3927beSAndroid Build Coastguard Worker ":iconloader_base{.jar}", 43*fc3927beSAndroid Build Coastguard Worker ":monet{.jar}", 44*fc3927beSAndroid Build Coastguard Worker ], 45*fc3927beSAndroid Build Coastguard Worker cmd: "rm -f $(out) && $(location layoutlib_create) --create-stub $(out) $(in)", 46*fc3927beSAndroid Build Coastguard Worker} 47*fc3927beSAndroid Build Coastguard Worker 48*fc3927beSAndroid Build Coastguard Workerjava_device_for_host { 49*fc3927beSAndroid Build Coastguard Worker name: "layoutlib_create-classpath", 50*fc3927beSAndroid Build Coastguard Worker libs: [ 51*fc3927beSAndroid Build Coastguard Worker "conscrypt-for-host", 52*fc3927beSAndroid Build Coastguard Worker "core-icu4j-for-host", 53*fc3927beSAndroid Build Coastguard Worker "core-libart-for-host", 54*fc3927beSAndroid Build Coastguard Worker "ext", 55*fc3927beSAndroid Build Coastguard Worker "framework-all", 56*fc3927beSAndroid Build Coastguard Worker "iconloader_base", 57*fc3927beSAndroid Build Coastguard Worker "icu4j-icudata-jarjar", 58*fc3927beSAndroid Build Coastguard Worker "icu4j-icutzdata-jarjar", 59*fc3927beSAndroid Build Coastguard Worker "monet", 60*fc3927beSAndroid Build Coastguard Worker ], 61*fc3927beSAndroid Build Coastguard Worker} 62*fc3927beSAndroid Build Coastguard Worker 63*fc3927beSAndroid Build Coastguard Workercc_library_host_shared { 64*fc3927beSAndroid Build Coastguard Worker name: "layoutlib_jni", 65*fc3927beSAndroid Build Coastguard Worker srcs: [ 66*fc3927beSAndroid Build Coastguard Worker "jni/android_view_LayoutlibRenderer.cpp", 67*fc3927beSAndroid Build Coastguard Worker "jni/LayoutlibLoader.cpp", 68*fc3927beSAndroid Build Coastguard Worker ], 69*fc3927beSAndroid Build Coastguard Worker cflags: [ 70*fc3927beSAndroid Build Coastguard Worker "-Wno-unused-parameter", 71*fc3927beSAndroid Build Coastguard Worker ], 72*fc3927beSAndroid Build Coastguard Worker header_libs: [ 73*fc3927beSAndroid Build Coastguard Worker "libbase_headers", 74*fc3927beSAndroid Build Coastguard Worker "libhostgraphics_headers", 75*fc3927beSAndroid Build Coastguard Worker "libnativebase_headers", 76*fc3927beSAndroid Build Coastguard Worker "libnativedisplay_headers", 77*fc3927beSAndroid Build Coastguard Worker "libnativewindow_headers", 78*fc3927beSAndroid Build Coastguard Worker ], 79*fc3927beSAndroid Build Coastguard Worker shared_libs: [ 80*fc3927beSAndroid Build Coastguard Worker "libandroid_runtime", 81*fc3927beSAndroid Build Coastguard Worker ], 82*fc3927beSAndroid Build Coastguard Worker static_libs: [ 83*fc3927beSAndroid Build Coastguard Worker "libhostgraphics", 84*fc3927beSAndroid Build Coastguard Worker "libinput", 85*fc3927beSAndroid Build Coastguard Worker ], 86*fc3927beSAndroid Build Coastguard Worker stl: "libc++_static", 87*fc3927beSAndroid Build Coastguard Worker target: { 88*fc3927beSAndroid Build Coastguard Worker linux: { 89*fc3927beSAndroid Build Coastguard Worker version_script: "jni/linux/layoutlib_jni_export.txt", 90*fc3927beSAndroid Build Coastguard Worker }, 91*fc3927beSAndroid Build Coastguard Worker darwin: { 92*fc3927beSAndroid Build Coastguard Worker ldflags: ["-Wl,-exported_symbols_list,frameworks/layoutlib/jni/darwin/layoutlib_jni_export.exp"], 93*fc3927beSAndroid Build Coastguard Worker dist: { 94*fc3927beSAndroid Build Coastguard Worker targets: ["layoutlib_jni"], 95*fc3927beSAndroid Build Coastguard Worker dir: "layoutlib_native/darwin", 96*fc3927beSAndroid Build Coastguard Worker }, 97*fc3927beSAndroid Build Coastguard Worker }, 98*fc3927beSAndroid Build Coastguard Worker linux_glibc_x86_64: { 99*fc3927beSAndroid Build Coastguard Worker dist: { 100*fc3927beSAndroid Build Coastguard Worker targets: ["layoutlib"], 101*fc3927beSAndroid Build Coastguard Worker dir: "layoutlib_native/linux", 102*fc3927beSAndroid Build Coastguard Worker tag: "stripped_all", 103*fc3927beSAndroid Build Coastguard Worker }, 104*fc3927beSAndroid Build Coastguard Worker }, 105*fc3927beSAndroid Build Coastguard Worker }, 106*fc3927beSAndroid Build Coastguard Worker} 107