summaryrefslogtreecommitdiffstats
path: root/build
diff options
context:
space:
mode:
authormark@chromium.org <mark@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-02-25 21:26:55 +0000
committermark@chromium.org <mark@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-02-25 21:26:55 +0000
commit2f80c3109c9fc7724740f405b3ef739d4a68ac81 (patch)
treeff089a486e0f5fcd197d3f555400f31fc7ebb8e0 /build
parenta2318cda8a1092f127ed6b88b12fad8208608ad1 (diff)
downloadchromium_src-2f80c3109c9fc7724740f405b3ef739d4a68ac81.zip
chromium_src-2f80c3109c9fc7724740f405b3ef739d4a68ac81.tar.gz
chromium_src-2f80c3109c9fc7724740f405b3ef739d4a68ac81.tar.bz2
Import .gyp files into the Chromium tree
Review URL: http://codereview.chromium.org/27158 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@10380 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'build')
-rw-r--r--build/all.gyp42
-rw-r--r--build/common.gypi211
-rw-r--r--build/external_code.gypi33
-rw-r--r--build/temp_gyp/README.chromium3
-rw-r--r--build/temp_gyp/googleurl.gyp59
-rw-r--r--build/temp_gyp/v8.gyp553
6 files changed, 901 insertions, 0 deletions
diff --git a/build/all.gyp b/build/all.gyp
new file mode 100644
index 0000000..2367fad
--- /dev/null
+++ b/build/all.gyp
@@ -0,0 +1,42 @@
+# Copyright (c) 2009 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.
+
+{
+ 'variables': {
+ 'chromium_code': 1,
+ },
+ 'includes': [
+ 'common.gypi',
+ ],
+ 'targets': [
+ {
+ 'target_name': 'All',
+ 'type': 'none',
+ 'dependencies': [
+ '../base/base.gyp:*',
+ '../chrome/chrome.gyp:*',
+ '../media/media.gyp:*',
+ '../net/net.gyp:*',
+ '../sdch/sdch.gyp:*',
+ '../skia/skia.gyp:*',
+ '../testing/gtest.gyp:*',
+ '../third_party/bzip2/bzip2.gyp:*',
+ '../third_party/icu38/icu38.gyp:*',
+ '../third_party/libevent/libevent.gyp:*',
+ '../third_party/libjpeg/libjpeg.gyp:*',
+ '../third_party/libpng/libpng.gyp:*',
+ '../third_party/libxml/libxml.gyp:*',
+ '../third_party/libxslt/libxslt.gyp:*',
+ '../third_party/modp_b64/modp_b64.gyp:*',
+ '../third_party/npapi/npapi.gyp:*',
+ '../third_party/sqlite/sqlite.gyp:*',
+ '../third_party/zlib/zlib.gyp:*',
+ '../webkit/tools/test_shell/test_shell.gyp:*',
+ '../webkit/webkit.gyp:*',
+ 'temp_gyp/googleurl.gyp:*',
+ 'temp_gyp/v8.gyp:*',
+ ],
+ },
+ ],
+}
diff --git a/build/common.gypi b/build/common.gypi
new file mode 100644
index 0000000..e9fcd2e
--- /dev/null
+++ b/build/common.gypi
@@ -0,0 +1,211 @@
+# Copyright (c) 2009 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.
+
+{
+ 'variables': {
+ 'chromium_code%': 0,
+ },
+ 'target_defaults': {
+ # TODO(bradnelson): This should really be able to be either:
+ # CHROMIUM_BUILD or GOOGLE_CHROME_BUILD
+ 'defines': ['CHROMIUM_BUILD'],
+ 'default_configuration': 'Debug',
+ 'configurations': {
+ 'Debug': {
+ 'conditions': [
+ [ 'OS=="mac"', {
+ 'xcode_settings': {
+ 'COPY_PHASE_STRIP': 'NO',
+ 'GCC_OPTIMIZATION_LEVEL': '0',
+ }
+ }],
+ [ 'OS=="win"', {
+ 'configuration_platform': 'Win32',
+ 'msvs_configuration_attributes': {
+ 'OutputDirectory': '$(SolutionDir)$(ConfigurationName)',
+ 'IntermediateDirectory': '$(OutDir)\\obj\\$(ProjectName)',
+ 'CharacterSet': '1',
+ },
+ 'msvs_settings': {
+ 'VCCLCompilerTool': {
+ 'Optimization': '0',
+ 'PreprocessorDefinitions': ['_DEBUG'],
+ 'BasicRuntimeChecks': '3',
+ 'RuntimeLibrary': '1',
+ },
+ 'VCLinkerTool': {
+ 'LinkIncremental': '1',
+ },
+ 'VCResourceCompilerTool': {
+ 'PreprocessorDefinitions': ['_DEBUG'],
+ },
+ },
+ }],
+ ],
+ },
+ 'Release': {
+ 'defines': [
+ 'NDEBUG',
+ ],
+ 'conditions': [
+ [ 'OS=="mac"', {
+ 'xcode_settings': {
+ 'DEAD_CODE_STRIPPING': 'YES',
+ }
+ }],
+ [ 'OS=="win"', {
+ 'configuration_platform': 'Win32',
+ 'msvs_props': ['release.vsprops'],
+ }],
+ ],
+ },
+ },
+ },
+ 'conditions': [
+ ['OS=="mac"', {
+ 'target_defaults': {
+ 'xcode_settings': {
+ 'ALWAYS_SEARCH_USER_PATHS': 'NO',
+ 'GCC_C_LANGUAGE_STANDARD': 'c99',
+ 'GCC_CW_ASM_SYNTAX': 'NO',
+ 'GCC_DYNAMIC_NO_PIC': 'YES',
+ 'GCC_ENABLE_PASCAL_STRINGS': 'NO',
+ 'GCC_INLINES_ARE_PRIVATE_EXTERN': 'YES',
+ 'GCC_PRECOMPILE_PREFIX_HEADER': 'YES',
+ 'GCC_SYMBOLS_PRIVATE_EXTERN': 'YES',
+ 'GCC_TREAT_WARNINGS_AS_ERRORS': 'YES',
+ 'GCC_VERSION': '4.2',
+ 'GCC_WARN_ABOUT_MISSING_NEWLINE': 'YES',
+ 'MACOSX_DEPLOYMENT_TARGET': '10.5',
+ 'PREBINDING': 'NO',
+ 'SDKROOT': 'macosx10.5',
+ 'USE_HEADERMAP': 'NO',
+ 'WARNING_CFLAGS': ['-Wall', '-Wendif-labels'],
+ },
+ 'target_conditions': [
+ ['_type=="shared_library"', {
+ 'xcode_settings': {'GCC_DYNAMIC_NO_PIC': 'NO'},
+ }],
+ ['_type!="static_library"', {
+ 'xcode_settings': {'OTHER_LDFLAGS': ['-Wl,-search_paths_first']},
+ }],
+ ['_type=="application" or _type=="executable"', {
+ 'postbuilds': [
+ {
+ 'variables': {
+ # Define strip_from_xcode in a variable ending in _path so
+ # that gyp understands it's a path and performs proper
+ # relativization during dict merging.
+ 'strip_from_xcode_path': 'mac/strip_from_xcode',
+ },
+ 'postbuild_name': 'Strip If Needed',
+ 'action': ['<(strip_from_xcode_path)'],
+ },
+ ],
+ }],
+ ],
+ },
+ }],
+ ['OS=="win"', {
+ 'target_defaults': {
+ 'defines': [
+ '_WIN32_WINNT=0x0600',
+ 'WINVER=0x0600',
+ 'WIN32',
+ '_WINDOWS',
+ '_HAS_EXCEPTIONS=0',
+ 'NOMINMAX',
+ '_CRT_RAND_S',
+ 'CERT_CHAIN_PARA_HAS_EXTRA_FIELDS',
+ 'WIN32_LEAN_AND_MEAN',
+ '_SECURE_ATL',
+ '_HAS_TR1=0',
+ ],
+ 'include_dirs': [
+ '<(DEPTH)/third_party/platformsdk_win2008_6_1/files/Include',
+ '$(VSInstallDir)/VC/atlmfc/include',
+ ],
+ 'msvs_cygwin_dirs': ['../third_party/cygwin'],
+ 'msvs_disabled_warnings': [4503, 4819],
+ 'msvs_settings': {
+ 'VCCLCompilerTool': {
+ 'MinimalRebuild': 'false',
+ 'ExceptionHandling': '0',
+ 'BufferSecurityCheck': 'true',
+ 'EnableFunctionLevelLinking': 'true',
+ 'RuntimeTypeInfo': 'false',
+ 'WarningLevel': '3',
+ 'WarnAsError': 'true',
+ 'DebugInformationFormat': '3',
+ },
+ 'VCLibrarianTool': {
+ 'AdditionalOptions': '/ignore:4221',
+ 'OutputFile': '$(OutDir)\\lib\\$(ProjectName).lib',
+ 'AdditionalLibraryDirectories':
+ '<(DEPTH)/third_party/platformsdk_win2008_6_1/files/Lib',
+ },
+ 'VCLinkerTool': {
+ 'AdditionalOptions':
+ '/safeseh /dynamicbase /ignore:4199 /ignore:4221 /nxcompat',
+ 'AdditionalDependencies': [
+ 'wininet.lib',
+ 'version.lib',
+ 'msimg32.lib',
+ 'ws2_32.lib',
+ 'usp10.lib',
+ 'psapi.lib',
+ ],
+ 'AdditionalLibraryDirectories':
+ '<(DEPTH)/third_party/platformsdk_win2008_6_1/files/Lib',
+ 'DelayLoadDLLs': 'dwmapi.dll,uxtheme.dll',
+ 'GenerateDebugInformation': 'true',
+ 'MapFileName': '$(OutDir)\\$(TargetName).map',
+ 'ImportLibrary': '$(OutDir)\\lib\\$(TargetName).lib',
+ 'TargetMachine': '1',
+ 'FixedBaseAddress': '1',
+ },
+ 'VCMIDLTool': {
+ 'GenerateStublessProxies': 'true',
+ 'TypeLibraryName': '$(InputName).tlb',
+ 'OutputDirectory': '$(IntDir)',
+ 'HeaderFileName': '$(InputName).h',
+ 'DLLDataFileName': 'dlldata.c',
+ 'InterfaceIdentifierFileName': '$(InputName)_i.c',
+ 'ProxyFileName': '$(InputName)_p.c',
+ },
+ 'VCResourceCompilerTool': {
+ 'Culture' : '1033',
+ 'AdditionalIncludeDirectories': '<(DEPTH)',
+ },
+ },
+ },
+ }],
+ ['chromium_code==0', {
+ # This section must follow the other conditon sections above because
+ # external_code.gypi expects to be merged into those settings.
+ 'includes': [
+ 'external_code.gypi',
+ ],
+ }],
+ ],
+ 'xcode_settings': {
+ # The Xcode generator will look for an xcode_settings section at the root
+ # of each dict and use it to apply settings on a file-wide basis. Most
+ # settings should not be here, they should be in target-specific
+ # xcode_settings sections, or better yet, should use non-Xcode-specific
+ # settings in target dicts. SYMROOT is a special case, because many other
+ # Xcode variables depend on it, including variables such as
+ # PROJECT_DERIVED_FILE_DIR. When a source group corresponding to something
+ # like PROJECT_DERIVED_FILE_DIR is added to a project, in order for the
+ # files to appear (when present) in the UI as actual files and not red
+ # red "missing file" proxies, the correct path to PROJECT_DERIVED_FILE_DIR,
+ # and therefore SYMROOT, needs to be set at the project level.
+ #
+ # xcodebuild_gyp is a temporary name to avoid colliding with the xcodebuild
+ # directory used by the non-gyp Xcode build system. When the gyp-based
+ # Xcode build system replaces the older system, this should be changed to
+ # simply "xcodebuild" or some other suitable name.
+ 'SYMROOT': '<(DEPTH)/xcodebuild_gyp',
+ },
+}
diff --git a/build/external_code.gypi b/build/external_code.gypi
new file mode 100644
index 0000000..ca16f86
--- /dev/null
+++ b/build/external_code.gypi
@@ -0,0 +1,33 @@
+# Copyright (c) 2009 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.
+
+{
+ 'conditions': [
+ [ 'OS=="win"', {
+ 'target_defaults': {
+ 'defines': [
+ '_CRT_SECURE_NO_DEPRECATE',
+ '_CRT_NONSTDC_NO_WARNINGS',
+ '_CRT_NONSTDC_NO_DEPRECATE',
+ '_SCL_SECURE_NO_DEPRECATE',
+ ],
+ 'msvs_disabled_warnings': [4800],
+ 'msvs_settings': {
+ 'VCCLCompilerTool': {
+ 'WarnAsError': 'false',
+ 'Detect64BitPortabilityProblems': 'false',
+ },
+ },
+ },
+ }],
+ [ 'OS=="mac"', {
+ 'target_defaults': {
+ 'xcode_settings': {
+ 'GCC_TREAT_WARNINGS_AS_ERRORS': 'NO',
+ 'WARNING_CFLAGS!': ['-Wall'],
+ },
+ },
+ }],
+ ],
+}
diff --git a/build/temp_gyp/README.chromium b/build/temp_gyp/README.chromium
new file mode 100644
index 0000000..8045d61
--- /dev/null
+++ b/build/temp_gyp/README.chromium
@@ -0,0 +1,3 @@
+This directory will be removed once the files in it are committed upstream and
+Chromium imports an upstream revision with these files. Contact mark for
+details.
diff --git a/build/temp_gyp/googleurl.gyp b/build/temp_gyp/googleurl.gyp
new file mode 100644
index 0000000..6452a3f
--- /dev/null
+++ b/build/temp_gyp/googleurl.gyp
@@ -0,0 +1,59 @@
+# Copyright (c) 2009 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.
+
+# TODO(mark): Upstream this file to googleurl.
+{
+ 'variables': {
+ 'chromium_code': 1,
+ },
+ 'includes': [
+ '../common.gypi',
+ ],
+ 'targets': [
+ {
+ 'target_name': 'googleurl',
+ 'type': 'static_library',
+ 'sources': [
+ '../../googleurl/src/gurl.cc',
+ '../../googleurl/src/gurl.h',
+ '../../googleurl/src/url_canon.h',
+ '../../googleurl/src/url_canon_etc.cc',
+ '../../googleurl/src/url_canon_fileurl.cc',
+ '../../googleurl/src/url_canon_host.cc',
+ '../../googleurl/src/url_canon_icu.cc',
+ '../../googleurl/src/url_canon_icu.h',
+ '../../googleurl/src/url_canon_internal.cc',
+ '../../googleurl/src/url_canon_internal.h',
+ '../../googleurl/src/url_canon_internal_file.h',
+ '../../googleurl/src/url_canon_ip.cc',
+ '../../googleurl/src/url_canon_ip.h',
+ '../../googleurl/src/url_canon_mailtourl.cc',
+ '../../googleurl/src/url_canon_path.cc',
+ '../../googleurl/src/url_canon_pathurl.cc',
+ '../../googleurl/src/url_canon_query.cc',
+ '../../googleurl/src/url_canon_relative.cc',
+ '../../googleurl/src/url_canon_stdstring.h',
+ '../../googleurl/src/url_canon_stdurl.cc',
+ '../../googleurl/src/url_file.h',
+ '../../googleurl/src/url_parse.cc',
+ '../../googleurl/src/url_parse.h',
+ '../../googleurl/src/url_parse_file.cc',
+ '../../googleurl/src/url_parse_internal.h',
+ '../../googleurl/src/url_util.cc',
+ '../../googleurl/src/url_util.h',
+ ],
+ 'dependencies': [
+ '../../base/base.gyp:base',
+ '../../third_party/icu38/icu38.gyp:icudata',
+ '../../third_party/icu38/icu38.gyp:icui18n',
+ '../../third_party/icu38/icu38.gyp:icuuc',
+ ],
+ 'direct_dependent_settings': {
+ 'include_dirs': [
+ '../..',
+ ],
+ },
+ },
+ ],
+}
diff --git a/build/temp_gyp/v8.gyp b/build/temp_gyp/v8.gyp
new file mode 100644
index 0000000..785de83
--- /dev/null
+++ b/build/temp_gyp/v8.gyp
@@ -0,0 +1,553 @@
+# Copyright (c) 2009 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.
+
+# TODO(mark): Upstream this file to v8.
+{
+ 'variables': {
+ 'chromium_code': 1,
+ 'base_source_files': [
+ '../../v8/src/third_party/dtoa/dtoa.c',
+ '../../v8/src/third_party/jscre/ASCIICType.h',
+ '../../v8/src/third_party/jscre/config.h',
+ '../../v8/src/third_party/jscre/pcre.h',
+ '../../v8/src/third_party/jscre/pcre_chartables.c',
+ '../../v8/src/third_party/jscre/pcre_compile.cpp',
+ '../../v8/src/third_party/jscre/pcre_exec.cpp',
+ '../../v8/src/third_party/jscre/pcre_internal.h',
+ '../../v8/src/third_party/jscre/pcre_tables.cpp',
+ '../../v8/src/third_party/jscre/pcre_ucp_searchfuncs.cpp',
+ '../../v8/src/third_party/jscre/pcre_xclass.cpp',
+ '../../v8/src/third_party/jscre/ucpinternal.h',
+ '../../v8/src/third_party/jscre/ucptable.cpp',
+ '../../v8/src/accessors.cc',
+ '../../v8/src/accessors.h',
+ '../../v8/src/allocation.cc',
+ '../../v8/src/allocation.h',
+ '../../v8/src/api.cc',
+ '../../v8/src/api.h',
+ '../../v8/src/apiutils.h',
+ '../../v8/src/arguments.h',
+ '../../v8/src/assembler-arm-inl.h',
+ '../../v8/src/assembler-arm.cc',
+ '../../v8/src/assembler-arm.h',
+ '../../v8/src/assembler-ia32-inl.h',
+ '../../v8/src/assembler-ia32.cc',
+ '../../v8/src/assembler-ia32.h',
+ '../../v8/src/assembler.cc',
+ '../../v8/src/assembler.h',
+ '../../v8/src/ast.cc',
+ '../../v8/src/ast.h',
+ '../../v8/src/bootstrapper.cc',
+ '../../v8/src/bootstrapper.h',
+ '../../v8/src/builtins-arm.cc',
+ '../../v8/src/builtins-ia32.cc',
+ '../../v8/src/builtins.cc',
+ '../../v8/src/builtins.h',
+ '../../v8/src/bytecodes-irregexp.h',
+ '../../v8/src/char-predicates-inl.h',
+ '../../v8/src/char-predicates.h',
+ '../../v8/src/checks.cc',
+ '../../v8/src/checks.h',
+ '../../v8/src/code-stubs.cc',
+ '../../v8/src/code-stubs.h',
+ '../../v8/src/code.h',
+ '../../v8/src/codegen-arm.cc',
+ '../../v8/src/codegen-arm.h',
+ '../../v8/src/codegen-ia32.cc',
+ '../../v8/src/codegen-ia32.h',
+ '../../v8/src/codegen-inl.h',
+ '../../v8/src/codegen.cc',
+ '../../v8/src/codegen.h',
+ '../../v8/src/compilation-cache.cc',
+ '../../v8/src/compilation-cache.h',
+ '../../v8/src/compiler.cc',
+ '../../v8/src/compiler.h',
+ '../../v8/src/constants-arm.h',
+ '../../v8/src/contexts.cc',
+ '../../v8/src/contexts.h',
+ '../../v8/src/conversions-inl.h',
+ '../../v8/src/conversions.cc',
+ '../../v8/src/conversions.h',
+ '../../v8/src/counters.cc',
+ '../../v8/src/counters.h',
+ '../../v8/src/cpu-arm.cc',
+ '../../v8/src/cpu-ia32.cc',
+ '../../v8/src/cpu.h',
+ '../../v8/src/dateparser.cc',
+ '../../v8/src/dateparser.h',
+ '../../v8/src/debug-arm.cc',
+ '../../v8/src/debug-ia32.cc',
+ '../../v8/src/debug.cc',
+ '../../v8/src/debug.h',
+ '../../v8/src/disasm-arm.cc',
+ '../../v8/src/disasm-ia32.cc',
+ '../../v8/src/disasm.h',
+ '../../v8/src/disassembler.cc',
+ '../../v8/src/disassembler.h',
+ '../../v8/src/dtoa-config.c',
+ '../../v8/src/execution.cc',
+ '../../v8/src/execution.h',
+ '../../v8/src/factory.cc',
+ '../../v8/src/factory.h',
+ '../../v8/src/flag-definitions.h',
+ '../../v8/src/flags.cc',
+ '../../v8/src/flags.h',
+ '../../v8/src/frames-arm.cc',
+ '../../v8/src/frames-arm.h',
+ '../../v8/src/frames-ia32.cc',
+ '../../v8/src/frames-ia32.h',
+ '../../v8/src/frames-inl.h',
+ '../../v8/src/frames.cc',
+ '../../v8/src/frames.h',
+ '../../v8/src/global-handles.cc',
+ '../../v8/src/global-handles.h',
+ '../../v8/src/globals.h',
+ '../../v8/src/handles-inl.h',
+ '../../v8/src/handles.cc',
+ '../../v8/src/handles.h',
+ '../../v8/src/hashmap.cc',
+ '../../v8/src/hashmap.h',
+ '../../v8/src/heap-inl.h',
+ '../../v8/src/heap.cc',
+ '../../v8/src/heap.h',
+ '../../v8/src/ic-arm.cc',
+ '../../v8/src/ic-ia32.cc',
+ '../../v8/src/ic-inl.h',
+ '../../v8/src/ic.cc',
+ '../../v8/src/ic.h',
+ '../../v8/src/interpreter-irregexp.cc',
+ '../../v8/src/interpreter-irregexp.h',
+ '../../v8/src/jsregexp-inl.h',
+ '../../v8/src/jsregexp.cc',
+ '../../v8/src/jsregexp.h',
+ '../../v8/src/list-inl.h',
+ '../../v8/src/list.h',
+ '../../v8/src/log.cc',
+ '../../v8/src/log.h',
+ '../../v8/src/macro-assembler-arm.cc',
+ '../../v8/src/macro-assembler-arm.h',
+ '../../v8/src/macro-assembler-ia32.cc',
+ '../../v8/src/macro-assembler-ia32.h',
+ '../../v8/src/macro-assembler.h',
+ '../../v8/src/mark-compact.cc',
+ '../../v8/src/mark-compact.h',
+ '../../v8/src/memory.h',
+ '../../v8/src/messages.cc',
+ '../../v8/src/messages.h',
+ '../../v8/src/natives.h',
+ '../../v8/src/objects-debug.cc',
+ '../../v8/src/objects-inl.h',
+ '../../v8/src/objects.cc',
+ '../../v8/src/objects.h',
+ '../../v8/src/parser.cc',
+ '../../v8/src/parser.h',
+ '../../v8/src/platform-freebsd.cc',
+ '../../v8/src/platform-linux.cc',
+ '../../v8/src/platform-macos.cc',
+ '../../v8/src/platform-nullos.cc',
+ '../../v8/src/platform-win32.cc',
+ '../../v8/src/platform.h',
+ '../../v8/src/prettyprinter.cc',
+ '../../v8/src/prettyprinter.h',
+ '../../v8/src/property.cc',
+ '../../v8/src/property.h',
+ '../../v8/src/regexp-macro-assembler-arm.cc',
+ '../../v8/src/regexp-macro-assembler-arm.h',
+ '../../v8/src/regexp-macro-assembler-ia32.cc',
+ '../../v8/src/regexp-macro-assembler-ia32.h',
+ '../../v8/src/regexp-macro-assembler-irregexp-inl.h',
+ '../../v8/src/regexp-macro-assembler-irregexp.cc',
+ '../../v8/src/regexp-macro-assembler-irregexp.h',
+ '../../v8/src/regexp-macro-assembler-tracer.cc',
+ '../../v8/src/regexp-macro-assembler-tracer.h',
+ '../../v8/src/regexp-macro-assembler.cc',
+ '../../v8/src/regexp-macro-assembler.h',
+ '../../v8/src/regexp-stack.cc',
+ '../../v8/src/regexp-stack.h',
+ '../../v8/src/rewriter.cc',
+ '../../v8/src/rewriter.h',
+ '../../v8/src/runtime.cc',
+ '../../v8/src/runtime.h',
+ '../../v8/src/scanner.cc',
+ '../../v8/src/scanner.h',
+ '../../v8/src/scopeinfo.cc',
+ '../../v8/src/scopeinfo.h',
+ '../../v8/src/scopes.cc',
+ '../../v8/src/scopes.h',
+ '../../v8/src/serialize.cc',
+ '../../v8/src/serialize.h',
+ '../../v8/src/shell.h',
+ '../../v8/src/simulator-arm.cc',
+ '../../v8/src/smart-pointer.h',
+ '../../v8/src/snapshot-common.cc',
+ '../../v8/src/snapshot.h',
+ '../../v8/src/spaces-inl.h',
+ '../../v8/src/spaces.cc',
+ '../../v8/src/spaces.h',
+ '../../v8/src/string-stream.cc',
+ '../../v8/src/string-stream.h',
+ '../../v8/src/stub-cache-arm.cc',
+ '../../v8/src/stub-cache-ia32.cc',
+ '../../v8/src/stub-cache.cc',
+ '../../v8/src/stub-cache.h',
+ '../../v8/src/token.cc',
+ '../../v8/src/token.h',
+ '../../v8/src/top.cc',
+ '../../v8/src/top.h',
+ '../../v8/src/unicode-inl.h',
+ '../../v8/src/unicode.cc',
+ '../../v8/src/unicode.h',
+ '../../v8/src/usage-analyzer.cc',
+ '../../v8/src/usage-analyzer.h',
+ '../../v8/src/utils.cc',
+ '../../v8/src/utils.h',
+ '../../v8/src/v8-counters.cc',
+ '../../v8/src/v8-counters.h',
+ '../../v8/src/v8.cc',
+ '../../v8/src/v8.h',
+ '../../v8/src/v8threads.cc',
+ '../../v8/src/v8threads.h',
+ '../../v8/src/variables.cc',
+ '../../v8/src/variables.h',
+ '../../v8/src/zone-inl.h',
+ '../../v8/src/zone.cc',
+ '../../v8/src/zone.h',
+ ],
+ 'not_base_source_files': [
+ # These files are #included by others and are not meant to be compiled
+ # directly.
+ '../../v8/src/third_party/dtoa/dtoa.c',
+ '../../v8/src/third_party/jscre/pcre_chartables.c',
+ '../../v8/src/third_party/jscre/ucptable.cpp',
+ ],
+ 'd8_source_files': [
+ '../../v8/src/d8-debug.cc',
+ '../../v8/src/d8-readline.cc',
+ '../../v8/src/d8.cc',
+ ],
+ },
+ 'includes': [
+ '../common.gypi',
+ ],
+ 'target_defaults': {
+ 'configurations': {
+ 'Debug': {
+ 'defines': [
+ 'DEBUG',
+ 'ENABLE_DISASSEMBLER',
+ 'ENABLE_LOGGING_AND_PROFILING',
+ ],
+ },
+ },
+ 'xcode_settings': {
+ 'GCC_ENABLE_CPP_EXCEPTIONS': 'NO',
+ 'GCC_ENABLE_CPP_RTTI': 'NO',
+ },
+ },
+ 'targets': [
+ # Targets that apply to any architecture.
+ {
+ 'target_name': 'js2c',
+ 'type': 'none',
+ 'variables': {
+ 'library_files': [
+ '../../v8/src/runtime.js',
+ '../../v8/src/v8natives.js',
+ '../../v8/src/array.js',
+ '../../v8/src/string.js',
+ '../../v8/src/uri.js',
+ '../../v8/src/math.js',
+ '../../v8/src/messages.js',
+ '../../v8/src/apinatives.js',
+ '../../v8/src/debug-delay.js',
+ '../../v8/src/mirror-delay.js',
+ '../../v8/src/date-delay.js',
+ '../../v8/src/regexp-delay.js',
+ '../../v8/src/macros.py',
+ ],
+ },
+ 'actions': [
+ {
+ 'action_name': 'js2c',
+ 'inputs': [
+ '../../v8/tools/js2c.py',
+ '<@(library_files)',
+ ],
+ 'outputs': [
+ '<(SHARED_INTERMEDIATE_DIR)/v8/libraries.cc',
+ '<(SHARED_INTERMEDIATE_DIR)/v8/libraries-empty.cc',
+ ],
+ 'action': ['python', '../../v8/tools/js2c.py', '<@(_outputs)', 'CORE', '<@(library_files)'],
+ # TODO(sgk): figure out how to get gyp and SCons to play nice here.
+ 'conditions': [
+ ['OS=="linux"', {'action=': ['python', '${SOURCES[0]}', '${TARGETS}', 'CORE', '${SOURCES[1:]}'],}],
+ ],
+ },
+ ],
+ },
+ {
+ 'target_name': 'd8_js2c',
+ 'type': 'none',
+ 'variables': {
+ 'library_files': [
+ '../../v8/src/d8.js',
+ '../../v8/src/macros.py',
+ ],
+ },
+ 'actions': [
+ {
+ 'action_name': 'js2c',
+ 'inputs': [
+ '../../v8/tools/js2c.py',
+ '<@(library_files)',
+ ],
+ 'extra_inputs': [
+ ],
+ 'outputs': [
+ '<(SHARED_INTERMEDIATE_DIR)/v8/d8-js.cc',
+ '<(SHARED_INTERMEDIATE_DIR)/v8/d8-js-empty.cc',
+ ],
+ 'action': ['python', '../../v8/tools/js2c.py', '<@(_outputs)', 'D8', '<@(library_files)'],
+ # TODO(sgk): figure out how to get gyp and SCons to play nice here.
+ 'conditions': [
+ ['OS=="linux"', {'action=': ['python', '${SOURCES[0]}', '${TARGETS}', 'D8', '${SOURCES[1:]}'],}],
+ ],
+ },
+ ],
+ },
+
+ # Targets to build v8 for the native architecture (ia32).
+ {
+ 'target_name': 'v8_base',
+ 'type': 'static_library',
+ 'include_dirs': [
+ '../../v8/src',
+ ],
+ 'sources': [
+ '<@(base_source_files)',
+ ],
+ 'sources!': [
+ '<@(not_base_source_files)',
+ ],
+ 'sources/': [
+ ['exclude', '-arm\\.cc$'],
+ ['exclude', 'src/platform-.*\\.cc$' ],
+ ],
+ 'conditions': [
+ ['OS=="linux"', {'sources/': [['include', 'src/platform-linux\\.cc$']]}],
+ ['OS=="mac"', {'sources/': [['include', 'src/platform-macos\\.cc$']]}],
+ ['OS=="win"', {
+ 'sources/': [['include', 'src/platform-win32\\.cc$']],
+ # 4355, 4800 came from common.vsprops
+ # 4018, 4244 were a per file config on dtoa-config.c
+ # TODO: It's probably possible and desirable to stop disabling the
+ # dtoa-specific warnings by modifying dtoa as was done in Chromium
+ # r9255. Refer to that revision for details.
+ 'msvs_disabled_warnings': [4355, 4800, 4018, 4244],
+ 'all_dependent_settings': {
+ 'msvs_system_libraries': [ 'winmm.lib' ],
+ },
+ }],
+ ],
+ },
+ {
+ 'target_name': 'v8_nosnapshot',
+ 'type': 'static_library',
+ 'dependencies': [
+ 'js2c',
+ 'v8_base',
+ ],
+ 'include_dirs': [
+ '../../v8/src',
+ ],
+ 'sources': [
+ '<(SHARED_INTERMEDIATE_DIR)/v8/libraries.cc',
+ '../../v8/src/snapshot-empty.cc',
+ ],
+ },
+ {
+ 'target_name': 'mksnapshot',
+ 'type': 'executable',
+ 'dependencies': [
+ 'v8_nosnapshot',
+ ],
+ 'sources': [
+ '../../v8/src/mksnapshot.cc',
+ ],
+ },
+ {
+ 'target_name': 'v8',
+ 'type': 'static_library',
+ 'dependencies': [
+ 'js2c',
+ 'mksnapshot',
+ 'v8_base',
+ ],
+ 'actions': [
+ {
+ 'action_name': 'mksnapshot',
+ 'inputs': [
+ '<(PRODUCT_DIR)/<(EXECUTABLE_PREFIX)mksnapshot<(EXECUTABLE_SUFFIX)',
+ ],
+ 'outputs': [
+ '<(INTERMEDIATE_DIR)/snapshot.cc',
+ ],
+ 'action': ['<@(_inputs)', '<@(_outputs)'],
+ },
+ ],
+ 'include_dirs': [
+ '../../v8/src',
+ ],
+ 'sources': [
+ '<(SHARED_INTERMEDIATE_DIR)/v8/libraries-empty.cc',
+ '<(INTERMEDIATE_DIR)/snapshot.cc',
+ ],
+ 'direct_dependent_settings': {
+ 'include_dirs': [
+ '../../v8/include',
+ ],
+ },
+ },
+ {
+ 'target_name': 'v8_shell',
+ 'type': 'executable',
+ 'dependencies': [
+ 'v8',
+ ],
+ 'sources': [
+ '../../v8/samples/shell.cc',
+ ],
+ 'conditions': [
+ [ 'OS=="win"', {
+ # This could be gotten by not setting chromium_code, if that's OK.
+ 'defines': ['_CRT_SECURE_NO_WARNINGS'],
+ }],
+ ],
+ },
+ {
+ 'target_name': 'd8',
+ 'type': 'executable',
+ 'dependencies': [
+ 'd8_js2c',
+ 'v8',
+ ],
+ 'include_dirs': [
+ '../../v8/src',
+ ],
+ 'sources': [
+ '<(SHARED_INTERMEDIATE_DIR)/v8/d8-js.cc',
+ '<@(d8_source_files)',
+ ],
+ 'conditions': [
+ [ 'OS=="linux"', {
+ 'link_settings': { 'libraries': [ '-lreadline' ] },
+ }],
+ [ 'OS=="mac"', {
+ 'link_settings': { 'libraries': [
+ '$(SDKROOT)/usr/lib/libreadline.dylib'
+ ]},
+ }],
+ [ 'OS=="win"', {
+ 'sources!': [ '../../v8/src/d8-readline.cc' ],
+ }],
+ ],
+ },
+
+ # ARM targets, to test ARM code generation. These use an ARM simulator
+ # (src/simulator-arm.cc). The ARM targets are not snapshot-enabled.
+ {
+ 'target_name': 'v8_arm',
+ 'type': 'static_library',
+ 'dependencies': [
+ 'js2c',
+ ],
+ 'defines': [
+ 'ARM',
+ ],
+ 'include_dirs': [
+ '../../v8/src',
+ ],
+ 'sources': [
+ '<@(base_source_files)',
+ '<(SHARED_INTERMEDIATE_DIR)/v8/libraries.cc',
+ '../../v8/src/snapshot-empty.cc',
+ ],
+ 'sources!': [
+ '<@(not_base_source_files)',
+ ],
+ 'sources/': [
+ ['exclude', '-ia32\\.cc$'],
+ ['exclude', 'src/platform-.*\\.cc$' ],
+ ],
+ 'direct_dependent_settings': {
+ 'include_dirs': [
+ '../../v8/include',
+ ],
+ },
+ 'conditions': [
+ ['OS=="linux"', {'sources/': [['include', 'src/platform-linux\\.cc$']]}],
+ ['OS=="mac"', {'sources/': [['include', 'src/platform-macos\\.cc$']]}],
+ ['OS=="win"', {
+ 'sources/': [['include', 'src/platform-win32\\.cc$']],
+ # 4355, 4800 came from common.vsprops
+ # 4018, 4244 were a per file config on dtoa-config.c
+ # TODO: It's probably possible and desirable to stop disabling the
+ # dtoa-specific warnings by modifying dtoa as was done in Chromium
+ # r9255. Refer to that revision for details.
+ 'msvs_disabled_warnings': [4355, 4800, 4018, 4244],
+ }],
+ ],
+ },
+ {
+ 'target_name': 'v8_shell_arm',
+ 'type': 'executable',
+ 'dependencies': [
+ 'v8_arm',
+ ],
+ 'defines': [
+ 'ARM',
+ ],
+ 'sources': [
+ '../../v8/samples/shell.cc',
+ ],
+ 'conditions': [
+ [ 'OS=="win"', {
+ # This could be gotten by not setting chromium_code, if that's OK.
+ 'defines': ['_CRT_SECURE_NO_WARNINGS'],
+ }],
+ ],
+ },
+ {
+ 'target_name': 'd8_arm',
+ 'type': 'executable',
+ 'dependencies': [
+ 'd8_js2c',
+ 'v8_arm',
+ ],
+ 'defines': [
+ 'ARM',
+ ],
+ 'include_dirs': [
+ '../../v8/src',
+ ],
+ 'sources': [
+ '<(SHARED_INTERMEDIATE_DIR)/v8/d8-js.cc',
+ '<@(d8_source_files)',
+ ],
+ 'conditions': [
+ [ 'OS=="linux"', {
+ 'link_settings': { 'libraries': [ '-lreadline' ] },
+ }],
+ [ 'OS=="mac"', {
+ 'link_settings': { 'libraries': [
+ '$(SDKROOT)/usr/lib/libreadline.dylib'
+ ]},
+ }],
+ [ 'OS=="win"', {
+ 'sources!': [ '../../v8/src/d8-readline.cc' ],
+ }],
+ ],
+ },
+ ],
+}