2012-02-14 28 views
6

Tôi muốn xác thực các tệp makefiles viết tay của mình, để đảm bảo chúng hoạt động như dự định trên nhiều nền tảng khác nhau. Có một tiện ích mà tôi có thể sử dụng để cảnh báo cho tôi về sự đồng nhất có thể bị cản trở không?Có tiện ích nào để xác thực makefiles không?

+1

Bạn muốn có một tiện ích sẽ cho bạn biết liệu một phần mềm sẽ hoạt động * như dự định? * Bạn có kế hoạch để cung cấp cho nó kiểm soát của một kho vũ khí hạt nhân? – Beta

+1

Cách dễ nhất là viết các bài kiểm tra cho Makefiles, tức là đặt vào một môi trường cụ thể và mong đợi hành vi được xác định trước. –

+0

make --dry-run? –

Trả lời

1

Không xa như tôi biết.

Điều tốt nhất cần làm là tôn trọng quy tắc cũ "cổng sớm; cổng thường". Hãy thử xây dựng ứng dụng của bạn trên các nền tảng khác càng sớm càng tốt và làm lại nó bất cứ khi nào bạn có cơ hội. Điều đó sẽ làm nổi bật các lỗi di động trong mã của bạn và xác nhận Makefile như là một tác dụng phụ.

Điều đó nói rằng, bạn nên hạn chế bản thân đối với các tính năng Makefile thận trọng càng nhiều càng tốt. Bạn có thể muốn xem POSIX make manpage (mặc dù tôi khuyên bạn nên sử dụng quy tắc %.foo: %.bar thay vì quy tắc .bar.foo: tiêu chuẩn danh nghĩa) và phần portable make programming của hướng dẫn sử dụng autoconf có đầy đủ lời khuyên tốt.

Ồ, và bạn biết rằng autoconf là một điều tốt, phải không?

0

xin lỗi bro nhưng .... không chắc chắn nếu có bất kỳ mã sử dụng mã eveywhere nào, đây là một trong những điểm mạnh nhất và yếu nhất của Unix .... có rất nhiều hương vị khác nhau của bản thân hệ điều hành và việc triển khai Tiện ích - GNU chỉ là một trong số đó và do đó là dạng solaris mở (khác biệt nhỏ), nhưng chúng có chung một loạt các tính năng phổ biến

có các tính năng của GNU. bạn gọi bộ mô tả makefile của bạn với một GNU làm, giống với các biến hệ điều hành khác của tiện ích cũng vậy .. với các ràng buộc như thế này

"một thử nghiệm toàn diện trong tất cả các hệ thống có thể bạn muốn nó hoạt động là chỉ có giải pháp mà đến với tâm trí của tôi "

Các vấn đề liên quan