CMAKE_MINIMUM_REQUIRED(VERSION 2.6) SET(MUSE_CORE "muse-core") PROJECT(${MUSE_CORE}) SET(CMAKE_INSTALL_PREFIX /usr) SET(PREFIX ${CMAKE_INSTALL_PREFIX}) SET(BINDIR "${PREFIX}/bin") SET(INC_DIR core/include) INCLUDE_DIRECTORIES(${INC_DIR}) SET(dependents dlog glib-2.0 json-c mm-common) SET(pc_dependents mm-common) IF(${MUSE_REGISTER_VIP}) SET(dependents ${dependents} " libresourced") ENDIF(${MUSE_REGISTER_VIP}) IF(${MUSE_USE_LWIPC}) SET(dependents ${dependents} " lwipc") ENDIF(${MUSE_USE_LWIPC}) IF(${MUSE_TTRACE_LOG}) SET(dependents ${dependents} " ttrace") ENDIF(${MUSE_TTRACE_LOG}) INCLUDE(FindPkgConfig) pkg_check_modules(${MUSE_CORE} REQUIRED ${dependents}) FOREACH(flag ${${MUSE_CORE}_CFLAGS}) SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}") ENDFOREACH(flag) SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS} -Wall -fPIE -fno-strict-aliasing -Werror -Wformat -Wextra") SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-array-bounds -Wno-empty-body -Wno-ignored-qualifiers") SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-unused-parameter -Wshadow -Wwrite-strings -Wswitch-default") SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-unused-but-set-parameter -Wno-unused-but-set-variable -Wno-unused-result") IF(MUSE_GTESTS_BUILD) SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fprofile-arcs -ftest-coverage") ENDIF(MUSE_GTESTS_BUILD) SET(CMAKE_C_FLAGS_DEBUG "-O0 -g") IF("${ARCH}" STREQUAL "arm") ADD_DEFINITIONS("-DTARGET") ENDIF("${ARCH}" STREQUAL "arm") ADD_DEFINITIONS("-DPREFIX=\"${CMAKE_INSTALL_PREFIX}\"") ADD_DEFINITIONS("-DTIZEN_DEBUG") ADD_DEFINITIONS(-DTZ_SYS_DATA_PATH="${TZ_SYS_DATA}") aux_source_directory(core/src SOURCES) ADD_LIBRARY(${MUSE_CORE} SHARED ${SOURCES}) TARGET_LINK_LIBRARIES(${MUSE_CORE} ${${MUSE_CORE}_LDFLAGS}) SET_TARGET_PROPERTIES(${MUSE_CORE} PROPERTIES VERSION ${FULLVER} SOVERSION ${MAJORVER} CLEAN_DIRECT_OUTPUT 1 ) INSTALL(TARGETS ${MUSE_CORE} DESTINATION ${LIBDIR}) INSTALL( DIRECTORY ${INC_DIR}/ DESTINATION include/media FILES_MATCHING PATTERN "*_private.h" EXCLUDE PATTERN "${INC_DIR}/muse_core.h" ) SET(PC_NAME ${MUSE_CORE}) SET(PC_REQUIRED ${pc_dependents}) SET(PC_LDFLAGS -l${MUSE_CORE}) SET(PC_CFLAGS -I\${includedir}/media) CONFIGURE_FILE( ${MUSE_CORE}.pc.in ${CMAKE_CURRENT_SOURCE_DIR}/${MUSE_CORE}.pc @ONLY ) INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/${MUSE_CORE}.pc DESTINATION ${LIBDIR}/pkgconfig) ADD_SUBDIRECTORY(server) ADD_SUBDIRECTORY(client) IF(MUSE_GTESTS_BUILD) ADD_SUBDIRECTORY(unittest) ENDIF(MUSE_GTESTS_BUILD) IF(UNIX) ADD_CUSTOM_TARGET (distclean @echo cleaning for source distribution) ADD_CUSTOM_COMMAND( DEPENDS clean COMMENT "distribution clean" COMMAND find ARGS . -not -name config.cmake -and \( -name tester.c -or -name Testing -or -name CMakeFiles -or -name cmake.depends -or -name cmake.check_depends -or -name CMakeCache.txt -or -name cmake.check_cache -or -name *.cmake -or -name Makefile -or -name core -or -name core.* -or -name gmon.out -or -name install_manifest.txt -or -name *.pc -or -name *~ \) | grep -v TC | xargs rm -rf TARGET distclean VERBATIM ) ENDIF(UNIX)