sim: build: delete Make-common.in logic
Now that all (other than ppc) build in the top-level, this logic is unused, so punt it all.
This commit is contained in:
parent
b5075fb68d
commit
fe0adb538f
@ -1658,8 +1658,6 @@ SDL_LIBS = @SDL_LIBS@
|
|||||||
SED = @SED@
|
SED = @SED@
|
||||||
SET_MAKE = @SET_MAKE@
|
SET_MAKE = @SET_MAKE@
|
||||||
SHELL = @SHELL@
|
SHELL = @SHELL@
|
||||||
SIM_COMMON_BUILD_FALSE = @SIM_COMMON_BUILD_FALSE@
|
|
||||||
SIM_COMMON_BUILD_TRUE = @SIM_COMMON_BUILD_TRUE@
|
|
||||||
SIM_ENABLED_ARCHES = @SIM_ENABLED_ARCHES@
|
SIM_ENABLED_ARCHES = @SIM_ENABLED_ARCHES@
|
||||||
SIM_FRV_TRAPDUMP_FLAGS = @SIM_FRV_TRAPDUMP_FLAGS@
|
SIM_FRV_TRAPDUMP_FLAGS = @SIM_FRV_TRAPDUMP_FLAGS@
|
||||||
SIM_HW_CFLAGS = @SIM_HW_CFLAGS@
|
SIM_HW_CFLAGS = @SIM_HW_CFLAGS@
|
||||||
@ -1731,8 +1729,6 @@ program_transform_name = @program_transform_name@
|
|||||||
psdir = @psdir@
|
psdir = @psdir@
|
||||||
sbindir = @sbindir@
|
sbindir = @sbindir@
|
||||||
sharedstatedir = @sharedstatedir@
|
sharedstatedir = @sharedstatedir@
|
||||||
sim_bitsize = @sim_bitsize@
|
|
||||||
sim_float = @sim_float@
|
|
||||||
srcdir = @srcdir@
|
srcdir = @srcdir@
|
||||||
subdirs = @subdirs@
|
subdirs = @subdirs@
|
||||||
sysconfdir = @sysconfdir@
|
sysconfdir = @sysconfdir@
|
||||||
|
@ -17,54 +17,11 @@ The common directory contains:
|
|||||||
|
|
||||||
- common documentation files (e.g. run.1, and maybe in time .texi files)
|
- common documentation files (e.g. run.1, and maybe in time .texi files)
|
||||||
- common source files (e.g. run.c)
|
- common source files (e.g. run.c)
|
||||||
- common Makefile fragment and configury (e.g. Make-common.in, aclocal.m4).
|
- common Makefile fragment and configury (e.g. common/local.mk)
|
||||||
|
|
||||||
In addition "common" contains portions of the system call support
|
In addition "common" contains portions of the system call support
|
||||||
(e.g. callback.c, target-newlib-*.c).
|
(e.g. callback.c, target-newlib-*.c).
|
||||||
|
|
||||||
Common Makefile Support
|
|
||||||
=======================
|
|
||||||
|
|
||||||
A common configuration framework is available for simulators that want
|
|
||||||
to use it. The common framework exists to remove a lot of duplication
|
|
||||||
in configure.ac and Makefile.in, and it also provides a foundation for
|
|
||||||
enhancing the simulators uniformly (e.g. the more they share in common
|
|
||||||
the easier a feature added to one is added to all).
|
|
||||||
|
|
||||||
The Makefile.in of a simulator using the common framework should look like:
|
|
||||||
|
|
||||||
--- snip ---
|
|
||||||
# Makefile for blah ...
|
|
||||||
# Copyright blah ...
|
|
||||||
|
|
||||||
## COMMON_PRE_CONFIG_FRAG
|
|
||||||
|
|
||||||
# These variables are given default values in COMMON_PRE_CONFIG_FRAG.
|
|
||||||
# We override the ones we need to here.
|
|
||||||
# Not all of these need to be mentioned, only the necessary ones.
|
|
||||||
# In fact it is better to *not* mention ones if the value is the default.
|
|
||||||
|
|
||||||
# List of flags to always pass to $(CC).
|
|
||||||
SIM_EXTRA_CFLAGS =
|
|
||||||
# Dependency of `clean' to clean any extra files.
|
|
||||||
SIM_EXTRA_CLEAN =
|
|
||||||
|
|
||||||
## COMMON_POST_CONFIG_FRAG
|
|
||||||
|
|
||||||
... target specific rules ...
|
|
||||||
--- snip ---
|
|
||||||
|
|
||||||
COMMON_{PRE,POST}_CONFIG_FRAG are markers for configure to tell it
|
|
||||||
where to insert the two pieces of common/Make-common.in.
|
|
||||||
The resulting Makefile is created by doing autoconf substitions on
|
|
||||||
both the target's Makefile.in and Make-common.in, and inserting
|
|
||||||
the two pieces of Make-common.in into the target's Makefile.in at
|
|
||||||
COMMON_{PRE,POST}_CONFIG_FRAG.
|
|
||||||
|
|
||||||
Note that SIM_EXTRA_{INSTALL,CLEAN} could be removed and "::" targets
|
|
||||||
could be used instead. However, it's not clear yet whether "::" targets
|
|
||||||
are portable enough.
|
|
||||||
|
|
||||||
TAGS support
|
TAGS support
|
||||||
============
|
============
|
||||||
|
|
||||||
|
@ -1,210 +0,0 @@
|
|||||||
# Makefile fragment for common parts of all simulators.
|
|
||||||
# Copyright 1997-2023 Free Software Foundation, Inc.
|
|
||||||
# Contributed by Cygnus Support.
|
|
||||||
|
|
||||||
# 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
|
|
||||||
# the Free Software Foundation; either version 3 of the License, or
|
|
||||||
# (at your option) any later version.
|
|
||||||
#
|
|
||||||
# This program 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, see <http://www.gnu.org/licenses/>.
|
|
||||||
|
|
||||||
# This Makefile fragment consists of two separate parts.
|
|
||||||
# They are merged into the final Makefile at points denoted by
|
|
||||||
# "## COMMON_PRE_CONFIG_FRAG" and "## COMMON_POST_CONFIG_FRAG".
|
|
||||||
#
|
|
||||||
# The target Makefile should look like:
|
|
||||||
#
|
|
||||||
#># Copyright blah blah
|
|
||||||
#>
|
|
||||||
#>## COMMON_PRE_CONFIG_FRAG
|
|
||||||
#>
|
|
||||||
#># Any overrides necessary for the SIM_FOO config vars.
|
|
||||||
#>SIM_FOO = ...
|
|
||||||
#>
|
|
||||||
#>## COMMON_POST_CONFIG_FRAG
|
|
||||||
#>
|
|
||||||
#># Rules to build target specific .o's.
|
|
||||||
|
|
||||||
## COMMON_PRE_CONFIG_FRAG
|
|
||||||
|
|
||||||
srcdir = @abs_srcdir@
|
|
||||||
VPATH = $(srcdir):$(srccom)
|
|
||||||
srccom = $(srcdir)/../common
|
|
||||||
srcroot = $(srcdir)/../..
|
|
||||||
srcsim = $(srcdir)/..
|
|
||||||
|
|
||||||
@SIM_COMMON_BUILD_FALSE@config.status = config.status
|
|
||||||
@SIM_COMMON_BUILD_TRUE@config.status = ../config.status
|
|
||||||
|
|
||||||
# Settings from top-level configure.
|
|
||||||
include ../arch-subdir.mk
|
|
||||||
|
|
||||||
include $(srcroot)/gdb/silent-rules.mk
|
|
||||||
|
|
||||||
ifeq ($(V),0)
|
|
||||||
ECHO_STAMP = @echo " GEN "
|
|
||||||
else
|
|
||||||
ECHO_STAMP = @:
|
|
||||||
endif
|
|
||||||
|
|
||||||
# Helper code from gnulib.
|
|
||||||
GNULIB_PARENT_DIR = ../..
|
|
||||||
include $(GNULIB_PARENT_DIR)/gnulib/Makefile.gnulib.inc
|
|
||||||
|
|
||||||
# This can be referenced by the gettext configuration code.
|
|
||||||
top_builddir = ..
|
|
||||||
|
|
||||||
SHELL = @SHELL@
|
|
||||||
|
|
||||||
SIM_BITSIZE = @sim_bitsize@
|
|
||||||
SIM_FLOAT = @sim_float@
|
|
||||||
SIM_WARN_CFLAGS = $(WARN_CFLAGS)
|
|
||||||
SIM_WERROR_CFLAGS = $(WERROR_CFLAGS)
|
|
||||||
|
|
||||||
# Dependency tracking information.
|
|
||||||
depcomp = $(SHELL) $(srcroot)/depcomp
|
|
||||||
|
|
||||||
# Note that these are overridden by GNU make-specific code below if
|
|
||||||
# GNU make is used. The overrides implement dependency tracking.
|
|
||||||
COMPILE.pre = $(CC) $(C_DIALECT)
|
|
||||||
COMPILE.post = -c -o $@
|
|
||||||
COMPILE = $(ECHO_CC) $(COMPILE.pre) $(ALL_CFLAGS) $(COMPILE.post)
|
|
||||||
POSTCOMPILE = @true
|
|
||||||
|
|
||||||
# Each simulator's Makefile.in defines one or more of these variables
|
|
||||||
# to override our settings as necessary. There is no need to define these
|
|
||||||
# in the simulator's Makefile.in if one is using the default value. In fact
|
|
||||||
# it's preferable not to.
|
|
||||||
|
|
||||||
# List of flags to always pass to $(CC).
|
|
||||||
SIM_EXTRA_CFLAGS =
|
|
||||||
# Dependency of `clean' to clean any extra files.
|
|
||||||
SIM_EXTRA_CLEAN =
|
|
||||||
|
|
||||||
# Every time a new general purpose source file was added every target's
|
|
||||||
# Makefile.in needed to be updated to include the file.
|
|
||||||
# This doesn't scale.
|
|
||||||
# This variable specifies all the generic stuff common to the newer simulators.
|
|
||||||
# Things like sim-reason.o can't go here as the cpu may provide its own
|
|
||||||
# (though hopefully in time that won't be so). Things like sim-bits.o can go
|
|
||||||
# here. Some files are used by all simulators (e.g. callback.o).
|
|
||||||
|
|
||||||
## End COMMON_PRE_CONFIG_FRAG
|
|
||||||
|
|
||||||
## COMMON_POST_CONFIG_FRAG
|
|
||||||
|
|
||||||
CONFIG_CFLAGS = \
|
|
||||||
-DHAVE_CONFIG_H \
|
|
||||||
$(SIM_BITSIZE) \
|
|
||||||
$(SIM_FLOAT) \
|
|
||||||
$(SIM_HW_CFLAGS) \
|
|
||||||
$(SIM_INLINE) \
|
|
||||||
$(SIM_WARN_CFLAGS) \
|
|
||||||
$(SIM_WERROR_CFLAGS)
|
|
||||||
CSEARCH = -I. -I$(srcdir) -I$(srccom) \
|
|
||||||
-I$(srcroot)/include \
|
|
||||||
-I../../bfd \
|
|
||||||
-I$(srcroot) \
|
|
||||||
-I../..
|
|
||||||
ALL_CFLAGS = $(CONFIG_CFLAGS) $(CSEARCH) $(INCGNU) $(SIM_EXTRA_CFLAGS) $(CFLAGS)
|
|
||||||
BUILD_CFLAGS = $(CFLAGS_FOR_BUILD) $(CSEARCH)
|
|
||||||
|
|
||||||
COMMON_DEP_CFLAGS = $(CONFIG_CFLAGS) $(CSEARCH) $(SIM_EXTRA_CFLAGS)
|
|
||||||
|
|
||||||
LIBIBERTY_LIB = ../../libiberty/libiberty.a
|
|
||||||
BFD_LIB = ../../bfd/libbfd.la
|
|
||||||
OPCODES_LIB = ../../opcodes/libopcodes.la
|
|
||||||
LIBDEPS = $(BFD_LIB) $(OPCODES_LIB) $(LIBIBERTY_LIB)
|
|
||||||
EXTRA_LIBS = $(BFD_LIB) $(OPCODES_LIB) $(LIBIBERTY_LIB) \
|
|
||||||
$(COMMON_LIBS) $(LIBGNU) $(LIBGNU_EXTRA_LIBS)
|
|
||||||
|
|
||||||
COMPILE_FOR_BUILD = $(CC_FOR_BUILD) $(BUILD_CFLAGS)
|
|
||||||
LINK_FOR_BUILD = $(CC_FOR_BUILD) $(BUILD_CFLAGS) $(LDFLAGS_FOR_BUILD) -o $@
|
|
||||||
|
|
||||||
RUNTESTFLAGS =
|
|
||||||
|
|
||||||
all:
|
|
||||||
|
|
||||||
#
|
|
||||||
# Dependency tracking. Most of this is conditional on GNU Make being
|
|
||||||
# found by configure; if GNU Make is not found, we fall back to a
|
|
||||||
# simpler scheme.
|
|
||||||
#
|
|
||||||
|
|
||||||
ifeq ($(DEPMODE),depmode=gcc3)
|
|
||||||
# Note that we put the dependencies into a .Tpo file, then move them
|
|
||||||
# into place if the compile succeeds. We need this because gcc does
|
|
||||||
# not atomically write the dependency output file.
|
|
||||||
override COMPILE.post = -c -o $@ -MT $@ -MMD -MP \
|
|
||||||
-MF $(DEPDIR)/$(basename $(@F)).Tpo
|
|
||||||
override POSTCOMPILE = @mv $(DEPDIR)/$(basename $(@F)).Tpo \
|
|
||||||
$(DEPDIR)/$(basename $(@F)).Po
|
|
||||||
else
|
|
||||||
override COMPILE.pre = source='$<' object='$@' libtool=no \
|
|
||||||
DEPDIR=$(DEPDIR) $(DEPMODE) $(depcomp) $(CC)
|
|
||||||
# depcomp handles atomicity for us, so we don't need a postcompile
|
|
||||||
# step.
|
|
||||||
override POSTCOMPILE =
|
|
||||||
endif
|
|
||||||
|
|
||||||
# Support targets.
|
|
||||||
|
|
||||||
install:
|
|
||||||
installdirs:
|
|
||||||
uninstall:
|
|
||||||
|
|
||||||
check:
|
|
||||||
|
|
||||||
html:
|
|
||||||
clean-html:
|
|
||||||
install-html:
|
|
||||||
|
|
||||||
info:
|
|
||||||
clean-info:
|
|
||||||
install-info:
|
|
||||||
|
|
||||||
pdf:
|
|
||||||
clean-pdf:
|
|
||||||
install-pdf:
|
|
||||||
|
|
||||||
.NOEXPORT:
|
|
||||||
MAKEOVERRIDES=
|
|
||||||
|
|
||||||
tags etags: TAGS
|
|
||||||
|
|
||||||
# Macros like EXTERN_SIM_CORE confuse tags.
|
|
||||||
# And the sim-n-foo.h files create functions that can't be found either.
|
|
||||||
TAGS: force
|
|
||||||
cd $(srcdir) && \
|
|
||||||
etags --regex '/^\([[:lower:]_]+\) (/\1/' --regex '/^\/[*] TAGS: .*/' \
|
|
||||||
*.[ch] ../common/*.[ch]
|
|
||||||
|
|
||||||
mostlyclean clean: $(SIM_EXTRA_CLEAN)
|
|
||||||
rm -f *.[oa] *~ core
|
|
||||||
|
|
||||||
distclean maintainer-clean realclean: clean
|
|
||||||
rm -f TAGS Makefile
|
|
||||||
|
|
||||||
.c.o:
|
|
||||||
$(COMPILE) $<
|
|
||||||
$(POSTCOMPILE)
|
|
||||||
|
|
||||||
# Dummy target to force execution of dependent targets.
|
|
||||||
force:
|
|
||||||
|
|
||||||
Makefile: Makefile.in $(srccom)/Make-common.in $(config.status)
|
|
||||||
@SIM_COMMON_BUILD_FALSE@ $(ECHO_GEN) CONFIG_HEADERS= $(SHELL) ./config.status
|
|
||||||
@SIM_COMMON_BUILD_TRUE@ $(ECHO_GEN) pwd=`pwd` && subdir=`basename "$$pwd"` && cd .. && \
|
|
||||||
@SIM_COMMON_BUILD_TRUE@ $(SHELL) ./config.status Make-common.sim $$subdir/Makefile.sim $$subdir/Makefile
|
|
||||||
|
|
||||||
@SIM_COMMON_BUILD_FALSE@config.status: configure
|
|
||||||
@SIM_COMMON_BUILD_FALSE@ $(ECHO_GEN) $(SHELL) ./config.status --recheck
|
|
||||||
|
|
||||||
## End COMMON_POST_CONFIG_FRAG
|
|
@ -16,7 +16,6 @@
|
|||||||
## along with this program. If not, see <http://www.gnu.org/licenses/>.
|
## along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
## Parts of the common/ sim code that have been unified.
|
## Parts of the common/ sim code that have been unified.
|
||||||
## Most still lives in common/Make-common.in.
|
|
||||||
|
|
||||||
AM_CPPFLAGS += \
|
AM_CPPFLAGS += \
|
||||||
-I$(srcdir)/%D% \
|
-I$(srcdir)/%D% \
|
||||||
|
16
sim/configure
vendored
16
sim/configure
vendored
@ -657,8 +657,6 @@ SIM_MIPS_FPU_BITSIZE
|
|||||||
SIM_MIPS_BITSIZE
|
SIM_MIPS_BITSIZE
|
||||||
SIM_MIPS_SUBTARGET
|
SIM_MIPS_SUBTARGET
|
||||||
SIM_FRV_TRAPDUMP_FLAGS
|
SIM_FRV_TRAPDUMP_FLAGS
|
||||||
sim_float
|
|
||||||
sim_bitsize
|
|
||||||
IGEN_FLAGS_SMP
|
IGEN_FLAGS_SMP
|
||||||
SIM_INLINE
|
SIM_INLINE
|
||||||
SIM_HW_SOCKSER
|
SIM_HW_SOCKSER
|
||||||
@ -836,8 +834,6 @@ AS_FOR_TARGET_AARCH64
|
|||||||
LD_FOR_TARGET
|
LD_FOR_TARGET
|
||||||
AS_FOR_TARGET
|
AS_FOR_TARGET
|
||||||
CC_FOR_TARGET
|
CC_FOR_TARGET
|
||||||
SIM_COMMON_BUILD_FALSE
|
|
||||||
SIM_COMMON_BUILD_TRUE
|
|
||||||
SIM_ENABLED_ARCHES
|
SIM_ENABLED_ARCHES
|
||||||
SIM_PRIMARY_TARGET
|
SIM_PRIMARY_TARGET
|
||||||
AM_BACKSLASH
|
AM_BACKSLASH
|
||||||
@ -12448,7 +12444,7 @@ else
|
|||||||
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
|
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
|
||||||
lt_status=$lt_dlunknown
|
lt_status=$lt_dlunknown
|
||||||
cat > conftest.$ac_ext <<_LT_EOF
|
cat > conftest.$ac_ext <<_LT_EOF
|
||||||
#line 12451 "configure"
|
#line 12447 "configure"
|
||||||
#include "confdefs.h"
|
#include "confdefs.h"
|
||||||
|
|
||||||
#if HAVE_DLFCN_H
|
#if HAVE_DLFCN_H
|
||||||
@ -12554,7 +12550,7 @@ else
|
|||||||
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
|
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
|
||||||
lt_status=$lt_dlunknown
|
lt_status=$lt_dlunknown
|
||||||
cat > conftest.$ac_ext <<_LT_EOF
|
cat > conftest.$ac_ext <<_LT_EOF
|
||||||
#line 12557 "configure"
|
#line 12553 "configure"
|
||||||
#include "confdefs.h"
|
#include "confdefs.h"
|
||||||
|
|
||||||
#if HAVE_DLFCN_H
|
#if HAVE_DLFCN_H
|
||||||
@ -14268,11 +14264,6 @@ SIM_PRIMARY_TARGET=
|
|||||||
SIM_ENABLED_ARCHES=
|
SIM_ENABLED_ARCHES=
|
||||||
|
|
||||||
|
|
||||||
SIM_COMMON_BUILD_TRUE=
|
|
||||||
SIM_COMMON_BUILD_FALSE='#'
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
ENABLE_SIM=no
|
ENABLE_SIM=no
|
||||||
|
|
||||||
|
|
||||||
@ -16171,9 +16162,6 @@ $as_echo "${WARN_CFLAGS} ${WERROR_CFLAGS}" >&6; }
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether sim frv should dump cpu state on unknown traps" >&5
|
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether sim frv should dump cpu state on unknown traps" >&5
|
||||||
$as_echo_n "checking whether sim frv should dump cpu state on unknown traps... " >&6; }
|
$as_echo_n "checking whether sim frv should dump cpu state on unknown traps... " >&6; }
|
||||||
# Check whether --enable-sim-frv-trapdump was given.
|
# Check whether --enable-sim-frv-trapdump was given.
|
||||||
|
@ -52,12 +52,6 @@ dnl List of enabled arch backends.
|
|||||||
SIM_ENABLED_ARCHES=
|
SIM_ENABLED_ARCHES=
|
||||||
AC_SUBST(SIM_ENABLED_ARCHES)
|
AC_SUBST(SIM_ENABLED_ARCHES)
|
||||||
|
|
||||||
dnl Used by common/Make-common.in to see which configure script created it.
|
|
||||||
SIM_COMMON_BUILD_TRUE=
|
|
||||||
SIM_COMMON_BUILD_FALSE='#'
|
|
||||||
AC_SUBST(SIM_COMMON_BUILD_TRUE)
|
|
||||||
AC_SUBST(SIM_COMMON_BUILD_FALSE)
|
|
||||||
|
|
||||||
ENABLE_SIM=no
|
ENABLE_SIM=no
|
||||||
dnl Build a particular arch subdir.
|
dnl Build a particular arch subdir.
|
||||||
dnl arg[1] is the arch subdir name.
|
dnl arg[1] is the arch subdir name.
|
||||||
@ -166,13 +160,6 @@ SIM_AC_OPTION_STDIO
|
|||||||
SIM_AC_OPTION_TRACE
|
SIM_AC_OPTION_TRACE
|
||||||
SIM_AC_OPTION_WARNINGS
|
SIM_AC_OPTION_WARNINGS
|
||||||
|
|
||||||
dnl These are unfortunate. They are conditionally called by other sim macros
|
|
||||||
dnl but always used by common/Make-common.in. So we have to subst here even
|
|
||||||
dnl when the rest of the code is in the respective macros. Once we merge the
|
|
||||||
dnl respective SIM_AC_OPTION_xxx call above, we can drop these.
|
|
||||||
AC_SUBST(sim_bitsize)
|
|
||||||
AC_SUBST(sim_float)
|
|
||||||
|
|
||||||
dnl Some arches have unique configure flags.
|
dnl Some arches have unique configure flags.
|
||||||
m4_include([frv/acinclude.m4])
|
m4_include([frv/acinclude.m4])
|
||||||
m4_include([mips/acinclude.m4])
|
m4_include([mips/acinclude.m4])
|
||||||
|
Loading…
x
Reference in New Issue
Block a user