CMake configuration files are changed.
Directory hierarchy is changed as below:
+-----------------------------------------------------+
| launchpad/ |
| |-- cmake/ |
| |-- packaging/ |
| |-- src/ |
| |-- app-defined-loader/ |
| |-- launchpad-loader/ |
| |-- launchpad-parser/ |
| |-- launchpad-process-pool/ |
| |-- lib/ |
| |-- common/ |
| |-- launchpad/ |
| |-- launchpad-hydra/ |
+-----------------------------------------------------+
Change-Id: I1e8c0416c46a61bb749855309d141dd422fd01dd
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
CMAKE_MINIMUM_REQUIRED(VERSION 2.8)
-PROJECT(launchpad C CXX)
+PROJECT(launchpad)
-ADD_DEFINITIONS("-DSHARE_PREFIX=\"/usr/share/aul\"")
IF(_TIZEN_FEATURE_PRIORITY_CHANGE)
ADD_DEFINITIONS("-DTIZEN_FEATURE_PRIORITY_CHANGE")
ENDIF(_TIZEN_FEATURE_PRIORITY_CHANGE)
ADD_DEFINITIONS("-DPRELOAD_ACTIVATE")
ADD_DEFINITIONS("-DPREEXEC_ACTIVATE")
-EXEC_PROGRAM(pkg-config
- ARGS --variable=module_arch ecore
- OUTPUT_VARIABLE EFL_MODULE_VERSION
-)
+## Compile flags
+SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall")
+SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Werror")
+SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wl,-zdefs")
+SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fvisibility=hidden")
+SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fdata-sections")
+SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -ffunction-sections")
+SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wl,--gc-sections")
+SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -D_FILE_OFFSET_BITS=64")
+SET(CMAKE_C_FLAGS_DEBUG "-O0 -g")
+SET(CMAKE_C_FLAGS_RELEASE "-O2")
+
+SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${EXTRA_C_FLAGS} -std=c++14")
+SET(CMAKE_CXX_FLAGS_DEBUG "-O0 -g")
+SET(CMAKE_CXX_FLAGS_RELEASE "-O2")
+
+## Linker flags
+SET(CMAKE_EXE_LINKER_FLAGS "-Wl,--as-needed")
+
+## Targets
+SET(TARGET_APP_DEFINED_LOADER "app-defined-loader")
+SET(TARGET_LAUNCHPAD "launchpad")
+SET(TARGET_LAUNCHPAD_HYDRA "launchpad-hydra")
+SET(TARGET_LAUNCHPAD_LOADER "launchpad-loader")
+SET(TARGET_LAUNCHPAD_PARSER "launchpad-parser")
+SET(TARGET_LAUNCHPAD_PROCESS_POOL "launchpad-process-pool")
+
+SET(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH}
+ "${CMAKE_CURRENT_SOURCE_DIR}/cmake/Modules/")
+
+INCLUDE(FindPkgConfig)
+INCLUDE(ApplyPkgConfig)
+
+PKG_CHECK_MODULES(AUL_DEPS REQUIRED aul)
+PKG_CHECK_MODULES(BUNDLE_DEPS REQUIRED bundle)
+PKG_CHECK_MODULES(BUXTON2_DEPS REQUIRED buxton2)
+PKG_CHECK_MODULES(DBUS_DEPS REQUIRED dbus-1)
+PKG_CHECK_MODULES(DLOG_DEPS REQUIRED dlog)
+PKG_CHECK_MODULES(ECORE_DEPS REQUIRED ecore)
+PKG_CHECK_MODULES(ECORE_CORE_DEPS REQUIRED ecore-core)
+PKG_CHECK_MODULES(ELEMENTARY_DEPS REQUIRED elementary)
+PKG_CHECK_MODULES(GIO_DEPS REQUIRED gio-2.0)
+PKG_CHECK_MODULES(INIPARSER_DEPS REQUIRED iniparser)
+PKG_CHECK_MODULES(LIBCAP_DEPS REQUIRED libcap)
+PKG_CHECK_MODULES(LIBSMACK_DEPS REQUIRED libsmack)
+PKG_CHECK_MODULES(LIBSYSTEMD_DEPS REQUIRED libsystemd)
+PKG_CHECK_MODULES(LIBTZPLATFORM_CONFIG_DEPS REQUIRED libtzplatform-config)
+PKG_CHECK_MODULES(LIBXML_DEPS REQUIRED libxml-2.0)
+PKG_CHECK_MODULES(PKGMGR_INSTALLER_DEPS REQUIRED pkgmgr-installer)
+PKG_CHECK_MODULES(SECURITY_MANAGER_DEPS REQUIRED security-manager)
+PKG_CHECK_MODULES(TANCHOR_DEPS REQUIRED tanchor)
+PKG_CHECK_MODULES(TTRACE_DEPS REQUIRED ttrace)
+PKG_CHECK_MODULES(VCONF_DEPS REQUIRED vconf)
ADD_SUBDIRECTORY(src)
--- /dev/null
+# Copyright (c) 2020 Samsung Electronics Co., Ltd All Rights Reserved
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+
+#
+# This function applies external (out of source tree) dependencies
+# to given target. Arguments are:
+# TARGET - valid cmake target
+# PRIVACY - dependency can be inherited by dependent targets or not:
+# PUBLIC - this should be used by default, cause compile/link flags passing
+# PRIVATE - do not passes any settings to dependent targets,
+# may be usefull for static libraries from the inside of the project
+# Argument ARGV2 and following are supposed to be names of checked pkg config
+# packages. This function will use variables created by check_pkg_modules().
+# - ${DEP_NAME}_LIBRARIES
+# - ${DEP_NAME}_INCLUDE_DIRS
+# - ${DEP_NAME}_CFLAGS
+#
+FUNCTION(APPLY_PKG_CONFIG TARGET PRIVACY)
+ MATH(EXPR DEST_INDEX "${ARGC}-1")
+ FOREACH(I RANGE 2 ${DEST_INDEX})
+ IF(NOT ${ARGV${I}}_FOUND)
+ MESSAGE(FATAL_ERROR "Not found dependency - ${ARGV${I}}_FOUND")
+ ENDIF(NOT ${ARGV${I}}_FOUND)
+ TARGET_LINK_LIBRARIES(${TARGET} ${PRIVACY} "${${ARGV${I}}_LIBRARIES}")
+ TARGET_INCLUDE_DIRECTORIES(${TARGET} ${PRIVACY} SYSTEM "${${ARGV${I}}_INCLUDE_DIRS}")
+ STRING(REPLACE ";" " " CFLAGS_STR "${${ARGV${I}}_CFLAGS}")
+ SET(CFLAGS_LIST ${CFLAGS_STR})
+ SEPARATE_ARGUMENTS(CFLAGS_LIST)
+ FOREACH(OPTION ${CFLAGS_LIST})
+ TARGET_COMPILE_OPTIONS(${TARGET} ${PRIVACY} ${OPTION})
+ ENDFOREACH(OPTION)
+ SET_TARGET_PROPERTIES(${TARGET} PROPERTIES SKIP_BUILD_RPATH true)
+ ENDFOREACH(I RANGE 2 ${DEST_INDEX})
+ENDFUNCTION(APPLY_PKG_CONFIG TARGET PRIVACY)
-CMAKE_MINIMUM_REQUIRED(VERSION 2.8)
-
-ADD_SUBDIRECTORY(launchpad)
-ADD_SUBDIRECTORY(lib)
-ADD_SUBDIRECTORY(loader)
ADD_SUBDIRECTORY(app-defined-loader)
-ADD_SUBDIRECTORY(hydra)
-ADD_SUBDIRECTORY(parser)
-
-ADD_DEPENDENCIES(launchpad-loader liblaunchpad)
-ADD_DEPENDENCIES(app-defined-loader liblaunchpad)
+ADD_SUBDIRECTORY(launchpad-loader)
+ADD_SUBDIRECTORY(launchpad-parser)
+ADD_SUBDIRECTORY(launchpad-process-pool)
+ADD_SUBDIRECTORY(lib)
-CMAKE_MINIMUM_REQUIRED(VERSION 2.8)
-PROJECT(app-defined-loader)
-SET(APP_DEFINED_LOADER "app-defined-loader")
+AUX_SOURCE_DIRECTORY(${CMAKE_CURRENT_SOURCE_DIR}/src APP_DEFINED_LOADER_SRCS)
+AUX_SOURCE_DIRECTORY(${CMAKE_CURRENT_SOURCE_DIR}/../lib/common/src
+ LIB_COMMON_SRCS)
-INCLUDE(FindPkgConfig)
-PKG_CHECK_MODULES(APP_DEFINED_LOADER_PKGS REQUIRED
- aul
- bundle
- dbus-1
- dlog
- ecore
- ecore-core
- gio-2.0
- iniparser
- libsystemd
- )
-
-FOREACH(flag ${APP_DEFINED_LOADER_PKGS_CFLAGS})
- SET(EXTRA_CFLAGS_loader "${EXTRA_CFLAGS_loader} ${flag}")
-ENDFOREACH(flag)
-
-SET(EXTRA_CFLAGS_common "${EXTRA_CFLAGS_common} -Wl,-zdefs" )
-SET(EXTRA_CFLAGS_common "${EXTRA_CFLAGS_common} -fvisibility=hidden")
-SET(EXTRA_CFLAGS_common "${EXTRA_CFLAGS_common} -fdata-sections -ffunction-sections -Wl,--gc-sections")
-SET(EXTRA_CFLAGS_common "${EXTRA_CFLAGS_common} -D_FILE_OFFSET_BITS=64")
-SET(EXTRA_CFLAGS_common "${EXTRA_CFLAGS_common} -Werror")
+ADD_EXECUTABLE(${TARGET_APP_DEFINED_LOADER}
+ ${APP_DEFINED_LOADER_SRCS}
+ ${LIB_COMMON_SRCS})
IF(_TIZEN_FEATURE_PRELINK)
-MESSAGE(STATUS "[__PRELINK__] Enable")
-SET(EXTRA_CFLAGS_loader "${EXTRA_CFLAGS_loader} ${EXTRA_CFLAGS_common}")
+MESSAGE(STATUS "prelink enable")
ELSE(_TIZEN_FEATURE_PRELINK)
-MESSAGE(STATUS "[__PRELINK__] Disable")
-SET(EXTRA_CFLAGS_loader "${EXTRA_CFLAGS_loader} ${EXTRA_CFLAGS_common} -fPIE")
+MESSAGE(STATUS "prelink enable")
+SET_TARGET_PROPERTIES(${TARGET_APP_DEFINED_LOADER} PROPERTIES
+ COMPILE_FLAGS "-fPIE")
+SET_TARGET_PROPERTIES(${TARGET_APP_DEFINED_LOADER} PROPERTIES
+ LINK_FLAGS "-pie")
ENDIF(_TIZEN_FEATURE_PRELINK)
-SET(CMAKE_C_FLAGS_DEBUG "-O0 -g")
-SET(CMAKE_C_FLAGS_RELEASE "-O2")
-SET(CMAKE_EXE_LINKER_FLAGS "-Wl,--as-needed")
+SET_TARGET_PROPERTIES(${TARGET_APP_DEFINED_LOADER} PROPERTIES
+ SKIP_BUILD_RPATH TRUE)
-SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${EXTRA_CFLAGS}")
-SET(CMAKE_CXX_FLAGS_DEBUG "-O0 -g")
-SET(CMAKE_CXX_FLAGS_RELEASE "-O2")
+TARGET_INCLUDE_DIRECTORIES(${TARGET_APP_DEFINED_LOADER} PUBLIC
+ ${CMAKE_CURRENT_SOURCE_DIR}/../lib/common/inc)
+TARGET_INCLUDE_DIRECTORIES(${TARGET_APP_DEFINED_LOADER} PUBLIC
+ ${CMAKE_CURRENT_SOURCE_DIR}/../lib/launchpad/inc)
-INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/src/common/inc)
-INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/src/lib/inc)
+APPLY_PKG_CONFIG(${TARGET_APP_DEFINED_LOADER} PUBLIC
+ AUL_DEPS
+ BUNDLE_DEPS
+ DBUS_DEPS
+ DLOG_DEPS
+ ECORE_DEPS
+ ECORE_CORE_DEPS
+ GIO_DEPS
+ INIPARSER_DEPS
+ LIBSYSTEMD_DEPS
+)
-AUX_SOURCE_DIRECTORY(${CMAKE_CURRENT_SOURCE_DIR}/src SOURCES)
-AUX_SOURCE_DIRECTORY(${CMAKE_SOURCE_DIR}/src/common/src COMMON_SOURCES)
-
-SET(APP_DEFINED_LOADER_SOURCE_FILES
- ${COMMON_SOURCES}
- ${SOURCES})
-ADD_EXECUTABLE(${APP_DEFINED_LOADER} ${APP_DEFINED_LOADER_SOURCE_FILES})
+TARGET_LINK_LIBRARIES(${TARGET_APP_DEFINED_LOADER} PRIVATE ${TARGET_LAUNCHPAD})
# To support 2.x applications which use their own shared libraries.
# Since we cannot set LD_LIBRARY_PATH directly by security issue, we make the
# dynamic linker looks in the CWD forcely.
-TARGET_LINK_LIBRARIES(${APP_DEFINED_LOADER} "-ldl -Wl,-rpath,: -Wl,--disable-new-dtags")
-
-IF(_TIZEN_FEATURE_PRELINK)
-TARGET_LINK_LIBRARIES(${APP_DEFINED_LOADER} ${APP_DEFINED_LOADER_PKGS_LDFLAGS} launchpad)
-ELSE(_TIZEN_FEATURE_PRELINK)
-TARGET_LINK_LIBRARIES(${APP_DEFINED_LOADER} ${APP_DEFINED_LOADER_PKGS_LDFLAGS} launchpad "-pie")
-ENDIF(_TIZEN_FEATURE_PRELINK)
+TARGET_LINK_LIBRARIES(${TARGET_APP_DEFINED_LOADER} PUBLIC
+ "-ldl -Wl,-rpath,: -Wl,--disable-new-dtags")
-SET_TARGET_PROPERTIES(${APP_DEFINED_LOADER} PROPERTIES COMPILE_FLAGS ${EXTRA_CFLAGS_loader})
-SET_TARGET_PROPERTIES(${APP_DEFINED_LOADER}
- PROPERTIES SKIP_BUILD_RPATH TRUE
- ) # remove rpath option that is automatically generated by cmake.
-INSTALL(TARGETS ${APP_DEFINED_LOADER} DESTINATION bin)
+INSTALL(TARGETS ${TARGET_APP_DEFINED_LOADER} DESTINATION bin)
CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/conf/app-defined-loader.conf.in
- ${CMAKE_CURRENT_SOURCE_DIR}/conf/app-defined-loader.conf @ONLY)
-INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/conf/app-defined-loader.conf DESTINATION share/aul)
+ ${CMAKE_CURRENT_SOURCE_DIR}/conf/app-defined-loader.conf @ONLY)
+INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/conf/app-defined-loader.conf
+ DESTINATION share/aul)
+++ /dev/null
-CMAKE_MINIMUM_REQUIRED(VERSION 2.8)
-PROJECT(launchpad-hydra C)
-SET(LAUNCHPAD_HYDRA "launchpad-hydra")
-
-INCLUDE(FindPkgConfig)
-PKG_CHECK_MODULES(LAUNCHPAD_HYDRA_PKGS REQUIRED
- dlog
- libsystemd)
-
-FOREACH(flag ${LAUNCHPAD_HYDRA_PKGS_CFLAGS})
- SET(EXTRA_CFLAGS_hydra "${EXTRA_CFLAGS_hydra} ${flag}")
-ENDFOREACH(flag)
-
-SET(EXTRA_CFLAGS_common "${EXTRA_CFLAGS_common} -Wl,-zdefs" )
-SET(EXTRA_CFLAGS_common "${EXTRA_CFLAGS_common} -fvisibility=hidden")
-SET(EXTRA_CFLAGS_common "${EXTRA_CFLAGS_common} -fdata-sections -ffunction-sections -Wl,--gc-sections")
-SET(EXTRA_CFLAGS_common "${EXTRA_CFLAGS_common} -D_FILE_OFFSET_BITS=64")
-SET(EXTRA_CFLAGS_common "${EXTRA_CFLAGS_common} -Werror")
-
-SET(EXTRA_CFLAGS_hydra "${EXTRA_CFLAGS_hydra} ${EXTRA_CFLAGS_common}")
-
-SET(CMAKE_C_FLAGS_DEBUG "-O0 -g")
-SET(CMAKE_C_FLAGS_RELEASE "-O2")
-SET(CMAKE_EXE_LINKER_FLAGS "-Wl,--as-needed")
-
-INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}/inc)
-INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/src/common/inc)
-
-AUX_SOURCE_DIRECTORY(${CMAKE_CURRENT_SOURCE_DIR}/src SOURCES)
-SET(COMMON_SOURCES
- ${CMAKE_SOURCE_DIR}/src/common/src/launchpad_socket.c)
-
-ADD_LIBRARY(${LAUNCHPAD_HYDRA} SHARED
- ${SOURCES}
- ${COMMON_SOURCES})
-SET_TARGET_PROPERTIES(${LAUNCHPAD_HYDRA} PROPERTIES SOVERSION ${MAJORVER})
-SET_TARGET_PROPERTIES(${LAUNCHPAD_HYDRA} PROPERTIES VERSION ${VERSION})
-SET_TARGET_PROPERTIES(${LAUNCHPAD_HYDRA} PROPERTIES COMPILE_FLAGS ${EXTRA_CFLAGS_hydra})
-TARGET_LINK_LIBRARIES(${LAUNCHPAD_HYDRA} ${LAUNCHPAD_HYDRA_PKGS_LDFLAGS} "-ldl")
-
-INSTALL(TARGETS ${LAUNCHPAD_HYDRA} DESTINATION ${LIB_INSTALL_DIR} COMPONENT RuntimeLibraries)
-INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/inc/launchpad_hydra.h DESTINATION include/launchpad)
-
-CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/pkgconfig/liblaunchpad-hydra.pc.in ${CMAKE_CURRENT_SOURCE_DIR}/pkgconfig/liblaunchpad-hydra.pc @ONLY)
-INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/pkgconfig/liblaunchpad-hydra.pc DESTINATION ${LIB_INSTALL_DIR}/pkgconfig)
--- /dev/null
+AUX_SOURCE_DIRECTORY(${CMAKE_CURRENT_SOURCE_DIR}/src LAUNCHPAD_LOADER_SRCS)
+AUX_SOURCE_DIRECTORY(${CMAKE_CURRENT_SOURCE_DIR}/../lib/common/src
+ LIB_COMMON_SRCS)
+
+ADD_EXECUTABLE(${TARGET_LAUNCHPAD_LOADER}
+ ${LAUNCHPAD_LOADER_SRCS}
+ ${LIB_COMMON_SRCS})
+SET_TARGET_PROPERTIES(${TARGET_LAUNCHPAD_LOADER} PROPERTIES
+ SKIP_BUILD_RPATH TRUE)
+
+TARGET_INCLUDE_DIRECTORIES(${TARGET_LAUNCHPAD_LOADER} PUBLIC
+ ${CMAKE_CURRENT_SOURCE_DIR}/../lib/launchpad/inc)
+TARGET_INCLUDE_DIRECTORIES(${TARGET_LAUNCHPAD_LOADER} PUBLIC
+ ${CMAKE_CURRENT_SOURCE_DIR}/../lib/common/inc)
+
+IF(_TIZEN_FEATURE_PRELINK)
+MESSAGE(STATUS "prelink enable")
+ELSE(_TIZEN_FEATURE_PRELINK)
+MESSAGE(STATUS "prelink disable")
+SET_TARGET_PROPERTIES(${TARGET_LAUNCHPAD_LOADER} PROPERTIES
+ COMPILE_FLAGS "-fPIE")
+TARGET_LINK_LIBRARIES(${TARGET_LAUNCHPAD_LOADER} PUBLIC "-pie")
+ENDIF(_TIZEN_FEATURE_PRELINK)
+
+APPLY_PKG_CONFIG(${TARGET_LAUNCHPAD_LOADER} PUBLIC
+ DLOG_DEPS
+ ECORE_DEPS
+ ELEMENTARY_DEPS
+ SECURITY_MANAGER_DEPS
+ LIBTZPLATFORM_CONFIG_DEPS
+ TANCHOR_DEPS
+ AUL_DEPS
+ VCONF_DEPS
+ BUXTON2_DEPS
+ LIBSYSTEMD_DEPS
+ GIO_DEPS
+ DBUS_DEPS
+ LIBCAP_DEPS
+)
+
+TARGET_LINK_LIBRARIES(${TARGET_LAUNCHPAD_LOADER} PRIVATE ${TARGET_LAUNCHPAD})
+
+# To support 2.x applications which use their own shared libraries.
+# Since we cannot set LD_LIBRARY_PATH directly by security issue, we make the
+# dynamic linker looks in the CWD forcely.
+TARGET_LINK_LIBRARIES(${TARGET_LAUNCHPAD_LOADER} PUBLIC
+ "-ldl -Wl,-rpath,: -Wl,--disable-new-dtags")
+
+INSTALL(TARGETS ${TARGET_LAUNCHPAD_LOADER} DESTINATION bin)
+
+EXEC_PROGRAM(pkg-config
+ ARGS --variable=module_arch ecore
+ OUTPUT_VARIABLE EFL_MODULE_VERSION
+)
+
+IF(_TIZEN_FEATURE_LOADER_ARCH64)
+CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/conf/default_arch64.loader.in
+ ${CMAKE_CURRENT_SOURCE_DIR}/conf/default.loader @ONLY)
+ELSE(_TIZEN_FEATURE_LOADER_ARCH64)
+CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/conf/default_arch32.loader.in
+ ${CMAKE_CURRENT_SOURCE_DIR}/conf/default.loader @ONLY)
+ENDIF(_TIZEN_FEATURE_LOADER_ARCH64)
+
+INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/conf/default.loader DESTINATION
+ share/aul)
--- /dev/null
+SET(PLUGINS_LIST_FILE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/launchpad_plugins.txt)
+SET(PLUGINS_LIST_INSTALL_PATH ${CMAKE_INSTALL_PREFIX}/share/parser-plugins)
+ADD_DEFINITIONS("-DPLUGINS_LIST_INSTALL_PATH=\"${PLUGINS_LIST_INSTALL_PATH}\"")
+
+AUX_SOURCE_DIRECTORY(${CMAKE_CURRENT_SOURCE_DIR}/ LAUNCHPAD_PARSER_SRCS)
+
+ADD_LIBRARY(${TARGET_LAUNCHPAD_PARSER} SHARED
+ ${LAUNCHPAD_PARSER_SRCS})
+
+SET_TARGET_PROPERTIES(${TARGET_LAUNCHPAD_PARSER} PROPERTIES
+ COMPILE_FLAGS "-fpic")
+
+TARGET_INCLUDE_DIRECTORIES(${TARGET_LAUNCHPAD_PARSER} PUBLIC
+ ${CMAKE_CURRENT_SOURCE_DIR}/../)
+
+APPLY_PKG_CONFIG(${TARGET_LAUNCHPAD_PARSER} PUBLIC
+ DLOG_DEPS
+ LIBXML_DEPS
+ PKGMGR_INSTALLER_DEPS
+)
+
+INSTALL(FILES ${PLUGINS_LIST_FILE_PATH} DESTINATION
+ ${PLUGINS_LIST_INSTALL_PATH}/)
+INSTALL(TARGETS ${TARGET_LAUNCHPAD_PARSER} DESTINATION
+ ${SYSCONF_INSTALL_DIR}/package-manager/parserlib)
* limitations under the License.
*/
-#ifndef LAUNCHPAD_PARSER_PLUGIN_COMMON_HH_
-#define LAUNCHPAD_PARSER_PLUGIN_COMMON_HH_
+#ifndef LAUNCHPAD_PARSER_COMMON_HH_
+#define LAUNCHPAD_PARSER_COMMON_HH_
#ifdef EXPORT_API
#undef EXPORT_API
#endif
#define EXPORT_API __attribute__((visibility("default")))
-#endif // LAUNCHPAD_PARSER_PLUGIN_COMMON_HH_
+#endif // LAUNCHPAD_PARSER_COMMON_HH_
* limitations under the License.
*/
-#include <sys/types.h>
#include <pkgmgr_installer_info.h>
#include <sys/stat.h>
+#include <sys/types.h>
#include <unistd.h>
#include <fstream>
#include <string>
-#include "launchpad_parser_plugin.hh"
-#include "log_private.hh"
+#include "launchpad-parser/launchpad_parser_plugin.hh"
+#include "launchpad-parser/log_private.hh"
#define LOADERS_DIRECTORY_PATH "/opt/share/loaders/"
* limitations under the License.
*/
-#ifndef LAUNCHPAD_PARSER_PLUGIN_LAUNCHPAD_PARSER_PLUGIN_HH_
-#define LAUNCHPAD_PARSER_PLUGIN_LAUNCHPAD_PARSER_PLUGIN_HH_
+#ifndef LAUNCHPAD_PARSER_LAUNCHPAD_PARSER_PLUGIN_HH_
+#define LAUNCHPAD_PARSER_LAUNCHPAD_PARSER_PLUGIN_HH_
+
+#include <libxml/tree.h>
-#include <string>
#include <list>
#include <memory>
-#include <libxml/tree.h>
+#include <string>
-#include "loader_info.hh"
+#include "launchpad-parser/loader_info.hh"
namespace launchpad_parser_plugin {
} // namespace launchpad_parser_plugin
-#endif // LAUNCHPAD_PARSER_PLUGIN_LAUNCHPAD_PARSER_PLUGIN_HH_
+#endif // LAUNCHPAD_PARSER_LAUNCHPAD_PARSER_PLUGIN_HH_
#include <libxml/tree.h>
-#include "launchpad_parser_plugin.hh"
-#include "log_private.hh"
-#include "common.hh"
+#include "launchpad-parser/common.hh"
+#include "launchpad-parser/launchpad_parser_plugin.hh"
+#include "launchpad-parser/log_private.hh"
using namespace launchpad_parser_plugin;
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-#include "loader_info.hh"
+
+#include "launchpad-parser/loader_info.hh"
using namespace std;
namespace launchpad_parser_plugin {
* limitations under the License.
*/
-#ifndef LAUNCHPAD_PARSER_PLUGIN_LOADER_INFO_HH_
-#define LAUNCHPAD_PARSER_PLUGIN_LOADER_INFO_HH_
+#ifndef LAUNCHPAD_PARSER_LOADER_INFO_HH_
+#define LAUNCHPAD_PARSER_LOADER_INFO_HH_
-#include <string>
#include <list>
+#include <string>
namespace launchpad_parser_plugin {
} // namespace launchpad_parser_plugin
-#endif // LAUNCHPAD_PARSER_PLUGIN_LOADER_INFO_HH_
-
+#endif // LAUNCHPAD_PARSER_LOADER_INFO_HH_
* limitations under the License.
*/
-#ifndef LAUNCHPAD_PARSER_PLUGIN_LOG_PRIVATE_HH_
-#define LAUNCHPAD_PARSER_PLUGIN_LOG_PRIVATE_HH_
+#ifndef LAUNCHPAD_PARSER_LOG_PRIVATE_HH_
+#define LAUNCHPAD_PARSER_LOG_PRIVATE_HH_
#include <dlog.h>
-#ifdef LOG_TAG
#undef LOG_TAG
-#endif
#define LOG_TAG "LAUNCHPAD_PARSER_PLUGIN"
-#ifdef _E
#undef _E
-#endif
#define _E(fmt, arg...) LOGE(fmt, ##arg)
-#ifdef _D
#undef _D
-#endif
#define _D(fmt, arg...) LOGD(fmt, ##arg)
-#ifdef _W
#undef _W
-#endif
#define _W(fmt, arg...) LOGW(fmt, ##arg)
-#ifdef _I
#undef _I
-#endif
#define _I(fmt, arg...) LOGI(fmt, ##arg)
-#endif /* LAUNCHPAD_PARSER_PLUGIN_LOG_PRIVATE_HH_ */
+#endif /* LAUNCHPAD_PARSER_LOG_PRIVATE_HH_ */
--- /dev/null
+AUX_SOURCE_DIRECTORY(${CMAKE_CURRENT_SOURCE_DIR}/src
+ LAUNCHPAD_PROCESS_POOL_SRCS)
+AUX_SOURCE_DIRECTORY(${CMAKE_CURRENT_SOURCE_DIR}/../lib/common/src
+ LIB_COMMON_SRCS)
+
+ADD_EXECUTABLE(${TARGET_LAUNCHPAD_PROCESS_POOL}
+ ${LAUNCHPAD_PROCESS_POOL_SRCS}
+ ${LIB_COMMON_SRCS})
+SET_TARGET_PROPERTIES(${TARGET_LAUNCHPAD_PROCESS_POOL} PROPERTIES
+ SKIP_BUILD_RPATH TRUE)
+
+TARGET_INCLUDE_DIRECTORIES(${TARGET_LAUNCHPAD_PROCESS_POOL} PUBLIC
+ ${CMAKE_CURRENT_SOURCE_DIR}/inc)
+TARGET_INCLUDE_DIRECTORIES(${TARGET_LAUNCHPAD_PROCESS_POOL} PUBLIC
+ ${CMAKE_CURRENT_SOURCE_DIR}/../lib/common/inc)
+
+IF(_TIZEN_FEATURE_PRELINK)
+MESSAGE(STATUS "prelink enable")
+ELSE(_TIZEN_FEATURE_PRELINK)
+MESSAGE(STATUS "prelink disable")
+SET_TARGET_PROPERTIES(${TARGET_LAUNCHPAD_PROCESS_POOL} PROPERTIES
+ COMPILE_FLAGS "-fPIE")
+SET_TARGET_PROPERTIES(${TARGET_LAUNCHPAD_PROCESS_POOL} PROPERTIES
+ LINK_FLAGS "-pie")
+ENDIF(_TIZEN_FEATURE_PRELINK)
+
+APPLY_PKG_CONFIG(${TARGET_LAUNCHPAD_PROCESS_POOL} PUBLIC
+ BUNDLE_DEPS
+ DBUS_DEPS
+ DLOG_DEPS
+ GIO_DEPS
+ INIPARSER_DEPS
+ LIBCAP_DEPS
+ LIBSMACK_DEPS
+ LIBSYSTEMD_DEPS
+ LIBTZPLATFORM_CONFIG_DEPS
+ SECURITY_MANAGER_DEPS
+ TANCHOR_DEPS
+ TTRACE_DEPS
+ VCONF_DEPS
+)
+
+TARGET_LINK_LIBRARIES(${TARGET_LAUNCHPAD_PROCESS_POOL} PUBLIC "-lm -ldl")
+
+CONFIGURE_FILE(${CMAKE_SOURCE_DIR}/packaging/default.debugger.in
+ ${CMAKE_SOURCE_DIR}/packaging/default.debugger @ONLY)
+INSTALL(FILES ${CMAKE_SOURCE_DIR}/packaging/default.debugger DESTINATION
+ share/aul)
+INSTALL(TARGETS ${TARGET_LAUNCHPAD_PROCESS_POOL} DESTINATION bin)
+
+CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/conf/launchpad.conf.in
+ ${CMAKE_CURRENT_SOURCE_DIR}/conf/launchpad.conf @ONLY)
+INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/conf/launchpad.conf DESTINATION
+ share/aul)
+++ /dev/null
-CMAKE_MINIMUM_REQUIRED(VERSION 2.8)
-PROJECT(launchpad-process-pool C)
-SET(LAUNCHPAD_PROCESS_POOL "launchpad-process-pool")
-
-INCLUDE(FindPkgConfig)
-PKG_CHECK_MODULES(LAUNCHPAD_PROCESS_POOL_PKGS REQUIRED
- bundle
- dbus-1
- dlog
- gio-2.0
- iniparser
- libcap
- libsmack
- libsystemd
- libtzplatform-config
- security-manager
- tanchor
- ttrace
- vconf
- )
-
-FOREACH(flag ${LAUNCHPAD_PROCESS_POOL_PKGS_CFLAGS})
- SET(EXTRA_CFLAGS_pool "${EXTRA_CFLAGS_pool} ${flag}")
-ENDFOREACH(flag)
-
-SET(EXTRA_CFLAGS_common "${EXTRA_CFLAGS_common} -Wl,-zdefs" )
-SET(EXTRA_CFLAGS_common "${EXTRA_CFLAGS_common} -fvisibility=hidden")
-SET(EXTRA_CFLAGS_common "${EXTRA_CFLAGS_common} -fdata-sections -ffunction-sections -Wl,--gc-sections")
-SET(EXTRA_CFLAGS_common "${EXTRA_CFLAGS_common} -D_FILE_OFFSET_BITS=64")
-SET(EXTRA_CFLAGS_common "${EXTRA_CFLAGS_common} -Werror")
-
-IF(_TIZEN_FEATURE_PRELINK)
-MESSAGE(STATUS "[__PRELINK__] Enable")
-SET(EXTRA_CFLAGS_pool "${EXTRA_CFLAGS_pool} ${EXTRA_CFLAGS_common}")
-ELSE(_TIZEN_FEATURE_PRELINK)
-MESSAGE(STATUS "[__PRELINK__] Disable")
-SET(EXTRA_CFLAGS_pool "${EXTRA_CFLAGS_pool} ${EXTRA_CFLAGS_common} -fPIE")
-ENDIF(_TIZEN_FEATURE_PRELINK)
-
-SET(CMAKE_C_FLAGS_DEBUG "-O0 -g")
-SET(CMAKE_C_FLAGS_RELEASE "-O2")
-SET(CMAKE_EXE_LINKER_FLAGS "-Wl,--as-needed")
-
-INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}/inc)
-INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/src/common/inc)
-
-AUX_SOURCE_DIRECTORY(${CMAKE_CURRENT_SOURCE_DIR}/src SOURCES)
-AUX_SOURCE_DIRECTORY(${CMAKE_SOURCE_DIR}/src/common/src COMMON_SOURCES)
-
-SET(LAUNCHPAD_PROCESS_POOL_SOURCE_FILES
- ${COMMON_SOURCES}
- ${SOURCES})
-
-ADD_EXECUTABLE(${LAUNCHPAD_PROCESS_POOL} ${LAUNCHPAD_PROCESS_POOL_SOURCE_FILES})
-
-IF(_TIZEN_FEATURE_PRELINK)
-TARGET_LINK_LIBRARIES(${LAUNCHPAD_PROCESS_POOL} ${LAUNCHPAD_PROCESS_POOL_PKGS_LDFLAGS} "-lm -ldl")
-ELSE(_TIZEN_FEATURE_PRELINK)
-TARGET_LINK_LIBRARIES(${LAUNCHPAD_PROCESS_POOL} ${LAUNCHPAD_PROCESS_POOL_PKGS_LDFLAGS} "-pie -lm -ldl")
-ENDIF(_TIZEN_FEATURE_PRELINK)
-
-SET_TARGET_PROPERTIES(${LAUNCHPAD_PROCESS_POOL} PROPERTIES COMPILE_FLAGS ${EXTRA_CFLAGS_pool})
-SET_TARGET_PROPERTIES(${LAUNCHPAD_PROCESS_POOL}
- PROPERTIES SKIP_BUILD_RPATH TRUE
- ) # remove rpath option that is automatically generated by cmake.
-
-CONFIGURE_FILE(${CMAKE_SOURCE_DIR}/packaging/default.debugger.in ${CMAKE_SOURCE_DIR}/packaging/default.debugger @ONLY)
-INSTALL(FILES ${CMAKE_SOURCE_DIR}/packaging/default.debugger DESTINATION share/aul)
-INSTALL(TARGETS ${LAUNCHPAD_PROCESS_POOL} DESTINATION bin)
-
-CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/conf/launchpad.conf.in ${CMAKE_CURRENT_SOURCE_DIR}/conf/launchpad.conf @ONLY)
-INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/conf/launchpad.conf DESTINATION share/aul)
-CMAKE_MINIMUM_REQUIRED(VERSION 2.8)
-PROJECT(liblaunchpad C)
-SET(LAUNCHPAD_LIB "launchpad")
-
-INCLUDE(FindPkgConfig)
-PKG_CHECK_MODULES(LAUNCHPAD_LIB_PKGS REQUIRED
- aul
- bundle
- dbus-1
- dlog
- libcap
- libtzplatform-config
- security-manager
- tanchor
- )
-
-FOREACH(flag ${LAUNCHPAD_LIB_PKGS_CFLAGS})
- SET(EXTRA_CFLAGS_lib "${EXTRA_CFLAGS_lib} ${flag}")
-ENDFOREACH(flag)
-
-SET(EXTRA_CFLAGS_common "${EXTRA_CFLAGS_common} -Wl,-zdefs" )
-SET(EXTRA_CFLAGS_common "${EXTRA_CFLAGS_common} -fvisibility=hidden")
-SET(EXTRA_CFLAGS_common "${EXTRA_CFLAGS_common} -fdata-sections -ffunction-sections -Wl,--gc-sections")
-SET(EXTRA_CFLAGS_common "${EXTRA_CFLAGS_common} -D_FILE_OFFSET_BITS=64")
-SET(EXTRA_CFLAGS_common "${EXTRA_CFLAGS_common} -Werror")
-
-SET(EXTRA_CFLAGS_lib "${EXTRA_CFLAGS_lib} ${EXTRA_CFLAGS_common}")
-
-SET(CMAKE_C_FLAGS_DEBUG "-O0 -g")
-SET(CMAKE_C_FLAGS_RELEASE "-O2")
-SET(CMAKE_EXE_LINKER_FLAGS "-Wl,--as-needed")
-
-INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}/inc)
-INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/src/common/inc)
-
-AUX_SOURCE_DIRECTORY(${CMAKE_CURRENT_SOURCE_DIR}/src SOURCES)
-AUX_SOURCE_DIRECTORY(${CMAKE_SOURCE_DIR}/src/common/src COMMON_SOURCES)
-
-ADD_LIBRARY(${LAUNCHPAD_LIB} SHARED
- ${COMMON_SOURCES}
- ${SOURCES})
-
-SET_TARGET_PROPERTIES(${LAUNCHPAD_LIB} PROPERTIES SOVERSION ${MAJORVER})
-SET_TARGET_PROPERTIES(${LAUNCHPAD_LIB} PROPERTIES VERSION ${VERSION})
-SET_TARGET_PROPERTIES(${LAUNCHPAD_LIB} PROPERTIES COMPILE_FLAGS ${EXTRA_CFLAGS_lib})
-TARGET_LINK_LIBRARIES(${LAUNCHPAD_LIB} ${LAUNCHPAD_LIB_PKGS_LDFLAGS} "-ldl")
-
-INSTALL(TARGETS ${LAUNCHPAD_LIB} DESTINATION ${LIB_INSTALL_DIR} COMPONENT RuntimeLibraries)
-INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/inc/launchpad.h DESTINATION include/launchpad)
-CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/pkgconfig/launchpad.pc.in ${CMAKE_CURRENT_SOURCE_DIR}/pkgconfig/launchpad.pc @ONLY)
-INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/pkgconfig/launchpad.pc DESTINATION ${LIB_INSTALL_DIR}/pkgconfig)
-CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/pkgconfig/launchpad.pc.in ${CMAKE_CURRENT_SOURCE_DIR}/pkgconfig/liblaunchpad.pc @ONLY)
-INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/pkgconfig/liblaunchpad.pc DESTINATION ${LIB_INSTALL_DIR}/pkgconfig)
+ADD_SUBDIRECTORY(launchpad)
+ADD_SUBDIRECTORY(launchpad-hydra)
--- /dev/null
+AUX_SOURCE_DIRECTORY(${CMAKE_CURRENT_SOURCE_DIR}/src LAUNCHPAD_HYDRA_SRCS)
+SET(COMMON_SOCKET_SRCS
+ ${CMAKE_CURRENT_SOURCE_DIR}/../common/src/launchpad_socket.c)
+
+ADD_LIBRARY(${TARGET_LAUNCHPAD_HYDRA} SHARED
+ ${COMMON_SOCKET_SRCS}
+ ${LAUNCHPAD_HYDRA_SRCS})
+SET_TARGET_PROPERTIES(${TARGET_LAUNCHPAD_HYDRA} PROPERTIES
+ SOVERSION ${MAJORVER})
+SET_TARGET_PROPERTIES(${TARGET_LAUNCHPAD_HYDRA} PROPERTIES
+ VERSION ${VERSION})
+
+TARGET_INCLUDE_DIRECTORIES(${TARGET_LAUNCHPAD_HYDRA} PUBLIC
+ ${CMAKE_CURRENT_SOURCE_DIR}/inc)
+TARGET_INCLUDE_DIRECTORIES(${TARGET_LAUNCHPAD_HYDRA} PUBLIC
+ ${CMAKE_CURRENT_SOURCE_DIR}/../common/inc)
+
+APPLY_PKG_CONFIG(${TARGET_LAUNCHPAD_HYDRA} PUBLIC
+ DLOG_DEPS
+ LIBSYSTEMD_DEPS
+)
+
+TARGET_LINK_LIBRARIES(${TARGET_LAUNCHPAD_HYDRA} PUBLIC "-ldl")
+
+INSTALL(TARGETS ${TARGET_LAUNCHPAD_HYDRA} DESTINATION ${LIB_INSTALL_DIR}
+ COMPONENT RuntimeLibraries)
+INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/inc/launchpad_hydra.h
+ DESTINATION include/launchpad)
+
+CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/pkgconfig/liblaunchpad-hydra.pc.in
+ ${CMAKE_CURRENT_SOURCE_DIR}/pkgconfig/liblaunchpad-hydra.pc @ONLY)
+INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/pkgconfig/liblaunchpad-hydra.pc
+ DESTINATION ${LIB_INSTALL_DIR}/pkgconfig)
--- /dev/null
+AUX_SOURCE_DIRECTORY(${CMAKE_CURRENT_SOURCE_DIR}/src LAUNCHPAD_SRCS)
+AUX_SOURCE_DIRECTORY(${CMAKE_CURRENT_SOURCE_DIR}/../common/src LIB_COMMON_SRCS)
+
+ADD_LIBRARY(${TARGET_LAUNCHPAD} SHARED
+ ${LAUNCHPAD_SRCS}
+ ${LIB_COMMON_SRCS})
+SET_TARGET_PROPERTIES(${TARGET_LAUNCHPAD} PROPERTIES SOVERSION ${MAJORVER})
+SET_TARGET_PROPERTIES(${TARGET_LAUNCHPAD} PROPERTIES VERSION ${VERSION})
+
+TARGET_INCLUDE_DIRECTORIES(${TARGET_LAUNCHPAD} PUBLIC
+ ${CMAKE_CURRENT_SOURCE_DIR}/../common/inc)
+TARGET_INCLUDE_DIRECTORIES(${TARGET_LAUNCHPAD} PUBLIC
+ ${CMAKE_CURRENT_SOURCE_DIR}/inc)
+
+APPLY_PKG_CONFIG(${TARGET_LAUNCHPAD} PUBLIC
+ AUL_DEPS
+ BUNDLE_DEPS
+ BUXTON2_DEPS
+ DBUS_DEPS
+ DLOG_DEPS
+ LIBCAP_DEPS
+ LIBSYSTEMD_DEPS
+ LIBTZPLATFORM_CONFIG_DEPS
+ SECURITY_MANAGER_DEPS
+ TANCHOR_DEPS
+)
+
+TARGET_LINK_LIBRARIES(${TARGET_LAUNCHPAD} PUBLIC "-ldl")
+
+INSTALL(TARGETS ${TARGET_LAUNCHPAD} DESTINATION ${LIB_INSTALL_DIR}
+ COMPONENT RuntimeLibraries)
+INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/inc/launchpad.h DESTINATION
+ include/launchpad)
+
+CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/pkgconfig/launchpad.pc.in
+ ${CMAKE_CURRENT_SOURCE_DIR}/pkgconfig/launchpad.pc @ONLY)
+INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/pkgconfig/launchpad.pc
+ DESTINATION ${LIB_INSTALL_DIR}/pkgconfig)
+
+CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/pkgconfig/launchpad.pc.in
+ ${CMAKE_CURRENT_SOURCE_DIR}/pkgconfig/liblaunchpad.pc @ONLY)
+INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/pkgconfig/liblaunchpad.pc
+ DESTINATION ${LIB_INSTALL_DIR}/pkgconfig)
+++ /dev/null
-CMAKE_MINIMUM_REQUIRED(VERSION 2.8)
-PROJECT(launchpad-loader C)
-SET(LAUNCHPAD_LOADER "launchpad-loader")
-
-INCLUDE(FindPkgConfig)
-PKG_CHECK_MODULES(LAUNCHPAD_LOADER_PKGS REQUIRED
- dlog
- ecore
- elementary
- security-manager
- libtzplatform-config
- tanchor
- bundle
- aul
- vconf
- buxton2
- libsystemd
- gio-2.0
- dbus-1
- libcap
- )
-
-FOREACH(flag ${LAUNCHPAD_LOADER_PKGS_CFLAGS})
- SET(EXTRA_CFLAGS_loader "${EXTRA_CFLAGS_loader} ${flag}")
-ENDFOREACH(flag)
-
-SET(EXTRA_CFLAGS_common "${EXTRA_CFLAGS_common} -Wl,-zdefs" )
-SET(EXTRA_CFLAGS_common "${EXTRA_CFLAGS_common} -fvisibility=hidden")
-SET(EXTRA_CFLAGS_common "${EXTRA_CFLAGS_common} -fdata-sections -ffunction-sections -Wl,--gc-sections")
-SET(EXTRA_CFLAGS_common "${EXTRA_CFLAGS_common} -D_FILE_OFFSET_BITS=64")
-SET(EXTRA_CFLAGS_common "${EXTRA_CFLAGS_common} -Werror")
-
-IF(_TIZEN_FEATURE_PRELINK)
-MESSAGE(STATUS "[__PRELINK__] Enable")
-SET(EXTRA_CFLAGS_loader "${EXTRA_CFLAGS_loader} ${EXTRA_CFLAGS_common}")
-ELSE(_TIZEN_FEATURE_PRELINK)
-MESSAGE(STATUS "[__PRELINK__] Disable")
-SET(EXTRA_CFLAGS_loader "${EXTRA_CFLAGS_loader} ${EXTRA_CFLAGS_common} -fPIE")
-ENDIF(_TIZEN_FEATURE_PRELINK)
-
-SET(CMAKE_C_FLAGS_DEBUG "-O0 -g")
-SET(CMAKE_C_FLAGS_RELEASE "-O2")
-SET(CMAKE_EXE_LINKER_FLAGS "-Wl,--as-needed")
-
-INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/src/common/inc)
-INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/src/lib/inc)
-
-AUX_SOURCE_DIRECTORY(${CMAKE_CURRENT_SOURCE_DIR}/src SOURCES)
-AUX_SOURCE_DIRECTORY(${CMAKE_SOURCE_DIR}/src/common/src COMMON_SOURCES)
-
-SET(LAUNCHPAD_LOADER_SOURCE_FILES
- ${COMMON_SOURCES}
- ${SOURCES})
-ADD_EXECUTABLE(${LAUNCHPAD_LOADER} ${LAUNCHPAD_LOADER_SOURCE_FILES})
-
-# To support 2.x applications which use their own shared libraries.
-# Since we cannot set LD_LIBRARY_PATH directly by security issue, we make the
-# dynamic linker looks in the CWD forcely.
-TARGET_LINK_LIBRARIES(${LAUNCHPAD_LOADER} "-ldl -Wl,-rpath,: -Wl,--disable-new-dtags")
-
-IF(_TIZEN_FEATURE_PRELINK)
-TARGET_LINK_LIBRARIES(${LAUNCHPAD_LOADER} ${LAUNCHPAD_LOADER_PKGS_LDFLAGS} launchpad)
-ELSE(_TIZEN_FEATURE_PRELINK)
-TARGET_LINK_LIBRARIES(${LAUNCHPAD_LOADER} ${LAUNCHPAD_LOADER_PKGS_LDFLAGS} launchpad "-pie")
-ENDIF(_TIZEN_FEATURE_PRELINK)
-
-SET_TARGET_PROPERTIES(${LAUNCHPAD_LOADER} PROPERTIES COMPILE_FLAGS ${EXTRA_CFLAGS_loader})
-SET_TARGET_PROPERTIES(${LAUNCHPAD_LOADER}
- PROPERTIES SKIP_BUILD_RPATH TRUE
- ) # remove rpath option that is automatically generated by cmake.
-INSTALL(TARGETS ${LAUNCHPAD_LOADER} DESTINATION bin)
-
-IF(_TIZEN_FEATURE_LOADER_ARCH64)
-CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/conf/default_arch64.loader.in ${CMAKE_CURRENT_SOURCE_DIR}/conf/default.loader @ONLY)
-ELSE(_TIZEN_FEATURE_LOADER_ARCH64)
-CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/conf/default_arch32.loader.in ${CMAKE_CURRENT_SOURCE_DIR}/conf/default.loader @ONLY)
-ENDIF(_TIZEN_FEATURE_LOADER_ARCH64)
-INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/conf/default.loader DESTINATION share/aul)
+++ /dev/null
-CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
-PROJECT(launchpad-parser CXX)
-
-INCLUDE(FindPkgConfig)
-pkg_check_modules(PKGS REQUIRED
- dlog
- libxml-2.0
- pkgmgr-installer
-)
-
-FOREACH(FLAGS ${PKGS_CFLAGS})
- SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${FLAGS}")
-ENDFOREACH(FLAGS)
-
-SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} -fvisibility=hidden -Wall -Werror -Winline -std=c++11")
-
-SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${EXTRA_CFLAGS}")
-SET(CMAKE_CXX_FLAGS_DEBUG "-O0 -g")
-SET(CMAKE_CXX_FLAGS_RELEASE "-O2")
-
-ADD_LIBRARY(${PROJECT_NAME} SHARED
- launchpad_parser_plugin.cc
- loader_info.cc
- launchpad_parser_plugin_pkgmgr_interface.cc
-)
-
-INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}/../)
-
-SET(PLUGINS_LIST_FILE_NAME launchpad_plugins.txt)
-SET(PLUGINS_LIST_FILE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/${PLUGINS_LIST_FILE_NAME})
-
-SET(PLUGINS_LIST_INSTALL_PATH ${CMAKE_INSTALL_PREFIX}/share/parser-plugins)
-
-ADD_DEFINITIONS("-DPLUGINS_LIST_INSTALL_PATH=\"${PLUGINS_LIST_INSTALL_PATH}\"")
-
-INSTALL(FILES ${PLUGINS_LIST_FILE_PATH} DESTINATION ${PLUGINS_LIST_INSTALL_PATH}/)
-
-TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${PKGS_LDFLAGS})
-
-INSTALL(TARGETS ${PROJECT_NAME} DESTINATION ${SYSCONF_INSTALL_DIR}/package-manager/parserlib)