summaryrefslogtreecommitdiffstats
path: root/Source/JavaScriptCore/gyp
diff options
context:
space:
mode:
authorBen Murdoch <benm@google.com>2011-05-24 11:24:40 +0100
committerBen Murdoch <benm@google.com>2011-06-02 09:53:15 +0100
commit81bc750723a18f21cd17d1b173cd2a4dda9cea6e (patch)
tree7a9e5ed86ff429fd347a25153107221543909b19 /Source/JavaScriptCore/gyp
parent94088a6d336c1dd80a1e734af51e96abcbb689a7 (diff)
downloadexternal_webkit-81bc750723a18f21cd17d1b173cd2a4dda9cea6e.zip
external_webkit-81bc750723a18f21cd17d1b173cd2a4dda9cea6e.tar.gz
external_webkit-81bc750723a18f21cd17d1b173cd2a4dda9cea6e.tar.bz2
Merge WebKit at r80534: Intial merge by Git
Change-Id: Ia7a83357124c9e1cdb1debf55d9661ec0bd09a61
Diffstat (limited to 'Source/JavaScriptCore/gyp')
-rw-r--r--Source/JavaScriptCore/gyp/JavaScriptCore.gyp216
-rwxr-xr-xSource/JavaScriptCore/gyp/generate-derived-sources.sh9
2 files changed, 225 insertions, 0 deletions
diff --git a/Source/JavaScriptCore/gyp/JavaScriptCore.gyp b/Source/JavaScriptCore/gyp/JavaScriptCore.gyp
new file mode 100644
index 0000000..1e46094
--- /dev/null
+++ b/Source/JavaScriptCore/gyp/JavaScriptCore.gyp
@@ -0,0 +1,216 @@
+{
+ 'includes': [
+ '../../gyp/common.gypi',
+ '../JavaScriptCore.gypi',
+ ],
+ 'xcode_config_file': '<(DEPTH)/JavaScriptCore/Configurations/DebugRelease.xcconfig',
+ 'variables': {
+ # FIXME: We should use a header map instead of listing these explicitly.
+ 'javascriptcore_include_dirs': [
+ '<(DEPTH)', # Some paths in API include JavaScriptCore/
+ '<(DEPTH)/JavaScriptCore',
+ '<(DEPTH)/JavaScriptCore/ForwardingHeaders',
+ '<(DEPTH)/JavaScriptCore/API',
+ '<(DEPTH)/JavaScriptCore/assembler',
+ '<(DEPTH)/JavaScriptCore/collector/handles',
+ '<(DEPTH)/JavaScriptCore/bytecode',
+ '<(DEPTH)/JavaScriptCore/bytecompiler',
+ '<(DEPTH)/JavaScriptCore/debugger',
+ '<(DEPTH)/JavaScriptCore/icu',
+ '<(DEPTH)/JavaScriptCore/interpreter',
+ '<(DEPTH)/JavaScriptCore/jit',
+ '<(DEPTH)/JavaScriptCore/parser',
+ '<(DEPTH)/JavaScriptCore/profiler',
+ '<(DEPTH)/JavaScriptCore/runtime',
+ '<(DEPTH)/JavaScriptCore/wtf',
+ '<(DEPTH)/JavaScriptCore/wtf/unicode',
+ '<(PRODUCT_DIR)/DerivedSources/JavaScriptCore',
+ ],
+ },
+ 'targets': [
+ {
+ 'target_name': 'JavaScriptCore',
+ 'type': 'shared_library',
+ 'dependencies': [
+ 'Derived Sources',
+ 'Update Version',
+ ],
+ 'include_dirs': [
+ '<@(javascriptcore_include_dirs)',
+ ],
+ 'sources': [
+ '<@(javascriptcore_files)',
+ '<@(javascriptcore_publicheader_files)',
+ '<@(javascriptcore_privateheader_files)',
+ '$(SDKROOT)/System/Library/Frameworks/CoreFoundation.framework',
+ '$(SDKROOT)/System/Library/Frameworks/Foundation.framework',
+ 'libicucore.dylib',
+ 'libobjc.dylib',
+ ],
+ 'mac_framework_headers': [
+ '<@(javascriptcore_publicheader_files)',
+ ],
+ 'mac_framework_private_headers': [
+ '<@(javascriptcore_privateheader_files)',
+ ],
+ 'xcode_config_file': '<(DEPTH)/JavaScriptCore/Configurations/JavaScriptCore.xcconfig',
+ 'sources/': [
+ ['exclude', 'qt'],
+ ['exclude', 'os-win32'],
+ ['exclude', 'wtf/android'],
+ ['exclude', 'wtf/brew'],
+ ['exclude', 'wtf/efl'],
+ ['exclude', 'wtf/gtk'],
+ ['exclude', 'wtf/qt'],
+ ['exclude', 'wtf/haiku'],
+ ['exclude', 'API/tests'],
+ ['exclude', 'wtf/url'],
+ ['exclude', 'wtf/wince'],
+ ['exclude', 'wtf/wx'],
+ ['exclude', 'wtf/unicode/brew'],
+ ['exclude', 'wtf/unicode/wince'],
+ ['exclude', 'wtf/unicode/glib'],
+ ['exclude', 'wtf/unicode/qt4'],
+ ['exclude', '/(gtk|glib|gobject)/.*\\.(cpp|h)$'],
+ ['exclude', '(Default|Gtk|Chromium|None|Qt|Win|Wx|Symbian)\\.(cpp|mm|h)$'],
+ ['exclude', 'GCActivityCallback\.cpp'],
+ ['exclude', '.*BSTR.*$'],
+ ['exclude', 'jsc.cpp$'],
+ ],
+ 'postbuilds': [
+ {
+ 'postbuild_name': 'Check For Global Initializers',
+ 'action': [
+ 'sh', '<(DEPTH)/gyp/run-if-exists.sh', '<(DEPTH)/../Tools/Scripts/check-for-global-initializers'
+ ],
+ },
+ {
+ 'postbuild_name': 'Check For Exit Time Destructors',
+ 'action': [
+ 'sh', '<(DEPTH)/gyp/run-if-exists.sh', '<(DEPTH)/../Tools/Scripts/check-for-exit-time-destructors'
+ ],
+ },
+ {
+ 'postbuild_name': 'Check For Weak VTables and Externals',
+ 'action': [
+ 'sh', '<(DEPTH)/gyp/run-if-exists.sh', '<(DEPTH)/../Tools/Scripts/check-for-weak-vtables-and-externals'
+ ],
+ },
+ ],
+ 'conditions': [
+ ['OS=="mac"', {
+ 'mac_bundle': 1,
+ 'xcode_settings': {
+ # FIXME: Remove these overrides once JavaScriptCore.xcconfig is
+ # used only by this project.
+ 'GCC_PREFIX_HEADER': '<(DEPTH)/JavaScriptCore/JavaScriptCorePrefix.h',
+ 'INFOPLIST_FILE': '<(DEPTH)/JavaScriptCore/Info.plist',
+ # This setting mirrors the setting in Base.xcconfig, with
+ # one difference noted below.
+ 'WARNING_CFLAGS_BASE': [
+ '-Wall',
+ '-Wextra',
+ '-Wcast-qual',
+ '-Wchar-subscripts',
+ '-Wextra-tokens',
+ '-Wformat=2',
+ '-Winit-self',
+ # FIXME: For some reason, -Wmissing-format-attribute causes a
+ # build error in Assertions.cpp in the GYP build but not in the
+ # non-GYP build.
+ # '-Wmissing-format-attribute',
+ '-Wmissing-noreturn',
+ '-Wpacked',
+ '-Wpointer-arith',
+ '-Wredundant-decls',
+ '-Wundef',
+ '-Wwrite-strings',
+ ],
+ },
+ }],
+ ],
+ },
+ {
+ 'target_name': 'Derived Sources',
+ 'type': 'none',
+ 'actions': [{
+ 'action_name': 'Generate Derived Sources',
+ 'inputs': [],
+ 'outputs': [],
+ 'action': [
+ 'sh', 'generate-derived-sources.sh',
+ ],
+ }],
+ },
+ {
+ 'target_name': 'Update Version',
+ 'type': 'none',
+ 'actions': [{
+ 'action_name': 'Update Info.plist with version information',
+ 'inputs': [],
+ 'outputs': [],
+ 'action': [
+ 'sh', '<(DEPTH)/gyp/update-info-plist.sh', '<(DEPTH)/JavaScriptCore/Info.plist'
+ ]
+ }],
+ },
+ {
+ 'target_name': 'minidom',
+ 'type': 'executable',
+ 'dependencies': [
+ 'JavaScriptCore',
+ ],
+ # FIXME: We should use a header map instead of listing these explicitly.
+ 'include_dirs': [
+ '<@(javascriptcore_include_dirs)',
+ ],
+ 'sources': [
+ '<@(minidom_files)',
+ '$(SDKROOT)/System/Library/Frameworks/CoreFoundation.framework',
+ ],
+ 'copies': [{
+ 'destination': '<(PRODUCT_DIR)',
+ 'files': [
+ '<@(minidom_support_files)',
+ ],
+ }],
+ },
+ {
+ 'target_name': 'testapi',
+ 'type': 'executable',
+ 'dependencies': [
+ 'JavaScriptCore',
+ ],
+ # FIXME: We should use a header map instead of listing these explicitly.
+ 'include_dirs': [
+ '<@(javascriptcore_include_dirs)',
+ ],
+ 'sources': [
+ '<@(testapi_files)',
+ '$(SDKROOT)/System/Library/Frameworks/CoreFoundation.framework',
+ ],
+ 'copies': [{
+ 'destination': '<(PRODUCT_DIR)',
+ 'files': [
+ '<@(testapi_support_files)',
+ ],
+ }],
+ },
+ {
+ 'target_name': 'jsc',
+ 'type': 'executable',
+ 'dependencies': [
+ 'JavaScriptCore',
+ ],
+ # FIXME: We should use a header map instead of listing these explicitly.
+ 'include_dirs': [
+ '<@(javascriptcore_include_dirs)',
+ ],
+ 'sources': [
+ '<@(jsc_files)',
+ '$(SDKROOT)/System/Library/Frameworks/CoreFoundation.framework',
+ 'libedit.dylib',
+ ],
+ },
+ ], # targets
+}
diff --git a/Source/JavaScriptCore/gyp/generate-derived-sources.sh b/Source/JavaScriptCore/gyp/generate-derived-sources.sh
new file mode 100755
index 0000000..fcd3056
--- /dev/null
+++ b/Source/JavaScriptCore/gyp/generate-derived-sources.sh
@@ -0,0 +1,9 @@
+#!/bin/sh
+
+mkdir -p "${BUILT_PRODUCTS_DIR}/DerivedSources/JavaScriptCore/docs"
+cd "${BUILT_PRODUCTS_DIR}/DerivedSources/JavaScriptCore"
+
+/bin/ln -sfh "${SRCROOT}/.." JavaScriptCore
+export JavaScriptCore="JavaScriptCore"
+
+make -f "JavaScriptCore/DerivedSources.make" -j `/usr/sbin/sysctl -n hw.ncpu`