CMAKE_MINIMUM_REQUIRED(VERSION 2.6) SET (this_target osp-messaging) SET(LIBRARY_OUTPUT_PATH ${CMAKE_SOURCE_DIR}/cmake_build_tmp/output) INCLUDE_DIRECTORIES( inc src src/inc /usr/include/appfw /usr/include/glib-2.0 /usr/lib/glib-2.0/include /usr/include/osp /usr/include/osp/app /usr/include/osp/base /usr/include/osp/security /usr/include/osp/system /usr/include/msg-service /usr/include/dbus-1.0 /usr/lib/dbus-1.0/include /usr/include/email-service /usr/include/libxml2 ) SET (${this_target}_SOURCE_FILES src/FMsgEmailManager.cpp src/FMsgEmailMessage.cpp src/FMsgEmailAttachment.cpp src/FMsgDetailedEmailMessage.cpp src/FMsgMmsManager.cpp src/FMsgMmsMessage.cpp src/FMsgPushManager.cpp src/FMsgPushMessage.cpp src/FMsgWapPushManager.cpp src/FMsgWapPushMessage.cpp src/FMsgRecipientList.cpp src/FMsgSmsManager.cpp src/FMsgSmsMessage.cpp src/FMsgCbsChannel.cpp src/FMsgCbsMessage.cpp src/FMsgEtwsPrimaryNotification.cpp src/FMsg_EmailEvent.cpp src/FMsg_EmailEventArg.cpp src/FMsg_EmailManagerImpl.cpp src/FMsg_EmailMessageImpl.cpp src/FMsg_EmailAttachmentImpl.cpp src/FMsg_DetailedEmailMessageImpl.cpp src/FMsg_MmsEvent.cpp src/FMsg_MmsEventArg.cpp src/FMsg_MmsManagerImpl.cpp src/FMsg_MmsMessageImpl.cpp src/FMsg_PushEvent.cpp src/FMsg_PushEventArg.cpp src/FMsg_PushManagerImpl.cpp src/FMsg_PushMessageImpl.cpp src/FMsg_PushRequest.cpp src/FMsg_PushSendListener.cpp src/FMsg_PushUrlRequestListener.cpp src/FMsg_WapPushManagerImpl.cpp src/FMsg_WapPushMessageImpl.cpp src/FMsg_ComposerEvent.cpp src/FMsg_ComposerEventArg.cpp src/FMsg_RecipientListImpl.cpp src/FMsg_SmsEvent.cpp src/FMsg_SmsEventArg.cpp src/FMsg_SmsManagerImpl.cpp src/FMsg_SmsMessageImpl.cpp src/FMsg_CbsChannelImpl.cpp src/FMsg_CbsMessageImpl.cpp src/FMsg_EtwsPrimaryNotificationImpl.cpp src/FMsg_MsgUtil.cpp src/FMsg_SmsMmsCallbackHandler.cpp ) SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} -Wall" ) ## SET C COMPILER FLAGS SET(CMAKE_C_FLAGS "${OSP_DEBUG_FLAGS} ${OSP_OPT_FLAGS} ${CMAKE_C_FLAGS} ${EXTRA_CFLAGS} ${OSP_COMPILER_FLAGS}") ## SET CPP COMPILER FLAGS SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fvisibility=hidden") SET(CMAKE_CXX_FLAGS "${OSP_DEBUG_FLAGS} ${OSP_OPT_FLAGS} ${CMAKE_CXX_FLAGS} ${EXTRA_CFLAGS} ${OSP_COMPILER_FLAGS}") ## Create Library ADD_LIBRARY (${this_target} SHARED ${${this_target}_SOURCE_FILES}) ## SET LINKER FLAGS SET(CMAKE_SHARED_LINKER_FLAGS -Wl,--no-undefined) TARGET_LINK_LIBRARIES(${this_target} "-lchromium" ) TARGET_LINK_LIBRARIES(${this_target} "-L/usr/lib/osp -losp-appfw -losp-json -losp-net -losp-shell-core" ) TARGET_LINK_LIBRARIES(${this_target} "-lcapi-appfw-application" ) TARGET_LINK_LIBRARIES(${this_target} "-ldbus-1" ) TARGET_LINK_LIBRARIES(${this_target} "-ldbus-glib-1" ) TARGET_LINK_LIBRARIES(${this_target} "-lemail-api" ) TARGET_LINK_LIBRARIES(${this_target} "-lmsg_mapi" ) TARGET_LINK_LIBRARIES(${this_target} "-lpush" ) SET_TARGET_PROPERTIES(${this_target} PROPERTIES VERSION ${FULLVER} SOVERSION ${MAJORVER} CLEAN_DIRECT_OUTPUT 1 ) ADD_CUSTOM_COMMAND(TARGET ${this_target} POST_BUILD COMMAND ${CMAKE_COMMAND} -E copy ${LIBRARY_OUTPUT_PATH}/${CMAKE_SHARED_LIBRARY_PREFIX}${this_target}${CMAKE_SHARED_LIBRARY_SUFFIX} ${LIBRARY_OUTPUT_PATH}/debug/${CMAKE_SHARED_LIBRARY_PREFIX}${this_target}${CMAKE_SHARED_LIBRARY_SUFFIX}.${FULLVER} COMMAND ${CMAKE_COMMAND} -E create_symlink ${CMAKE_SHARED_LIBRARY_PREFIX}${this_target}${CMAKE_SHARED_LIBRARY_SUFFIX}.${FULLVER} ${LIBRARY_OUTPUT_PATH}/debug/${CMAKE_SHARED_LIBRARY_PREFIX}${this_target}${CMAKE_SHARED_LIBRARY_SUFFIX}.${MAJORVER} COMMAND ${CMAKE_STRIP} --strip-unneeded ${LIBRARY_OUTPUT_PATH}/${CMAKE_SHARED_LIBRARY_PREFIX}${this_target}${CMAKE_SHARED_LIBRARY_SUFFIX} COMMENT "strip ${this_target}" ) INSTALL(DIRECTORY ${LIBRARY_OUTPUT_PATH}/ DESTINATION lib/osp FILES_MATCHING PATTERN "*.so*" PERMISSIONS OWNER_EXECUTE OWNER_WRITE OWNER_READ GROUP_EXECUTE GROUP_READ WORLD_EXECUTE WORLD_READ) INSTALL(DIRECTORY ${LIBRARY_OUTPUT_PATH}/debug/ DESTINATION lib/osp/debug FILES_MATCHING PATTERN "*.so*" PERMISSIONS OWNER_EXECUTE OWNER_WRITE OWNER_READ GROUP_EXECUTE GROUP_READ WORLD_EXECUTE WORLD_READ) INSTALL(DIRECTORY ${CMAKE_SOURCE_DIR}/inc/ DESTINATION include/osp FILES_MATCHING PATTERN "*.h") INSTALL(DIRECTORY ${CMAKE_SOURCE_DIR}/src/inc/ DESTINATION include/osp/messaging FILES_MATCHING PATTERN "*.h") # pkgconfig file CONFIGURE_FILE(${this_target}.pc.in ${CMAKE_SOURCE_DIR}/${this_target}.pc @ONLY) INSTALL(FILES ${CMAKE_SOURCE_DIR}/${this_target}.pc DESTINATION lib/pkgconfig)