common/autoconf/toolchain.m4

changeset 698
e404d321abc6
parent 672
2f43964043c2
child 699
e1a929afcfc4
equal deleted inserted replaced
697:b9bf111a9547 698:e404d321abc6
1028 AC_SUBST(LDFLAGS_JDKEXE) 1028 AC_SUBST(LDFLAGS_JDKEXE)
1029 AC_SUBST(LDFLAGS_JDKLIB_SUFFIX) 1029 AC_SUBST(LDFLAGS_JDKLIB_SUFFIX)
1030 AC_SUBST(LDFLAGS_JDKEXE_SUFFIX) 1030 AC_SUBST(LDFLAGS_JDKEXE_SUFFIX)
1031 AC_SUBST(LDFLAGS_CXX_JDK) 1031 AC_SUBST(LDFLAGS_CXX_JDK)
1032 ]) 1032 ])
1033
1034
1035 # TOOLCHAIN_COMPILER_CHECK_ARGUMENTS([ARGUMENT], [RUN-IF-TRUE],
1036 # [RUN-IF-FALSE])
1037 # ------------------------------------------------------------
1038 # Check that the c and c++ compilers support an argument
1039 AC_DEFUN([TOOLCHAIN_COMPILER_CHECK_ARGUMENTS],
1040 [
1041 AC_MSG_CHECKING([if compiler supports "$1"])
1042 supports=yes
1043
1044 saved_cflags="$CFLAGS"
1045 CFLAGS="$CFLAGS $1"
1046 AC_LANG_PUSH([C])
1047 AC_COMPILE_IFELSE([
1048 AC_LANG_SOURCE([[int i;]])
1049 ], [], [supports=no])
1050 AC_LANG_POP([C])
1051 CFLAGS="$saved_cflags"
1052
1053 saved_cxxflags="$CXXFLAGS"
1054 CXXFLAGS="$CXXFLAG $1"
1055 AC_LANG_PUSH([C++])
1056 AC_COMPILE_IFELSE([
1057 AC_LANG_SOURCE([[int i;]])
1058 ], [], [supports=no])
1059 AC_LANG_POP([C++])
1060 CXXFLAGS="$saved_cxxflags"
1061
1062 AC_MSG_RESULT([$supports])
1063 if test "x$supports" = "xyes" ; then
1064 m4_ifval([$2], [$2], [:])
1065 else
1066 m4_ifval([$3], [$3], [:])
1067 fi
1068 ])
1069
1070 AC_DEFUN_ONCE([TOOLCHAIN_SETUP_COMPILER_FLAGS_MISC],
1071 [
1072 # Some Zero and Shark settings.
1073 # ZERO_ARCHFLAG tells the compiler which mode to build for
1074 case "${OPENJDK_TARGET_CPU}" in
1075 s390)
1076 ZERO_ARCHFLAG="-m31"
1077 ;;
1078 *)
1079 ZERO_ARCHFLAG="-m${OPENJDK_TARGET_CPU_BITS}"
1080 esac
1081 TOOLCHAIN_COMPILER_CHECK_ARGUMENTS([$ZERO_ARCHFLAG], [], [ZERO_ARCHFLAG=""])
1082 AC_SUBST(ZERO_ARCHFLAG)
1083
1084 # Check that the compiler supports -mX flags
1085 # Set COMPILER_SUPPORTS_TARGET_BITS_FLAG to 'true' if it does
1086 TOOLCHAIN_COMPILER_CHECK_ARGUMENTS([-m${OPENJDK_TARGET_CPU_BITS}],
1087 [COMPILER_SUPPORTS_TARGET_BITS_FLAG=true],
1088 [COMPILER_SUPPORTS_TARGET_BITS_FLAG=false])
1089 AC_SUBST(COMPILER_SUPPORTS_TARGET_BITS_FLAG)
1090 ])

mercurial