macro_name SUN_STUDIO binary_name CC output_to_option "-o " add_include_dir_option -I add_lib_dir_option -L add_lib_option -l compile_flags "-c" debug_info_flags "-g" optimization_flags "-xO2" shared_flags "-KPIC" warning_flags "+w -erroff=truncwarn,wnoretvalue" lang_flags "-std=c++11 +p -features=extensions -D__FUNCTION__=__func__" ar_command "CC -xar -o" makefile_style gmake default -> "$(CXX) -G -h$(SONAME_ABI)" i386 -> "-xtarget=486" i486 -> "-xtarget=486" i586 -> "-xtarget=pentium" k6 -> "-xtarget=pentium" i686 -> "-xtarget=pentium_pro" pentium3 -> "-xtarget=pentium3" pentium4 -> "-xtarget=pentium4" core2 -> "-xtarget=core2" opteron -> "-xtarget=opteron" nehalem -> "-xtarget=nehalem" sparc32-v9 -> "-xchip=ultra -xarch=v8" ultrasparc3 -> "-xchip=ultra3" niagra1 -> "-xchip=ultraT1" niagra2 -> "-xchip=ultraT2" sparc32 -> "-xchip=ultra -xarch=SUBMODEL|sparc32-" sparc64 -> "-xchip=generic" # Needed on some Linux distros linux -> "-library=stlport4" sparc64 -> "-xarch=v9" x86_64 -> "-m64" # Botan needs C++11, and that requires Sun Studio 12.4 or above. # Sun Studio 12.4 supports upto -xarch=avx2, but the processor must support it # AESNI requires -xarch=aes, and RDRAND requires -xarch=avx_i. # https://docs.oracle.com/cd/E37069_01/html/E37074/bjapp.html#OSSCGbkazd sse2 -> "-xarch=sse2" ssse3 -> "-xarch=ssse3" sse4.1 -> "-xarch=sse4_1" sse4.2 -> "-xarch=sse4_2" aesni -> "-xarch=aes" avx -> "-xarch=avx" rdrand -> "-xarch=avx_i" avx2 -> "-xarch=avx2"