libmemcached: don't use -fPIE and -pie when linking statically

These compiler options shouldn't be used when linking statically, and in
particular FLAT binaries cannot use -fPIE and -pie code, so let's teach
libmemcached to not use such flags in those setups.

Fixes:

  http://autobuild.buildroot.org/results/8cb/8cbf57f9136cb42be31c88e0f1f32d3d2353e5ff/
  and many previous similar build failures

[Peter: rework/reword to do this based on BR2_STATIC_LIBS]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Reviewed-by: Romain Naour <romain.naour@openwide.fr>
Tested-by: Romain Naour <romain.naour@openwide.fr>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
This commit is contained in:
Thomas Petazzoni 2015-05-11 22:55:36 +02:00 committed by Peter Korsgaard
parent d1dfad6bce
commit b9fcc83fbe

View File

@ -18,4 +18,14 @@ LIBMEMCACHED_AUTORECONF = YES
LIBMEMCACHED_LICENSE = BSD-3c
LIBMEMCACHED_LICENSE_FILES = COPYING
# Help libmemcached to understand that -fPIE and -pie should not be
# used when linking statically.
ifeq ($(BR2_STATIC_LIBS),y)
LIBMEMCACHED_CONF_ENV += \
ax_cv_check_cflags__Werror__fPIE=no \
ax_cv_check_cflags__Werror__pie=no \
ax_cv_check_cxxflags__Werror__fPIE=no \
ax_cv_check_cxxflags__Werror__pie=no
endif
$(eval $(autotools-package))