Make ABI tests generate .out files.
authorJoseph Myers <joseph@codesourcery.com>
Wed, 12 Feb 2014 20:51:13 +0000 (20:51 +0000)
committerJoseph Myers <joseph@codesourcery.com>
Wed, 12 Feb 2014 20:51:13 +0000 (20:51 +0000)
If you rerun "make check" in a tree where some tests have already been
run, it will rerun ABI tests because those do not create an output
file.

This patch changes those tests to create .out files so they only get
rerun if the dependencies (on the ABI baselines and the generated
.symlist files) indicate they should be rerun.

Tested x86_64.

* Makerules (check-abi-%): Change target to
$(objpfx)check-abi-%.out.
(check-abi target): Update dependencies.
(check-abi-pattern variable): Redirect output of diff to $@.
(check-abi variable): Likewise.
* elf/Makefile (check-abi): Update dependencies.

ChangeLog
Makerules
elf/Makefile

index a7dc412..e231408 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,12 @@
 2014-02-12  Joseph Myers  <joseph@codesourcery.com>
 
+       * Makerules (check-abi-%): Change target to
+       $(objpfx)check-abi-%.out.
+       (check-abi target): Update dependencies.
+       (check-abi-pattern variable): Redirect output of diff to $@.
+       (check-abi variable): Likewise.
+       * elf/Makefile (check-abi): Update dependencies.
+
        * soft-fp/op-common.h (_FP_DECL): Mark exponent as possibly
        unused.
        (_FP_PACK_SEMIRAW): Determine tininess based on rounding shifted
index b46b09b..13c3fae 100644 (file)
--- a/Makerules
+++ b/Makerules
@@ -1193,21 +1193,25 @@ vpath %.abilist $(+sysdep_dirs)
 generated += $(extra-libs:=.symlist)
 
 ifdef abilist-pattern
-check-abi-%: $(common-objpfx)config.make $(abilist-pattern) $(objpfx)%.symlist
+$(objpfx)check-abi-%.out: $(common-objpfx)config.make $(abilist-pattern) \
+                         $(objpfx)%.symlist
        $(check-abi-pattern)
-check-abi-%: $(common-objpfx)config.make $(abilist-pattern) \
-            $(common-objpfx)%.symlist
+$(objpfx)check-abi-%.out: $(common-objpfx)config.make $(abilist-pattern) \
+                         $(common-objpfx)%.symlist
        $(check-abi-pattern)
 endif
-check-abi-%: $(common-objpfx)config.make %.abilist $(objpfx)%.symlist
+$(objpfx)check-abi-%.out: $(common-objpfx)config.make %.abilist \
+                         $(objpfx)%.symlist
        $(check-abi)
-check-abi-%: $(common-objpfx)config.make %.abilist $(common-objpfx)%.symlist
+$(objpfx)check-abi-%.out: $(common-objpfx)config.make %.abilist \
+                         $(common-objpfx)%.symlist
        $(check-abi)
 define check-abi-pattern
-       diff -p -U 0 $(filter $(abilist-pattern),$^) $(filter %.symlist,$^)
+       diff -p -U 0 $(filter $(abilist-pattern),$^) $(filter %.symlist,$^) \
+            > $@
 endef
 define check-abi
-       diff -p -U 0 $(filter %.abilist,$^) $(filter %.symlist,$^)
+       diff -p -U 0 $(filter %.abilist,$^) $(filter %.symlist,$^) > $@
 endef
 
 ifdef abilist-pattern
@@ -1239,7 +1243,7 @@ endef
 
 .PHONY: update-abi check-abi
 update-abi: $(patsubst %.so,update-abi-%,$(install-lib.so-versioned))
-check-abi: $(patsubst %.so,check-abi-%,$(install-lib.so-versioned))
+check-abi: $(patsubst %.so,$(objpfx)check-abi-%.out,$(install-lib.so-versioned))
 ifdef subdir
 subdir_check-abi: check-abi
 subdir_update-abi: update-abi
@@ -1249,7 +1253,7 @@ update-abi: subdir_update-abi
 endif
 
 ifeq ($(subdir),elf)
-check-abi: check-abi-libc
+check-abi: $(objpfx)check-abi-libc.out
 update-abi: update-abi-libc
 common-generated += libc.symlist
 endif
index 4c58fc9..a684b6b 100644 (file)
@@ -255,7 +255,7 @@ endif
 
 include ../Rules
 
-check-abi: check-abi-ld
+check-abi: $(objpfx)check-abi-ld.out
 update-abi: update-abi-ld
 
 ifeq (yes,$(build-shared))