[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

Re: [PATCH] tests/meson: fix mock library link on MacOS

On 8/28/20 4:35 PM, Scott Shambarger wrote:
MacOS can not pre-load modules, so mock libraries must be built
as shared libraries (without asneeded striping, and undefined
symbols allowed).

Signed-off-by: Scott Shambarger <scott-libvirt shambarger net>

Given that this is a MacOS specific limitation it's not a good idea
to force it on the common code for everyone else.

The 'meson.build' file in the project root uses, in line 1727:

host_machine.system() != 'darwin'

To identify the building system as MacOS. IMO you should use an
"if host_machine.system() != 'darwin'" inside the 'foreach' loop
below to do whatever it is necessary for MacOS, leave the rest as



  tests/meson.build | 6 +++++-
  1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/tests/meson.build b/tests/meson.build
index b5f6e2267a..d7476452ba 100644
--- a/tests/meson.build
+++ b/tests/meson.build
@@ -120,9 +120,13 @@ if conf.has('WITH_SECDRIVER_SELINUX')
foreach mock : mock_libs
-  shared_module(
+  shared_library(
      mock.get('sources', [ '@0  c'.format(mock['name']) ]),
+    override_options: [
+     'b_asneeded=false',
+     'b_lundef=false',
+    ],
      dependencies: [
        mock.get('deps', []),

[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]