cmake-basis/BASIS

Do my project really must use Sphinx?

jvegh opened this issue · 3 comments

jvegh commented

I attempted to make my own project using BASIS, and created some modules. Although I never touched anything but defaults, have never seen Sphinx, when I attempt to build (the otherwise empty) project, I receive

CMake Error at ~/local/share/basis/modules/CommonTools.cmake:826
(message):
Project MyProject requires Sphinx

Do I really must install Sphinx to use BASIS?

Sphinx is by default required to build a software manual / online pages from *.rst files in the doc/ directory. When you created your modules from the latest basisproject template version, your doc/CMakeLists.txt should have the following lines: https://github.com/cmake-basis/BASIS/blob/master/tools/basisproject/templates/basis/1.4/doc/CMakeLists.txt#L55 and in the BasisProject.cmake file there should not be a mention of Sphinx as dependency. This was the case for the previous project template files, though: https://github.com/cmake-basis/BASIS/blob/master/tools/basisproject/templates/basis/1.3/BasisProject.cmake#L109 .

You can manually edit your BasisProject.cmake and doc/CMakeLists.txt files if needed to update them to the latest template version or try the basisproject update command. I recommend the manual editing.

So with the project template version basis/1.4, your project will only require Sphinx when you have a manual.rst and sidebar.rst file in your doc/ directory.

jvegh commented

I removed the two named files. The message now is
CMake Error at /home/jvegh/local/share/basis/modules/CommonTools.cmake:3434
jvegh@jvegh:~/local/src/EMPAthY86/build$
get_target_property called with incorrect number of arguments
Call Stack (most recent call first):
/home/jvegh/local/share/basis/modules/DocTools.cmake:690
(basis_get_target_location)
/home/jvegh/local/share/basis/modules/DocTools.cmake:83
(basis_add_doxygen_doc)
doc/CMakeLists.txt:43 (basis_add_doc)

_