Changeset 63671 in webkit


Ignore:
Timestamp:
Jul 19, 2010 9:43:56 AM (14 years ago)
Author:
weinig@apple.com
Message:

Patch for https://bugs.webkit.org/show_bug.cgi?id=42532
Auto-generate the JS bindings for WebKitTestRunner's script objects.

Reviewed by Adam Roben.

  • WebKitTestRunner/Configurations/Base.xcconfig:
  • WebKitTestRunner/Configurations/DebugRelease.xcconfig:
  • WebKitTestRunner/DerivedSources.make: Added.
  • WebKitTestRunner/ForwardingHeaders/wtf/GetPtr.h: Added.
  • WebKitTestRunner/InjectedBundle/Bindings: Added.
  • WebKitTestRunner/InjectedBundle/Bindings/CodeGeneratorTestRunner.pm: Added.
  • WebKitTestRunner/InjectedBundle/Bindings/JSWrappable.h: Added.

(WTR::JSWrappable::~JSWrappable):

  • WebKitTestRunner/InjectedBundle/Bindings/JSWrapper.cpp: Added.

(WTR::JSWrapper::wrap):
(WTR::JSWrapper::unwrap):
(WTR::unwrapObject):
(WTR::JSWrapper::initialize):
(WTR::JSWrapper::finalize):

  • WebKitTestRunner/InjectedBundle/Bindings/JSWrapper.h: Added.

(WTR::toJS):

  • WebKitTestRunner/InjectedBundle/Bindings/LayoutTestController.idl: Added.
  • WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:

(WTR::InjectedBundlePage::dump):
(WTR::InjectedBundlePage::setStatusbarText):

  • WebKitTestRunner/InjectedBundle/LayoutTestController.cpp:

(WTR::LayoutTestController::wrapperClass):
(WTR::LayoutTestController::waitUntilDone):
(WTR::LayoutTestController::makeWindowObject):

  • WebKitTestRunner/InjectedBundle/LayoutTestController.h:

(WTR::LayoutTestController::shouldDumpAsText):
(WTR::LayoutTestController::dumpAsText):
(WTR::LayoutTestController::shouldDumpStatusCallbacks):
(WTR::LayoutTestController::dumpStatusCallbacks):
(WTR::LayoutTestController::waitToDump):
(WTR::LayoutTestController::testRepaint):
(WTR::LayoutTestController::repaintSweepHorizontally):

  • WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:
Location:
trunk/WebKitTools
Files:
8 added
7 edited

Legend:

Unmodified
Added
Removed
  • trunk/WebKitTools/ChangeLog

    r63670 r63671  
     12010-07-19  Sam Weinig  <sam@webkit.org>
     2
     3        Reviewed by Adam Roben.
     4
     5        Patch for https://bugs.webkit.org/show_bug.cgi?id=42532
     6        Auto-generate the JS bindings for WebKitTestRunner's script objects.
     7
     8        * WebKitTestRunner/Configurations/Base.xcconfig:
     9        * WebKitTestRunner/Configurations/DebugRelease.xcconfig:
     10        * WebKitTestRunner/DerivedSources.make: Added.
     11        * WebKitTestRunner/ForwardingHeaders/wtf/GetPtr.h: Added.
     12        * WebKitTestRunner/InjectedBundle/Bindings: Added.
     13        * WebKitTestRunner/InjectedBundle/Bindings/CodeGeneratorTestRunner.pm: Added.
     14        * WebKitTestRunner/InjectedBundle/Bindings/JSWrappable.h: Added.
     15        (WTR::JSWrappable::~JSWrappable):
     16        * WebKitTestRunner/InjectedBundle/Bindings/JSWrapper.cpp: Added.
     17        (WTR::JSWrapper::wrap):
     18        (WTR::JSWrapper::unwrap):
     19        (WTR::unwrapObject):
     20        (WTR::JSWrapper::initialize):
     21        (WTR::JSWrapper::finalize):
     22        * WebKitTestRunner/InjectedBundle/Bindings/JSWrapper.h: Added.
     23        (WTR::toJS):
     24        * WebKitTestRunner/InjectedBundle/Bindings/LayoutTestController.idl: Added.
     25        * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
     26        (WTR::InjectedBundlePage::dump):
     27        (WTR::InjectedBundlePage::setStatusbarText):
     28        * WebKitTestRunner/InjectedBundle/LayoutTestController.cpp:
     29        (WTR::LayoutTestController::wrapperClass):
     30        (WTR::LayoutTestController::waitUntilDone):
     31        (WTR::LayoutTestController::makeWindowObject):
     32        * WebKitTestRunner/InjectedBundle/LayoutTestController.h:
     33        (WTR::LayoutTestController::shouldDumpAsText):
     34        (WTR::LayoutTestController::dumpAsText):
     35        (WTR::LayoutTestController::shouldDumpStatusCallbacks):
     36        (WTR::LayoutTestController::dumpStatusCallbacks):
     37        (WTR::LayoutTestController::waitToDump):
     38        (WTR::LayoutTestController::testRepaint):
     39        (WTR::LayoutTestController::repaintSweepHorizontally):
     40        * WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:
     41
    1422010-07-19  Tony Chang  <tony@chromium.org>
    243
  • trunk/WebKitTools/WebKitTestRunner/Configurations/Base.xcconfig

    r61769 r63671  
    6767SDKROOT_1070_1050 = macosx10.5;
    6868SDKROOT_1070_1060 = macosx10.6;
     69
     70WEBKIT_UMBRELLA_FRAMEWORKS_DIR = $(NEXT_ROOT)$(SYSTEM_LIBRARY_DIR)/Frameworks/WebKit.framework/Versions/A/Frameworks;
     71WEBCORE_PRIVATE_HEADERS_DIR = $(WEBKIT_UMBRELLA_FRAMEWORKS_DIR)/WebCore.framework/PrivateHeaders;
  • trunk/WebKitTools/WebKitTestRunner/Configurations/DebugRelease.xcconfig

    r61769 r63671  
    3939MACOSX_DEPLOYMENT_TARGET_1060 = 10.6;
    4040MACOSX_DEPLOYMENT_TARGET_1070 = 10.7;
     41
     42WEBKIT_UMBRELLA_FRAMEWORKS_DIR = $(BUILT_PRODUCTS_DIR);
  • trunk/WebKitTools/WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp

    r63627 r63671  
    147147    InjectedBundle::shared().layoutTestController()->invalidateWaitToDumpWatchdog();
    148148
    149     if (InjectedBundle::shared().layoutTestController()->dumpAsText()) {
     149    if (InjectedBundle::shared().layoutTestController()->shouldDumpAsText()) {
    150150        // FIXME: Support dumping subframes when layoutTestController()->dumpChildFramesAsText() is true.
    151151        WKRetainPtr<WKStringRef> innerText(AdoptWK, WKBundleFrameCopyInnerText(WKBundlePageGetMainFrame(m_page)));
     
    214214void InjectedBundlePage::setStatusbarText(WKStringRef statusbarText)
    215215{
    216     if (!InjectedBundle::shared().layoutTestController()->dumpStatusCallbacks())
     216    if (!InjectedBundle::shared().layoutTestController()->shouldDumpStatusCallbacks())
    217217        return;
    218218
  • trunk/WebKitTools/WebKitTestRunner/InjectedBundle/LayoutTestController.cpp

    r63627 r63671  
    2525
    2626#include "LayoutTestController.h"
     27
    2728#include "InjectedBundle.h"
    2829#include "InjectedBundlePage.h"
    29 
     30#include "JSLayoutTestController.h"
    3031#include <JavaScriptCore/JSRetainPtr.h>
    3132#include <WebKit2/WKBundleFrame.h>
     
    5556}
    5657
     58JSClassRef LayoutTestController::wrapperClass()
     59{
     60    return JSLayoutTestController::layoutTestControllerClass();
     61}
     62
    5763// This is lower than DumpRenderTree's timeout, to make it easier to work through the failures
    5864// Eventually it should be changed to match.
     
    7783}
    7884
    79 void LayoutTestController::setWaitToDump()
     85void LayoutTestController::waitUntilDone()
    8086{
    8187    m_waitToDump = true;
     
    119125}
    120126
    121 static JSValueRef displayCallback(JSContextRef context, JSObjectRef function, JSObjectRef thisObject, size_t argumentCount, const JSValueRef arguments[], JSValueRef* exception)
    122 {
    123     // Has mac & windows implementation
    124     LayoutTestController* controller = static_cast<LayoutTestController*>(JSObjectGetPrivate(thisObject));
    125     controller->display();
    126 
    127     return JSValueMakeUndefined(context);
    128 }
    129 
    130 static JSValueRef dumpAsTextCallback(JSContextRef context, JSObjectRef function, JSObjectRef thisObject, size_t argumentCount, const JSValueRef arguments[], JSValueRef* exception)
    131 {
    132     LayoutTestController* controller = static_cast<LayoutTestController*>(JSObjectGetPrivate(thisObject));
    133     controller->setDumpAsText(true);
    134     return JSValueMakeUndefined(context);
    135 }
    136 
    137 static JSValueRef dumpStatusCallbacksCallback(JSContextRef context, JSObjectRef function, JSObjectRef thisObject, size_t argumentCount, const JSValueRef arguments[], JSValueRef* exception)
    138 {
    139     LayoutTestController* controller = static_cast<LayoutTestController*>(JSObjectGetPrivate(thisObject));
    140     controller->setDumpStatusCallbacks(true);
    141     return JSValueMakeUndefined(context);
    142 }
    143 
    144 static JSValueRef waitUntilDoneCallback(JSContextRef context, JSObjectRef function, JSObjectRef thisObject, size_t argumentCount, const JSValueRef arguments[], JSValueRef* exception)
    145 {
    146     LayoutTestController* controller = static_cast<LayoutTestController*>(JSObjectGetPrivate(thisObject));
    147     controller->setWaitToDump();
    148     return JSValueMakeUndefined(context);
    149 }
    150 
    151 static JSValueRef notifyDoneCallback(JSContextRef context, JSObjectRef function, JSObjectRef thisObject, size_t argumentCount, const JSValueRef arguments[], JSValueRef* exception)
    152 {
    153     LayoutTestController* controller = static_cast<LayoutTestController*>(JSObjectGetPrivate(thisObject));
    154     controller->notifyDone();
    155     return JSValueMakeUndefined(context);
    156 }
    157 
    158 static JSValueRef numberOfActiveAnimationsCallback(JSContextRef context, JSObjectRef function, JSObjectRef thisObject, size_t argumentCount, const JSValueRef arguments[], JSValueRef* exception)
    159 {
    160     if (argumentCount)
    161         return JSValueMakeUndefined(context);
    162 
    163     LayoutTestController* controller = static_cast<LayoutTestController*>(JSObjectGetPrivate(thisObject));
    164     return JSValueMakeNumber(context, controller->numberOfActiveAnimations());
    165 }
    166 
    167 static JSValueRef pauseAnimationAtTimeOnElementWithIdCallback(JSContextRef context, JSObjectRef function, JSObjectRef thisObject, size_t argumentCount, const JSValueRef arguments[], JSValueRef* exception)
    168 {
    169     if (argumentCount != 3)
    170         return JSValueMakeUndefined(context);
    171 
    172     JSRetainPtr<JSStringRef> animationName(Adopt, JSValueToStringCopy(context, arguments[0], exception));
    173     ASSERT(!*exception);
    174     double time = JSValueToNumber(context, arguments[1], exception);
    175     ASSERT(!*exception);
    176     JSRetainPtr<JSStringRef> elementId(Adopt, JSValueToStringCopy(context, arguments[2], exception));
    177     ASSERT(!*exception);
    178 
    179     LayoutTestController* controller = static_cast<LayoutTestController*>(JSObjectGetPrivate(thisObject));
    180     return JSValueMakeBoolean(context, controller->pauseAnimationAtTimeOnElementWithId(animationName.get(), time, elementId.get()));
    181 }
    182 
    183 static JSValueRef repaintSweepHorizontallyCallback(JSContextRef context, JSObjectRef function, JSObjectRef thisObject, size_t argumentCount, const JSValueRef arguments[], JSValueRef* exception)
    184 {
    185     LayoutTestController* controller = static_cast<LayoutTestController*>(JSObjectGetPrivate(thisObject));
    186     controller->setTestRepaintSweepHorizontally();
    187     return JSValueMakeUndefined(context);
    188 }
    189 
    190 static JSValueRef testRepaintCallback(JSContextRef context, JSObjectRef function, JSObjectRef thisObject, size_t argumentCount, const JSValueRef arguments[], JSValueRef* exception)
    191 {
    192     LayoutTestController* controller = static_cast<LayoutTestController*>(JSObjectGetPrivate(thisObject));
    193     controller->setTestRepaint();
    194     return JSValueMakeUndefined(context);
    195 }
    196 
    197 // Object Finalization
    198 
    199 static void layoutTestControllerObjectFinalize(JSObjectRef object)
    200 {
    201     LayoutTestController* controller = static_cast<LayoutTestController*>(JSObjectGetPrivate(object));
    202     controller->deref();
    203 }
    204 
    205127// Object Creation
    206128
     
    208130{
    209131    JSRetainPtr<JSStringRef> layoutTestContollerStr(Adopt, JSStringCreateWithUTF8CString("layoutTestController"));
    210     ref();
    211 
    212     JSClassRef classRef = getJSClass();
    213     JSValueRef layoutTestContollerObject = JSObjectMake(context, classRef, this);
    214     JSClassRelease(classRef);
    215 
    216     JSObjectSetProperty(context, windowObject, layoutTestContollerStr.get(), layoutTestContollerObject, kJSPropertyAttributeReadOnly | kJSPropertyAttributeDontDelete, exception);
    217 }
    218 
    219 JSClassRef LayoutTestController::getJSClass()
    220 {
    221     static JSStaticFunction* staticFunctions = LayoutTestController::staticFunctions();
    222     static JSClassDefinition classDefinition = {
    223         0, kJSClassAttributeNone, "LayoutTestController", 0, 0, staticFunctions,
    224         0, layoutTestControllerObjectFinalize, 0, 0, 0, 0, 0, 0, 0, 0, 0
    225     };
    226 
    227     return JSClassCreate(&classDefinition);
    228 }
    229 
    230 JSStaticFunction* LayoutTestController::staticFunctions()
    231 {
    232     static JSStaticFunction staticFunctions[] = {
    233         { "display", displayCallback, kJSPropertyAttributeReadOnly | kJSPropertyAttributeDontDelete },
    234         { "dumpAsText", dumpAsTextCallback, kJSPropertyAttributeReadOnly | kJSPropertyAttributeDontDelete },
    235         { "dumpStatusCallbacks", dumpStatusCallbacksCallback, kJSPropertyAttributeReadOnly | kJSPropertyAttributeDontDelete },
    236         { "notifyDone", notifyDoneCallback, kJSPropertyAttributeReadOnly | kJSPropertyAttributeDontDelete },
    237         { "numberOfActiveAnimations", numberOfActiveAnimationsCallback, kJSPropertyAttributeReadOnly | kJSPropertyAttributeDontDelete },
    238         { "pauseAnimationAtTimeOnElementWithId", pauseAnimationAtTimeOnElementWithIdCallback, kJSPropertyAttributeReadOnly | kJSPropertyAttributeDontDelete },
    239         { "repaintSweepHorizontally", repaintSweepHorizontallyCallback, kJSPropertyAttributeReadOnly | kJSPropertyAttributeDontDelete },
    240         { "testRepaint", testRepaintCallback, kJSPropertyAttributeReadOnly | kJSPropertyAttributeDontDelete },
    241         { "waitUntilDone", waitUntilDoneCallback, kJSPropertyAttributeReadOnly | kJSPropertyAttributeDontDelete },
    242         { 0, 0, 0 }
    243     };
    244 
    245     return staticFunctions;
     132    JSObjectSetProperty(context, windowObject, layoutTestContollerStr.get(), JSWrapper::wrap(context, this), kJSPropertyAttributeReadOnly | kJSPropertyAttributeDontDelete, exception);
    246133}
    247134
  • trunk/WebKitTools/WebKitTestRunner/InjectedBundle/LayoutTestController.h

    r63627 r63671  
    2727#define LayoutTestController_h
    2828
     29#include "JSWrappable.h"
    2930#include <JavaScriptCore/JavaScriptCore.h>
    3031#include <wtf/PassRefPtr.h>
    31 #include <wtf/RefCounted.h>
    3232#include <wtf/RetainPtr.h>
    3333#include <string>
     
    3535namespace WTR {
    3636
    37 class LayoutTestController : public RefCounted<LayoutTestController> {
     37class LayoutTestController : public JSWrappable {
    3838public:
    3939    static PassRefPtr<LayoutTestController> create(const std::string& testPathOrURL);
    4040    ~LayoutTestController();
    4141
     42    // JSWrappable
     43    JSClassRef wrapperClass();
     44
    4245    void makeWindowObject(JSContextRef context, JSObjectRef windowObject, JSValueRef* exception);
    4346
    44     bool dumpAsText() const { return m_dumpAsText; }
    45     void setDumpAsText(bool dumpAsText) { m_dumpAsText = dumpAsText; }
     47    bool shouldDumpAsText() const { return m_dumpAsText; }
     48    void dumpAsText() { m_dumpAsText = true; }
    4649
    47     bool dumpStatusCallbacks() const { return m_dumpStatusCallbacks; }
    48     void setDumpStatusCallbacks(bool dumpStatusCallbacks) { m_dumpStatusCallbacks = dumpStatusCallbacks; }
     50    bool shouldDumpStatusCallbacks() const { return m_dumpStatusCallbacks; }
     51    void dumpStatusCallbacks() { m_dumpStatusCallbacks = true; }
    4952
    5053    bool waitToDump() const { return m_waitToDump; }
    51     void setWaitToDump();
    5254    void waitToDumpWatchdogTimerFired();
    5355    void invalidateWaitToDumpWatchdog();
     56    void waitUntilDone();
    5457    void notifyDone();
     58
     59    void testRepaint() { m_testRepaint = true; }
     60    void repaintSweepHorizontally() { m_testRepaintSweepHorizontally = true; }
    5561    void display();
    5662
    5763    unsigned numberOfActiveAnimations() const;
    5864    bool pauseAnimationAtTimeOnElementWithId(JSStringRef animationName, double time, JSStringRef elementId);
    59 
    60     void setTestRepaint() { m_testRepaint = true; }
    61     void setTestRepaintSweepHorizontally() { m_testRepaintSweepHorizontally = true; }
    6265
    6366private:
     
    7073    bool m_testRepaintSweepHorizontally;
    7174
    72 
    7375    std::string m_testPathOrURL;
    7476   
    7577    RetainPtr<CFRunLoopTimerRef> m_waitToDumpWatchdog;
    76 
    77     static JSClassRef getJSClass();
    78     static JSStaticValue* staticValues();
    79     static JSStaticFunction* staticFunctions();
    8078};
    8179
  • trunk/WebKitTools/WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj

    r63590 r63671  
    66        objectVersion = 45;
    77        objects = {
     8
     9/* Begin PBXAggregateTarget section */
     10                BC952D7711F3BF5D003398B4 /* Derived Sources */ = {
     11                        isa = PBXAggregateTarget;
     12                        buildConfigurationList = BC952D7D11F3BF6A003398B4 /* Build configuration list for PBXAggregateTarget "Derived Sources" */;
     13                        buildPhases = (
     14                                BC952D8211F3BF78003398B4 /* Generate Derived Sources */,
     15                        );
     16                        dependencies = (
     17                        );
     18                        name = "Derived Sources";
     19                        productName = "Derived Sources";
     20                };
     21/* End PBXAggregateTarget section */
    822
    923/* Begin PBXBuildFile section */
     
    3044                BC7934E811906846005EA8E2 /* PlatformWebViewMac.mm in Sources */ = {isa = PBXBuildFile; fileRef = BC7934E711906846005EA8E2 /* PlatformWebViewMac.mm */; };
    3145                BC8C795C11D2785D004535A1 /* TestControllerMac.mm in Sources */ = {isa = PBXBuildFile; fileRef = BC8C795B11D2785D004535A1 /* TestControllerMac.mm */; };
     46                BC952C0D11F3B965003398B4 /* JSWrapper.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BC952C0C11F3B965003398B4 /* JSWrapper.cpp */; };
     47                BC952F1F11F3C652003398B4 /* JSLayoutTestController.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BC952F1D11F3C652003398B4 /* JSLayoutTestController.cpp */; };
    3248                BCC997A411D3C8F60017BCA2 /* InjectedBundle.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BCC997A011D3C8F60017BCA2 /* InjectedBundle.cpp */; };
    3349                BCC997A511D3C8F60017BCA2 /* InjectedBundlePage.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BCC997A211D3C8F60017BCA2 /* InjectedBundlePage.cpp */; };
     
    4561                        remoteGlobalIDString = BC25186111D15D54002EBC01;
    4662                        remoteInfo = InjectedBundle;
     63                };
     64                BC952ED611F3C38B003398B4 /* PBXContainerItemProxy */ = {
     65                        isa = PBXContainerItemProxy;
     66                        containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */;
     67                        proxyType = 1;
     68                        remoteGlobalIDString = BC952D7711F3BF5D003398B4;
     69                        remoteInfo = "Derived Sources";
    4770                };
    4871/* End PBXContainerItemProxy section */
     
    79102                BC7934E711906846005EA8E2 /* PlatformWebViewMac.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = PlatformWebViewMac.mm; sourceTree = "<group>"; };
    80103                BC8C795B11D2785D004535A1 /* TestControllerMac.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = TestControllerMac.mm; sourceTree = "<group>"; };
     104                BC952C0B11F3B965003398B4 /* JSWrapper.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = JSWrapper.h; sourceTree = "<group>"; };
     105                BC952C0C11F3B965003398B4 /* JSWrapper.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = JSWrapper.cpp; sourceTree = "<group>"; };
     106                BC952C0E11F3B97B003398B4 /* JSWrappable.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = JSWrappable.h; sourceTree = "<group>"; };
     107                BC952EC511F3C10F003398B4 /* DerivedSources.make */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = DerivedSources.make; sourceTree = "<group>"; };
     108                BC952ED211F3C29F003398B4 /* LayoutTestController.idl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = LayoutTestController.idl; sourceTree = "<group>"; };
     109                BC952ED311F3C318003398B4 /* CodeGeneratorTestRunner.pm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.perl; path = CodeGeneratorTestRunner.pm; sourceTree = "<group>"; };
     110                BC952F1D11F3C652003398B4 /* JSLayoutTestController.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = JSLayoutTestController.cpp; path = ../../WebKitBuild/Debug/DerivedSources/WebKitTestRunner/JSLayoutTestController.cpp; sourceTree = SOURCE_ROOT; };
     111                BC952F1E11F3C652003398B4 /* JSLayoutTestController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = JSLayoutTestController.h; path = ../../WebKitBuild/Debug/DerivedSources/WebKitTestRunner/JSLayoutTestController.h; sourceTree = SOURCE_ROOT; };
    81112                BCC997A011D3C8F60017BCA2 /* InjectedBundle.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = InjectedBundle.cpp; sourceTree = "<group>"; };
    82113                BCC997A111D3C8F60017BCA2 /* InjectedBundle.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = InjectedBundle.h; sourceTree = "<group>"; };
     
    118149                        isa = PBXGroup;
    119150                        children = (
     151                                BC952EC511F3C10F003398B4 /* DerivedSources.make */,
    120152                                08FB7795FE84155DC02AAC07 /* Source */,
    121153                                BC25183511D1571D002EBC01 /* InjectedBundle */,
     
    172204                        isa = PBXGroup;
    173205                        children = (
     206                                BC952C0A11F3B939003398B4 /* Bindings */,
    174207                                65EB859E11EC67CC0034D300 /* mac */,
    175208                                65EB859D11EC67CC0034D300 /* ActivateFonts.h */,
     
    226259                        sourceTree = "<group>";
    227260                };
     261                BC952C0A11F3B939003398B4 /* Bindings */ = {
     262                        isa = PBXGroup;
     263                        children = (
     264                                BC952D3A11F3BF1F003398B4 /* Derived Sources */,
     265                                BC952ED311F3C318003398B4 /* CodeGeneratorTestRunner.pm */,
     266                                BC952C0E11F3B97B003398B4 /* JSWrappable.h */,
     267                                BC952C0C11F3B965003398B4 /* JSWrapper.cpp */,
     268                                BC952C0B11F3B965003398B4 /* JSWrapper.h */,
     269                                BC952ED211F3C29F003398B4 /* LayoutTestController.idl */,
     270                        );
     271                        path = Bindings;
     272                        sourceTree = "<group>";
     273                };
     274                BC952D3A11F3BF1F003398B4 /* Derived Sources */ = {
     275                        isa = PBXGroup;
     276                        children = (
     277                                BC952F1D11F3C652003398B4 /* JSLayoutTestController.cpp */,
     278                                BC952F1E11F3C652003398B4 /* JSLayoutTestController.h */,
     279                        );
     280                        name = "Derived Sources";
     281                        path = ..;
     282                        sourceTree = "<group>";
     283                };
    228284/* End PBXGroup section */
    229285
     
    258314                        );
    259315                        dependencies = (
     316                                BC952ED711F3C38B003398B4 /* PBXTargetDependency */,
    260317                        );
    261318                        name = InjectedBundle;
     
    278335                                8DD76F960486AA7600D96B5E /* WebKitTestRunner */,
    279336                                BC25186111D15D54002EBC01 /* InjectedBundle */,
     337                                BC952D7711F3BF5D003398B4 /* Derived Sources */,
    280338                        );
    281339                };
     
    303361/* End PBXResourcesBuildPhase section */
    304362
     363/* Begin PBXShellScriptBuildPhase section */
     364                BC952D8211F3BF78003398B4 /* Generate Derived Sources */ = {
     365                        isa = PBXShellScriptBuildPhase;
     366                        buildActionMask = 2147483647;
     367                        files = (
     368                        );
     369                        inputPaths = (
     370                        );
     371                        name = "Generate Derived Sources";
     372                        outputPaths = (
     373                        );
     374                        runOnlyForDeploymentPostprocessing = 0;
     375                        shellPath = /bin/sh;
     376                        shellScript = "mkdir -p \"${BUILT_PRODUCTS_DIR}/DerivedSources/WebKitTestRunner\"\ncd \"${BUILT_PRODUCTS_DIR}/DerivedSources/WebKitTestRunner\"\n\nexport WebKitTestRunner=\"${SRCROOT}\"\nexport WebCoreScripts=\"${WEBCORE_PRIVATE_HEADERS_DIR}\"\n\nif [ \"${ACTION}\" = \"build\" -o \"${ACTION}\" = \"install\" -o \"${ACTION}\" = \"installhdrs\" ]; then\n    make -f \"${WebKitTestRunner}/DerivedSources.make\" -j `/usr/sbin/sysctl -n hw.availcpu`\nfi\n";
     377                };
     378/* End PBXShellScriptBuildPhase section */
     379
    305380/* Begin PBXSourcesBuildPhase section */
    306381                8DD76F990486AA7600D96B5E /* Sources */ = {
     
    326401                                BCC9981811D3F51E0017BCA2 /* LayoutTestController.cpp in Sources */,
    327402                                65EB85A011EC67CC0034D300 /* ActivateFonts.mm in Sources */,
     403                                BC952C0D11F3B965003398B4 /* JSWrapper.cpp in Sources */,
     404                                BC952F1F11F3C652003398B4 /* JSLayoutTestController.cpp in Sources */,
    328405                        );
    329406                        runOnlyForDeploymentPostprocessing = 0;
     
    337414                        targetProxy = BC25194111D15D94002EBC01 /* PBXContainerItemProxy */;
    338415                };
     416                BC952ED711F3C38B003398B4 /* PBXTargetDependency */ = {
     417                        isa = PBXTargetDependency;
     418                        target = BC952D7711F3BF5D003398B4 /* Derived Sources */;
     419                        targetProxy = BC952ED611F3C38B003398B4 /* PBXContainerItemProxy */;
     420                };
    339421/* End PBXTargetDependency section */
    340422
     
    380462                        baseConfigurationReference = BC25197111D15E61002EBC01 /* InjectedBundle.xcconfig */;
    381463                        buildSettings = {
     464                        };
     465                        name = Release;
     466                };
     467                BC952D7811F3BF5E003398B4 /* Debug */ = {
     468                        isa = XCBuildConfiguration;
     469                        buildSettings = {
     470                                COPY_PHASE_STRIP = NO;
     471                                GCC_DYNAMIC_NO_PIC = NO;
     472                                GCC_OPTIMIZATION_LEVEL = 0;
     473                                PRODUCT_NAME = "Derived Sources";
     474                        };
     475                        name = Debug;
     476                };
     477                BC952D7911F3BF5E003398B4 /* Release */ = {
     478                        isa = XCBuildConfiguration;
     479                        buildSettings = {
     480                                COPY_PHASE_STRIP = YES;
     481                                DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
     482                                GCC_ENABLE_FIX_AND_CONTINUE = NO;
     483                                PRODUCT_NAME = "Derived Sources";
     484                                ZERO_LINK = NO;
    382485                        };
    383486                        name = Release;
     
    413516                        defaultConfigurationName = Release;
    414517                };
     518                BC952D7D11F3BF6A003398B4 /* Build configuration list for PBXAggregateTarget "Derived Sources" */ = {
     519                        isa = XCConfigurationList;
     520                        buildConfigurations = (
     521                                BC952D7811F3BF5E003398B4 /* Debug */,
     522                                BC952D7911F3BF5E003398B4 /* Release */,
     523                        );
     524                        defaultConfigurationIsVisible = 0;
     525                        defaultConfigurationName = Release;
     526                };
    415527/* End XCConfigurationList section */
    416528        };
Note: See TracChangeset for help on using the changeset viewer.