Title: [183738] trunk/Source/_javascript_Core
- Revision
- 183738
- Author
- [email protected]
- Date
- 2015-05-04 01:22:19 -0700 (Mon, 04 May 2015)
Log Message
[cmake] Fix generate-js-builtins related incremental build issue
https://bugs.webkit.org/show_bug.cgi?id=144094
Reviewed by Michael Saboff.
* CMakeLists.txt: Generated JSCBuiltins.<cpp|h> should depend on Source/_javascript_Core/builtins directory.
Pass input directory to generate-js-builtins instead of Source/_javascript_Core/builtins/*.js.
* DerivedSources.make:
Pass input directory to generate-js-builtins instead of Source/_javascript_Core/builtins/*.js.
* generate-js-builtins: Accept input files and input directory too.
Modified Paths
Diff
Modified: trunk/Source/_javascript_Core/CMakeLists.txt (183737 => 183738)
--- trunk/Source/_javascript_Core/CMakeLists.txt 2015-05-04 07:52:00 UTC (rev 183737)
+++ trunk/Source/_javascript_Core/CMakeLists.txt 2015-05-04 08:22:19 UTC (rev 183738)
@@ -1104,12 +1104,11 @@
VERBATIM)
# JSCBuiltins
-file(GLOB JSCBuiltins_js_files "${CMAKE_CURRENT_SOURCE_DIR}/builtins/*.js")
add_custom_command(
OUTPUT ${DERIVED_SOURCES_JAVASCRIPTCORE_DIR}/JSCBuiltins.cpp ${DERIVED_SOURCES_JAVASCRIPTCORE_DIR}/JSCBuiltins.h
MAIN_DEPENDENCY ${CMAKE_CURRENT_SOURCE_DIR}/generate-js-builtins
- DEPENDS ${JSCBuiltins_js_files}
- COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/generate-js-builtins ${JSCBuiltins_js_files} ${DERIVED_SOURCES_JAVASCRIPTCORE_DIR}/JSCBuiltins.h ${DERIVED_SOURCES_JAVASCRIPTCORE_DIR}/JSCBuiltins.cpp
+ DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/builtins
+ COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/generate-js-builtins --input-directory ${CMAKE_CURRENT_SOURCE_DIR}/builtins --output ${DERIVED_SOURCES_JAVASCRIPTCORE_DIR}/JSCBuiltins.cpp
VERBATIM)
list(APPEND _javascript_Core_SOURCES
Modified: trunk/Source/_javascript_Core/ChangeLog (183737 => 183738)
--- trunk/Source/_javascript_Core/ChangeLog 2015-05-04 07:52:00 UTC (rev 183737)
+++ trunk/Source/_javascript_Core/ChangeLog 2015-05-04 08:22:19 UTC (rev 183738)
@@ -1,3 +1,16 @@
+2015-05-04 Csaba Osztrogonác <[email protected]>
+
+ [cmake] Fix generate-js-builtins related incremental build issue
+ https://bugs.webkit.org/show_bug.cgi?id=144094
+
+ Reviewed by Michael Saboff.
+
+ * CMakeLists.txt: Generated JSCBuiltins.<cpp|h> should depend on Source/_javascript_Core/builtins directory.
+ Pass input directory to generate-js-builtins instead of Source/_javascript_Core/builtins/*.js.
+ * DerivedSources.make:
+ Pass input directory to generate-js-builtins instead of Source/_javascript_Core/builtins/*.js.
+ * generate-js-builtins: Accept input files and input directory too.
+
2015-05-03 Simon Fraser <[email protected]>
Make some static data const
Modified: trunk/Source/_javascript_Core/DerivedSources.make (183737 => 183738)
--- trunk/Source/_javascript_Core/DerivedSources.make 2015-05-04 07:52:00 UTC (rev 183737)
+++ trunk/Source/_javascript_Core/DerivedSources.make 2015-05-04 08:22:19 UTC (rev 183738)
@@ -80,8 +80,8 @@
# --------
JSCBuiltins: $(_javascript_Core)/generate-js-builtins JSCBuiltins.h JSCBuiltins.cpp
-JSCBuiltins.h: $(_javascript_Core)/generate-js-builtins $(_javascript_Core)/builtins/*.js
- $(PYTHON) $^ $@
+JSCBuiltins.h: $(_javascript_Core)/generate-js-builtins $(_javascript_Core)/builtins
+ $(PYTHON) $(_javascript_Core)/generate-js-builtins --input-directory $(_javascript_Core)/builtins --output $@
JSCBuiltins.cpp: JSCBuiltins.h
Modified: trunk/Source/_javascript_Core/generate-js-builtins (183737 => 183738)
--- trunk/Source/_javascript_Core/generate-js-builtins 2015-05-04 07:52:00 UTC (rev 183737)
+++ trunk/Source/_javascript_Core/generate-js-builtins 2015-05-04 08:22:19 UTC (rev 183738)
@@ -22,6 +22,7 @@
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+import argparse
import filecmp
import fnmatch
import os
@@ -31,6 +32,12 @@
import datetime
import json
+parser = argparse.ArgumentParser()
+parser.add_argument('input_file', nargs='*', help='Input JS files which builtins generated from')
+parser.add_argument('--input-directory', help='All JS files will be used as input from this directory.')
+parser.add_argument('--output', help='path to output cpp or h file')
+args = parser.parse_args()
+
copyrightText = """ *
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
@@ -151,13 +158,14 @@
return mangledName
builtins = []
+copyrights = []
+(output_base, _) = os.path.splitext(args.output)
-baseName = sys.argv[-1]
-builtin_definitions = sys.argv[1:-1]
-(output_base, _) = os.path.splitext(sys.argv[-1])
+if args.input_directory:
+ for file in os.listdir(args.input_directory):
+ args.input_file.append(os.path.join(args.input_directory, file))
-copyrights = []
-for file in builtin_definitions:
+for file in args.input_file:
if fnmatch.fnmatch(file, '*.js'):
(baseName, functions, objectCopyrights) = generateCode(file)
copyrights.extend(objectCopyrights)
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes