Roll src/third_party/WebKit 4fb37b4:453ef496 (svn 202564:202565)
[chromium-blink-merge.git] / third_party / libxslt / BUILD.gn
blob3f27c5de5e688bbc0d72ee27af05f9418a3afeaf
1 # Copyright 2014 The Chromium Authors. All rights reserved.
2 # Use of this source code is governed by a BSD-style license that can be
3 # found in the LICENSE file.
5 config("libxslt_config") {
6   defines = [ "LIBXSLT_STATIC" ]
7   include_dirs = [ "." ]
10 config("libxslt_warnings") {
11   if (is_clang) {
12     cflags = [
13       # libxslt stores a char[3] in a `const unsigned char*`.
14       "-Wno-pointer-sign",
16       # xsltDefaultRegion and xsltCalibrateTimestamps are only
17       # used with certain preprocessor defines set.
18       "-Wno-unused-function",
19     ]
20   }
23 static_library("libxslt") {
24   sources = [
25     "libxslt/attributes.c",
26     "libxslt/attributes.h",
27     "libxslt/attrvt.c",
28     "libxslt/documents.c",
29     "libxslt/documents.h",
30     "libxslt/extensions.c",
31     "libxslt/extensions.h",
32     "libxslt/extra.c",
33     "libxslt/extra.h",
34     "libxslt/functions.c",
35     "libxslt/functions.h",
36     "libxslt/imports.c",
37     "libxslt/imports.h",
38     "libxslt/keys.c",
39     "libxslt/keys.h",
40     "libxslt/libxslt.h",
41     "libxslt/namespaces.c",
42     "libxslt/namespaces.h",
43     "libxslt/numbers.c",
44     "libxslt/numbersInternals.h",
45     "libxslt/pattern.c",
46     "libxslt/pattern.h",
47     "libxslt/preproc.c",
48     "libxslt/preproc.h",
49     "libxslt/security.c",
50     "libxslt/security.h",
51     "libxslt/templates.c",
52     "libxslt/templates.h",
53     "libxslt/transform.c",
54     "libxslt/transform.h",
55     "libxslt/trio.h",
56     "libxslt/triodef.h",
57     "libxslt/variables.c",
58     "libxslt/variables.h",
59     "libxslt/win32config.h",
60     "libxslt/xslt.c",
61     "libxslt/xslt.h",
62     "libxslt/xsltInternals.h",
63     "libxslt/xsltconfig.h",
64     "libxslt/xsltexports.h",
65     "libxslt/xsltlocale.c",
66     "libxslt/xsltlocale.h",
67     "libxslt/xsltutils.c",
68     "libxslt/xsltutils.h",
69     "libxslt/xsltwin32config.h",
70     "linux/config.h",
71     "mac/config.h",
72     "win32/config.h",
73   ]
75   configs -= [ "//build/config/compiler:chromium_code" ]
76   configs += [
77     "//build/config/compiler:no_chromium_code",
79     # Must be after no_chromium_code for warning flags to be ordered correctly.
80     ":libxslt_warnings",
81   ]
82   public_configs = [ ":libxslt_config" ]
84   cflags = []
85   if (is_linux || is_android) {
86     include_dirs = [ "linux" ]
87   } else if (is_win) {
88     include_dirs = [ "win32" ]
89     cflags += [ "/wd4267" ]  # size_t to int.
90   } else if (is_mac) {
91     include_dirs = [ "mac" ]
92   }
94   deps = [
95     "//third_party/libxml",
96   ]