diff options
Diffstat (limited to 'source3/configure.in')
-rw-r--r-- | source3/configure.in | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/source3/configure.in b/source3/configure.in index 3f42d9ffed4..8ac3d207056 100644 --- a/source3/configure.in +++ b/source3/configure.in @@ -210,6 +210,9 @@ AC_SUBST(SHLD) AC_SUBST(HOST_OS) AC_SUBST(PICFLAGS) AC_SUBST(PICSUFFIX) +AC_SUBST(libc_cv_fpie) +AC_SUBST(PIE_CFLAGS) +AC_SUBST(PIE_LDFLAGS) AC_SUBST(SHLIBEXT) AC_SUBST(INSTALLCLIENT) AC_SUBST(INSTALLCLIENTCMD_SH) @@ -231,6 +234,31 @@ AC_SUBST(EXTRA_BIN_PROGS) AC_SUBST(EXTRA_SBIN_PROGS) AC_SUBST(EXTRA_ALL_TARGETS) +# Set defaults +PIE_CFLAGS="" +PIE_LDFLAGS="" +AC_ARG_ENABLE(pie, [ --enable-pie Turn on pie support if available (default=yes)]) + +if test "x$enable_pie" != xno +then + AC_CACHE_CHECK(for -fPIE, libc_cv_fpie, [dnl + cat > conftest.c <<EOF +int foo; +main () { return 0;} +EOF + if AC_TRY_COMMAND([${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS -pie -fPIE -o conftest conftest.c 1>&AS_MESSAGE_LOG_FD]) + then + libc_cv_fpie=yes + PIE_CFLAGS="-fPIE" + PIE_LDFLAGS="-pie" + fi + rm -f conftest*]) +fi +if test "x$PIE_CFLAGS" = x +then + libc_cv_fpie=no +fi + AC_ARG_ENABLE(debug, [ --enable-debug Turn on compiler debugging information (default=no)], [if eval "test x$enable_debug = xyes"; then |