File tree Expand file tree Collapse file tree 1 file changed +23
-1
lines changed Expand file tree Collapse file tree 1 file changed +23
-1
lines changed Original file line number Diff line number Diff line change @@ -47,7 +47,7 @@ if (WIN32)
47
47
install (FILES "${CMAKE_CURRENT_BINARY_DIR} /${UNINSTALL_PROG} " DESTINATION "${UNINSTALL_PROG_DIR} " PERMISSIONS ${UNINSTALL_PERMISSIONS} )
48
48
49
49
add_custom_target (uninstall
50
- COMMAND call "${CMAKE_CURRENT_BINARY_DIR} /${UNINSTALL_PROG} "
50
+ COMMAND "${CMAKE_CURRENT_BINARY_DIR} /${UNINSTALL_PROG} "
51
51
)
52
52
else ()
53
53
install (CODE "
@@ -68,6 +68,28 @@ else ()
68
68
OUTPUT_FILE
69
69
\" ${CMAKE_CURRENT_BINARY_DIR} /${UNINSTALL_PROG} \"
70
70
)
71
+
72
+ # Ensure generated uninstall script has executable permissions.
73
+ if (\" ${CMAKE_VERSION} \" VERSION_GREATER_EQUAL \" 3.19.0\" )
74
+ file(
75
+ CHMOD \" ${CMAKE_CURRENT_BINARY_DIR} /${UNINSTALL_PROG} \"
76
+ PERMISSIONS
77
+ OWNER_READ OWNER_WRITE OWNER_EXECUTE
78
+ GROUP_READ GROUP_EXECUTE
79
+ WORLD_READ WORLD_EXECUTE
80
+ )
81
+ else ()
82
+ # Workaround lack of file(CHMOD).
83
+ file(
84
+ COPY \" ${CMAKE_CURRENT_BINARY_DIR} /${UNINSTALL_PROG} \"
85
+ DESTINATION \" ${UNINSTALL_PROG} .d\"
86
+ FILE_PERMISSIONS
87
+ OWNER_READ OWNER_WRITE OWNER_EXECUTE
88
+ GROUP_READ GROUP_EXECUTE
89
+ WORLD_READ WORLD_EXECUTE
90
+ )
91
+ file(RENAME \" ${UNINSTALL_PROG} .d/${UNINSTALL_PROG} \" \" ${UNINSTALL_PROG} \" )
92
+ endif ()
71
93
" )
72
94
install (FILES "${CMAKE_CURRENT_BINARY_DIR} /${UNINSTALL_PROG} " DESTINATION "${UNINSTALL_PROG_DIR} " PERMISSIONS ${UNINSTALL_PERMISSIONS} )
73
95
You can’t perform that action at this time.
0 commit comments