summaryrefslogtreecommitdiff
path: root/configure
diff options
context:
space:
mode:
Diffstat (limited to 'configure')
-rwxr-xr-xconfigure15
1 files changed, 15 insertions, 0 deletions
diff --git a/configure b/configure
index b1c279f..65166e1 100755
--- a/configure
+++ b/configure
@@ -295,6 +295,16 @@ if [ "x$target" != "x$(cat $sysdeps/target)" ] ; then
exit 1
fi
+defaultpie=false
+echo "Checking whether we're building PIE..."
+if $CC_AUTO $CPPFLAGS_AUTO $CPPFLAGS $CPPFLAGS_POST $CFLAGS_AUTO $CFLAGS $CFLAGS_POST -dM -E - < /dev/null | grep -qF __PIE__ ; then
+ defaultpie=true
+ CFLAGS_AUTO="$CFLAGS_AUTO -fPIC"
+ echo " ... yes"
+else
+ echo " ... no"
+fi
+
spawn_lib=$(cat $sysdeps/spawn.lib)
socket_lib=$(cat $sysdeps/socket.lib)
sysclock_lib=$(cat $sysdeps/sysclock.lib)
@@ -407,6 +417,11 @@ if $shared ; then
else
echo "DO_SHARED :="
fi
+if $defaultpie ; then
+ echo "DEFAULT_PIE := 1"
+else
+ echo "DEFAULT_PIE :="
+fi
exec 1>&3 3>&-
echo " ... done."