I tried with IBM's XLC 13.1.2 and these options were ignored:
-Wall -Wpedantic -Wformat=2 -Wconversion -Wno-long-long -Wno-depreciated-declarations
I compiled it as follows:
cd ~/SRC; rm -rf stunnel-5.27; gzip -dc stunnel-5.27b3.tar.gz | tar xvf -; cd stunnel-5.27
export CFLAGS="-qstackprotect=size=0"
./configure --enable-fips --disable-ipv6 --with-threads=pthread --with-ssl=/usr
make
I didn't have to use "gxlc" (IBM's "gcc clone"), and other than the warnings for the unrecognized parameters above, it seems to work. I added the extra CFLAGS parameter to ensure stack smashing protection is enabled (disabled by default on XLC).
I can see how it would be nearly impossible to maintain compatibility with compilers from different architectures and different versions with different arguments. Thanks for the patch!
Regards,
-Rob