add new protocol variation "gnudip-fullhostname", used by provider dynu.com
[bpdyndnsd] / src / CMakeLists.txt
1 # Find Boost
2 find_package(Boost COMPONENTS program_options filesystem regex serialization system REQUIRED)
3
4 # Find CURL
5 find_package(CURL)
6
7 # Find OpenSSL (libcrypto)
8 find_package(OpenSSL)
9
10 # Includes
11 include_directories(    ${CMAKE_CURRENT_BINARY_DIR}
12                         ${CMAKE_CURRENT_SOURCE_DIR}
13                                    ${CURL_INCLUDES}
14                                    ${OPENSSL_INCLUDES}
15                                 )
16
17 configure_file ("${PROJECT_SOURCE_DIR}/src/version_info.h.in" "${PROJECT_BINARY_DIR}/src/version_info.h")
18
19 # C++ sources
20 set(cpp_sources
21         config.cpp
22         httphelper.cpp
23         ip_addr_helper.cpp
24         logger.cpp
25         main.cpp
26         net_helper.cpp
27         serializeservicecontainer.cpp
28         service.cpp
29         service_dhs.cpp
30         service_dyndns.cpp
31         service_dyns.cpp
32         service_easydns.cpp
33         service_gnudip.cpp
34         service_gnudip_fullhostname.cpp
35         serviceholder.cpp
36         service_ods.cpp
37         service_tzo.cpp
38         service_zoneedit.cpp
39         tcp_service.cpp
40         updater.cpp
41         util.cpp
42     )
43
44 # C++ headers
45 set(cpp_headers
46         config.hpp
47         httphelper.hpp
48         ip_addr_helper.hpp
49         ip_service.hpp
50         logger.hpp
51         net_helper.hpp
52         serializeservicecontainer.hpp
53         service_dhs.hpp
54         service_dyndns.hpp
55         service_dyns.hpp
56         service_easydns.hpp
57         service_gnudip.hpp
58         service_gnudip_fullhostname.hpp
59         service.hpp
60         serviceholder.hpp
61         service_ods.hpp
62         service_tzo.hpp
63         service_zoneedit.hpp
64         tcp_service.hpp
65         updater.hpp
66         util.hpp
67         version_info.h
68     )
69
70 add_executable(bpdyndnsd ${cpp_sources} ${cpp_headers})
71
72 # Dependencies
73 target_link_libraries(bpdyndnsd ${Boost_LIBRARIES} ${CURL_LIBRARIES} ${OPENSSL_LIBRARIES})
74
75 # Install
76 install(TARGETS bpdyndnsd DESTINATION bin)