63 lines
2.6 KiB
Diff
63 lines
2.6 KiB
Diff
|
From 23ae79fe84a3fa5d995b8c6b9be70587e37a6cd8 Mon Sep 17 00:00:00 2001
|
||
|
From: Reini Urban <rurban@cpan.org>
|
||
|
Date: Mon, 26 Mar 2018 18:31:30 +0200
|
||
|
Subject: [PATCH] add pic_flag to RETPOLINE cflags and ldflags
|
||
|
|
||
|
This fixes the linke probe, and fixes #55.
|
||
|
Also: libtool is stripping pic_flags from the shared link cmd.
|
||
|
|
||
|
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
|
||
|
[Retrieved from:
|
||
|
https://github.com/rurban/safeclib/commit/23ae79fe84a3fa5d995b8c6b9be70587e37a6cd8]
|
||
|
---
|
||
|
configure.ac | 2 +-
|
||
|
m4/ax_compiler_flags_cflags.m4 | 4 ++--
|
||
|
m4/ax_compiler_flags_ldflags.m4 | 2 +-
|
||
|
3 files changed, 4 insertions(+), 4 deletions(-)
|
||
|
|
||
|
diff --git a/configure.ac b/configure.ac
|
||
|
index 33ed7326..10325dc6 100644
|
||
|
--- a/configure.ac
|
||
|
+++ b/configure.ac
|
||
|
@@ -4,7 +4,7 @@
|
||
|
# 2017 Reini Urban <rurban@cpan.org>
|
||
|
#
|
||
|
# Copyright (c) 2012, 2013 Cisco Systems
|
||
|
-# Copyright (c) 2017 Reini Urban
|
||
|
+# Copyright (c) 2017, 2018 Reini Urban
|
||
|
# All rights reserved.
|
||
|
#
|
||
|
# Permission is hereby granted, free of charge, to any person
|
||
|
diff --git a/m4/ax_compiler_flags_cflags.m4 b/m4/ax_compiler_flags_cflags.m4
|
||
|
index 31e3ba8c..1dec00b2 100644
|
||
|
--- a/m4/ax_compiler_flags_cflags.m4
|
||
|
+++ b/m4/ax_compiler_flags_cflags.m4
|
||
|
@@ -66,12 +66,12 @@ AC_DEFUN([AX_COMPILER_FLAGS_CFLAGS],[
|
||
|
])
|
||
|
|
||
|
# retpoline: clang-7. Note: requires lld-7 linker support
|
||
|
- AX_APPEND_COMPILE_FLAGS(["-mretpoline -DRETPOLINE"],
|
||
|
+ AX_APPEND_COMPILE_FLAGS(["-mretpoline -DRETPOLINE $lt_prog_compiler_pic"],
|
||
|
[RETPOLINE_CFLAGS],[$ax_compiler_flags_test])
|
||
|
# or the equivalent gcc-7.3 variant
|
||
|
if test -z "$RETPOLINE_CFLAGS"; then
|
||
|
AX_APPEND_COMPILE_FLAGS(
|
||
|
- ["-mindirect-branch=thunk-extern -mfunction-return=thunk-extern -mindirect-branch-register -DRETPOLINE"],
|
||
|
+ ["-mindirect-branch=thunk-extern -mfunction-return=thunk-extern -mindirect-branch-register $lt_prog_compiler_pic -DRETPOLINE"],
|
||
|
[RETPOLINE_CFLAGS],[$ax_compiler_flags_test])
|
||
|
fi
|
||
|
|
||
|
diff --git a/m4/ax_compiler_flags_ldflags.m4 b/m4/ax_compiler_flags_ldflags.m4
|
||
|
index d0287852..193f412e 100644
|
||
|
--- a/m4/ax_compiler_flags_ldflags.m4
|
||
|
+++ b/m4/ax_compiler_flags_ldflags.m4
|
||
|
@@ -66,7 +66,7 @@ AC_DEFUN([AX_COMPILER_FLAGS_LDFLAGS],[
|
||
|
dnl /usr/bin/ld: warning: -z retpolineplt ignored.
|
||
|
case $RETPOLINE_CFLAGS in
|
||
|
*-mretpoline*|*-mindirect-branch=thunk-extern*)
|
||
|
- AX_APPEND_LINK_FLAGS([-Wl,-z,retpolineplt],
|
||
|
+ AX_APPEND_LINK_FLAGS(["$RETPOLINE_CFLAGS -Wl,-z,retpolineplt"],
|
||
|
[RETPOLINE_LDFLAGS],[$ax_compiler_flags_test])
|
||
|
if test -n "$RETPOLINE_LDFLAGS"; then
|
||
|
AM_CFLAGS="$AM_CFLAGS $RETPOLINE_CFLAGS"
|