1 CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
2 PROJECT(vmodem-plugin C)
5 SET(PREFIX ${CMAKE_INSTALL_PREFIX})
6 SET(EXEC_PREFIX "\${prefix}")
7 SET(LIBDIR ${LIB_INSTALL_DIR})
8 SET(INCLUDEDIR "\${prefix}/include")
9 SET(PKGCONFIGDIR "${PREFIX}/lib/pkgconfig" CACHE PATH PKGCONFIGDIR)
10 SET(CMAKE_INSTALL_PREFIX "${PREFIX}")
12 # Set required packages
13 INCLUDE(FindPkgConfig)
14 pkg_check_modules(pkgs REQUIRED glib-2.0 tcore dlog)
16 FOREACH(flag ${pkgs_CFLAGS})
17 SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}")
20 INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/include/)
22 SET(ADDITIONAL_CFLAGS "-Wall -Wno-array-bounds -Wno-empty-body -Wno-ignored-qualifiers -Wshadow -Wwrite-strings -Wswitch-default -Wno-unused-but-set-parameter -Wno-unused-but-set-variable -Wcast-qual -Wno-implicit-fallthrough")
23 SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS}")
24 SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Werror -Wextra -fvisibility=hidden -fPIC")
25 SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-unused-parameter -Wno-missing-field-initializers -Wdeclaration-after-statement -Wmissing-declarations -Wredundant-decls -Wcast-align")
26 SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${ADDITIONAL_CFLAGS}")
28 ADD_DEFINITIONS("-DFEATURE_TLOG_DEBUG")
29 ADD_DEFINITIONS("-DTCORE_LOG_TAG=\"VMODEM\"")
30 ADD_DEFINITIONS("-DPLUGIN_VERSION=${VERSION}")
31 ADD_DEFINITIONS("-DEXPORT_API=__attribute__((visibility(\"default\")))")
33 MESSAGE(${CMAKE_C_FLAGS})
34 MESSAGE(${pkgs_LDFLAGS})
45 ADD_LIBRARY(vmodem-plugin SHARED ${SRCS})
46 TARGET_LINK_LIBRARIES(vmodem-plugin ${pkgs_LDFLAGS})
47 SET_TARGET_PROPERTIES(vmodem-plugin PROPERTIES PREFIX "" OUTPUT_NAME vmodem-plugin)
51 INSTALL(TARGETS vmodem-plugin
52 LIBRARY DESTINATION ${LIBDIR}/telephony/plugins)