Seperate the osp-installer
[framework/osp/installer.git] / CMakeLists.txt
1 CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
2
3 SET (this_target osp-installer)
4
5 SET(CMAKE_EXECUTABLE_SUFFIX "")
6 SET(EXECUTABLE_OUTPUT_PATH "${CMAKE_CURRENT_SOURCE_DIR}/output")
7
8 INCLUDE_DIRECTORIES(
9         /usr/include/dlog
10         /usr/include/pkgmgr
11         /usr/include/osp
12         /usr/include/osp/app
13         /usr/include/osp/base
14         /usr/include/osp/io
15         /usr/include/osp/security
16         /usr/include/osp/system
17         /usr/include/libxml2
18         /usr/include/system
19         inc
20         src/Context
21         src/Installer
22         src/Manager
23         src/XmlHandler
24         src/Step
25         src/Util
26 )
27
28 SET (${this_target}_SOURCE_FILES
29         src/Context/DrmLicense.cpp
30         src/Context/InstallationContext.cpp
31         src/Installer/DirectoryInstaller.cpp
32         src/Installer/GuestInstaller.cpp
33         src/Installer/IDEInstaller.cpp
34         src/Installer/Installer.cpp
35         src/Installer/PackageInstaller.cpp
36         src/Installer/PreloadedInstaller.cpp
37         src/Installer/RestorationInstaller.cpp
38         src/Manager/ConfigurationManager.cpp
39         src/Manager/InstallerManager.cpp
40         src/Manager/PermissionManager.cpp
41         src/Manager/SignatureManager.cpp
42         src/Step/DrmStep.cpp
43         src/Step/IInstallationStep.cpp
44         src/Step/LicenseStep.cpp
45         src/Step/ManifestXmlStep.cpp
46         src/Step/PackageCheckStep.cpp
47         src/Step/SignatureStep.cpp
48         src/Step/SystemCheckStep.cpp
49         src/Step/UninstallStep.cpp
50         src/Step/UnpackStep.cpp
51         src/XmlHandler/ManifestGenerator.cpp
52         src/XmlHandler/ManifestHandler.cpp
53         src/XmlHandler/SignatureHandler.cpp
54         src/XmlHandler/XmlAttribute.cpp
55         src/XmlHandler/XmlHandler.cpp
56         src/XmlHandler/XmlWriter.cpp
57         src/XmlHandler/PrivilegeHandler.cpp
58         src/backend/backend.cpp
59         src/Util/InstallerUtil.cpp
60         )
61
62 ADD_EXECUTABLE (${this_target} ${${this_target}_SOURCE_FILES})
63
64 SET(CMAKE_C_FLAGS "${OSP_DEBUG_FLAGS} ${OSP_OPT_FLAGS} ${CMAKE_C_FLAGS} ${EXTRA_CFLAGS} ${OSP_COMPILER_FLAGS}")
65 SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fvisibility=hidden")
66 SET(CMAKE_CXX_FLAGS "${OSP_DEBUG_FLAGS} ${OSP_OPT_FLAGS} ${CMAKE_CXX_FLAGS} ${EXTRA_CFLAGS} ${OSP_COMPILER_FLAGS}")
67
68 TARGET_LINK_LIBRARIES(${this_target} "-L/usr/lib/osp -losp-appfw -lxml2 -lpkgmgr_installer -lpkgmgr_parser" -Wl,--allow-shlib-undefined)
69
70 ADD_CUSTOM_COMMAND(TARGET ${this_target}
71                 POST_BUILD
72                 COMMAND ${CMAKE_COMMAND} -E copy ${EXECUTABLE_OUTPUT_PATH}/${this_target} ${EXECUTABLE_OUTPUT_PATH}/debug/${this_target}
73                 COMMAND ${CMAKE_STRIP} --strip-unneeded --remove-section .comment ${EXECUTABLE_OUTPUT_PATH}/${this_target}
74                 COMMENT "strip ${this_target}"
75                 )       
76
77 ADD_SUBDIRECTORY(plugin)
78
79 INSTALL(FILES ${EXECUTABLE_OUTPUT_PATH}/osp-installer DESTINATION bin
80         PERMISSIONS OWNER_EXECUTE OWNER_WRITE OWNER_READ)
81 INSTALL(FILES ${EXECUTABLE_OUTPUT_PATH}/libosp-installer-plugin.so DESTINATION lib
82         PERMISSIONS OWNER_EXECUTE OWNER_WRITE OWNER_READ GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE)
83 INSTALL(DIRECTORY ${EXECUTABLE_OUTPUT_PATH}/debug/ DESTINATION lib/osp/debug/
84                                         FILES_MATCHING PATTERN "*"
85                                         PERMISSIONS OWNER_EXECUTE OWNER_WRITE OWNER_READ                                          
86                                                                                         GROUP_EXECUTE GROUP_READ
87                                                                                         WORLD_EXECUTE WORLD_READ)