3 IF("${CMAKE_BUILD_TYPE}" STREQUAL "")
4 SET(CMAKE_BUILD_TYPE "Release")
5 ENDIF("${CMAKE_BUILD_TYPE}" STREQUAL "")
6 MESSAGE("Build type: ${CMAKE_BUILD_TYPE}")
10 FIND_PROGRAM(UNAME NAMES uname)
11 EXEC_PROGRAM("${UNAME}" ARGS "-m" OUTPUT_VARIABLE "ARCH")
12 IF("${ARCH}" MATCHES "^arm.*")
13 ADD_DEFINITIONS("-D_TARGET")
14 SET(CMAKE_C_FLAGS_RELEASE "-mabi=aapcs-linux -msoft-float -O2")
15 ENDIF("${ARCH}" MATCHES "^arm.*")
17 #CA Engine Include Directory
18 INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}/include ${CMAKE_SOURCE_DIR}/include ${CMAKE_SOURCE_DIR}/provider/include)
22 ${SRCS_PATH}/cache-agent-interface.c
23 ${SRCS_PATH}/cache-agent-storage.c
24 ${SRCS_PATH}/cache-agent-config.c
28 include/cache-agent-defs.h
29 include/cache-agent-interface.h
32 INCLUDE(FindPkgConfig)
34 pkg_check_modules(subpkgs REQUIRED
41 IF(SUPPORT_LARGE_FILE)
42 MESSAGE("Large file:On")
43 SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} -D_FILE_OFFSET_BITS=64")
44 ENDIF(SUPPORT_LARGE_FILE)
46 FOREACH(flag ${subpkgs_CFLAGS})
47 SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}")
51 FOREACH(flag ${drmpkgs_CFLAGS})
52 SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}")
54 #This is request of DRM Team.
55 ADD_DEFINITIONS("-D_FILE_OFFSET_BITS=64")
56 ENDIF (SUPPORT_OMA_DRM)
58 SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} -fpic -Wall -Werror -Werror-implicit-function-declaration")
60 SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS} -fvisibility=default")
62 SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS} -fvisibility=hidden")
64 SET(CMAKE_C_FLAGS_DEBUG "-O0 -g -fPIE")
65 SET(CMAKE_C_FLAGS_RELEASE "-O2 -fPIE")
67 ADD_DEFINITIONS("-D_ENABLE_DLOG")
68 #This should be removed when release a target
70 ADD_LIBRARY(${PROJECT_NAME} SHARED ${SRCS_CA})
72 TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${subpkgs_LDFLAGS} ${drmpkgs_LDFLAGS})
73 SET_TARGET_PROPERTIES(${PROJECT_NAME} PROPERTIES SOVERSION ${VERSION})
75 INSTALL(TARGETS ${PROJECT_NAME} DESTINATION ${LIB_INSTALL_DIR} COMPONENT RuntimeLibraries)
76 INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/include/cache-agent-interface.h DESTINATION ${INCLUDE_INSTALL_DIR}/${PKG_NAME})