An Overlay-based
Virtual Network Substrate
SpoVNet

source: docu/doxygen/CMakeLists.txt @ 10700

Last change on this file since 10700 was 10700, checked in by Michael Tänzer, 11 years ago

Merge CMake branch into trunk

File size: 3.5 KB
Line 
1# [License]
2# The Ariba-Underlay Copyright
3#
4# Copyright (c) 2008-2012, Institute of Telematics, UniversitÀt Karlsruhe (TH)
5#
6# Institute of Telematics
7# UniversitÀt Karlsruhe (TH)
8# Zirkel 2, 76128 Karlsruhe
9# Germany
10#
11# Redistribution and use in source and binary forms, with or without
12# modification, are permitted provided that the following conditions are
13# met:
14#
15# 1. Redistributions of source code must retain the above copyright
16# notice, this list of conditions and the following disclaimer.
17# 2. Redistributions in binary form must reproduce the above copyright
18# notice, this list of conditions and the following disclaimer in the
19# documentation and/or other materials provided with the distribution.
20#
21# THIS SOFTWARE IS PROVIDED BY THE INSTITUTE OF TELEMATICS ``AS IS'' AND
22# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
23# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
24# PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE INSTITUTE OF TELEMATICS OR
25# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
26# EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
27# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
28# PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
29# LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
30# NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
31# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
32#
33# The views and conclusions contained in the software and documentation
34# are those of the authors and should not be interpreted as representing
35# official policies, either expressed or implied, of the Institute of
36# Telematics.
37# [License]
38
39option(DOCUMENTATION_GENERATE_GRAPHICS
40    "Whether graphics should be generated for the documentation.
41This might take a long time and quite some amount of space"
42    OFF
43    )
44
45if(NOT DOCUMENTATION_GENERATE_GRAPHICS)
46    set(DOXYGEN_SKIP_DOT TRUE)
47endif(NOT DOCUMENTATION_GENERATE_GRAPHICS)
48
49find_package(Doxygen)
50
51if(DOXYGEN_FOUND)
52    # Generate the Doxyfile
53    configure_file(
54        Doxyfile.in
55        Doxyfile
56        @ONLY
57        )
58   
59    file(GLOB_RECURSE doxygen_SOURCES
60        "${ariba_SOURCE_DIR}/source/*.c"
61        "${ariba_SOURCE_DIR}/source/*.cc"
62        "${ariba_SOURCE_DIR}/source/*.cxx"
63        "${ariba_SOURCE_DIR}/source/*.cpp"
64        "${ariba_SOURCE_DIR}/source/*.c++"
65        "${ariba_SOURCE_DIR}/source/*.h"
66        "${ariba_SOURCE_DIR}/source/*.hh"
67        "${ariba_SOURCE_DIR}/source/*.hxx"
68        "${ariba_SOURCE_DIR}/source/*.hpp"
69        "${ariba_SOURCE_DIR}/source/*.h++"
70        )
71   
72    add_custom_command(
73        OUTPUT html/index.html
74        COMMAND ${DOXYGEN_EXECUTABLE} Doxyfile
75        MAIN_DEPENDENCY "${ariba_SOURCE_DIR}/source/ariba/ariba.h"
76        DEPENDS ${doxygen_SOURCES}
77        COMMENT "Building Doxygen documentation"
78        )
79   
80   
81    option(ALWAYS_BUILD_DOCUMENTATION
82        "Always build the documentation when compiling the project? If OFF the
83documentation is only built when building the target 'docu'"
84        OFF)
85    if(ALWAYS_BUILD_DOCUMENTATION)
86        set(BUILD_DOCU_ALL "ALL")
87    endif()
88   
89    add_custom_target(docu ${BUILD_DOCU_ALL}
90        DEPENDS "${CMAKE_CURRENT_BINARY_DIR}/html/index.html"
91        )
92   
93   
94    install(DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/html/"
95        DESTINATION share/doc/libariba-doc/html
96        COMPONENT Documentation
97        OPTIONAL
98        )
99   
100    set_directory_properties(PROPERTIES ADDITIONAL_MAKE_CLEAN_FILES html)
101endif(DOXYGEN_FOUND)
Note: See TracBrowser for help on using the repository browser.