| CMAKE_MINIMUM_REQUIRED(VERSION 2.8.6) |
| PROJECT(msgpack) |
| |
| FILE(READ ${CMAKE_CURRENT_SOURCE_DIR}/include/msgpack/version_master.h contents) |
| STRING( |
| REGEX |
| MATCH |
| "#define MSGPACK_VERSION_MAJOR *([0-9a-zA-Z_]*)" |
| NULL_OUT |
| ${contents} |
| ) |
| SET(VERSION_MAJOR ${CMAKE_MATCH_1}) |
| STRING( |
| REGEX |
| MATCH |
| "#define MSGPACK_VERSION_MINOR *([0-9a-zA-Z_]*)" |
| NULL_OUT |
| ${contents} |
| ) |
| SET(VERSION_MINOR ${CMAKE_MATCH_1}) |
| STRING( |
| REGEX |
| MATCH |
| "#define MSGPACK_VERSION_REVISION *([0-9a-zA-Z_]*)" |
| NULL_OUT |
| ${contents} |
| ) |
| SET(VERSION_REVISION ${CMAKE_MATCH_1}) |
| SET(VERSION ${VERSION_MAJOR}.${VERSION_MINOR}.${VERSION_REVISION}) |
| |
| SET(prefix ${CMAKE_INSTALL_PREFIX}) |
| SET(exec_prefix "\${prefix}") |
| SET(libdir "\${exec_prefix}/lib") |
| SET(includedir "\${prefix}/include") |
| SET(GNUCXX_STD_SUPPORT_VERSION "4.3") |
| SET(GNUCXX_NO_MISMATCHED_TAGS_SUPPORT_VERSION "4.4") |
| |
| OPTION(MSGPACK_CXX11 "Using c++11 compiler" OFF) |
| OPTION(MSGPACK_32BIT "32bit compile" OFF) |
| OPTION(MSGPACK_BOOST "Using boost libraries" OFF) |
| |
| SET(CMAKE_CXX_FLAGS "-DMSGPACK_DISABLE_LEGACY_NIL ${CMAKE_CXX_FLAGS}") |
| SET(CMAKE_CXX_FLAGS "-DMSGPACK_DISABLE_LEGACY_CONVERT ${CMAKE_CXX_FLAGS}") |
| |
| IF(APPLE) |
| SET(CMAKE_MACOSX_RPATH ON) |
| SET(CMAKE_SKIP_BUILD_RPATH FALSE) |
| SET(CMAKE_BUILD_WITH_INSTALL_RPATH FALSE) |
| SET(CMAKE_INSTALL_RPATH "${CMAKE_INSTALL_PREFIX}/lib") |
| SET(CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE) |
| LIST(FIND CMAKE_PLATFORM_IMPLICIT_LINK_DIRECTORIES "${CMAKE_INSTALL_PREFIX}/lib" isSystemDir) |
| IF("${isSystemDir}" STREQUAL "-1") |
| SET(CMAKE_INSTALL_RPATH "${CMAKE_INSTALL_PREFIX}/lib") |
| ENDIF() |
| ENDIF() |
| |
| IF(MSGPACK_CXX11) |
| IF("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU") |
| SET(CMAKE_CXX_FLAGS "-std=c++11 ${CMAKE_CXX_FLAGS}") |
| ELSEIF("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang") |
| SET(CMAKE_CXX_FLAGS "-std=c++11 ${CMAKE_CXX_FLAGS}") |
| ELSEIF("${CMAKE_CXX_COMPILER_ID}" STREQUAL "MSVC") |
| IF(CMAKE_CXX_COMPILER_VERSION VERSION_LESS 19) |
| MESSAGE(FATAL_ERROR "MSVC doesn't support C++11.") |
| ENDIF() |
| ENDIF() |
| ELSE() |
| IF("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU") |
| IF( |
| (CMAKE_CXX_COMPILER_VERSION VERSION_GREATER ${GNUCXX_STD_SUPPORT_VERSION}) |
| OR (CMAKE_CXX_COMPILER_VERSION VERSION_EQUAL ${GNUCXX_STD_SUPPORT_VERSION}) |
| ) |
| SET(CMAKE_CXX_FLAGS "-std=c++03 ${CMAKE_CXX_FLAGS}") |
| ENDIF() |
| ELSEIF("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang") |
| SET(CMAKE_CXX_FLAGS "-std=c++03 ${CMAKE_CXX_FLAGS}") |
| ELSEIF("${CMAKE_CXX_COMPILER_ID}" STREQUAL "MSVC") |
| IF(CMAKE_CXX_COMPILER_VERSION VERSION_GREATER 18) |
| SET(CMAKE_CXX_FLAGS "-DMSGPACK_USE_CPP03 ${CMAKE_CXX_FLAGS}") |
| ENDIF() |
| ENDIF() |
| ENDIF() |
| |
| IF(MSGPACK_32BIT) |
| IF("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU") |
| SET(CMAKE_CXX_FLAGS "-m32 ${CMAKE_CXX_FLAGS}") |
| SET(CMAKE_C_FLAGS "-m32 ${CMAKE_C_FLAGS}") |
| SET(CMAKE_EXE_LINKER_FLAGS "-m32 ${CMAKE_EXE_LINKER_FLAGS}") |
| ELSEIF("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang") |
| SET(CMAKE_CXX_FLAGS "-m32 ${CMAKE_CXX_FLAGS}") |
| SET(CMAKE_C_FLAGS "-m32 ${CMAKE_C_FLAGS}") |
| SET(CMAKE_EXE_LINKER_FLAGS "-m32 ${CMAKE_EXE_LINKER_FLAGS}") |
| ENDIF() |
| ENDIF() |
| |
| IF(MSGPACK_BOOST) |
| SET(CMAKE_CXX_FLAGS "-DMSGPACK_USE_BOOST ${CMAKE_CXX_FLAGS}") |
| SET(Boost_USE_STATIC_LIBS ON) # only find static libs |
| SET(Boost_USE_MULTITHREADED ON) |
| SET(Boost_USE_STATIC_RUNTIME OFF) |
| FIND_PACKAGE(Boost COMPONENTS chrono timer system) |
| INCLUDE_DIRECTORIES(${MSGPACK_BOOST_DIR}) |
| ENDIF() |
| |
| IF(MSGPACK_CHAR_SIGN) |
| SET(CMAKE_C_FLAGS "-f${MSGPACK_CHAR_SIGN}-char ${CMAKE_C_FLAGS}") |
| SET(CMAKE_CXX_FLAGS "-f${MSGPACK_CHAR_SIGN}-char ${CMAKE_CXX_FLAGS}") |
| ENDIF() |
| |
| FILE( |
| GLOB_RECURSE PREDEF_FILES |
| RELATIVE |
| ${CMAKE_CURRENT_SOURCE_DIR}/external/boost/predef/include/boost |
| ${CMAKE_CURRENT_SOURCE_DIR}/external/boost/predef/include/boost/*.h |
| ) |
| FOREACH(F ${PREDEF_FILES}) |
| SET(M "Converting ${F}") |
| MESSAGE(STATUS ${M}) |
| FILE(READ ${CMAKE_CURRENT_SOURCE_DIR}/external/boost/predef/include/boost/${F} CONTENT) |
| STRING( |
| REPLACE |
| "BOOST_" |
| "MSGPACK_" |
| CONTENT |
| ${CONTENT} |
| ) |
| STRING( |
| REPLACE |
| "boost/" |
| "msgpack/" |
| CONTENT |
| ${CONTENT} |
| ) |
| FILE(WRITE ${CMAKE_CURRENT_SOURCE_DIR}/include/msgpack/${F} ${CONTENT}) |
| ENDFOREACH() |
| |
| FILE( |
| GLOB_RECURSE PREPROCESSOR_FILES |
| RELATIVE |
| ${CMAKE_CURRENT_SOURCE_DIR}/external/boost/preprocessor/include/boost |
| ${CMAKE_CURRENT_SOURCE_DIR}/external/boost/preprocessor/include/boost/*.hpp |
| ) |
| FOREACH(F ${PREPROCESSOR_FILES}) |
| SET(M "Converting ${F}") |
| MESSAGE(STATUS ${M}) |
| FILE(READ ${CMAKE_CURRENT_SOURCE_DIR}/external/boost/preprocessor/include/boost/${F} CONTENT) |
| STRING( |
| REPLACE |
| "BOOST_" |
| "MSGPACK_" |
| CONTENT |
| ${CONTENT} |
| ) |
| STRING( |
| REPLACE |
| "boost/" |
| "msgpack/" |
| CONTENT |
| ${CONTENT} |
| ) |
| FILE(WRITE ${CMAKE_CURRENT_SOURCE_DIR}/include/msgpack/${F} ${CONTENT}) |
| ENDFOREACH() |
| |
| FIND_PACKAGE(GTest) |
| FIND_PACKAGE(ZLIB) |
| FIND_PACKAGE(Threads) |
| IF(GTEST_FOUND AND ZLIB_FOUND AND THREADS_FOUND) |
| OPTION(MSGPACK_BUILD_TESTS "Build msgpack tests." ON) |
| ENDIF() |
| OPTION(MSGPACK_BUILD_EXAMPLES "Build msgpack examples." ON) |
| |
| OPTION(MSGPACK_ENABLE_CXX "Enable C++ interface." ON) |
| OPTION(MSGPACK_ENABLE_SHARED "Build shared libaries in addition to static libraries." ON) |
| |
| INCLUDE(CheckCXXSourceCompiles) |
| CHECK_CXX_SOURCE_COMPILES(" |
| #include <bits/atomicity.h> |
| int atomic_sub(int i) { return __gnu_cxx::__exchange_and_add(&i, -1) - 1; } |
| int atomic_add(int i) { return __gnu_cxx::__exchange_and_add(&i, 1) + 1; } |
| int main(int argc, char * argv[]) |
| { |
| atomic_sub(1); |
| atomic_add(1); |
| } |
| " MSGPACK_ENABLE_GCC_CXX_ATOMIC) |
| |
| LIST( |
| APPEND |
| msgpackc_SOURCES |
| src/unpack.c |
| src/objectc.c |
| src/version.c |
| src/vrefbuffer.c |
| src/zone.c |
| ) |
| |
| LIST( |
| APPEND |
| msgpackc_HEADERS |
| include/msgpack/pack_define.h |
| include/msgpack/pack_template.h |
| include/msgpack/unpack_define.h |
| include/msgpack/unpack_template.h |
| include/msgpack/util.h |
| include/msgpack/sysdep.h |
| include/msgpack/gcc_atomic.h |
| include/msgpack.h |
| include/msgpack/sbuffer.h |
| include/msgpack/version.h |
| include/msgpack/version_master.h |
| include/msgpack/vrefbuffer.h |
| include/msgpack/zbuffer.h |
| include/msgpack/fbuffer.h |
| include/msgpack/pack.h |
| include/msgpack/unpack.h |
| include/msgpack/object.h |
| include/msgpack/zone.h |
| ) |
| |
| FILE( |
| GLOB_RECURSE PREDEF_FILES |
| RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_SOURCE_DIR}/include/msgpack/predef/*.h |
| ) |
| |
| LIST(APPEND msgpackc_HEADERS ${PREDEF_FILES}) |
| LIST(APPEND msgpackc_HEADERS include/msgpack/predef.h) |
| |
| IF(MSGPACK_ENABLE_CXX) |
| LIST( |
| APPEND |
| msgpack_HEADERS |
| include/msgpack.hpp |
| include/msgpack/adaptor/adaptor_base.hpp |
| include/msgpack/adaptor/array_ref.hpp |
| include/msgpack/adaptor/bool.hpp |
| include/msgpack/adaptor/boost/fusion.hpp |
| include/msgpack/adaptor/boost/msgpack_variant.hpp |
| include/msgpack/adaptor/boost/optional.hpp |
| include/msgpack/adaptor/boost/string_ref.hpp |
| include/msgpack/adaptor/char_ptr.hpp |
| include/msgpack/adaptor/check_container_size.hpp |
| include/msgpack/adaptor/cpp11/array.hpp |
| include/msgpack/adaptor/cpp11/array_char.hpp |
| include/msgpack/adaptor/cpp11/array_unsigned_char.hpp |
| include/msgpack/adaptor/cpp11/forward_list.hpp |
| include/msgpack/adaptor/cpp11/reference_wrapper.hpp |
| include/msgpack/adaptor/cpp11/shared_ptr.hpp |
| include/msgpack/adaptor/cpp11/tuple.hpp |
| include/msgpack/adaptor/cpp11/unique_ptr.hpp |
| include/msgpack/adaptor/cpp11/unordered_map.hpp |
| include/msgpack/adaptor/cpp11/unordered_set.hpp |
| include/msgpack/adaptor/define.hpp |
| include/msgpack/adaptor/deque.hpp |
| include/msgpack/adaptor/detail/cpp03_define_array.hpp |
| include/msgpack/adaptor/detail/cpp03_define_map.hpp |
| include/msgpack/adaptor/detail/cpp03_msgpack_tuple.hpp |
| include/msgpack/adaptor/detail/cpp11_define_array.hpp |
| include/msgpack/adaptor/detail/cpp11_define_map.hpp |
| include/msgpack/adaptor/detail/cpp11_msgpack_tuple.hpp |
| include/msgpack/adaptor/ext.hpp |
| include/msgpack/adaptor/fixint.hpp |
| include/msgpack/adaptor/float.hpp |
| include/msgpack/adaptor/int.hpp |
| include/msgpack/adaptor/list.hpp |
| include/msgpack/adaptor/map.hpp |
| include/msgpack/adaptor/msgpack_tuple.hpp |
| include/msgpack/adaptor/nil.hpp |
| include/msgpack/adaptor/pair.hpp |
| include/msgpack/adaptor/raw.hpp |
| include/msgpack/adaptor/v4raw.hpp |
| include/msgpack/adaptor/set.hpp |
| include/msgpack/adaptor/string.hpp |
| include/msgpack/adaptor/tr1/unordered_map.hpp |
| include/msgpack/adaptor/tr1/unordered_set.hpp |
| include/msgpack/adaptor/vector.hpp |
| include/msgpack/adaptor/vector_bool.hpp |
| include/msgpack/adaptor/vector_char.hpp |
| include/msgpack/adaptor/vector_unsigned_char.hpp |
| include/msgpack/cpp_config.hpp |
| include/msgpack/detail/cpp03_zone.hpp |
| include/msgpack/detail/cpp11_zone.hpp |
| include/msgpack/fbuffer.hpp |
| include/msgpack/iterator.hpp |
| include/msgpack/meta.hpp |
| include/msgpack/object.hpp |
| include/msgpack/object_fwd.hpp |
| include/msgpack/pack.hpp |
| include/msgpack/sbuffer.hpp |
| include/msgpack/type.hpp |
| include/msgpack/unpack.hpp |
| include/msgpack/version.hpp |
| include/msgpack/versioning.hpp |
| include/msgpack/vrefbuffer.hpp |
| include/msgpack/zbuffer.hpp |
| include/msgpack/zone.hpp |
| ) |
| FILE( |
| GLOB_RECURSE PREPROCESSOR_FILES |
| RELATIVE |
| ${CMAKE_CURRENT_SOURCE_DIR} |
| ${CMAKE_CURRENT_SOURCE_DIR}/include/msgpack/preprocessor/*.hpp |
| ) |
| |
| LIST(APPEND msgpackc_HEADERS ${PREPROCESSOR_FILES}) |
| LIST(APPEND msgpackc_HEADERS include/msgpack/preprocessor.hpp) |
| ENDIF() |
| |
| EXECUTE_PROCESS( |
| COMMAND |
| ${CMAKE_COMMAND} -E make_directory ${CMAKE_CURRENT_BINARY_DIR}/src/msgpack |
| ) |
| |
| CONFIGURE_FILE(msgpack.pc.in msgpack.pc @ONLY) |
| |
| INCLUDE_DIRECTORIES(./ include/ ${CMAKE_CURRENT_BINARY_DIR}/include/) |
| |
| IF(MSGPACK_ENABLE_SHARED) |
| ADD_LIBRARY(msgpackc SHARED ${msgpackc_SOURCES} ${msgpackc_HEADERS}) |
| ENDIF() |
| |
| ADD_LIBRARY(msgpackc-static STATIC ${msgpackc_SOURCES} ${msgpackc_HEADERS}) |
| |
| SET_TARGET_PROPERTIES(msgpackc-static PROPERTIES OUTPUT_NAME "msgpackc") |
| IF(MSGPACK_ENABLE_SHARED) |
| SET_TARGET_PROPERTIES(msgpackc PROPERTIES IMPORT_SUFFIX "_import.lib") |
| SET_TARGET_PROPERTIES( |
| msgpackc |
| PROPERTIES |
| SOVERSION |
| 2 |
| VERSION |
| 2.0.0 |
| ) |
| ENDIF() |
| |
| IF(MSGPACK_BUILD_TESTS) |
| ENABLE_TESTING() |
| # MEMORYCHECK_COMMAND_OPTIONS needs to place prior to CTEST_MEMORYCHECK_COMMAND |
| SET( |
| MEMORYCHECK_COMMAND_OPTIONS |
| "--leak-check=full --show-leak-kinds=definite,possible --error-exitcode=1" |
| ) |
| FIND_PROGRAM(CTEST_MEMORYCHECK_COMMAND NAMES valgrind) |
| INCLUDE(Dart) |
| ADD_SUBDIRECTORY(test) |
| ENDIF() |
| |
| IF("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang" OR "${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU") |
| IF(MSGPACK_ENABLE_SHARED) |
| SET_PROPERTY( |
| TARGET msgpackc |
| APPEND_STRING |
| PROPERTY COMPILE_FLAGS "-Wall -Wextra -Werror -g -O3 -DPIC" |
| ) |
| ENDIF() |
| SET_PROPERTY( |
| TARGET msgpackc-static |
| APPEND_STRING |
| PROPERTY COMPILE_FLAGS "-Wall -Wextra -Werror -g -O3" |
| ) |
| ENDIF() |
| |
| IF("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang") |
| SET_PROPERTY(TARGET msgpackc APPEND_STRING PROPERTY COMPILE_FLAGS " -Wno-mismatched-tags") |
| ENDIF() |
| |
| IF("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU") |
| IF( |
| (CMAKE_CXX_COMPILER_VERSION VERSION_GREATER ${GNUCXX_NO_MISMATCHED_TAGS_SUPPORT_VERSION}) |
| OR (CMAKE_CXX_COMPILER_VERSION VERSION_EQUAL ${GNUCXX_NO_MISMATCHED_TAGS_SUPPORT_VERSION}) |
| ) |
| SET_PROPERTY(TARGET msgpackc APPEND_STRING PROPERTY COMPILE_FLAGS " -Wno-mismatched-tags") |
| ENDIF() |
| ENDIF() |
| |
| IF("${CMAKE_CXX_COMPILER_ID}" STREQUAL "MSVC") |
| IF(CMAKE_CXX_FLAGS MATCHES "/W[0-4]") |
| STRING( |
| REGEX |
| REPLACE |
| "/W[0-4]" |
| "/W3 /WX" |
| CMAKE_CXX_FLAGS |
| "${CMAKE_CXX_FLAGS}" |
| ) |
| ELSE() |
| SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /W3 /WX") |
| ENDIF() |
| ENDIF() |
| |
| IF("${CMAKE_CXX_COMPILER_ID}" STREQUAL "MSVC90" OR "${CMAKE_CXX_COMPILER_ID}" STREQUAL "MSVC10") |
| SET_SOURCE_FILES_PROPERTIES(${msgpackc_SOURCES} PROPERTIES LANGUAGE CXX) |
| ENDIF() |
| |
| IF(NOT DEFINED CMAKE_INSTALL_LIBDIR) |
| SET(CMAKE_INSTALL_LIBDIR lib) |
| ENDIF() |
| |
| IF(MSGPACK_BUILD_EXAMPLES) |
| ADD_SUBDIRECTORY(example) |
| ENDIF() |
| |
| IF(MSGPACK_ENABLE_SHARED) |
| SET(MSGPACK_INSTALLTARGETS msgpackc msgpackc-static) |
| ELSE() |
| SET(MSGPACK_INSTALLTARGETS msgpackc-static) |
| ENDIF() |
| |
| INSTALL(TARGETS ${MSGPACK_INSTALLTARGETS} DESTINATION ${CMAKE_INSTALL_LIBDIR}) |
| INSTALL(DIRECTORY include DESTINATION ${CMAKE_INSTALL_PREFIX}) |
| IF(NOT MSVC) |
| INSTALL( |
| FILES ${CMAKE_CURRENT_BINARY_DIR}/msgpack.pc |
| DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig |
| ) |
| ENDIF() |
| |
| # Doxygen |
| FIND_PACKAGE(Doxygen) |
| IF(DOXYGEN_FOUND) |
| LIST( |
| APPEND |
| Doxyfile_c_CONTENT |
| COMMAND |
| ${CMAKE_COMMAND} |
| -E |
| copy |
| ${CMAKE_CURRENT_SOURCE_DIR}/Doxyfile |
| ${CMAKE_CURRENT_BINARY_DIR}/Doxyfile_c |
| COMMAND |
| ${CMAKE_COMMAND} |
| -E |
| echo |
| "FILE_PATTERNS = *.h" |
| >> |
| ${CMAKE_CURRENT_BINARY_DIR}/Doxyfile_c |
| COMMAND |
| ${CMAKE_COMMAND} |
| -E |
| echo |
| "OUTPUT_DIRECTORY = doc_c" |
| >> |
| ${CMAKE_CURRENT_BINARY_DIR}/Doxyfile_c |
| COMMAND |
| ${CMAKE_COMMAND} |
| -E |
| echo |
| "INPUT = ${CMAKE_CURRENT_SOURCE_DIR}/include" |
| >> |
| ${CMAKE_CURRENT_BINARY_DIR}/Doxyfile_c |
| COMMAND |
| ${CMAKE_COMMAND} |
| -E |
| echo |
| "EXTRACT_ALL = YES" |
| >> |
| ${CMAKE_CURRENT_BINARY_DIR}/Doxyfile_c |
| COMMAND |
| ${CMAKE_COMMAND} |
| -E |
| echo |
| "PROJECT_NAME = \"MessagePack for C\"" |
| >> |
| ${CMAKE_CURRENT_BINARY_DIR}/Doxyfile_c |
| ) |
| IF(DOXYGEN_DOT_FOUND) |
| LIST( |
| APPEND |
| Doxyfile_c_CONTENT |
| COMMAND |
| ${CMAKE_COMMAND} |
| -E |
| echo |
| "HAVE_DOT = YES" |
| >> |
| ${CMAKE_CURRENT_BINARY_DIR}/Doxyfile_c |
| ) |
| ENDIF() |
| ADD_CUSTOM_TARGET( |
| doxygen_c ${Doxyfile_c_CONTENT} |
| COMMAND ${DOXYGEN_EXECUTABLE} ${CMAKE_CURRENT_BINARY_DIR}/Doxyfile_c |
| VERBATIM |
| ) |
| LIST( |
| APPEND |
| Doxyfile_cpp_CONTENT |
| COMMAND |
| ${CMAKE_COMMAND} |
| -E |
| copy |
| ${CMAKE_CURRENT_SOURCE_DIR}/Doxyfile |
| ${CMAKE_CURRENT_BINARY_DIR}/Doxyfile_cpp |
| COMMAND |
| ${CMAKE_COMMAND} |
| -E |
| echo |
| "FILE_PATTERNS = *.hpp" |
| >> |
| ${CMAKE_CURRENT_BINARY_DIR}/Doxyfile_cpp |
| COMMAND |
| ${CMAKE_COMMAND} |
| -E |
| echo |
| "OUTPUT_DIRECTORY = doc_cpp" |
| >> |
| ${CMAKE_CURRENT_BINARY_DIR}/Doxyfile_cpp |
| COMMAND |
| ${CMAKE_COMMAND} |
| -E |
| echo |
| "INPUT = ${CMAKE_CURRENT_SOURCE_DIR}/include" |
| >> |
| ${CMAKE_CURRENT_BINARY_DIR}/Doxyfile_cpp |
| COMMAND |
| ${CMAKE_COMMAND} |
| -E |
| echo |
| "EXTRACT_ALL = YES" |
| >> |
| ${CMAKE_CURRENT_BINARY_DIR}/Doxyfile_cpp |
| ) |
| IF(DOXYGEN_DOT_FOUND) |
| LIST( |
| APPEND |
| Doxyfile_cpp_CONTENT |
| COMMAND |
| ${CMAKE_COMMAND} |
| -E |
| echo |
| "HAVE_DOT = YES" |
| >> |
| ${CMAKE_CURRENT_BINARY_DIR}/Doxyfile_cpp |
| ) |
| ENDIF() |
| ADD_CUSTOM_TARGET( |
| doxygen_cpp ${Doxyfile_cpp_CONTENT} |
| COMMAND |
| ${CMAKE_COMMAND} -E echo "PROJECT_NAME = \"MessagePack for C++\"" >> |
| ${CMAKE_CURRENT_BINARY_DIR}/Doxyfile_cpp |
| COMMAND ${DOXYGEN_EXECUTABLE} ${CMAKE_CURRENT_BINARY_DIR}/Doxyfile_cpp |
| VERBATIM |
| ) |
| ADD_CUSTOM_TARGET(doxygen DEPENDS doxygen_c doxygen_cpp) |
| ENDIF() |