mirror of
https://github.com/libvirt/libvirt.git
synced 2025-02-25 18:55:26 -06:00
Check for --no-copy-dt-needed linker flag
and use it when available
This commit is contained in:
parent
d9527b6d56
commit
3e2799add2
@ -160,6 +160,7 @@ AC_MSG_RESULT([$VERSION_SCRIPT_FLAGS])
|
|||||||
LIBVIRT_COMPILE_WARNINGS
|
LIBVIRT_COMPILE_WARNINGS
|
||||||
LIBVIRT_COMPILE_PIE
|
LIBVIRT_COMPILE_PIE
|
||||||
LIBVIRT_LINKER_RELRO
|
LIBVIRT_LINKER_RELRO
|
||||||
|
LIBVIRT_LINKER_NO_INDIRECT
|
||||||
|
|
||||||
LIBVIRT_CHECK_APPARMOR
|
LIBVIRT_CHECK_APPARMOR
|
||||||
LIBVIRT_CHECK_ATTR
|
LIBVIRT_CHECK_ATTR
|
||||||
|
@ -129,6 +129,7 @@ libvirtd_LDFLAGS = \
|
|||||||
$(PIE_LDFLAGS) \
|
$(PIE_LDFLAGS) \
|
||||||
$(RELRO_LDFLAGS) \
|
$(RELRO_LDFLAGS) \
|
||||||
$(COVERAGE_LDFLAGS) \
|
$(COVERAGE_LDFLAGS) \
|
||||||
|
$(NO_INDIRECT_LDFLAGS) \
|
||||||
$(NULL)
|
$(NULL)
|
||||||
|
|
||||||
libvirtd_LDADD = \
|
libvirtd_LDADD = \
|
||||||
|
32
m4/virt-linker-no-indirect.m4
Normal file
32
m4/virt-linker-no-indirect.m4
Normal file
@ -0,0 +1,32 @@
|
|||||||
|
dnl
|
||||||
|
dnl Check for --no-copy-dt-needed-entries
|
||||||
|
dnl
|
||||||
|
dnl Copyright (C) 2013 Guido Günther <agx@sigxcpu.org>
|
||||||
|
dnl
|
||||||
|
dnl This library is free software; you can redistribute it and/or
|
||||||
|
dnl modify it under the terms of the GNU Lesser General Public
|
||||||
|
dnl License as published by the Free Software Foundation; either
|
||||||
|
dnl version 2.1 of the License, or (at your option) any later version.
|
||||||
|
dnl
|
||||||
|
dnl This library is distributed in the hope that it will be useful,
|
||||||
|
dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
|
dnl Lesser General Public License for more details.
|
||||||
|
dnl
|
||||||
|
dnl You should have received a copy of the GNU Lesser General Public
|
||||||
|
dnl License along with this library. If not, see
|
||||||
|
dnl <http://www.gnu.org/licenses/>.
|
||||||
|
dnl
|
||||||
|
|
||||||
|
AC_DEFUN([LIBVIRT_LINKER_NO_INDIRECT],[
|
||||||
|
AC_MSG_CHECKING([for how to avoid indirect lib deps])
|
||||||
|
|
||||||
|
NO_INDIRECT_LDFLAGS=
|
||||||
|
case `$LD --help 2>&1` in
|
||||||
|
*"--no-copy-dt-needed-entries"*)
|
||||||
|
NO_INDIRECT_LDFLAGS="-Wl,--no-copy-dt-needed-entries" ;;
|
||||||
|
esac
|
||||||
|
AC_SUBST([NO_INDIRECT_LDFLAGS])
|
||||||
|
|
||||||
|
AC_MSG_RESULT([$NO_INDIRECT_LDFLAGS])
|
||||||
|
])
|
@ -35,6 +35,7 @@ AM_CFLAGS = $(LIBXML_CFLAGS) \
|
|||||||
AM_LDFLAGS = $(DRIVER_MODULE_LDFLAGS) \
|
AM_LDFLAGS = $(DRIVER_MODULE_LDFLAGS) \
|
||||||
$(COVERAGE_LDFLAGS) \
|
$(COVERAGE_LDFLAGS) \
|
||||||
$(RELRO_LDFLAGS) \
|
$(RELRO_LDFLAGS) \
|
||||||
|
$(NO_INDIRECT_LDFLAGS) \
|
||||||
$(NULL)
|
$(NULL)
|
||||||
|
|
||||||
EXTRA_DIST = $(conf_DATA) util/keymaps.csv
|
EXTRA_DIST = $(conf_DATA) util/keymaps.csv
|
||||||
|
@ -50,6 +50,7 @@ endif
|
|||||||
|
|
||||||
LDADDS = \
|
LDADDS = \
|
||||||
$(WARN_CFLAGS) \
|
$(WARN_CFLAGS) \
|
||||||
|
$(NO_INDIRECT_LDFLAGS) \
|
||||||
$(PROBES_O) \
|
$(PROBES_O) \
|
||||||
../src/libvirt.la \
|
../src/libvirt.la \
|
||||||
../gnulib/lib/libgnu.la
|
../gnulib/lib/libgnu.la
|
||||||
|
@ -24,6 +24,7 @@ INCLUDES = \
|
|||||||
|
|
||||||
AM_LDFLAGS = \
|
AM_LDFLAGS = \
|
||||||
$(RELRO_LDFLAGS) \
|
$(RELRO_LDFLAGS) \
|
||||||
|
$(NO_INDIRECT_LDFLAGS) \
|
||||||
$(NULL)
|
$(NULL)
|
||||||
|
|
||||||
POD2MAN = pod2man -c "Virtualization Support" -r "$(PACKAGE)-$(VERSION)"
|
POD2MAN = pod2man -c "Virtualization Support" -r "$(PACKAGE)-$(VERSION)"
|
||||||
|
Loading…
Reference in New Issue
Block a user