Tizen 2.1 base
[framework/uifw/voice/libttssmt.git] / CMakeLists.txt
1 CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
2 PROJECT(ttssmt) 
3
4 SET(PREFIX ${CMAKE_INSTALL_PREFIX})
5 SET(EXEC_PREFIX "${PREFIX}")
6 SET(LIBDIR "${PREFIX}/lib/voice/tts/1.0/engine")
7 SET(USRLIBDIR "${PREFIX}/lib")
8 SET(INCLUDEDIR "${PREFIX}/include")
9 SET(INCLUDEDIRGLIB "${PREFIX}/include/glib-2.0")
10 SET(INCLUDEDIRLIB "${PREFIX}/lib/glib-2.0/include")
11 SET(LIBRARY_NAME "smt")
12 SET(VERSION 0.0.1)
13
14 SET(SRCS
15         src/ttsp.c
16         src/plugin_internal.cpp
17         src/_SlpSmtApis.cpp
18         )
19
20 INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR})
21 INCLUDE_DIRECTORIES(${INCLUDEDIR})
22 INCLUDE_DIRECTORIES(${INCLUDEDIRLIB})
23 INCLUDE_DIRECTORIES(${INCLUDEDIRGLIB})
24
25 ## Dependent packages ##
26 INCLUDE(FindPkgConfig)
27 pkg_check_modules(pkgs REQUIRED 
28                 glib-2.0
29                 tts
30 )
31
32 FOREACH(flag ${pkgs_CFLAGS})
33         SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}")
34 ENDFOREACH(flag)
35
36 ###########################
37 # DEFINITION TTS FEATURES #
38 ###########################
39 SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} -DSLP"                     )
40 SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} -DCOMPILE_FEATURE_TTS_SLIM")
41 #SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} -D__FIXED_C"               )
42 SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} -DKOREAN"                  )
43 SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} -DUSENGLISH"               )
44 SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} -DCHINESE"                 )
45 SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} -DDICTIONARY"              )
46 SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} -fPIC"                     )
47
48 SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS}")
49 SET(CMAKE_C_FLAGS_DEBUG "-O0")
50 #SET(CMAKE_C_FLAGS_RELEASE "-O2")
51 SET(CMAKE_EXE_LINKER_FLAGS "-Wall,--as-needed")
52
53 ###########################
54 # COMPILE AS RELEASE MODE #
55 ###########################
56 SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${CMAKE_C_FLAGS_RELEASE}")
57
58 ADD_DEFINITIONS("-DPREFIX=\"${CMAKE_INSTALL_PREFIX}\"")
59
60 #ADD_LIBRARY(${LIBRARY_NAME} STATIC ${LIB_SRCS})
61 ADD_LIBRARY(${PROJECT_NAME} SHARED ${SRCS}    )
62
63 #SET_TARGET_PROPERTIES(${PROJECT_NAME} PROPERTIES LINKER_LANGUAGE CXX)
64 FIND_PROGRAM(UNAME NAMES uname)
65 EXEC_PROGRAM("${UNAME}" ARGS "-m" OUTPUT_VARIABLE "ARCH")
66 IF("${ARCH}" MATCHES "^arm.*")
67 TARGET_LINK_LIBRARIES(${PROJECT_NAME} -Llib/arm -lsmt ${pkgs_LDFLAGS})
68 INSTALL(FILES lib/arm/libsmt.so DESTINATION ${USRLIBDIR})
69 ELSE("${ARCH}" MATCHES "^arm.*")
70 TARGET_LINK_LIBRARIES(${PROJECT_NAME} -Llib/i386 -lsmt ${pkgs_LDFLAGS})
71 INSTALL(FILES lib/i386/libsmt.so DESTINATION ${USRLIBDIR})
72 ENDIF("${ARCH}" MATCHES "^arm.*")
73
74 INSTALL(TARGETS ${PROJECT_NAME} DESTINATION ${LIBDIR} COMPONENT RuntimeLibraries)
75 INSTALL(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/vdata/ DESTINATION /usr/share/voice/tts/smt_vdata)