Add dependency on osp-image-core in osp-image.pc file.
[platform/framework/native/image.git] / CMakeLists.txt
1 CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
2
3 SET(CMAKE_INSTALL_PREFIX /usr)
4 SET(PREFIX ${CMAKE_INSTALL_PREFIX})
5
6 SET (this_target osp-image)
7
8 SET(LIBRARY_OUTPUT_PATH ${CMAKE_SOURCE_DIR}/cmake_build_tmp/output)
9
10 INCLUDE_DIRECTORIES(
11         inc
12         src
13         src/inc
14         /usr/include
15         /usr/include/curl
16         /usr/include/libxml2
17         /usr/include/glib-2.0
18         /usr/lib/glib-2.0/include
19         /usr/include/osp
20         /usr/include/osp/app
21         /usr/include/osp/base
22         /usr/include/osp/io
23         /usr/include/osp/graphics
24         /usr/include/osp/media
25         /usr/include/osp/net
26         /usr/include/osp/security
27         /usr/include/osp/system
28         /usr/include/osp/ui
29         )
30
31 SET (${this_target}_SOURCE_FILES
32         src/FMediaImage.cpp
33         src/FMedia_ImageImpl.cpp
34         src/FMediaImageBuffer.cpp
35         src/FMedia_ImageBufferImpl.cpp
36         src/FMediaImageUtil.cpp
37         src/FMedia_ImageUtilImpl.cpp
38         src/FMediaGifDecoder.cpp
39         src/FMedia_GifDecoderImpl.cpp
40         src/FMedia_ImageDownloadListener.cpp
41         src/FMedia_ImageUriData.cpp
42         src/FMedia_ImageUriDataEvent.cpp
43         src/FMedia_ImageUriDataEventArg.cpp
44         src/FMedia_ImageUriDataFactory.cpp
45         src/FMedia_ImageUriDataHolder.cpp
46 )
47
48 ## Definitions
49 SET(EXTRA_CFLAGS  "${EXTRA_CFLAGS} -Wall" )
50
51 ## SET C COMPILER FLAGS
52 SET(CMAKE_C_FLAGS "${OSP_DEBUG_FLAGS} ${OSP_OPT_FLAGS} ${CMAKE_C_FLAGS} ${EXTRA_CFLAGS} ${OSP_COMPILER_FLAGS}")
53
54 ## SET CPP COMPILER FLAGS
55 SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fvisibility=hidden")
56 SET(CMAKE_CXX_FLAGS "${OSP_DEBUG_FLAGS} ${OSP_OPT_FLAGS} ${CMAKE_CXX_FLAGS} ${EXTRA_CFLAGS} ${OSP_COMPILER_FLAGS}")
57
58 ## Create Library
59 ADD_LIBRARY (${this_target} SHARED ${${this_target}_SOURCE_FILES})
60
61 ## SET LINKER FLAGS
62 SET(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -Wl,--no-undefined -Wl,--as-needed")
63
64 TARGET_LINK_LIBRARIES(${this_target} "-L/usr/lib/osp -losp-appfw" )
65 TARGET_LINK_LIBRARIES(${this_target} "-losp-image-core" )
66 TARGET_LINK_LIBRARIES(${this_target} "-losp-uifw" )
67 TARGET_LINK_LIBRARIES(${this_target} "-losp-net" )
68 TARGET_LINK_LIBRARIES(${this_target} "-lpthread" )
69
70 SET_TARGET_PROPERTIES(${this_target}
71         PROPERTIES
72         VERSION ${FULLVER}
73         SOVERSION ${MAJORVER}
74         CLEAN_DIRECT_OUTPUT 1
75         )
76
77 INSTALL(DIRECTORY ${LIBRARY_OUTPUT_PATH}/ DESTINATION lib/osp
78                 FILES_MATCHING PATTERN "*.so*"
79                 PERMISSIONS OWNER_EXECUTE OWNER_WRITE OWNER_READ
80                     GROUP_EXECUTE GROUP_READ
81                     WORLD_EXECUTE WORLD_READ)
82
83 INSTALL(DIRECTORY ${CMAKE_SOURCE_DIR}/inc/ DESTINATION include/osp FILES_MATCHING PATTERN "*.h")
84 INSTALL(DIRECTORY ${CMAKE_SOURCE_DIR}/src/inc/ DESTINATION include/osp/media FILES_MATCHING PATTERN "*.h")
85
86 SET(PC_NAME ${this_target})
87 SET(pc_requires "osp-net osp-image-core")
88 SET(PC_REQUIRED ${pc_requires})
89 SET(PC_LDFLAGS -l${this_target})
90
91 # pkgconfig file
92 CONFIGURE_FILE(${this_target}.pc.in ${CMAKE_SOURCE_DIR}/${this_target}.pc @ONLY)
93 INSTALL(FILES ${CMAKE_SOURCE_DIR}/${this_target}.pc DESTINATION lib/pkgconfig)