cmake: fix installation rules (#1687)

This commit is contained in:
Alexander Epaneshnikov
2023-03-23 22:14:30 +03:00
committed by GitHub
8 changed files with 68 additions and 4 deletions
+5
View File
@@ -12,6 +12,7 @@ include(cmake/deps.cmake)
include(cmake/config.cmake)
add_subdirectory(src)
include(cmake/data.cmake)
include(cmake/docs.cmake)
include(cmake/package.cmake)
include(CPack)
@@ -29,3 +30,7 @@ message(STATUS " libpcaudio: ${USE_LIBPCAUDIO} (${PCAUDIO_LIB} ${PCAUDIO_INC})"
message(STATUS " klatt: ${USE_KLATT}")
message(STATUS " speech-player: ${USE_SPEECHPLAYER}")
message(STATUS " async: ${USE_ASYNC}")
install(
DIRECTORY vim/ftdetect vim/syntax DESTINATION share/vim/vimfiles
)
+2
View File
@@ -12,3 +12,5 @@ if (HAVE_PTHREAD)
else()
set(USE_ASYNC OFF)
endif()
option(ESPEAK_COMPAT "Install compat binary symlinks" OFF)
+28
View File
@@ -0,0 +1,28 @@
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()
+18
View File
@@ -15,3 +15,21 @@ list(APPEND CPACK_SOURCE_IGNORE_FILES
/tools/
/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
)
+10 -2
View File
@@ -19,10 +19,18 @@ endif()
if (NOT WIN32)
add_custom_target(
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
)
endif()
install(TARGETS espeak-ng-bin)
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()
+5
View File
@@ -115,4 +115,9 @@ if (MINGW)
target_link_options(espeak-ng PRIVATE "-static-libstdc++" "-static")
endif()
set_target_properties(espeak-ng PROPERTIES
SOVERSION ${PROJECT_VERSION_MAJOR}
VERSION ${PROJECT_VERSION}
)
install(TARGETS espeak-ng LIBRARY)
-1
View File
@@ -7,4 +7,3 @@ target_include_directories(speechPlayer PUBLIC include)
if(NOT MSVC)
target_compile_options(speechPlayer PRIVATE "-fPIC")
endif()
install(TARGETS speechPlayer ARCHIVE)
-1
View File
@@ -7,4 +7,3 @@ add_library(ucd STATIC
src/tostring.c
)
target_include_directories(ucd PUBLIC src/include)
install(TARGETS ucd ARCHIVE)