| # Copyright 2014 The Chromium Authors. All rights reserved. |
| # Use of this source code is governed by a BSD-style license that can be |
| # found in the LICENSE file. |
| |
| config("lzma_sdk_config") { |
| include_dirs = [ "." ] |
| } |
| |
| # Must be in a config because of how GN orders flags (otherwise -Wall will |
| # appear after this, and turn it back on). |
| config("clang_warnings") { |
| if (is_clang) { |
| # Upstream uses self-assignment to avoid warnings. |
| cflags = [ "-Wno-self-assign" ] |
| } |
| } |
| |
| config("lzma_defines") { |
| defines = [ |
| "_7ZIP_ST", |
| "_7Z_NO_METHODS_FILTERS", |
| "_LZMA_PROB32", |
| ] |
| } |
| |
| static_library("lzma_sdk") { |
| sources = [ |
| "7z.h", |
| "7zAlloc.c", |
| "7zAlloc.h", |
| "7zArcIn.c", |
| "7zBuf.c", |
| "7zBuf.h", |
| "7zCrc.c", |
| "7zCrc.h", |
| "7zCrcOpt.c", |
| "7zDec.c", |
| "7zFile.c", |
| "7zFile.h", |
| "7zStream.c", |
| "7zTypes.h", |
| "Alloc.c", |
| "Alloc.h", |
| "Bcj2.c", |
| "Bcj2.h", |
| "Bra.c", |
| "Bra.h", |
| "Bra86.c", |
| "Compiler.h", |
| "CpuArch.c", |
| "CpuArch.h", |
| "Delta.c", |
| "Delta.h", |
| "LzFind.c", |
| "LzFind.h", |
| "LzHash.h", |
| "Lzma2Dec.c", |
| "Lzma2Dec.h", |
| "LzmaDec.c", |
| "LzmaDec.h", |
| "LzmaEnc.c", |
| "LzmaEnc.h", |
| "LzmaLib.c", |
| "LzmaLib.h", |
| "Precomp.h", |
| ] |
| |
| configs -= [ "//build/config/compiler:chromium_code" ] |
| configs += [ |
| "//build/config/compiler:no_chromium_code", |
| |
| # Must be after no_chromium_code for warning flags to be ordered correctly. |
| ":clang_warnings", |
| ":lzma_defines", |
| ] |
| public_configs = [ ":lzma_sdk_config" ] |
| } |
| |
| static_library("lzma_sdk_xz") { |
| sources = [ |
| "BraIA64.c", |
| "RotateDefs.h", |
| "Sha256.c", |
| "Sha256.h", |
| "Xz.c", |
| "Xz.h", |
| "XzCrc64.c", |
| "XzCrc64.h", |
| "XzCrc64Opt.c", |
| "XzDec.c", |
| ] |
| |
| deps = [ ":lzma_sdk" ] |
| |
| configs -= [ "//build/config/compiler:chromium_code" ] |
| configs += [ |
| "//build/config/compiler:no_chromium_code", |
| |
| # Must be after no_chromium_code for warning flags to be ordered correctly. |
| ":clang_warnings", |
| ":lzma_defines", |
| ] |
| public_configs = [ ":lzma_sdk_config" ] |
| } |