220 C_FLAG_REORDER=''
221 CXX_FLAG_REORDER=''
222 SHARED_LIBRARY_FLAGS="-qmkshrobj"
223 SET_EXECUTABLE_ORIGIN=""
224 SET_SHARED_LIBRARY_ORIGIN=''
225 SET_SHARED_LIBRARY_NAME=''
226 SET_SHARED_LIBRARY_MAPFILE=''
227 elif test "x$TOOLCHAIN_TYPE" = xmicrosoft; then
228 PICFLAG=""
229 C_FLAG_REORDER=''
230 CXX_FLAG_REORDER=''
231 SHARED_LIBRARY_FLAGS="-LD"
232 SET_EXECUTABLE_ORIGIN=''
233 SET_SHARED_LIBRARY_ORIGIN=''
234 SET_SHARED_LIBRARY_NAME=''
235 SET_SHARED_LIBRARY_MAPFILE=''
236 fi
237
238 AC_SUBST(C_FLAG_REORDER)
239 AC_SUBST(CXX_FLAG_REORDER)
240 AC_SUBST(SHARED_LIBRARY_FLAGS)
241 AC_SUBST(SET_EXECUTABLE_ORIGIN)
242 AC_SUBST(SET_SHARED_LIBRARY_ORIGIN)
243 AC_SUBST(SET_SHARED_LIBRARY_NAME)
244 AC_SUBST(SET_SHARED_LIBRARY_MAPFILE)
245
246 if test "x$OPENJDK_TARGET_OS" = xsolaris; then
247 CFLAGS_JDK="${CFLAGS_JDK} -D__solaris__"
248 CXXFLAGS_JDK="${CXXFLAGS_JDK} -D__solaris__"
249 CFLAGS_JDKLIB_EXTRA='-xstrconst'
250 fi
251 # The (cross) compiler is now configured, we can now test capabilities
252 # of the target platform.
253 ])
254
255 # Documentation on common flags used for solstudio in HIGHEST.
256 #
257 # WARNING: Use of OPTIMIZATION_LEVEL=HIGHEST in your Makefile needs to be
258 # done with care, there are some assumptions below that need to
259 # be understood about the use of pointers, and IEEE behavior.
260 #
888 AC_DEFUN_ONCE([FLAGS_SETUP_COMPILER_FLAGS_MISC],
889 [
890 # Some Zero and Shark settings.
891 # ZERO_ARCHFLAG tells the compiler which mode to build for
892 case "${OPENJDK_TARGET_CPU}" in
893 s390)
894 ZERO_ARCHFLAG="${COMPILER_TARGET_BITS_FLAG}31"
895 ;;
896 *)
897 ZERO_ARCHFLAG="${COMPILER_TARGET_BITS_FLAG}${OPENJDK_TARGET_CPU_BITS}"
898 esac
899 FLAGS_COMPILER_CHECK_ARGUMENTS([$ZERO_ARCHFLAG], [], [ZERO_ARCHFLAG=""])
900 AC_SUBST(ZERO_ARCHFLAG)
901
902 # Check that the compiler supports -mX (or -qX on AIX) flags
903 # Set COMPILER_SUPPORTS_TARGET_BITS_FLAG to 'true' if it does
904 FLAGS_COMPILER_CHECK_ARGUMENTS([${COMPILER_TARGET_BITS_FLAG}${OPENJDK_TARGET_CPU_BITS}],
905 [COMPILER_SUPPORTS_TARGET_BITS_FLAG=true],
906 [COMPILER_SUPPORTS_TARGET_BITS_FLAG=false])
907 AC_SUBST(COMPILER_SUPPORTS_TARGET_BITS_FLAG)
908
909 case "${TOOLCHAIN_TYPE}" in
910 microsoft)
911 DISABLE_WARNING_PREFIX="-wd"
912 CFLAGS_WARNINGS_ARE_ERRORS="-WX"
913 ;;
914 solstudio)
915 DISABLE_WARNING_PREFIX="-erroff="
916 CFLAGS_WARNINGS_ARE_ERRORS="-errtags -errwarn=%all"
917 ;;
918 gcc)
919 # Prior to gcc 4.4, a -Wno-X where X is unknown for that version of gcc will cause an error
920 FLAGS_COMPILER_CHECK_ARGUMENTS([-Wno-this-is-a-warning-that-do-not-exist],
921 [GCC_CAN_DISABLE_WARNINGS=true],
922 [GCC_CAN_DISABLE_WARNINGS=false]
923 )
924 if test "x$GCC_CAN_DISABLE_WARNINGS" = "xtrue"; then
925 DISABLE_WARNING_PREFIX="-Wno-"
926 else
927 DISABLE_WARNING_PREFIX=
|
220 C_FLAG_REORDER=''
221 CXX_FLAG_REORDER=''
222 SHARED_LIBRARY_FLAGS="-qmkshrobj"
223 SET_EXECUTABLE_ORIGIN=""
224 SET_SHARED_LIBRARY_ORIGIN=''
225 SET_SHARED_LIBRARY_NAME=''
226 SET_SHARED_LIBRARY_MAPFILE=''
227 elif test "x$TOOLCHAIN_TYPE" = xmicrosoft; then
228 PICFLAG=""
229 C_FLAG_REORDER=''
230 CXX_FLAG_REORDER=''
231 SHARED_LIBRARY_FLAGS="-LD"
232 SET_EXECUTABLE_ORIGIN=''
233 SET_SHARED_LIBRARY_ORIGIN=''
234 SET_SHARED_LIBRARY_NAME=''
235 SET_SHARED_LIBRARY_MAPFILE=''
236 fi
237
238 AC_SUBST(C_FLAG_REORDER)
239 AC_SUBST(CXX_FLAG_REORDER)
240 AC_SUBST(SET_EXECUTABLE_ORIGIN)
241 AC_SUBST(SET_SHARED_LIBRARY_ORIGIN)
242 AC_SUBST(SET_SHARED_LIBRARY_NAME)
243 AC_SUBST(SET_SHARED_LIBRARY_MAPFILE)
244
245 if test "x$OPENJDK_TARGET_OS" = xsolaris; then
246 CFLAGS_JDK="${CFLAGS_JDK} -D__solaris__"
247 CXXFLAGS_JDK="${CXXFLAGS_JDK} -D__solaris__"
248 CFLAGS_JDKLIB_EXTRA='-xstrconst'
249 fi
250 # The (cross) compiler is now configured, we can now test capabilities
251 # of the target platform.
252 ])
253
254 # Documentation on common flags used for solstudio in HIGHEST.
255 #
256 # WARNING: Use of OPTIMIZATION_LEVEL=HIGHEST in your Makefile needs to be
257 # done with care, there are some assumptions below that need to
258 # be understood about the use of pointers, and IEEE behavior.
259 #
887 AC_DEFUN_ONCE([FLAGS_SETUP_COMPILER_FLAGS_MISC],
888 [
889 # Some Zero and Shark settings.
890 # ZERO_ARCHFLAG tells the compiler which mode to build for
891 case "${OPENJDK_TARGET_CPU}" in
892 s390)
893 ZERO_ARCHFLAG="${COMPILER_TARGET_BITS_FLAG}31"
894 ;;
895 *)
896 ZERO_ARCHFLAG="${COMPILER_TARGET_BITS_FLAG}${OPENJDK_TARGET_CPU_BITS}"
897 esac
898 FLAGS_COMPILER_CHECK_ARGUMENTS([$ZERO_ARCHFLAG], [], [ZERO_ARCHFLAG=""])
899 AC_SUBST(ZERO_ARCHFLAG)
900
901 # Check that the compiler supports -mX (or -qX on AIX) flags
902 # Set COMPILER_SUPPORTS_TARGET_BITS_FLAG to 'true' if it does
903 FLAGS_COMPILER_CHECK_ARGUMENTS([${COMPILER_TARGET_BITS_FLAG}${OPENJDK_TARGET_CPU_BITS}],
904 [COMPILER_SUPPORTS_TARGET_BITS_FLAG=true],
905 [COMPILER_SUPPORTS_TARGET_BITS_FLAG=false])
906 AC_SUBST(COMPILER_SUPPORTS_TARGET_BITS_FLAG)
907
908 AC_ARG_ENABLE([warnings-as-errors], [AS_HELP_STRING([--disable-warnings-as-errors],
909 [do not consider native warnings to be an error @<:@enabled@:>@])])
910
911 AC_MSG_CHECKING([if native warnings are errors])
912 if test "x$enable_warnings_as_errors" = "xyes"; then
913 AC_MSG_RESULT([yes (explicitely set)])
914 WARNINGS_AS_ERRORS=true
915 elif test "x$enable_warnings_as_errors" = "xno"; then
916 AC_MSG_RESULT([no])
917 WARNINGS_AS_ERRORS=false
918 elif test "x$enable_warnings_as_errors" = "x"; then
919 AC_MSG_RESULT([yes (default)])
920 WARNINGS_AS_ERRORS=true
921 else
922 AC_MSG_ERROR([--enable-warnings-as-errors accepts no argument])
923 fi
924 AC_SUBST(WARNINGS_AS_ERRORS)
925
926 case "${TOOLCHAIN_TYPE}" in
927 microsoft)
928 DISABLE_WARNING_PREFIX="-wd"
929 CFLAGS_WARNINGS_ARE_ERRORS="-WX"
930 ;;
931 solstudio)
932 DISABLE_WARNING_PREFIX="-erroff="
933 CFLAGS_WARNINGS_ARE_ERRORS="-errtags -errwarn=%all"
934 ;;
935 gcc)
936 # Prior to gcc 4.4, a -Wno-X where X is unknown for that version of gcc will cause an error
937 FLAGS_COMPILER_CHECK_ARGUMENTS([-Wno-this-is-a-warning-that-do-not-exist],
938 [GCC_CAN_DISABLE_WARNINGS=true],
939 [GCC_CAN_DISABLE_WARNINGS=false]
940 )
941 if test "x$GCC_CAN_DISABLE_WARNINGS" = "xtrue"; then
942 DISABLE_WARNING_PREFIX="-Wno-"
943 else
944 DISABLE_WARNING_PREFIX=
|