| Index: webkit/build/JSConfig/create-config.sh
|
| diff --git a/webkit/build/JSConfig/create-config.sh b/webkit/build/JSConfig/create-config.sh
|
| new file mode 100755
|
| index 0000000000000000000000000000000000000000..8a673ccb73fd7c012a62fd226d2a7767866d3707
|
| --- /dev/null
|
| +++ b/webkit/build/JSConfig/create-config.sh
|
| @@ -0,0 +1,103 @@
|
| +#!/usr/bin/bash -x
|
| +
|
| +# 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.
|
| +
|
| +# In order to build KJS or V8 versions of Chrome, we need to create
|
| +# a custom configuration header. This script creates it.
|
| +#
|
| +# Input
|
| +# create-config.sh <OutputDir> <kjs|v8>
|
| +#
|
| +# Output
|
| +# in the $Output\WebCore directory, creates a config.h
|
| +# custom to the desired build setup
|
| +#
|
| +set -ex
|
| +#
|
| +# Step 1: Create the webkit config.h which is appropriate for our
|
| +# JavaScript engine.
|
| +#
|
| +if [[ "${OS}" != "Windows_NT" ]]
|
| +then
|
| + WebCoreObjDir="$1/WebCore"
|
| + JSHeadersDir="$1/WebCore/JavaScriptHeaders"
|
| + CP="cp -p"
|
| +else
|
| + WebCoreObjDir="$1\obj\WebCore"
|
| + JSHeadersDir="$1\obj\WebCore\JavaScriptHeaders"
|
| + CP="cp"
|
| +fi
|
| +mkdir -p "$WebCoreObjDir"
|
| +rm -f $WebCoreObjDir/definitions.h 2> /dev/null
|
| +
|
| +
|
| +if [[ "$2" = "kjs" ]]
|
| +then
|
| + SubDir=/kjs
|
| + cat > $WebCoreObjDir/definitions.h << -=EOF=-
|
| +#define WTF_USE_JAVASCRIPTCORE_BINDINGS 1
|
| +#define WTF_USE_NPOBJECT 1
|
| +-=EOF=-
|
| +else
|
| + SubDir=/v8
|
| + cat > $WebCoreObjDir/definitions.h << -=EOF=-
|
| +#define WTF_USE_V8_BINDING 1
|
| +#define WTF_USE_NPOBJECT 1
|
| +-=EOF=-
|
| +fi
|
| +
|
| +if [[ "${OS}" = "Windows_NT" ]]
|
| +then
|
| + SubDir=
|
| +fi
|
| +
|
| +mkdir -p "${WebCoreObjDir}${SubDir}"
|
| +
|
| +pwd
|
| +cat ../../config.h.in $WebCoreObjDir/definitions.h > $WebCoreObjDir$SubDir/config.h.new
|
| +if [[ "${OS}" = "Windows_NT" ]] || \
|
| + ! diff -q $WebCoreObjDir$SubDir/config.h.new $WebCoreObjDir$SubDir/config.h >& /dev/null
|
| +then
|
| + mv $WebCoreObjDir$SubDir/config.h.new $WebCoreObjDir$SubDir/config.h
|
| +else
|
| + rm $WebCoreObjDir$SubDir/config.h.new
|
| +fi
|
| +
|
| +rm -f "${WebCoreObjDir}/definitions.h"
|
| +
|
| +#
|
| +# Step 2: Populate the JavaScriptHeaders based on the selected
|
| +# JavaScript engine.
|
| +#
|
| +JSHeadersDir="${JSHeadersDir}${SubDir}"
|
| +mkdir -p $JSHeadersDir
|
| +JavaScriptCoreSrcDir="../../../third_party/WebKit/JavaScriptCore"
|
| +WebCoreSrcDir="../../../third_party/WebKit/WebCore"
|
| +if [[ "$2" = "kjs" ]]
|
| +then
|
| + mkdir -p $JSHeadersDir/JavaScriptCore
|
| + $CP $JavaScriptCoreSrcDir/API/APICast.h $JSHeadersDir/JavaScriptCore
|
| + $CP $JavaScriptCoreSrcDir/API/JavaScript.h $JSHeadersDir/JavaScriptCore
|
| + $CP $JavaScriptCoreSrcDir/API/JSBase.h $JSHeadersDir/JavaScriptCore
|
| + $CP $JavaScriptCoreSrcDir/API/JSContextRef.h $JSHeadersDir/JavaScriptCore
|
| + $CP $JavaScriptCoreSrcDir/API/JSObjectRef.h $JSHeadersDir/JavaScriptCore
|
| + $CP $JavaScriptCoreSrcDir/API/JSStringRef.h $JSHeadersDir/JavaScriptCore
|
| + $CP $JavaScriptCoreSrcDir/API/JSStringRefCF.h $JSHeadersDir/JavaScriptCore
|
| + $CP $JavaScriptCoreSrcDir/API/JSStringRefBSTR.h $JSHeadersDir/JavaScriptCore
|
| + $CP $JavaScriptCoreSrcDir/API/JSValueRef.h $JSHeadersDir/JavaScriptCore
|
| + $CP $JavaScriptCoreSrcDir/API/JavaScriptCore.h $JSHeadersDir/JavaScriptCore
|
| + $CP $JavaScriptCoreSrcDir/API/JSRetainPtr.h $JSHeadersDir/JavaScriptCore
|
| + $CP $JavaScriptCoreSrcDir/API/OpaqueJSString.h $JSHeadersDir/JavaScriptCore
|
| + $CP $JavaScriptCoreSrcDir/API/WebKitAvailability.h $JSHeadersDir/JavaScriptCore
|
| +else
|
| + $CP $WebCoreSrcDir/bridge/npapi.h $JSHeadersDir
|
| + $CP $WebCoreSrcDir/bridge/npruntime.h $JSHeadersDir
|
| + $CP ../../../webkit/port/bindings/v8/npruntime_priv.h $JSHeadersDir
|
| +fi
|
| +
|
| +if [[ "${OS}" = "Windows_NT" ]]
|
| +then
|
| + $CP $JavaScriptCoreSrcDir/os-win32/stdint.h $JSHeadersDir
|
| +fi
|
|
|