This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

cleanup check-abi rule


This patch gives a nicer error when the baseline file does not exist:

Baseline file doesn't exist.
Try 'make new-abi-baseline' to create it.
make: [check-abi] Error 1 (ignored)


Tested x86_64-linux-gnu.  Ok for both branches?

Andreas

2003-06-24  Andreas Jaeger  <aj@suse.de>

	* testsuite/Makefile.in: Regenerated.
	* testsuite/Makefile.am (baseline_symbols): Removed.
        (check-abi): Abort gracely if baseline does not exist.
        (check-abi-verbose): Abort gracely if baseline does not exist.
        (CLEANFILES): Remove baseline_symbols.

============================================================
Index: libstdc++-v3/testsuite/Makefile.in
--- testsuite/Makefile.in	19 Jun 2003 19:54:04 -0000	1.53
+++ testsuite/Makefile.in	24 Jun 2003 07:24:48 -0000
@@ -520,13 +520,26 @@ new-abi-baseline: 
 
 # Use 'new-abi-baseline' to create an initial symbol file.  Then run
 # 'check-abi' to test for changes against that file.
-@GLIBCPP_TEST_ABI_TRUE@check-abi: abi_check baseline_symbols current_symbols.txt
-@GLIBCPP_TEST_ABI_TRUE@	-@(./abi_check --check ./current_symbols.txt ${baseline_file})
+@GLIBCPP_TEST_ABI_TRUE@check-abi: abi_check current_symbols.txt
+@GLIBCPP_TEST_ABI_TRUE@	-@(output=${baseline_file}; \
+@GLIBCPP_TEST_ABI_TRUE@	  if test ! -f $${output}; then \
+@GLIBCPP_TEST_ABI_TRUE@	    echo "Baseline file doesn't exist."; \
+@GLIBCPP_TEST_ABI_TRUE@	    echo "Try 'make new-abi-baseline' to create it."; \
+@GLIBCPP_TEST_ABI_TRUE@	    exit 1; \
+@GLIBCPP_TEST_ABI_TRUE@	  else \
+@GLIBCPP_TEST_ABI_TRUE@	    ./abi_check --check ./current_symbols.txt ${baseline_file}; \
+@GLIBCPP_TEST_ABI_TRUE@	  fi)
+
+@GLIBCPP_TEST_ABI_TRUE@check-abi-verbose: abi_check current_symbols.txt 
+@GLIBCPP_TEST_ABI_TRUE@	-@(output=${baseline_file}; \
+@GLIBCPP_TEST_ABI_TRUE@	  if test ! -f $${output}; then \
+@GLIBCPP_TEST_ABI_TRUE@	    echo "Baseline file doesn't exist."; \
+@GLIBCPP_TEST_ABI_TRUE@	    echo "Try 'make new-abi-baseline' to create it."; \
+@GLIBCPP_TEST_ABI_TRUE@	    exit 1; \
+@GLIBCPP_TEST_ABI_TRUE@	  else \
+@GLIBCPP_TEST_ABI_TRUE@	    ./abi_check --check-verbose ./current_symbols.txt ${baseline_file}; \
+@GLIBCPP_TEST_ABI_TRUE@	  fi)
 
-@GLIBCPP_TEST_ABI_TRUE@check-abi-verbose: abi_check baseline_symbols current_symbols.txt 
-@GLIBCPP_TEST_ABI_TRUE@	-@(./abi_check --check-verbose ./current_symbols.txt ${baseline_file})
-@GLIBCPP_TEST_ABI_FALSE@check-abi:
-@GLIBCPP_TEST_ABI_FALSE@check-abi-verbose:
 check-script: ${survey_script}
 	-@(chmod + ${survey_script}; \
 	  ${survey_script} 0)
============================================================
Index: libstdc++-v3/testsuite/Makefile.am
--- testsuite/Makefile.am	19 Jun 2003 19:54:03 -0000	1.23
+++ testsuite/Makefile.am	24 Jun 2003 07:24:48 -0000
@@ -92,15 +92,6 @@ extract_symvers = @glibcpp_srcdir@/scrip
 current_symbols.txt: ${extract_symvers} ../src/.libs/libstdc++.so
 	  -@(${extract_symvers} ../src/.libs/libstdc++.so current_symbols.txt)
 
-baseline_symbols:
-	-@(output=${baseline_file}; \
-	  if test ! -f $${output}; then \
-	    echo "Baseline file doesn't exist."; \
-	    echo "Try 'make new-abi-baseline' to create it."; \
-	    exit 1; \
-	  fi; \
-	touch baseline_symbols)
-
 new-abi-baseline: 
 	-@$(mkinstalldirs) ${baseline_dir}
 	-@(output=${baseline_file}; \
@@ -114,11 +105,25 @@ new-abi-baseline: 
 if GLIBCPP_TEST_ABI
 # Use 'new-abi-baseline' to create an initial symbol file.  Then run
 # 'check-abi' to test for changes against that file.
-check-abi: abi_check baseline_symbols current_symbols.txt
-	-@(./abi_check --check ./current_symbols.txt ${baseline_file})
+check-abi: abi_check current_symbols.txt
+	-@(output=${baseline_file}; \
+	  if test ! -f $${output}; then \
+	    echo "Baseline file doesn't exist."; \
+	    echo "Try 'make new-abi-baseline' to create it."; \
+	    exit 1; \
+	  else \
+	    ./abi_check --check ./current_symbols.txt ${baseline_file}; \
+	  fi)
 
-check-abi-verbose: abi_check baseline_symbols current_symbols.txt 
-	-@(./abi_check --check-verbose ./current_symbols.txt ${baseline_file})
+check-abi-verbose: abi_check current_symbols.txt 
+	-@(output=${baseline_file}; \
+	  if test ! -f $${output}; then \
+	    echo "Baseline file doesn't exist."; \
+	    echo "Try 'make new-abi-baseline' to create it."; \
+	    exit 1; \
+	  else \
+	    ./abi_check --check-verbose ./current_symbols.txt ${baseline_file}; \
+	  fi)
 else
 check-abi:
 check-abi-verbose:
@@ -152,4 +157,4 @@ check-performance: ${performance_script}
 
 # By adding these files here, automake will remove them for 'make clean'
 CLEANFILES = *.txt *.tst *.exe core* filebuf_* tmp* ostream_* *.log *.sum \
-	     testsuite_* site.exp abi_check baseline_symbols *.performance
+	     testsuite_* site.exp abi_check *.performance

-- 
 Andreas Jaeger, SuSE Linux AG, aj@suse.de, http://www.suse.de/~aj
  GPG fingerprint = 93A3 365E CE47 B889 DF7F  FED1 389A 563C C272 A126

Attachment: pgp00000.pgp
Description: PGP signature


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]