|  | // | 
|  | // Copyright (C) 2018 The Android Open Source Project | 
|  | // | 
|  | // Licensed under the Apache License, Version 2.0 (the "License"); | 
|  | // you may not use this file except in compliance with the License. | 
|  | // You may obtain a copy of the License at | 
|  | // | 
|  | //      http://www.apache.org/licenses/LICENSE-2.0 | 
|  | // | 
|  | // Unless required by applicable law or agreed to in writing, software | 
|  | // distributed under the License is distributed on an "AS IS" BASIS, | 
|  | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | 
|  | // See the License for the specific language governing permissions and | 
|  | // limitations under the License. | 
|  | // | 
|  |  | 
|  | package { | 
|  | default_applicable_licenses: ["external_swiftshader_license"], | 
|  | } | 
|  |  | 
|  | // Added automatically by a large-scale-change that took the approach of | 
|  | // 'apply every license found to every target'. While this makes sure we respect | 
|  | // every license restriction, it may not be entirely correct. | 
|  | // | 
|  | // e.g. GPL in an MIT project might only apply to the contrib/ directory. | 
|  | // | 
|  | // Please consider splitting the single license below into multiple licenses, | 
|  | // taking care not to lose any license_kind information, and overriding the | 
|  | // default license using the 'licenses: [...]' property on targets as needed. | 
|  | // | 
|  | // For unused files, consider creating a 'filegroup' with "//visibility:private" | 
|  | // to attach the license to, and including a comment whether the files may be | 
|  | // used in the current project. | 
|  | // | 
|  | // large-scale-change filtered out the below license kinds as false-positives: | 
|  | //   SPDX-license-identifier-GPL | 
|  | //   SPDX-license-identifier-GPL-3.0 | 
|  | // http://go/android-license-faq | 
|  | license { | 
|  | name: "external_swiftshader_license", | 
|  | visibility: [":__subpackages__"], | 
|  | license_kinds: [ | 
|  | "SPDX-license-identifier-Apache-2.0", | 
|  | "SPDX-license-identifier-BSD", | 
|  | "SPDX-license-identifier-MIT", | 
|  | "SPDX-license-identifier-NCSA", | 
|  | "legacy_unencumbered", | 
|  | ], | 
|  | license_text: [ | 
|  | "LICENSE.txt", | 
|  | ], | 
|  | } | 
|  |  | 
|  | cc_defaults { | 
|  | name: "swiftshader_common", | 
|  |  | 
|  | gnu_extensions: false, | 
|  |  | 
|  | cflags: [ | 
|  | "-Werror", | 
|  | "-Wwrite-strings", | 
|  | ], | 
|  |  | 
|  | cppflags: [ | 
|  | "-Woverloaded-virtual", | 
|  | "-DVK_USE_PLATFORM_ANDROID_KHR", | 
|  | "-DVK_EXPORT= ", | 
|  | ], | 
|  | cpp_std: "c++17", | 
|  |  | 
|  | arch: { | 
|  | x86: { | 
|  | cflags: [ | 
|  | "-msse2", | 
|  | ], | 
|  | }, | 
|  | x86_64: { | 
|  | cflags: [ | 
|  | "-msse2", | 
|  | ], | 
|  | }, | 
|  | }, | 
|  |  | 
|  | target: { | 
|  | host: { | 
|  | cppflags: [ | 
|  | "-fno-rtti", | 
|  | "-fno-exceptions", | 
|  | ], | 
|  | compile_multilib: "64", | 
|  | }, | 
|  |  | 
|  | // We don't need Darwin host-side builds | 
|  | darwin: { | 
|  | enabled: false, | 
|  | }, | 
|  | }, | 
|  | } | 
|  |  | 
|  | cc_defaults { | 
|  | name: "swiftshader_common_release", | 
|  |  | 
|  | defaults: [ "swiftshader_common" ], | 
|  |  | 
|  | cflags: [ | 
|  | "-Os", | 
|  | "-fomit-frame-pointer", | 
|  | "-ffunction-sections", | 
|  | "-fdata-sections", | 
|  | ], | 
|  | } | 
|  |  | 
|  | cc_defaults { | 
|  | name: "swiftshader_common_debug", | 
|  |  | 
|  | defaults: [ "swiftshader_common" ], | 
|  |  | 
|  | cflags: [ | 
|  | "-O0", | 
|  | "-g", | 
|  | "-UNDEBUG", | 
|  | ], | 
|  | } | 
|  |  | 
|  | cc_library_headers { | 
|  | name: "swiftshader_platform_headers", | 
|  | host_supported: true, | 
|  | device_supported: true, | 
|  | vendor_available: true, | 
|  | export_include_dirs: ["include"], | 
|  | } | 
|  |  | 
|  | cc_library_headers { | 
|  | name: "swiftshader_host_headers", | 
|  | device_supported: false, | 
|  | host_supported: true, | 
|  | export_include_dirs: ["include/Android"], | 
|  | } |