forked from Imagelibrary/binutils-gdb
sim: hw: rework configure option & device selection
The sim-hardware configure option allows builders to select a set of device models to enable. But this seems like unnecessary overkill: the existence of individual device models doesn't affect performance at all as they are only enabled at runtime if the config uses them, and individually these are all <5KB a piece. Stripping off a total of ~50KB from a ~1MB binary doesn't seem useful, and it's extremely unlikely anyone will ever bother. So let's simplify the configure/make logic by turning sim-hardware into a boolean option like many of the other sim options. Any ports that have unique device models will declare them in their Makefile instead of at configure time. This will allow us to (eventually) unify the setting into the common dir.
This commit is contained in:
@@ -1,3 +1,7 @@
|
||||
2021-06-21 Mike Frysinger <vapier@gentoo.org>
|
||||
|
||||
* configure: Regenerate.
|
||||
|
||||
2021-06-20 Mike Frysinger <vapier@gentoo.org>
|
||||
|
||||
* configure.ac (SIM_AC_COMMON): Delete.
|
||||
|
||||
64
sim/example-synacor/configure
vendored
64
sim/example-synacor/configure
vendored
@@ -590,6 +590,10 @@ sim_scache
|
||||
sim_float
|
||||
sim_bitsize
|
||||
cgen_breaks
|
||||
sim_hw_sockser
|
||||
sim_hw_cflags
|
||||
SIM_ENABLE_HW_FALSE
|
||||
SIM_ENABLE_HW_TRUE
|
||||
target_alias
|
||||
host_alias
|
||||
build_alias
|
||||
@@ -627,10 +631,7 @@ PACKAGE_VERSION
|
||||
PACKAGE_TARNAME
|
||||
PACKAGE_NAME
|
||||
PATH_SEPARATOR
|
||||
SHELL
|
||||
sim_hw
|
||||
sim_hw_objs
|
||||
sim_hw_cflags'
|
||||
SHELL'
|
||||
ac_subst_files=''
|
||||
ac_user_opts='
|
||||
enable_option_checking
|
||||
@@ -1246,8 +1247,7 @@ Optional Features:
|
||||
--disable-option-checking ignore unrecognized --enable/--with options
|
||||
--disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no)
|
||||
--enable-FEATURE[=ARG] include FEATURE [ARG=yes]
|
||||
--enable-sim-hardware=LIST
|
||||
Specify the hardware to be included in the build.
|
||||
--enable-sim-hardware Whether to enable hardware/device simulation
|
||||
|
||||
Report bugs to the package provider.
|
||||
_ACEOF
|
||||
@@ -1679,12 +1679,8 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu
|
||||
|
||||
|
||||
|
||||
|
||||
hardware="cfi core pal glue "
|
||||
sim_hw_cflags="-DWITH_HW=1"
|
||||
sim_hw="$hardware"
|
||||
sim_hw_objs="\$(SIM_COMMON_HW_OBJS) `echo $sim_hw | sed -e 's/\([^ ][^ ]*\)/dv-\1.o/g'`"
|
||||
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for sim hardware settings" >&5
|
||||
$as_echo_n "checking for sim hardware settings... " >&6; }
|
||||
# Check whether --enable-sim-hardware was given.
|
||||
if test "${enable_sim_hardware+set}" = set; then :
|
||||
enableval=$enable_sim_hardware;
|
||||
@@ -1692,42 +1688,37 @@ else
|
||||
enable_sim_hardware="yes"
|
||||
fi
|
||||
|
||||
case ${enable_sim_hardware} in
|
||||
yes|no) ;;
|
||||
,*) hardware="${hardware} `echo ${enableval} | sed -e 's/,/ /'`";;
|
||||
*,) hardware="`echo ${enableval} | sed -e 's/,/ /'` ${hardware}";;
|
||||
*) hardware="`echo ${enableval} | sed -e 's/,/ /'`"'';;
|
||||
esac
|
||||
|
||||
sim_hw_sockser=
|
||||
if test "$enable_sim_hardware" = no; then
|
||||
sim_hw_objs=
|
||||
sim_hw_cflags="-DWITH_HW=0"
|
||||
sim_hw=
|
||||
else
|
||||
elif test "$enable_sim_hardware" = yes; then
|
||||
sim_hw_cflags="-DWITH_HW=1"
|
||||
# remove duplicates
|
||||
sim_hw=""
|
||||
sim_hw_objs="\$(SIM_COMMON_HW_OBJS)"
|
||||
for i in $hardware ; do
|
||||
case " $sim_hw " in
|
||||
*" $i "*) ;;
|
||||
*) sim_hw="$sim_hw $i" ; sim_hw_objs="$sim_hw_objs dv-$i.o";;
|
||||
esac
|
||||
done
|
||||
# mingw does not support sockser
|
||||
case ${host} in
|
||||
*mingw*) ;;
|
||||
*) # TODO: We don't add dv-sockser to sim_hw as it is not a "real" device
|
||||
# that you instatiate. Instead, other code will call into it directly.
|
||||
# At some point, we should convert it over.
|
||||
sim_hw_objs="$sim_hw_objs dv-sockser.o"
|
||||
sim_hw_sockser="dv-sockser.o"
|
||||
sim_hw_cflags="$sim_hw_cflags -DHAVE_DV_SOCKSER"
|
||||
;;
|
||||
esac
|
||||
if test x"$silent" != x"yes"; then
|
||||
echo "Setting hardware to $sim_hw_cflags, $sim_hw, $sim_hw_objs"
|
||||
fi
|
||||
else
|
||||
as_fn_error $? "unknown argument \"$enable_sim_hardware\"" "$LINENO" 5
|
||||
fi
|
||||
if test "$enable_sim_hardware" = "yes"; then
|
||||
SIM_ENABLE_HW_TRUE=
|
||||
SIM_ENABLE_HW_FALSE='#'
|
||||
else
|
||||
SIM_ENABLE_HW_TRUE='#'
|
||||
SIM_ENABLE_HW_FALSE=
|
||||
fi
|
||||
|
||||
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: ${enable_sim_hardware}" >&5
|
||||
$as_echo "${enable_sim_hardware}" >&6; }
|
||||
|
||||
|
||||
|
||||
|
||||
cgen_breaks=""
|
||||
@@ -1752,9 +1743,6 @@ ac_config_commands="$ac_config_commands stamp-h"
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
cat >confcache <<\_ACEOF
|
||||
# This file is a shell script that caches the results of configure
|
||||
# tests run on this system so they can be shared between configure
|
||||
|
||||
Reference in New Issue
Block a user