diff options
Diffstat (limited to 'doc/CMakeLists.txt')
-rw-r--r-- | doc/CMakeLists.txt | 74 |
1 files changed, 71 insertions, 3 deletions
diff --git a/doc/CMakeLists.txt b/doc/CMakeLists.txt index 185eab9..16eea36 100644 --- a/doc/CMakeLists.txt +++ b/doc/CMakeLists.txt @@ -1,3 +1,71 @@ -add_subdirectory( man ) -tde_conditional_add_subdirectory( WITH_TDE en ) -tde_conditional_add_subdirectory( WITH_TDE tdeioslave ) + +if( WITH_TDE ) + +string( REGEX REPLACE "[ \r\n\t]+" ";" _linguas "$ENV{LINGUAS}" ) + +# base documentation +file( GLOB _dirs RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} * ) +list( REMOVE_ITEM _dirs "tdeioslave" ) + +foreach( _dir IN LISTS _dirs ) + if( IS_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/${_dir} + AND NOT "${_dir}" STREQUAL "man" + AND ( "${_dir}" STREQUAL "en" OR + "${_linguas}" MATCHES "^;*$" OR + ";${_linguas};" MATCHES ";${_dir};" )) + file( GLOB _doc_files RELATIVE ${CMAKE_CURRENT_SOURCE_DIR}/${_dir} ${_dir}/*.docbook ) + if( _doc_files ) + list( FIND _doc_files "index.docbook" _find_index ) + if( -1 EQUAL _find_index ) + set( _noindex "NOINDEX" ) + else() + unset( _noindex ) + endif() + tde_create_handbook( + SOURCE_BASEDIR ${_dir} + ${_noindex} + LANG ${_dir} + DESTINATION ${PROJECT_NAME} + ) + endif() + endif() +endforeach() + + +# tdeioslave documentation +file( GLOB _dirs RELATIVE ${CMAKE_CURRENT_SOURCE_DIR}/tdeioslave tdeioslave/*/* ) + +foreach( _dir IN LISTS _dirs ) + get_filename_component( _lang ${_dir} DIRECTORY ) + get_filename_component( _protocol ${_dir} NAME ) + if( IS_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/tdeioslave/${_dir} + AND NOT "${_lang}" STREQUAL "man" + AND ( "${_lang}" STREQUAL "en" OR + "${_linguas}" MATCHES "^;*$" OR + ";${_linguas};" MATCHES ";${_lang};" )) + file( GLOB _doc_files + RELATIVE ${CMAKE_CURRENT_SOURCE_DIR}/tdeioslave/${_dir} + tdeioslave/${_dir}/*.docbook ) + if( _doc_files ) + list( FIND _doc_files "index.docbook" _find_index ) + if( -1 EQUAL _find_index ) + set( _noindex "NOINDEX" ) + else() + unset( _noindex ) + endif() + tde_create_handbook( + SOURCE_BASEDIR tdeioslave/${_dir} + ${_noindex} + LANG ${_lang} + DESTINATION tdeioslave/${_protocol} + ) + endif() + endif() +endforeach() + +endif( WITH_TDE ) + + +if( EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/man/CMakeLists.txt ) + add_subdirectory( man ) +endif() |