REGRESSION(r238016)[GTK][TestWebKitAPI][Ninja] TestJSC can't compile "Bytecodes.h...
authorHironori.Fujii@sony.com <Hironori.Fujii@sony.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Mon, 19 Nov 2018 16:26:42 +0000 (16:26 +0000)
committerHironori.Fujii@sony.com <Hironori.Fujii@sony.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Mon, 19 Nov 2018 16:26:42 +0000 (16:26 +0000)
https://bugs.webkit.org/show_bug.cgi?id=191692

Reviewed by Michael Catanzaro.

r238016 added a new #include, and requires JSC's derived headers
to be copied into the forwarding header directory.

WEBKIT_MAKE_FORWARDING_HEADERS is using POST_BUILD event to copy
derived headers to the forwarding header directory. This is done
after linking JSC library.

GTK port has TestJSC which has a dependency to JSC static library.
And, this dependency is a link time dependency which means
compiling source files of TestJSC starts before the POST_BUILD
event of JSC. Thus, required header can't be found.

Add an intermediate target between TestJSC and JavaScriptCore to
ensure derived headers are copied into the forwarding header
directory.

* TestWebKitAPI/PlatformGTK.cmake: Added a new custom target pre-TestJSC.
* TestWebKitAPI/PlatformWPE.cmake: Ditto.

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

Tools/ChangeLog
Tools/TestWebKitAPI/PlatformGTK.cmake
Tools/TestWebKitAPI/PlatformWPE.cmake

index f0ad105..4e51d24 100644 (file)
@@ -1,3 +1,29 @@
+2018-11-19  Fujii Hironori  <Hironori.Fujii@sony.com>
+
+        REGRESSION(r238016)[GTK][TestWebKitAPI][Ninja] TestJSC can't compile "Bytecodes.h: No such file or directory"
+        https://bugs.webkit.org/show_bug.cgi?id=191692
+
+        Reviewed by Michael Catanzaro.
+
+        r238016 added a new #include, and requires JSC's derived headers
+        to be copied into the forwarding header directory.
+
+        WEBKIT_MAKE_FORWARDING_HEADERS is using POST_BUILD event to copy
+        derived headers to the forwarding header directory. This is done
+        after linking JSC library.
+
+        GTK port has TestJSC which has a dependency to JSC static library.
+        And, this dependency is a link time dependency which means
+        compiling source files of TestJSC starts before the POST_BUILD
+        event of JSC. Thus, required header can't be found.
+
+        Add an intermediate target between TestJSC and JavaScriptCore to
+        ensure derived headers are copied into the forwarding header
+        directory.
+
+        * TestWebKitAPI/PlatformGTK.cmake: Added a new custom target pre-TestJSC.
+        * TestWebKitAPI/PlatformWPE.cmake: Ditto.
+
 2018-11-19  Alejandro G. Castro  <alex@igalia.com>
 
         [GTK][WPE] Solve some issues in the enumerateDevices code
index 64ca400..ce94178 100644 (file)
@@ -131,6 +131,10 @@ add_test(TestJSC ${TESTWEBKITAPI_RUNTIME_OUTPUT_DIRECTORY}/JavaScriptCore/TestJS
 set_tests_properties(TestJSC PROPERTIES TIMEOUT 60)
 set_target_properties(TestJSC PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${TESTWEBKITAPI_RUNTIME_OUTPUT_DIRECTORY}/JavaScriptCore)
 
+# Add an intermediate target between TestJSC and JavaScriptCore to ensure derived headers are copied into the forwarding header directory.
+add_custom_target(pre-TestJSC DEPENDS JavaScriptCore)
+add_dependencies(TestJSC pre-TestJSC)
+
 if (COMPILER_IS_GCC_OR_CLANG)
     WEBKIT_ADD_TARGET_CXX_FLAGS(TestWebKit -Wno-sign-compare
                                            -Wno-undef
index 5fbfb40..d405f66 100644 (file)
@@ -114,6 +114,10 @@ add_dependencies(TestJSC ${TestWebKitAPI_DEPENDENCIES})
 set_tests_properties(TestJSC PROPERTIES TIMEOUT 60)
 set_target_properties(TestJSC PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${TESTWEBKITAPI_RUNTIME_OUTPUT_DIRECTORY}/JavaScriptCore)
 
+# Add an intermediate target between TestJSC and JavaScriptCore to ensure derived headers are copied into the forwarding header directory.
+add_custom_target(pre-TestJSC DEPENDS JavaScriptCore)
+add_dependencies(TestJSC pre-TestJSC)
+
 if (COMPILER_IS_GCC_OR_CLANG)
     WEBKIT_ADD_TARGET_CXX_FLAGS(TestWebCore -Wno-sign-compare
                                             -Wno-undef