1*d2c16535SElliott Hughespackage { 2*d2c16535SElliott Hughes default_applicable_licenses: ["external_xz-embedded_license"], 3*d2c16535SElliott Hughes} 4*d2c16535SElliott Hughes 5*d2c16535SElliott Hughes// Added automatically by a large-scale-change 6*d2c16535SElliott Hughes// See: http://go/android-license-faq 7*d2c16535SElliott Hugheslicense { 8*d2c16535SElliott Hughes name: "external_xz-embedded_license", 9*d2c16535SElliott Hughes visibility: [":__subpackages__"], 10*d2c16535SElliott Hughes license_kinds: [ 11*d2c16535SElliott Hughes "legacy_unencumbered", 12*d2c16535SElliott Hughes ], 13*d2c16535SElliott Hughes license_text: [ 14*d2c16535SElliott Hughes "COPYING", 15*d2c16535SElliott Hughes ], 16*d2c16535SElliott Hughes} 17*d2c16535SElliott Hughes 18*d2c16535SElliott Hughescc_library_static { 19*d2c16535SElliott Hughes name: "libxz", 20*d2c16535SElliott Hughes host_supported: true, 21*d2c16535SElliott Hughes ramdisk_available: true, 22*d2c16535SElliott Hughes vendor_ramdisk_available: true, 23*d2c16535SElliott Hughes recovery_available: true, 24*d2c16535SElliott Hughes visibility: [ 25*d2c16535SElliott Hughes "//system/update_engine:__subpackages__", 26*d2c16535SElliott Hughes "//tools/security/fuzzing/llm/xz_fuzzer:__subpackages__", 27*d2c16535SElliott Hughes ], 28*d2c16535SElliott Hughes srcs: [ 29*d2c16535SElliott Hughes "linux/lib/xz/xz_crc32.c", 30*d2c16535SElliott Hughes "linux/lib/xz/xz_dec_bcj.c", 31*d2c16535SElliott Hughes "linux/lib/xz/xz_dec_lzma2.c", 32*d2c16535SElliott Hughes "linux/lib/xz/xz_dec_stream.c", 33*d2c16535SElliott Hughes ], 34*d2c16535SElliott Hughes local_include_dirs: ["userspace"], 35*d2c16535SElliott Hughes 36*d2c16535SElliott Hughes // We shouldn't enable branch/call/jump filters because they have no impact 37*d2c16535SElliott Hughes // on Android OTA sizes (measured in http://b/329112384) --- the frequent 38*d2c16535SElliott Hughes // function calls that this optimization is supposed to apply to will all go 39*d2c16535SElliott Hughes // via the PLT, so the actual branch/call/jump instructions in the ELF file 40*d2c16535SElliott Hughes // will be zeroed out anyway. 41*d2c16535SElliott Hughes // Unfortunately, as long as we need to support decompressing _existing_ 42*d2c16535SElliott Hughes // OTA packages, we need to keep these in (but it's not worth adding new 43*d2c16535SElliott Hughes // ones). 44*d2c16535SElliott Hughes cflags: [ 45*d2c16535SElliott Hughes "-DXZ_DEC_X86", 46*d2c16535SElliott Hughes "-DXZ_DEC_ARM", 47*d2c16535SElliott Hughes "-DXZ_DEC_ARMTHUMB", 48*d2c16535SElliott Hughes "-Wall", 49*d2c16535SElliott Hughes "-Werror", 50*d2c16535SElliott Hughes ], 51*d2c16535SElliott Hughes 52*d2c16535SElliott Hughes export_include_dirs: ["linux/include/linux/"], 53*d2c16535SElliott Hughes} 54