diff options
author | Lorry Tar Creator <lorry-tar-importer@baserock.org> | 2014-10-05 16:25:56 +0000 |
---|---|---|
committer | <> | 2015-02-04 09:41:42 +0000 |
commit | 9de84c07c0648cde63bfcd2769b07faf86668e1a (patch) | |
tree | 6460e009c267f3712a693403b2dbdf161ab0941b /tests/scripts/features/vpathgpath | |
download | make-tarball-9de84c07c0648cde63bfcd2769b07faf86668e1a.tar.gz |
Diffstat (limited to 'tests/scripts/features/vpathgpath')
-rw-r--r-- | tests/scripts/features/vpathgpath | 66 |
1 files changed, 66 insertions, 0 deletions
diff --git a/tests/scripts/features/vpathgpath b/tests/scripts/features/vpathgpath new file mode 100644 index 0000000..5e6217b --- /dev/null +++ b/tests/scripts/features/vpathgpath @@ -0,0 +1,66 @@ +# -*-perl-*- +$description = "Tests VPATH+/GPATH functionality."; + +$details = ""; + +$VP = "$workdir$pathsep"; + +open(MAKEFILE,"> $makefile"); + +# The Contents of the MAKEFILE ... + +print MAKEFILE "VPATH = $VP\n"; + +print MAKEFILE <<'EOMAKE'; + +GPATH = $(VPATH) + +.SUFFIXES: .a .b .c .d +.PHONY: general rename notarget intermediate + +%.a: +%.b: +%.c: +%.d: + +%.a : %.b ; cat $^ > $@ +%.b : %.c ; cat $^ > $@ +%.c :: %.d ; cat $^ > $@ + +# General testing info: + +general: foo.b +foo.b: foo.c bar.c + +EOMAKE + +close(MAKEFILE); + +@touchedfiles = (); + +$off = -500; + +sub touchfiles { + foreach (@_) { + ($f = $_) =~ s,VP/,$VP,g; + &utouch($off, $f); + $off += 10; + push(@touchedfiles, $f); + } +} + +# Run the general-case test + +&touchfiles("VP/foo.d", "VP/bar.d", "VP/foo.c", "VP/bar.c", "foo.b", "bar.d"); + +&run_make_with_options($makefile,"general",&get_logfile()); + +push(@touchedfiles, "bar.c"); + +$answer = "$make_name: Nothing to be done for 'general'.\n"; + +&compare_output($answer,&get_logfile(1)); + +unlink(@touchedfiles) unless $keep; + +1; |