CMAKE_MINIMUM_REQUIRED(VERSION 2.6) PROJECT(ttrace-extension C CXX) SET(PREFIX ${CMAKE_INSTALL_PREFIX}) SET(EXEC_PREFIX "\${prefix}") SET(VERSION_MAJOR 1) SET(VERSION "${VERSION_MAJOR}.1") INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/include) ADD_DEFINITIONS("-DPREFIX=\"${PREFIX}\"") # compiler flags SET(EXTRA_CFLAGS "${EXTRA_CFLAGS}") SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS}") SET(EXTRA_CXXFLAGS "${EXTRA_CXXFLAGS}") SET(CMAKE_SKIP_BUILD_RPATH TRUE) # Generate ttrace.h IF("${TTRACE_PROFILE}" STREQUAL "tv") SET(TTRACE_PROFILE_TV ON) ELSEIF("${TTRACE_PROFILE}" STREQUAL "wearable") SET(TTRACE_PROFILE_WERABLE ON) ELSE() SET(TTRACE_PROFILE_MOBILE ON) ENDIF() IF("${TTRACE_TIZEN_VERSION_MAJOR}" STREQUAL "3") SET(TTRACE_TIZEN_VERSION_MAJOR "3") ELSE() SET(TTRACE_TIZEN_VERSION_MAJOR "2") ENDIF() ################################################################# # Build ttrace-extension Library (Shared) # ------------------------------ SET(TTRACE_EXT "ttrace-extension") SET(SRCS_TTRACE_EXT src/ttrace-extension.c) SET(HEADERS_TTRACE_EXT ttrace-extension.h) INCLUDE(FindPkgConfig) pkg_check_modules(pkgs REQUIRED capi-base-common) #FOREACH(flag ${pkgs_CFLAGS}) # SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}") #ENDFOREACH(flag) ADD_LIBRARY(${TTRACE_EXT} SHARED ${SRCS_TTRACE_EXT}) SET_TARGET_PROPERTIES(${TTRACE_EXT} PROPERTIES SOVERSION ${VERSION_MAJOR}) SET_TARGET_PROPERTIES(${TTRACE_EXT} PROPERTIES VERSION ${VERSION}) #SET_TARGET_PROPERTIES(${TTRACE_EXT} PROPERTIES COMPILE_FLAGS ${EXTRA_CFLAGS}) TARGET_LINK_LIBRARIES(${TTRACE_EXT} ${pkgs_LDFLAGS} "-ldl") CONFIGURE_FILE(${TTRACE_EXT}.pc.in ${TTRACE_EXT}.pc @ONLY) INSTALL(TARGETS ${TTRACE_EXT} DESTINATION ${LIBDIR} COMPONENT RuntimeLibraries) INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/${TTRACE_EXT}.pc DESTINATION ${LIBDIR}/pkgconfig) ################################################################# # Build ttrace Library (Static) # ------------------------------ SET(TTRACE_EXT_STATIC "ttrace-extension-static") ADD_LIBRARY(${TTRACE_EXT_STATIC} STATIC ${SRCS_TTRACE_EXT}) SET_TARGET_PROPERTIES(${TTRACE_EXT_STATIC} PROPERTIES COMPILE_FLAGS "${EXTRA_CFLAGS} -fpic") SET_TARGET_PROPERTIES(${TTRACE_EXT_STATIC} PROPERTIES OUTPUT_NAME ttrace-extension) CONFIGURE_FILE(${TTRACE_EXT_STATIC}.pc.in ${TTRACE_EXT_STATIC}.pc @ONLY) INSTALL(TARGETS ${TTRACE_EXT_STATIC} DESTINATION ${LIBDIR}) INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/${TTRACE_EXT_STATIC}.pc DESTINATION ${LIBDIR}/pkgconfig) TARGET_LINK_LIBRARIES(${TTRACE_EXT_STATIC} ${pkg_ttrace_ext_LDFLAGS} "-ldl") FOREACH(hfile ${HEADERS_TTRACE_EXT}) INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/include/${hfile} DESTINATION ${INCLUDEDIR}) ENDFOREACH(hfile)