configure: parse --enable/--disable-strip automatically, flip default
Always include the STRIP variable in config-host.mak (it's only used by the s390-ccw firmware build, and it adds a default if configure omitted it), and use meson-buildoptions.sh to turn --enable/--disable-strip into -Dstrip. The default is now not to strip the binaries like for almost every other package that has a configure script. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
This commit is contained in:
parent
9da9be2c26
commit
a70248dbd3
10
configure
vendored
10
configure
vendored
@ -307,7 +307,6 @@ debug="no"
|
||||
sanitizers="no"
|
||||
tsan="no"
|
||||
fortify_source="$default_feature"
|
||||
strip_opt="yes"
|
||||
mingw32="no"
|
||||
gcov="no"
|
||||
EXESUF=""
|
||||
@ -892,7 +891,6 @@ for opt do
|
||||
debug_tcg="yes"
|
||||
debug_mutex="yes"
|
||||
debug="yes"
|
||||
strip_opt="no"
|
||||
fortify_source="no"
|
||||
;;
|
||||
--enable-sanitizers) sanitizers="yes"
|
||||
@ -903,8 +901,6 @@ for opt do
|
||||
;;
|
||||
--disable-tsan) tsan="no"
|
||||
;;
|
||||
--disable-strip) strip_opt="no"
|
||||
;;
|
||||
--disable-slirp) slirp="disabled"
|
||||
;;
|
||||
--enable-slirp) slirp="enabled"
|
||||
@ -1367,7 +1363,6 @@ Advanced options (experts only):
|
||||
--enable-debug enable common debug build options
|
||||
--enable-sanitizers enable default sanitizers
|
||||
--enable-tsan enable thread sanitizer
|
||||
--disable-strip disable stripping binaries
|
||||
--disable-werror disable compilation abort on warning
|
||||
--disable-stack-protector disable compiler-provided stack protection
|
||||
--audio-drv-list=LIST set audio drivers to try if -audiodev is not used
|
||||
@ -3315,9 +3310,6 @@ echo "GIT_SUBMODULES_ACTION=$git_submodules_action" >> $config_host_mak
|
||||
if test "$debug_tcg" = "yes" ; then
|
||||
echo "CONFIG_DEBUG_TCG=y" >> $config_host_mak
|
||||
fi
|
||||
if test "$strip_opt" = "yes" ; then
|
||||
echo "STRIP=${strip}" >> $config_host_mak
|
||||
fi
|
||||
if test "$mingw32" = "yes" ; then
|
||||
echo "CONFIG_WIN32=y" >> $config_host_mak
|
||||
if test "$guest_agent_with_vss" = "yes" ; then
|
||||
@ -3595,6 +3587,7 @@ echo "GLIB_LIBS=$glib_libs" >> $config_host_mak
|
||||
echo "GLIB_VERSION=$(pkg-config --modversion glib-2.0)" >> $config_host_mak
|
||||
echo "QEMU_LDFLAGS=$QEMU_LDFLAGS" >> $config_host_mak
|
||||
echo "LD_I386_EMULATION=$ld_i386_emulation" >> $config_host_mak
|
||||
echo "STRIP=$strip" >> $config_host_mak
|
||||
echo "EXESUF=$EXESUF" >> $config_host_mak
|
||||
echo "LIBS_QGA=$libs_qga" >> $config_host_mak
|
||||
|
||||
@ -3812,7 +3805,6 @@ if test "$skip_meson" = no; then
|
||||
-Doptimization=$(if test "$debug" = yes; then echo 0; else echo 2; fi) \
|
||||
-Ddebug=$(if test "$debug_info" = yes; then echo true; else echo false; fi) \
|
||||
-Dwerror=$(if test "$werror" = yes; then echo true; else echo false; fi) \
|
||||
-Dstrip=$(if test "$strip_opt" = yes; then echo true; else echo false; fi) \
|
||||
-Db_pie=$(if test "$pie" = yes; then echo true; else echo false; fi) \
|
||||
-Db_coverage=$(if test "$gcov" = yes; then echo true; else echo false; fi) \
|
||||
-Db_lto=$lto -Dcfi=$cfi -Dtcg=$tcg -Dxen=$xen \
|
||||
|
@ -44,8 +44,6 @@ build-all: s390-ccw.img s390-netboot.img
|
||||
s390-ccw.elf: $(OBJECTS)
|
||||
$(call quiet-command,$(CC) $(LDFLAGS) -o $@ $(OBJECTS),"BUILD","$(TARGET_DIR)$@")
|
||||
|
||||
STRIP ?= strip
|
||||
|
||||
s390-ccw.img: s390-ccw.elf
|
||||
$(call quiet-command,$(STRIP) --strip-unneeded $< -o $@,"STRIP","$(TARGET_DIR)$@")
|
||||
|
||||
|
@ -36,6 +36,10 @@ SKIP_OPTIONS = {
|
||||
"trace_file",
|
||||
}
|
||||
|
||||
BUILTIN_OPTIONS = {
|
||||
"strip",
|
||||
}
|
||||
|
||||
LINE_WIDTH = 76
|
||||
|
||||
|
||||
@ -90,14 +94,17 @@ def allow_arg(opt):
|
||||
return not (set(opt["choices"]) <= {"auto", "disabled", "enabled"})
|
||||
|
||||
|
||||
def filter_options(json):
|
||||
if ":" in json["name"]:
|
||||
return False
|
||||
if json["section"] == "user":
|
||||
return json["name"] not in SKIP_OPTIONS
|
||||
else:
|
||||
return json["name"] in BUILTIN_OPTIONS
|
||||
|
||||
|
||||
def load_options(json):
|
||||
json = [
|
||||
x
|
||||
for x in json
|
||||
if x["section"] == "user"
|
||||
and ":" not in x["name"]
|
||||
and x["name"] not in SKIP_OPTIONS
|
||||
]
|
||||
json = [x for x in json if filter_options(x)]
|
||||
return sorted(json, key=lambda x: x["name"])
|
||||
|
||||
|
||||
|
@ -13,6 +13,7 @@ meson_options_help() {
|
||||
printf "%s\n" ' jemalloc/system/tcmalloc)'
|
||||
printf "%s\n" ' --enable-slirp[=CHOICE] Whether and how to find the slirp library'
|
||||
printf "%s\n" ' (choices: auto/disabled/enabled/internal/system)'
|
||||
printf "%s\n" ' --enable-strip Strip targets on install'
|
||||
printf "%s\n" ' --enable-tcg-interpreter TCG with bytecode interpreter (slow)'
|
||||
printf "%s\n" ' --enable-trace-backends=CHOICE'
|
||||
printf "%s\n" ' Set available tracing backends [log] (choices:'
|
||||
@ -237,6 +238,8 @@ _meson_option_parse() {
|
||||
--disable-spice) printf "%s" -Dspice=disabled ;;
|
||||
--enable-spice-protocol) printf "%s" -Dspice_protocol=enabled ;;
|
||||
--disable-spice-protocol) printf "%s" -Dspice_protocol=disabled ;;
|
||||
--enable-strip) printf "%s" -Dstrip=true ;;
|
||||
--disable-strip) printf "%s" -Dstrip=false ;;
|
||||
--enable-tcg) printf "%s" -Dtcg=enabled ;;
|
||||
--disable-tcg) printf "%s" -Dtcg=disabled ;;
|
||||
--enable-tcg-interpreter) printf "%s" -Dtcg_interpreter=true ;;
|
||||
|
Loading…
Reference in New Issue
Block a user