X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ian/git?p=subdirmk.git;a=blobdiff_plain;f=tests%2Fexample%2Fcheck;h=16cb7a262c7b3e9e82b6f6a80d517c1edc397b83;hp=a5b27ba043da0ce0485ff9ad9a509747557f21ee;hb=172acdebcae01e79278788880ee148f16395dc47;hpb=f90c854ef6fc828f7f676fabd8a1ca9a969bfe08 diff --git a/tests/example/check b/tests/example/check index a5b27ba..16cb7a2 100755 --- a/tests/example/check +++ b/tests/example/check @@ -1,37 +1,54 @@ #!/bin/sh set -ex -cd example +. tests/build-common -SUBDIRMK_REGEN_NDEBUG='' -export SUBDIRMK_REGEN_NDEBUG +make_copy example -#----- in-tree build ----- +cd tests/example/example -git clean -xdff -./autogen.sh && ./configure -make -j4 all check -make -j4 clean -make -j4 all check +: ----- out of tree build ----- -#----- out of tree build ----- - -git clean -xdff mkdir build cd build >>../src/for-test.sd.mk >>../lib/for-test.mk.in +>>../for-test-final.sd.mk .././autogen.sh && ../configure make -j4 all check -#----- testing rebuild on input change ----- +: ----- testing rebuild on input change ----- + +reset_times () { + cd .. + + find ! -path './build/*' -type f -print0 \ + | xargs -0 \ + touch -hmd 'now -2000 seconds' -- + + cd build + + find -type f -print0 \ + | xargs -0 \ + touch -hmd 'now -1000 seconds' -- +} + +: ----- for-check-1 ----- +reset_times +echo 'for-check-1:' >>../src/for-test.sd.mk +make -j4 for-check-1 +grep '^for-check-1:' src/Subdir.mk || false -echo '# for-check 1' >>../src/for-test.sd.mk -make -j4 -grep '^# for-check 1' src/Subdir.mk || false +: ----- for-check-2 ----- +reset_times +echo 'for-check-2:' >>../lib/for-test.mk.in +make -j4 for-check-2 +grep '^for-check-2:' lib/for-test.mk || false -echo '# for-check 2' >>../lib/for-test.mk.in -make -j4 -grep '^# for-check 2' lib/for-test.mk || false +: ----- for-check-3 ----- +reset_times +echo 'for-check-3:' >>../for-test-final.sd.mk +make -j4 for-check-3 +grep '^for-check-3:' Final.mk echo ok.