Fix build x86_64 compatibility.
[platform/core/connectivity/smartcard-service.git] / CMakeLists.txt
1 CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
2 PROJECT(smartcard-service CXX C)
3
4 MESSAGE("build smartcard-service")
5
6 IF("${CMAKE_BUILD_TYPE}" STREQUAL "")
7         SET(CMAKE_BUILD_TYPE "Release")
8 ENDIF("${CMAKE_BUILD_TYPE}" STREQUAL "")
9
10 MESSAGE("Build type: ${CMAKE_BUILD_TYPE}")
11
12 INCLUDE(FindPkgConfig)
13
14 SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fvisibility=hidden")
15
16 SET(CMAKE_SHARED_LINKER_FLAGS " -Wl,--as-needed -Wl,--rpath=${LIB_INSTALL_DIR}")
17 SET(CMAKE_EXE_LINKER_FLAGS " -Wl,--as-needed -Wl,--rpath=${LIB_INSTALL_DIR}")
18
19 FIND_PROGRAM(UNAME NAMES uname)
20 EXEC_PROGRAM("${UNAME}" ARGS "-m" OUTPUT_VARIABLE "ARCH")
21 IF("${ARCH}" MATCHES "^arm.*")
22         ADD_DEFINITIONS("-DTARGET")
23         MESSAGE("add -DTARGET")
24         SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -mabi=aapcs-linux -fno-common")
25 ENDIF("${ARCH}" MATCHES "^arm.*")
26
27 # names
28 SET(CLIENT_LIB ${PROJECT_NAME})
29 SET(COMMON_LIB "smartcard-service-common")
30 SET(DAEMON "smartcard-daemon")
31
32 # For *.pc files
33 SET(PREFIX ${CMAKE_INSTALL_PREFIX})
34
35 # Defines
36 IF(DEFINED USE_AUTOSTART)
37         ADD_DEFINITIONS("-DUSE_AUTOSTART")
38 ENDIF()
39
40 # apply smack
41 ##ADD_DEFINITIONS("-DUSER_SPACE_SMACK")
42
43 ADD_SUBDIRECTORY(common)
44 ADD_SUBDIRECTORY(client)
45 ADD_SUBDIRECTORY(server)
46
47 IF(DEFINED TEST_CLIENT)
48         ADD_SUBDIRECTORY(test-client)
49 ENDIF()
50