blob: 192adaeb7f5958b22240ac764a3fef483f5e6ed6 [file] [log] [blame]
# Copyright 2017 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("minizip_compiler_flags") {
if (is_clang) {
cflags = [ "-Wno-unused-function" ]
if (!is_nacl && (target_cpu == "x86" || target_cpu == "x64")) {
cflags += [
"-maes",
"-msse3",
"-msse4.1",
]
}
}
}
config("minizip_include_dirs") {
include_dirs = [ "//third_party/zlib" ]
}
static_library("minizip") {
sources = [
"src/aes/aes.h",
"src/aes/aes_ni.c",
"src/aes/aes_ni.h",
"src/aes/aes_via_ace.h",
"src/aes/aescrypt.c",
"src/aes/aeskey.c",
"src/aes/aesopt.h",
"src/aes/aestab.c",
"src/aes/aestab.h",
"src/aes/brg_endian.h",
"src/aes/brg_types.h",
"src/aes/fileenc.c",
"src/aes/fileenc.h",
"src/aes/hmac.c",
"src/aes/hmac.h",
"src/aes/prng.c",
"src/aes/prng.h",
"src/aes/pwd2key.c",
"src/aes/pwd2key.h",
"src/aes/sha1.c",
"src/aes/sha1.h",
"src/crypt.c",
"src/crypt.h",
"src/ioapi.c",
"src/ioapi.h",
"src/ioapi_buf.c",
"src/ioapi_buf.h",
"src/ioapi_mem.c",
"src/ioapi_mem.h",
"src/unzip.c",
"src/unzip.h",
"src/zip.c",
"src/zip.h",
]
defines = [
"HAVE_AES",
"NOCRYPT",
]
if (is_nacl) {
defines += [ "USE_FILE32API" ]
}
configs += [ ":minizip_compiler_flags" ]
public_configs = [ ":minizip_include_dirs" ]
deps = [
"//third_party/zlib:zlib",
]
visibility = [
# NOTE: Modifying visibility list requires approval from security team.
"//testing/libfuzzer/fuzzers:*",
"//chrome/browser/resources/chromeos/zip_archiver/cpp:zip_archiver_library",
]
}