Mercurial > irccd
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 |
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() |