[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v2 52/52] tcg: Build once for system and once for user-only
|
From: |
Richard Henderson |
|
Subject: |
[PATCH v2 52/52] tcg: Build once for system and once for user-only |
|
Date: |
Tue, 23 May 2023 06:53:22 -0700 |
Create two static libraries for use by each execution mode.
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
---
tcg/meson.build | 30 +++++++++++++++++++++++++++---
1 file changed, 27 insertions(+), 3 deletions(-)
diff --git a/tcg/meson.build b/tcg/meson.build
index bdc185a485..565c60bc96 100644
--- a/tcg/meson.build
+++ b/tcg/meson.build
@@ -1,3 +1,7 @@
+if not get_option('tcg').allowed()
+ subdir_done()
+endif
+
tcg_ss = ss.source_set()
tcg_ss.add(files(
@@ -14,8 +18,28 @@ tcg_ss.add(files(
if get_option('tcg_interpreter')
libffi = dependency('libffi', version: '>=3.0', required: true,
method: 'pkg-config')
- specific_ss.add(libffi)
- specific_ss.add(files('tci.c'))
+ tcg_ss.add(libffi)
+ tcg_ss.add(files('tci.c'))
endif
-specific_ss.add_all(when: 'CONFIG_TCG', if_true: tcg_ss)
+tcg_ss = tcg_ss.apply(config_host, strict: false)
+
+libtcg_user = static_library('tcg_user',
+ tcg_ss.sources() + genh,
+ name_suffix: 'fa',
+ c_args: '-DCONFIG_USER_ONLY',
+ build_by_default: have_user)
+
+tcg_user = declare_dependency(link_with: libtcg_user,
+ dependencies: tcg_ss.dependencies())
+user_ss.add(tcg_user)
+
+libtcg_softmmu = static_library('tcg_softmmu',
+ tcg_ss.sources() + genh,
+ name_suffix: 'fa',
+ c_args: '-DCONFIG_SOFTMMU',
+ build_by_default: have_system)
+
+tcg_softmmu = declare_dependency(link_with: libtcg_softmmu,
+ dependencies: tcg_ss.dependencies())
+softmmu_ss.add(tcg_softmmu)
--
2.34.1
- [PATCH v2 27/52] tcg: Add guest_mo to TCGContext, (continued)
- [PATCH v2 27/52] tcg: Add guest_mo to TCGContext, Richard Henderson, 2023/05/23
- [PATCH v2 39/52] accel/tcg: Move translator_fake_ldb out of line, Richard Henderson, 2023/05/23
- [PATCH v2 38/52] accel/tcg: Introduce translator_io_start, Richard Henderson, 2023/05/23
- [PATCH v2 34/52] tcg: Remove USE_TCG_OPTIMIZATIONS, Richard Henderson, 2023/05/23
- [PATCH v2 41/52] target/mips: Tidy helpers for translation, Richard Henderson, 2023/05/23
- [PATCH v2 42/52] *: Add missing includes of exec/translation-block.h, Richard Henderson, 2023/05/23
- [PATCH v2 40/52] target/arm: Tidy helpers for translation, Richard Henderson, 2023/05/23
- [PATCH v2 45/52] tcg: Define IN_TCG, Richard Henderson, 2023/05/23
- [PATCH v2 46/52] tcg: Fix PAGE/PROT confusion, Richard Henderson, 2023/05/23
- [PATCH v2 48/52] tcg: Remove target-specific headers from tcg.[ch], Richard Henderson, 2023/05/23
- [PATCH v2 52/52] tcg: Build once for system and once for user-only,
Richard Henderson <=
- [PATCH v2 43/52] *: Add missing includes of exec/exec-all.h, Richard Henderson, 2023/05/23
- [PATCH v2 49/52] plugins: Move plugin_insn_append to translator.c, Richard Henderson, 2023/05/23
- [PATCH v2 50/52] plugins: Drop unused headers from exec/plugin-gen.h, Richard Henderson, 2023/05/23
- [PATCH v2 47/52] tcg: Move env defines out of NEED_CPU_H in helper-head.h, Richard Henderson, 2023/05/23
- [PATCH v2 51/52] exec/poison: Do not poison CONFIG_SOFTMMU, Richard Henderson, 2023/05/23
- [PATCH v2 44/52] accel/tcg: Tidy includes for translator.[ch], Richard Henderson, 2023/05/23