X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=CMakeLists.txt;h=ee257f0b8f4596ab77b893e7058114c1fa6798a4;hb=9f21cc18aa89ea111a8a33b30b15ea88c449168b;hp=42a1e507ca0529d183b91df3e65589d6671b6406;hpb=45bf3bfbb061b87511ece6f50b1aa6c803844a65;p=framework%2Fweb%2Fwrt-commons.git diff --git a/CMakeLists.txt b/CMakeLists.txt index 42a1e50..ee257f0 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -19,46 +19,44 @@ # @brief # -# # Check minimum CMake version -# CMAKE_MINIMUM_REQUIRED(VERSION 2.6) -# # Project name -# PROJECT(dpl) -# -# Logs -# +STRING(REGEX MATCH "([^.]*)" API_VERSION "${VERSION}") +ADD_DEFINITIONS("-DAPI_VERSION=\"$(API_VERSION)\"") +# Comment this to disable control of global settings with environment variable +ADD_DEFINITIONS("-DGLOBAL_SETTINGS_CONTROL") -OPTION(DPL_LOG "DPL logs status" OFF) +# Build type +IF(NOT CMAKE_BUILD_TYPE) + SET(CMAKE_BUILD_TYPE "Release") +ENDIF(NOT CMAKE_BUILD_TYPE) -IF(DPL_LOG) +# Options +OPTION(DPL_LOG "DPL logs status" OFF) +IF(DPL_LOG AND NOT CMAKE_BUILD_TYPE MATCHES "profiling") MESSAGE(STATUS "Logging enabled for DPL") ADD_DEFINITIONS("-DDPL_LOGS_ENABLED") -ELSE(DPL_LOG) +ELSE(DPL_LOG AND NOT CMAKE_BUILD_TYPE MATCHES "profiling") MESSAGE(STATUS "Logging disabled for DPL") -ENDIF(DPL_LOG) -ADD_DEFINITIONS("-DSEPARATED_SINGLETON_IMPLEMENTATION") - -# Gtk -OPTION(DISABLE_GTK "Disable GTK stuff" ON) - -# -# Build type -# +ENDIF(DPL_LOG AND NOT CMAKE_BUILD_TYPE MATCHES "profiling") -SET(CMAKE_BUILD_TYPE "Release") +# Compiler flags +SET(CMAKE_C_FLAGS_PROFILING "-O2") +SET(CMAKE_CXX_FLAGS_PROFILING "-O2 -std=c++0x") +SET(CMAKE_C_FLAGS_DEBUG "-O0 -g") +SET(CMAKE_CXX_FLAGS_DEBUG "-O0 -std=c++0x -g") +SET(CMAKE_C_FLAGS_RELEASE "-O2 -g") +SET(CMAKE_CXX_FLAGS_RELEASE "-O2 -std=c++0x -g") +SET(CMAKE_CXX_FLAGS_CCOV "-O0 -std=c++0x -g --coverage") -SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fPIC") -SET(CMAKE_CXX_FLAGS "-O2 -g -fPIC -D_FORTIFY_SOURCE=0") +ADD_DEFINITIONS("-fPIC") # If supported for the target machine, emit position-independent code, suitable for dynamic linking and avoiding any limit on the size of the global offset table. This option makes a difference on the m68k, PowerPC and SPARC. (BJ: our ARM too?) -# # CMake settings -# MESSAGE(STATUS "========================================") MESSAGE(STATUS "CMAKE_BINARY_DIR: " ${CMAKE_BINARY_DIR}) MESSAGE(STATUS "CMAKE_CURRENT_BINARY_DIR: " ${CMAKE_CURRENT_BINARY_DIR}) @@ -109,15 +107,10 @@ MESSAGE(STATUS "CMAKE_AR: " ${CMAKE_AR}) MESSAGE(STATUS "CMAKE_RANLIB: " ${CMAKE_RANLIB}) MESSAGE(STATUS "========================================") -# # Build 3rd party libraries first -# ADD_SUBDIRECTORY(3rdparty) -# # Compiler flags -# - ADD_DEFINITIONS("-fvisibility=default") # mark all exported symbols as visible # Warnings mode @@ -177,6 +170,7 @@ ADD_DEFINITIONS("-std=c++0x") SET(DPL_3RDPARTY_INCLUDE_DIR ${PROJECT_SOURCE_DIR}/3rdparty) + # Set names of binaries being created SET(TARGET_DPL_EFL "lib${PROJECT_NAME}-efl") SET(TARGET_DPL_DBUS_EFL "lib${PROJECT_NAME}-dbus-efl") @@ -189,15 +183,19 @@ SET(TARGET_DPL_LOG_EFL "lib${PROJECT_NAME}-log-efl") SET(TARGET_DPL_POPUP "lib${PROJECT_NAME}-popup-efl") SET(TARGET_WRT_DAO_RW_LIB "dpl-wrt-dao-rw") SET(TARGET_WRT_DAO_RO_LIB "dpl-wrt-dao-ro") +SET(TARGET_AUTO_SAVE_DAO_LIB "wrt-commons-auto-save-dao") +SET(TARGET_AUTO_SAVE_DAO_RW_LIB "wrt-commons-auto-save-dao-rw") +SET(TARGET_AUTO_SAVE_DAO_RO_LIB "wrt-commons-auto-save-dao-ro") SET(TARGET_DPL_UTILS_EFL "lib${PROJECT_NAME}-utils-efl") -SET(TARGET_ACE_DAO_RO_LIB "dpl-ace-dao-ro") -SET(TARGET_ACE_DAO_RW_LIB "dpl-ace-dao-rw") -SET(TARGET_ACE_LIB "dpl-ace") -SET(TARGET_VCORE_LIB "dpl-vcore") +SET(TARGET_DPL_ENCRYPTION "lib${PROJECT_NAME}-encryption") + +macro(configure_and_install_pkg PKG_FILE) + CONFIGURE_FILE(${PKG_FILE}.in ${PKG_FILE} @ONLY) + INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/${PKG_FILE} DESTINATION lib/pkgconfig) +endmacro(configure_and_install_pkg) ADD_SUBDIRECTORY(modules) ADD_SUBDIRECTORY(build) -ADD_SUBDIRECTORY(tests) ADD_SUBDIRECTORY(etc)