Commit 51892bb6 authored by David Moxey's avatar David Moxey

Tweaks to support installation of documentation in docker images

parent 32b51223
[submodule "docs/tutorial"] [submodule "docs/tutorial"]
branch = master branch = master
path = docs/tutorial path = docs/tutorial
url = git@gitlab.nektar.info:nektar/tutorial url = https://gitlab.nektar.info/nektar/tutorial.git
ignore = all ignore = all
...@@ -27,18 +27,15 @@ IF (NEKTAR_BUILD_DOC) ...@@ -27,18 +27,15 @@ IF (NEKTAR_BUILD_DOC)
IF(NEKTAR_BUILD_DOC_ECLIPSE) IF(NEKTAR_BUILD_DOC_ECLIPSE)
SET(DOXYGEN_GENERATE_ECLIPSEHELP "YES") SET(DOXYGEN_GENERATE_ECLIPSEHELP "YES")
ENDIF() ENDIF()
INSTALL(DIRECTORY ${PROJECT_BINARY_DIR}/docs/doxygen/
DESTINATION ${NEKTAR_DOC_DIR})
CONFIGURE_FILE(${CMAKE_SOURCE_DIR}/docs/doxygen/Doxyfile.in INSTALL(DIRECTORY ${PROJECT_BINARY_DIR}/docs/doxygen/html/
DESTINATION ${NEKTAR_DOC_DIR}/doxygen)
CONFIGURE_FILE(${CMAKE_SOURCE_DIR}/docs/doxygen/Doxyfile.in
${PROJECT_BINARY_DIR}/docs/doxygen/Doxyfile @ONLY IMMEDIATE) ${PROJECT_BINARY_DIR}/docs/doxygen/Doxyfile @ONLY IMMEDIATE)
ADD_CUSTOM_TARGET(doc ADD_CUSTOM_TARGET(doc
COMMAND ${CMAKE_COMMAND} -E copy COMMAND ${DOXYGEN_EXECUTABLE} ${PROJECT_BINARY_DIR}/docs/doxygen/Doxyfile
${CMAKE_SOURCE_DIR}/docs/doxygen/doxygen-fixed-width.css
${PROJECT_BINARY_DIR}/docs/doxygen/doxygen-fixed-width.css
COMMAND ${DOXYGEN_EXECUTABLE}
${PROJECT_BINARY_DIR}/docs/doxygen/Doxyfile
SOURCES ${PROJECT_BINARY_DIR}/docs/doxygen/Doxyfile) SOURCES ${PROJECT_BINARY_DIR}/docs/doxygen/Doxyfile)
ENDIF (NEKTAR_BUILD_DOC) ENDIF (NEKTAR_BUILD_DOC)
......
...@@ -12,7 +12,9 @@ RUN DEBIAN_RELEASE=buster && \ ...@@ -12,7 +12,9 @@ RUN DEBIAN_RELEASE=buster && \
libfftw3-dev libhdf5-dev libhdf5-mpi-dev liblapack-dev liboce-foundation-dev \ libfftw3-dev libhdf5-dev libhdf5-mpi-dev liblapack-dev liboce-foundation-dev \
liboce-modeling-dev liboce-ocaf-dev libtet1.5-dev libtriangle-dev \ liboce-modeling-dev liboce-ocaf-dev libtet1.5-dev libtriangle-dev \
libtinyxml-dev mpi-default-dev petsc-dev zlib1g-dev python-numpy libptscotch-dev \ libtinyxml-dev mpi-default-dev petsc-dev zlib1g-dev python-numpy libptscotch-dev \
libarpack2-dev libarpack2-dev \
texlive-base texlive-latex-extra texlive-science texlive-fonts-recommended \
doxygen graphviz
RUN groupadd nektar && useradd -m -g nektar nektar RUN groupadd nektar && useradd -m -g nektar nektar
USER nektar:nektar USER nektar:nektar
......
...@@ -4,26 +4,32 @@ LABEL maintainer="David Moxey <d.moxey@exeter.ac.uk>" ...@@ -4,26 +4,32 @@ LABEL maintainer="David Moxey <d.moxey@exeter.ac.uk>"
COPY --chown=nektar:nektar . /home/nektar COPY --chown=nektar:nektar . /home/nektar
ARG BUILD_DOCS=ON
ARG BUILD_DEMOS=OFF ARG BUILD_DEMOS=OFF
ARG BUILD_SOLVERS=ON ARG BUILD_SOLVERS=ON
ARG INSTALL_PREFIX=/usr/local ARG INSTALL_PREFIX=/usr/local
RUN mkdir build && cd build && \ RUN mkdir build && cd build && \
cmake \ cmake \
-DNEKTAR_BUILD_DEMOS=${BUILD_DEMOS} \ -DNEKTAR_BUILD_DEMOS=${BUILD_DEMOS} \
-DNEKTAR_BUILD_TESTS=OFF \ -DNEKTAR_BUILD_DOC=${BUILD_DOCS} \
-DNEKTAR_BUILD_UNIT_TESTS=OFF \ -DNEKTAR_BUILD_TESTS=OFF \
-DNEKTAR_BUILD_SOLVERS=${BUILD_SOLVERS} \ -DNEKTAR_BUILD_UNIT_TESTS=OFF \
-DNEKTAR_BUILD_PYTHON=ON \ -DNEKTAR_BUILD_SOLVERS=${BUILD_SOLVERS} \
-DCMAKE_INSTALL_PREFIX=${INSTALL_PREFIX} \ -DNEKTAR_BUILD_PYTHON=ON \
-DNEKTAR_USE_MESHGEN=ON \ -DCMAKE_INSTALL_PREFIX=${INSTALL_PREFIX} \
-DNEKTAR_USE_MPI=ON \ -DNEKTAR_USE_MESHGEN=ON \
-DNEKTAR_USE_ARPACK=ON \ -DNEKTAR_USE_MPI=ON \
-DNEKTAR_USE_FFTW=ON \ -DNEKTAR_USE_ARPACK=ON \
-DNEKTAR_USE_HDF5=ON \ -DNEKTAR_USE_FFTW=ON \
-DNEKTAR_USE_CCM=ON \ -DNEKTAR_USE_HDF5=ON \
.. && \ -DNEKTAR_USE_CCM=ON \
make -j$(nproc) .. && \
make -j$(nproc) && \
make user-guide-pdf user-guide-html && \
make developer-guide-pdf developer-guide-html && \
make tutorials && \
make doc
USER root USER root
RUN cd build && make install && make nekpy-install-system && cd .. RUN cd build && make install && make nekpy-install-system && cd ..
......
...@@ -50,3 +50,13 @@ ADD_CUSTOM_TARGET(developer-guide-pdf ...@@ -50,3 +50,13 @@ ADD_CUSTOM_TARGET(developer-guide-pdf
COMMAND ${PDFLATEX} --output-directory ${DEVGUIDE} ${DEVGUIDESRC}/developers-guide.tex COMMAND ${PDFLATEX} --output-directory ${DEVGUIDE} ${DEVGUIDESRC}/developers-guide.tex
WORKING_DIRECTORY ${DEVGUIDESRC} WORKING_DIRECTORY ${DEVGUIDESRC}
) )
# Install output, if it is generated.
INSTALL(CODE "IF (EXISTS ${DEVGUIDE}/html)
FILE(INSTALL ${DEVGUIDE}/html
DESTINATION \${CMAKE_INSTALL_PREFIX}/${NEKTAR_DOC_DIR}/developers-guide)
ENDIF()
IF (EXISTS ${DEVGUIDE}/developers-guide.pdf)
FILE(INSTALL ${DEVGUIDE}/developers-guide.pdf
DESTINATION \${CMAKE_INSTALL_PREFIX}/${NEKTAR_DOC_DIR}/developers-guide)
ENDIF()")
...@@ -682,7 +682,7 @@ LAYOUT_FILE = ...@@ -682,7 +682,7 @@ LAYOUT_FILE =
# search path. Do not use file names with spaces, bibtex cannot handle them. See # search path. Do not use file names with spaces, bibtex cannot handle them. See
# also \cite for info how to create references. # also \cite for info how to create references.
CITE_BIB_FILES = doxygen.bib CITE_BIB_FILES = docs/doxygen/doxygen.bib
#--------------------------------------------------------------------------- #---------------------------------------------------------------------------
# Configuration options related to warning and progress messages # Configuration options related to warning and progress messages
...@@ -1120,7 +1120,7 @@ HTML_STYLESHEET = ...@@ -1120,7 +1120,7 @@ HTML_STYLESHEET =
# see the documentation. # see the documentation.
# This tag requires that the tag GENERATE_HTML is set to YES. # This tag requires that the tag GENERATE_HTML is set to YES.
HTML_EXTRA_STYLESHEET = doxygen-fixed-width.css HTML_EXTRA_STYLESHEET =
# The HTML_EXTRA_FILES tag can be used to specify one or more extra images or # The HTML_EXTRA_FILES tag can be used to specify one or more extra images or
# other source files which should be copied to the HTML output directory. Note # other source files which should be copied to the HTML output directory. Note
...@@ -2202,7 +2202,7 @@ TEMPLATE_RELATIONS = NO ...@@ -2202,7 +2202,7 @@ TEMPLATE_RELATIONS = NO
# The default value is: YES. # The default value is: YES.
# This tag requires that the tag HAVE_DOT is set to YES. # This tag requires that the tag HAVE_DOT is set to YES.
INCLUDE_GRAPH = YES INCLUDE_GRAPH = NO
# If the INCLUDED_BY_GRAPH, ENABLE_PREPROCESSING and SEARCH_INCLUDES tags are # If the INCLUDED_BY_GRAPH, ENABLE_PREPROCESSING and SEARCH_INCLUDES tags are
# set to YES then doxygen will generate a graph for each documented file showing # set to YES then doxygen will generate a graph for each documented file showing
...@@ -2211,7 +2211,7 @@ INCLUDE_GRAPH = YES ...@@ -2211,7 +2211,7 @@ INCLUDE_GRAPH = YES
# The default value is: YES. # The default value is: YES.
# This tag requires that the tag HAVE_DOT is set to YES. # This tag requires that the tag HAVE_DOT is set to YES.
INCLUDED_BY_GRAPH = YES INCLUDED_BY_GRAPH = NO
# If the CALL_GRAPH tag is set to YES then doxygen will generate a call # If the CALL_GRAPH tag is set to YES then doxygen will generate a call
# dependency graph for every global function or class method. # dependency graph for every global function or class method.
...@@ -2260,7 +2260,7 @@ DIRECTORY_GRAPH = YES ...@@ -2260,7 +2260,7 @@ DIRECTORY_GRAPH = YES
# The default value is: png. # The default value is: png.
# This tag requires that the tag HAVE_DOT is set to YES. # This tag requires that the tag HAVE_DOT is set to YES.
DOT_IMAGE_FORMAT = png DOT_IMAGE_FORMAT = svg
# If DOT_IMAGE_FORMAT is set to svg, then this option can be set to YES to # If DOT_IMAGE_FORMAT is set to svg, then this option can be set to YES to
# enable generation of interactive SVG images that allow zooming and panning. # enable generation of interactive SVG images that allow zooming and panning.
......
Subproject commit 63551b4436ba27cfd599d8c86554ee94db84d184 Subproject commit 851f7583b288fb264e1d95db647eb541c054962a
...@@ -51,3 +51,13 @@ ADD_CUSTOM_TARGET(user-guide-pdf ...@@ -51,3 +51,13 @@ ADD_CUSTOM_TARGET(user-guide-pdf
COMMAND ${PDFLATEX} --output-directory ${USERGUIDE} ${USERGUIDESRC}/user-guide.tex COMMAND ${PDFLATEX} --output-directory ${USERGUIDE} ${USERGUIDESRC}/user-guide.tex
WORKING_DIRECTORY ${USERGUIDESRC} WORKING_DIRECTORY ${USERGUIDESRC}
) )
# Install output, if it is generated.
INSTALL(CODE "IF (EXISTS ${USERGUIDE}/html)
FILE(INSTALL ${USERGUIDE}/html
DESTINATION \${CMAKE_INSTALL_PREFIX}/${NEKTAR_DOC_DIR}/user-guide)
ENDIF()
IF (EXISTS ${USERGUIDE}/user-guide.pdf)
FILE(INSTALL ${USERGUIDE}/user-guide.pdf
DESTINATION \${CMAKE_INSTALL_PREFIX}/${NEKTAR_DOC_DIR}/user-guide)
ENDIF()")
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment