2004-01-24 Michael Chastain <mec.gnu@mindspring.com>

* lib/compiler.c: Add hp_cc_compiler and hp_aCC_compiler.
	* lib/compiler.cc: Likewise.
	* lib/gdb.exp (get_compiler_info): Always call gdb_compile to
	get the right preprocessor.  Eval the output directly.  Remove
	special tests for hp_cc_compiler and hp_aCC_compiler.  Remove
	hp_f77_compiler and hp_f90_compiler completely.
	(gdb_preprocess): Delete.
	(get_compiler): Delete.
This commit is contained in:
Michael Chastain 2004-01-24 21:59:03 +00:00
parent 690668cc17
commit 94b8e87660
4 changed files with 166 additions and 187 deletions

View file

@ -1,6 +1,6 @@
/* This test file is part of GDB, the GNU debugger.
Copyright 1995, 1997, 1999, 2003 Free Software Foundation, Inc.
Copyright 1995, 1997, 1999, 2003, 2004 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
@ -19,36 +19,47 @@
Please email any bugs, comments, and/or additions to this file to:
bug-gdb@prep.ai.mit.edu */
/* Often the behavior of any particular test depends upon what compiler was
used to compile the test. As each test is compiled, this file is
preprocessed by the same compiler used to compile that specific test
(different tests might be compiled by different compilers, particularly
if compiled at different times), and used to generate a *.ci (compiler
info) file for that test.
/* Sometimes the behavior of a test depends upon the compiler used to
compile the test program. A test script can call get_compiler_info
to figure out the compiler version and test_compiler_info to test it.
I.E., when callfuncs is compiled, a callfuncs.ci file will be generated,
which can then be sourced by callfuncs.exp to give callfuncs.exp access
to information about the compilation environment.
get_compiler_info runs the preprocessor on this file and then eval's
the result. This sets various symbols for use by test_compiler_info.
TODO: It might be a good idea to add expect code that tests each
definition made with 'set" to see if one already exists, and if so
warn about conflicts if it is being set to something else. */
TODO: make compiler_info a local variable for get_compiler_info and
test_compiler_info.
/* This needs to be kept in sync with whatis.c and gdb.exp(get_compiler_info).
If this ends up being hairy, we could use a common header file. */
TODO: all clients should use test_compiler_info and should not
use gcc_compiled, hp_cc_compiler, or hp_aCC_compiler.
TODO: purge signed_keyword_not_used. */
set compiler_info ""
#if defined (__GNUC__)
set compiler_info [join {gcc __GNUC__ __GNUC_MINOR__ } -]
set gcc_compiled __GNUC__
#else
set gcc_compiled 0
#endif
#if defined (__HP_cc)
set compiler_info [join {hpcc __HP_cc} -]
set hp_cc_compiler __HP_cc
#else
set hp_cc_compiler 0
#endif
#if defined (__HP_aCC)
set compiler_info [join {hpacc __HP_aCC} -]
set hp_aCC_compiler __HP_aCC
#else
set hp_aCC_compiler 0
#endif
/* gdb.base/whatis.exp still uses this */
#if defined (__STDC__) || defined (_AIX)
set signed_keyword_not_used 0
#else
set signed_keyword_not_used 1
#endif
#if defined (__GNUC__)
set gcc_compiled __GNUC__
set compiler_info [join {gcc __GNUC__ __GNUC_MINOR__ } -]
#else
set gcc_compiled 0
set compiler_info ""
#endif
return 0