Có biến nào tôi có thể sử dụng trong cmake để làm cho nó hoạt động giống như nó được chuyển qua tùy chọn -q không? Nó sẽ được tốt đẹp bởi vì tôi có một xây dựng rất modular mà được lộn xộn với cmakes đầu ra. Tôi đang sử dụng nó trong một dự án C++.yêu cầu cmake phải yên lặng
Trả lời
Không có biến nào mà tôi biết. Tuy nhiên, bạn có thể thêm các hack sau khi bắt đầu top-level của bạn CMakeLists.txt (trước project
cuộc gọi) để kiểm soát đầu ra hơi:
function(message)
list(GET ARGV 0 MessageType)
if(MessageType STREQUAL FATAL_ERROR OR
MessageType STREQUAL SEND_ERROR OR
MessageType STREQUAL WARNING OR
MessageType STREQUAL AUTHOR_WARNING)
list(REMOVE_AT ARGV 0)
_message(${MessageType} "${ARGV}")
endif()
endfunction()
này ghi đè CMake tích hợp trong message
lệnh và ngăn chặn tất cả STATUS
và các tin nhắn không được phân loại, để lại các loại quan trọng hơn để xuất ra chính xác.
Kết quả của ví dụ: nhắn WARNING
sẽ thay đổi từ
CMake Warning at CMakeLists.txt:14 (message): This is a dummy warning message.
để
CMake Warning at CMakeLists.txt:8 (_message): This is a dummy warning message. Call Stack (most recent call first): CMakeLists.txt:14 (message)
Lưu ý rằng dòng thực tế nơi thông điệp cảnh báo được tạo ra được liệt kê trong các cuộc gọi stack chứ không phải là dòng đầu tiên của thông điệp đầu ra.
Cuối cùng, điều này không ảnh hưởng đến kết quả tóm tắt cho biết thành công hay thất bại của nỗ lực định cấu hình.
Theo cmake 3.1, thiết lập CMAKE_INSTALL_MESSAGE
cũng rất hữu ích. Ví dụ: set(CMAKE_INSTALL_MESSAGE LAZY)
sẽ bỏ qua các thông báo -- Up-to-date:
.
- 1. Yêu cầu yên tâm không hoạt động
- 2. Yêu cầu main.cpp phải không?
- 3. HTTP: Yêu cầu POST nhận được 302, yêu cầu chuyển hướng có phải là GET không?
- 4. URL yêu cầu HTTP có phải là một phần của tiêu đề yêu cầu HTTP không?
- 5. Yêu cầu nhiều yêu cầu PHP
- 6. Gọi không đồng bộ - Yêu cầu EndInvoke phải không?
- 7. Gửi yêu cầu POST không phải ASCII bằng Python?
- 8. Có phải tải Lazy được yêu cầu cho nHibernate không?
- 9. Có phải window.location() giống như yêu cầu GET không?
- 10. CORS yêu cầu IP không phải tên miền
- 11. phát hiện và lọc bot yên tĩnh trong ASP.NET MVC
- 12. Bất kỳ cách nào trong CMake yêu cầu phiên bản GCC 4+?
- 13. find_package (PCL 1.2 YÊU CẦU) sử dụng CMake trả về đường dẫn sai
- 14. bối cảnh DCI yên tĩnh trong Rails
- 15. Trong php, yêu cầu trong tập tin yêu cầu?
- 16. RestTemplate Yêu cầu GET với các tham số yêu cầu
- 17. Thêm thông số yêu cầu để yêu cầu
- 18. python pip im lặng install
- 19. Yêu cầu về bộ nhớ và yêu cầu lưu trữ
- 20. Yêu cầu mô hình và yêu cầu GET?
- 21. Thay đổi HTTP bài yêu cầu HTTPS bài yêu cầu:
- 22. Gói yêu cầu NTP
- 23. RAILS_ROOT yêu cầu?
- 24. JSF: yêu cầu ban đầu và yêu cầu đăng lại?
- 25. Yêu cầu jQuery Ajax bên trong Yêu cầu Ajax
- 26. Yêu cầu hết thời gian - Yêu cầu hết thời gian
- 27. GWT Yêu cầu về hiệu suất yêu cầu
- 28. Phương pháp thử yêu cầu http yêu cầu
- 29. Ngăn chặn yêu cầu GWT Yêu cầu của nhà máy
- 30. org.apache.http.client.HttpClient - một yêu cầu?
Tuyệt! Vì vậy, bạn có thể làm bất kỳ loại tin nhắn bạn muốn sau đó huh? – alexmherrmann
Có cách nào để dừng công cụ ngăn xếp cuộc gọi đó không? Cảm ơn câu trả lời! – alexmherrmann
@alexhairyman Không thực sự, nhưng bạn cần nó để theo dõi nguồn thực tế của lỗi/cảnh báo. Nếu bạn không muốn thấy ngay cả lỗi/cảnh báo, bạn luôn có thể loại bỏ mọi thứ bên trong phần tử 'function' để' message' trở thành no-op. Hoặc chỉ để lại các loại lỗi trong 'if' và bỏ qua các cảnh báo. – Fraser