修正cmake

This commit is contained in:
2026-08-13 06:31:21 +08:00
parent a517804d27
commit 6d2cf825ae
4 changed files with 19 additions and 1942 deletions
-1919
View File
File diff suppressed because it is too large Load Diff
Binary file not shown.
+18 -6
View File
@@ -23,11 +23,14 @@ if (WIN32 AND DEFINED ENV{APPDATA})
endif () endif ()
find_program(Renderive_Web_node_executable NAMES node node.exe find_program(Renderive_Web_node_executable NAMES node node.exe
HINTS ${Renderive_Web_node_search_paths} REQUIRED) HINTS ${Renderive_Web_node_search_paths} REQUIRED)
get_filename_component(Renderive_Web_node_dir "${Renderive_Web_node_executable}" DIRECTORY)
if (WIN32) if (WIN32)
find_program(Renderive_Web_npm_executable NAMES npm.cmd set(Renderive_Web_npm_executable "${Renderive_Web_node_dir}/npm.cmd")
HINTS ${Renderive_Web_node_search_paths} REQUIRED)
else () else ()
find_program(Renderive_Web_npm_executable NAMES npm REQUIRED) set(Renderive_Web_npm_executable "${Renderive_Web_node_dir}/npm")
endif ()
if (NOT EXISTS "${Renderive_Web_npm_executable}")
message(FATAL_ERROR "npm was not found next to Node.js: ${Renderive_Web_node_dir}")
endif () endif ()
set(Renderive_Web_frontend_dir "${CMAKE_CURRENT_LIST_DIR}/../webapp_gallery") set(Renderive_Web_frontend_dir "${CMAKE_CURRENT_LIST_DIR}/../webapp_gallery")
set(Renderive_Web_frontend_install_stamp "${CMAKE_CURRENT_BINARY_DIR}/webapp_gallery_npm_ci.stamp") set(Renderive_Web_frontend_install_stamp "${CMAKE_CURRENT_BINARY_DIR}/webapp_gallery_npm_ci.stamp")
@@ -43,9 +46,16 @@ set(Renderive_Web_frontend_configuration
"${Renderive_Web_frontend_dir}/tsconfig.app.json" "${Renderive_Web_frontend_dir}/tsconfig.app.json"
"${Renderive_Web_frontend_dir}/index.html" "${Renderive_Web_frontend_dir}/index.html"
) )
if (WIN32)
set(Renderive_Web_node_path "${Renderive_Web_node_dir};$ENV{PATH}")
else ()
set(Renderive_Web_node_path "${Renderive_Web_node_dir}:$ENV{PATH}")
endif ()
add_custom_command( add_custom_command(
OUTPUT "${Renderive_Web_frontend_install_stamp}" OUTPUT "${Renderive_Web_frontend_install_stamp}"
COMMAND "${Renderive_Web_npm_executable}" ci COMMAND "${CMAKE_COMMAND}" -E env
"PATH=${Renderive_Web_node_path}"
"${Renderive_Web_npm_executable}" ci
COMMAND "${CMAKE_COMMAND}" -E touch "${Renderive_Web_frontend_install_stamp}" COMMAND "${CMAKE_COMMAND}" -E touch "${Renderive_Web_frontend_install_stamp}"
DEPENDS DEPENDS
"${Renderive_Web_frontend_dir}/package.json" "${Renderive_Web_frontend_dir}/package.json"
@@ -56,7 +66,9 @@ add_custom_command(
) )
add_custom_command( add_custom_command(
OUTPUT "${Renderive_Web_frontend_build_stamp}" OUTPUT "${Renderive_Web_frontend_build_stamp}"
COMMAND "${Renderive_Web_npm_executable}" run build COMMAND "${CMAKE_COMMAND}" -E env
"PATH=${Renderive_Web_node_path}"
"${Renderive_Web_npm_executable}" run build
COMMAND "${CMAKE_COMMAND}" -E touch "${Renderive_Web_frontend_build_stamp}" COMMAND "${CMAKE_COMMAND}" -E touch "${Renderive_Web_frontend_build_stamp}"
DEPENDS "${Renderive_Web_frontend_install_stamp}" DEPENDS "${Renderive_Web_frontend_install_stamp}"
${Renderive_Web_frontend_configuration} ${Renderive_Web_frontend_configuration}
@@ -124,7 +136,7 @@ append_glob_source(Renderive_Web_Server_sources "${Renderive_Web_Server_source_d
add_executable(Renderive_Web_Server ${Renderive_Web_Server_sources}) add_executable(Renderive_Web_Server ${Renderive_Web_Server_sources})
target_compile_features(Renderive_Web_Server PRIVATE cxx_std_20) target_compile_features(Renderive_Web_Server PRIVATE cxx_std_20)
target_link_libraries(Renderive_Web_Server PRIVATE Renderive_Web) target_link_libraries(Renderive_Web_Server PRIVATE Renderive_Web)
add_dependencies(Renderive_Web_Server Renderive_Web_Assets) #add_dependencies(Renderive_Web_Server Renderive_Web_Assets)
if (MSVC) if (MSVC)
target_compile_options(Renderive_Web PRIVATE /utf-8) target_compile_options(Renderive_Web PRIVATE /utf-8)
target_compile_options(Renderive_Web_Server PRIVATE /utf-8) target_compile_options(Renderive_Web_Server PRIVATE /utf-8)
-16
View File
@@ -4117,22 +4117,6 @@
"dev": true, "dev": true,
"license": "ISC" "license": "ISC"
}, },
"node_modules/yaml": {
"version": "2.9.0",
"resolved": "https://registry.npmjs.org/yaml/-/yaml-2.9.0.tgz",
"integrity": "sha512-2AvhNX3mb8zd6Zy7INTtSpl1F15HW6Wnqj0srWlkKLcpYl/gMIMJiyuGq2KeI2YFxUPjdlB+3Lc10seMLtL4cA==",
"extraneous": true,
"license": "ISC",
"bin": {
"yaml": "bin.mjs"
},
"engines": {
"node": ">= 14.6"
},
"funding": {
"url": "https://github.com/sponsors/eemeli"
}
},
"node_modules/zustand": { "node_modules/zustand": {
"version": "4.5.7", "version": "4.5.7",
"resolved": "https://registry.npmjs.org/zustand/-/zustand-4.5.7.tgz", "resolved": "https://registry.npmjs.org/zustand/-/zustand-4.5.7.tgz",