1 CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
2 SET(CMAKE_ALLOW_LOOSE_LOOP_CONSTRUCTS true)
6 SET(VERSION "${VERSION_MAJOR}.1.0")
7 AUX_SOURCE_DIRECTORY(src SOURCES)
11 SET(PREFIX ${CMAKE_INSTALL_PREFIX})
12 SET(EXEC_PREFIX "\${prefix}")
13 SET(LIBDIR ${LIB_INSTALL_DIR})
14 SET(INCLUDEDIR "\${prefix}/include/appsvc")
16 # Build type : Release
17 IF("${CMAKE_BUILD_TYPE}" STREQUAL "")
18 SET(CMAKE_BUILD_TYPE "Release")
20 MESSAGE("Build type: ${CMAKE_BUILD_TYPE}")
22 # Set required packages
23 INCLUDE(FindPkgConfig)
25 SET(APPSVC_LIBPKGS_CHECK_MODULES "dlog bundle aul ecore")
28 pkg_check_modules(libpkgs REQUIRED ${APPSVC_LIBPKGS_CHECK_MODULES} ecore-x)
32 ADD_DEFINITIONS("-DWAYLAND")
33 pkg_check_modules(libpkgs REQUIRED ${APPSVC_LIBPKGS_CHECK_MODULES})
36 FOREACH(flag ${libpkgs_CFLAGS})
37 SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}")
41 INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/include)
42 INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/legacy)
43 SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} -Wl,-zdefs" )
44 SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} -fvisibility=hidden")
45 SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS}")
46 SET(CMAKE_C_FLAGS_DEBUG "-O0 -g")
47 SET(CMAKE_C_FLAGS_RELEASE "-O2")
49 SET(CMAKE_SKIP_BUILD_RPATH true)
51 # Get uname value to set 'TARGET' definition
52 FIND_PROGRAM(UNAME NAMES uname)
53 EXEC_PROGRAM("${UNAME}" ARGS "-m" OUTPUT_VARIABLE "ARCH")
54 IF("${ARCH}" STREQUAL "arm")
55 ADD_DEFINITIONS("-DTARGET")
56 MESSAGE("add -DTARGET")
57 ENDIF("${ARCH}" STREQUAL "arm")
59 ADD_DEFINITIONS("-DPREFIX=\"${CMAKE_INSTALL_PREFIX}\"")
62 SET(CMAKE_EXE_LINKER_FLAGS "-Wl,--as-needed")
66 ADD_LIBRARY(appsvc SHARED ${SOURCES})
68 TARGET_LINK_LIBRARIES(appsvc ${libpkgs_LDFLAGS})
69 SET_TARGET_PROPERTIES(appsvc PROPERTIES SOVERSION ${VERSION_MAJOR})
70 SET_TARGET_PROPERTIES(appsvc PROPERTIES VERSION ${VERSION})
73 CONFIGURE_FILE(appsvc.pc.in appsvc.pc @ONLY)
77 INSTALL(TARGETS appsvc DESTINATION ${LIB_INSTALL_DIR} COMPONENT RuntimeLibraries)
78 INSTALL(TARGETS ${AVATAR_NAME} DESTINATION bin)
80 INSTALL(DIRECTORY ${CMAKE_SOURCE_DIR}/include/ DESTINATION include/appsvc/
84 INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/appsvc.pc DESTINATION ${LIB_INSTALL_DIR}/pkgconfig)
87 add_subdirectory(test)