Prolog: Tôi là một thằng ngốc vì bỏ lỡ này trong tài liệuLàm thế nào để bảo vệ quyền truy cập tệp bằng lệnh "install directory" của cmake?
cmake-2.8.10.2
Làm thế nào để bạn thực hiện cmake duy trì các quyền tập tin ban đầu khi cài đặt một thư mục? Đối với dự án ở bàn tay, tôi muốn nó về cơ bản sao chép một số thư mục từ cây nguồn của tôi đến cây cài đặt. Để wit:
install(
DIRECTORY config runp
DESTINATION ${CMAKE_INSTALL_PREFIX}
PATTERN ".svn" EXCLUDE
PATTERN ".git" EXCLUDE
PATTERN "start_collection.snl" EXCLUDE
)
Tất cả hoạt động như mong đợi - ngoại trừ tập lệnh thực thi được sao chép với quyền tệp không chính xác. Trong thực tế, none quyền của tệp gốc được giữ nguyên. Thiết lập toàn cầu cho phép sử dụng FILE_PERMISSIONS và DIRECTORY_PERMISSIONS là điều tôi không muốn làm, và thẳng thắn, sẽ là một hack trong bối cảnh này.
Trong thế giới vỏ kịch bản, tôi muốn làm một cái gì đó đơn giản như thế này:
for i in config runp ; do
tar cf - $i | tar -C $CMAKE_INSTALL_PREFIX -xf -
done
Vâng, tôi là một thằng ngốc. Tôi bằng cách nào đó đã đánh bóng ngay trên tùy chọn đó trong tài liệu. Cảm ơn đã chỉ ra điều đó. – smcdow
Cảm ơn; chỉ muốn đề cập rằng 'USE_SOURCE_PERMISSIONS' chỉ hoạt động với' install (DIRECTORY) '. Nó không rõ ràng ngay từ câu trả lời. – congusbongus