blob: d26d06e297d608299a4c709f1a0ba0c816fbdcb8 [file] [log] [blame]
# Copyright 2013 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.
'targets': [
'target_name': 'libcxx_proxy',
'type': 'none',
'dependencies=': [
# Do not add dependency on to dependents of this target. We
# don't want to pass on the command line to the linker, as that
# would cause it to be linked into C executables which don't need it.
# Instead, we supply -stdlib=libc++ and let the clang driver decide.
'dependencies_traverse': 0,
'variables': {
# Don't add this target to the dependencies of targets with type=none.
'link_dependency': 1,
'all_dependent_settings': {
'target_conditions': [
['_type!="none"', {
'include_dirs': [
'cflags_cc': [
'ldflags': [
# Normally the generator takes care of RPATH. Our case is special
# because the generator is unaware of the dependency.
# Note that setting RPATH here is a potential security issue. See:
'library_dirs': [
'target_name': 'libc++',
'type': 'shared_library',
'dependencies=': [
# libc++abi is linked statically into This allows us to get
# both libc++ and libc++abi by passing '-stdlib=libc++'. If libc++abi
# was a separate DSO, we'd have to link against it explicitly.
'sources': [
'include_dirs': [
'cflags': [
'-g', '-Os', '-fPIC',
'cflags_cc!': [
'cflags!': [
'ldflags': [
'ldflags!': [
# This somehow causes a warning from clang about an unused compilation
# option. Use '-lpthread' instead.
# TODO(earthdok): find out what's causing the warning.
'libraries': [