[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH 041/132] meson: convert chardev directory to Meson (tools part)
From: |
Paolo Bonzini |
Subject: |
[PATCH 041/132] meson: convert chardev directory to Meson (tools part) |
Date: |
Thu, 12 Dec 2019 13:51:25 +0100 |
From: Marc-André Lureau <address@hidden>
Signed-off-by: Marc-André Lureau <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>
---
Makefile | 1 -
Makefile.objs | 6 ++----
Makefile.target | 2 +-
chardev/Makefile.objs | 19 -------------------
chardev/meson.build | 34 ++++++++++++++++++++++++++++++++++
meson.build | 1 +
6 files changed, 38 insertions(+), 25 deletions(-)
create mode 100644 chardev/meson.build
diff --git a/Makefile b/Makefile
index c8c402a..42077ae 100644
--- a/Makefile
+++ b/Makefile
@@ -140,7 +140,6 @@ include $(SRC_PATH)/Makefile.objs
endif
dummy := $(call unnest-vars,, \
- chardev-obj-y \
block-obj-y \
block-obj-m \
common-obj-y \
diff --git a/Makefile.objs b/Makefile.objs
index 75d4355c..39e1d41 100644
--- a/Makefile.objs
+++ b/Makefile.objs
@@ -1,8 +1,4 @@
#######################################################################
-# chardev-obj-y is code used by both qemu system emulation and some tests
-chardev-obj-y = chardev/
-
-#######################################################################
# block-obj-y is code used by both qemu system emulation and qemu-img
block-obj-y = nbd/
@@ -19,6 +15,8 @@ block-obj-m = block/
authz-obj-y = authz/libauthz.fa
authz/libauthz.fa-libs = $(if $(CONFIG_AUTH_PAM),-lpam)
+chardev-obj-y = chardev/libchardev.fa
+
crypto-obj-y = crypto/libcrypto.fa
io-obj-y = io/libio.fa
diff --git a/Makefile.target b/Makefile.target
index a0eb332..95823da 100644
--- a/Makefile.target
+++ b/Makefile.target
@@ -184,13 +184,13 @@ all-obj-y := $(obj-y)
include $(SRC_PATH)/Makefile.objs
dummy := $(call fix-paths,../,, \
authz-obj-y \
+ chardev-obj-y \
crypto-obj-y \
io-obj-y \
qom-obj-y)
dummy := $(call unnest-vars,.., \
block-obj-y \
block-obj-m \
- chardev-obj-y \
common-obj-y \
common-obj-m)
all-obj-y += $(common-obj-y)
diff --git a/chardev/Makefile.objs b/chardev/Makefile.objs
index d68e134..8049d82 100644
--- a/chardev/Makefile.objs
+++ b/chardev/Makefile.objs
@@ -1,22 +1,3 @@
-chardev-obj-y += char.o
-chardev-obj-$(CONFIG_WIN32) += char-console.o
-chardev-obj-$(CONFIG_POSIX) += char-fd.o
-chardev-obj-y += char-fe.o
-chardev-obj-y += char-file.o
-chardev-obj-y += char-io.o
-chardev-obj-y += char-mux.o
-chardev-obj-y += char-null.o
-chardev-obj-$(CONFIG_POSIX) += char-parallel.o
-chardev-obj-y += char-pipe.o
-chardev-obj-$(CONFIG_POSIX) += char-pty.o
-chardev-obj-y += char-ringbuf.o
-chardev-obj-y += char-serial.o
-chardev-obj-y += char-socket.o
-chardev-obj-y += char-stdio.o
-chardev-obj-y += char-udp.o
-chardev-obj-$(CONFIG_WIN32) += char-win.o
-chardev-obj-$(CONFIG_WIN32) += char-win-stdio.o
-
common-obj-y += msmouse.o wctablet.o testdev.o
common-obj-$(CONFIG_BRLAPI) += baum.o
baum.o-cflags := $(SDL_CFLAGS)
diff --git a/chardev/meson.build b/chardev/meson.build
new file mode 100644
index 0000000..18850b3
--- /dev/null
+++ b/chardev/meson.build
@@ -0,0 +1,34 @@
+chardev_ss = ss.source_set()
+chardev_ss.add(files(
+ 'char-fe.c',
+ 'char-file.c',
+ 'char-io.c',
+ 'char-mux.c',
+ 'char-null.c',
+ 'char-pipe.c',
+ 'char-ringbuf.c',
+ 'char-serial.c',
+ 'char-socket.c',
+ 'char-stdio.c',
+ 'char-udp.c',
+ 'char.c',
+))
+chardev_ss.add(when: 'CONFIG_POSIX', if_true: files(
+ 'char-fd.c',
+ 'char-parallel.c',
+ 'char-pty.c',
+))
+chardev_ss.add(when: 'CONFIG_WIN32', if_true: files(
+ 'char-console.c',
+ 'char-win-stdio.c',
+ 'char-win.c',
+))
+
+chardev_ss = chardev_ss.apply(config_host, strict: false)
+libchardev = static_library('chardev', chardev_ss.sources(),
+ dependencies: [crypto, io, qom],
+ link_with: libqemuutil,
+ name_suffix: 'fa',
+ build_by_default: false)
+
+chardev = declare_dependency(link_with: libchardev)
diff --git a/meson.build b/meson.build
index 3c292c6..b5aa6a2 100644
--- a/meson.build
+++ b/meson.build
@@ -395,6 +395,7 @@ qemuutil = declare_dependency(link_with: libqemuutil,
sources: version_res)
subdir('io')
+subdir('chardev')
subdir('fsdev')
mods = []
--
1.8.3.1
- [PATCH 030/132] meson: generate hxtool files, (continued)
- [PATCH 030/132] meson: generate hxtool files, Paolo Bonzini, 2019/12/12
- [PATCH 031/132] meson: configure 50-qemu-gpu.json, Paolo Bonzini, 2019/12/12
- [PATCH 032/132] meson: uncompress edk2 bios, Paolo Bonzini, 2019/12/12
- [PATCH 033/132] build-sys hack: link with whole .fa archives, Paolo Bonzini, 2019/12/12
- [PATCH 035/132] meson: convert authz directory to Meson, Paolo Bonzini, 2019/12/12
- [PATCH 034/132] meson: convert qom directory to Meson, Paolo Bonzini, 2019/12/12
- [PATCH 036/132] meson: convert crypto directory to Meson, Paolo Bonzini, 2019/12/12
- [PATCH 037/132] meson: convert io directory to Meson, Paolo Bonzini, 2019/12/12
- [PATCH 039/132] meson: add macos dependencies, Paolo Bonzini, 2019/12/12
- [PATCH 038/132] meson: infrastructure for building emulators, Paolo Bonzini, 2019/12/12
- [PATCH 041/132] meson: convert chardev directory to Meson (tools part),
Paolo Bonzini <=
- [PATCH 043/132] meson: qemu-{img,io,nbd}, Paolo Bonzini, 2019/12/12
- [PATCH 042/132] meson: convert block, Paolo Bonzini, 2019/12/12
- [PATCH 044/132] meson: qemu-pr-helper, Paolo Bonzini, 2019/12/12
- [PATCH 040/132] meson: add modules infrastructure, Paolo Bonzini, 2019/12/12
- [PATCH 045/132] configure, Makefile; remove TOOLS and HELPERS-y variable, Paolo Bonzini, 2019/12/12
- [PATCH 046/132] meson: convert chardev directory to Meson (emulator part), Paolo Bonzini, 2019/12/12
- [PATCH 047/132] meson: convert audio directory to Meson, Paolo Bonzini, 2019/12/12
- [PATCH 049/132] meson: convert root directory to Meson, Paolo Bonzini, 2019/12/12
- [PATCH 048/132] meson: convert ui directory to Meson, Paolo Bonzini, 2019/12/12
- [PATCH 051/132] meson: convert qom/, Paolo Bonzini, 2019/12/12