annotate extern/vera/src/CMakeLists.txt @ 769:565a1cef4405

Plugin links: add / if path is empty
author David Demelier <markand@malikania.fr>
date Wed, 24 Oct 2018 21:15:00 +0200
parents a7c0eb100760
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
548
a7c0eb100760 CMake: import vera++ 1.3.0, closes #729
David Demelier <markand@malikania.fr>
parents:
diff changeset
1 find_package(TCL) # REQUIRED)
a7c0eb100760 CMake: import vera++ 1.3.0, closes #729
David Demelier <markand@malikania.fr>
parents:
diff changeset
2 # don't use find_package's REQUIRED parameter to avoid requiring tk
a7c0eb100760 CMake: import vera++ 1.3.0, closes #729
David Demelier <markand@malikania.fr>
parents:
diff changeset
3 if(NOT TCL_FOUND)
a7c0eb100760 CMake: import vera++ 1.3.0, closes #729
David Demelier <markand@malikania.fr>
parents:
diff changeset
4 message(FATAL_ERROR "TCL was not found.")
a7c0eb100760 CMake: import vera++ 1.3.0, closes #729
David Demelier <markand@malikania.fr>
parents:
diff changeset
5 endif()
a7c0eb100760 CMake: import vera++ 1.3.0, closes #729
David Demelier <markand@malikania.fr>
parents:
diff changeset
6 include_directories(SYSTEM ${TCL_INCLUDE_PATH})
a7c0eb100760 CMake: import vera++ 1.3.0, closes #729
David Demelier <markand@malikania.fr>
parents:
diff changeset
7 link_directories(${TCL_LIBRARY_DIRS})
a7c0eb100760 CMake: import vera++ 1.3.0, closes #729
David Demelier <markand@malikania.fr>
parents:
diff changeset
8
a7c0eb100760 CMake: import vera++ 1.3.0, closes #729
David Demelier <markand@malikania.fr>
parents:
diff changeset
9 set(boostLibs filesystem system program_options regex wave)
a7c0eb100760 CMake: import vera++ 1.3.0, closes #729
David Demelier <markand@malikania.fr>
parents:
diff changeset
10
a7c0eb100760 CMake: import vera++ 1.3.0, closes #729
David Demelier <markand@malikania.fr>
parents:
diff changeset
11 if(WIN32)
a7c0eb100760 CMake: import vera++ 1.3.0, closes #729
David Demelier <markand@malikania.fr>
parents:
diff changeset
12 # use boost static libs to avoid LNK2019 errors
a7c0eb100760 CMake: import vera++ 1.3.0, closes #729
David Demelier <markand@malikania.fr>
parents:
diff changeset
13 # feel free to contribute a better fix!
a7c0eb100760 CMake: import vera++ 1.3.0, closes #729
David Demelier <markand@malikania.fr>
parents:
diff changeset
14 set(Boost_USE_STATIC_LIBS ON)
a7c0eb100760 CMake: import vera++ 1.3.0, closes #729
David Demelier <markand@malikania.fr>
parents:
diff changeset
15 else()
a7c0eb100760 CMake: import vera++ 1.3.0, closes #729
David Demelier <markand@malikania.fr>
parents:
diff changeset
16 # expose the Boost_USE_STATIC_LIBS option to ease the manual creation of
a7c0eb100760 CMake: import vera++ 1.3.0, closes #729
David Demelier <markand@malikania.fr>
parents:
diff changeset
17 # packages with cpack
a7c0eb100760 CMake: import vera++ 1.3.0, closes #729
David Demelier <markand@malikania.fr>
parents:
diff changeset
18 option(Boost_USE_STATIC_LIBS "Use Boost static libraries" OFF)
a7c0eb100760 CMake: import vera++ 1.3.0, closes #729
David Demelier <markand@malikania.fr>
parents:
diff changeset
19 endif()
a7c0eb100760 CMake: import vera++ 1.3.0, closes #729
David Demelier <markand@malikania.fr>
parents:
diff changeset
20 find_package(Boost COMPONENTS ${boostLibs} REQUIRED)
a7c0eb100760 CMake: import vera++ 1.3.0, closes #729
David Demelier <markand@malikania.fr>
parents:
diff changeset
21 include_directories(SYSTEM ${Boost_INCLUDE_DIRS})
a7c0eb100760 CMake: import vera++ 1.3.0, closes #729
David Demelier <markand@malikania.fr>
parents:
diff changeset
22 link_directories(${Boost_LIBRARY_DIRS})
a7c0eb100760 CMake: import vera++ 1.3.0, closes #729
David Demelier <markand@malikania.fr>
parents:
diff changeset
23 # hide Boost_DIR option that doesn't seem to be set by FindBoost
a7c0eb100760 CMake: import vera++ 1.3.0, closes #729
David Demelier <markand@malikania.fr>
parents:
diff changeset
24 mark_as_advanced(Boost_DIR)
a7c0eb100760 CMake: import vera++ 1.3.0, closes #729
David Demelier <markand@malikania.fr>
parents:
diff changeset
25 # no target
a7c0eb100760 CMake: import vera++ 1.3.0, closes #729
David Demelier <markand@malikania.fr>
parents:
diff changeset
26 set(Boost_TARGET)
a7c0eb100760 CMake: import vera++ 1.3.0, closes #729
David Demelier <markand@malikania.fr>
parents:
diff changeset
27
a7c0eb100760 CMake: import vera++ 1.3.0, closes #729
David Demelier <markand@malikania.fr>
parents:
diff changeset
28 if(MSVC)
a7c0eb100760 CMake: import vera++ 1.3.0, closes #729
David Demelier <markand@malikania.fr>
parents:
diff changeset
29 # hide the warning generated by the usage of getenv()
a7c0eb100760 CMake: import vera++ 1.3.0, closes #729
David Demelier <markand@malikania.fr>
parents:
diff changeset
30 add_definitions(-D_CRT_SECURE_NO_WARNINGS)
a7c0eb100760 CMake: import vera++ 1.3.0, closes #729
David Demelier <markand@malikania.fr>
parents:
diff changeset
31 add_definitions(-D_SCL_SECURE_NO_WARNINGS)
a7c0eb100760 CMake: import vera++ 1.3.0, closes #729
David Demelier <markand@malikania.fr>
parents:
diff changeset
32 endif(MSVC)
a7c0eb100760 CMake: import vera++ 1.3.0, closes #729
David Demelier <markand@malikania.fr>
parents:
diff changeset
33
a7c0eb100760 CMake: import vera++ 1.3.0, closes #729
David Demelier <markand@malikania.fr>
parents:
diff changeset
34 configure_file(config.h.in config.h @ONLY)
a7c0eb100760 CMake: import vera++ 1.3.0, closes #729
David Demelier <markand@malikania.fr>
parents:
diff changeset
35 include_directories(${CMAKE_CURRENT_BINARY_DIR})
a7c0eb100760 CMake: import vera++ 1.3.0, closes #729
David Demelier <markand@malikania.fr>
parents:
diff changeset
36
a7c0eb100760 CMake: import vera++ 1.3.0, closes #729
David Demelier <markand@malikania.fr>
parents:
diff changeset
37 file(GLOB_RECURSE srcs *.cpp)
a7c0eb100760 CMake: import vera++ 1.3.0, closes #729
David Demelier <markand@malikania.fr>
parents:
diff changeset
38 add_executable(vera ${srcs})
a7c0eb100760 CMake: import vera++ 1.3.0, closes #729
David Demelier <markand@malikania.fr>
parents:
diff changeset
39 set_target_properties(vera PROPERTIES OUTPUT_NAME vera++)
a7c0eb100760 CMake: import vera++ 1.3.0, closes #729
David Demelier <markand@malikania.fr>
parents:
diff changeset
40 target_link_libraries(vera
a7c0eb100760 CMake: import vera++ 1.3.0, closes #729
David Demelier <markand@malikania.fr>
parents:
diff changeset
41 ${TCL_LIBRARY}
a7c0eb100760 CMake: import vera++ 1.3.0, closes #729
David Demelier <markand@malikania.fr>
parents:
diff changeset
42 ${Boost_LIBRARIES})
a7c0eb100760 CMake: import vera++ 1.3.0, closes #729
David Demelier <markand@malikania.fr>
parents:
diff changeset
43 if("${CMAKE_SYSTEM_NAME}" STREQUAL "Linux")
a7c0eb100760 CMake: import vera++ 1.3.0, closes #729
David Demelier <markand@malikania.fr>
parents:
diff changeset
44 # keep it at the end to be able to build on ubuntu
a7c0eb100760 CMake: import vera++ 1.3.0, closes #729
David Demelier <markand@malikania.fr>
parents:
diff changeset
45 target_link_libraries(vera dl)
a7c0eb100760 CMake: import vera++ 1.3.0, closes #729
David Demelier <markand@malikania.fr>
parents:
diff changeset
46 endif()