diff --git a/CMakeLists.txt b/CMakeLists.txt index 4d0f1eda..ac7b777a 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -9,12 +9,35 @@ Emscripten.cmake" ) endif() +# Extract the project name & version from package.json +file(READ "${CMAKE_CURRENT_SOURCE_DIR}/package.json" PACKAGE_JSON_CONTENT) +if(${PACKAGE_JSON_CONTENT} MATCHES "\"name\":[ ]*\"([^\"]+)\"") + set(CLP_FFI_JS_PROJECT_NAME + ${CMAKE_MATCH_1} + CACHE STRING + "The name of the project parsed from `package.json`." + FORCE + ) +else() + set(CLP_FFI_JS_PROJECT_NAME "clp-ffi-js" CACHE STRING "Use a placeholder project name." FORCE) +endif() +if(${PACKAGE_JSON_CONTENT} MATCHES "\"version\":[ ]*\"([^\"]+)\"") + set(CLP_FFI_JS_VERSION + ${CMAKE_MATCH_1} + CACHE STRING + "The version of the project parsed from `package.json`." + FORCE + ) +else() + set(CLP_FFI_JS_VERSION "0.0.0" CACHE STRING "Use a placeholder version." FORCE) +endif() + project( - clp-ffi-js + ${CLP_FFI_JS_PROJECT_NAME} LANGUAGES C CXX - VERSION 0.3.1 + VERSION "${CLP_FFI_JS_VERSION}" ) # Enable exporting compile commands