mirror of
https://git.tukaani.org/xz.git
synced 2024-04-04 12:36:23 +02:00
CMake: Revise the component splitting.
This commit is contained in:
parent
426bdc709c
commit
2ced9d34be
1 changed files with 31 additions and 26 deletions
|
@ -69,12 +69,16 @@
|
||||||
# - liblzma_Runtime (shared library only)
|
# - liblzma_Runtime (shared library only)
|
||||||
# - liblzma_Development
|
# - liblzma_Development
|
||||||
# - liblzma_Documentation (examples and Doxygen-generated API docs as HTML)
|
# - liblzma_Documentation (examples and Doxygen-generated API docs as HTML)
|
||||||
# - xz
|
# - xz_Runtime (xz, the symlinks, and possibly translation files)
|
||||||
# - xzdec
|
# - xz_Documentation (xz man pages and the symlinks)
|
||||||
# - lzmadec
|
# - xzdec_Runtime
|
||||||
# - lzmainfo
|
# - xzdec_Documentation (xzdec *and* lzmadec man pages)
|
||||||
# - scripts (xzdiff, xzgrep, xzless, xzmore)
|
# - lzmadec_Runtime
|
||||||
# - xz_Documentation (generic docs like README and licenses)
|
# - lzmainfo_Runtime
|
||||||
|
# - lzmainfo_Documentation (lzmainfo man pages)
|
||||||
|
# - scripts_Runtime (xzdiff, xzgrep, xzless, xzmore)
|
||||||
|
# - scripts_Documentation (their man pages)
|
||||||
|
# - Documentation (generic docs like README and licenses)
|
||||||
#
|
#
|
||||||
# To find the target liblzma::liblzma from other packages, use the CONFIG
|
# To find the target liblzma::liblzma from other packages, use the CONFIG
|
||||||
# option with find_package() to avoid a conflict with the FindLibLZMA module
|
# option with find_package() to avoid a conflict with the FindLibLZMA module
|
||||||
|
@ -1517,16 +1521,17 @@ if(HAVE_DECODERS AND (NOT MSVC OR MSVC_VERSION GREATER_EQUAL 1900))
|
||||||
|
|
||||||
install(TARGETS "${XZDEC}"
|
install(TARGETS "${XZDEC}"
|
||||||
RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}"
|
RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}"
|
||||||
COMPONENT "${XZDEC}")
|
COMPONENT "${XZDEC}_Runtime")
|
||||||
endforeach()
|
endforeach()
|
||||||
|
|
||||||
# This is the only build-time difference with lzmadec.
|
# This is the only build-time difference with lzmadec.
|
||||||
target_compile_definitions(lzmadec PRIVATE "LZMADEC")
|
target_compile_definitions(lzmadec PRIVATE "LZMADEC")
|
||||||
|
|
||||||
if(UNIX)
|
if(UNIX)
|
||||||
# FIXME? This puts the lzmadec symlinks into xzdec target.
|
# NOTE: This puts the lzmadec.1 symlinks into xzdec_Documentation.
|
||||||
# But doing them separately isn't trivial.
|
# This isn't great but doing them separately with translated
|
||||||
my_install_man(xzdec src/xzdec/xzdec.1 lzmadec)
|
# man pages would require extra code. So this has to suffice for now.
|
||||||
|
my_install_man(xzdec_Documentation src/xzdec/xzdec.1 lzmadec)
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
@ -1577,10 +1582,10 @@ if(HAVE_DECODERS AND (NOT MSVC OR MSVC_VERSION GREATER_EQUAL 1900))
|
||||||
|
|
||||||
install(TARGETS lzmainfo
|
install(TARGETS lzmainfo
|
||||||
RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}"
|
RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}"
|
||||||
COMPONENT lzmainfo)
|
COMPONENT lzmainfo_Runtime)
|
||||||
|
|
||||||
if(UNIX)
|
if(UNIX)
|
||||||
my_install_man(lzmainfo src/lzmainfo/lzmainfo.1 "")
|
my_install_man(lzmainfo_Documentation src/lzmainfo/lzmainfo.1 "")
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
@ -1763,7 +1768,7 @@ if(NOT MSVC OR MSVC_VERSION GREATER_EQUAL 1900)
|
||||||
FILES "${GMO_DIR}/${LANG}.gmo"
|
FILES "${GMO_DIR}/${LANG}.gmo"
|
||||||
DESTINATION "${CMAKE_INSTALL_LOCALEDIR}/${LANG}/LC_MESSAGES"
|
DESTINATION "${CMAKE_INSTALL_LOCALEDIR}/${LANG}/LC_MESSAGES"
|
||||||
RENAME "${TRANSLATION_DOMAIN}.mo"
|
RENAME "${TRANSLATION_DOMAIN}.mo"
|
||||||
COMPONENT xz)
|
COMPONENT xz_Runtime)
|
||||||
endforeach()
|
endforeach()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
@ -1786,7 +1791,7 @@ if(NOT MSVC OR MSVC_VERSION GREATER_EQUAL 1900)
|
||||||
# builds because the generated cmake_install.cmake executes serially.
|
# builds because the generated cmake_install.cmake executes serially.
|
||||||
install(TARGETS xz
|
install(TARGETS xz
|
||||||
RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}"
|
RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}"
|
||||||
COMPONENT xz)
|
COMPONENT xz_Runtime)
|
||||||
|
|
||||||
if(UNIX)
|
if(UNIX)
|
||||||
option(CREATE_XZ_SYMLINKS "Create unxz and xzcat symlinks" ON)
|
option(CREATE_XZ_SYMLINKS "Create unxz and xzcat symlinks" ON)
|
||||||
|
@ -1809,12 +1814,12 @@ if(NOT MSVC OR MSVC_VERSION GREATER_EQUAL 1900)
|
||||||
# to execute files without the .exe suffix but not outside
|
# to execute files without the .exe suffix but not outside
|
||||||
# (like in Command Prompt). Omitting the suffix matches
|
# (like in Command Prompt). Omitting the suffix matches
|
||||||
# what configure.ac has done for many years though.
|
# what configure.ac has done for many years though.
|
||||||
my_install_symlinks(xz "${CMAKE_INSTALL_BINDIR}"
|
my_install_symlinks(xz_Runtime "${CMAKE_INSTALL_BINDIR}"
|
||||||
"xz${CMAKE_EXECUTABLE_SUFFIX}" "" "${XZ_LINKS}")
|
"xz${CMAKE_EXECUTABLE_SUFFIX}" "" "${XZ_LINKS}")
|
||||||
|
|
||||||
# Install the man pages and (optionally) their symlinks
|
# Install the man pages and (optionally) their symlinks
|
||||||
# and translations.
|
# and translations.
|
||||||
my_install_man(xz src/xz/xz.1 "${XZ_LINKS}")
|
my_install_man(xz_Documentation src/xz/xz.1 "${XZ_LINKS}")
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
@ -1869,7 +1874,7 @@ if(UNIX)
|
||||||
|
|
||||||
install(PROGRAMS "${CMAKE_CURRENT_BINARY_DIR}/${S}"
|
install(PROGRAMS "${CMAKE_CURRENT_BINARY_DIR}/${S}"
|
||||||
DESTINATION "${CMAKE_INSTALL_BINDIR}"
|
DESTINATION "${CMAKE_INSTALL_BINDIR}"
|
||||||
COMPONENT scripts)
|
COMPONENT scripts_Runtime)
|
||||||
endforeach()
|
endforeach()
|
||||||
|
|
||||||
# file(CHMOD ...) would need CMake 3.19 so use execute_process instead.
|
# file(CHMOD ...) would need CMake 3.19 so use execute_process instead.
|
||||||
|
@ -1882,22 +1887,22 @@ if(UNIX)
|
||||||
unset(POSIX_SHELL)
|
unset(POSIX_SHELL)
|
||||||
unset(enable_path_for_scripts)
|
unset(enable_path_for_scripts)
|
||||||
|
|
||||||
my_install_symlinks(scripts "${CMAKE_INSTALL_BINDIR}" xzdiff ""
|
my_install_symlinks(scripts_Runtime "${CMAKE_INSTALL_BINDIR}" xzdiff ""
|
||||||
"${XZDIFF_LINKS}")
|
"${XZDIFF_LINKS}")
|
||||||
|
|
||||||
my_install_symlinks(scripts "${CMAKE_INSTALL_BINDIR}" xzgrep ""
|
my_install_symlinks(scripts_Runtime "${CMAKE_INSTALL_BINDIR}" xzgrep ""
|
||||||
"${XZGREP_LINKS}")
|
"${XZGREP_LINKS}")
|
||||||
|
|
||||||
my_install_symlinks(scripts "${CMAKE_INSTALL_BINDIR}" xzmore ""
|
my_install_symlinks(scripts_Runtime "${CMAKE_INSTALL_BINDIR}" xzmore ""
|
||||||
"${XZMORE_LINKS}")
|
"${XZMORE_LINKS}")
|
||||||
|
|
||||||
my_install_symlinks(scripts "${CMAKE_INSTALL_BINDIR}" xzless ""
|
my_install_symlinks(scripts_Runtime "${CMAKE_INSTALL_BINDIR}" xzless ""
|
||||||
"${XZLESS_LINKS}")
|
"${XZLESS_LINKS}")
|
||||||
|
|
||||||
my_install_man(scripts src/scripts/xzdiff.1 "${XZDIFF_LINKS}")
|
my_install_man(scripts_Documentation src/scripts/xzdiff.1 "${XZDIFF_LINKS}")
|
||||||
my_install_man(scripts src/scripts/xzgrep.1 "${XZGREP_LINKS}")
|
my_install_man(scripts_Documentation src/scripts/xzgrep.1 "${XZGREP_LINKS}")
|
||||||
my_install_man(scripts src/scripts/xzmore.1 "${XZMORE_LINKS}")
|
my_install_man(scripts_Documentation src/scripts/xzmore.1 "${XZMORE_LINKS}")
|
||||||
my_install_man(scripts src/scripts/xzless.1 "${XZLESS_LINKS}")
|
my_install_man(scripts_Documentation src/scripts/xzless.1 "${XZLESS_LINKS}")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
|
||||||
|
@ -1928,7 +1933,7 @@ install(FILES AUTHORS
|
||||||
doc/lzma-file-format.txt
|
doc/lzma-file-format.txt
|
||||||
doc/xz-file-format.txt
|
doc/xz-file-format.txt
|
||||||
DESTINATION "${CMAKE_INSTALL_DOCDIR}"
|
DESTINATION "${CMAKE_INSTALL_DOCDIR}"
|
||||||
COMPONENT xz_Documentation)
|
COMPONENT Documentation)
|
||||||
|
|
||||||
|
|
||||||
#############################################################################
|
#############################################################################
|
||||||
|
|
Loading…
Reference in a new issue