include(cmake/config.cmake) | include(cmake/config.cmake) | ||||
add_subdirectory(src) | add_subdirectory(src) | ||||
include(cmake/data.cmake) | include(cmake/data.cmake) | ||||
include(cmake/docs.cmake) | |||||
include(cmake/package.cmake) | include(cmake/package.cmake) | ||||
include(CPack) | include(CPack) | ||||
message(STATUS " klatt: ${USE_KLATT}") | message(STATUS " klatt: ${USE_KLATT}") | ||||
message(STATUS " speech-player: ${USE_SPEECHPLAYER}") | message(STATUS " speech-player: ${USE_SPEECHPLAYER}") | ||||
message(STATUS " async: ${USE_ASYNC}") | message(STATUS " async: ${USE_ASYNC}") | ||||
install( | |||||
DIRECTORY vim/ftdetect vim/syntax DESTINATION share/vim/vimfiles | |||||
) |
else() | else() | ||||
set(USE_ASYNC OFF) | set(USE_ASYNC OFF) | ||||
endif() | endif() | ||||
option(ESPEAK_COMPAT "Install compat binary symlinks" OFF) |
find_program(RONN ronn) | |||||
option(ESPEAK_BUILD_MANPAGES "Build manpages" ${RONN}) | |||||
if (RONN AND ESPEAK_BUILD_MANPAGES) | |||||
add_custom_command( | |||||
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/espeak-ng.1 | |||||
COMMAND ${RONN} --roff -o ${CMAKE_CURRENT_BINARY_DIR} ${CMAKE_CURRENT_SOURCE_DIR}/src/espeak-ng.1.ronn | |||||
) | |||||
add_custom_command( | |||||
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/speak-ng.1 | |||||
COMMAND ${RONN} --roff -o ${CMAKE_CURRENT_BINARY_DIR} ${CMAKE_CURRENT_SOURCE_DIR}/src/speak-ng.1.ronn | |||||
) | |||||
add_custom_target( | |||||
docs ALL | |||||
DEPENDS | |||||
${CMAKE_CURRENT_BINARY_DIR}/espeak-ng.1 | |||||
${CMAKE_CURRENT_BINARY_DIR}/speak-ng.1 | |||||
) | |||||
install( | |||||
FILES | |||||
${CMAKE_CURRENT_BINARY_DIR}/espeak-ng.1 | |||||
${CMAKE_CURRENT_BINARY_DIR}/speak-ng.1 | |||||
DESTINATION share/man/man1 | |||||
) | |||||
endif() |
/tools/ | /tools/ | ||||
/vim/ | /vim/ | ||||
) | ) | ||||
set(PACKAGE_NAME ${PROJECT_NAME}) | |||||
set(VERSION ${PROJECT_VERSION}) | |||||
set(prefix ${CMAKE_INSTALL_PREFIX}) | |||||
set(exec_prefix ${CMAKE_INSTALL_PREFIX}) | |||||
set(libdir "\${exec_prefix}/lib") | |||||
set(includedir "\${prefix}/include") | |||||
configure_file( | |||||
${CMAKE_CURRENT_SOURCE_DIR}/${PROJECT_NAME}.pc.in | |||||
${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}.pc | |||||
@ONLY | |||||
) | |||||
install( | |||||
FILES ${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}.pc DESTINATION lib/pkgconfig | |||||
) |
if (NOT WIN32) | if (NOT WIN32) | ||||
add_custom_target( | add_custom_target( | ||||
speak-ng ALL | speak-ng ALL | ||||
${CMAKE_COMMAND} -E create_symlink espeak-ng ${CMAKE_CURRENT_BINARY_DIR}/speak-ng | |||||
COMMENT "Link espeak-ng to speak-ng" | |||||
COMMAND ${CMAKE_COMMAND} -E create_symlink espeak-ng ${CMAKE_CURRENT_BINARY_DIR}/speak-ng | |||||
COMMAND ${CMAKE_COMMAND} -E create_symlink espeak-ng ${CMAKE_CURRENT_BINARY_DIR}/espeak | |||||
COMMAND ${CMAKE_COMMAND} -E create_symlink espeak-ng ${CMAKE_CURRENT_BINARY_DIR}/speak | |||||
COMMENT "Link espeak-ng to compat names" | |||||
DEPENDS espeak-ng-bin | DEPENDS espeak-ng-bin | ||||
) | ) | ||||
endif() | endif() | ||||
install(TARGETS espeak-ng-bin) | install(TARGETS espeak-ng-bin) | ||||
install(DIRECTORY include/espeak include/espeak-ng TYPE INCLUDE) | install(DIRECTORY include/espeak include/espeak-ng TYPE INCLUDE) | ||||
if (ESPEAK_COMPAT AND NOT WIN32) | |||||
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/speak-ng DESTINATION bin) | |||||
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/espeak DESTINATION bin) | |||||
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/speak DESTINATION bin) | |||||
endif() |
target_link_options(espeak-ng PRIVATE "-static-libstdc++" "-static") | target_link_options(espeak-ng PRIVATE "-static-libstdc++" "-static") | ||||
endif() | endif() | ||||
set_target_properties(espeak-ng PROPERTIES | |||||
SOVERSION ${PROJECT_VERSION_MAJOR} | |||||
VERSION ${PROJECT_VERSION} | |||||
) | |||||
install(TARGETS espeak-ng LIBRARY) | install(TARGETS espeak-ng LIBRARY) |
if(NOT MSVC) | if(NOT MSVC) | ||||
target_compile_options(speechPlayer PRIVATE "-fPIC") | target_compile_options(speechPlayer PRIVATE "-fPIC") | ||||
endif() | endif() | ||||
install(TARGETS speechPlayer ARCHIVE) |
src/tostring.c | src/tostring.c | ||||
) | ) | ||||
target_include_directories(ucd PUBLIC src/include) | target_include_directories(ucd PUBLIC src/include) | ||||
install(TARGETS ucd ARCHIVE) |