197 lines
5.7 KiB
Makefile
197 lines
5.7 KiB
Makefile
|
# Makefile for regression testing the GNU debugger.
|
||
|
# Copyright (C) 1997, 1998 Free Software Foundation, Inc.
|
||
|
|
||
|
# This file is part of GDB.
|
||
|
|
||
|
# GDB is free software; you can redistribute it and/or modify
|
||
|
# it under the terms of the GNU General Public License as published by
|
||
|
# the Free Software Foundation; either version 2, or (at your option)
|
||
|
# any later version.
|
||
|
|
||
|
# GDB is distributed in the hope that it will be useful,
|
||
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||
|
# GNU General Public License for more details.
|
||
|
|
||
|
# You should have received a copy of the GNU General Public License
|
||
|
# along with this program; if not, write to the Free Software
|
||
|
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||
|
|
||
|
VPATH = @srcdir@
|
||
|
srcdir = @srcdir@
|
||
|
prefix = @prefix@
|
||
|
exec_prefix = @exec_prefix@
|
||
|
|
||
|
build_canonical = @build@
|
||
|
build_alias = @build_alias@
|
||
|
host_canonical = @host@
|
||
|
host_alias = @host_alias@
|
||
|
target_canonical = @target@
|
||
|
target_alias = @target_alias@
|
||
|
program_transform_name = @program_transform_name@
|
||
|
|
||
|
arch = @arch@
|
||
|
|
||
|
SHELL = /bin/sh
|
||
|
SUBDIRS = @subdirs@
|
||
|
RPATH_ENVVAR = @RPATH_ENVVAR@
|
||
|
|
||
|
EXPECT = `if [ -f $${rootme}/../../expect/expect ] ; then \
|
||
|
echo $${rootme}/../../expect/expect ; \
|
||
|
else echo expect ; fi`
|
||
|
|
||
|
RUNTEST = `if [ -f $${srcdir}/../dejagnu/runtest ] ; then \
|
||
|
echo $${srcdir}/../dejagnu/runtest ; else echo runtest; \
|
||
|
fi`
|
||
|
RUNTESTFLAGS =
|
||
|
|
||
|
SCHEME = @SCHEME@
|
||
|
SCHEMEFLAGS = -s
|
||
|
CGENDIR = $(srcdir)/../../cgen
|
||
|
CGENFLAGS = -v
|
||
|
|
||
|
CGENFILES = $(CGENDIR)/object.scm $(CGENDIR)/utils.scm \
|
||
|
$(CGENDIR)/utils-cgen.scm $(CGENDIR)/cpu.scm \
|
||
|
$(CGENDIR)/mode.scm $(CGENDIR)/mach.scm \
|
||
|
$(CGENDIR)/ifield.scm $(CGENDIR)/iformat.scm \
|
||
|
$(CGENDIR)/operand.scm $(CGENDIR)/insn.scm \
|
||
|
$(CGENDIR)/opcodes.scm $(CGENDIR)/sem-ccode.scm \
|
||
|
$(CGENDIR)/sim-test.scm $(CGENDIR)/cgen-stest.scm
|
||
|
|
||
|
#### host, target, and site specific Makefile frags come in here.
|
||
|
|
||
|
# The use of $$(x_FOR_TARGET) reduces the command line length by not
|
||
|
# duplicating the lengthy definition.
|
||
|
|
||
|
TARGET_FLAGS_TO_PASS = \
|
||
|
"prefix=$(prefix)" \
|
||
|
"exec_prefix=$(exec_prefix)" \
|
||
|
"against=$(against)" \
|
||
|
'CC=$$(CC_FOR_TARGET)' \
|
||
|
"CC_FOR_TARGET=$(CC_FOR_TARGET)" \
|
||
|
"CFLAGS=$(TESTSUITE_CFLAGS)" \
|
||
|
"CHILLFLAGS=$(CHILLFLAGS)" \
|
||
|
'CHILL=$$(CHILL_FOR_TARGET)' \
|
||
|
"CHILL_FOR_TARGET=$(CHILL_FOR_TARGET)" \
|
||
|
"CHILL_LIB=$(CHILL_LIB)" \
|
||
|
'CXX=$$(CXX_FOR_TARGET)' \
|
||
|
"CXX_FOR_TARGET=$(CXX_FOR_TARGET)" \
|
||
|
"CXXFLAGS=$(CXXFLAGS)" \
|
||
|
"MAKEINFO=$(MAKEINFO)" \
|
||
|
"INSTALL=$(INSTALL)" \
|
||
|
"INSTALL_PROGRAM=$(INSTALL_PROGRAM)" \
|
||
|
"INSTALL_DATA=$(INSTALL_DATA)" \
|
||
|
"LDFLAGS=$(LDFLAGS)" \
|
||
|
"LIBS=$(LIBS)" \
|
||
|
"RUNTEST=$(RUNTEST)" \
|
||
|
"RUNTESTFLAGS=$(RUNTESTFLAGS)"
|
||
|
|
||
|
all:
|
||
|
@echo "Nothing to be done for all..."
|
||
|
|
||
|
.NOEXPORT:
|
||
|
info:
|
||
|
install-info:
|
||
|
dvi:
|
||
|
|
||
|
install:
|
||
|
|
||
|
uninstall: force
|
||
|
|
||
|
installcheck:
|
||
|
|
||
|
check: site.exp
|
||
|
@for i in . ${SUBDIRS}; do \
|
||
|
if [ $$i = . ] ; then continue ; fi ; \
|
||
|
if [ -d ./$$i ] ; then \
|
||
|
if (rootme=`pwd`/ ; export rootme ; \
|
||
|
rootsrc=`cd $(srcdir); pwd`/ ; export rootsrc ; \
|
||
|
cd ./$$i; \
|
||
|
$(MAKE) $(TARGET_FLAGS_TO_PASS) check) ; then true ; \
|
||
|
else exit 1 ; fi ; \
|
||
|
else true ; fi ; \
|
||
|
done
|
||
|
rootme=`pwd`; export rootme; \
|
||
|
srcdir=`cd ${srcdir}; pwd` ; export srcdir ; \
|
||
|
EXPECT=${EXPECT} ; export EXPECT ; \
|
||
|
if [ -f $$rootme/../../expect/expect ]; then \
|
||
|
TCL_LIBRARY=`cd $$srcdir/../../tcl/library && pwd`; \
|
||
|
export TCL_LIBRARY; \
|
||
|
fi; \
|
||
|
runtest=$(RUNTEST); \
|
||
|
if $(SHELL) -c "$$runtest --version" > /dev/null 2>&1; then \
|
||
|
$$runtest $(RUNTESTFLAGS); \
|
||
|
else echo "WARNING: could not find \`runtest'" 1>&2; :;\
|
||
|
fi
|
||
|
|
||
|
site.exp: Makefile
|
||
|
@echo 'Making a new site.exp file...'
|
||
|
-@rm -f site.bak
|
||
|
@echo '## these variables are automatically generated by make ##' > $@-t
|
||
|
@echo '# Do not edit here. If you wish to override these values' >> $@-t
|
||
|
@echo '# edit the last section' >> $@-t
|
||
|
@echo 'set tool sim' >> $@-t
|
||
|
@echo 'set srcdir $(srcdir)' >> $@-t
|
||
|
@echo 'set objdir' `pwd` >> $@-t
|
||
|
@echo 'set arch $(arch)' >> $@-t
|
||
|
@echo 'set build_alias $(build_alias)' >> $@-t
|
||
|
@echo 'set build_triplet $(build_canonical)' >> $@-t
|
||
|
@echo 'set host_alias $(host_alias)' >> $@-t
|
||
|
@echo 'set host_triplet $(host_canonical)' >> $@-t
|
||
|
@echo 'set target_alias $(target_alias)' >> $@-t
|
||
|
@echo 'set target_triplet $(target_canonical)' >> $@-t
|
||
|
@echo '## All variables above are generated by configure. Do Not Edit ##' >> $@-t
|
||
|
-@sed '1,/^## All variables above are.*##/ d' site.exp >> $@-t
|
||
|
-@mv site.exp site.bak
|
||
|
@mv $@-t site.exp
|
||
|
|
||
|
force:;
|
||
|
|
||
|
clean mostlyclean:
|
||
|
-rm -f *~ core *.o a.out xgdb *.x *.grt
|
||
|
if [ x"${SUBDIRS}" != x ] ; then \
|
||
|
for dir in ${SUBDIRS}; \
|
||
|
do \
|
||
|
echo "$$dir:"; \
|
||
|
if [ -d $$dir ]; then \
|
||
|
(cd $$dir; $(MAKE) clean); \
|
||
|
fi; \
|
||
|
done ; \
|
||
|
else true; fi
|
||
|
|
||
|
distclean maintainer-clean realclean: clean
|
||
|
-rm -f *~ core
|
||
|
-rm -f Makefile config.status *-init.exp
|
||
|
-rm -fr *.log summary detail *.plog *.sum *.psum site.*
|
||
|
if [ x"${SUBDIRS}" != x ] ; then \
|
||
|
for dir in ${SUBDIRS}; \
|
||
|
do \
|
||
|
echo "$$dir:"; \
|
||
|
if [ -d $$dir ]; then \
|
||
|
(cd $$dir; $(MAKE) distclean); \
|
||
|
fi; \
|
||
|
done ; \
|
||
|
else true; fi
|
||
|
|
||
|
Makefile : Makefile.in config.status
|
||
|
$(SHELL) config.status
|
||
|
|
||
|
config.status: $(srcdir)/configure
|
||
|
$(SHELL) ./config.status --recheck
|
||
|
# FIXME: Requires --enable-maintainer-mode, which one could add, but
|
||
|
# it's provided by automake. Maybe switch to automake someday.
|
||
|
#$(srcdir)/configure: @MAINT@ $(srcdir)/configure.in
|
||
|
# cd $(srcdir) && autoconf
|
||
|
|
||
|
# CGEN utilities to build part of a cpu's testsuite.
|
||
|
|
||
|
.PHONY: cgen
|
||
|
cgen:
|
||
|
$(SCHEME) $(SCHEMEFLAGS) $(CGENDIR)/cgen-stest.scm \
|
||
|
-s $(CGENDIR) \
|
||
|
$(CGENFLAGS) \
|
||
|
-m all \
|
||
|
-a $(arch) \
|
||
|
-B tmp-build.sh \
|
||
|
-E tmp-allinsn.exp
|