Changeset 63671 in webkit
- Timestamp:
- Jul 19, 2010 9:43:56 AM (14 years ago)
- Location:
- trunk/WebKitTools
- Files:
-
- 8 added
- 7 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/WebKitTools/ChangeLog
r63670 r63671 1 2010-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 1 42 2010-07-19 Tony Chang <tony@chromium.org> 2 43 -
trunk/WebKitTools/WebKitTestRunner/Configurations/Base.xcconfig
r61769 r63671 67 67 SDKROOT_1070_1050 = macosx10.5; 68 68 SDKROOT_1070_1060 = macosx10.6; 69 70 WEBKIT_UMBRELLA_FRAMEWORKS_DIR = $(NEXT_ROOT)$(SYSTEM_LIBRARY_DIR)/Frameworks/WebKit.framework/Versions/A/Frameworks; 71 WEBCORE_PRIVATE_HEADERS_DIR = $(WEBKIT_UMBRELLA_FRAMEWORKS_DIR)/WebCore.framework/PrivateHeaders; -
trunk/WebKitTools/WebKitTestRunner/Configurations/DebugRelease.xcconfig
r61769 r63671 39 39 MACOSX_DEPLOYMENT_TARGET_1060 = 10.6; 40 40 MACOSX_DEPLOYMENT_TARGET_1070 = 10.7; 41 42 WEBKIT_UMBRELLA_FRAMEWORKS_DIR = $(BUILT_PRODUCTS_DIR); -
trunk/WebKitTools/WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp
r63627 r63671 147 147 InjectedBundle::shared().layoutTestController()->invalidateWaitToDumpWatchdog(); 148 148 149 if (InjectedBundle::shared().layoutTestController()-> dumpAsText()) {149 if (InjectedBundle::shared().layoutTestController()->shouldDumpAsText()) { 150 150 // FIXME: Support dumping subframes when layoutTestController()->dumpChildFramesAsText() is true. 151 151 WKRetainPtr<WKStringRef> innerText(AdoptWK, WKBundleFrameCopyInnerText(WKBundlePageGetMainFrame(m_page))); … … 214 214 void InjectedBundlePage::setStatusbarText(WKStringRef statusbarText) 215 215 { 216 if (!InjectedBundle::shared().layoutTestController()-> dumpStatusCallbacks())216 if (!InjectedBundle::shared().layoutTestController()->shouldDumpStatusCallbacks()) 217 217 return; 218 218 -
trunk/WebKitTools/WebKitTestRunner/InjectedBundle/LayoutTestController.cpp
r63627 r63671 25 25 26 26 #include "LayoutTestController.h" 27 27 28 #include "InjectedBundle.h" 28 29 #include "InjectedBundlePage.h" 29 30 #include "JSLayoutTestController.h" 30 31 #include <JavaScriptCore/JSRetainPtr.h> 31 32 #include <WebKit2/WKBundleFrame.h> … … 55 56 } 56 57 58 JSClassRef LayoutTestController::wrapperClass() 59 { 60 return JSLayoutTestController::layoutTestControllerClass(); 61 } 62 57 63 // This is lower than DumpRenderTree's timeout, to make it easier to work through the failures 58 64 // Eventually it should be changed to match. … … 77 83 } 78 84 79 void LayoutTestController:: setWaitToDump()85 void LayoutTestController::waitUntilDone() 80 86 { 81 87 m_waitToDump = true; … … 119 125 } 120 126 121 static JSValueRef displayCallback(JSContextRef context, JSObjectRef function, JSObjectRef thisObject, size_t argumentCount, const JSValueRef arguments[], JSValueRef* exception)122 {123 // Has mac & windows implementation124 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 Finalization198 199 static void layoutTestControllerObjectFinalize(JSObjectRef object)200 {201 LayoutTestController* controller = static_cast<LayoutTestController*>(JSObjectGetPrivate(object));202 controller->deref();203 }204 205 127 // Object Creation 206 128 … … 208 130 { 209 131 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); 246 133 } 247 134 -
trunk/WebKitTools/WebKitTestRunner/InjectedBundle/LayoutTestController.h
r63627 r63671 27 27 #define LayoutTestController_h 28 28 29 #include "JSWrappable.h" 29 30 #include <JavaScriptCore/JavaScriptCore.h> 30 31 #include <wtf/PassRefPtr.h> 31 #include <wtf/RefCounted.h>32 32 #include <wtf/RetainPtr.h> 33 33 #include <string> … … 35 35 namespace WTR { 36 36 37 class LayoutTestController : public RefCounted<LayoutTestController>{37 class LayoutTestController : public JSWrappable { 38 38 public: 39 39 static PassRefPtr<LayoutTestController> create(const std::string& testPathOrURL); 40 40 ~LayoutTestController(); 41 41 42 // JSWrappable 43 JSClassRef wrapperClass(); 44 42 45 void makeWindowObject(JSContextRef context, JSObjectRef windowObject, JSValueRef* exception); 43 46 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; } 46 49 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; } 49 52 50 53 bool waitToDump() const { return m_waitToDump; } 51 void setWaitToDump();52 54 void waitToDumpWatchdogTimerFired(); 53 55 void invalidateWaitToDumpWatchdog(); 56 void waitUntilDone(); 54 57 void notifyDone(); 58 59 void testRepaint() { m_testRepaint = true; } 60 void repaintSweepHorizontally() { m_testRepaintSweepHorizontally = true; } 55 61 void display(); 56 62 57 63 unsigned numberOfActiveAnimations() const; 58 64 bool pauseAnimationAtTimeOnElementWithId(JSStringRef animationName, double time, JSStringRef elementId); 59 60 void setTestRepaint() { m_testRepaint = true; }61 void setTestRepaintSweepHorizontally() { m_testRepaintSweepHorizontally = true; }62 65 63 66 private: … … 70 73 bool m_testRepaintSweepHorizontally; 71 74 72 73 75 std::string m_testPathOrURL; 74 76 75 77 RetainPtr<CFRunLoopTimerRef> m_waitToDumpWatchdog; 76 77 static JSClassRef getJSClass();78 static JSStaticValue* staticValues();79 static JSStaticFunction* staticFunctions();80 78 }; 81 79 -
trunk/WebKitTools/WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj
r63590 r63671 6 6 objectVersion = 45; 7 7 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 */ 8 22 9 23 /* Begin PBXBuildFile section */ … … 30 44 BC7934E811906846005EA8E2 /* PlatformWebViewMac.mm in Sources */ = {isa = PBXBuildFile; fileRef = BC7934E711906846005EA8E2 /* PlatformWebViewMac.mm */; }; 31 45 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 */; }; 32 48 BCC997A411D3C8F60017BCA2 /* InjectedBundle.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BCC997A011D3C8F60017BCA2 /* InjectedBundle.cpp */; }; 33 49 BCC997A511D3C8F60017BCA2 /* InjectedBundlePage.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BCC997A211D3C8F60017BCA2 /* InjectedBundlePage.cpp */; }; … … 45 61 remoteGlobalIDString = BC25186111D15D54002EBC01; 46 62 remoteInfo = InjectedBundle; 63 }; 64 BC952ED611F3C38B003398B4 /* PBXContainerItemProxy */ = { 65 isa = PBXContainerItemProxy; 66 containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */; 67 proxyType = 1; 68 remoteGlobalIDString = BC952D7711F3BF5D003398B4; 69 remoteInfo = "Derived Sources"; 47 70 }; 48 71 /* End PBXContainerItemProxy section */ … … 79 102 BC7934E711906846005EA8E2 /* PlatformWebViewMac.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = PlatformWebViewMac.mm; sourceTree = "<group>"; }; 80 103 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; }; 81 112 BCC997A011D3C8F60017BCA2 /* InjectedBundle.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = InjectedBundle.cpp; sourceTree = "<group>"; }; 82 113 BCC997A111D3C8F60017BCA2 /* InjectedBundle.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = InjectedBundle.h; sourceTree = "<group>"; }; … … 118 149 isa = PBXGroup; 119 150 children = ( 151 BC952EC511F3C10F003398B4 /* DerivedSources.make */, 120 152 08FB7795FE84155DC02AAC07 /* Source */, 121 153 BC25183511D1571D002EBC01 /* InjectedBundle */, … … 172 204 isa = PBXGroup; 173 205 children = ( 206 BC952C0A11F3B939003398B4 /* Bindings */, 174 207 65EB859E11EC67CC0034D300 /* mac */, 175 208 65EB859D11EC67CC0034D300 /* ActivateFonts.h */, … … 226 259 sourceTree = "<group>"; 227 260 }; 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 }; 228 284 /* End PBXGroup section */ 229 285 … … 258 314 ); 259 315 dependencies = ( 316 BC952ED711F3C38B003398B4 /* PBXTargetDependency */, 260 317 ); 261 318 name = InjectedBundle; … … 278 335 8DD76F960486AA7600D96B5E /* WebKitTestRunner */, 279 336 BC25186111D15D54002EBC01 /* InjectedBundle */, 337 BC952D7711F3BF5D003398B4 /* Derived Sources */, 280 338 ); 281 339 }; … … 303 361 /* End PBXResourcesBuildPhase section */ 304 362 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 305 380 /* Begin PBXSourcesBuildPhase section */ 306 381 8DD76F990486AA7600D96B5E /* Sources */ = { … … 326 401 BCC9981811D3F51E0017BCA2 /* LayoutTestController.cpp in Sources */, 327 402 65EB85A011EC67CC0034D300 /* ActivateFonts.mm in Sources */, 403 BC952C0D11F3B965003398B4 /* JSWrapper.cpp in Sources */, 404 BC952F1F11F3C652003398B4 /* JSLayoutTestController.cpp in Sources */, 328 405 ); 329 406 runOnlyForDeploymentPostprocessing = 0; … … 337 414 targetProxy = BC25194111D15D94002EBC01 /* PBXContainerItemProxy */; 338 415 }; 416 BC952ED711F3C38B003398B4 /* PBXTargetDependency */ = { 417 isa = PBXTargetDependency; 418 target = BC952D7711F3BF5D003398B4 /* Derived Sources */; 419 targetProxy = BC952ED611F3C38B003398B4 /* PBXContainerItemProxy */; 420 }; 339 421 /* End PBXTargetDependency section */ 340 422 … … 380 462 baseConfigurationReference = BC25197111D15E61002EBC01 /* InjectedBundle.xcconfig */; 381 463 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; 382 485 }; 383 486 name = Release; … … 413 516 defaultConfigurationName = Release; 414 517 }; 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 }; 415 527 /* End XCConfigurationList section */ 416 528 };
Note: See TracChangeset
for help on using the changeset viewer.