2 CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
6 # if you don't want the full compiler output, remove the following line
7 SET(CMAKE_VERBOSE_MAKEFILE ON)
9 # add definitions, compiler switches, etc.
10 ADD_DEFINITIONS(-Wall -O2)
12 INCLUDE_DIRECTORIES ( src )
14 # list all source files here
15 ADD_EXECUTABLE( bin/bpdyndnsd src/main.cpp src/util.cpp src/config.cpp src/logger.cpp src/service.cpp src/httphelper.cpp src/ip_addr_helper.cpp src/net_helper.cpp src/serializeservicecontainer.cpp src/serviceholder.cpp src/tcp_service.cpp src/updater.cpp src/service_dhs.cpp src/service_dyndns.cpp src/service_dyns.cpp src/service_easydns.cpp src/service_gnudip.cpp src/service_ods.cpp src/service_tzo.cpp src/service_zoneedit.cpp )
17 # find boost_program_options and link to bpdyndnsd
18 FIND_LIBRARY( BOOST_PROGRAM_OPTIONS libboost_program_options.so )
19 IF(BOOST_PROGRAM_OPTIONS)
20 MESSAGE(STATUS "Found boost/program_options as ${BOOST_PROGRAM_OPTIONS}")
21 TARGET_LINK_LIBRARIES( bin/bpdyndnsd ${BOOST_PROGRAM_OPTIONS})
22 ELSE(BOOST_PROGRAM_OPTIONS)
23 MESSAGE(FATAL_ERROR "Could not find boost/program_options")
24 ENDIF(BOOST_PROGRAM_OPTIONS)
26 # find boost_filesystem and link to bpdyndnsd
27 FIND_LIBRARY( BOOST_FILESYSTEM libboost_filesystem.so )
29 MESSAGE(STATUS "Found boost/filesystem as ${BOOST_FILESYSTEM}")
30 TARGET_LINK_LIBRARIES( bin/bpdyndnsd ${BOOST_FILESYSTEM})
31 ELSE(BOOST_FILESYSTEM)
32 MESSAGE(FATAL_ERROR "Could not find boost/filesystem")
33 ENDIF(BOOST_FILESYSTEM)
35 # find boost_regex and link to bpdyndnsd
36 FIND_LIBRARY( BOOST_REGEX libboost_regex.so )
38 MESSAGE(STATUS "Found boost/regex as ${BOOST_REGEX}")
39 TARGET_LINK_LIBRARIES( bin/bpdyndnsd ${BOOST_REGEX})
41 MESSAGE(FATAL_ERROR "Could not find boost/regex")
44 # find boost_serialization and link to bpdyndnsd
45 FIND_LIBRARY( BOOST_SERIALIZATION libboost_serialization.so )
46 IF(BOOST_SERIALIZATION)
47 MESSAGE(STATUS "Found boost/serialization as ${BOOST_SERIALIZATION}")
48 TARGET_LINK_LIBRARIES( bin/bpdyndnsd ${BOOST_SERIALIZATION})
49 ELSE(BOOST_SERIALIZATION)
50 MESSAGE(FATAL_ERROR "Could not find boost/serialization")
51 ENDIF(BOOST_SERIALIZATION)
53 # find curl and link to bpdyndnsd
54 FIND_LIBRARY( CURL libcurl.so )
56 MESSAGE(STATUS "Found CURL as ${CURL}")
57 TARGET_LINK_LIBRARIES( bin/bpdyndnsd ${CURL})
59 MESSAGE(FATAL_ERROR "Could not find CURL")
62 # find libcrypto and link to bpdyndnsd
63 FIND_LIBRARY( CRYPTO libcrypto.so )
65 MESSAGE(STATUS "Found libcrypto as ${CRYPTO}")
66 TARGET_LINK_LIBRARIES( bin/bpdyndnsd ${CRYPTO})
68 MESSAGE(FATAL_ERROR "Could not find libcrypto")