X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=CMakeLists.txt;h=2b987cb0a94d3ba0a07fa6b8fcb3ca83c527e99e;hb=fabf32d67c5e39af8a6e3efa2c0ff6e14965a083;hp=a51a70344af5e7a85fcce5817bb1f85373888107;hpb=ff3b4dd95c88cc4b74dacfb53c7e79c6f7786f92;p=platform%2Fcore%2Fappfw%2Fapp2sd.git diff --git a/CMakeLists.txt b/CMakeLists.txt index a51a703..2b987cb 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,59 +1,43 @@ CMAKE_MINIMUM_REQUIRED(VERSION 2.6) -#SET(CMAKE_ALLOW_LOOSE_LOOP_CONSTRUCTS true) -PROJECT(app2ext C) +PROJECT(app2ext C CXX) -SET(VERSION_MAJOR 0) -SET(VERSION "${VERSION_MAJOR}.4.2") +SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} -fvisibility=hidden") +SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} -g -Wall -Werror") -#Add your submodule directory name -ADD_SUBDIRECTORY(plugin/app2sd) +SET(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_CURRENT_SOURCE_DIR}/cmake/Modules/") -### Required packages INCLUDE(FindPkgConfig) -pkg_check_modules(pkgs REQUIRED dlog) - -FOREACH(flag ${pkgs_CFLAGS}) - SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}") -ENDFOREACH(flag) +INCLUDE(ApplyPkgConfig) +PKG_CHECK_MODULES(app2ext_libpkgs REQUIRED dlog glib-2.0) +PKG_CHECK_MODULES(GMOCK_DEPS REQUIRED gmock) -pkg_check_modules(libpkgs REQUIRED dlog) - -FOREACH(flag ${libpkgs_CFLAGS}) - SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}") +FOREACH(flag ${app2ext_libpkgs_CFLAGS}) + SET(APP2EXT_CFLAGS "${APP2EXT_CFLAGS} ${flag}") ENDFOREACH(flag) - -SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS}") - -### Local include directories -INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/inc ${CMAKE_SOURCE_DIR}/src) - -## build app2ext library -SET(app2ext_dir "${CMAKE_SOURCE_DIR}") -SET(app2ext_inc_dir "${app2ext_dir}/inc") -SET(app2ext_src_dir "${app2ext_dir}/src") -SET(APP2EXT "app2ext") -SET(libapp2ext_SOURCES ${app2ext_src_dir}/app2ext_interface.c) -SET(libapp2ext_LDFLAGS " -L${LIB_INSTALL_DIR} -module -avoid-version -ldl ") -SET(libapp2ext_CFLAGS " ${CFLAGS} -fPIC -I${app2ext_inc_dir} ") +SET(CMAKE_C_FLAGS "${EXTRA_CFLAGS} ${APP2EXT_CFLAGS}") ADD_DEFINITIONS("-DLIBPREFIX=\"${LIB_INSTALL_DIR}\"") -ADD_LIBRARY(${APP2EXT} SHARED ${libapp2ext_SOURCES}) -SET_TARGET_PROPERTIES(${APP2EXT} PROPERTIES SOVERSION ${VERSION_MAJOR}) -SET_TARGET_PROPERTIES(${APP2EXT} PROPERTIES VERSION ${VERSION}) -SET_TARGET_PROPERTIES(${APP2EXT} PROPERTIES COMPILE_FLAGS "${libapp2ext_CFLAGS}") -TARGET_LINK_LIBRARIES(${APP2EXT} ${libpkgs_LDFLAGS}) +# Local include directories +INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/inc) -SET(CMAKE_INSTALL_PREFIX "/usr") -SET(PREFIX ${CMAKE_INSTALL_PREFIX}) +# build app2ext library +SET(APP2EXT "app2ext") +AUX_SOURCE_DIRECTORY(${CMAKE_CURRENT_SOURCE_DIR}/src APP2EXT_SRCS) -CONFIGURE_FILE(${CMAKE_SOURCE_DIR}/app2sd.manifest.in ${CMAKE_BINARY_DIR}/app2sd.manifest @ONLY) +ADD_LIBRARY(${APP2EXT} SHARED ${APP2EXT_SRCS}) +SET_TARGET_PROPERTIES(${APP2EXT} PROPERTIES SOVERSION ${MAJORVER}) +SET_TARGET_PROPERTIES(${APP2EXT} PROPERTIES VERSION ${FULLVER}) +SET_TARGET_PROPERTIES(${APP2EXT} PROPERTIES COMPILE_FLAGS ${CFLAGS} "-fPIC -fstack-protector-strong") +SET_TARGET_PROPERTIES(${APP2EXT} PROPERTIES LINK_FLAGS "-Wl,--as-needed,-z,relro") +TARGET_LINK_LIBRARIES(${APP2EXT} ${app2ext_libpkgs_LDFLAGS}) CONFIGURE_FILE(${CMAKE_SOURCE_DIR}/app2sd.pc.in ${CMAKE_BINARY_DIR}/app2sd.pc @ONLY) INSTALL(TARGETS ${APP2EXT} DESTINATION ${LIB_INSTALL_DIR} COMPONENT RuntimeLibraries) INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/app2sd.pc DESTINATION ${LIB_INSTALL_DIR}/pkgconfig) -INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/inc/app2ext_interface.h DESTINATION include) +INSTALL(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/inc/ DESTINATION include) +ADD_SUBDIRECTORY(plugin/app2sd) ADD_SUBDIRECTORY(test) - +ADD_SUBDIRECTORY(unit-tests)