| # This is a -*- makefile -*- |
| |
| # GNU `cp' |
| GCP = /bin/cp |
| # BusyBox `cp' |
| BCP = $(shell pwd)/cp |
| |
| .PHONY: cp_clean |
| cp_clean: |
| rm -rf cp_tests cp_*.{gnu,bb} cp |
| |
| .PHONY: cp_tests |
| cp_tests: cp_clean cp |
| @echo; |
| @echo "No output from diff means busybox cp is functioning properly."; |
| |
| @echo; |
| ${BCP} || true; |
| |
| @echo; |
| mkdir cp_tests; |
| |
| @echo; |
| cd cp_tests; \ |
| echo A file > afile; \ |
| ls -l afile > ../cp_afile_afilecopy.gnu; \ |
| ${GCP} afile afilecopy; \ |
| ls -l afile afilecopy >> ../cp_afile_afilecopy.gnu; |
| |
| @echo; |
| rm -f cp_tests/afile*; |
| |
| @echo; |
| cd cp_tests; \ |
| echo A file > afile; \ |
| ls -l afile > ../cp_afile_afilecopy.bb; \ |
| ${BCP} afile afilecopy; \ |
| ls -l afile afilecopy >> ../cp_afile_afilecopy.bb; |
| |
| @echo; |
| diff -u cp_afile_afilecopy.gnu cp_afile_afilecopy.bb; |
| |
| @echo; |
| rm -f cp_tests/afile*; |
| |
| @echo; echo; |
| cd cp_tests; \ |
| mkdir there there1; \ |
| cd there; \ |
| ln -s ../afile .; |
| |
| @echo; |
| cd cp_tests; \ |
| echo A file > afile; \ |
| ls -l afile > ../cp_symlink.gnu; \ |
| ${GCP} there/afile there1/; \ |
| ls -l afile there/afile there1/afile >> ../cp_symlink.gnu; |
| |
| @echo; |
| rm -f cp_tests/afile cp_tests/there1/afile; |
| |
| @echo; |
| cd cp_tests; \ |
| echo A file > afile; \ |
| ls -l afile > ../cp_symlink.bb; \ |
| ${BCP} there/afile there1/; \ |
| ls -l afile there/afile there1/afile >> ../cp_symlink.bb; |
| |
| @echo; |
| diff -u cp_symlink.gnu cp_symlink.bb; |
| |
| @echo; |
| rm -f cp_tests/afile cp_tests/there1/afile; |
| |
| @echo; echo; |
| cd cp_tests; \ |
| echo A file > afile; \ |
| ls -l afile > ../cp_a_symlink.gnu; \ |
| ${GCP} -a there/afile there1/; \ |
| ls -l afile there/afile there1/afile >> ../cp_a_symlink.gnu; |
| |
| @echo; |
| rm -f cp_tests/afile cp_tests/there1/afile; |
| |
| @echo; |
| cd cp_tests; \ |
| echo A file > afile; \ |
| ls -l afile > ../cp_a_symlink.bb; \ |
| ${BCP} -a there/afile there1/; \ |
| ls -l afile there/afile there1/afile >> ../cp_a_symlink.bb; |
| |
| @echo; |
| diff -u cp_a_symlink.gnu cp_a_symlink.bb; |
| |
| @echo; |
| rm -f cp_tests/afile |
| rm -rf cp_tests/there{,1}; |
| |
| @echo; echo; |
| cd cp_tests; \ |
| echo A file > there/afile; \ |
| mkdir there/adir; \ |
| touch there/adir/afileinadir; \ |
| ln -s $(shell pwd) there/alink; |
| |
| @echo; |
| cd cp_tests; \ |
| ${GCP} -a there/ there1/; \ |
| ls -lR there/ there1/ > ../cp_a_dir_dir.gnu; |
| |
| @echo; |
| rm -rf cp_tests/there1; |
| |
| @echo; |
| cd cp_tests; \ |
| ${BCP} -a there/ there1/; \ |
| ls -lR there/ there1/ > ../cp_a_dir_dir.bb; |
| |
| @echo; |
| diff -u cp_a_dir_dir.gnu cp_a_dir_dir.bb; |
| |
| @echo; |
| rm -rf cp_tests/there1/; |
| |
| @echo; echo; |
| cd cp_tests; \ |
| echo A file number one > afile1; \ |
| echo A file number two, blah. > afile2; \ |
| ln -s afile1 symlink1; \ |
| mkdir there1; \ |
| ${GCP} afile1 afile2 symlink1 there1/; \ |
| ls -lR > ../cp_files_dir.gnu; |
| |
| @echo; |
| rm -rf cp_tests/{afile{1,2},symlink1,there1}; |
| |
| @echo; |
| cd cp_tests; \ |
| echo A file number one > afile1; \ |
| echo A file number two, blah. > afile2; \ |
| ln -s afile1 symlink1; \ |
| mkdir there1; \ |
| ${BCP} afile1 afile2 symlink1 there1/; \ |
| ls -lR > ../cp_files_dir.bb; |
| |
| @echo; |
| diff -u cp_files_dir.gnu cp_files_dir.bb; |
| |
| @echo; |
| rm -rf cp_tests/{afile{1,2},symlink1,there1}; |
| |
| @echo; echo; |
| cd cp_tests; \ |
| echo A file number one > afile1; \ |
| echo A file number two, blah. > afile2; \ |
| ln -s afile1 symlink1; \ |
| mkdir there1; \ |
| ${GCP} -d afile1 afile2 symlink1 there1/; \ |
| ls -lR > ../cp_d_files_dir.gnu; |
| |
| @echo; |
| rm -rf cp_tests/{afile{1,2},symlink1,there1}; |
| |
| @echo; |
| cd cp_tests; \ |
| echo A file number one > afile1; \ |
| echo A file number two, blah. > afile2; \ |
| ln -s afile1 symlink1; \ |
| mkdir there1; \ |
| ${BCP} -d afile1 afile2 symlink1 there1/; \ |
| ls -lR > ../cp_d_files_dir.bb; |
| |
| @echo; |
| diff -u cp_d_files_dir.gnu cp_d_files_dir.bb; |
| |
| @echo; |
| rm -rf cp_tests/{afile{1,2},symlink1,there1}; |
| |
| @echo; echo; |
| cd cp_tests; \ |
| echo A file number one > afile1; \ |
| echo A file number two, blah. > afile2; \ |
| touch --date='Sat Jan 29 21:24:08 PST 2000' afile1; \ |
| ln -s afile1 symlink1; \ |
| mkdir there1; \ |
| ${GCP} -p afile1 afile2 symlink1 there1/; \ |
| ls -lR > ../cp_p_files_dir.gnu; |
| |
| @echo; |
| rm -rf cp_tests/{afile{1,2},symlink1,there1}; |
| |
| @echo; |
| cd cp_tests; \ |
| echo A file number one > afile1; \ |
| echo A file number two, blah. > afile2; \ |
| touch --date='Sat Jan 29 21:24:08 PST 2000' afile1; \ |
| ln -s afile1 symlink1; \ |
| mkdir there1; \ |
| ${BCP} -p afile1 afile2 symlink1 there1/; \ |
| ls -lR > ../cp_p_files_dir.bb; |
| |
| @echo; |
| diff -u cp_p_files_dir.gnu cp_p_files_dir.bb; |
| |
| @echo; |
| rm -rf cp_tests/{afile{1,2},symlink1,there1}; |
| |
| @echo; echo; |
| cd cp_tests; \ |
| echo A file number one > afile1; \ |
| echo A file number two, blah. > afile2; \ |
| touch --date='Sat Jan 29 21:24:08 PST 2000' afile1; \ |
| ln -s afile1 symlink1; \ |
| mkdir there1; \ |
| ${GCP} -p -d afile1 afile2 symlink1 there1/; \ |
| ls -lR > ../cp_pd_files_dir.gnu; |
| |
| @echo; |
| rm -rf cp_tests/{afile{1,2},symlink1,there1}; |
| |
| @echo; |
| cd cp_tests; \ |
| echo A file number one > afile1; \ |
| echo A file number two, blah. > afile2; \ |
| touch --date='Sat Jan 29 21:24:08 PST 2000' afile1; \ |
| ln -s afile1 symlink1; \ |
| mkdir there1; \ |
| ${BCP} -p -d afile1 afile2 symlink1 there1/; \ |
| ls -lR > ../cp_pd_files_dir.bb; |
| |
| @echo; |
| diff -u cp_pd_files_dir.gnu cp_pd_files_dir.bb; |
| |
| @echo; |
| rm -rf cp_tests/{afile{1,2},symlink1,there1}; |
| |
| @echo; echo; |
| cd cp_tests; \ |
| mkdir dir{a,b}; \ |
| echo A file > dira/afile; \ |
| echo A file in dirb > dirb/afileindirb; \ |
| ln -s dira/afile dira/alinktoafile; \ |
| mkdir dira/subdir1; \ |
| echo Another file > dira/subdir1/anotherfile; \ |
| ls -lR . > ../cp_a_dira_dirb.gnu; \ |
| ${GCP} -a dira dirb; \ |
| ls -lR . >> ../cp_a_dira_dirb.gnu; |
| |
| # false; |
| @echo; |
| rm -rf cp_tests/dir{a,b}; |
| |
| @echo; |
| cd cp_tests; \ |
| mkdir dir{a,b}; \ |
| echo A file > dira/afile; \ |
| echo A file in dirb > dirb/afileindirb; \ |
| ln -s dira/afile dira/alinktoafile; \ |
| mkdir dira/subdir1; \ |
| echo Another file > dira/subdir1/anotherfile; \ |
| ls -lR . > ../cp_a_dira_dirb.bb; \ |
| ${BCP} -a dira dirb; \ |
| ls -lR . >> ../cp_a_dira_dirb.bb; |
| |
| @echo; |
| diff -u cp_a_dira_dirb.gnu cp_a_dira_dirb.bb; |
| |
| # false; |
| @echo; |
| rm -rf cp_tests/dir{a,b}; |