CMAKE_MINIMUM_REQUIRED(VERSION 2.6) SET (this_target osp-vision) SET(LIBRARY_OUTPUT_PATH ${CMAKE_SOURCE_DIR}/cmake_build_tmp/output) INCLUDE_DIRECTORIES( inc src /usr/include/osp /usr/include/media /usr/include/osp/media ) SET (${this_target}_SOURCE_FILES src/FUixVision_ImageRecognizerImpl.cpp src/FUixVision_QrCodeObjectImpl.h src/FUixVision_ImageFeatureInfoImpl.cpp src/FUixVision_ImageFeatureManagerImpl.cpp src/FUixVisionImageRecognizer.cpp src/FUixVision_QrCodeGeneratorImpl.h src/FUixVision_QrCodeRecognizerImpl.cpp src/FUixVisionQrCodeRecognizer.cpp src/FUixVisionImageObject.cpp src/FUixVisionQrCodeGenerator.cpp src/FUixVision_QrCodeObjectImpl.cpp src/FUixVisionImageFeatureManager.cpp src/FUixVision_QrCodeRecognizerImpl.h src/FUixVision_ImageObjectImpl.cpp src/FUixVisionImageFeatureInfo.cpp src/FUixVision_ImageFeatureManagerImpl.h src/FUixVision_ImageFeatureInfoImpl.h src/FUixVision_ImageObjectImpl.h src/FUixVision_ImageRecognizerImpl.h src/FUixVisionQrCodeObject.cpp src/FUixVision_QrCodeGeneratorImpl.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 "${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}) IF("${ARCH}" MATCHES "arm") ADD_CUSTOM_COMMAND(TARGET ${this_target} PRE_BUILD COMMAND cp -f ${CMAKE_SOURCE_DIR}/lib/armv7-a/libarengine.so ${LIBRARY_OUTPUT_PATH}) # COMMAND ln -s -f libarengine.so ${LIBRARY_OUTPUT_PATH}/libarengine.so) ELSEIF("${ARCH}" MATCHES "x86") ADD_CUSTOM_COMMAND(TARGET ${this_target} PRE_BUILD COMMAND cp -f ${CMAKE_SOURCE_DIR}/lib/x86/libarengine.so ${LIBRARY_OUTPUT_PATH}) # COMMAND ln -s -f libarengine.so ${LIBRARY_OUTPUT_PATH}/libarengine.so) ENDIF("${ARCH}" MATCHES "arm") ## SET DEPENDENCY FLAGS ADD_DEPENDENCIES(${this_target} osp-appfw) ADD_DEPENDENCIES(${this_target} osp-uifw) ADD_DEPENDENCIES(${this_target} osp-media) ADD_DEPENDENCIES(${this_target} osp-image) ADD_DEPENDENCIES(${this_target} osp-image-core) ## SET LINKER FLAGS SET(CMAKE_SHARED_LINKER_FLAGS -Wl,--no-undefined) TARGET_LINK_LIBRARIES(${this_target} "-L/usr/lib/osp -losp-appfw" ) TARGET_LINK_LIBRARIES(${this_target} "-losp-uifw" ) TARGET_LINK_LIBRARIES(${this_target} "-losp-media" ) TARGET_LINK_LIBRARIES(${this_target} "-losp-image" ) TARGET_LINK_LIBRARIES(${this_target} "-losp-image-core" ) TARGET_LINK_LIBRARIES(${this_target} "-L${LIBRARY_OUTPUT_PATH} -larengine" ) 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(FILES ${LIBRARY_OUTPUT_PATH}/libarengine.so DESTINATION lib/osp) INSTALL(DIRECTORY ${CMAKE_SOURCE_DIR}/inc/ DESTINATION include/osp FILES_MATCHING PATTERN "*.h") INSTALL(DIRECTORY ${CMAKE_SOURCE_DIR}/src/ DESTINATION include/osp/vision 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)