GCC 6 added the --enable-defaut-pie flag, which would provide better security with ASLR enabled.
--enable-defaut-pie is enabled by default in many linux distros such as Alpine, Arch, Debian, Fedora, Gentoo, OpenSUSE, Ubuntu...
Add a cmake option CLANG_ENABLE_DEFAULT_PIE to support the same functionality for clang.
A pre-processor macro is placed at clang/Driver/ToolChain.h to conditionally make isPIEDefault() a non-virtual function. By doing so, future subclasses of clang::driver::ToolChain will not accidentally override isPIEDefault() while not taking into account of CLANG_ENABLE_DEFAULT_PIE.