I recently had an issue where my IDE (Visual Studio) had no support for CMake.js and this was my solution.
This solution sets up all the CMake.js variables. By defining CMAKE_JS_INC
and CMAKE_JS_LIB
for use in your project.
Just call setup_cmakejs()
to define the variables. It is also compatible with Windows development environments. Linux and macOS are untested, but assumedly work just fine.
Happy coding!
Here's an example just in case you need it:
cmake_minimum_required(VERSION 3.2.2)
include("cmakejs.cmake")
setup_cmakejs()
project (my_project_name)
include_directories(${CMAKE_JS_INC})
file(GLOB SOURCE_FILES "main.cpp")
add_library(${PROJECT_NAME} SHARED ${SOURCE_FILES} ${CMAKE_JS_SRC})
set_target_properties(${PROJECT_NAME} PROPERTIES
PREFIX ""
SUFFIX ".node"
RUNTIME_OUTPUT_DIRECTORY ${ARTIFACTS_DIRECTORY}
LINKER_LANGUAGE CXX
)
target_link_libraries(${PROJECT_NAME} ${CMAKE_JS_LIB})
What
cmake-js
needs is a--porcelain
option like the git cli has so we don't have to do this string parsing stuff.Actually, an easier way would be to use Node.js to extract the variables we need from
print-configure
...