CMAKE_MINIMUM_REQUIRED(VERSION 2.6) SET (this_target osp-nfc) INCLUDE(FindPkgConfig) pkg_check_modules(${this_target} REQUIRED glib-2.0 capi-network-nfc osp-net osp-appfw chromium) SET(LIBRARY_OUTPUT_PATH ${CMAKE_SOURCE_DIR}/cmake_build_tmp/output) INCLUDE_DIRECTORIES( inc src src/inc ${${this_target}_INCLUDE_DIRS} ) SET (${this_target}_SOURCE_FILES src/FNetNfcNdefMessage.cpp src/FNetNfcNdefRecord.cpp src/FNetNfcNdefRecordType.cpp src/FNetNfcNdefTagConnection.cpp src/FNetNfcNfcManager.cpp src/FNetNfcNfcTag.cpp src/FNetNfcTagConnection.cpp src/FNetNfcNdefPushManager.cpp src/FNetNfc_NdefMessageDiscoveryEvent.cpp src/FNetNfc_NdefMessageDiscoveryEventArg.cpp src/FNetNfc_NdefMessageImpl.cpp src/FNetNfc_NdefMessageUtil.cpp src/FNetNfc_NdefRecordImpl.cpp src/FNetNfc_NdefRecordTypeImpl.cpp src/FNetNfc_NfcIpcMessages.cpp src/FNetNfc_NfcIpcProxy.cpp src/FNetNfc_NfcManagerEvent.cpp src/FNetNfc_NfcManagerEventArg.cpp src/FNetNfc_NfcManagerImpl.cpp src/FNetNfc_NfcSystemAdapter.cpp src/FNetNfc_NfcTagDiscoveryEvent.cpp src/FNetNfc_NfcTagDiscoveryEventArg.cpp src/FNetNfc_NfcTagImpl.cpp src/FNetNfc_TagConnectionEvent.cpp src/FNetNfc_TagConnectionEventArg.cpp src/FNetNfc_TagConnectionImpl.cpp src/FNetNfc_NdefPushManagerImpl.cpp src/FNetNfc_NfcDeviceDiscoveryEvent.cpp src/FNetNfc_NfcDeviceDiscoveryEventArg.cpp src/FNetNfc_NdefPushManagerEventArg.cpp src/FNetNfc_NdefPushManagerEvent.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} "-lpthread" ) TARGET_LINK_LIBRARIES(${this_target} ${${this_target}_LDFLAGS} ${${this_target}_LIBRARIES}) SET_TARGET_PROPERTIES(${this_target} PROPERTIES VERSION ${FULLVER} SOVERSION ${MAJORVER} CLEAN_DIRECT_OUTPUT 1 ) 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 ${CMAKE_SOURCE_DIR}/inc/ DESTINATION include/osp FILES_MATCHING PATTERN "*.h") INSTALL(DIRECTORY ${CMAKE_SOURCE_DIR}/src/inc/ DESTINATION include/osp/net FILES_MATCHING PATTERN "*.h") SET(PC_NAME ${this_target}) SET(VERSION ${FULLVER}) SET(PC_LDFLAGS -l${this_target}) # pkgconfig file SET(PC_LDFLAGS -l${this_target}) CONFIGURE_FILE(${this_target}.pc.in ${CMAKE_SOURCE_DIR}/${this_target}.pc @ONLY) INSTALL(FILES ${CMAKE_SOURCE_DIR}/${this_target}.pc DESTINATION lib/pkgconfig)