| OLD | NEW | 
 | (Empty) | 
|    1 # Copyright 2013 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. |  | 
|    4  |  | 
|    5 { |  | 
|    6   'targets': [ |  | 
|    7     { |  | 
|    8       'target_name': 'libcxx_proxy', |  | 
|    9       'type': 'none', |  | 
|   10       'dependencies=': [ |  | 
|   11         'libc++', |  | 
|   12       ], |  | 
|   13       # Do not add dependency on libc++.so to dependents of this target. We |  | 
|   14       # don't want to pass libc++.so on the command line to the linker, as that |  | 
|   15       # would cause it to be linked into C executables which don't need it. |  | 
|   16       # Instead, we supply -stdlib=libc++ and let the clang driver decide. |  | 
|   17       'dependencies_traverse': 0, |  | 
|   18       'variables': { |  | 
|   19         # Don't add this target to the dependencies of targets with type=none. |  | 
|   20         'link_dependency': 1, |  | 
|   21       }, |  | 
|   22       'all_dependent_settings': { |  | 
|   23         'target_conditions': [ |  | 
|   24           ['_type!="none"', { |  | 
|   25             'include_dirs': [ |  | 
|   26               'trunk/include', |  | 
|   27               '../libc++abi/trunk/include', |  | 
|   28             ], |  | 
|   29             'cflags_cc': [ |  | 
|   30               '-nostdinc++', |  | 
|   31             ], |  | 
|   32             'ldflags': [ |  | 
|   33               '-stdlib=libc++', |  | 
|   34               # Normally the generator takes care of RPATH. Our case is special |  | 
|   35               # because the generator is unaware of the libc++.so dependency. |  | 
|   36               # Note that setting RPATH here is a potential security issue. See: |  | 
|   37               # https://code.google.com/p/gyp/issues/detail?id=315 |  | 
|   38               '-Wl,-R,\$$ORIGIN/lib/', |  | 
|   39             ], |  | 
|   40             'library_dirs': [ |  | 
|   41               '<(PRODUCT_DIR)/lib/', |  | 
|   42             ], |  | 
|   43           }], |  | 
|   44         ], |  | 
|   45       }, |  | 
|   46     }, |  | 
|   47     { |  | 
|   48       'target_name': 'libc++', |  | 
|   49       'type': 'shared_library', |  | 
|   50       'dependencies=': [ |  | 
|   51         # libc++abi is linked statically into libc++.so. This allows us to get |  | 
|   52         # both libc++ and libc++abi by passing '-stdlib=libc++'. If libc++abi |  | 
|   53         # was a separate DSO, we'd have to link against it explicitly. |  | 
|   54         '../libc++abi/libc++abi.gyp:libc++abi', |  | 
|   55       ], |  | 
|   56       'sources': [ |  | 
|   57         'trunk/src/algorithm.cpp', |  | 
|   58         'trunk/src/bind.cpp', |  | 
|   59         'trunk/src/chrono.cpp', |  | 
|   60         'trunk/src/condition_variable.cpp', |  | 
|   61         'trunk/src/debug.cpp', |  | 
|   62         'trunk/src/exception.cpp', |  | 
|   63         'trunk/src/future.cpp', |  | 
|   64         'trunk/src/hash.cpp', |  | 
|   65         'trunk/src/ios.cpp', |  | 
|   66         'trunk/src/iostream.cpp', |  | 
|   67         'trunk/src/locale.cpp', |  | 
|   68         'trunk/src/memory.cpp', |  | 
|   69         'trunk/src/mutex.cpp', |  | 
|   70         'trunk/src/new.cpp', |  | 
|   71         'trunk/src/optional.cpp', |  | 
|   72         'trunk/src/random.cpp', |  | 
|   73         'trunk/src/regex.cpp', |  | 
|   74         'trunk/src/shared_mutex.cpp', |  | 
|   75         'trunk/src/stdexcept.cpp', |  | 
|   76         'trunk/src/string.cpp', |  | 
|   77         'trunk/src/strstream.cpp', |  | 
|   78         'trunk/src/system_error.cpp', |  | 
|   79         'trunk/src/thread.cpp', |  | 
|   80         'trunk/src/typeinfo.cpp', |  | 
|   81         'trunk/src/utility.cpp', |  | 
|   82         'trunk/src/valarray.cpp', |  | 
|   83       ], |  | 
|   84       'include_dirs': [ |  | 
|   85         'trunk/include', |  | 
|   86         '../libc++abi/trunk/include', |  | 
|   87       ], |  | 
|   88       'cflags': [ |  | 
|   89         '-fstrict-aliasing', |  | 
|   90         '-nostdinc++', |  | 
|   91         '-std=c++11', |  | 
|   92       ], |  | 
|   93       'cflags_cc!': [ |  | 
|   94         '-fno-exceptions', |  | 
|   95         '-fno-rtti', |  | 
|   96       ], |  | 
|   97       'cflags!': [ |  | 
|   98         '-fvisibility=hidden', |  | 
|   99       ], |  | 
|  100       'ldflags': [ |  | 
|  101         '-nodefaultlibs', |  | 
|  102       ], |  | 
|  103       'ldflags!': [ |  | 
|  104         # This somehow causes a warning from clang about an unused compilation |  | 
|  105         # option. Use '-lpthread' instead. |  | 
|  106         # TODO(earthdok): find out what's causing the warning. |  | 
|  107         '-pthread', |  | 
|  108       ], |  | 
|  109       'libraries': [ |  | 
|  110         '-lc', |  | 
|  111         '-lgcc_s', |  | 
|  112         '-lpthread', |  | 
|  113         '-lrt', |  | 
|  114       ], |  | 
|  115     }, |  | 
|  116   ] |  | 
|  117 } |  | 
| OLD | NEW |