32 lines
No EOL
1.1 KiB
CMake
32 lines
No EOL
1.1 KiB
CMake
if (DEFINED ENV{DESTDIR})
|
|
set(DESTDIR $ENV{DESTDIR})
|
|
cmake_path(ABSOLUTE_PATH PREFIX NORMALIZE)
|
|
cmake_path(ABSOLUTE_PATH DESTDIR NORMALIZE)
|
|
|
|
cmake_path(GET PREFIX RELATIVE_PART RELATIVE_PREFIX)
|
|
# message("prefix ${PREFIX}")
|
|
# message("relprefix ${RELATIVE_PREFIX}")
|
|
|
|
cmake_path(APPEND NEWPREFIX ${DESTDIR} ${RELATIVE_PREFIX})
|
|
set(PREFIX ${NEWPREFIX})
|
|
# message("finalprefix ${PREFIX}")
|
|
endif()
|
|
|
|
file(GLOB ALL_BINARIES "${PREFIX}/bin/*")
|
|
foreach (FILE ${ALL_BINARIES})
|
|
file (READ ${FILE} _shebang LIMIT "2")
|
|
|
|
if (_shebang MATCHES "#!")
|
|
file (STRINGS ${FILE} _shebang LIMIT_COUNT "1")
|
|
|
|
if (_shebang MATCHES "#!.*python[0-9.]*$" AND NOT _shebang MATCHES "#!/usr/bin/env python3$")
|
|
message(STATUS "Fixing shebang line in file: ${FILE}")
|
|
message(STATUS " \"${_shebang}\" -> \"#!/usr/bin/env python3\"")
|
|
|
|
file (READ ${FILE} _full_file)
|
|
string(REGEX REPLACE "^(#!.*python[0-9.]*)\n" "#!/usr/bin/env python3\n" _out ${_full_file})
|
|
file (WRITE ${FILE} ${_out})
|
|
endif()
|
|
|
|
endif()
|
|
endforeach() |