From 99d75af3baa9d869b7375a4e4685a426b2172c97 Mon Sep 17 00:00:00 2001 From: Stephane Del Pino <stephane.delpino44@gmail.com> Date: Thu, 28 Apr 2022 23:29:41 +0200 Subject: [PATCH] Improve elisp package target downloading [ci-skip] This is done to avoid races if generating doc using multiple jobs --- cmake/PugsDoc.cmake | 20 ++++++++++++++++---- 1 file changed, 16 insertions(+), 4 deletions(-) diff --git a/cmake/PugsDoc.cmake b/cmake/PugsDoc.cmake index 7a5694f09..827faed47 100644 --- a/cmake/PugsDoc.cmake +++ b/cmake/PugsDoc.cmake @@ -20,12 +20,24 @@ if (EMACS) set(ORG_GENERATOR_FILES "${PUGS_SOURCE_DIR}/doc/lisp/build-doc-config.el" - "${PUGS_SOURCE_DIR}/doc/lisp/userdoc-html.el" - "${PUGS_SOURCE_DIR}/doc/lisp/userdoc-pdf.el" "${PUGS_SOURCE_DIR}/doc/lisp/share/pugs.el" "${PUGS_SOURCE_DIR}/doc/lisp/share/ob-pugs.el" ) + add_custom_command( + OUTPUT "${PUGS_SOURCE_DIR}/doc/elpa" + COMMAND + ${CMAKE_COMMAND} -E env + PUGS=${PUGS_BINARY_DIR}/pugs + HOME=${PUGS_SOURCE_DIR}/doc/lisp + PUGS_SOURCE_DIR=${PUGS_SOURCE_DIR} + PUGS_BINARY_DIR=${PUGS_BINARY_DIR} + ${EMACS} -Q --script ${PUGS_SOURCE_DIR}/doc/lisp/build-doc-config.el + DEPENDS ${ORG_GENERATOR_FILES} + ) + + add_custom_target(pugsdoc-download-elpa DEPENDS "${PUGS_SOURCE_DIR}/doc/elpa") + add_custom_command( OUTPUT "${PUGS_BINARY_DIR}/doc/userdoc.html" COMMAND @@ -35,7 +47,7 @@ if (EMACS) PUGS_SOURCE_DIR=${PUGS_SOURCE_DIR} PUGS_BINARY_DIR=${PUGS_BINARY_DIR} ${EMACS} -Q --script ${PUGS_SOURCE_DIR}/doc/lisp/userdoc-html.el - DEPENDS "${PUGS_SOURCE_DIR}/doc/userdoc.org" pugs pugsdoc-dir ${ORG_GENERATOR_FILES} + DEPENDS "${PUGS_SOURCE_DIR}/doc/userdoc.org" "${PUGS_SOURCE_DIR}/doc/lisp/userdoc-html.el" pugs pugsdoc-dir pugsdoc-download-elpa WORKING_DIRECTORY ${PUGS_BINARY_DIR}/doc COMMENT "Built user documentation in doc/userdoc.html" VERBATIM) @@ -55,7 +67,7 @@ if (EMACS) PUGS_SOURCE_DIR=${PUGS_SOURCE_DIR} PUGS_BINARY_DIR=${PUGS_BINARY_DIR} ${EMACS} -Q --script ${PUGS_SOURCE_DIR}/doc/lisp/userdoc-pdf.el - DEPENDS "${PUGS_SOURCE_DIR}/doc/userdoc.org" pugs pugsdoc-dir ${ORG_GENERATOR_FILES} + DEPENDS "${PUGS_SOURCE_DIR}/doc/userdoc.org" "${PUGS_SOURCE_DIR}/doc/lisp/userdoc-pdf.el" pugs pugsdoc-dir pugsdoc-download-elpa WORKING_DIRECTORY ${PUGS_BINARY_DIR}/doc COMMENT "Built user documentation in doc/userdoc.pdf" VERBATIM) -- GitLab