OLD | NEW |
(Empty) | |
| 1 # Copyright 2009 the V8 project authors. All rights reserved. |
| 2 # Redistribution and use in source and binary forms, with or without |
| 3 # modification, are permitted provided that the following conditions are |
| 4 # met: |
| 5 # |
| 6 # * Redistributions of source code must retain the above copyright |
| 7 # notice, this list of conditions and the following disclaimer. |
| 8 # * Redistributions in binary form must reproduce the above |
| 9 # copyright notice, this list of conditions and the following |
| 10 # disclaimer in the documentation and/or other materials provided |
| 11 # with the distribution. |
| 12 # * Neither the name of Google Inc. nor the names of its |
| 13 # contributors may be used to endorse or promote products derived |
| 14 # from this software without specific prior written permission. |
| 15 # |
| 16 # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS |
| 17 # "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT |
| 18 # LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR |
| 19 # A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT |
| 20 # OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, |
| 21 # SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT |
| 22 # LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, |
| 23 # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY |
| 24 # THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT |
| 25 # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |
| 26 # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
| 27 |
| 28 { |
| 29 'variables': { |
| 30 'chromium_code': 1, |
| 31 'msvs_use_common_release': 0, |
| 32 'base_source_files': [ |
| 33 '../../src/arm/assembler-arm-inl.h', |
| 34 '../../src/arm/assembler-arm.cc', |
| 35 '../../src/arm/assembler-arm.h', |
| 36 '../../src/arm/builtins-arm.cc', |
| 37 '../../src/arm/codegen-arm.cc', |
| 38 '../../src/arm/codegen-arm.h', |
| 39 '../../src/arm/constants-arm.h', |
| 40 '../../src/arm/cpu-arm.cc', |
| 41 '../../src/arm/debug-arm.cc', |
| 42 '../../src/arm/disasm-arm.cc', |
| 43 '../../src/arm/frames-arm.cc', |
| 44 '../../src/arm/frames-arm.h', |
| 45 '../../src/arm/ic-arm.cc', |
| 46 '../../src/arm/jump-target-arm.cc', |
| 47 '../../src/arm/macro-assembler-arm.cc', |
| 48 '../../src/arm/macro-assembler-arm.h', |
| 49 '../../src/arm/regexp-macro-assembler-arm.cc', |
| 50 '../../src/arm/regexp-macro-assembler-arm.h', |
| 51 '../../src/arm/register-allocator-arm.cc', |
| 52 '../../src/arm/simulator-arm.cc', |
| 53 '../../src/arm/stub-cache-arm.cc', |
| 54 '../../src/arm/virtual-frame-arm.cc', |
| 55 '../../src/arm/virtual-frame-arm.h', |
| 56 '../../src/ia32/assembler-ia32-inl.h', |
| 57 '../../src/ia32/assembler-ia32.cc', |
| 58 '../../src/ia32/assembler-ia32.h', |
| 59 '../../src/ia32/builtins-ia32.cc', |
| 60 '../../src/ia32/codegen-ia32.cc', |
| 61 '../../src/ia32/codegen-ia32.h', |
| 62 '../../src/ia32/cpu-ia32.cc', |
| 63 '../../src/ia32/debug-ia32.cc', |
| 64 '../../src/ia32/disasm-ia32.cc', |
| 65 '../../src/ia32/frames-ia32.cc', |
| 66 '../../src/ia32/frames-ia32.h', |
| 67 '../../src/ia32/ic-ia32.cc', |
| 68 '../../src/ia32/jump-target-ia32.cc', |
| 69 '../../src/ia32/macro-assembler-ia32.cc', |
| 70 '../../src/ia32/macro-assembler-ia32.h', |
| 71 '../../src/ia32/regexp-macro-assembler-ia32.cc', |
| 72 '../../src/ia32/regexp-macro-assembler-ia32.h', |
| 73 '../../src/ia32/register-allocator-ia32.cc', |
| 74 '../../src/ia32/stub-cache-ia32.cc', |
| 75 '../../src/ia32/virtual-frame-ia32.cc', |
| 76 '../../src/ia32/virtual-frame-ia32.h', |
| 77 '../../src/third_party/dtoa/dtoa.c', |
| 78 '../../src/accessors.cc', |
| 79 '../../src/accessors.h', |
| 80 '../../src/allocation.cc', |
| 81 '../../src/allocation.h', |
| 82 '../../src/api.cc', |
| 83 '../../src/api.h', |
| 84 '../../src/apiutils.h', |
| 85 '../../src/arguments.h', |
| 86 '../../src/assembler.cc', |
| 87 '../../src/assembler.h', |
| 88 '../../src/ast.cc', |
| 89 '../../src/ast.h', |
| 90 '../../src/bootstrapper.cc', |
| 91 '../../src/bootstrapper.h', |
| 92 '../../src/builtins.cc', |
| 93 '../../src/builtins.h', |
| 94 '../../src/bytecodes-irregexp.h', |
| 95 '../../src/char-predicates-inl.h', |
| 96 '../../src/char-predicates.h', |
| 97 '../../src/checks.cc', |
| 98 '../../src/checks.h', |
| 99 '../../src/code-stubs.cc', |
| 100 '../../src/code-stubs.h', |
| 101 '../../src/code.h', |
| 102 '../../src/codegen-inl.h', |
| 103 '../../src/codegen.cc', |
| 104 '../../src/codegen.h', |
| 105 '../../src/compilation-cache.cc', |
| 106 '../../src/compilation-cache.h', |
| 107 '../../src/compiler.cc', |
| 108 '../../src/compiler.h', |
| 109 '../../src/contexts.cc', |
| 110 '../../src/contexts.h', |
| 111 '../../src/conversions-inl.h', |
| 112 '../../src/conversions.cc', |
| 113 '../../src/conversions.h', |
| 114 '../../src/counters.cc', |
| 115 '../../src/counters.h', |
| 116 '../../src/cpu.h', |
| 117 '../../src/dateparser.cc', |
| 118 '../../src/dateparser.h', |
| 119 '../../src/dateparser-inl.h', |
| 120 '../../src/debug.cc', |
| 121 '../../src/debug.h', |
| 122 '../../src/debug-agent.cc', |
| 123 '../../src/debug-agent.h', |
| 124 '../../src/disasm.h', |
| 125 '../../src/disassembler.cc', |
| 126 '../../src/disassembler.h', |
| 127 '../../src/dtoa-config.c', |
| 128 '../../src/execution.cc', |
| 129 '../../src/execution.h', |
| 130 '../../src/factory.cc', |
| 131 '../../src/factory.h', |
| 132 '../../src/flag-definitions.h', |
| 133 '../../src/flags.cc', |
| 134 '../../src/flags.h', |
| 135 '../../src/frames-inl.h', |
| 136 '../../src/frames.cc', |
| 137 '../../src/frames.h', |
| 138 '../../src/func-name-inferrer.cc', |
| 139 '../../src/func-name-inferrer.h', |
| 140 '../../src/global-handles.cc', |
| 141 '../../src/global-handles.h', |
| 142 '../../src/globals.h', |
| 143 '../../src/handles-inl.h', |
| 144 '../../src/handles.cc', |
| 145 '../../src/handles.h', |
| 146 '../../src/hashmap.cc', |
| 147 '../../src/hashmap.h', |
| 148 '../../src/heap-inl.h', |
| 149 '../../src/heap.cc', |
| 150 '../../src/heap.h', |
| 151 '../../src/ic-inl.h', |
| 152 '../../src/ic.cc', |
| 153 '../../src/ic.h', |
| 154 '../../src/interpreter-irregexp.cc', |
| 155 '../../src/interpreter-irregexp.h', |
| 156 '../../src/jump-target.cc', |
| 157 '../../src/jump-target.h', |
| 158 '../../src/jsregexp-inl.h', |
| 159 '../../src/jsregexp.cc', |
| 160 '../../src/jsregexp.h', |
| 161 '../../src/list-inl.h', |
| 162 '../../src/list.h', |
| 163 '../../src/log.cc', |
| 164 '../../src/log.h', |
| 165 '../../src/macro-assembler.h', |
| 166 '../../src/mark-compact.cc', |
| 167 '../../src/mark-compact.h', |
| 168 '../../src/memory.h', |
| 169 '../../src/messages.cc', |
| 170 '../../src/messages.h', |
| 171 '../../src/natives.h', |
| 172 '../../src/objects-debug.cc', |
| 173 '../../src/objects-inl.h', |
| 174 '../../src/objects.cc', |
| 175 '../../src/objects.h', |
| 176 '../../src/oprofile-agent.h', |
| 177 '../../src/oprofile-agent.cc', |
| 178 '../../src/parser.cc', |
| 179 '../../src/parser.h', |
| 180 '../../src/platform-freebsd.cc', |
| 181 '../../src/platform-linux.cc', |
| 182 '../../src/platform-macos.cc', |
| 183 '../../src/platform-nullos.cc', |
| 184 '../../src/platform-posix.cc', |
| 185 '../../src/platform-win32.cc', |
| 186 '../../src/platform.h', |
| 187 '../../src/prettyprinter.cc', |
| 188 '../../src/prettyprinter.h', |
| 189 '../../src/property.cc', |
| 190 '../../src/property.h', |
| 191 '../../src/regexp-macro-assembler-irregexp-inl.h', |
| 192 '../../src/regexp-macro-assembler-irregexp.cc', |
| 193 '../../src/regexp-macro-assembler-irregexp.h', |
| 194 '../../src/regexp-macro-assembler-tracer.cc', |
| 195 '../../src/regexp-macro-assembler-tracer.h', |
| 196 '../../src/regexp-macro-assembler.cc', |
| 197 '../../src/regexp-macro-assembler.h', |
| 198 '../../src/regexp-stack.cc', |
| 199 '../../src/regexp-stack.h', |
| 200 '../../src/register-allocator.h', |
| 201 '../../src/register-allocator-inl.h', |
| 202 '../../src/register-allocator.cc', |
| 203 '../../src/rewriter.cc', |
| 204 '../../src/rewriter.h', |
| 205 '../../src/runtime.cc', |
| 206 '../../src/runtime.h', |
| 207 '../../src/scanner.cc', |
| 208 '../../src/scanner.h', |
| 209 '../../src/scopeinfo.cc', |
| 210 '../../src/scopeinfo.h', |
| 211 '../../src/scopes.cc', |
| 212 '../../src/scopes.h', |
| 213 '../../src/serialize.cc', |
| 214 '../../src/serialize.h', |
| 215 '../../src/shell.h', |
| 216 '../../src/smart-pointer.h', |
| 217 '../../src/snapshot-common.cc', |
| 218 '../../src/snapshot.h', |
| 219 '../../src/spaces-inl.h', |
| 220 '../../src/spaces.cc', |
| 221 '../../src/spaces.h', |
| 222 '../../src/string-stream.cc', |
| 223 '../../src/string-stream.h', |
| 224 '../../src/stub-cache.cc', |
| 225 '../../src/stub-cache.h', |
| 226 '../../src/token.cc', |
| 227 '../../src/token.h', |
| 228 '../../src/top.cc', |
| 229 '../../src/top.h', |
| 230 '../../src/unicode-inl.h', |
| 231 '../../src/unicode.cc', |
| 232 '../../src/unicode.h', |
| 233 '../../src/usage-analyzer.cc', |
| 234 '../../src/usage-analyzer.h', |
| 235 '../../src/utils.cc', |
| 236 '../../src/utils.h', |
| 237 '../../src/v8-counters.cc', |
| 238 '../../src/v8-counters.h', |
| 239 '../../src/v8.cc', |
| 240 '../../src/v8.h', |
| 241 '../../src/v8threads.cc', |
| 242 '../../src/v8threads.h', |
| 243 '../../src/variables.cc', |
| 244 '../../src/variables.h', |
| 245 '../../src/virtual-frame.h', |
| 246 '../../src/virtual-frame.cc', |
| 247 '../../src/zone-inl.h', |
| 248 '../../src/zone.cc', |
| 249 '../../src/zone.h', |
| 250 ], |
| 251 'not_base_source_files': [ |
| 252 # These files are #included by others and are not meant to be compiled |
| 253 # directly. |
| 254 '../../src/third_party/dtoa/dtoa.c', |
| 255 ], |
| 256 'd8_source_files': [ |
| 257 '../../src/d8-debug.cc', |
| 258 '../../src/d8-posix.cc', |
| 259 '../../src/d8-readline.cc', |
| 260 '../../src/d8-windows.cc', |
| 261 '../../src/d8.cc', |
| 262 ], |
| 263 }, |
| 264 'includes': [ |
| 265 '../../../build/common.gypi', |
| 266 ], |
| 267 'target_defaults': { |
| 268 'defines': [ |
| 269 'ENABLE_LOGGING_AND_PROFILING', |
| 270 ], |
| 271 'configurations': { |
| 272 'Debug': { |
| 273 'defines': [ |
| 274 'DEBUG', |
| 275 '_DEBUG', |
| 276 'ENABLE_DISASSEMBLER', |
| 277 ], |
| 278 'msvs_settings': { |
| 279 'VCCLCompilerTool': { |
| 280 'Optimizations': '0', |
| 281 'RuntimeLibrary': '1', |
| 282 }, |
| 283 'VCLinkerTool': { |
| 284 'LinkIncremental': '2', |
| 285 }, |
| 286 }, |
| 287 }, |
| 288 'Release': { |
| 289 'conditions': [ |
| 290 ['OS=="linux"', { |
| 291 'cflags!': [ |
| 292 '-O2', |
| 293 ], |
| 294 'cflags': [ |
| 295 '-fomit-frame-pointer', |
| 296 '-O3', |
| 297 ], |
| 298 'cflags_cc': [ |
| 299 '-fno-rtti', |
| 300 ], |
| 301 }], |
| 302 ['OS=="win"', { |
| 303 'msvs_configuration_attributes': { |
| 304 'OutputDirectory': '$(SolutionDir)$(ConfigurationName)', |
| 305 'IntermediateDirectory': '$(OutDir)\\obj\\$(ProjectName)', |
| 306 'CharacterSet': '1', |
| 307 }, |
| 308 'msvs_settings': { |
| 309 'VCCLCompilerTool': { |
| 310 'RuntimeLibrary': '0', |
| 311 'Optimizations': '2', |
| 312 'InlineFunctionExpansion': '2', |
| 313 'EnableIntrinsicFunctions': 'true', |
| 314 'FavorSizeOrSpeed': '0', |
| 315 'OmitFramePointers': 'true', |
| 316 'StringPooling': 'true', |
| 317 }, |
| 318 'VCLinkerTool': { |
| 319 'LinkIncremental': '1', |
| 320 'OptimizeReferences': '2', |
| 321 'OptimizeForWindows98': '1', |
| 322 'EnableCOMDATFolding': '2', |
| 323 }, |
| 324 }, |
| 325 }], |
| 326 ], |
| 327 }, |
| 328 }, |
| 329 'xcode_settings': { |
| 330 'GCC_ENABLE_CPP_EXCEPTIONS': 'NO', |
| 331 'GCC_ENABLE_CPP_RTTI': 'NO', |
| 332 }, |
| 333 }, |
| 334 'targets': [ |
| 335 # Targets that apply to any architecture. |
| 336 { |
| 337 'target_name': 'js2c', |
| 338 'type': 'none', |
| 339 'variables': { |
| 340 'library_files': [ |
| 341 '../../src/runtime.js', |
| 342 '../../src/v8natives.js', |
| 343 '../../src/array.js', |
| 344 '../../src/string.js', |
| 345 '../../src/uri.js', |
| 346 '../../src/math.js', |
| 347 '../../src/messages.js', |
| 348 '../../src/apinatives.js', |
| 349 '../../src/debug-delay.js', |
| 350 '../../src/mirror-delay.js', |
| 351 '../../src/date-delay.js', |
| 352 '../../src/json-delay.js', |
| 353 '../../src/regexp-delay.js', |
| 354 '../../src/macros.py', |
| 355 ], |
| 356 }, |
| 357 'actions': [ |
| 358 { |
| 359 'action_name': 'js2c', |
| 360 'inputs': [ |
| 361 '../../tools/js2c.py', |
| 362 '<@(library_files)', |
| 363 ], |
| 364 'outputs': [ |
| 365 '<(SHARED_INTERMEDIATE_DIR)/libraries.cc', |
| 366 '<(SHARED_INTERMEDIATE_DIR)/libraries-empty.cc', |
| 367 ], |
| 368 'action': ['python', '../../tools/js2c.py', '<@(_outputs)', 'CORE', '<
@(library_files)'], |
| 369 }, |
| 370 ], |
| 371 }, |
| 372 { |
| 373 'target_name': 'd8_js2c', |
| 374 'type': 'none', |
| 375 'variables': { |
| 376 'library_files': [ |
| 377 '../../src/d8.js', |
| 378 '../../src/macros.py', |
| 379 ], |
| 380 }, |
| 381 'actions': [ |
| 382 { |
| 383 'action_name': 'js2c', |
| 384 'inputs': [ |
| 385 '../../tools/js2c.py', |
| 386 '<@(library_files)', |
| 387 ], |
| 388 'extra_inputs': [ |
| 389 ], |
| 390 'outputs': [ |
| 391 '<(SHARED_INTERMEDIATE_DIR)/d8-js.cc', |
| 392 '<(SHARED_INTERMEDIATE_DIR)/d8-js-empty.cc', |
| 393 ], |
| 394 'action': ['python', '../../tools/js2c.py', '<@(_outputs)', 'D8', '<@(
library_files)'], |
| 395 }, |
| 396 ], |
| 397 }, |
| 398 |
| 399 # Targets to build v8 for the native architecture (ia32). |
| 400 { |
| 401 'target_name': 'v8_base', |
| 402 'type': '<(library)', |
| 403 'include_dirs+': [ |
| 404 '../../src', |
| 405 '../../src/ia32', |
| 406 ], |
| 407 'msvs_guid': 'EC8B7909-62AF-470D-A75D-E1D89C837142', |
| 408 'sources': [ |
| 409 '<@(base_source_files)', |
| 410 ], |
| 411 'sources!': [ |
| 412 '<@(not_base_source_files)', |
| 413 ], |
| 414 'sources/': [ |
| 415 ['exclude', '-arm\\.cc$'], |
| 416 ['exclude', 'src/platform-.*\\.cc$' ], |
| 417 ], |
| 418 'conditions': [ |
| 419 ['OS=="linux"', |
| 420 { |
| 421 'link_settings': { |
| 422 'libraries': [ |
| 423 # Needed for clock_gettime() used by src/platform-linux.cc. |
| 424 '-lrt', |
| 425 ], |
| 426 }, |
| 427 'sources/': [ |
| 428 ['include', 'src/platform-linux\\.cc$'], |
| 429 ['include', 'src/platform-posix\\.cc$'] |
| 430 ] |
| 431 } |
| 432 ], |
| 433 ['OS=="mac"', |
| 434 { |
| 435 'sources/': [ |
| 436 ['include', 'src/platform-macos\\.cc$'], |
| 437 ['include', 'src/platform-posix\\.cc$'] |
| 438 ] |
| 439 } |
| 440 ], |
| 441 ['OS=="win"', { |
| 442 'sources/': [['include', 'src/platform-win32\\.cc$']], |
| 443 # 4355, 4800 came from common.vsprops |
| 444 # 4018, 4244 were a per file config on dtoa-config.c |
| 445 # TODO: It's probably possible and desirable to stop disabling the |
| 446 # dtoa-specific warnings by modifying dtoa as was done in Chromium |
| 447 # r9255. Refer to that revision for details. |
| 448 'msvs_disabled_warnings': [4355, 4800, 4018, 4244], |
| 449 'link_settings': { |
| 450 'libraries': [ '-lwinmm.lib' ], |
| 451 }, |
| 452 }], |
| 453 ], |
| 454 }, |
| 455 { |
| 456 'target_name': 'v8_nosnapshot', |
| 457 'type': '<(library)', |
| 458 'dependencies': [ |
| 459 'js2c', |
| 460 'v8_base', |
| 461 ], |
| 462 'include_dirs': [ |
| 463 '../../src', |
| 464 ], |
| 465 'sources': [ |
| 466 '<(SHARED_INTERMEDIATE_DIR)/libraries.cc', |
| 467 '../../src/snapshot-empty.cc', |
| 468 ], |
| 469 'export_dependent_settings': [ |
| 470 'v8_base', |
| 471 ], |
| 472 }, |
| 473 { |
| 474 'target_name': 'mksnapshot', |
| 475 'type': 'executable', |
| 476 'dependencies': [ |
| 477 'v8_nosnapshot', |
| 478 ], |
| 479 'msvs_guid': '865575D0-37E2-405E-8CBA-5F6C485B5A26', |
| 480 'sources': [ |
| 481 '../../src/mksnapshot.cc', |
| 482 ], |
| 483 }, |
| 484 { |
| 485 'target_name': 'v8', |
| 486 'type': '<(library)', |
| 487 'dependencies': [ |
| 488 'js2c', |
| 489 'mksnapshot', |
| 490 'v8_base', |
| 491 ], |
| 492 'msvs_guid': '21E22961-22BF-4493-BD3A-868F93DA5179', |
| 493 'actions': [ |
| 494 { |
| 495 'action_name': 'mksnapshot', |
| 496 'inputs': [ |
| 497 '<(PRODUCT_DIR)/<(EXECUTABLE_PREFIX)mksnapshot<(EXECUTABLE_SUFFIX)', |
| 498 ], |
| 499 'outputs': [ |
| 500 '<(INTERMEDIATE_DIR)/snapshot.cc', |
| 501 ], |
| 502 'action': ['<@(_inputs)', '<@(_outputs)'], |
| 503 }, |
| 504 ], |
| 505 'include_dirs': [ |
| 506 '../../src', |
| 507 ], |
| 508 'sources': [ |
| 509 '<(SHARED_INTERMEDIATE_DIR)/libraries-empty.cc', |
| 510 '<(INTERMEDIATE_DIR)/snapshot.cc', |
| 511 ], |
| 512 'direct_dependent_settings': { |
| 513 'include_dirs': [ |
| 514 '../../include', |
| 515 ], |
| 516 }, |
| 517 'export_dependent_settings': [ |
| 518 'v8_base', |
| 519 ], |
| 520 }, |
| 521 { |
| 522 'target_name': 'v8_shell', |
| 523 'type': 'executable', |
| 524 'dependencies': [ |
| 525 'v8', |
| 526 ], |
| 527 'sources': [ |
| 528 '../../samples/shell.cc', |
| 529 ], |
| 530 'conditions': [ |
| 531 [ 'OS=="win"', { |
| 532 # This could be gotten by not setting chromium_code, if that's OK. |
| 533 'defines': ['_CRT_SECURE_NO_WARNINGS'], |
| 534 }], |
| 535 ], |
| 536 }, |
| 537 ], |
| 538 |
| 539 'conditions': [ ['OS=="mac"', { 'targets': [ |
| 540 # TODO(bradnelson): temporarily disable 'd8' target on Windows while |
| 541 # we work fix the performance regressions. |
| 542 # TODO(sgk): temporarily disable 'd8' target on Linux while |
| 543 # we work out getting the readline library on all the systems. |
| 544 { |
| 545 'target_name': 'd8', |
| 546 'type': 'executable', |
| 547 'dependencies': [ |
| 548 'd8_js2c', |
| 549 'v8', |
| 550 ], |
| 551 'include_dirs': [ |
| 552 '../../src', |
| 553 ], |
| 554 'sources': [ |
| 555 '<(SHARED_INTERMEDIATE_DIR)/d8-js.cc', |
| 556 '<@(d8_source_files)', |
| 557 ], |
| 558 'conditions': [ |
| 559 [ 'OS=="linux"', { |
| 560 'sources!': [ '../../src/d8-windows.cc' ], |
| 561 'link_settings': { 'libraries': [ '-lreadline' ] }, |
| 562 }], |
| 563 [ 'OS=="mac"', { |
| 564 'sources!': [ '../../src/d8-windows.cc' ], |
| 565 'link_settings': { 'libraries': [ |
| 566 '$(SDKROOT)/usr/lib/libreadline.dylib' |
| 567 ]}, |
| 568 }], |
| 569 [ 'OS=="win"', { |
| 570 'sources!': [ '../../src/d8-readline.cc', '../../src/d8-posix.cc' ], |
| 571 }], |
| 572 ], |
| 573 }, |
| 574 # TODO(sgk): temporarily disable the arm targets on Linux while |
| 575 # we work out how to refactor the generator and/or add configuration |
| 576 # settings to the .gyp file to handle building both variants in |
| 577 # the same output directory. |
| 578 # |
| 579 # ARM targets, to test ARM code generation. These use an ARM simulator |
| 580 # (src/simulator-arm.cc). The ARM targets are not snapshot-enabled. |
| 581 { |
| 582 'target_name': 'v8_arm', |
| 583 'type': '<(library)', |
| 584 'dependencies': [ |
| 585 'js2c', |
| 586 ], |
| 587 'defines': [ |
| 588 'ARM', |
| 589 ], |
| 590 'include_dirs+': [ |
| 591 '../../src', |
| 592 '../../src/arm', |
| 593 ], |
| 594 'sources': [ |
| 595 '<@(base_source_files)', |
| 596 '<(SHARED_INTERMEDIATE_DIR)/libraries.cc', |
| 597 '../../src/snapshot-empty.cc', |
| 598 ], |
| 599 'sources!': [ |
| 600 '<@(not_base_source_files)', |
| 601 ], |
| 602 'sources/': [ |
| 603 ['exclude', '-ia32\\.cc$'], |
| 604 ['exclude', 'src/platform-.*\\.cc$' ], |
| 605 ], |
| 606 'direct_dependent_settings': { |
| 607 'include_dirs': [ |
| 608 '../../include', |
| 609 ], |
| 610 }, |
| 611 'conditions': [ |
| 612 ['OS=="linux"', |
| 613 { |
| 614 'sources/': [ |
| 615 ['include', 'src/platform-linux\\.cc$'], |
| 616 ['include', 'src/platform-posix\\.cc$'] |
| 617 ] |
| 618 } |
| 619 ], |
| 620 ['OS=="mac"', |
| 621 { |
| 622 'sources/': [ |
| 623 ['include', 'src/platform-macos\\.cc$'], |
| 624 ['include', 'src/platform-posix\\.cc$'] |
| 625 ] |
| 626 } |
| 627 ], |
| 628 ['OS=="win"', { |
| 629 'sources/': [['include', 'src/platform-win32\\.cc$']], |
| 630 # 4355, 4800 came from common.vsprops |
| 631 # 4018, 4244 were a per file config on dtoa-config.c |
| 632 # TODO: It's probably possible and desirable to stop disabling the |
| 633 # dtoa-specific warnings by modifying dtoa as was done in Chromium |
| 634 # r9255. Refer to that revision for details. |
| 635 'msvs_disabled_warnings': [4355, 4800, 4018, 4244], |
| 636 }], |
| 637 ], |
| 638 }, |
| 639 { |
| 640 'target_name': 'v8_shell_arm', |
| 641 'type': 'executable', |
| 642 'dependencies': [ |
| 643 'v8_arm', |
| 644 ], |
| 645 'defines': [ |
| 646 'ARM', |
| 647 ], |
| 648 'sources': [ |
| 649 '../../samples/shell.cc', |
| 650 ], |
| 651 'conditions': [ |
| 652 [ 'OS=="win"', { |
| 653 # This could be gotten by not setting chromium_code, if that's OK. |
| 654 'defines': ['_CRT_SECURE_NO_WARNINGS'], |
| 655 }], |
| 656 ], |
| 657 }, |
| 658 { |
| 659 'target_name': 'd8_arm', |
| 660 'type': 'executable', |
| 661 'dependencies': [ |
| 662 'd8_js2c', |
| 663 'v8_arm', |
| 664 ], |
| 665 'defines': [ |
| 666 'ARM', |
| 667 ], |
| 668 'include_dirs': [ |
| 669 '../../src', |
| 670 ], |
| 671 'sources': [ |
| 672 '<(SHARED_INTERMEDIATE_DIR)/d8-js.cc', |
| 673 '<@(d8_source_files)', |
| 674 ], |
| 675 'conditions': [ |
| 676 [ 'OS=="linux"', { |
| 677 'sources!': [ '../../src/d8-windows.cc' ], |
| 678 'link_settings': { 'libraries': [ '-lreadline' ] }, |
| 679 }], |
| 680 [ 'OS=="mac"', { |
| 681 'sources!': [ '../../src/d8-windows.cc' ], |
| 682 'link_settings': { 'libraries': [ |
| 683 '$(SDKROOT)/usr/lib/libreadline.dylib' |
| 684 ]}, |
| 685 }], |
| 686 [ 'OS=="win"', { |
| 687 'sources!': [ '../../src/d8-readline.cc', '../../src/d8-posix.cc' ], |
| 688 }], |
| 689 ], |
| 690 }, |
| 691 ]}], # OS != "linux" (temporary, TODO(sgk)) |
| 692 |
| 693 |
| 694 ['OS=="win"', { |
| 695 'target_defaults': { |
| 696 'defines': [ |
| 697 '_USE_32BIT_TIME_T', |
| 698 '_CRT_SECURE_NO_DEPRECATE', |
| 699 '_CRT_NONSTDC_NO_DEPRECATE', |
| 700 ], |
| 701 'msvs_settings': { |
| 702 'VCLinkerTool': { |
| 703 'AdditionalOptions': '/IGNORE:4221 /NXCOMPAT', |
| 704 }, |
| 705 }, |
| 706 }, |
| 707 }], |
| 708 ], |
| 709 } |
OLD | NEW |