[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PULL 24/36] build-sys: make libslirp a meson subproject
From: |
Paolo Bonzini |
Subject: |
[PULL 24/36] build-sys: make libslirp a meson subproject |
Date: |
Fri, 29 Jan 2021 12:18:02 +0100 |
From: Marc-André Lureau <marcandre.lureau@redhat.com>
Remove the manual build.
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Message-Id: <20210125073427.3970606-3-marcandre.lureau@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
---
.gitmodules | 4 ++--
configure | 2 +-
meson.build | 63 ++++-------------------------------------------------
3 files changed, 7 insertions(+), 62 deletions(-)
diff --git a/.gitmodules b/.gitmodules
index 2bdeeacef8..0fb15efacd 100644
--- a/.gitmodules
+++ b/.gitmodules
@@ -49,8 +49,8 @@
[submodule "roms/edk2"]
path = roms/edk2
url = https://git.qemu.org/git/edk2.git
-[submodule "slirp"]
- path = slirp
+[submodule "subprojects/libslirp"]
+ path = subprojects/libslirp
url = https://git.qemu.org/git/libslirp.git
[submodule "roms/opensbi"]
path = roms/opensbi
diff --git a/configure b/configure
index 21369efc63..337283571a 100755
--- a/configure
+++ b/configure
@@ -5212,7 +5212,7 @@ case "$slirp" in
auto | enabled | internal)
# Simpler to always update submodule, even if not needed.
if test -e "${source_path}/.git" && test $git_update = 'yes' ; then
- git_submodules="${git_submodules} slirp"
+ git_submodules="${git_submodules} subprojects/libslirp"
fi
;;
esac
diff --git a/meson.build b/meson.build
index b6c9db613b..4e694e78a0 100644
--- a/meson.build
+++ b/meson.build
@@ -1489,7 +1489,7 @@ slirp_opt = 'disabled'
if have_system
slirp_opt = get_option('slirp')
if slirp_opt in ['enabled', 'auto', 'system']
- have_internal = fs.exists(meson.current_source_dir() / 'slirp/meson.build')
+ have_internal = fs.exists(meson.current_source_dir() /
'subprojects/libslirp/meson.build')
slirp = dependency('slirp', kwargs: static_kwargs,
method: 'pkg-config',
required: slirp_opt == 'system' or
@@ -1503,64 +1503,9 @@ if have_system
endif
endif
if slirp_opt == 'internal'
- slirp_deps = []
- if targetos == 'windows'
- slirp_deps = cc.find_library('iphlpapi')
- endif
- slirp_conf = configuration_data()
- slirp_conf.set('SLIRP_MAJOR_VERSION',
meson.project_version().split('.')[0])
- slirp_conf.set('SLIRP_MINOR_VERSION',
meson.project_version().split('.')[1])
- slirp_conf.set('SLIRP_MICRO_VERSION',
meson.project_version().split('.')[2])
- slirp_conf.set_quoted('SLIRP_VERSION_STRING', meson.project_version())
- slirp_cargs = ['-DG_LOG_DOMAIN="Slirp"']
- slirp_files = [
- 'slirp/src/arp_table.c',
- 'slirp/src/bootp.c',
- 'slirp/src/cksum.c',
- 'slirp/src/dhcpv6.c',
- 'slirp/src/dnssearch.c',
- 'slirp/src/if.c',
- 'slirp/src/ip6_icmp.c',
- 'slirp/src/ip6_input.c',
- 'slirp/src/ip6_output.c',
- 'slirp/src/ip_icmp.c',
- 'slirp/src/ip_input.c',
- 'slirp/src/ip_output.c',
- 'slirp/src/mbuf.c',
- 'slirp/src/misc.c',
- 'slirp/src/ncsi.c',
- 'slirp/src/ndp_table.c',
- 'slirp/src/sbuf.c',
- 'slirp/src/slirp.c',
- 'slirp/src/socket.c',
- 'slirp/src/state.c',
- 'slirp/src/stream.c',
- 'slirp/src/tcp_input.c',
- 'slirp/src/tcp_output.c',
- 'slirp/src/tcp_subr.c',
- 'slirp/src/tcp_timer.c',
- 'slirp/src/tftp.c',
- 'slirp/src/udp.c',
- 'slirp/src/udp6.c',
- 'slirp/src/util.c',
- 'slirp/src/version.c',
- 'slirp/src/vmstate.c',
- ]
-
- configure_file(
- input : 'slirp/src/libslirp-version.h.in',
- output : 'libslirp-version.h',
- configuration: slirp_conf)
-
- slirp_inc = include_directories('slirp', 'slirp/src')
- libslirp = static_library('slirp',
- build_by_default: false,
- sources: slirp_files,
- c_args: slirp_cargs,
- include_directories: slirp_inc)
- slirp = declare_dependency(link_with: libslirp,
- dependencies: slirp_deps,
- include_directories: slirp_inc)
+ libslirp = subproject('libslirp',
+ default_options: ['default_library=static'])
+ slirp = libslirp.get_variable('libslirp_dep')
endif
endif
--
2.29.2
- [PULL 11/36] meson: honor --enable-rbd if cc.links test fails, (continued)
- [PULL 11/36] meson: honor --enable-rbd if cc.links test fails, Paolo Bonzini, 2021/01/29
- [PULL 17/36] target/i386: Fix decoding of certain BMI instructions, Paolo Bonzini, 2021/01/29
- [PULL 13/36] fuzz: fix wrong index in clear_bits, Paolo Bonzini, 2021/01/29
- [PULL 18/36] target/i86: implement PKS, Paolo Bonzini, 2021/01/29
- [PULL 15/36] virtio-scsi: don't uninitialize queues that we didn't initialize, Paolo Bonzini, 2021/01/29
- [PULL 22/36] meson: Warn when TCI is selected but TCG backend is available, Paolo Bonzini, 2021/01/29
- [PULL 19/36] configure: Fix --enable-tcg-interpreter, Paolo Bonzini, 2021/01/29
- [PULL 20/36] configure: Improve TCI feature description, Paolo Bonzini, 2021/01/29
- [PULL 21/36] meson: Explicit TCG backend used, Paolo Bonzini, 2021/01/29
- [PULL 26/36] pc-bios/meson: Only install EDK2 blob firmwares with system emulation, Paolo Bonzini, 2021/01/29
- [PULL 24/36] build-sys: make libslirp a meson subproject,
Paolo Bonzini <=
- [PULL 25/36] tests/meson: Only build softfloat objects if TCG is selected, Paolo Bonzini, 2021/01/29
- [PULL 28/36] meson: Merge trace_events_subdirs array, Paolo Bonzini, 2021/01/29
- [PULL 31/36] qapi/meson: Restrict qdev code to system-mode emulation, Paolo Bonzini, 2021/01/29
- [PULL 23/36] slirp: update to git master, Paolo Bonzini, 2021/01/29
- [PULL 27/36] meson: Restrict block subsystem processing, Paolo Bonzini, 2021/01/29
- [PULL 32/36] qapi/meson: Remove QMP from user-mode emulation, Paolo Bonzini, 2021/01/29
- [PULL 30/36] meson: Restrict emulation code, Paolo Bonzini, 2021/01/29
- [PULL 35/36] hvf: Fetch cr4 before evaluating CPUID(1), Paolo Bonzini, 2021/01/29
- [PULL 36/36] accel/kvm/kvm-all: Fix wrong return code handling in dirty log code, Paolo Bonzini, 2021/01/29
- [PULL 29/36] meson: Restrict some trace event directories to user/system emulation, Paolo Bonzini, 2021/01/29