19898, "mppf", "Should we change the default CHPL_LIB_PIC setting?", "2022-05-27T20:42:13Z"
Today, the default setting for
none. However, I've noticed (when investigating problems with LLVM 14 on Ubuntu 22.04 and problems on Arch linux) that some systems default to position-independent code, even for executables. On those systems
clang from a system package will generate position-independent code by default, even if
-fPIC is not provided. As a result, on those systems, when Chapel is built with
CHPL_LIB_PIC=none, it will produced position-independent code (and, if it does not, there will be linker errors, which I think are due to the fact that the libraries linked are position independent and can't be compiled otherwise).
Given that, on some systems,
CHPL_LIB_PIC=none produces position independent code, should we change the name of the default setting
none? Or do something else to make it less confusing?