X-Git-Url: http://review.tizen.org/git/?p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git;a=blobdiff_plain;f=build%2Ftizen%2FCMakeLists.txt;h=a1f4efdd961aef8e589888ccc6b4dfdb9fd8a059;hp=6313fc9cd0223cba30879e5fb7569b2444483aa5;hb=HEAD;hpb=1f5f10ff81ed70d033cbc236216dda5ea5a1b8e4 diff --git a/build/tizen/CMakeLists.txt b/build/tizen/CMakeLists.txt index 6313fc9..056af0b 100644 --- a/build/tizen/CMakeLists.txt +++ b/build/tizen/CMakeLists.txt @@ -34,7 +34,8 @@ OPTION(ENABLE_LINK_TEST "Enable the link test" ON) OPTION(INSTALL_DOXYGEN_DOC "Install doxygen doc" ON) OPTION(CONFIGURE_AUTOMATED_TESTS "Configure automated tests" ON) OPTION(USE_DEFAULT_RESOURCE_DIR "Whether to use the default resource folders. Otherwise set environment variables for DALI_IMAGE_DIR, DALI_SOUND_DIR, DALI_STYLE_DIR, DALI_STYLE_IMAGE_DIR and DALI_DATA_READ_ONLY_DIR" ON) -OPTION(BUILD_SCENE3D "Whether to build dali-scene3d." ON) +OPTION(BUILD_SCENE3D "Whether to build dali-scene3d." ON) +OPTION(BUILD_PHYSICS "Whether to build dali-physics." ON) IF( ENABLE_PKG_CONFIGURE ) FIND_PACKAGE( PkgConfig REQUIRED ) @@ -218,19 +219,7 @@ ELSE() # Set up compiler flags and warnings ADD_COMPILE_OPTIONS( -Wno-ignored-qualifiers ) - # TODO: Clang is a lot more strict with warnings, we should address - # those issues at some point. - # Matches "Clang" or "AppleClang" - IF( NOT "${CMAKE_CXX_COMPILER_ID}" MATCHES "Clang" ) - ADD_COMPILE_OPTIONS( -Werror ) - ENDIF() - - ADD_COMPILE_OPTIONS( -Wall -Wno-unused-parameter -Wno-float-equal ) ADD_COMPILE_OPTIONS( -Wall -Wno-unused-parameter -Wno-float-equal ) - CHECK_CXX_COMPILER_FLAG(-Wno-class-memaccess HAVE_NO_CLASS_MEMACCESS) - IF (HAVE_NO_CLASS_MEMACCESS) - ADD_COMPILE_OPTIONS( -Wno-class-memaccess ) - ENDIF() IF( ENABLE_COVERAGE OR "$ENV{CXXFLAGS}" MATCHES --coverage ) ADD_COMPILE_OPTIONS( --coverage ) @@ -325,9 +314,11 @@ ELSE() DESTINATION bin) ENDIF() -SET(BUILT_IN_SHADER_GEN_CPP "${GENERATED_SHADER_DIR}/generated/builtin-shader-gen.cpp") +SET(BUILT_IN_SHADER_GEN_CPP "${GENERATED_SHADER_DIR}/generated/builtin-shader-gen.cpp" ) + +FILE(GLOB SHADERS_SRC "${SHADER_SOURCE_DIR}/*.vert" "${SHADER_SOURCE_DIR}/*.frag" ) ADD_CUSTOM_COMMAND(OUTPUT ${BUILT_IN_SHADER_GEN_CPP} - DEPENDS ${SHADER_GENERATOR_NAME} + DEPENDS ${SHADER_GENERATOR_NAME} ${SHADERS_SRC} COMMAND ${SHADER_GENERATOR_BINARY} ${SHADER_SOURCE_DIR} ${SHADER_GENERATED_DIR}) SET(SOURCES ${SOURCES} ${BUILT_IN_SHADER_GEN_CPP}) @@ -369,6 +360,23 @@ IF ( WIN32 ) ENDIF() ADD_LIBRARY( ${name} ${LIBTYPE} ${SOURCES} ) + +SET(CUSTOM_COMPILE_OPTIONS "") + +# TODO: Clang is a lot more strict with warnings, we should address +# those issues at some point. +# Matches "Clang" or "AppleClang" +IF( NOT "${CMAKE_CXX_COMPILER_ID}" MATCHES "Clang" ) + SET(CUSTOM_COMPILE_OPTIONS ${MY_COMPILE_OPTIONS} -Werror) +ENDIF() + +CHECK_CXX_COMPILER_FLAG(-Wno-class-memaccess HAVE_NO_CLASS_MEMACCESS) +IF (HAVE_NO_CLASS_MEMACCESS) + SET(CUSTOM_COMPILE_OPTIONS ${MY_COMPILE_OPTIONS} -Wno-class-memaccess) +ENDIF() + +target_compile_options(${name} PRIVATE ${CUSTOM_COMPILE_OPTIONS}) + TARGET_LINK_LIBRARIES( ${name} ${DALICORE_LDFLAGS} ${DALIADAPTOR_LDFLAGS} @@ -511,7 +519,7 @@ IF( ENABLE_COVERAGE ) ADD_CUSTOM_TARGET( ${DALI_TOOLKIT_PREFIX}rename_cov_data ./rename-cov-data ) ADD_CUSTOM_TARGET( ${DALI_TOOLKIT_PREFIX}cov_data ${LCOV_BIN} ${LCOV_OPTS} --base-directory . --directory . -c -o dali.info - COMMAND ${LCOV_BIN} ${LCOV_OPTS} --remove dali.info \"*/dali-env/*\" \"/usr/include/*\" \"*/dali-env/*\" \"*solid-color-actor*\" \"*/dali-toolkit/third-party/*\" \"*/dali-scene3d/third-party/*\" -o dali.info ) + COMMAND ${LCOV_BIN} ${LCOV_OPTS} --remove dali.info \"*/dali-env/*\" \"/usr/include/*\" \"*/third-party/*\" -o dali.info ) ADD_CUSTOM_TARGET( ${DALI_TOOLKIT_PREFIX}coverage genhtml -p ${ROOT_SRC_DIR} ${LCOV_OPTS} -o ${COVERAGE_OUTPUT_DIR} dali.info DEPENDS cov_data ) @@ -558,6 +566,9 @@ IF ( BUILD_SCENE3D ) ADD_SUBDIRECTORY( ${CMAKE_CURRENT_SOURCE_DIR}/dali-scene3d ) ENDIF() +IF ( BUILD_PHYSICS ) + ADD_SUBDIRECTORY( ${CMAKE_CURRENT_SOURCE_DIR}/dali-physics ) +ENDIF() # Build documentation if doxygen tool is available SET( doxygenEnabled OFF ) @@ -565,6 +576,17 @@ IF( DOXYGEN_FOUND ) SET( doxygenEnabled ON ) # 'prefix' is used by doxygen in-files. SET( prefix ${PREFIX} ) + + # Some doxygen properties not allowed at low version. + # We need to get doxygen version, and block in doxygen in-files. + EXECUTE_PROCESS( COMMAND bash -c "${DOXYGEN_EXECUTABLE} --version" OUTPUT_VARIABLE DOXYGEN_VERSION ) + + IF(${DOXYGEN_VERSION} VERSION_LESS "1.9.1") + SET( DOXYGEN_VERSION_LESS_1_9_1_BLOCKED "# ") + ELSE() + SET( DOXYGEN_VERSION_LESS_1_9_1_BLOCKED "") + ENDIF() + SET( DOXYGEN_DOCS_DIR ${ROOT_SRC_DIR}/docs ) SET( DOXYGEN_ROOT_DIR ${ROOT_SRC_DIR} ) SET( DOXYGEN_SRC_DIR ${CMAKE_CURRENT_SOURCE_DIR}/docs ) @@ -631,6 +653,7 @@ MESSAGE( STATUS "Vector Based Text Rendering: " ${ENABLE_VECTOR_BASED_TEXT_REN MESSAGE( STATUS "Enable link test: " ${ENABLE_LINK_TEST} ) MESSAGE( STATUS "Configure automated tests: " ${CONFIGURE_AUTOMATED_TESTS} ) MESSAGE( STATUS "Build Dali Scene3D: " ${BUILD_SCENE3D} ) +MESSAGE( STATUS "Build Dali Physics: " ${BUILD_PHYSICS} ) MESSAGE( STATUS "CXXFLAGS: " ${CMAKE_CXX_FLAGS} ) MESSAGE( STATUS "LDFLAGS: " ${CMAKE_SHARED_LINKER_FLAGS_INIT}${CMAKE_SHARED_LINKER_FLAGS} )