diff --git a/CMakeLists.txt b/CMakeLists.txt index 3c7f9fa..3956400 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -56,6 +56,12 @@ if(NOT ${CMAKE_PROJECT_NAME} STREQUAL "Sunshine") ) endif() +# set SHARED_WEB_FILES depends +set(SHARED_WEB_FILES_DEPENDS + "${CMAKE_CURRENT_SOURCE_DIR}/node_modules/@lizardbyte/shared-web/dist/crowdin.js" + "${CMAKE_CURRENT_SOURCE_DIR}/node_modules/@lizardbyte/shared-web/dist/crowdin-doxygen-css.css" +) + # set FONT_AWESOME_FILES depends set(FONT_AWESOME_FILES_DEPENDS "${CMAKE_CURRENT_SOURCE_DIR}/node_modules/@fortawesome/fontawesome-free/css/all.min.css" @@ -64,14 +70,27 @@ set(FONT_AWESOME_FILES_DEPENDS ) find_program(NPM npm REQUIRED) -add_custom_target(_docs_fontawesome_install +add_custom_target(_docs_npm_install COMMENT "Installing node modules" - BYPRODUCTS ${FONT_AWESOME_FILES_DEPENDS} - COMMAND ${NPM} install + BYPRODUCTS ${SHARED_WEB_FILES_DEPENDS} ${FONT_AWESOME_FILES_DEPENDS} + COMMAND ${NPM} install --ignore-scripts WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}" VERBATIM ) +# copy shared-web files +add_custom_command( + OUTPUT SHARED_WEB_FILES + COMMAND ${CMAKE_COMMAND} + -E copy ${CMAKE_CURRENT_SOURCE_DIR}/node_modules/@lizardbyte/shared-web/dist/crowdin.js + ${DOXYGEN_BUILD_DIR_CMAKE}/html/assets/shared-web/crowdin.js + COMMAND ${CMAKE_COMMAND} + -E copy ${CMAKE_CURRENT_SOURCE_DIR}/node_modules/@lizardbyte/shared-web/dist/crowdin-doxygen-css.css + ${DOXYGEN_BUILD_DIR_CMAKE}/html/assets/shared-web/crowdin-doxygen-css.css + COMMENT "Copying shared-web files" + DEPENDS ${SHARED_WEB_FILES_DEPENDS} +) + # copy Font Awesome files add_custom_command( OUTPUT FONT_AWESOME_FILES @@ -111,5 +130,5 @@ add_custom_target(docs ALL DOXYCONFIG_THREADS=${DOXYGEN_NUM_THREADS} ${DOXYGEN_EXECUTABLE} doxyconfig-Doxyfile VERBATIM - DEPENDS FONT_AWESOME_FILES + DEPENDS FONT_AWESOME_FILES SHARED_WEB_FILES ) diff --git a/doxyconfig-Doxyfile b/doxyconfig-Doxyfile index 6e23f56..0f20c6c 100644 --- a/doxyconfig-Doxyfile +++ b/doxyconfig-Doxyfile @@ -51,10 +51,6 @@ HTML_HEADER = doxyconfig-header.html HTML_EXTRA_FILES += doxyconfig-readthedocs-search.js HTML_EXTRA_STYLESHEET += doxyconfig.css -# @lizardbyte/shared-web -HTML_EXTRA_FILES += ../node_modules/@lizardbyte/shared-web/dist/crowdin.js -HTML_EXTRA_STYLESHEET += ../node_modules/@lizardbyte/shared-web/dist/crowdin-doxygen-css.css - # custom aliases ALIASES = "" ALIASES += "examples=^^**Examples**^^@code{.cpp}" diff --git a/doxyconfig-header.html b/doxyconfig-header.html index a61f7b6..267e3e1 100644 --- a/doxyconfig-header.html +++ b/doxyconfig-header.html @@ -30,7 +30,8 @@ - + + diff --git a/readthedocs_build.sh b/readthedocs_build.sh index 5a6182f..cdb71a0 100644 --- a/readthedocs_build.sh +++ b/readthedocs_build.sh @@ -30,6 +30,7 @@ function install_node_modules { echo "Creating output directories" mkdir -p "${READTHEDOCS_OUTPUT}html/assets/fontawesome/css" mkdir -p "${READTHEDOCS_OUTPUT}html/assets/fontawesome/js" + mkdir -p "${READTHEDOCS_OUTPUT}html/assets/shared-web" echo "Installing node modules" pushd "${DOXYCONFIG_DIR}" @@ -43,6 +44,12 @@ function install_node_modules { "${READTHEDOCS_OUTPUT}html/assets/fontawesome/js" cp -r "${DOXYCONFIG_DIR}/node_modules/@fortawesome/fontawesome-free/webfonts" \ "${READTHEDOCS_OUTPUT}html/assets/fontawesome/" + + echo "Copying shared-web files" + cp "${DOXYCONFIG_DIR}/node_modules/@lizardbyte/shared-web/dist/crowdin.js" \ + "${READTHEDOCS_OUTPUT}html/assets/shared-web/" + cp "${DOXYCONFIG_DIR}/node_modules/@lizardbyte/shared-web/dist/crowdin-doxygen-css.css" \ + "${READTHEDOCS_OUTPUT}html/assets/shared-web/" } function merge_doxyconfigs {