about summary refs log tree commit diff
diff options
context:
space:
mode:
authorJoseph Myers <joseph@codesourcery.com>2014-02-12 20:51:13 +0000
committerJoseph Myers <joseph@codesourcery.com>2014-02-12 20:51:13 +0000
commit1b6dd3f1297882f2450942a55189fefaae31071f (patch)
tree3034fd9f3bdc19f16a8ecfad285d150be1754f52
parentace614b8a5c03167cb92ff8ec652f788b8df6750 (diff)
downloadglibc-1b6dd3f1297882f2450942a55189fefaae31071f.tar.gz
glibc-1b6dd3f1297882f2450942a55189fefaae31071f.tar.xz
glibc-1b6dd3f1297882f2450942a55189fefaae31071f.zip
Make ABI tests generate .out files.
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.
-rw-r--r--ChangeLog7
-rw-r--r--Makerules22
-rw-r--r--elf/Makefile2
3 files changed, 21 insertions, 10 deletions
diff --git a/ChangeLog b/ChangeLog
index a7dc412492..e231408a26 100644
--- 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
diff --git a/Makerules b/Makerules
index b46b09b369..13c3faec3f 100644
--- 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
diff --git a/elf/Makefile b/elf/Makefile
index 4c58fc9c24..a684b6b113 100644
--- a/elf/Makefile
+++ b/elf/Makefile
@@ -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))