Khám phá một số tính năng khác của Makefile
Nguồn:quantrimang.com
Quản trị mạng - Câu lệnh make thường được ít người dùng quan tâm đến.
Thông thường câu lệnh này và Makefile nằm trong nhóm mã nguồn hỗ trợ
biên dịch và liên kết mã nguồn trong file thực thi.
Tuy nhiên nó còn có thể được sử dụng để thực hiện nhiều tính năng khác ngoài
việc xử lý mã nguồn.
Makefile chỉ là một chuỗi lệnh thực thi, làm việc trên các phần ph
ụ của file mục
tiêu. Ví dụ, bạn có thể chạy lệnh make install và lệnh này sẽ kiểm tra cập nhật
những đối tượng được yêu cầu trước tiên, như mục tiêu compile và các thành
phần phụ của nó. Điều này làm cho lệnh make trở thành một lệnh rất linh hoạt.
Điều này cũng có nghĩa bạn có thể sử dụng nó với nhiều file ngoại trừ file mã
nguồn; bạn có thể
sử dụng Makefile để copy file (cục bộ hay từ xa), kiểm soát
phiên bản, xóa file, hay những lệnh khác có thể sử dụng khi xử lý file.
Ví dụ, bạn có thể tạo một Makefile để copy những file web cục bộ lên một máy
chủ ở xa, lấy chúng từ một vùng chứa kiểm soát phiên bản. Makefile này có
dạng như sau:
SVNURL =
REMOTEHOST = user@host:~/public_html/
ifdef REV
REVISION = -r$(REV)
endif
all: dist
clean:
rm -rf website
rm -f website.tar.gz
nếu lệnh trước đó thất bại). Kết xuất của lệnh thất bại vẫn được thông báo trên
màn hình, nhưng lỗi này sẽ không làm dừng lệnh make, và lệnh tiếp theo sẽ tiến
hành.
Lệnh make và Makefile có thể thực hiệ
n nhiều tính năng khác ngoài biên dịch
mã nguồn (mục đích thiết kế Makefile). Nhưng sử dụng nó có tốt hơn sử dụng
một tệp lệnh shell không? Điều này phụ thuộc nhiều vào nhu cầu của bạn,
nhưng thực tế là lệnh make kiểm tra lỗi rất kĩ, trong khi tệp lệnh shell không thực
hiện thao tác này. Tính năng này rất hữu ích trong một số tình huống cụ thể.