diff options
author | Konstantin Käfer <mail@kkaefer.com> | 2016-08-15 14:36:16 +0200 |
---|---|---|
committer | Konstantin Käfer <mail@kkaefer.com> | 2016-08-16 15:29:34 +0200 |
commit | 51391740bf324fd7131f069d1d2d106113560df3 (patch) | |
tree | 93b93bd806525966b531ed8d7b1aeeee43705058 /cmake | |
parent | 4e211548d5029a353aaa8814c40599970a8098bd (diff) | |
download | qtlocation-mapboxgl-51391740bf324fd7131f069d1d2d106113560df3.tar.gz |
[build] convert build-shaders script from Python to Node.js
Diffstat (limited to 'cmake')
-rw-r--r-- | cmake/mbgl.cmake | 11 | ||||
-rw-r--r-- | cmake/node.cmake | 10 | ||||
-rw-r--r-- | cmake/npm.cmake | 20 | ||||
-rw-r--r-- | cmake/shaders.cmake | 2 | ||||
-rw-r--r-- | cmake/test.cmake | 4 |
5 files changed, 13 insertions, 34 deletions
diff --git a/cmake/mbgl.cmake b/cmake/mbgl.cmake index c73127ab3f..f20f49004c 100644 --- a/cmake/mbgl.cmake +++ b/cmake/mbgl.cmake @@ -12,6 +12,17 @@ endif() set(MBGL_GENERATED ${CMAKE_BINARY_DIR}/generated/${CMAKE_CFG_INTDIR}) +if(NOT EXISTS ${CMAKE_SOURCE_DIR}/node_modules/node-cmake/FindNodeJS.cmake) + message(FATAL_ERROR "Can't find node-cmake") +endif() + +# Load Node.js +set(NodeJS_CXX_STANDARD 14 CACHE INTERNAL "Use C++14" FORCE) +set(NodeJS_DOWNLOAD ON CACHE INTERNAL "Download node.js sources" FORCE) +set(NodeJS_USE_CLANG_STDLIB OFF CACHE BOOL "Don't use libc++ by default" FORCE) +list(APPEND CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/node_modules/node-cmake) +find_package(NodeJS) + # Generate source groups so the files are properly sorted in IDEs like Xcode. function(create_source_groups target) get_target_property(sources ${target} SOURCES) diff --git a/cmake/node.cmake b/cmake/node.cmake index 081b158d41..034216b617 100644 --- a/cmake/node.cmake +++ b/cmake/node.cmake @@ -1,13 +1,3 @@ -if(NOT EXISTS ${CMAKE_SOURCE_DIR}/node_modules/node-cmake/FindNodeJS.cmake) - message(FATAL_ERROR "Can't find node-cmake") -endif() - -set(NodeJS_CXX_STANDARD 14 CACHE INTERNAL "Use C++14" FORCE) -set(NodeJS_DOWNLOAD ON CACHE INTERNAL "Download node.js sources" FORCE) -set(NodeJS_USE_CLANG_STDLIB OFF CACHE BOOL "Don't use libc++ by default" FORCE) -list(APPEND CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/node_modules/node-cmake) -find_package(NodeJS) - add_nodejs_module(mbgl-node platform/node/src/node_mapbox_gl_native.cpp ) diff --git a/cmake/npm.cmake b/cmake/npm.cmake deleted file mode 100644 index bb456666e2..0000000000 --- a/cmake/npm.cmake +++ /dev/null @@ -1,20 +0,0 @@ -function(cache_executable_path name variable) - # Obtain paths to node and npm and cache it, so when e.g. Xcode reruns CMake, we still have the - # variables from the original invocation - if(NOT ${variable}) - set(_which_output) - execute_process( - COMMAND which ${name} - OUTPUT_VARIABLE _which_output - OUTPUT_STRIP_TRAILING_WHITESPACE) - if(_which_output STREQUAL "") - message(STATUS "Using cached ${name}: ${${variable}}") - else() - set(${variable} "${_which_output}" CACHE PATH "Path to ${name} executable") - message(STATUS "Using ${name}: ${${variable}}") - endif() - endif() -endfunction() - -cache_executable_path(node _node) -cache_executable_path(npm _npm) diff --git a/cmake/shaders.cmake b/cmake/shaders.cmake index 5a16fa682f..5495f5b281 100644 --- a/cmake/shaders.cmake +++ b/cmake/shaders.cmake @@ -1,5 +1,5 @@ function(add_shader VAR name) - set(shader_build_cmd ${CMAKE_SOURCE_DIR}/scripts/build-shaders.py) + set(shader_build_cmd ${NodeJS_EXECUTABLE} ${CMAKE_SOURCE_DIR}/scripts/build-shaders.js) set(shader_file_prefix ${CMAKE_SOURCE_DIR}/node_modules/mapbox-gl-shaders/src) set(shader_source_prefix ${MBGL_GENERATED}/include/mbgl/shader) diff --git a/cmake/test.cmake b/cmake/test.cmake index 6cce8d248d..29975662ce 100644 --- a/cmake/test.cmake +++ b/cmake/test.cmake @@ -2,13 +2,11 @@ add_executable(mbgl-test ${MBGL_TEST_FILES} ) -cache_executable_path(node _node) - target_compile_options(mbgl-test PRIVATE -fvisibility-inlines-hidden ) -set_source_files_properties(test/src/mbgl/test/util.cpp PROPERTIES COMPILE_FLAGS -DNODE_EXECUTABLE="${_node}") +set_source_files_properties(test/src/mbgl/test/util.cpp PROPERTIES COMPILE_FLAGS -DNODE_EXECUTABLE="${NodeJS_EXECUTABLE}") target_include_directories(mbgl-test PRIVATE include |