1
0
Fork 0
mirror of https://github.com/transmission/transmission synced 2024-12-27 18:18:10 +00:00
transmission/cmake/CPackSourceFixDirLinks.cmake
Mike Gelfand 4c7153fa48
Remove autotools-based build system (#1465)
* Support .git files (e.g. for worktrees, submodules)
* Fix symlinks in source tarball, switch to TXZ, adjust non-release name
* Remove autotools stuff
2020-10-13 03:15:19 +03:00

28 lines
805 B
CMake

cmake_minimum_required(VERSION 3.14 FATAL_ERROR)
if(NOT CPACK_SOURCE_GENERATOR)
return()
endif()
get_filename_component(SRC_DIR "${CMAKE_CURRENT_LIST_DIR}" DIRECTORY)
file(GLOB_RECURSE SOURCE_FILES LIST_DIRECTORIES true RELATIVE "${SRC_DIR}" "${SRC_DIR}/*")
list(REVERSE SOURCE_FILES)
foreach(F IN LISTS SOURCE_FILES)
if(NOT IS_SYMLINK "${SRC_DIR}/${F}")
continue()
endif()
# Links to files seem to be staged correctly
if(NOT IS_DIRECTORY "${SRC_DIR}/${F}")
continue()
endif()
file(READ_SYMLINK "${SRC_DIR}/${F}" L)
message(STATUS "Fixing link: ${F} -> ${L}")
get_filename_component(D "${F}" DIRECTORY)
file(MAKE_DIRECTORY "${CMAKE_INSTALL_PREFIX}/${D}/${L}")
file(CREATE_LINK "${L}" "${CMAKE_INSTALL_PREFIX}/${F}" SYMBOLIC)
endforeach()