X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=build%2Ftizen-cmake%2FCMakeLists.txt;h=988cf6114d1054062435b5c96689e98f5a0f059b;hb=d54d1e47a70d7fee30d9e045272e5a81c3348128;hp=8faa8a1afaa4e69bcfd9e2a523d9d021c805e580;hpb=9d38b085d8a186cc7980a6f854492591353ddfe5;p=platform%2Fcore%2Fuifw%2Fdali-core.git diff --git a/build/tizen-cmake/CMakeLists.txt b/build/tizen-cmake/CMakeLists.txt index 8faa8a1..988cf61 100644 --- a/build/tizen-cmake/CMakeLists.txt +++ b/build/tizen-cmake/CMakeLists.txt @@ -24,11 +24,18 @@ OPTION(ENABLE_COVERAGE "Coverage" OFF) # Set up compiler definitions +IF(CMAKE_BUILD_TYPE MATCHES Debug) + MESSAGE( STATUS "CMAKE_BUILD_TYPE: " Debug ) + SET(ENABLE_DEBUG ON) +ELSE() + MESSAGE( STATUS "CMAKE_BUILD_TYPE: " Release ) +ENDIF() + ADD_DEFINITIONS(-DPLATFORM_TIZEN -DDALI_COMPILATION) ADD_DEFINITIONS(-DPIC -DSTDC_HEADERS) IF("${ARCH}" STREQUAL "arm") - ADD_DEFINITIONS("-DTARGET") + ADD_DEFINITIONS("-DTARGET") ENDIF("${ARCH}" STREQUAL "arm") IF( NOT ${ENABLE_EXPORTALL} AND NOT ${ENABLE_DEBUG} ) @@ -54,33 +61,34 @@ SET( EXEC_PREFIX ${CMAKE_INSTALL_PREFIX}) # from root/build/tizen, get back to root SET(ROOT_SRC_DIR ${CMAKE_SOURCE_DIR}/../..) -# Requires the following variables to be setup -# @PREFIX@ @EXEC_PREFIX@ @DALI_VERSION@ @LIBDIR@ @DEV_INCLUDE_PATH@ -SET(INCLUDE_DIR $ENV{includedir}) -SET(DEV_INCLUDE_PATH ${INCLUDE_DIR}) -SET(LIB_DIR $ENV{libdir}) -CONFIGURE_FILE( dali-core.pc.in dali-core.pc ) - -MESSAGE( STATUS "CMAKE_BUILD_TYPE: " ${CMAKE_BUILD_TYPE} ) -if(CMAKE_BUILD_TYPE MATCHES Debug) - MESSAGE("Setting variable: DEBUG_ENABLED") - SET(DEBUG_ENABLED "1") +# Set up the include dir +SET( INCLUDE_DIR $ENV{includedir} ) +IF( NOT INCLUDE_DIR ) + SET( INCLUDE_DIR ${PREFIX}/include ) ENDIF() +# Set up the lib dir +SET( LIB_DIR $ENV{libdir} ) +IF( NOT LIB_DIR ) + SET( LIB_DIR ${PREFIX}/lib ) +ENDIF() + +# Configure the pkg-config file +# Requires the following variables to be setup: +# @PREFIX@ @EXEC_PREFIX@ @DALI_VERSION@ @LIB_DIR@ @DEV_INCLUDE_PATH@ +SET( DEV_INCLUDE_PATH ${INCLUDE_DIR} ) +SET( CORE_PKG_CFG_FILE dali-core.pc ) +CONFIGURE_FILE( ${CORE_PKG_CFG_FILE}.in ${CORE_PKG_CFG_FILE} @ONLY ) + # Set up compiler flags and warnings #ADD_COMPILE_OPTIONS( -std=c++11 -ggdb ) ADD_COMPILE_OPTIONS( -std=c++11 -gdwarf-4 ) ADD_COMPILE_OPTIONS( -Wnon-virtual-dtor -Woverloaded-virtual -Wold-style-cast ) ADD_COMPILE_OPTIONS( -Werror -Wall -Wextra -Wno-unused-parameter -Wfloat-equal ) -IF( ENABLE_DEBUG ) - ADD_COMPILE_OPTIONS( -O0 ) -ELSE( ENABLE_DEBUG ) - ADD_COMPILE_OPTIONS( -Os ) -ENDIF( ENABLE_DEBUG ) - -IF( ENABLE_COVERAGE OR CXXFLAGS MATCHES --coverage) +IF( ENABLE_COVERAGE OR "$ENV{CXXFLAGS}" MATCHES --coverage ) ADD_COMPILE_OPTIONS( --coverage ) + SET(ENABLE_COVERAGE ON) SET(COVERAGE --coverage) ENDIF() @@ -89,6 +97,7 @@ INCLUDE_DIRECTORIES( ) SET(SOURCE_DIR "${ROOT_SRC_DIR}/dali") +SET(PACKAGE_DOXY_SRC_DIR "${ROOT_SRC_DIR}/doc") SET(SOURCES "") @@ -98,6 +107,7 @@ ADD_SUBDIRECTORY( ${SOURCE_DIR}/internal dali/internal ) ADD_SUBDIRECTORY( ${SOURCE_DIR}/integration-api dali/integration-api ) ADD_SUBDIRECTORY( ${SOURCE_DIR}/public-api dali/public-api ) ADD_SUBDIRECTORY( ${SOURCE_DIR}/devel-api dali/devel-api ) +ADD_SUBDIRECTORY( ${PACKAGE_DOXY_SRC_DIR} doc ) ADD_LIBRARY( ${name} SHARED ${SOURCES} ) @@ -114,7 +124,10 @@ SET_TARGET_PROPERTIES( ${name} ) # Install the library so file and symlinks -INSTALL( TARGETS ${name} DESTINATION ${PREFIX}/lib ) +INSTALL( TARGETS ${name} DESTINATION ${LIB_DIR} ) + +# Install the pkg-config file +INSTALL( FILES ${CMAKE_BINARY_DIR}/${CORE_PKG_CFG_FILE} DESTINATION ${LIB_DIR}/pkgconfig ) # macro for installing headers by replacing prefix. (TODO, investigate # if there is a CMAKE way of doing this automatically) @@ -123,7 +136,7 @@ MACRO(INSTALL_HEADERS_WITH_DIRECTORY HEADER_LIST STRIP_PREFIX REPLACE_PREFIX) FOREACH(HEADER ${${HEADER_LIST}}) STRING(REGEX MATCH "(.*)[/]" DIR ${HEADER}) STRING(REPLACE ${SPREFIX} ${REPLACE_PREFIX} NEWDIR ${DIR}) - INSTALL(FILES ${HEADER} DESTINATION ${PREFIX}/include/${NEWDIR}) + INSTALL(FILES ${HEADER} DESTINATION ${INCLUDE_DIR}/${NEWDIR}) ENDFOREACH(HEADER) ENDMACRO(INSTALL_HEADERS_WITH_DIRECTORY) @@ -131,6 +144,7 @@ ENDMACRO(INSTALL_HEADERS_WITH_DIRECTORY) INSTALL_HEADERS_WITH_DIRECTORY(PUBLIC_API_HEADERS ${SOURCE_DIR} "dali") INSTALL_HEADERS_WITH_DIRECTORY(DEVEL_API_HEADERS ${SOURCE_DIR} "dali") INSTALL_HEADERS_WITH_DIRECTORY(INTEGRATION_API_HEADERS ${SOURCE_DIR} "dali") +INSTALL_HEADERS_WITH_DIRECTORY(PACKAGE_DOXY_HEADERS ${PACKAGE_DOXY_SRC_DIR} "dali/doc" ) IF(UNIX) # Define custom rules for coverage @@ -189,7 +203,11 @@ ENDIF(UNIX) MESSAGE( STATUS "Configuration:\n" ) MESSAGE( STATUS "Prefix: " ${PREFIX} ) +MESSAGE( STATUS "Lib Dir: " ${LIB_DIR} ) +MESSAGE( STATUS "Include Dir: " ${INCLUDE_DIR} ) MESSAGE( STATUS "Debug build: " ${ENABLE_DEBUG} ) MESSAGE( STATUS "Backtrace: " ${ENABLE_BACKTRACE} ) MESSAGE( STATUS "Scoped Lock backtrace: " ${ENABLE_LOCK_BACKTRACE} ) MESSAGE( STATUS "Coverage: " ${ENABLE_COVERAGE} ) +MESSAGE( STATUS "CXXFLAGS: " ${CMAKE_CXX_FLAGS} ) +MESSAGE( STATUS "LDFLAGS: " ${CMAKE_SHARED_LINKER_FLAGS_INIT}${CMAKE_SHARED_LINKER_FLAGS} )