11cmake_minimum_required (VERSION 2.8.3)
22project (voice_text)
3+
4+ # voice_text requires C++ 11
5+ if (CMAKE_VERSION VERSION_LESS "3.1" )
6+ if (NOT CMAKE_CXX_FLAGS MATCHES "-std=" )
7+ include (CheckCXXCompilerFlag)
8+ check_cxx_compiler_flag("-std=c++11" HAS_CXX11_FLAG)
9+ if (HAS_CXX11_FLAG)
10+ set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11" )
11+ else ()
12+ check_cxx_compiler_flag("-std=gnu++11" HAS_GNUXX11_FLAG)
13+ if (HAS_GNUXX11_FLAG)
14+ set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=gnu++11" )
15+ endif ()
16+ endif ()
17+ endif ()
18+ endif ()
19+ if ("$ENV{ROS_DISTRO} " STREQUAL "kinetic" )
20+ add_compile_options (-std=c++11)
21+ endif ()
22+
323find_package (catkin REQUIRED COMPONENTS
424 dynamic_reconfigure
525 roscpp
@@ -20,64 +40,28 @@ generate_messages()
2040
2141catkin_package(CATKIN_DEPENDS message_runtime)
2242
23- file (GLOB VT_ROOT /usr/vt/*/*)
24- if (NOT VT_ROOT)
25- message (WARNING "VoiceText directory should be /usr/vt/*/* (e.g., /usr/vt/sayaka/M16) but is not found" )
26- set (VT_ROOT /usr/vt/sayaka/M16) # default value for following configure_file
27- else ()
28- if ("${CMAKE_SIZEOF_VOID_P} " STREQUAL "4" )
29- set (VT_LIB_PATH_OLD ${VT_ROOT} /bin/x86_32/RAMIO/libvt_jpn.so) # e.g., /usr/vt/sayaka/M16/bin/x86_32/RAMIO/libvt_jpn.so
30- set (VT_LIB_PATH_NEW ${VT_ROOT} /bin/LINUX32_GLIBC3/RAMIO/libvt_jpn.so) # e.g., /usr/vt/risa/H16/bin/LINUX32_GLIBC3/RAMIO/libvt_jpn.so
31- elseif ("${CMAKE_SIZEOF_VOID_P} " STREQUAL "8" )
32- set (VT_LIB_PATH_OLD ${VT_ROOT} /bin/x86_64/RAMIO/libvt_jpn.so) # e.g., /usr/vt/sayaka/M16/bin/x86_64/RAMIO/libvt_jpn.so
33- set (VT_LIB_PATH_NEW ${VT_ROOT} /bin/LINUX64_GLIBC3/RAMIO/libvt_jpn.so) # e.g., /usr/vt/risa/H16/bin/LINUX64_GLIBC3/RAMIO/libvt_jpn.so
34- endif ()
35- if (EXISTS ${VT_LIB_PATH_OLD} )
36- set (VT_LIB_PATH ${VT_LIB_PATH_OLD} )
37- else ()
38- if (EXISTS ${VT_LIB_PATH_NEW} )
39- set (VT_LIB_PATH ${VT_LIB_PATH_NEW} )
40- endif ()
41- endif ()
42- if (VT_LIB_PATH)
43- message (WARNING "VoiceText library is found at ${VT_LIB_PATH} " )
44- else ()
45- message (WARNING "VoiceText library is not found at ${VT_LIB_PATH_OLD} or ${VT_LIB_PATH_NEW} " )
46- endif ()
47- endif ()
48- configure_file (src/voice_text.cpp.in ${PROJECT_SOURCE_DIR} /src/voice_text.cpp)
49-
50- include_directories (
51- ${Boost_INCLUDE_DIRS}
52- ${catkin_INCLUDE_DIRS}
53- )
54- add_executable (voice_text src/voice_text.cpp)
55- add_dependencies (voice_text ${PROJECT_NAME} _generate_messages_cpp ${PROJECT_NAME} _gencfg)
56- set_target_properties (voice_text PROPERTIES COMPILE_FLAGS -D_REENTRANT)
43+ include_directories (
44+ include
45+ ${Boost_INCLUDE_DIRS}
46+ ${catkin_INCLUDE_DIRS}
47+ )
5748
58- if (NOT VT_LIB_PATH)
59- message (WARNING "Building dummy library" )
60- add_library (vt_dummy src/dummy/vt_dummy.cpp)
61- set_target_properties (vt_dummy PROPERTIES LIBRARY_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR} )
62- set_target_properties (vt_dummy PROPERTIES LIBRARY_OUTPUT_NAME vt_jpn)
63- set_target_properties (voice_text PROPERTIES COMPILE_FLAGS -DUSE_DUMMY_INCLUDE)
64- set (VT_LIB_PATH ${PROJECT_BINARY_DIR} /libvt_jpn.so)
65- endif ()
49+ add_executable (voice_text src/voice_text.cpp src/vt_handler.cpp)
50+ add_dependencies (voice_text ${PROJECT_NAME} _generate_messages_cpp ${PROJECT_NAME} _gencfg)
51+ set_target_properties (voice_text PROPERTIES COMPILE_FLAGS -D_REENTRANT)
6652
67- target_link_libraries (voice_text
68- ${catkin_LIBRARIES}
69- ${VT_LIB_PATH} -lm -lpthread
70- )
71- if (NOT EXISTS ${VT_LIB_PATH} )
72- add_dependencies (voice_text vt_dummy)
73- endif ()
53+ target_link_libraries (voice_text
54+ ${catkin_LIBRARIES} -lm -lpthread -ldl
55+ )
7456
7557install (TARGETS voice_text # do not install vt_dummy target, that should be installed from voice_text library
7658 ARCHIVE DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION}
7759 LIBRARY DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION}
7860 RUNTIME DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION}
7961)
80-
62+ catkin_install_python(PROGRAMS scripts/text2wave.py
63+ DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION}
64+ )
8165install (PROGRAMS bin/text2wave
8266 DESTINATION ${CATKIN_PACKAGE_SHARE_DESTINATION} /bin
8367)
0 commit comments