[GTK] Add an experimental gyp build
authorcommit-queue@webkit.org <commit-queue@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 8 Feb 2013 17:59:24 +0000 (17:59 +0000)
committercommit-queue@webkit.org <commit-queue@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 8 Feb 2013 17:59:24 +0000 (17:59 +0000)
https://bugs.webkit.org/show_bug.cgi?id=109003

Patch by Martin Robinson <mrobinson@igalia.com> on 2013-02-08
Reviewed by Gustavo Noronha Silva.

Source/JavaScriptCore:

* JavaScriptCore.gypi: Update the list of source files to include those
necessary for the GTK+ build.

Source/WebKit/gtk:

Add an experimental gyp build for WebKitGTK+. Currently only libjavascriptcoregtk,
jsc, and minidom build (and only on platforms for that support bash). To use the
build simply run:

$ gyp --generator-output=build --depth=. Source/WebKit/gtk/gyp/JavaScriptCore.gyp

Then enter the build directory and run make.

* gyp/Configuration.gypi: Added.
* gyp/JavaScriptCore.gyp: Added.
* gyp/WTF.gyp: Added.
* gyp/generate-derived-sources.sh: Added.

Source/WTF:

* WTF.gyp/WTF.gyp: Filter out MetaAllocator.(cpp/h) from the Chromium
build. It's only necessary for GTK+.
* WTF.gypi: Add MetaAllocator to the build for WebKitGTK+.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@142298 268f45cc-cd09-0410-ab3c-d52691b4dbfc

Source/JavaScriptCore/ChangeLog
Source/JavaScriptCore/JavaScriptCore.gypi
Source/WTF/ChangeLog
Source/WTF/WTF.gyp/WTF.gyp
Source/WTF/WTF.gypi
Source/WebKit/gtk/ChangeLog
Source/WebKit/gtk/gyp/Configuration.gypi [new file with mode: 0644]
Source/WebKit/gtk/gyp/JavaScriptCore.gyp [new file with mode: 0644]
Source/WebKit/gtk/gyp/WTF.gyp [new file with mode: 0644]
Source/WebKit/gtk/gyp/generate-derived-sources.sh [new file with mode: 0644]

index 1e14bb1b12b032f8a050ba66b967653d72ce4bb6..55ad9f31c324cae268162b6309327893ac642781 100644 (file)
@@ -1,3 +1,13 @@
+2013-02-08  Martin Robinson  <mrobinson@igalia.com>
+
+        [GTK] Add an experimental gyp build
+        https://bugs.webkit.org/show_bug.cgi?id=109003
+
+        Reviewed by Gustavo Noronha Silva.
+
+        * JavaScriptCore.gypi: Update the list of source files to include those
+        necessary for the GTK+ build.
+
 2013-02-08  Andreas Kling  <akling@apple.com>
 
         JSC: Lower minimum PropertyTable size.
index 1f1802bde491e192504b8c228209e4e5ba3ebf35..0d5718856bd033d1b73bf300f0b7a6a5f245bde9 100644 (file)
@@ -9,6 +9,865 @@
         ],
         'javascriptcore_derived_source_files': [
             '<(PRODUCT_DIR)/DerivedSources/JavaScriptCore/RegExpJitTables.h',
+            '<(PRODUCT_DIR)/DerivedSources/JavaScriptCore/Lexer.lut.h',
+            '<(PRODUCT_DIR)/DerivedSources/JavaScriptCore/ArrayConstructor.lut.h',
+            '<(PRODUCT_DIR)/DerivedSources/JavaScriptCore/ArrayPrototype.lut.h',
+            '<(PRODUCT_DIR)/DerivedSources/JavaScriptCore/BooleanPrototype.lut.h',
+            '<(PRODUCT_DIR)/DerivedSources/JavaScriptCore/DateConstructor.lut.h',
+            '<(PRODUCT_DIR)/DerivedSources/JavaScriptCore/DatePrototype.lut.h',
+            '<(PRODUCT_DIR)/DerivedSources/JavaScriptCore/ErrorPrototype.lut.h',
+            '<(PRODUCT_DIR)/DerivedSources/JavaScriptCore/JSGlobalObject.lut.h',
+            '<(PRODUCT_DIR)/DerivedSources/JavaScriptCore/JSONObject.lut.h',
+            '<(PRODUCT_DIR)/DerivedSources/JavaScriptCore/MathObject.lut.h',
+            '<(PRODUCT_DIR)/DerivedSources/JavaScriptCore/NamePrototype.lut.h',
+            '<(PRODUCT_DIR)/DerivedSources/JavaScriptCore/NumberConstructor.lut.h',
+            '<(PRODUCT_DIR)/DerivedSources/JavaScriptCore/NumberPrototype.lut.h',
+            '<(PRODUCT_DIR)/DerivedSources/JavaScriptCore/ObjectConstructor.lut.h',
+            '<(PRODUCT_DIR)/DerivedSources/JavaScriptCore/ObjectPrototype.lut.h',
+            '<(PRODUCT_DIR)/DerivedSources/JavaScriptCore/RegExpConstructor.lut.h',
+            '<(PRODUCT_DIR)/DerivedSources/JavaScriptCore/RegExpObject.lut.h',
+            '<(PRODUCT_DIR)/DerivedSources/JavaScriptCore/RegExpPrototype.lut.h',
+            '<(PRODUCT_DIR)/DerivedSources/JavaScriptCore/StringConstructor.lut.h',
+            '<(PRODUCT_DIR)/DerivedSources/JavaScriptCore/StringPrototype.lut.h',
+        ],
+        'javascriptcore_files': [
+            'AllInOneFile.cpp',
+            'API/APICast.h',
+            'API/APIShims.h',
+            'API/JavaScriptCore.h',
+            'API/JavaScript.h',
+            'API/JSBase.cpp',
+            'API/JSBase.h',
+            'API/JSBasePrivate.h',
+            'API/JSBlockAdaptor.h',
+            'API/JSCallbackConstructor.cpp',
+            'API/JSCallbackConstructor.h',
+            'API/JSCallbackFunction.cpp',
+            'API/JSCallbackFunction.h',
+            'API/JSCallbackObject.cpp',
+            'API/JSCallbackObjectFunctions.h',
+            'API/JSCallbackObject.h',
+            'API/JSClassRef.cpp',
+            'API/JSClassRef.h',
+            'API/JSContext.h',
+            'API/JSContextInternal.h',
+            'API/JSContextRef.cpp',
+            'API/JSContextRef.h',
+            'API/JSContextRefPrivate.h',
+            'API/JSExport.h',
+            'API/JSObjectRef.cpp',
+            'API/JSObjectRef.h',
+            'API/JSObjectRefPrivate.h',
+            'API/JSProfilerPrivate.cpp',
+            'API/JSProfilerPrivate.h',
+            'API/JSRetainPtr.h',
+            'API/JSScriptRef.cpp',
+            'API/JSScriptRefPrivate.h',
+            'API/JSStringRefBSTR.cpp',
+            'API/JSStringRefBSTR.h',
+            'API/JSStringRefCF.cpp',
+            'API/JSStringRefCF.h',
+            'API/JSStringRef.cpp',
+            'API/JSStringRef.h',
+            'API/JSValue.h',
+            'API/JSValueInternal.h',
+            'API/JSValueRef.cpp',
+            'API/JSValueRef.h',
+            'API/JSVirtualMachine.h',
+            'API/JSVirtualMachineInternal.h',
+            'API/JSWeakObjectMapRefInternal.h',
+            'API/JSWeakObjectMapRefPrivate.cpp',
+            'API/JSWeakObjectMapRefPrivate.h',
+            'API/JSWrapperMap.h',
+            'API/ObjCCallbackFunction.h',
+            'API/ObjcRuntimeExtras.h',
+            'API/OpaqueJSString.cpp',
+            'API/OpaqueJSString.h',
+            'API/WebKitAvailability.h',
+            'assembler/AbstractMacroAssembler.h',
+            'assembler/ARMAssembler.cpp',
+            'assembler/ARMAssembler.h',
+            'assembler/ARMv7Assembler.cpp',
+            'assembler/ARMv7Assembler.h',
+            'assembler/AssemblerBuffer.h',
+            'assembler/AssemblerBufferWithConstantPool.h',
+            'assembler/CodeLocation.h',
+            'assembler/LinkBuffer.cpp',
+            'assembler/LinkBuffer.h',
+            'assembler/MacroAssemblerARM.cpp',
+            'assembler/MacroAssemblerARM.h',
+            'assembler/MacroAssemblerARMv7.h',
+            'assembler/MacroAssemblerCodeRef.h',
+            'assembler/MacroAssembler.cpp',
+            'assembler/MacroAssembler.h',
+            'assembler/MacroAssemblerMIPS.h',
+            'assembler/MacroAssemblerSH4.cpp',
+            'assembler/MacroAssemblerSH4.h',
+            'assembler/MacroAssemblerX86_64.h',
+            'assembler/MacroAssemblerX86Common.h',
+            'assembler/MacroAssemblerX86.h',
+            'assembler/MIPSAssembler.h',
+            'assembler/RepatchBuffer.h',
+            'assembler/SH4Assembler.h',
+            'assembler/X86Assembler.h',
+            'bytecode/ArrayAllocationProfile.cpp',
+            'bytecode/ArrayAllocationProfile.h',
+            'bytecode/ArrayProfile.cpp',
+            'bytecode/ArrayProfile.h',
+            'bytecode/BytecodeConventions.h',
+            'bytecode/ByValInfo.h',
+            'bytecode/CallLinkInfo.cpp',
+            'bytecode/CallLinkInfo.h',
+            'bytecode/CallLinkStatus.cpp',
+            'bytecode/CallLinkStatus.h',
+            'bytecode/CallReturnOffsetToBytecodeOffset.h',
+            'bytecode/CodeBlock.cpp',
+            'bytecode/CodeBlock.h',
+            'bytecode/CodeBlockHash.cpp',
+            'bytecode/CodeBlockHash.h',
+            'bytecode/CodeBlockWithJITType.h',
+            'bytecode/CodeOrigin.cpp',
+            'bytecode/CodeOrigin.h',
+            'bytecode/CodeType.cpp',
+            'bytecode/CodeType.h',
+            'bytecode/Comment.h',
+            'bytecode/DataFormat.h',
+            'bytecode/DFGExitProfile.cpp',
+            'bytecode/DFGExitProfile.h',
+            'bytecode/EvalCodeCache.h',
+            'bytecode/ExecutionCounter.cpp',
+            'bytecode/ExecutionCounter.h',
+            'bytecode/ExitKind.cpp',
+            'bytecode/ExitKind.h',
+            'bytecode/ExpressionRangeInfo.h',
+            'bytecode/GetByIdStatus.cpp',
+            'bytecode/GetByIdStatus.h',
+            'bytecode/GlobalResolveInfo.h',
+            'bytecode/HandlerInfo.h',
+            'bytecode/Instruction.h',
+            'bytecode/JumpTable.cpp',
+            'bytecode/JumpTable.h',
+            'bytecode/LazyOperandValueProfile.cpp',
+            'bytecode/LazyOperandValueProfile.h',
+            'bytecode/LineInfo.h',
+            'bytecode/LLIntCallLinkInfo.h',
+            'bytecode/MethodOfGettingAValueProfile.cpp',
+            'bytecode/MethodOfGettingAValueProfile.h',
+            'bytecode/ObjectAllocationProfile.h',
+            'bytecode/Opcode.cpp',
+            'bytecode/Opcode.h',
+            'bytecode/Operands.h',
+            'bytecode/PolymorphicPutByIdList.cpp',
+            'bytecode/PolymorphicPutByIdList.h',
+            'bytecode/PutByIdStatus.cpp',
+            'bytecode/PutByIdStatus.h',
+            'bytecode/PutKind.h',
+            'bytecode/ReduceWhitespace.cpp',
+            'bytecode/ReduceWhitespace.h',
+            'bytecode/ResolveGlobalStatus.cpp',
+            'bytecode/ResolveGlobalStatus.h',
+            'bytecode/ResolveOperation.h',
+            'bytecode/SamplingTool.cpp',
+            'bytecode/SamplingTool.h',
+            'bytecode/SpecialPointer.cpp',
+            'bytecode/SpecialPointer.h',
+            'bytecode/SpeculatedType.cpp',
+            'bytecode/SpeculatedType.h',
+            'bytecode/StructureSet.h',
+            'bytecode/StructureStubClearingWatchpoint.cpp',
+            'bytecode/StructureStubClearingWatchpoint.h',
+            'bytecode/StructureStubInfo.cpp',
+            'bytecode/StructureStubInfo.h',
+            'bytecode/UnlinkedCodeBlock.cpp',
+            'bytecode/UnlinkedCodeBlock.h',
+            'bytecode/ValueProfile.h',
+            'bytecode/ValueRecovery.h',
+            'bytecode/VirtualRegister.h',
+            'bytecode/Watchpoint.cpp',
+            'bytecode/Watchpoint.h',
+            'bytecompiler/BytecodeGenerator.cpp',
+            'bytecompiler/BytecodeGenerator.h',
+            'bytecompiler/Label.h',
+            'bytecompiler/LabelScope.h',
+            'bytecompiler/NodesCodegen.cpp',
+            'bytecompiler/RegisterID.h',
+            'bytecompiler/StaticPropertyAnalysis.h',
+            'bytecompiler/StaticPropertyAnalyzer.h',
+            'config.h',
+            'debugger/DebuggerActivation.cpp',
+            'debugger/DebuggerActivation.h',
+            'debugger/DebuggerCallFrame.cpp',
+            'debugger/DebuggerCallFrame.h',
+            'debugger/Debugger.cpp',
+            'debugger/Debugger.h',
+            'dfg/DFGAbstractState.cpp',
+            'dfg/DFGAbstractState.h',
+            'dfg/DFGAbstractValue.h',
+            'dfg/DFGAdjacencyList.h',
+            'dfg/DFGAllocator.h',
+            'dfg/DFGArgumentPosition.h',
+            'dfg/DFGArgumentsSimplificationPhase.cpp',
+            'dfg/DFGArgumentsSimplificationPhase.h',
+            'dfg/DFGArrayifySlowPathGenerator.h',
+            'dfg/DFGArrayMode.cpp',
+            'dfg/DFGArrayMode.h',
+            'dfg/DFGAssemblyHelpers.cpp',
+            'dfg/DFGAssemblyHelpers.h',
+            'dfg/DFGBasicBlock.h',
+            'dfg/DFGBasicBlockInlines.h',
+            'dfg/DFGBranchDirection.h',
+            'dfg/DFGByteCodeParser.cpp',
+            'dfg/DFGByteCodeParser.h',
+            'dfg/DFGCallArrayAllocatorSlowPathGenerator.h',
+            'dfg/DFGCapabilities.cpp',
+            'dfg/DFGCapabilities.h',
+            'dfg/DFGCCallHelpers.h',
+            'dfg/DFGCFAPhase.cpp',
+            'dfg/DFGCFAPhase.h',
+            'dfg/DFGCFGSimplificationPhase.cpp',
+            'dfg/DFGCFGSimplificationPhase.h',
+            'dfg/DFGCommon.cpp',
+            'dfg/DFGCommon.h',
+            'dfg/DFGConstantFoldingPhase.cpp',
+            'dfg/DFGConstantFoldingPhase.h',
+            'dfg/DFGCSEPhase.cpp',
+            'dfg/DFGCSEPhase.h',
+            'dfg/DFGDisassembler.cpp',
+            'dfg/DFGDisassembler.h',
+            'dfg/DFGDominators.cpp',
+            'dfg/DFGDominators.h',
+            'dfg/DFGDoubleFormatState.h',
+            'dfg/DFGDriver.cpp',
+            'dfg/DFGDriver.h',
+            'dfg/DFGEdge.cpp',
+            'dfg/DFGEdge.h',
+            'dfg/DFGFixupPhase.cpp',
+            'dfg/DFGFixupPhase.h',
+            'dfg/DFGFPRInfo.h',
+            'dfg/DFGGenerationInfo.h',
+            'dfg/DFGGPRInfo.h',
+            'dfg/DFGGraph.cpp',
+            'dfg/DFGGraph.h',
+            'dfg/DFGInsertionSet.h',
+            'dfg/DFGJITCompiler.cpp',
+            'dfg/DFGJITCompiler.h',
+            'dfg/DFGLongLivedState.cpp',
+            'dfg/DFGLongLivedState.h',
+            'dfg/DFGMinifiedGraph.h',
+            'dfg/DFGMinifiedID.h',
+            'dfg/DFGMinifiedNode.cpp',
+            'dfg/DFGMinifiedNode.h',
+            'dfg/DFGNodeAllocator.h',
+            'dfg/DFGNode.cpp',
+            'dfg/DFGNodeFlags.cpp',
+            'dfg/DFGNodeFlags.h',
+            'dfg/DFGNode.h',
+            'dfg/DFGNodeType.h',
+            'dfg/DFGOperations.cpp',
+            'dfg/DFGOperations.h',
+            'dfg/DFGOSREntry.cpp',
+            'dfg/DFGOSREntry.h',
+            'dfg/DFGOSRExitCompilationInfo.h',
+            'dfg/DFGOSRExitCompiler32_64.cpp',
+            'dfg/DFGOSRExitCompiler64.cpp',
+            'dfg/DFGOSRExitCompiler.cpp',
+            'dfg/DFGOSRExitCompiler.h',
+            'dfg/DFGOSRExit.cpp',
+            'dfg/DFGOSRExit.h',
+            'dfg/DFGOSRExitJumpPlaceholder.cpp',
+            'dfg/DFGOSRExitJumpPlaceholder.h',
+            'dfg/DFGPhase.cpp',
+            'dfg/DFGPhase.h',
+            'dfg/DFGPredictionPropagationPhase.cpp',
+            'dfg/DFGPredictionPropagationPhase.h',
+            'dfg/DFGRegisterBank.h',
+            'dfg/DFGRegisterSet.h',
+            'dfg/DFGRepatch.cpp',
+            'dfg/DFGRepatch.h',
+            'dfg/DFGScoreBoard.h',
+            'dfg/DFGScratchRegisterAllocator.h',
+            'dfg/DFGSilentRegisterSavePlan.h',
+            'dfg/DFGSlowPathGenerator.h',
+            'dfg/DFGSpeculativeJIT32_64.cpp',
+            'dfg/DFGSpeculativeJIT64.cpp',
+            'dfg/DFGSpeculativeJIT.cpp',
+            'dfg/DFGSpeculativeJIT.h',
+            'dfg/DFGStructureAbstractValue.h',
+            'dfg/DFGStructureCheckHoistingPhase.cpp',
+            'dfg/DFGStructureCheckHoistingPhase.h',
+            'dfg/DFGThunks.cpp',
+            'dfg/DFGThunks.h',
+            'dfg/DFGValidate.cpp',
+            'dfg/DFGValidate.h',
+            'dfg/DFGValueRecoveryOverride.h',
+            'dfg/DFGValueSource.cpp',
+            'dfg/DFGValueSource.h',
+            'dfg/DFGVariableAccessDataDump.cpp',
+            'dfg/DFGVariableAccessDataDump.h',
+            'dfg/DFGVariableAccessData.h',
+            'dfg/DFGVariableEvent.cpp',
+            'dfg/DFGVariableEvent.h',
+            'dfg/DFGVariableEventStream.cpp',
+            'dfg/DFGVariableEventStream.h',
+            'dfg/DFGVariadicFunction.h',
+            'dfg/DFGVirtualRegisterAllocationPhase.cpp',
+            'dfg/DFGVirtualRegisterAllocationPhase.h',
+            'disassembler/Disassembler.cpp',
+            'disassembler/Disassembler.h',
+            'disassembler/UDis86Disassembler.cpp',
+            'ForwardingHeaders/JavaScriptCore/APICast.h',
+            'ForwardingHeaders/JavaScriptCore/APIShims.h',
+            'ForwardingHeaders/JavaScriptCore/JavaScriptCore.h',
+            'ForwardingHeaders/JavaScriptCore/JavaScript.h',
+            'ForwardingHeaders/JavaScriptCore/JSBase.h',
+            'ForwardingHeaders/JavaScriptCore/JSContextRef.h',
+            'ForwardingHeaders/JavaScriptCore/JSObjectRef.h',
+            'ForwardingHeaders/JavaScriptCore/JSRetainPtr.h',
+            'ForwardingHeaders/JavaScriptCore/JSStringRefCF.h',
+            'ForwardingHeaders/JavaScriptCore/JSStringRef.h',
+            'ForwardingHeaders/JavaScriptCore/JSValueRef.h',
+            'ForwardingHeaders/JavaScriptCore/OpaqueJSString.h',
+            'ForwardingHeaders/JavaScriptCore/WebKitAvailability.h',
+            'heap/BlockAllocator.cpp',
+            'heap/BlockAllocator.h',
+            'heap/ConservativeRoots.cpp',
+            'heap/ConservativeRoots.h',
+            'heap/CopiedAllocator.h',
+            'heap/CopiedBlock.h',
+            'heap/CopiedBlockInlines.h',
+            'heap/CopiedSpace.cpp',
+            'heap/CopiedSpace.h',
+            'heap/CopiedSpaceInlines.h',
+            'heap/CopyVisitor.cpp',
+            'heap/CopyVisitor.h',
+            'heap/CopyVisitorInlines.h',
+            'heap/CopyWorkList.h',
+            'heap/DFGCodeBlocks.cpp',
+            'heap/DFGCodeBlocks.h',
+            'heap/GCAssertions.h',
+            'heap/GCThread.cpp',
+            'heap/GCThread.h',
+            'heap/GCThreadSharedData.cpp',
+            'heap/GCThreadSharedData.h',
+            'heap/Handle.h',
+            'heap/HandleSet.cpp',
+            'heap/HandleSet.h',
+            'heap/HandleStack.cpp',
+            'heap/HandleStack.h',
+            'heap/HandleTypes.h',
+            'heap/HeapBlock.h',
+            'heap/Heap.cpp',
+            'heap/Heap.h',
+            'heap/HeapRootVisitor.h',
+            'heap/HeapStatistics.cpp',
+            'heap/HeapStatistics.h',
+            'heap/HeapTimer.cpp',
+            'heap/HeapTimer.h',
+            'heap/IncrementalSweeper.cpp',
+            'heap/IncrementalSweeper.h',
+            'heap/JITStubRoutineSet.cpp',
+            'heap/JITStubRoutineSet.h',
+            'heap/ListableHandler.h',
+            'heap/Local.h',
+            'heap/LocalScope.h',
+            'heap/MachineStackMarker.cpp',
+            'heap/MachineStackMarker.h',
+            'heap/MarkedAllocator.cpp',
+            'heap/MarkedAllocator.h',
+            'heap/MarkedBlock.cpp',
+            'heap/MarkedBlock.h',
+            'heap/MarkedBlockSet.h',
+            'heap/MarkedSpace.cpp',
+            'heap/MarkedSpace.h',
+            'heap/MarkStack.cpp',
+            'heap/MarkStack.h',
+            'heap/MarkStackInlines.h',
+            'heap/PassWeak.h',
+            'heap/SlotVisitor.cpp',
+            'heap/SlotVisitor.h',
+            'heap/SlotVisitorInlines.h',
+            'heap/Strong.h',
+            'heap/StrongInlines.h',
+            'heap/TinyBloomFilter.h',
+            'heap/UnconditionalFinalizer.h',
+            'heap/VTableSpectrum.cpp',
+            'heap/VTableSpectrum.h',
+            'heap/WeakBlock.cpp',
+            'heap/WeakBlock.h',
+            'heap/Weak.h',
+            'heap/WeakHandleOwner.cpp',
+            'heap/WeakHandleOwner.h',
+            'heap/WeakImpl.h',
+            'heap/WeakReferenceHarvester.h',
+            'heap/WeakSet.cpp',
+            'heap/WeakSet.h',
+            'heap/WeakSetInlines.h',
+            'heap/WriteBarrierSupport.cpp',
+            'heap/WriteBarrierSupport.h',
+            'icu/unicode/localpointer.h',
+            'icu/unicode/parseerr.h',
+            'icu/unicode/platform.h',
+            'icu/unicode/ptypes.h',
+            'icu/unicode/putil.h',
+            'icu/unicode/uchar.h',
+            'icu/unicode/ucnv_err.h',
+            'icu/unicode/ucnv.h',
+            'icu/unicode/ucol.h',
+            'icu/unicode/uconfig.h',
+            'icu/unicode/uenum.h',
+            'icu/unicode/uiter.h',
+            'icu/unicode/uloc.h',
+            'icu/unicode/umachine.h',
+            'icu/unicode/unorm2.h',
+            'icu/unicode/unorm.h',
+            'icu/unicode/urename.h',
+            'icu/unicode/uscript.h',
+            'icu/unicode/uset.h',
+            'icu/unicode/ustring.h',
+            'icu/unicode/utf16.h',
+            'icu/unicode/utf8.h',
+            'icu/unicode/utf.h',
+            'icu/unicode/utf_old.h',
+            'icu/unicode/utypes.h',
+            'icu/unicode/uvernum.h',
+            'icu/unicode/uversion.h',
+            'interpreter/AbstractPC.cpp',
+            'interpreter/AbstractPC.h',
+            'interpreter/CachedCall.h',
+            'interpreter/CallFrameClosure.h',
+            'interpreter/CallFrame.cpp',
+            'interpreter/CallFrame.h',
+            'interpreter/Interpreter.cpp',
+            'interpreter/Interpreter.h',
+            'interpreter/JSStack.cpp',
+            'interpreter/JSStack.h',
+            'interpreter/JSStackInlines.h',
+            'interpreter/Register.h',
+            'interpreter/VMInspector.cpp',
+            'interpreter/VMInspector.h',
+            'JavaScriptCorePrefix.h',
+            'jit/ClosureCallStubRoutine.cpp',
+            'jit/ClosureCallStubRoutine.h',
+            'jit/CompactJITCodeMap.h',
+            'jit/ExecutableAllocator.cpp',
+            'jit/ExecutableAllocatorFixedVMPool.cpp',
+            'jit/ExecutableAllocator.h',
+            'jit/GCAwareJITStubRoutine.cpp',
+            'jit/GCAwareJITStubRoutine.h',
+            'jit/HostCallReturnValue.cpp',
+            'jit/HostCallReturnValue.h',
+            'jit/JITArithmetic32_64.cpp',
+            'jit/JITArithmetic.cpp',
+            'jit/JITCall32_64.cpp',
+            'jit/JITCall.cpp',
+            'jit/JITCode.cpp',
+            'jit/JITCode.h',
+            'jit/JITCompilationEffort.h',
+            'jit/JIT.cpp',
+            'jit/JITDisassembler.cpp',
+            'jit/JITDisassembler.h',
+            'jit/JITDriver.h',
+            'jit/JITExceptions.cpp',
+            'jit/JITExceptions.h',
+            'jit/JIT.h',
+            'jit/JITInlines.h',
+            'jit/JITOpcodes32_64.cpp',
+            'jit/JITOpcodes.cpp',
+            'jit/JITPropertyAccess32_64.cpp',
+            'jit/JITPropertyAccess.cpp',
+            'jit/JITStubCall.h',
+            'jit/JITStubRoutine.cpp',
+            'jit/JITStubRoutine.h',
+            'jit/JITStubs.cpp',
+            'jit/JITStubs.h',
+            'jit/JITThunks.cpp',
+            'jit/JITThunks.h',
+            'jit/JITWriteBarrier.h',
+            'jit/JSInterfaceJIT.h',
+            'jit/JumpReplacementWatchpoint.cpp',
+            'jit/JumpReplacementWatchpoint.h',
+            'jit/SpecializedThunkJIT.h',
+            'jit/ThunkGenerator.h',
+            'jit/ThunkGenerators.cpp',
+            'jit/ThunkGenerators.h',
+            'jit/UnusedPointer.h',
+            'llint/LLIntCLoop.cpp',
+            'llint/LLIntCLoop.h',
+            'llint/LLIntCommon.h',
+            'llint/LLIntData.cpp',
+            'llint/LLIntData.h',
+            'llint/LLIntEntrypoints.cpp',
+            'llint/LLIntEntrypoints.h',
+            'llint/LLIntExceptions.cpp',
+            'llint/LLIntExceptions.h',
+            'llint/LLIntOfflineAsmConfig.h',
+            'llint/LLIntOffsetsExtractor.cpp',
+            'llint/LLIntOpcode.h',
+            'llint/LLIntSlowPaths.cpp',
+            'llint/LLIntSlowPaths.h',
+            'llint/LLIntThunks.cpp',
+            'llint/LLIntThunks.h',
+            'llint/LowLevelInterpreter.cpp',
+            'llint/LowLevelInterpreter.h',
+            'os-win32/inttypes.h',
+            'os-win32/stdbool.h',
+            'os-win32/stdint.h',
+            'parser/ASTBuilder.h',
+            'parser/Lexer.cpp',
+            'parser/Lexer.h',
+            'parser/NodeConstructors.h',
+            'parser/NodeInfo.h',
+            'parser/Nodes.cpp',
+            'parser/Nodes.h',
+            'parser/ParserArena.cpp',
+            'parser/ParserArena.h',
+            'parser/Parser.cpp',
+            'parser/Parser.h',
+            'parser/ParserModes.h',
+            'parser/ParserTokens.h',
+            'parser/ResultType.h',
+            'parser/SourceCode.h',
+            'parser/SourceProviderCache.cpp',
+            'parser/SourceProviderCache.h',
+            'parser/SourceProviderCacheItem.h',
+            'parser/SourceProvider.h',
+            'parser/SyntaxChecker.h',
+            'profiler/CallIdentifier.h',
+            'profiler/LegacyProfiler.cpp',
+            'profiler/LegacyProfiler.h',
+            'profiler/Profile.cpp',
+            'profiler/ProfileGenerator.cpp',
+            'profiler/ProfileGenerator.h',
+            'profiler/Profile.h',
+            'profiler/ProfileNode.cpp',
+            'profiler/ProfileNode.h',
+            'profiler/ProfilerBytecode.cpp',
+            'profiler/ProfilerBytecode.h',
+            'profiler/ProfilerBytecodes.cpp',
+            'profiler/ProfilerBytecodeSequence.cpp',
+            'profiler/ProfilerBytecodeSequence.h',
+            'profiler/ProfilerBytecodes.h',
+            'profiler/ProfilerCompilation.cpp',
+            'profiler/ProfilerCompilation.h',
+            'profiler/ProfilerCompilationKind.cpp',
+            'profiler/ProfilerCompilationKind.h',
+            'profiler/ProfilerCompiledBytecode.cpp',
+            'profiler/ProfilerCompiledBytecode.h',
+            'profiler/ProfilerDatabase.cpp',
+            'profiler/ProfilerDatabase.h',
+            'profiler/ProfilerExecutionCounter.h',
+            'profiler/ProfilerOrigin.cpp',
+            'profiler/ProfilerOrigin.h',
+            'profiler/ProfilerOriginStack.cpp',
+            'profiler/ProfilerOriginStack.h',
+            'profiler/ProfilerOSRExit.cpp',
+            'profiler/ProfilerOSRExit.h',
+            'profiler/ProfilerOSRExitSite.cpp',
+            'profiler/ProfilerOSRExitSite.h',
+            'profiler/ProfilerProfiledBytecodes.cpp',
+            'profiler/ProfilerProfiledBytecodes.h',
+            'runtime/ArgList.cpp',
+            'runtime/ArgList.h',
+            'runtime/Arguments.cpp',
+            'runtime/Arguments.h',
+            'runtime/ArrayConstructor.cpp',
+            'runtime/ArrayConstructor.h',
+            'runtime/ArrayConventions.h',
+            'runtime/ArrayPrototype.cpp',
+            'runtime/ArrayPrototype.h',
+            'runtime/ArrayStorage.h',
+            'runtime/BatchedTransitionOptimizer.h',
+            'runtime/BigInteger.h',
+            'runtime/BooleanConstructor.cpp',
+            'runtime/BooleanConstructor.h',
+            'runtime/BooleanObject.cpp',
+            'runtime/BooleanObject.h',
+            'runtime/BooleanPrototype.cpp',
+            'runtime/BooleanPrototype.h',
+            'runtime/Butterfly.h',
+            'runtime/ButterflyInlines.h',
+            'runtime/CachedTranscendentalFunction.h',
+            'runtime/CallData.cpp',
+            'runtime/CallData.h',
+            'runtime/ClassInfo.h',
+            'runtime/CodeCache.cpp',
+            'runtime/CodeCache.h',
+            'runtime/CodeSpecializationKind.cpp',
+            'runtime/CodeSpecializationKind.h',
+            'runtime/CommonIdentifiers.cpp',
+            'runtime/CommonIdentifiers.h',
+            'runtime/CommonSlowPaths.h',
+            'runtime/Completion.cpp',
+            'runtime/Completion.h',
+            'runtime/ConstructData.cpp',
+            'runtime/ConstructData.h',
+            'runtime/DateConstructor.cpp',
+            'runtime/DateConstructor.h',
+            'runtime/DateConversion.cpp',
+            'runtime/DateConversion.h',
+            'runtime/DateInstanceCache.h',
+            'runtime/DateInstance.cpp',
+            'runtime/DateInstance.h',
+            'runtime/DatePrototype.cpp',
+            'runtime/DatePrototype.h',
+            'runtime/ErrorConstructor.cpp',
+            'runtime/ErrorConstructor.h',
+            'runtime/Error.cpp',
+            'runtime/Error.h',
+            'runtime/ErrorInstance.cpp',
+            'runtime/ErrorInstance.h',
+            'runtime/ErrorPrototype.cpp',
+            'runtime/ErrorPrototype.h',
+            'runtime/ExceptionHelpers.cpp',
+            'runtime/ExceptionHelpers.h',
+            'runtime/Executable.cpp',
+            'runtime/Executable.h',
+            'runtime/ExecutionHarness.h',
+            'runtime/FunctionConstructor.cpp',
+            'runtime/FunctionConstructor.h',
+            'runtime/FunctionExecutableDump.cpp',
+            'runtime/FunctionExecutableDump.h',
+            'runtime/FunctionPrototype.cpp',
+            'runtime/FunctionPrototype.h',
+            'runtime/GCActivityCallbackBlackBerry.cpp',
+            'runtime/GCActivityCallback.cpp',
+            'runtime/GCActivityCallback.h',
+            'runtime/GetterSetter.cpp',
+            'runtime/GetterSetter.h',
+            'runtime/Identifier.cpp',
+            'runtime/Identifier.h',
+            'runtime/IndexingHeader.h',
+            'runtime/IndexingHeaderInlines.h',
+            'runtime/IndexingType.cpp',
+            'runtime/IndexingType.h',
+            'runtime/InitializeThreading.cpp',
+            'runtime/InitializeThreading.h',
+            'runtime/InternalFunction.cpp',
+            'runtime/InternalFunction.h',
+            'runtime/Intrinsic.h',
+            'runtime/JSActivation.cpp',
+            'runtime/JSActivation.h',
+            'runtime/JSAPIValueWrapper.cpp',
+            'runtime/JSAPIValueWrapper.h',
+            'runtime/JSArray.cpp',
+            'runtime/JSArray.h',
+            'runtime/JSBoundFunction.cpp',
+            'runtime/JSBoundFunction.h',
+            'runtime/JSCell.cpp',
+            'runtime/JSCell.h',
+            'runtime/JSCellInlines.h',
+            'runtime/JSChunk.cpp',
+            'runtime/JSChunk.h',
+            'runtime/JSCJSValue.cpp',
+            'runtime/JSCJSValue.h',
+            'runtime/JSCJSValueInlines.h',
+            'runtime/JSDateMath.cpp',
+            'runtime/JSDateMath.h',
+            'runtime/JSDestructibleObject.h',
+            'runtime/JSExportMacros.h',
+            'runtime/JSFunction.cpp',
+            'runtime/JSFunction.h',
+            'runtime/JSGlobalData.cpp',
+            'runtime/JSGlobalData.h',
+            'runtime/JSGlobalObject.cpp',
+            'runtime/JSGlobalObjectFunctions.cpp',
+            'runtime/JSGlobalObjectFunctions.h',
+            'runtime/JSGlobalObject.h',
+            'runtime/JSLock.cpp',
+            'runtime/JSLock.h',
+            'runtime/JSNameScope.cpp',
+            'runtime/JSNameScope.h',
+            'runtime/JSNotAnObject.cpp',
+            'runtime/JSNotAnObject.h',
+            'runtime/JSObject.cpp',
+            'runtime/JSObject.h',
+            'runtime/JSONObject.cpp',
+            'runtime/JSONObject.h',
+            'runtime/JSPropertyNameIterator.cpp',
+            'runtime/JSPropertyNameIterator.h',
+            'runtime/JSProxy.cpp',
+            'runtime/JSProxy.h',
+            'runtime/JSScope.cpp',
+            'runtime/JSScope.h',
+            'runtime/JSSegmentedVariableObject.cpp',
+            'runtime/JSSegmentedVariableObject.h',
+            'runtime/JSStaticScopeObject.cpp',
+            'runtime/JSStaticScopeObject.h',
+            'runtime/JSStringBuilder.h',
+            'runtime/JSString.cpp',
+            'runtime/JSString.h',
+            'runtime/JSStringJoiner.cpp',
+            'runtime/JSStringJoiner.h',
+            'runtime/JSSymbolTableObject.cpp',
+            'runtime/JSSymbolTableObject.h',
+            'runtime/JSType.h',
+            'runtime/JSTypeInfo.h',
+            'runtime/JSVariableObject.cpp',
+            'runtime/JSVariableObject.h',
+            'runtime/JSWithScope.cpp',
+            'runtime/JSWithScope.h',
+            'runtime/JSWrapperObject.cpp',
+            'runtime/JSWrapperObject.h',
+            'runtime/LiteralParser.cpp',
+            'runtime/LiteralParser.h',
+            'runtime/Lookup.cpp',
+            'runtime/Lookup.h',
+            'runtime/MatchResult.h',
+            'runtime/MathObject.cpp',
+            'runtime/MathObject.h',
+            'runtime/MemoryStatistics.cpp',
+            'runtime/MemoryStatistics.h',
+            'runtime/NameConstructor.cpp',
+            'runtime/NameConstructor.h',
+            'runtime/NameInstance.cpp',
+            'runtime/NameInstance.h',
+            'runtime/NamePrototype.cpp',
+            'runtime/NamePrototype.h',
+            'runtime/NativeErrorConstructor.cpp',
+            'runtime/NativeErrorConstructor.h',
+            'runtime/NativeErrorPrototype.cpp',
+            'runtime/NativeErrorPrototype.h',
+            'runtime/NumberConstructor.cpp',
+            'runtime/NumberConstructor.h',
+            'runtime/NumberObject.cpp',
+            'runtime/NumberObject.h',
+            'runtime/NumberPrototype.cpp',
+            'runtime/NumberPrototype.h',
+            'runtime/NumericStrings.h',
+            'runtime/ObjectConstructor.cpp',
+            'runtime/ObjectConstructor.h',
+            'runtime/ObjectPrototype.cpp',
+            'runtime/ObjectPrototype.h',
+            'runtime/Operations.cpp',
+            'runtime/Operations.h',
+            'runtime/Options.cpp',
+            'runtime/Options.h',
+            'runtime/PrivateName.h',
+            'runtime/PropertyDescriptor.cpp',
+            'runtime/PropertyDescriptor.h',
+            'runtime/PropertyMapHashTable.h',
+            'runtime/PropertyNameArray.cpp',
+            'runtime/PropertyNameArray.h',
+            'runtime/PropertyName.h',
+            'runtime/PropertyOffset.h',
+            'runtime/PropertySlot.cpp',
+            'runtime/PropertySlot.h',
+            'runtime/PropertyStorage.h',
+            'runtime/Protect.h',
+            'runtime/PrototypeMap.cpp',
+            'runtime/PrototypeMap.h',
+            'runtime/PutDirectIndexMode.h',
+            'runtime/PutPropertySlot.h',
+            'runtime/RegExpCache.cpp',
+            'runtime/RegExpCachedResult.cpp',
+            'runtime/RegExpCachedResult.h',
+            'runtime/RegExpCache.h',
+            'runtime/RegExpConstructor.cpp',
+            'runtime/RegExpConstructor.h',
+            'runtime/RegExp.cpp',
+            'runtime/RegExp.h',
+            'runtime/RegExpKey.h',
+            'runtime/RegExpMatchesArray.cpp',
+            'runtime/RegExpMatchesArray.h',
+            'runtime/RegExpObject.cpp',
+            'runtime/RegExpObject.h',
+            'runtime/RegExpPrototype.cpp',
+            'runtime/RegExpPrototype.h',
+            'runtime/Reject.h',
+            'runtime/SamplingCounter.cpp',
+            'runtime/SamplingCounter.h',
+            'runtime/SmallStrings.cpp',
+            'runtime/SmallStrings.h',
+            'runtime/SparseArrayValueMap.cpp',
+            'runtime/SparseArrayValueMap.h',
+            'runtime/StrictEvalActivation.cpp',
+            'runtime/StrictEvalActivation.h',
+            'runtime/StringConstructor.cpp',
+            'runtime/StringConstructor.h',
+            'runtime/StringObject.cpp',
+            'runtime/StringObject.h',
+            'runtime/StringPrototype.cpp',
+            'runtime/StringPrototype.h',
+            'runtime/StringRecursionChecker.cpp',
+            'runtime/StringRecursionChecker.h',
+            'runtime/StructureChain.cpp',
+            'runtime/StructureChain.h',
+            'runtime/Structure.cpp',
+            'runtime/Structure.h',
+            'runtime/StructureRareData.cpp',
+            'runtime/StructureRareData.h',
+            'runtime/StructureRareDataInlines.h',
+            'runtime/StructureTransitionTable.h',
+            'runtime/SymbolTable.cpp',
+            'runtime/SymbolTable.h',
+            'runtime/Terminator.h',
+            'runtime/TimeoutChecker.cpp',
+            'runtime/TimeoutChecker.h',
+            'runtime/Tracing.h',
+            'runtime/TypedArrayDescriptor.h',
+            'runtime/Uint16WithFraction.h',
+            'runtime/WeakGCMap.h',
+            'runtime/WeakRandom.h',
+            'runtime/WriteBarrier.h',
+            'tools/CodeProfile.cpp',
+            'tools/CodeProfile.h',
+            'tools/CodeProfiling.cpp',
+            'tools/CodeProfiling.h',
+            'tools/ProfileTreeNode.h',
+            'tools/TieredMMapArray.h',
+            'yarr/YarrCanonicalizeUCS2.h',
+            'yarr/Yarr.h',
+            'yarr/YarrInterpreter.h',
+            'yarr/YarrJIT.cpp',
+            'yarr/YarrJIT.h',
+            'yarr/YarrParser.h',
+            'yarr/YarrPattern.h',
+            'yarr/YarrSyntaxChecker.h',
+        ],
+        'minidom_files': [
+            'API/tests/JSNode.c',
+            'API/tests/JSNode.h',
+            'API/tests/JSNodeList.c',
+            'API/tests/JSNodeList.h',
+            'API/tests/minidom.c',
+            'API/tests/Node.c',
+            'API/tests/Node.h',
+            'API/tests/NodeList.c',
+            'API/tests/NodeList.h',
+        ],
+        'jsc_files': [
+            'jsc.cpp',
+            'JSCTypedArrayStubs.h',
+        ],
+        'llintoffsetextractor_files': [
+          'llint/LLIntOffsetsExtractor.cpp',
+        ],
+        'llintoffsetextractor_derived_sources_files': [
+            '<(PRODUCT_DIR)/DerivedSources/JavaScriptCore/LLIntDesiredOffsets.h',
+            '<(PRODUCT_DIR)/DerivedSources/JavaScriptCore/LLIntAssembly.h',
+        ],
+        'llintdesiredoffsets_h_files': [
+          'llint/LowLevelInterpreter32_64.asm',
+          'llint/LowLevelInterpreter64.asm',
+          'llint/LowLevelInterpreter.asm',
+          'offlineasm/armv7.rb',
+          'offlineasm/asm.rb',
+          'offlineasm/ast.rb',
+          'offlineasm/backends.rb',
+          'offlineasm/cloop.rb',
+          'offlineasm/config.rb',
+          'offlineasm/generate_offset_extractor.rb',
+          'offlineasm/instructions.rb',
+          'offlineasm/mips.rb',
+          'offlineasm/offsets.rb',
+          'offlineasm/opt.rb',
+          'offlineasm/parser.rb',
+          'offlineasm/registers.rb',
+          'offlineasm/risc.rb',
+          'offlineasm/self_hash.rb',
+          'offlineasm/settings.rb',
+          'offlineasm/transform.rb',
+          'offlineasm/x86.rb',
         ],
     }
 }
index 3b603d5b907af7c1fc735cf1c0be08cc2101d963..abc7815ae22efd800944b0987810196f13ed2729 100644 (file)
@@ -1,3 +1,14 @@
+2013-02-08  Martin Robinson  <mrobinson@igalia.com>
+
+        [GTK] Add an experimental gyp build
+        https://bugs.webkit.org/show_bug.cgi?id=109003
+
+        Reviewed by Gustavo Noronha Silva.
+
+        * WTF.gyp/WTF.gyp: Filter out MetaAllocator.(cpp/h) from the Chromium
+        build. It's only necessary for GTK+.
+        * WTF.gypi: Add MetaAllocator to the build for WebKitGTK+.
+
 2013-02-06  Ilya Tikhonovsky  <loislo@chromium.org>
 
         Web Inspector: Native Memory Instrumentation: reportBaseAddress needs to be called after the reportNode. So it may reuse the node index for the real address.
index 239c81fb59b6c76be8902b417d9452ec0468276a..be9b1c5cb26f7f761a6cf36586fd0dc7d2fade5d 100644 (file)
         ['exclude', '(Default|Gtk|Mac|None|Qt|Win|Wx|Efl)\\.(cpp|mm)$'],
         ['exclude', 'wtf/OSRandomSource\\.cpp$'],
         ['exclude', 'wtf/MainThread.cpp$'],
+        ['exclude', 'wtf/MetaAllocator\\.(cpp|h)$'],
       ],
       'direct_dependent_settings': {
         'include_dirs': [
index f91ddb2a149c69eeef8c49c667a3f47244b67776..c95bedb6e487e5ae0f11a8191c6ea3dd6ffa8226 100644 (file)
             'wtf/MallocZoneSupport.h',
             'wtf/MediaTime.h',
             'wtf/MediaTime.cpp',
+            'wtf/MetaAllocator.cpp',
+            'wtf/MetaAllocator.h',
             'wtf/NullPtr.cpp',
             'wtf/NumberOfCores.cpp',
             'wtf/NumberOfCores.h',
index 18ac7a8415fd8455761c80ee891cd3e1d48c59e9..1d01bb8a81f7c935d2a39d1ecff080333b677835 100644 (file)
@@ -1,3 +1,23 @@
+2013-02-08  Martin Robinson  <mrobinson@igalia.com>
+
+        [GTK] Add an experimental gyp build
+        https://bugs.webkit.org/show_bug.cgi?id=109003
+
+        Reviewed by Gustavo Noronha Silva.
+
+        Add an experimental gyp build for WebKitGTK+. Currently only libjavascriptcoregtk,
+        jsc, and minidom build (and only on platforms for that support bash). To use the
+        build simply run:
+
+        $ gyp --generator-output=build --depth=. Source/WebKit/gtk/gyp/JavaScriptCore.gyp
+
+        Then enter the build directory and run make.
+
+        * gyp/Configuration.gypi: Added.
+        * gyp/JavaScriptCore.gyp: Added.
+        * gyp/WTF.gyp: Added.
+        * gyp/generate-derived-sources.sh: Added.
+
 2013-02-07  Martin Robinson  <mrobinson@igalia.com>
 
         [GTK] Cleanup command-line defines
diff --git a/Source/WebKit/gtk/gyp/Configuration.gypi b/Source/WebKit/gtk/gyp/Configuration.gypi
new file mode 100644 (file)
index 0000000..0fda504
--- /dev/null
@@ -0,0 +1,15 @@
+# TODO: Some of these should/could generated by the configuration step.
+{
+  'variables': {
+    'Source': '../../..',
+    'library_version': '3.0',
+    'javascriptcore_soname_version': '0.13.8',
+    'default_defines': [
+      'ENABLE_GLIB_SUPPORT=1',
+      'BUILDING_CAIRO__=1',
+      'BUILDING_GTK__=1',
+      'WTF_CHANGES',
+      'WTF_USE_ICU_UNICODE=1',
+    ],
+  }
+}
diff --git a/Source/WebKit/gtk/gyp/JavaScriptCore.gyp b/Source/WebKit/gtk/gyp/JavaScriptCore.gyp
new file mode 100644 (file)
index 0000000..870346d
--- /dev/null
@@ -0,0 +1,138 @@
+{
+  'includes': [
+    'Configuration.gypi',
+    '../../../JavaScriptCore/JavaScriptCore.gypi',
+  ],
+  'variables': {
+    'javascriptcore_includes': [
+      '<(Source)/',
+      '<(Source)/JavaScriptCore',
+      '<(Source)/JavaScriptCore/API',
+      '<(Source)/JavaScriptCore/assembler',
+      '<(Source)/JavaScriptCore/bytecode',
+      '<(Source)/JavaScriptCore/bytecompiler',
+      '<(Source)/JavaScriptCore/dfg',
+      '<(Source)/JavaScriptCore/disassembler',
+      '<(Source)/JavaScriptCore/heap',
+      '<(Source)/JavaScriptCore/debugger',
+      '<(Source)/JavaScriptCore/ForwardingHeaders',
+      '<(Source)/JavaScriptCore/interpreter',
+      '<(Source)/JavaScriptCore/jit',
+      '<(Source)/JavaScriptCore/jit',
+      '<(Source)/JavaScriptCore/llint',
+      '<(Source)/JavaScriptCore/parser',
+      '<(Source)/JavaScriptCore/profiler',
+      '<(Source)/JavaScriptCore/runtime',
+      '<(Source)/JavaScriptCore/tools',
+      '<(Source)/JavaScriptCore/yarr',
+      '<(PRODUCT_DIR)/DerivedSources/JavaScriptCore',
+    ],
+  },
+  'targets': [
+    {
+      'target_name': 'LLIntOffsetExtractor',
+        'dependencies': [
+          'WTF.gyp:wtf',
+          'WTF.gyp:glib',
+          'WTF.gyp:icu'
+        ],
+        'type': 'executable',
+      'sources': [
+        '<(PRODUCT_DIR)/DerivedSources/JavaScriptCore/LLIntDesiredOffsets.h',
+        '<@(llintoffsetextractor_files)',
+      ],
+      'include_dirs': [ '<@(javascriptcore_includes)' ],
+      'defines': [ '<@(default_defines)' ],
+      'actions': [
+        {
+          'action_name': 'llint_desired_offsets',
+          'inputs': [
+            '<(Source)/JavaScriptCore/offlineasm/generate_offset_extractor.rb',
+            '<(Source)/JavaScriptCore/llint/LowLevelInterpreter.asm',
+            '<@(llintdesiredoffsets_h_files)',
+          ],
+          'outputs': [
+            '<(PRODUCT_DIR)/DerivedSources/JavaScriptCore/LLIntDesiredOffsets.h',
+          ],
+          'action': [
+            'ruby',
+            '<(Source)/JavaScriptCore/offlineasm/generate_offset_extractor.rb',
+            '<(Source)/JavaScriptCore/llint/LowLevelInterpreter.asm',
+            '<@(_outputs)',
+          ],
+        },
+      ],
+    },
+    {
+      'target_name': 'libjavascriptcoregtk',
+        'type': 'shared_library',
+        'dependencies': [
+          'WTF.gyp:wtf',
+          'LLIntOffsetExtractor'
+        ],
+        'include_dirs': [ '<@(javascriptcore_includes)' ],
+        'product_extension': 'so.<@(javascriptcore_soname_version)',
+        'product_name': 'javascriptcoregtk-<@(library_version)',
+        'sources': [
+          '<@(javascriptcore_yarr_files)',
+          '<@(javascriptcore_derived_source_files)',
+          '<@(javascriptcore_files)',
+        ],
+        'sources/': [
+          ['exclude', '(BlackBerry)\\.(cpp|mm|h)$'],
+          ['exclude', 'JSStringRefBSTR\\.(h|cpp)$'],
+          ['exclude', 'JSStringRefCF\\.(h|cpp)$'],
+        ],
+        'direct_dependent_settings': {
+          'include_dirs': [
+            '<(Source)/WTF',
+            '<(Source)/WTF/wtf',
+          ],
+        },
+        'defines': [ '<@(default_defines)' ],
+        'cflags': [ '-fPIC' ],
+      'actions': [
+        {
+          'action_name': 'Generate Derived Sources',
+          'inputs': [
+            '<(Source)/JavaScriptCore/DerivedSources.make',
+            'generate-derived-sources.sh',
+          ],
+          'outputs': [
+            '<@(javascriptcore_derived_source_files)',
+          ],
+          'action': ['sh', 'generate-derived-sources.sh', '<@(project_dir)', '<(PRODUCT_DIR)/DerivedSources/JavaScriptCore'],
+        },
+        {
+          'action_name': 'llintassembly_header_generation',
+          'inputs': [
+            '<(Source)/JavaScriptCore/offlineasm/asm.rb',
+            '<(Source)/JavaScriptCore/llint/LowLevelInterpreter.asm',
+            '<(PRODUCT_DIR)/<(EXECUTABLE_PREFIX)LLIntOffsetExtractor<(EXECUTABLE_SUFFIX)',
+          ],
+          'outputs': [
+            '<(PRODUCT_DIR)/DerivedSources/JavaScriptCore/LLIntAssembly.h',
+          ],
+          'action': ['ruby', '<@(_inputs)', '<@(_outputs)'],
+        },
+      ],
+    },
+    {
+      'target_name': 'jsc',
+        'dependencies': [ 'libjavascriptcoregtk' ],
+        'type': 'executable',
+        'sources': [ '<@(jsc_files)' ],
+        'include_dirs': [ '<@(javascriptcore_includes)' ],
+        'defines': [ '<@(default_defines)' ],
+    },
+    {
+      'target_name': 'minidom',
+        'dependencies': [ 'libjavascriptcoregtk' ],
+        'type': 'executable',
+        'sources': [ '<@(minidom_files)' ],
+        'include_dirs': [ '<@(javascriptcore_includes)' ],
+        'defines': [ '<@(default_defines)' ],
+    },
+  ]
+}
+
diff --git a/Source/WebKit/gtk/gyp/WTF.gyp b/Source/WebKit/gtk/gyp/WTF.gyp
new file mode 100644 (file)
index 0000000..28fe28f
--- /dev/null
@@ -0,0 +1,67 @@
+{
+  'includes': [
+    'Configuration.gypi',
+    '../../../WTF/WTF.gypi',
+  ],
+  'targets': [
+    {
+      'target_name': 'glib',
+      'type': 'none',
+      'variables': {
+        'glib_packages': 'gmodule-2.0 gobject-2.0 gthread-2.0 gio-2.0',
+      },
+      'direct_dependent_settings': {
+         'cflags': [ '<!@(pkg-config --cflags <(glib_packages))', ],
+         'link_settings': {
+           'ldflags': [ '<!@(pkg-config --libs-only-L --libs-only-other <(glib_packages))', ],
+           'libraries': [ '<!@(pkg-config --libs-only-l <(glib_packages))', ],
+         },
+       },
+    },
+    {
+      'target_name': 'icu',
+      'type': 'none',
+      'direct_dependent_settings': {
+        'cflags': [ '<!@(icu-config --cppflags)', ],
+        'link_settings': {
+          'ldflags': [ '<!@(icu-config --ldflags-libsonly)', ],
+        },
+       },
+    },
+    {
+      'target_name': 'wtf',
+      'type': 'static_library',
+      'dependencies': [ 'glib', 'icu' ],
+      'include_dirs': [
+        '<(Source)/WTF',
+        '<(Source)/WTF/wtf',
+        '<(Source)/WTF/wtf/unicode',
+      ],
+      'sources': [
+        '<@(wtf_privateheader_files)',
+        '<@(wtf_files)',
+      ],
+      'sources/': [
+        ['exclude', 'wtf/efl'],
+        ['exclude', 'wtf/chromium'],
+        ['exclude', 'wtf/mac'],
+        ['exclude', 'wtf/qt'],
+        ['exclude', 'wtf/url'],
+        ['exclude', 'wtf/wince'],
+        ['exclude', 'wtf/wx'],
+        ['exclude', 'wtf/unicode/qt4'],
+        ['exclude', 'wtf/unicode/wchar'],
+        ['exclude', '(Default|Wchar|Mac|None|Qt|Win|Wx|Efl)\\.(cpp|mm)$'],
+      ],
+      'direct_dependent_settings': {
+        'include_dirs': [
+          '<(Source)/WTF',
+          '<(Source)/WTF/wtf',
+        ],
+        'ldflags': [ '-pthread' ],
+      },
+      'cflags': [ '-fPIC' ],
+      'defines': [ '<@(default_defines)' ],
+    },
+  ]
+}
diff --git a/Source/WebKit/gtk/gyp/generate-derived-sources.sh b/Source/WebKit/gtk/gyp/generate-derived-sources.sh
new file mode 100644 (file)
index 0000000..da44523
--- /dev/null
@@ -0,0 +1,15 @@
+#!/bin/sh
+
+abspath () {
+    case "$1" in /*)
+        printf "%s\n" "$1";;
+    *)
+        printf "%s\n" "$PWD/$1";;
+    esac;
+}
+
+JavaScriptCore=`abspath $1`
+cd $2
+echo `abspath $2`
+make --no-builtin-rules -f "$JavaScriptCore/DerivedSources.make" JavaScriptCore=$JavaScriptCore
+