Make WTF public headers use fully-qualified include paths and remove ForwardingHeaders/wtf
https://bugs.webkit.org/show_bug.cgi?id=80363
Reviewed by Mark Rowe.
Source/JavaScriptCore:
Historically WTF has been part of JavaScriptCore, and on Mac and Windows
its headers have appeared as part of the "private" headers exported by
JavaScriptCore. All of the WTF headers there are "flattened" into a single
private headers directory, and WebCore, WebKit and WebKit2 have used "ForwardingHeaders"
to re-map fully-qualified <wtf/text/Foo.h> includes to simple <JavaScriptCore/Foo.h> includes.
However, very soon, we are moving the WTF source code out of JavaScriptCore into its
own directory and project. As part of such, the WTF headers will no longer be part of
the JavaScriptCore private interfaces.
In preparation for that, this change makes both the Mac and Win builds export
WTF headers in a non-flattened manner. On Mac, that means into usr/local/include/wtf
(and subdirectories), on Windows for now that means JavaScriptCore/wtf (and subdirectories).
There are 5 parts to this change.
1. Updates the JavaScriptCore XCode and VCProj files to actually install these headers
(and header directories) into the appropriate places in the build directory.
2. Updates JavaScriptCore.xcodeproj to look for these WTF headers in this install location
(WebCore, WebKit, etc. had already been taught to look in previous patches).
3. Fixes all JavaScriptCore source files, and WTF headers to include WTF headers
using fully qualified paths.
4. Stops the Mac and Win builds from installing these WTF headers in their old "flattened" location.
5. Removes WebCore and WebKit ForwardingHeaders/wtf directories now that the flattened headers no longer exist.
Unfortunately we see no way to do this change in smaller parts, since all of these steps are interdependant.
It is possible there are internal Apple projects which depend on JavaScriptCore/Foo.h working for WTF
headers, those will have to be updated to use <wtf/Foo.h> after this change.
I've discussed this proposed change at length with Mark Rowe, and my understanding is they
are ready for (and interested in) this change happening.
* API/tests/JSNode.c:
* API/tests/JSNodeList.c:
* Configurations/Base.xcconfig:
* JavaScriptCore.vcproj/JavaScriptCore/copy-files.cmd:
* JavaScriptCore.xcodeproj/project.pbxproj:
* assembler/MacroAssemblerCodeRef.h:
* bytecompiler/BytecodeGenerator.h:
* dfg/DFGOperations.cpp:
* heap/GCAssertions.h:
* heap/HandleHeap.h:
* heap/HandleStack.h:
* heap/MarkedSpace.h:
* heap/PassWeak.h:
* heap/Strong.h:
* heap/Weak.h:
* jit/HostCallReturnValue.cpp:
* jit/JIT.cpp:
* jit/JITStubs.cpp:
* jit/ThunkGenerators.cpp:
* parser/Lexer.cpp:
* runtime/Completion.cpp:
* runtime/Executable.cpp:
* runtime/Identifier.h:
* runtime/InitializeThreading.cpp:
* runtime/JSDateMath.cpp:
* runtime/JSGlobalObjectFunctions.cpp:
* runtime/JSStringBuilder.h:
* runtime/JSVariableObject.h:
* runtime/NumberPrototype.cpp:
* runtime/WriteBarrier.h:
* tools/CodeProfile.cpp:
* tools/TieredMMapArray.h:
* wtf/AVLTree.h:
* wtf/Alignment.h:
* wtf/AlwaysInline.h:
* wtf/ArrayBufferView.h:
* wtf/Assertions.h:
* wtf/Atomics.h:
* wtf/Bitmap.h:
* wtf/BoundsCheckedPointer.h:
* wtf/CheckedArithmetic.h:
* wtf/Deque.h:
* wtf/ExportMacros.h:
* wtf/FastAllocBase.h:
* wtf/FastMalloc.h:
* wtf/Float32Array.h:
* wtf/Float64Array.h:
* wtf/Functional.h:
* wtf/HashCountedSet.h:
* wtf/HashFunctions.h:
* wtf/HashMap.h:
* wtf/HashSet.h:
* wtf/HashTable.h:
* wtf/HashTraits.h:
* wtf/Int16Array.h:
* wtf/Int32Array.h:
* wtf/Int8Array.h:
* wtf/IntegralTypedArrayBase.h:
* wtf/ListHashSet.h:
* wtf/MainThread.h:
* wtf/MetaAllocator.h:
* wtf/Noncopyable.h:
* wtf/OwnArrayPtr.h:
* wtf/OwnPtr.h:
* wtf/PackedIntVector.h:
* wtf/ParallelJobs.h:
* wtf/PassOwnArrayPtr.h:
* wtf/PassOwnPtr.h:
* wtf/PassRefPtr.h:
* wtf/PassTraits.h:
* wtf/Platform.h:
* wtf/PossiblyNull.h:
* wtf/RefCounted.h:
* wtf/RefCountedLeakCounter.h:
* wtf/RefPtr.h:
* wtf/RetainPtr.h:
* wtf/SimpleStats.h:
* wtf/Spectrum.h:
* wtf/StdLibExtras.h:
* wtf/TCPageMap.h:
* wtf/TemporaryChange.h:
* wtf/ThreadSafeRefCounted.h:
* wtf/Threading.h:
* wtf/ThreadingPrimitives.h:
* wtf/TypeTraits.h:
* wtf/TypedArrayBase.h:
* wtf/Uint16Array.h:
* wtf/Uint32Array.h:
* wtf/Uint8Array.h:
* wtf/Uint8ClampedArray.h:
* wtf/UnusedParam.h:
* wtf/Vector.h:
* wtf/VectorTraits.h:
* wtf/dtoa/double-conversion.h:
* wtf/dtoa/utils.h:
* wtf/gobject/GRefPtr.h:
* wtf/gobject/GlibUtilities.h:
* wtf/text/AtomicString.h:
* wtf/text/AtomicStringImpl.h:
* wtf/text/CString.h:
* wtf/text/StringConcatenate.h:
* wtf/text/StringHash.h:
* wtf/text/WTFString.h:
* wtf/unicode/CharacterNames.h:
* wtf/unicode/UTF8.h:
* wtf/unicode/glib/UnicodeGLib.h:
* wtf/unicode/qt4/UnicodeQt4.h:
* wtf/unicode/wince/UnicodeWinCE.h:
* wtf/url/api/ParsedURL.h:
* wtf/url/api/URLString.h:
* wtf/wince/FastMallocWinCE.h:
* yarr/YarrJIT.cpp:
Source/WebCore:
ForwardingHeaders/wtf is no longer needed (or functional) now that
JavaScriptCore no longer includes the WTF headers as private headers.
* DerivedSources.make:
* ForwardingHeaders/wtf/ASCIICType.h: Removed.
* ForwardingHeaders/wtf/AVLTree.h: Removed.
* ForwardingHeaders/wtf/Alignment.h: Removed.
* ForwardingHeaders/wtf/AlwaysInline.h: Removed.
* ForwardingHeaders/wtf/ArrayBuffer.h: Removed.
* ForwardingHeaders/wtf/ArrayBufferView.h: Removed.
* ForwardingHeaders/wtf/Assertions.h: Removed.
* ForwardingHeaders/wtf/Atomics.h: Removed.
* ForwardingHeaders/wtf/Bitmap.h: Removed.
* ForwardingHeaders/wtf/BloomFilter.h: Removed.
* ForwardingHeaders/wtf/BumpPointerAllocator.h: Removed.
* ForwardingHeaders/wtf/ByteArray.h: Removed.
* ForwardingHeaders/wtf/CheckedArithmetic.h: Removed.
* ForwardingHeaders/wtf/CheckedBoolean.h: Removed.
* ForwardingHeaders/wtf/Compiler.h: Removed.
* ForwardingHeaders/wtf/Complex.h: Removed.
* ForwardingHeaders/wtf/CryptographicallyRandomNumber.h: Removed.
* ForwardingHeaders/wtf/CurrentTime.h: Removed.
* ForwardingHeaders/wtf/DataLog.h: Removed.
* ForwardingHeaders/wtf/DateInstanceCache.h: Removed.
* ForwardingHeaders/wtf/DateMath.h: Removed.
* ForwardingHeaders/wtf/DecimalNumber.h: Removed.
* ForwardingHeaders/wtf/Decoder.h: Removed.
* ForwardingHeaders/wtf/Deque.h: Removed.
* ForwardingHeaders/wtf/DisallowCType.h: Removed.
* ForwardingHeaders/wtf/DoublyLinkedList.h: Removed.
* ForwardingHeaders/wtf/DynamicAnnotations.h: Removed.
* ForwardingHeaders/wtf/Encoder.h: Removed.
* ForwardingHeaders/wtf/ExportMacros.h: Removed.
* ForwardingHeaders/wtf/FastAllocBase.h: Removed.
* ForwardingHeaders/wtf/FastMalloc.h: Removed.
* ForwardingHeaders/wtf/FixedArray.h: Removed.
* ForwardingHeaders/wtf/Float32Array.h: Removed.
* ForwardingHeaders/wtf/Float64Array.h: Removed.
* ForwardingHeaders/wtf/Forward.h: Removed.
* ForwardingHeaders/wtf/Functional.h: Removed.
* ForwardingHeaders/wtf/GetPtr.h: Removed.
* ForwardingHeaders/wtf/HashCountedSet.h: Removed.
* ForwardingHeaders/wtf/HashFunctions.h: Removed.
* ForwardingHeaders/wtf/HashMap.h: Removed.
* ForwardingHeaders/wtf/HashSet.h: Removed.
* ForwardingHeaders/wtf/HashTable.h: Removed.
* ForwardingHeaders/wtf/HashTraits.h: Removed.
* ForwardingHeaders/wtf/HexNumber.h: Removed.
* ForwardingHeaders/wtf/Int16Array.h: Removed.
* ForwardingHeaders/wtf/Int32Array.h: Removed.
* ForwardingHeaders/wtf/Int8Array.h: Removed.
* ForwardingHeaders/wtf/ListHashSet.h: Removed.
* ForwardingHeaders/wtf/ListRefPtr.h: Removed.
* ForwardingHeaders/wtf/Locker.h: Removed.
* ForwardingHeaders/wtf/MD5.h: Removed.
* ForwardingHeaders/wtf/MainThread.h: Removed.
* ForwardingHeaders/wtf/MathExtras.h: Removed.
* ForwardingHeaders/wtf/MessageQueue.h: Removed.
* ForwardingHeaders/wtf/MetaAllocator.h: Removed.
* ForwardingHeaders/wtf/MetaAllocatorHandle.h: Removed.
* ForwardingHeaders/wtf/NonCopyingSort.h: Removed.
* ForwardingHeaders/wtf/Noncopyable.h: Removed.
* ForwardingHeaders/wtf/NotFound.h: Removed.
* ForwardingHeaders/wtf/OSAllocator.h: Removed.
* ForwardingHeaders/wtf/OwnArrayPtr.h: Removed.
* ForwardingHeaders/wtf/OwnPtr.h: Removed.
* ForwardingHeaders/wtf/OwnPtrCommon.h: Removed.
* ForwardingHeaders/wtf/PageAllocation.h: Removed.
* ForwardingHeaders/wtf/PageAllocationAligned.h: Removed.
* ForwardingHeaders/wtf/PageBlock.h: Removed.
* ForwardingHeaders/wtf/PageReservation.h: Removed.
* ForwardingHeaders/wtf/ParallelJobs.h: Removed.
* ForwardingHeaders/wtf/PassOwnArrayPtr.h: Removed.
* ForwardingHeaders/wtf/PassOwnPtr.h: Removed.
* ForwardingHeaders/wtf/PassRefPtr.h: Removed.
* ForwardingHeaders/wtf/Platform.h: Removed.
* ForwardingHeaders/wtf/PossiblyNull.h: Removed.
* ForwardingHeaders/wtf/RandomNumber.h: Removed.
* ForwardingHeaders/wtf/RedBlackTree.h: Removed.
* ForwardingHeaders/wtf/RefCounted.h: Removed.
* ForwardingHeaders/wtf/RefCountedLeakCounter.h: Removed.
* ForwardingHeaders/wtf/RefPtr.h: Removed.
* ForwardingHeaders/wtf/RetainPtr.h: Removed.
* ForwardingHeaders/wtf/SHA1.h: Removed.
* ForwardingHeaders/wtf/SegmentedVector.h: Removed.
* ForwardingHeaders/wtf/SimpleStats.h: Removed.
* ForwardingHeaders/wtf/Spectrum.h: Removed.
* ForwardingHeaders/wtf/StackBounds.h: Removed.
* ForwardingHeaders/wtf/StaticConstructors.h: Removed.
* ForwardingHeaders/wtf/StdLibExtras.h: Removed.
* ForwardingHeaders/wtf/StringExtras.h: Removed.
* ForwardingHeaders/wtf/StringHasher.h: Removed.
* ForwardingHeaders/wtf/TemporaryChange.h: Removed.
* ForwardingHeaders/wtf/ThreadRestrictionVerifier.h: Removed.
* ForwardingHeaders/wtf/ThreadSafeRefCounted.h: Removed.
* ForwardingHeaders/wtf/ThreadSpecific.h: Removed.
* ForwardingHeaders/wtf/Threading.h: Removed.
* ForwardingHeaders/wtf/ThreadingPrimitives.h: Removed.
* ForwardingHeaders/wtf/TypeTraits.h: Removed.
* ForwardingHeaders/wtf/Uint16Array.h: Removed.
* ForwardingHeaders/wtf/Uint32Array.h: Removed.
* ForwardingHeaders/wtf/Uint8Array.h: Removed.
* ForwardingHeaders/wtf/Uint8ClampedArray.h: Removed.
* ForwardingHeaders/wtf/UnusedParam.h: Removed.
* ForwardingHeaders/wtf/VMTags.h: Removed.
* ForwardingHeaders/wtf/ValueCheck.h: Removed.
* ForwardingHeaders/wtf/Vector.h: Removed.
* ForwardingHeaders/wtf/VectorTraits.h: Removed.
* ForwardingHeaders/wtf/WTFThreadData.h: Removed.
* ForwardingHeaders/wtf/dtoa.h: Removed.
* ForwardingHeaders/wtf/dtoa/double-conversion.h: Removed.
* ForwardingHeaders/wtf/text/ASCIIFastPath.h: Removed.
* ForwardingHeaders/wtf/text/AtomicString.h: Removed.
* ForwardingHeaders/wtf/text/AtomicStringHash.h: Removed.
* ForwardingHeaders/wtf/text/AtomicStringImpl.h: Removed.
* ForwardingHeaders/wtf/text/CString.h: Removed.
* ForwardingHeaders/wtf/text/StringBuffer.h: Removed.
* ForwardingHeaders/wtf/text/StringBuilder.h: Removed.
* ForwardingHeaders/wtf/text/StringConcatenate.h: Removed.
* ForwardingHeaders/wtf/text/StringHash.h: Removed.
* ForwardingHeaders/wtf/text/StringImpl.h: Removed.
* ForwardingHeaders/wtf/text/TextPosition.h: Removed.
* ForwardingHeaders/wtf/text/WTFString.h: Removed.
* ForwardingHeaders/wtf/unicode/CharacterNames.h: Removed.
* ForwardingHeaders/wtf/unicode/Collator.h: Removed.
* ForwardingHeaders/wtf/unicode/UTF8.h: Removed.
* ForwardingHeaders/wtf/unicode/Unicode.h: Removed.
* ForwardingHeaders/wtf/unicode/icu/UnicodeIcu.h: Removed.
* ForwardingHeaders/wtf/unicode/wince/UnicodeWince.h: Removed.
* ForwardingHeaders/wtf/url/ParsedURL.h: Removed.
Source/WebKit/mac:
ForwardingHeaders/wtf is no longer necessary (or functional) now that JavaScriptCore
no longer includes the WTF headers as private headers.
* ForwardingHeaders/wtf/ASCIICType.h: Removed.
* ForwardingHeaders/wtf/AlwaysInline.h: Removed.
* ForwardingHeaders/wtf/Assertions.h: Removed.
* ForwardingHeaders/wtf/Deque.h: Removed.
* ForwardingHeaders/wtf/DisallowCType.h: Removed.
* ForwardingHeaders/wtf/FastMalloc.h: Removed.
* ForwardingHeaders/wtf/Forward.h: Removed.
* ForwardingHeaders/wtf/GetPtr.h: Removed.
* ForwardingHeaders/wtf/HashCountedSet.h: Removed.
* ForwardingHeaders/wtf/HashMap.h: Removed.
* ForwardingHeaders/wtf/HashSet.h: Removed.
* ForwardingHeaders/wtf/HashTraits.h: Removed.
* ForwardingHeaders/wtf/ListHashSet.h: Removed.
* ForwardingHeaders/wtf/ListRefPtr.h: Removed.
* ForwardingHeaders/wtf/Locker.h: Removed.
* ForwardingHeaders/wtf/MathExtras.h: Removed.
* ForwardingHeaders/wtf/Noncopyable.h: Removed.
* ForwardingHeaders/wtf/OwnArrayPtr.h: Removed.
* ForwardingHeaders/wtf/OwnPtr.h: Removed.
* ForwardingHeaders/wtf/OwnPtrCommon.h: Removed.
* ForwardingHeaders/wtf/PassOwnPtr.h: Removed.
* ForwardingHeaders/wtf/PassRefPtr.h: Removed.
* ForwardingHeaders/wtf/Platform.h: Removed.
* ForwardingHeaders/wtf/RefCounted.h: Removed.
* ForwardingHeaders/wtf/RefCountedLeakCounter.h: Removed.
* ForwardingHeaders/wtf/RefPtr.h: Removed.
* ForwardingHeaders/wtf/RetainPtr.h: Removed.
* ForwardingHeaders/wtf/StdLibExtras.h: Removed.
* ForwardingHeaders/wtf/TemporaryChange.h: Removed.
* ForwardingHeaders/wtf/Threading.h: Removed.
* ForwardingHeaders/wtf/UnusedParam.h: Removed.
* ForwardingHeaders/wtf/VMTags.h: Removed.
* ForwardingHeaders/wtf/ValueCheck.h: Removed.
* ForwardingHeaders/wtf/Vector.h: Removed.
* ForwardingHeaders/wtf/VectorTraits.h: Removed.
* ForwardingHeaders/wtf/unicode/Unicode.h: Removed.
* ForwardingHeaders/wtf/unicode/icu/UnicodeIcu.h: Removed.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@110033 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/Source/JavaScriptCore/runtime/JSDateMath.cpp b/Source/JavaScriptCore/runtime/JSDateMath.cpp
index 8630733..882f86f 100644
--- a/Source/JavaScriptCore/runtime/JSDateMath.cpp
+++ b/Source/JavaScriptCore/runtime/JSDateMath.cpp
@@ -72,8 +72,6 @@
#include "config.h"
#include "JSDateMath.h"
-#include "Assertions.h"
-#include "ASCIICType.h"
#include "CurrentTime.h"
#include "JSObject.h"
#include "MathExtras.h"
@@ -86,6 +84,8 @@
#include <limits>
#include <stdint.h>
#include <time.h>
+#include <wtf/ASCIICType.h>
+#include <wtf/Assertions.h>
#include <wtf/text/StringBuilder.h>
#if HAVE(ERRNO_H)