blob: cee5997fce899a7b5f15d8504b3e84700d3a16b5 [file] [log] [blame]
# Copyright (c) 2012 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.
# Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
# for details. All rights reserved. Use of this source code is governed by a
# BSD-style license that can be found in the LICENSE file.
# This file is a modified copy of Chromium's src/net/third_party/nss/ssl.gyp.
# Revision 165464 (this should agree with "nss_rev" in DEPS).
{
# Conditions section for ssl-bodge (Compiling SSL on linux using system
# NSS and NSPR libraries) removed:
# 'conditions': [
# [ 'os_posix == 1 and OS != "mac" and OS != "ios"', {
# ...
# }]],
# Added by Dart. All Dart comments refer to the following block or line.
'includes': [
'../../tools/gyp/runtime-configurations.gypi',
'../../tools/gyp/nss_configurations.gypi',
],
# Added by Dart.
'variables': {
'ssl_directory': '../../../third_party/net_nss',
'os_posix': 0,
},
# Added by Dart. We do not indent, so diffs with the original are clearer.
'conditions': [[ 'dart_io_support==1', {
'targets': [
{
'target_name': 'libssl_dart',
'type': 'static_library',
# Changed by Dart: '<(ssl_directory)/' added to all paths.
'sources': [
'<(ssl_directory)/ssl/authcert.c',
'<(ssl_directory)/ssl/cmpcert.c',
'<(ssl_directory)/ssl/derive.c',
'<(ssl_directory)/ssl/dtls1con.c',
'<(ssl_directory)/ssl/nsskea.c',
'<(ssl_directory)/ssl/os2_err.c',
'<(ssl_directory)/ssl/os2_err.h',
'<(ssl_directory)/ssl/preenc.h',
'<(ssl_directory)/ssl/prelib.c',
'<(ssl_directory)/ssl/ssl.h',
'<(ssl_directory)/ssl/ssl3con.c',
'<(ssl_directory)/ssl/ssl3ecc.c',
'<(ssl_directory)/ssl/ssl3ext.c',
'<(ssl_directory)/ssl/ssl3gthr.c',
'<(ssl_directory)/ssl/ssl3prot.h',
'<(ssl_directory)/ssl/sslauth.c',
'<(ssl_directory)/ssl/sslcon.c',
'<(ssl_directory)/ssl/ssldef.c',
'<(ssl_directory)/ssl/sslenum.c',
'<(ssl_directory)/ssl/sslerr.c',
'<(ssl_directory)/ssl/sslerr.h',
'<(ssl_directory)/ssl/SSLerrs.h',
'<(ssl_directory)/ssl/sslerrstrs.c',
'<(ssl_directory)/ssl/sslgathr.c',
'<(ssl_directory)/ssl/sslimpl.h',
'<(ssl_directory)/ssl/sslinfo.c',
'<(ssl_directory)/ssl/sslinit.c',
'<(ssl_directory)/ssl/sslmutex.c',
'<(ssl_directory)/ssl/sslmutex.h',
'<(ssl_directory)/ssl/sslnonce.c',
'<(ssl_directory)/ssl/sslplatf.c',
'<(ssl_directory)/ssl/sslproto.h',
'<(ssl_directory)/ssl/sslreveal.c',
'<(ssl_directory)/ssl/sslsecur.c',
'<(ssl_directory)/ssl/sslsnce.c',
'<(ssl_directory)/ssl/sslsock.c',
'<(ssl_directory)/ssl/sslt.h',
'<(ssl_directory)/ssl/ssltrace.c',
'<(ssl_directory)/ssl/sslver.c',
'<(ssl_directory)/ssl/unix_err.c',
'<(ssl_directory)/ssl/unix_err.h',
'<(ssl_directory)/ssl/win32err.c',
'<(ssl_directory)/ssl/win32err.h',
],
'sources!': [
'<(ssl_directory)/ssl/os2_err.c',
'<(ssl_directory)/ssl/os2_err.h',
],
'defines': [
'NSS_ENABLE_ECC',
'NSS_ENABLE_ZLIB',
'USE_UTIL_DIRECTLY',
],
'defines!': [
# Regrettably, NSS can't be compiled with NO_NSPR_10_SUPPORT yet.
'NO_NSPR_10_SUPPORT',
],
'dependencies': [
'zlib.gyp:zlib_dart',
# Dart: Start of copy of code from 'bodge' conditions section below.
'nss.gyp:nspr_dart',
'nss.gyp:nss_dart',
],
'export_dependent_settings': [
'nss.gyp:nspr_dart',
'nss.gyp:nss_dart',
],
'direct_dependent_settings': {
'include_dirs': [
'<(ssl_directory)/ssl',
],
'defines': [
'NSS_PLATFORM_CLIENT_AUTH',
],
# Dart: End of copy of code from bodge conditions section.
},
'msvs_disabled_warnings': [4018, 4244],
'conditions': [
[ 'clang == 1', {
'cflags': [
# See http://crbug.com/138571#c8. In short, sslsecur.c picks up the
# system's cert.h because cert.h isn't in chromium's repo.
'-Wno-incompatible-pointer-types',
],
}],
# Added by Dart.
[ 'OS == "linux"', {
'defines': [
'XP_UNIX',
'NSS_PLATFORM_CLIENT_AUTH',
'NSS_USE_STATIC_LIBS',
],
}],
[ 'OS == "mac" or OS == "ios"', {
'defines': [
'XP_UNIX',
'DARWIN',
'XP_MACOSX',
],
}],
[ 'OS == "win"', {
'sources!': [
'<(ssl_directory)/ssl/unix_err.c',
'<(ssl_directory)/ssl/unix_err.h',
],
},
{ # else: OS != "win"
'sources!': [
'<(ssl_directory)/ssl/win32err.c',
'<(ssl_directory)/ssl/win32err.h',
],
},
],
# Dart: Conditions sections for ssl/bodge removed.
# [ 'os_posix == 1 and OS != "mac" and OS != "ios", {
# ...
# ],
# [ 'OS == "mac" or OS == "ios" or OS == "win"', {
# ...
# ],
],
'configurations': {
'Debug_Base': {
'defines': [
'DEBUG',
],
},
},
},
],
}]],
}