9b6022ca7e
Resolves: RHEL-31139
40 lines
1.3 KiB
Diff
40 lines
1.3 KiB
Diff
From 95b957d5381ae6b313333f50bb941e9970d55127 Mon Sep 17 00:00:00 2001
|
|
From: Christian Hergert <chergert@redhat.com>
|
|
Date: Wed, 12 Jun 2024 11:17:52 -0700
|
|
Subject: [PATCH] build: avoid asm.S on general Linux when possible
|
|
|
|
We only use asm.S when on mips when we're on Linux. Removing this means
|
|
for the other Linux cases means the compiler can automatically enable some
|
|
features we might want like CET for indirect branches.
|
|
---
|
|
src/meson.build | 10 +++++++++-
|
|
1 file changed, 9 insertions(+), 1 deletion(-)
|
|
|
|
diff --git a/src/meson.build b/src/meson.build
|
|
index 2967968..4a106a1 100644
|
|
--- a/src/meson.build
|
|
+++ b/src/meson.build
|
|
@@ -91,10 +91,18 @@ if host_machine.system() != 'windows'
|
|
# Not really used on Windows now, see also
|
|
# https://github.com/mesonbuild/meson/issues/4366
|
|
libdex_sources += [
|
|
- 'asm.S',
|
|
'dex-unix-signal.c',
|
|
'dex-ucontext.c',
|
|
]
|
|
+
|
|
+ # If we're on Linux and mips we might still need asm.S.
|
|
+ # But otherwise linux can do it all without any custom
|
|
+ # assembler. Failure to do this might result in CET being
|
|
+ # disabled for the process by GCC.
|
|
+ if host_machine.system() != 'linux' or host_machine.cpu_family() == 'mips'
|
|
+ libdex_sources += ['asm.S']
|
|
+ endif
|
|
+
|
|
libdex_headers += ['dex-unix-signal.h']
|
|
endif
|
|
|
|
--
|
|
2.45.1
|
|
|