| OLD | NEW | 
|    1 # Copyright (c) 2013 The Chromium Authors. All rights reserved. |    1 # Copyright (c) 2013 The Chromium Authors. All rights reserved. | 
|    2 # Use of this source code is governed by a BSD-style license that can be |    2 # Use of this source code is governed by a BSD-style license that can be | 
|    3 # found in the LICENSE file. |    3 # found in the LICENSE file. | 
|    4  |    4  | 
|    5 config("ssl_config") { |    5 config("ssl_config") { | 
|    6   include_dirs = [ "." ] |    6   include_dirs = [ "." ] | 
|    7  |    7  | 
|    8   if (is_mac || is_win) { |    8   if (is_mac || is_win) { | 
|    9     defines = [ "NSS_PLATFORM_CLIENT_AUTH" ] |    9     defines = [ "NSS_PLATFORM_CLIENT_AUTH" ] | 
|   10   } |   10   } | 
|   11 } |   11 } | 
|   12  |   12  | 
|   13 component("libssl") { |   13 component("libssl") { | 
|   14   output_name = "crssl" |   14   output_name = "crssl" | 
|   15  |   15  | 
|   16   sources = [ |   16   sources = [ | 
|   17     "SSLerrs.h", |   17     "SSLerrs.h", | 
|   18     "authcert.c", |   18     "authcert.c", | 
|   19     "bodge/secitem_array.c", |  | 
|   20     "cmpcert.c", |   19     "cmpcert.c", | 
|   21     "derive.c", |   20     "derive.c", | 
|   22     "dtlscon.c", |   21     "dtlscon.c", | 
|   23     "preenc.h", |   22     "preenc.h", | 
|   24     "prelib.c", |   23     "prelib.c", | 
|   25     "ssl.h", |   24     "ssl.h", | 
|   26     "ssl3con.c", |   25     "ssl3con.c", | 
|   27     "ssl3ecc.c", |   26     "ssl3ecc.c", | 
|   28     "ssl3ext.c", |   27     "ssl3ext.c", | 
|   29     "ssl3gthr.c", |   28     "ssl3gthr.c", | 
|   30     "ssl3prot.h", |   29     "ssl3prot.h", | 
|   31     "sslauth.c", |   30     "sslauth.c", | 
|   32     "sslcon.c", |   31     "sslcon.c", | 
|   33     "ssldef.c", |   32     "ssldef.c", | 
|   34     "sslenum.c", |   33     "sslenum.c", | 
|   35     "sslerr.c", |   34     "sslerr.c", | 
|   36     "sslerr.h", |   35     "sslerr.h", | 
|   37     "sslerrstrs.c", |   36     "sslerrstrs.c", | 
|   38     "sslgathr.c", |   37     "sslgathr.c", | 
|   39     "sslimpl.h", |   38     "sslimpl.h", | 
|   40     "sslinfo.c", |   39     "sslinfo.c", | 
|   41     "sslinit.c", |   40     "sslinit.c", | 
|   42     "sslmutex.c", |   41     "sslmutex.c", | 
|   43     "sslmutex.h", |   42     "sslmutex.h", | 
|   44     "sslnonce.c", |   43     "sslnonce.c", | 
|   45     "sslplatf.c", |  | 
|   46     "sslproto.h", |   44     "sslproto.h", | 
|   47     "sslreveal.c", |   45     "sslreveal.c", | 
|   48     "sslsecur.c", |   46     "sslsecur.c", | 
|   49     "sslsnce.c", |   47     "sslsnce.c", | 
|   50     "sslsock.c", |   48     "sslsock.c", | 
|   51     "sslt.h", |   49     "sslt.h", | 
|   52     "ssltrace.c", |   50     "ssltrace.c", | 
|   53     "sslver.c", |   51     "sslver.c", | 
 |   52     "tls13con.c", | 
 |   53     "tls13con.h", | 
 |   54     "tls13hkdf.c", | 
 |   55     "tls13hkdf.h", | 
|   54     "unix_err.c", |   56     "unix_err.c", | 
|   55     "unix_err.h", |   57     "unix_err.h", | 
|   56     "win32err.c", |  | 
|   57     "win32err.h", |  | 
|   58   ] |   58   ] | 
|   59  |   59  | 
|   60   public_configs = [ ":ssl_config" ] |   60   public_configs = [ ":ssl_config" ] | 
|   61  |   61  | 
|   62   cflags = [] |   62   cflags = [] | 
|   63   defines = [ |   63   defines = [ | 
|   64     "NO_PKCS11_BYPASS", |   64     "NO_PKCS11_BYPASS", | 
|   65     "NSS_ENABLE_ECC", |   65     "NSS_ENABLE_ECC", | 
|   66     "USE_UTIL_DIRECTLY", |   66     "USE_UTIL_DIRECTLY", | 
|   67   ] |   67   ] | 
|   68  |   68  | 
|   69   configs -= [ "//build/config/compiler:chromium_code" ] |   69   configs -= [ "//build/config/compiler:chromium_code" ] | 
|   70   configs += [ "//build/config/compiler:no_chromium_code" ] |   70   configs += [ "//build/config/compiler:no_chromium_code" ] | 
|   71  |   71  | 
|   72   if (is_win) { |  | 
|   73     sources -= [ |  | 
|   74       "unix_err.c", |  | 
|   75       "unix_err.h", |  | 
|   76     ] |  | 
|   77     if (is_component_build) { |  | 
|   78       ldflags = [ "/DEF:" + rebase_path("exports_win.def", root_build_dir) ] |  | 
|   79     } |  | 
|   80   } else if (is_linux) { |  | 
|   81     if (is_component_build) { |  | 
|   82       configs -= [ "//build/config/gcc:symbol_visibility_hidden" ] |  | 
|   83     } |  | 
|   84  |  | 
|   85     libs = [ "dl" ] |  | 
|   86  |  | 
|   87     include_dirs = [ "bodge" ] |  | 
|   88  |  | 
|   89     # Must be after ssl_config since we want our SSL headers to take |  | 
|   90     # precedence. |  | 
|   91     public_configs += [ "//third_party/nss:system_nss_no_ssl_config" ] |  | 
|   92   } else if (is_mac) { |  | 
|   93     libs = [ "Security.framework" ] |  | 
|   94   } |  | 
|   95  |  | 
|   96   if (is_clang) { |   72   if (is_clang) { | 
|   97     # SSL triggers some of these Clang warnings. |   73     # SSL triggers some of these Clang warnings. | 
|   98     configs -= [ "//build/config/clang:extra_warnings" ] |   74     configs -= [ "//build/config/clang:extra_warnings" ] | 
|   99  |   75  | 
|  100     # There is a broken header guard in /usr/include/nss/secmod.h: |   76     # There is a broken header guard in /usr/include/nss/secmod.h: | 
|  101     # https://bugzilla.mozilla.org/show_bug.cgi?id=884072 |   77     # https://bugzilla.mozilla.org/show_bug.cgi?id=884072 | 
|  102     cflags = [ "-Wno-header-guard" ] |   78     cflags = [ "-Wno-header-guard" ] | 
|  103  |   79  | 
|  104     if (is_ios) { |   80     if (is_ios) { | 
|  105       # libssl uses routines deprecated on iOS (sem_init/sem_destroy). |   81       # libssl uses routines deprecated on iOS (sem_init/sem_destroy). | 
|  106       # https://bugzilla.mozilla.org/show_bug.cgi?id=1192500 |   82       # https://bugzilla.mozilla.org/show_bug.cgi?id=1192500 | 
|  107       cflags += [ "-Wno-deprecated-declarations" ] |   83       cflags += [ "-Wno-deprecated-declarations" ] | 
|  108     } |   84     } | 
|  109   } |   85   } | 
|  110  |   86  | 
|  111   if (is_posix) { |   87   if (is_ios) { | 
|  112     sources -= [ |  | 
|  113       "win32err.c", |  | 
|  114       "win32err.h", |  | 
|  115     ] |  | 
|  116   } |  | 
|  117  |  | 
|  118   if (is_mac || is_ios) { |  | 
|  119     defines += [ |   88     defines += [ | 
|  120       "XP_UNIX", |   89       "XP_UNIX", | 
|  121       "DARWIN", |   90       "DARWIN", | 
|  122       "XP_MACOSX", |   91       "XP_MACOSX", | 
|  123     ] |   92     ] | 
|  124   } |   93   } | 
|  125  |   94  | 
|  126   if (is_mac || is_ios || is_win) { |   95   if (is_ios) { | 
|  127     sources -= [ "bodge/secitem_array.c" ] |  | 
|  128     public_deps = [ |   96     public_deps = [ | 
|  129       "//third_party/nss:nspr", |   97       "//third_party/nss:nspr", | 
|  130       "//third_party/nss:nss", |   98       "//third_party/nss:nss", | 
|  131     ] |   99     ] | 
|  132   } |  100   } | 
|  133  |  101  | 
|  134   if (is_debug) { |  102   if (is_debug) { | 
|  135     defines += [ "DEBUG" ] |  103     defines += [ "DEBUG" ] | 
|  136   } |  104   } | 
|  137 } |  105 } | 
| OLD | NEW |