forked from Ericsson/CodeCompass
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathInstallReact.cmake
More file actions
50 lines (36 loc) · 1.65 KB
/
InstallReact.cmake
File metadata and controls
50 lines (36 loc) · 1.65 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
# Utility functions
include(${CMAKE_SOURCE_DIR}/Functions.cmake)
message("Install npm packages...")
if(${CC_PACKAGE_LOCK} IS_NEWER_THAN ${INSTALL_WEBROOT_REACT_DIR}/app/package-lock.json)
execute_process(
COMMAND ${CMAKE_COMMAND} -E copy ${CC_PACKAGE} ${INSTALL_WEBROOT_REACT_DIR}/app/package.json
COMMAND ${CMAKE_COMMAND} -E copy ${CC_PACKAGE_LOCK} ${INSTALL_WEBROOT_REACT_DIR}/app/package-lock.json
WORKING_DIRECTORY ${INSTALL_WEBROOT_REACT_DIR})
execute_process(
COMMAND npm install
WORKING_DIRECTORY ${INSTALL_WEBROOT_REACT_DIR}/app)
endif()
message("Installation of npm packages are finished.")
message("Generating TypeScript files from Thrift...")
# Generate TypeScript from Thrift
execute_process(
COMMAND bash -c "chmod +x thrift-codegen.sh"
WORKING_DIRECTORY ${INSTALL_WEBROOT_REACT_DIR}/app)
execute_process(
COMMAND bash thrift-codegen.sh --thrift-source ${CMAKE_SOURCE_DIR}
WORKING_DIRECTORY ${INSTALL_WEBROOT_REACT_DIR}/app)
message("Generating TypeScript files from Thrift finished.")
message("Building React App...")
execute_process(
COMMAND npm run build
WORKING_DIRECTORY ${INSTALL_WEBROOT_REACT_DIR}/app)
# Move build directory out of application directory
file(REMOVE_RECURSE ${INSTALL_WEBROOT_REACT_DIR}/out)
file(RENAME ${INSTALL_WEBROOT_REACT_DIR}/app/out ${INSTALL_WEBROOT_REACT_DIR}/out)
# Create symbolic link
execute_process(COMMAND ${CMAKE_COMMAND} -E create_symlink ../webgui-new/out ${INSTALL_WEBROOT_DIR}/new)
if (CMAKE_BUILD_TYPE STREQUAL "Release")
# Remove application source code in case of Release build
file(REMOVE ${INSTALL_WEBROOT_REACT_DIR}/app)
endif()
message("Building React App finished.")