[content] Fix doxygen for deprecated api
[platform/framework/native/content.git] / CMakeLists.txt
1 CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
2
3 SET (this_target osp-content)
4
5 SET(LIBRARY_OUTPUT_PATH ${CMAKE_SOURCE_DIR}/cmake_build_tmp/output)
6
7 INCLUDE_DIRECTORIES(
8         inc
9         src
10         src/inc
11         /usr/include/appfw
12         /usr/include/curl
13         /usr/include/glib-2.0 
14         /usr/lib/glib-2.0/include
15         /usr/include/content
16         /usr/include/media
17         /usr/include/media-content
18         /usr/include/osp
19         /usr/include/osp/base   
20         /usr/include/osp/io
21         /usr/include/osp/media
22         /usr/include/osp/graphics
23         /usr/include/osp/net
24         /usr/include/osp/system
25         /usr/include/osp/app
26         /usr/include/osp/security
27         /usr/include/web
28         )
29
30 SET (${this_target}_SOURCE_FILES
31         src/FCnt_AudioMetadataImpl.cpp
32         src/FCnt_ContentManagerImpl.cpp
33         src/FCnt_ContentManagerUtilImpl.cpp
34         src/FCnt_ContentUtility.cpp
35         src/FCnt_ContentSearchImpl.cpp
36         src/FCnt_ContentDirectoryImpl.cpp
37         src/FCnt_PlayListImpl.cpp
38         src/FCnt_PlayListManagerImpl.cpp
39         src/FCnt_ContentTransferImpl.cpp
40         src/FCnt_ImageMetadataImpl.cpp
41         src/FCnt_VideoMetadataImpl.cpp
42         src/FCnt_ContentTransferEvent.cpp
43         src/FCnt_ContentDownloadHandler.cpp
44         src/FCnt_ContentDownloadListener.cpp
45         src/FCnt_ContentDownloadUserData.cpp
46         src/FCnt_DownloadManagerImpl.cpp
47         src/FCnt_DownloadRequestImpl.cpp
48         src/FCntAudioContentInfo.cpp
49         src/FCntAudioMetadata.cpp
50         src/FCntContentInfo.cpp
51         src/FCntContentManager.cpp
52         src/FCntContentManagerUtil.cpp
53         src/FCntContentSearch.cpp
54         src/FCntContentDirectory.cpp
55         src/FCntPlayList.cpp
56         src/FCntPlayListManager.cpp
57         src/FCntContentSearchResult.cpp
58         src/FCntContentTransfer.cpp
59         src/FCntContentTransferInfo.cpp
60         src/FCntImageContentInfo.cpp
61         src/FCntImageMetadata.cpp
62         src/FCntOtherContentInfo.cpp
63         src/FCntVideoContentInfo.cpp
64         src/FCntVideoMetadata.cpp
65         src/FCntDownloadManager.cpp
66         src/FCntDownloadRequest.cpp
67 )
68
69 SET(EXTRA_CFLAGS  "${EXTRA_CFLAGS} -Wall" )
70
71 ## SET C COMPILER FLAGS
72 SET(CMAKE_C_FLAGS "${OSP_DEBUG_FLAGS} ${OSP_OPT_FLAGS} ${CMAKE_C_FLAGS} ${EXTRA_CFLAGS} ${OSP_COMPILER_FLAGS}")
73
74 ## SET CPP COMPILER FLAGS
75 SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fvisibility=hidden")
76 SET(CMAKE_CXX_FLAGS "${OSP_DEBUG_FLAGS} ${OSP_OPT_FLAGS} ${CMAKE_CXX_FLAGS} ${EXTRA_CFLAGS} ${OSP_COMPILER_FLAGS}")
77
78 ## Create Library
79 ADD_LIBRARY (${this_target} SHARED ${${this_target}_SOURCE_FILES})
80
81 ## SET LINKER FLAGS
82 SET(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -Wl,--no-undefined -Wl,--as-needed")
83
84 TARGET_LINK_LIBRARIES(${this_target} "-lchromium" )
85 TARGET_LINK_LIBRARIES(${this_target} "-L/usr/lib/osp -losp-appfw" )
86 TARGET_LINK_LIBRARIES(${this_target} "-losp-uifw" )
87 TARGET_LINK_LIBRARIES(${this_target} "-losp-net" )
88 TARGET_LINK_LIBRARIES(${this_target} "-losp-image" )
89 TARGET_LINK_LIBRARIES(${this_target} "-losp-media")
90 TARGET_LINK_LIBRARIES(${this_target} "-losp-locations")
91 TARGET_LINK_LIBRARIES(${this_target} "-lglib-2.0" )
92 TARGET_LINK_LIBRARIES(${this_target} "-lexif" )
93 TARGET_LINK_LIBRARIES(${this_target} "-lcapi-content-media-content")
94 TARGET_LINK_LIBRARIES(${this_target} "-lcapi-media-metadata-extractor")
95 TARGET_LINK_LIBRARIES(${this_target} "-lcapi-content-mime-type")
96 TARGET_LINK_LIBRARIES(${this_target} "-lcapi-web-url-download")
97 TARGET_LINK_LIBRARIES(${this_target} "-lpthread")
98
99 SET_TARGET_PROPERTIES(${this_target} 
100         PROPERTIES 
101         VERSION ${FULLVER}
102         SOVERSION ${MAJORVER}
103         CLEAN_DIRECT_OUTPUT 1
104         )
105
106 ADD_CUSTOM_COMMAND(TARGET ${this_target}
107     POST_BUILD
108                 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} 
109                 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}
110                 COMMAND ${CMAKE_STRIP} --strip-unneeded ${LIBRARY_OUTPUT_PATH}/${CMAKE_SHARED_LIBRARY_PREFIX}${this_target}${CMAKE_SHARED_LIBRARY_SUFFIX}
111     COMMENT "strip ${this_target}"
112                 )   
113
114 INSTALL(DIRECTORY ${LIBRARY_OUTPUT_PATH}/ DESTINATION lib/osp 
115                                 FILES_MATCHING PATTERN "*.so*" 
116                                 PERMISSIONS OWNER_EXECUTE OWNER_WRITE OWNER_READ                                          
117                                                                                 GROUP_EXECUTE GROUP_READ
118                                                                                 WORLD_EXECUTE WORLD_READ)
119 INSTALL(DIRECTORY ${LIBRARY_OUTPUT_PATH}/debug/ DESTINATION lib/osp/debug 
120                                 FILES_MATCHING PATTERN "*.so*" 
121                                 PERMISSIONS OWNER_EXECUTE OWNER_WRITE OWNER_READ                                          
122                                                                                 GROUP_EXECUTE GROUP_READ
123                                                                                 WORLD_EXECUTE WORLD_READ)
124
125 INSTALL(DIRECTORY ${CMAKE_SOURCE_DIR}/inc/ DESTINATION include/osp FILES_MATCHING PATTERN "*.h")
126 INSTALL(DIRECTORY ${CMAKE_SOURCE_DIR}/src/inc/ DESTINATION include/osp/content FILES_MATCHING PATTERN "*.h")
127
128 # pkgconfig file
129 CONFIGURE_FILE(${this_target}.pc.in ${CMAKE_SOURCE_DIR}/${this_target}.pc @ONLY)
130 INSTALL(FILES ${CMAKE_SOURCE_DIR}/${this_target}.pc DESTINATION lib/pkgconfig)