868b2b66 (kx 2024-12-20 16:11:07 +0300 1)
868b2b66 (kx 2024-12-20 16:11:07 +0300 2) dnl ============================================================
868b2b66 (kx 2024-12-20 16:11:07 +0300 3) dnl We define the macro GLIBC_PROVIDES to do an AC_PROVIDE for
868b2b66 (kx 2024-12-20 16:11:07 +0300 4) dnl each macro which appears in configure.ac before the sysdep
868b2b66 (kx 2024-12-20 16:11:07 +0300 5) dnl configure scripts are run. Each sysdep configure.ac does
868b2b66 (kx 2024-12-20 16:11:07 +0300 6) dnl LIBMPU_PROVIDES first, to avoid any AC_REQUIREs or
868b2b66 (kx 2024-12-20 16:11:07 +0300 7) dnl AC_BEFOREs duplicating their code.
868b2b66 (kx 2024-12-20 16:11:07 +0300 8) dnl ============================================================
868b2b66 (kx 2024-12-20 16:11:07 +0300 9) define([LIBMPU_PROVIDES], [dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 10) AC_PROVIDE([AC_CONFIG_AUX_DIR_DEFAULT])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 11) AC_PROVIDE([AC_CONFIG_SUBDIRS])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 12) AC_PROVIDE([_AS_ECHO_N_PREPARE])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 13) AC_PROVIDE([_AS_ECHO_PREPARE])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 14) AC_PROVIDE([_AS_CR_PREPARE])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 15) AC_PROVIDE([_AS_TR_SH_PREPARE])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 16) AC_PROVIDE([_AS_VAR_ARITH_PREPARE])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 17) AC_PROVIDE([AC_PROG_INSTALL])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 18) AC_PROVIDE([AC_PROG_CC])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 19) AC_PROVIDE([AC_PROG_CPP])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 20) AC_PROVIDE([_AS_PATH_SEPARATOR_PREPARE])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 21) AC_PROVIDE([_AS_TEST_PREPARE])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 22) AC_PROVIDE([_AS_BASENAME_PREPARE])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 23) AC_PROVIDE([_AS_ME_PREPARE])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 24) AC_PROVIDE([_AS_LINENO_PREPARE])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 25) AC_PROVIDE([AS_SHELL_FN_as_fn_set_status])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 26) AC_PROVIDE([AS_SHELL_FN_as_fn_exit])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 27) AC_PROVIDE([AS_SHELL_FN_as_fn_arith])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 28) AC_PROVIDE([AS_SHELL_FN_ac_fn_c_try_compile])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 29) define([AS_MESSAGE_LOG_FD],5)dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 30) define([AS_MESSAGE_FD],6)dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 31) dnl Ripped out of AS_INIT, which does more cruft we do not want.
868b2b66 (kx 2024-12-20 16:11:07 +0300 32) m4_wrap([m4_divert_pop([BODY])[]])
868b2b66 (kx 2024-12-20 16:11:07 +0300 33) m4_divert_push([BODY])[]dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 34) dnl End of ripped out of AS_INIT.
868b2b66 (kx 2024-12-20 16:11:07 +0300 35) # This file is generated from configure.ac by Autoconf. DO NOT EDIT!
868b2b66 (kx 2024-12-20 16:11:07 +0300 36) define([_AC_LANG], [C])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 37) ])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 38)
868b2b66 (kx 2024-12-20 16:11:07 +0300 39) dnl ============================================================
868b2b66 (kx 2024-12-20 16:11:07 +0300 40) dnl Support for Configuration Headers
868b2b66 (kx 2024-12-20 16:11:07 +0300 41) dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 42) dnl configure.ac:
868b2b66 (kx 2024-12-20 16:11:07 +0300 43) dnl AC_LIBMPU_HEADLINE(<short-name>, <long-name>,
868b2b66 (kx 2024-12-20 16:11:07 +0300 44) dnl <vers-var>, <vers-file>,
868b2b66 (kx 2024-12-20 16:11:07 +0300 45) dnl <copyright>)
868b2b66 (kx 2024-12-20 16:11:07 +0300 46) dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 47) dnl NOTE:
868b2b66 (kx 2024-12-20 16:11:07 +0300 48) dnl ====
868b2b66 (kx 2024-12-20 16:11:07 +0300 49) dnl See the paragraph 8.3.3 of Autoconf Documentation at:
868b2b66 (kx 2024-12-20 16:11:07 +0300 50) dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 51) dnl https://www.gnu.org/software/autoconf/manual/autoconf.html#Diversion-support
868b2b66 (kx 2024-12-20 16:11:07 +0300 52) dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 53) dnl ============================================================
868b2b66 (kx 2024-12-20 16:11:07 +0300 54) m4_define([AC_LIBMPU_HEADLINE], [dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 55) m4_divert_push([M4SH-SANITIZE])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 56) {
868b2b66 (kx 2024-12-20 16:11:07 +0300 57) if test ".`echo dummy [$]@ | grep help`" = .; then
868b2b66 (kx 2024-12-20 16:11:07 +0300 58) ####### bootstrapping version-tool
868b2b66 (kx 2024-12-20 16:11:07 +0300 59) ac_prog=[$]0
868b2b66 (kx 2024-12-20 16:11:07 +0300 60) changequote(, )dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 61) ac_srcdir=`echo $ac_prog | sed -e 's%/[^/][^/]*$%%' -e 's%\([^/]\)/*$%\1%'`
868b2b66 (kx 2024-12-20 16:11:07 +0300 62) changequote([, ])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 63) test ".$ac_srcdir" = ".$ac_prog" && ac_srcdir=.
868b2b66 (kx 2024-12-20 16:11:07 +0300 64) ac_version_tool="${CONFIG_SHELL-/bin/sh} $ac_srcdir/version-tool"
868b2b66 (kx 2024-12-20 16:11:07 +0300 65)
868b2b66 (kx 2024-12-20 16:11:07 +0300 66) ####### нахождение escape последовательностей для
868b2b66 (kx 2024-12-20 16:11:07 +0300 67) ####### обозначения начала и конца выделяемого текста
868b2b66 (kx 2024-12-20 16:11:07 +0300 68) ####### Use a `Quadrigaph'. '@<:@' gives you [ and '@:>@' gives you ] :
868b2b66 (kx 2024-12-20 16:11:07 +0300 69) TB=`echo -n -e '\033@<:@1m'`
868b2b66 (kx 2024-12-20 16:11:07 +0300 70) TN=`echo -n -e '\033@<:@0m'`
868b2b66 (kx 2024-12-20 16:11:07 +0300 71)
868b2b66 (kx 2024-12-20 16:11:07 +0300 72) ####### чтение короткого номера версии продукта (например, "1.0.0")
868b2b66 (kx 2024-12-20 16:11:07 +0300 73) $3="`$ac_version_tool $ac_srcdir/$4`"
868b2b66 (kx 2024-12-20 16:11:07 +0300 74) AC_SUBST($3)
868b2b66 (kx 2024-12-20 16:11:07 +0300 75)
868b2b66 (kx 2024-12-20 16:11:07 +0300 76) ####### печать заголовка
868b2b66 (kx 2024-12-20 16:11:07 +0300 77) echo "Configuring:"
868b2b66 (kx 2024-12-20 16:11:07 +0300 78) echo ""
868b2b66 (kx 2024-12-20 16:11:07 +0300 79) echo "${TB}$1${TN} ($2), Version ${TB}${$3}${TN}"
868b2b66 (kx 2024-12-20 16:11:07 +0300 80) echo "$5"
868b2b66 (kx 2024-12-20 16:11:07 +0300 81) echo ""
868b2b66 (kx 2024-12-20 16:11:07 +0300 82)
868b2b66 (kx 2024-12-20 16:11:07 +0300 83) ####### чтение шестнадцатеричного номера версии продукта (например, 0x100200)
868b2b66 (kx 2024-12-20 16:11:07 +0300 84) # $3_HEX="`$ac_version_tool version -lc -dhex $ac_srcdir/$4`"
868b2b66 (kx 2024-12-20 16:11:07 +0300 85) # AC_SUBST($3_HEX)
868b2b66 (kx 2024-12-20 16:11:07 +0300 86) fi
868b2b66 (kx 2024-12-20 16:11:07 +0300 87) }
868b2b66 (kx 2024-12-20 16:11:07 +0300 88) m4_divert_pop([M4SH-SANITIZE])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 89) ])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 90)
868b2b66 (kx 2024-12-20 16:11:07 +0300 91)
868b2b66 (kx 2024-12-20 16:11:07 +0300 92) dnl ============================================================
868b2b66 (kx 2024-12-20 16:11:07 +0300 93) dnl Display Configuration Headers
868b2b66 (kx 2024-12-20 16:11:07 +0300 94) dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 95) dnl configure.ac:
868b2b66 (kx 2024-12-20 16:11:07 +0300 96) dnl AC_MSG_CFG_PART(<text>)
868b2b66 (kx 2024-12-20 16:11:07 +0300 97) dnl ============================================================
868b2b66 (kx 2024-12-20 16:11:07 +0300 98) AC_DEFUN([AC_MSG_CFG_PART],[dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 99) AC_MSG_RESULT()
868b2b66 (kx 2024-12-20 16:11:07 +0300 100) AC_MSG_RESULT([${TB}$1:${TN}])
868b2b66 (kx 2024-12-20 16:11:07 +0300 101) ])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 102)
868b2b66 (kx 2024-12-20 16:11:07 +0300 103)
868b2b66 (kx 2024-12-20 16:11:07 +0300 104) dnl ============================================================
868b2b66 (kx 2024-12-20 16:11:07 +0300 105) dnl Check for weak symbols too:
868b2b66 (kx 2024-12-20 16:11:07 +0300 106) dnl ============================================================
868b2b66 (kx 2024-12-20 16:11:07 +0300 107) AC_DEFUN([LIBMPU_ALIAS_ATTRIBUTE],
868b2b66 (kx 2024-12-20 16:11:07 +0300 108) [AC_CACHE_CHECK(for broken __attribute__((alias())),
868b2b66 (kx 2024-12-20 16:11:07 +0300 109) libmpu_cv_broken_alias_attribute,
868b2b66 (kx 2024-12-20 16:11:07 +0300 110) [cat > conftest.c <<EOF
868b2b66 (kx 2024-12-20 16:11:07 +0300 111) extern int foo (int x) __asm ("xyzzy");
868b2b66 (kx 2024-12-20 16:11:07 +0300 112) int bar (int x) { return x; }
868b2b66 (kx 2024-12-20 16:11:07 +0300 113) extern __typeof (bar) foo __attribute ((weak, alias ("bar")));
868b2b66 (kx 2024-12-20 16:11:07 +0300 114) extern int dfoo;
868b2b66 (kx 2024-12-20 16:11:07 +0300 115) extern __typeof (dfoo) dfoo __asm ("abccb");
868b2b66 (kx 2024-12-20 16:11:07 +0300 116) int dfoo = 1;
868b2b66 (kx 2024-12-20 16:11:07 +0300 117) EOF
868b2b66 (kx 2024-12-20 16:11:07 +0300 118) libmpu_cv_broken_alias_attribute=yes
868b2b66 (kx 2024-12-20 16:11:07 +0300 119) if AC_TRY_COMMAND(${CC-cc} -Werror -S conftest.c -o conftest.s 1>&AS_MESSAGE_LOG_FD); then
868b2b66 (kx 2024-12-20 16:11:07 +0300 120) if grep 'xyzzy' conftest.s >/dev/null &&
868b2b66 (kx 2024-12-20 16:11:07 +0300 121) grep 'abccb' conftest.s >/dev/null; then
868b2b66 (kx 2024-12-20 16:11:07 +0300 122) libmpu_cv_broken_alias_attribute=no
868b2b66 (kx 2024-12-20 16:11:07 +0300 123) fi
868b2b66 (kx 2024-12-20 16:11:07 +0300 124) fi
868b2b66 (kx 2024-12-20 16:11:07 +0300 125) rm -f conftest.c conftest.s
868b2b66 (kx 2024-12-20 16:11:07 +0300 126) ])
868b2b66 (kx 2024-12-20 16:11:07 +0300 127) if test $libmpu_cv_broken_alias_attribute = yes; then
868b2b66 (kx 2024-12-20 16:11:07 +0300 128) AC_MSG_ERROR([
868b2b66 (kx 2024-12-20 16:11:07 +0300 129) ******** ${TB}Working alias attribute support required.${TN}])
868b2b66 (kx 2024-12-20 16:11:07 +0300 130) else
868b2b66 (kx 2024-12-20 16:11:07 +0300 131) AC_DEFINE(HAVE_WEAK_SYMBOLS, 1, [Defined if supports weak symbols.])
868b2b66 (kx 2024-12-20 16:11:07 +0300 132) fi
868b2b66 (kx 2024-12-20 16:11:07 +0300 133) ])
868b2b66 (kx 2024-12-20 16:11:07 +0300 134)
868b2b66 (kx 2024-12-20 16:11:07 +0300 135)
868b2b66 (kx 2024-12-20 16:11:07 +0300 136) dnl ============================================================
868b2b66 (kx 2024-12-20 16:11:07 +0300 137) dnl Check for hidden visibility attribute:
868b2b66 (kx 2024-12-20 16:11:07 +0300 138) dnl ============================================================
868b2b66 (kx 2024-12-20 16:11:07 +0300 139) AC_DEFUN([LIBMPU_HIDDEN_VISIBILITY_ATTRIBUTE],
868b2b66 (kx 2024-12-20 16:11:07 +0300 140) [AC_CACHE_CHECK(for __attribute__((visibility("hidden"))),
868b2b66 (kx 2024-12-20 16:11:07 +0300 141) libmpu_cv_hidden_visibility_attribute,
868b2b66 (kx 2024-12-20 16:11:07 +0300 142) [cat > conftest.c <<EOF
868b2b66 (kx 2024-12-20 16:11:07 +0300 143) int __attribute__ ((visibility ("hidden"))) foo (void) { return 1; }
868b2b66 (kx 2024-12-20 16:11:07 +0300 144) EOF
868b2b66 (kx 2024-12-20 16:11:07 +0300 145) libmpu_cv_hidden_visibility_attribute=no
868b2b66 (kx 2024-12-20 16:11:07 +0300 146) if AC_TRY_COMMAND(${CC-cc} -Werror -S conftest.c -o conftest.s 1>&AS_MESSAGE_LOG_FD); then
868b2b66 (kx 2024-12-20 16:11:07 +0300 147) if grep '\.hidden.*foo' conftest.s >/dev/null; then
868b2b66 (kx 2024-12-20 16:11:07 +0300 148) libmpu_cv_hidden_visibility_attribute=yes
868b2b66 (kx 2024-12-20 16:11:07 +0300 149) fi
868b2b66 (kx 2024-12-20 16:11:07 +0300 150) fi
868b2b66 (kx 2024-12-20 16:11:07 +0300 151) rm -f conftest.c conftest.s
868b2b66 (kx 2024-12-20 16:11:07 +0300 152) ])
868b2b66 (kx 2024-12-20 16:11:07 +0300 153) if test $libmpu_cv_hidden_visibility_attribute = yes; then
868b2b66 (kx 2024-12-20 16:11:07 +0300 154) AC_DEFINE([HAVE_HIDDEN_VISIBILITY_ATTRIBUTE], [1],
868b2b66 (kx 2024-12-20 16:11:07 +0300 155) [Defined if __attribute__((visibility("hidden"))) supported.])
868b2b66 (kx 2024-12-20 16:11:07 +0300 156) fi
868b2b66 (kx 2024-12-20 16:11:07 +0300 157) ])
868b2b66 (kx 2024-12-20 16:11:07 +0300 158)
868b2b66 (kx 2024-12-20 16:11:07 +0300 159)
868b2b66 (kx 2024-12-20 16:11:07 +0300 160) dnl ============================================================
868b2b66 (kx 2024-12-20 16:11:07 +0300 161) dnl Check GNU Binutils
868b2b66 (kx 2024-12-20 16:11:07 +0300 162) dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 163) dnl configure.ac:
868b2b66 (kx 2024-12-20 16:11:07 +0300 164) dnl LIBMPU_PROG_BINUTILS
868b2b66 (kx 2024-12-20 16:11:07 +0300 165) dnl ============================================================
868b2b66 (kx 2024-12-20 16:11:07 +0300 166) AC_DEFUN([LIBMPU_PROG_FOO_GNU],
868b2b66 (kx 2024-12-20 16:11:07 +0300 167) [# Most GNU programs take a -v and spit out some text including
868b2b66 (kx 2024-12-20 16:11:07 +0300 168) # the word 'GNU'. Some try to read stdin, so give them /dev/null.
868b2b66 (kx 2024-12-20 16:11:07 +0300 169) if $1 -o conftest -v </dev/null 2>&1 | grep GNU > /dev/null 2>&1; then
868b2b66 (kx 2024-12-20 16:11:07 +0300 170) $2
868b2b66 (kx 2024-12-20 16:11:07 +0300 171) else
868b2b66 (kx 2024-12-20 16:11:07 +0300 172) $3
868b2b66 (kx 2024-12-20 16:11:07 +0300 173) fi
868b2b66 (kx 2024-12-20 16:11:07 +0300 174) rm -fr contest*])
868b2b66 (kx 2024-12-20 16:11:07 +0300 175)
868b2b66 (kx 2024-12-20 16:11:07 +0300 176) AC_DEFUN([LIBMPU_PROG_BINUTILS],
868b2b66 (kx 2024-12-20 16:11:07 +0300 177) [dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 178) AS=`$CC -print-prog-name=as`
868b2b66 (kx 2024-12-20 16:11:07 +0300 179) LD=`$CC -print-prog-name=ld`
868b2b66 (kx 2024-12-20 16:11:07 +0300 180) AR=`$CC -print-prog-name=ar`
868b2b66 (kx 2024-12-20 16:11:07 +0300 181) AC_SUBST(AR)
868b2b66 (kx 2024-12-20 16:11:07 +0300 182) AC_SUBST(AS)
868b2b66 (kx 2024-12-20 16:11:07 +0300 183) OBJDUMP=`$CC -print-prog-name=objdump`
868b2b66 (kx 2024-12-20 16:11:07 +0300 184) AC_SUBST(OBJDUMP)
868b2b66 (kx 2024-12-20 16:11:07 +0300 185) OBJCOPY=`$CC -print-prog-name=objcopy`
868b2b66 (kx 2024-12-20 16:11:07 +0300 186) AC_SUBST(OBJCOPY)
868b2b66 (kx 2024-12-20 16:11:07 +0300 187)
868b2b66 (kx 2024-12-20 16:11:07 +0300 188) # ranlib has to be treated a bit differently since it might not exist at all.
868b2b66 (kx 2024-12-20 16:11:07 +0300 189) RANLIB=`$CC -print-prog-name=ranlib`
868b2b66 (kx 2024-12-20 16:11:07 +0300 190) if test $RANLIB = ranlib; then
868b2b66 (kx 2024-12-20 16:11:07 +0300 191) # This extra check has to happen since gcc simply echos the parameter in
868b2b66 (kx 2024-12-20 16:11:07 +0300 192) # case it cannot find the value in its own directories.
868b2b66 (kx 2024-12-20 16:11:07 +0300 193) AC_CHECK_TOOL(RANLIB, ranlib, :)
868b2b66 (kx 2024-12-20 16:11:07 +0300 194) fi
868b2b66 (kx 2024-12-20 16:11:07 +0300 195) AC_SUBST(RANLIB)
868b2b66 (kx 2024-12-20 16:11:07 +0300 196)
868b2b66 (kx 2024-12-20 16:11:07 +0300 197) # readelf has to be treated a bit differently since it might not exist at all.
868b2b66 (kx 2024-12-20 16:11:07 +0300 198) READELF=`$CC -print-prog-name=readelf`
868b2b66 (kx 2024-12-20 16:11:07 +0300 199) if test $READELF = readelf; then
868b2b66 (kx 2024-12-20 16:11:07 +0300 200) # This extra check has to happen since gcc simply echos the parameter in
868b2b66 (kx 2024-12-20 16:11:07 +0300 201) # case it cannot find the value in its own directories.
868b2b66 (kx 2024-12-20 16:11:07 +0300 202) AC_CHECK_TOOL(READELF, readelf, :)
868b2b66 (kx 2024-12-20 16:11:07 +0300 203) fi
868b2b66 (kx 2024-12-20 16:11:07 +0300 204) AC_SUBST(READELF)
868b2b66 (kx 2024-12-20 16:11:07 +0300 205)
868b2b66 (kx 2024-12-20 16:11:07 +0300 206) # nm has to be treated a bit differently since it might not exist at all.
868b2b66 (kx 2024-12-20 16:11:07 +0300 207) NM=`$CC -print-prog-name=nm`
868b2b66 (kx 2024-12-20 16:11:07 +0300 208) if test $NM = nm; then
868b2b66 (kx 2024-12-20 16:11:07 +0300 209) # This extra check has to happen since gcc simply echos the parameter in
868b2b66 (kx 2024-12-20 16:11:07 +0300 210) # case it cannot find the value in its own directories.
868b2b66 (kx 2024-12-20 16:11:07 +0300 211) AC_CHECK_TOOL(NM, nm, :)
868b2b66 (kx 2024-12-20 16:11:07 +0300 212) fi
868b2b66 (kx 2024-12-20 16:11:07 +0300 213) AC_SUBST(NM)
868b2b66 (kx 2024-12-20 16:11:07 +0300 214)
868b2b66 (kx 2024-12-20 16:11:07 +0300 215) # strip has to be treated a bit differently since it might not exist at all.
868b2b66 (kx 2024-12-20 16:11:07 +0300 216) STRIP=`$CC -print-prog-name=strip`
868b2b66 (kx 2024-12-20 16:11:07 +0300 217) if test $STRIP = strip; then
868b2b66 (kx 2024-12-20 16:11:07 +0300 218) # This extra check has to happen since gcc simply echos the parameter in
868b2b66 (kx 2024-12-20 16:11:07 +0300 219) # case it cannot find the value in its own directories.
868b2b66 (kx 2024-12-20 16:11:07 +0300 220) AC_CHECK_TOOL(STRIP, strip, :)
868b2b66 (kx 2024-12-20 16:11:07 +0300 221) fi
868b2b66 (kx 2024-12-20 16:11:07 +0300 222) AC_SUBST(STRIP)
868b2b66 (kx 2024-12-20 16:11:07 +0300 223)
868b2b66 (kx 2024-12-20 16:11:07 +0300 224) # Determine whether we are using GNU binutils.
868b2b66 (kx 2024-12-20 16:11:07 +0300 225) AC_CACHE_CHECK(whether $AS is GNU as, libmpu_cv_prog_as_gnu,
868b2b66 (kx 2024-12-20 16:11:07 +0300 226) [LIBMPU_PROG_FOO_GNU($AS, libmpu_cv_prog_as_gnu=yes, libmpu_cv_prog_as_gnu=no)])
868b2b66 (kx 2024-12-20 16:11:07 +0300 227) rm -f a.out
868b2b66 (kx 2024-12-20 16:11:07 +0300 228) gnu_as=$libmpu_cv_prog_as_gnu
868b2b66 (kx 2024-12-20 16:11:07 +0300 229)
868b2b66 (kx 2024-12-20 16:11:07 +0300 230) AC_CACHE_CHECK(whether $LD is GNU ld, libmpu_cv_prog_ld_gnu,
868b2b66 (kx 2024-12-20 16:11:07 +0300 231) [LIBMPU_PROG_FOO_GNU($LD, libmpu_cv_prog_ld_gnu=yes, libmpu_cv_prog_ld_gnu=no)])
868b2b66 (kx 2024-12-20 16:11:07 +0300 232) gnu_ld=$libmpu_cv_prog_ld_gnu
868b2b66 (kx 2024-12-20 16:11:07 +0300 233) ])
868b2b66 (kx 2024-12-20 16:11:07 +0300 234)
868b2b66 (kx 2024-12-20 16:11:07 +0300 235)
868b2b66 (kx 2024-12-20 16:11:07 +0300 236) dnl ============================================================
868b2b66 (kx 2024-12-20 16:11:07 +0300 237) dnl Test for build_cc:
868b2b66 (kx 2024-12-20 16:11:07 +0300 238) dnl =================
868b2b66 (kx 2024-12-20 16:11:07 +0300 239) dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 240) dnl configure.ac:
868b2b66 (kx 2024-12-20 16:11:07 +0300 241) dnl if test $host != $build; then
868b2b66 (kx 2024-12-20 16:11:07 +0300 242) dnl AC_PROG_BUILD_CC
868b2b66 (kx 2024-12-20 16:11:07 +0300 243) dnl fi
868b2b66 (kx 2024-12-20 16:11:07 +0300 244) dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 245) dnl ============================================================
868b2b66 (kx 2024-12-20 16:11:07 +0300 246) AC_DEFUN([AC_PROG_BUILD_CC],
868b2b66 (kx 2024-12-20 16:11:07 +0300 247) [ac_test_BUILD_CFLAGS=${BUILD_CFLAGS+set}
868b2b66 (kx 2024-12-20 16:11:07 +0300 248) ac_save_BUILD_CFLAGS=$BUILD_CFLAGS
868b2b66 (kx 2024-12-20 16:11:07 +0300 249) AC_CHECK_PROGS(BUILD_CC, gcc cc)
868b2b66 (kx 2024-12-20 16:11:07 +0300 250) AC_MSG_CHECKING(whether $BUILD_CC works on build machine)
868b2b66 (kx 2024-12-20 16:11:07 +0300 251) AC_CACHE_VAL(ac_cv_prog_build_cc,
868b2b66 (kx 2024-12-20 16:11:07 +0300 252) [rm -f conftest
868b2b66 (kx 2024-12-20 16:11:07 +0300 253) cat > conftest.c <<EOF
868b2b66 (kx 2024-12-20 16:11:07 +0300 254)
868b2b66 (kx 2024-12-20 16:11:07 +0300 255) int main()
868b2b66 (kx 2024-12-20 16:11:07 +0300 256) {
868b2b66 (kx 2024-12-20 16:11:07 +0300 257) char *s = "strip";
868b2b66 (kx 2024-12-20 16:11:07 +0300 258)
868b2b66 (kx 2024-12-20 16:11:07 +0300 259) return( 0 );
868b2b66 (kx 2024-12-20 16:11:07 +0300 260) }
868b2b66 (kx 2024-12-20 16:11:07 +0300 261)
868b2b66 (kx 2024-12-20 16:11:07 +0300 262) EOF
868b2b66 (kx 2024-12-20 16:11:07 +0300 263) $BUILD_CC -o conftest conftest.c
868b2b66 (kx 2024-12-20 16:11:07 +0300 264) if test -f conftest
868b2b66 (kx 2024-12-20 16:11:07 +0300 265) then
868b2b66 (kx 2024-12-20 16:11:07 +0300 266) rm -f conftest conftest.c
868b2b66 (kx 2024-12-20 16:11:07 +0300 267) ac_cv_prog_build_cc="$BUILD_CC"
868b2b66 (kx 2024-12-20 16:11:07 +0300 268) else
868b2b66 (kx 2024-12-20 16:11:07 +0300 269) rm -f conftest conftest.c
868b2b66 (kx 2024-12-20 16:11:07 +0300 270) ac_cv_prog_build_cc=
868b2b66 (kx 2024-12-20 16:11:07 +0300 271) fi])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 272)
868b2b66 (kx 2024-12-20 16:11:07 +0300 273) if test "$ac_test_BUILD_CFLAGS" = set; then
868b2b66 (kx 2024-12-20 16:11:07 +0300 274) BUILD_CFLAGS=$ac_save_BUILD_CFLAGS
868b2b66 (kx 2024-12-20 16:11:07 +0300 275) fi
868b2b66 (kx 2024-12-20 16:11:07 +0300 276)
868b2b66 (kx 2024-12-20 16:11:07 +0300 277) BUILD_CC="$ac_cv_prog_build_cc"
868b2b66 (kx 2024-12-20 16:11:07 +0300 278) if test "$ac_cv_prog_build_cc" = "$BUILD_CC"; then
868b2b66 (kx 2024-12-20 16:11:07 +0300 279) AC_MSG_RESULT(yes)
868b2b66 (kx 2024-12-20 16:11:07 +0300 280) else
868b2b66 (kx 2024-12-20 16:11:07 +0300 281) AC_MSG_RESULT(no)
868b2b66 (kx 2024-12-20 16:11:07 +0300 282) fi
868b2b66 (kx 2024-12-20 16:11:07 +0300 283) AC_SUBST(BUILD_CC)dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 284) ])
868b2b66 (kx 2024-12-20 16:11:07 +0300 285)
868b2b66 (kx 2024-12-20 16:11:07 +0300 286)
868b2b66 (kx 2024-12-20 16:11:07 +0300 287) dnl ============================================================
868b2b66 (kx 2024-12-20 16:11:07 +0300 288) dnl Test for build_host `strip -s':
868b2b66 (kx 2024-12-20 16:11:07 +0300 289) dnl ==============================
868b2b66 (kx 2024-12-20 16:11:07 +0300 290) dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 291) dnl configure.ac:
868b2b66 (kx 2024-12-20 16:11:07 +0300 292) dnl if test $host != $build; then
868b2b66 (kx 2024-12-20 16:11:07 +0300 293) dnl AC_PATH_PROG_BUILD_STRIP_S
868b2b66 (kx 2024-12-20 16:11:07 +0300 294) dnl fi
868b2b66 (kx 2024-12-20 16:11:07 +0300 295) dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 296) dnl ============================================================
868b2b66 (kx 2024-12-20 16:11:07 +0300 297) AC_DEFUN([AC_PATH_PROG_BUILD_STRIP_S],
868b2b66 (kx 2024-12-20 16:11:07 +0300 298) [AC_REQUIRE([AC_PROG_BUILD_CC])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 299) AC_PATH_PROG(BUILD_STRIP, strip, no, /usr/local/bin:/usr/bin:/bin:$PATH)
868b2b66 (kx 2024-12-20 16:11:07 +0300 300) AC_MSG_CHECKING(whether strip -s works on build machine)
868b2b66 (kx 2024-12-20 16:11:07 +0300 301) AC_CACHE_VAL(ac_cv_path_prog_STRIP_S,
868b2b66 (kx 2024-12-20 16:11:07 +0300 302) [rm -f conftest
868b2b66 (kx 2024-12-20 16:11:07 +0300 303) cat > conftest.c <<EOF
868b2b66 (kx 2024-12-20 16:11:07 +0300 304)
868b2b66 (kx 2024-12-20 16:11:07 +0300 305) int main()
868b2b66 (kx 2024-12-20 16:11:07 +0300 306) {
868b2b66 (kx 2024-12-20 16:11:07 +0300 307) char *s = "strip";
868b2b66 (kx 2024-12-20 16:11:07 +0300 308)
868b2b66 (kx 2024-12-20 16:11:07 +0300 309) return( 0 );
868b2b66 (kx 2024-12-20 16:11:07 +0300 310) }
868b2b66 (kx 2024-12-20 16:11:07 +0300 311)
868b2b66 (kx 2024-12-20 16:11:07 +0300 312) EOF
868b2b66 (kx 2024-12-20 16:11:07 +0300 313) $BUILD_CC -o conftest conftest.c
868b2b66 (kx 2024-12-20 16:11:07 +0300 314) if $BUILD_STRIP -s conftest 2>/dev/null
868b2b66 (kx 2024-12-20 16:11:07 +0300 315) then
868b2b66 (kx 2024-12-20 16:11:07 +0300 316) rm -f conftest conftest.c
868b2b66 (kx 2024-12-20 16:11:07 +0300 317) ac_cv_path_prog_STRIP_S="$BUILD_STRIP -s"
868b2b66 (kx 2024-12-20 16:11:07 +0300 318) else
868b2b66 (kx 2024-12-20 16:11:07 +0300 319) rm -f conftest conftest.c
868b2b66 (kx 2024-12-20 16:11:07 +0300 320) ac_cv_path_prog_STRIP_S="$BUILD_STRIP"
868b2b66 (kx 2024-12-20 16:11:07 +0300 321) fi])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 322) BUILD_STRIP_S="$ac_cv_path_prog_STRIP_S"
868b2b66 (kx 2024-12-20 16:11:07 +0300 323) if test "$ac_cv_path_prog_STRIP_S" = "$BUILD_STRIP -s"; then
868b2b66 (kx 2024-12-20 16:11:07 +0300 324) AC_MSG_RESULT(yes)
868b2b66 (kx 2024-12-20 16:11:07 +0300 325) else
868b2b66 (kx 2024-12-20 16:11:07 +0300 326) AC_MSG_RESULT(no)
868b2b66 (kx 2024-12-20 16:11:07 +0300 327) fi
868b2b66 (kx 2024-12-20 16:11:07 +0300 328) AC_SUBST(BUILD_STRIP)dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 329) AC_SUBST(BUILD_STRIP_S)dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 330) ])
868b2b66 (kx 2024-12-20 16:11:07 +0300 331)
868b2b66 (kx 2024-12-20 16:11:07 +0300 332)
868b2b66 (kx 2024-12-20 16:11:07 +0300 333) dnl ============================================================
868b2b66 (kx 2024-12-20 16:11:07 +0300 334) dnl Test for WIDTH of MACHINE REGISTER using GCC predefines:
868b2b66 (kx 2024-12-20 16:11:07 +0300 335) dnl ==================
868b2b66 (kx 2024-12-20 16:11:07 +0300 336) dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 337) dnl configure.ac:
868b2b66 (kx 2024-12-20 16:11:07 +0300 338) dnl AC_GCC_REGISTER_WIDTH
868b2b66 (kx 2024-12-20 16:11:07 +0300 339) dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 340) dnl ============================================================
868b2b66 (kx 2024-12-20 16:11:07 +0300 341) AC_DEFUN([AC_GCC_REGISTER_WIDTH],
868b2b66 (kx 2024-12-20 16:11:07 +0300 342) [dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 343) AC_MSG_CHECKING(for CPP predefined macro __INT_FAST32_WIDTH__ )
868b2b66 (kx 2024-12-20 16:11:07 +0300 344) AC_CACHE_VAL(ac_cv_int_fast32_width,
868b2b66 (kx 2024-12-20 16:11:07 +0300 345) [ac_cv_int_fast32_width=`$CC -dM -E - < /dev/null | grep __INT_FAST32_WIDTH__ | cut -f3- -d' ' | tr '\n' ' ' | tr -s ' ' | sed 's,^[ \t]*,,;s,[ \t]*$,,'`])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 346) if test "$ac_cv_int_fast32_width" != ""; then
868b2b66 (kx 2024-12-20 16:11:07 +0300 347) AC_MSG_RESULT($ac_cv_int_fast32_width)
868b2b66 (kx 2024-12-20 16:11:07 +0300 348) else
868b2b66 (kx 2024-12-20 16:11:07 +0300 349) AC_MSG_RESULT(not defined)
868b2b66 (kx 2024-12-20 16:11:07 +0300 350) fi
868b2b66 (kx 2024-12-20 16:11:07 +0300 351)
868b2b66 (kx 2024-12-20 16:11:07 +0300 352) AC_MSG_CHECKING(for CPP predefined macro __INT_FAST64_WIDTH__ )
868b2b66 (kx 2024-12-20 16:11:07 +0300 353) AC_CACHE_VAL(ac_cv_int_fast64_width,
868b2b66 (kx 2024-12-20 16:11:07 +0300 354) [ac_cv_int_fast64_width=`$CC -dM -E - < /dev/null | grep __INT_FAST64_WIDTH__ | cut -f3- -d' ' | tr '\n' ' ' | tr -s ' ' | sed 's,^[ \t]*,,;s,[ \t]*$,,'`])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 355) if test "$ac_cv_int_fast64_width" != ""; then
868b2b66 (kx 2024-12-20 16:11:07 +0300 356) AC_MSG_RESULT($ac_cv_int_fast64_width)
868b2b66 (kx 2024-12-20 16:11:07 +0300 357) else
868b2b66 (kx 2024-12-20 16:11:07 +0300 358) AC_MSG_RESULT(not defined)
868b2b66 (kx 2024-12-20 16:11:07 +0300 359) fi
868b2b66 (kx 2024-12-20 16:11:07 +0300 360)
868b2b66 (kx 2024-12-20 16:11:07 +0300 361) AC_MSG_CHECKING(for MACHINE REGISTER WIDTH )
868b2b66 (kx 2024-12-20 16:11:07 +0300 362) AC_CACHE_VAL(ac_cv_machine_register_width,
868b2b66 (kx 2024-12-20 16:11:07 +0300 363) [dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 364) if test "$ac_cv_int_fast64_width" != "" -a "$ac_cv_int_fast32_width" != "" ; then
868b2b66 (kx 2024-12-20 16:11:07 +0300 365) if test "$ac_cv_int_fast64_width" -gt "$ac_cv_int_fast32_width" ; then
868b2b66 (kx 2024-12-20 16:11:07 +0300 366) ac_cv_machine_register_width=$ac_cv_int_fast32_width
868b2b66 (kx 2024-12-20 16:11:07 +0300 367) else
868b2b66 (kx 2024-12-20 16:11:07 +0300 368) ac_cv_machine_register_width=$ac_cv_int_fast64_width
868b2b66 (kx 2024-12-20 16:11:07 +0300 369) fi
868b2b66 (kx 2024-12-20 16:11:07 +0300 370) elif test "$ac_cv_int_fast64_width" != "" ; then
868b2b66 (kx 2024-12-20 16:11:07 +0300 371) ac_cv_machine_register_width=$ac_cv_int_fast64_width
868b2b66 (kx 2024-12-20 16:11:07 +0300 372) elif test "$ac_cv_int_fast32_width" != "" ; then
868b2b66 (kx 2024-12-20 16:11:07 +0300 373) ac_cv_machine_register_width=$ac_cv_int_fast32_width
868b2b66 (kx 2024-12-20 16:11:07 +0300 374) else
868b2b66 (kx 2024-12-20 16:11:07 +0300 375) ac_cv_machine_register_width=32
868b2b66 (kx 2024-12-20 16:11:07 +0300 376) fi
868b2b66 (kx 2024-12-20 16:11:07 +0300 377) ])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 378) if test "$ac_cv_machine_register_width" != ""; then
868b2b66 (kx 2024-12-20 16:11:07 +0300 379) MACHINE_REGISTER_WIDTH=$ac_cv_machine_register_width
868b2b66 (kx 2024-12-20 16:11:07 +0300 380) AC_MSG_RESULT($ac_cv_machine_register_width)
868b2b66 (kx 2024-12-20 16:11:07 +0300 381) else
868b2b66 (kx 2024-12-20 16:11:07 +0300 382) MACHINE_REGISTER_WIDTH=
868b2b66 (kx 2024-12-20 16:11:07 +0300 383) AC_MSG_RESULT(not defined)
868b2b66 (kx 2024-12-20 16:11:07 +0300 384) fi
868b2b66 (kx 2024-12-20 16:11:07 +0300 385) AC_SUBST(MACHINE_REGISTER_WIDTH)dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 386) AC_DEFINE_UNQUOTED([MACHINE_REGISTER_WIDTH], [$ac_cv_machine_register_width], [The size of Machine Register in bits.])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 387) ])
868b2b66 (kx 2024-12-20 16:11:07 +0300 388)
868b2b66 (kx 2024-12-20 16:11:07 +0300 389)
868b2b66 (kx 2024-12-20 16:11:07 +0300 390) dnl ============================================================
868b2b66 (kx 2024-12-20 16:11:07 +0300 391) dnl Test for GCC Types:
868b2b66 (kx 2024-12-20 16:11:07 +0300 392) dnl ==================
868b2b66 (kx 2024-12-20 16:11:07 +0300 393) dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 394) dnl configure.ac:
868b2b66 (kx 2024-12-20 16:11:07 +0300 395) dnl AC_GCC_TYPES
868b2b66 (kx 2024-12-20 16:11:07 +0300 396) dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 397) dnl ============================================================
868b2b66 (kx 2024-12-20 16:11:07 +0300 398) AC_DEFUN([AC_GCC_TYPES],
868b2b66 (kx 2024-12-20 16:11:07 +0300 399) [dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 400) AC_MSG_CHECKING(for CPP predefined macro __CHAR16_TYPE__ )
868b2b66 (kx 2024-12-20 16:11:07 +0300 401) AC_CACHE_VAL(ac_cv_char16_type,
868b2b66 (kx 2024-12-20 16:11:07 +0300 402) [ac_cv_char16_type=`$CC -dM -E - < /dev/null | grep __CHAR16_TYPE__ | cut -f3- -d' ' | tr '\n' ' ' | tr -s ' ' | sed 's,^[ \t]*,,;s,[ \t]*$,,'`])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 403) if test "$ac_cv_char16_type" != ""; then
868b2b66 (kx 2024-12-20 16:11:07 +0300 404) GCC_CHAR16_TYPE=$ac_cv_char16_type
868b2b66 (kx 2024-12-20 16:11:07 +0300 405) AC_MSG_RESULT($ac_cv_char16_type)
868b2b66 (kx 2024-12-20 16:11:07 +0300 406) else
868b2b66 (kx 2024-12-20 16:11:07 +0300 407) GCC_CHAR16_TYPE=
868b2b66 (kx 2024-12-20 16:11:07 +0300 408) AC_MSG_RESULT(not defined)
868b2b66 (kx 2024-12-20 16:11:07 +0300 409) fi
868b2b66 (kx 2024-12-20 16:11:07 +0300 410) AC_SUBST(GCC_CHAR16_TYPE)dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 411)
868b2b66 (kx 2024-12-20 16:11:07 +0300 412) AC_MSG_CHECKING(for CPP predefined macro __CHAR32_TYPE__ )
868b2b66 (kx 2024-12-20 16:11:07 +0300 413) AC_CACHE_VAL(ac_cv_char32_type,
868b2b66 (kx 2024-12-20 16:11:07 +0300 414) [ac_cv_char32_type=`$CC -dM -E - < /dev/null | grep __CHAR32_TYPE__ | cut -f3- -d' ' | tr '\n' ' ' | tr -s ' ' | sed 's,^[ \t]*,,;s,[ \t]*$,,'`])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 415) if test "$ac_cv_char32_type" != ""; then
868b2b66 (kx 2024-12-20 16:11:07 +0300 416) GCC_CHAR32_TYPE=$ac_cv_char32_type
868b2b66 (kx 2024-12-20 16:11:07 +0300 417) AC_MSG_RESULT($ac_cv_char32_type)
868b2b66 (kx 2024-12-20 16:11:07 +0300 418) else
868b2b66 (kx 2024-12-20 16:11:07 +0300 419) GCC_CHAR32_TYPE=
868b2b66 (kx 2024-12-20 16:11:07 +0300 420) AC_MSG_RESULT(not defined)
868b2b66 (kx 2024-12-20 16:11:07 +0300 421) fi
868b2b66 (kx 2024-12-20 16:11:07 +0300 422) AC_SUBST(GCC_CHAR32_TYPE)dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 423)
868b2b66 (kx 2024-12-20 16:11:07 +0300 424) AC_MSG_CHECKING(for CPP predefined macro __WCHAR_TYPE__ )
868b2b66 (kx 2024-12-20 16:11:07 +0300 425) AC_CACHE_VAL(ac_cv_wchar_type,
868b2b66 (kx 2024-12-20 16:11:07 +0300 426) [ac_cv_wchar_type=`$CC -dM -E - < /dev/null | grep __WCHAR_TYPE__ | cut -f3- -d' ' | tr '\n' ' ' | tr -s ' ' | sed 's,^[ \t]*,,;s,[ \t]*$,,'`])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 427) if test "$ac_cv_wchar_type" != ""; then
868b2b66 (kx 2024-12-20 16:11:07 +0300 428) GCC_WCHAR_TYPE=$ac_cv_wchar_type
868b2b66 (kx 2024-12-20 16:11:07 +0300 429) AC_MSG_RESULT($ac_cv_wchar_type)
868b2b66 (kx 2024-12-20 16:11:07 +0300 430) else
868b2b66 (kx 2024-12-20 16:11:07 +0300 431) GCC_WCHAR_TYPE=
868b2b66 (kx 2024-12-20 16:11:07 +0300 432) AC_MSG_RESULT(not defined)
868b2b66 (kx 2024-12-20 16:11:07 +0300 433) fi
868b2b66 (kx 2024-12-20 16:11:07 +0300 434) AC_SUBST(GCC_WCHAR_TYPE)dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 435)
868b2b66 (kx 2024-12-20 16:11:07 +0300 436) AC_MSG_CHECKING(for CPP predefined macro __INT8_TYPE__ )
868b2b66 (kx 2024-12-20 16:11:07 +0300 437) AC_CACHE_VAL(ac_cv_int8_type,
868b2b66 (kx 2024-12-20 16:11:07 +0300 438) [ac_cv_int8_type=`$CC -dM -E - < /dev/null | grep __INT8_TYPE__ | cut -f3- -d' ' | tr '\n' ' ' | tr -s ' ' | sed 's,^[ \t]*,,;s,[ \t]*$,,'`])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 439) if test "$ac_cv_int8_type" != ""; then
868b2b66 (kx 2024-12-20 16:11:07 +0300 440) GCC_INT8_TYPE=$ac_cv_int8_type
868b2b66 (kx 2024-12-20 16:11:07 +0300 441) AC_MSG_RESULT($ac_cv_int8_type)
868b2b66 (kx 2024-12-20 16:11:07 +0300 442) else
868b2b66 (kx 2024-12-20 16:11:07 +0300 443) GCC_INT8_TYPE=
868b2b66 (kx 2024-12-20 16:11:07 +0300 444) AC_MSG_RESULT(not defined)
868b2b66 (kx 2024-12-20 16:11:07 +0300 445) fi
868b2b66 (kx 2024-12-20 16:11:07 +0300 446) AC_SUBST(GCC_INT8_TYPE)dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 447)
868b2b66 (kx 2024-12-20 16:11:07 +0300 448) AC_MSG_CHECKING(for CPP predefined macro __UINT8_TYPE__ )
868b2b66 (kx 2024-12-20 16:11:07 +0300 449) AC_CACHE_VAL(ac_cv_uint8_type,
868b2b66 (kx 2024-12-20 16:11:07 +0300 450) [ac_cv_uint8_type=`$CC -dM -E - < /dev/null | grep __UINT8_TYPE__ | cut -f3- -d' ' | tr '\n' ' ' | tr -s ' ' | sed 's,^[ \t]*,,;s,[ \t]*$,,'`])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 451) if test "$ac_cv_uint8_type" != ""; then
868b2b66 (kx 2024-12-20 16:11:07 +0300 452) GCC_UINT8_TYPE=$ac_cv_uint8_type
868b2b66 (kx 2024-12-20 16:11:07 +0300 453) AC_MSG_RESULT($ac_cv_uint8_type)
868b2b66 (kx 2024-12-20 16:11:07 +0300 454) else
868b2b66 (kx 2024-12-20 16:11:07 +0300 455) GCC_UINT8_TYPE=
868b2b66 (kx 2024-12-20 16:11:07 +0300 456) AC_MSG_RESULT(not defined)
868b2b66 (kx 2024-12-20 16:11:07 +0300 457) fi
868b2b66 (kx 2024-12-20 16:11:07 +0300 458) AC_SUBST(GCC_UINT8_TYPE)dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 459)
868b2b66 (kx 2024-12-20 16:11:07 +0300 460) AC_MSG_CHECKING(for CPP predefined macro __INT16_TYPE__ )
868b2b66 (kx 2024-12-20 16:11:07 +0300 461) AC_CACHE_VAL(ac_cv_int16_type,
868b2b66 (kx 2024-12-20 16:11:07 +0300 462) [ac_cv_int16_type=`$CC -dM -E - < /dev/null | grep __INT16_TYPE__ | cut -f3- -d' ' | tr '\n' ' ' | tr -s ' ' | sed 's,^[ \t]*,,;s,[ \t]*$,,'`])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 463) if test "$ac_cv_int16_type" != ""; then
868b2b66 (kx 2024-12-20 16:11:07 +0300 464) GCC_INT16_TYPE=$ac_cv_int16_type
868b2b66 (kx 2024-12-20 16:11:07 +0300 465) AC_MSG_RESULT($ac_cv_int16_type)
868b2b66 (kx 2024-12-20 16:11:07 +0300 466) else
868b2b66 (kx 2024-12-20 16:11:07 +0300 467) GCC_INT16_TYPE=
868b2b66 (kx 2024-12-20 16:11:07 +0300 468) AC_MSG_RESULT(not defined)
868b2b66 (kx 2024-12-20 16:11:07 +0300 469) fi
868b2b66 (kx 2024-12-20 16:11:07 +0300 470) AC_SUBST(GCC_INT16_TYPE)dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 471)
868b2b66 (kx 2024-12-20 16:11:07 +0300 472) AC_MSG_CHECKING(for CPP predefined macro __UINT16_TYPE__ )
868b2b66 (kx 2024-12-20 16:11:07 +0300 473) AC_CACHE_VAL(ac_cv_uint16_type,
868b2b66 (kx 2024-12-20 16:11:07 +0300 474) [ac_cv_uint16_type=`$CC -dM -E - < /dev/null | grep __UINT16_TYPE__ | cut -f3- -d' ' | tr '\n' ' ' | tr -s ' ' | sed 's,^[ \t]*,,;s,[ \t]*$,,'`])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 475) if test "$ac_cv_uint16_type" != ""; then
868b2b66 (kx 2024-12-20 16:11:07 +0300 476) GCC_UINT16_TYPE=$ac_cv_uint16_type
868b2b66 (kx 2024-12-20 16:11:07 +0300 477) AC_MSG_RESULT($ac_cv_uint16_type)
868b2b66 (kx 2024-12-20 16:11:07 +0300 478) else
868b2b66 (kx 2024-12-20 16:11:07 +0300 479) GCC_UINT16_TYPE=
868b2b66 (kx 2024-12-20 16:11:07 +0300 480) AC_MSG_RESULT(not defined)
868b2b66 (kx 2024-12-20 16:11:07 +0300 481) fi
868b2b66 (kx 2024-12-20 16:11:07 +0300 482) AC_SUBST(GCC_UINT16_TYPE)dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 483)
868b2b66 (kx 2024-12-20 16:11:07 +0300 484) AC_MSG_CHECKING(for CPP predefined macro __INT32_TYPE__ )
868b2b66 (kx 2024-12-20 16:11:07 +0300 485) AC_CACHE_VAL(ac_cv_int32_type,
868b2b66 (kx 2024-12-20 16:11:07 +0300 486) [ac_cv_int32_type=`$CC -dM -E - < /dev/null | grep __INT32_TYPE__ | cut -f3- -d' ' | tr '\n' ' ' | tr -s ' ' | sed 's,^[ \t]*,,;s,[ \t]*$,,'`])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 487) if test "$ac_cv_int32_type" != ""; then
868b2b66 (kx 2024-12-20 16:11:07 +0300 488) GCC_INT32_TYPE=$ac_cv_int32_type
868b2b66 (kx 2024-12-20 16:11:07 +0300 489) AC_MSG_RESULT($ac_cv_int32_type)
868b2b66 (kx 2024-12-20 16:11:07 +0300 490) else
868b2b66 (kx 2024-12-20 16:11:07 +0300 491) GCC_INT32_TYPE=
868b2b66 (kx 2024-12-20 16:11:07 +0300 492) AC_MSG_RESULT(not defined)
868b2b66 (kx 2024-12-20 16:11:07 +0300 493) fi
868b2b66 (kx 2024-12-20 16:11:07 +0300 494) AC_SUBST(GCC_INT32_TYPE)dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 495)
868b2b66 (kx 2024-12-20 16:11:07 +0300 496) AC_MSG_CHECKING(for CPP predefined macro __UINT32_TYPE__ )
868b2b66 (kx 2024-12-20 16:11:07 +0300 497) AC_CACHE_VAL(ac_cv_uint32_type,
868b2b66 (kx 2024-12-20 16:11:07 +0300 498) [ac_cv_uint32_type=`$CC -dM -E - < /dev/null | grep __UINT32_TYPE__ | cut -f3- -d' ' | tr '\n' ' ' | tr -s ' ' | sed 's,^[ \t]*,,;s,[ \t]*$,,'`])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 499) AC_CACHE_VAL(ac_cv_uint32_const_suffix,
868b2b66 (kx 2024-12-20 16:11:07 +0300 500) [ac_cv_uint32_const_suffix=`$CC -dM -E - < /dev/null | grep __UINT32_C | cut -f5- -d' ' | tr '\n' ' ' | tr -s ' ' | sed 's,^[ \t]*,,;s,[ \t]*$,,'`])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 501) if test "$ac_cv_uint32_type" != ""; then
868b2b66 (kx 2024-12-20 16:11:07 +0300 502) GCC_UINT32_TYPE=$ac_cv_uint32_type
868b2b66 (kx 2024-12-20 16:11:07 +0300 503) AC_MSG_RESULT($ac_cv_uint32_type)
868b2b66 (kx 2024-12-20 16:11:07 +0300 504) else
868b2b66 (kx 2024-12-20 16:11:07 +0300 505) GCC_UINT32_TYPE=
868b2b66 (kx 2024-12-20 16:11:07 +0300 506) AC_MSG_RESULT(not defined)
868b2b66 (kx 2024-12-20 16:11:07 +0300 507) fi
868b2b66 (kx 2024-12-20 16:11:07 +0300 508) AC_SUBST(GCC_UINT32_TYPE)dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 509)
868b2b66 (kx 2024-12-20 16:11:07 +0300 510) AC_MSG_CHECKING(for CPP predefined macro __INT64_TYPE__ )
868b2b66 (kx 2024-12-20 16:11:07 +0300 511) AC_CACHE_VAL(ac_cv_int64_type,
868b2b66 (kx 2024-12-20 16:11:07 +0300 512) [ac_cv_int64_type=`$CC -dM -E - < /dev/null | grep __INT64_TYPE__ | cut -f3- -d' ' | tr '\n' ' ' | tr -s ' ' | sed 's,^[ \t]*,,;s,[ \t]*$,,'`])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 513) if test "$ac_cv_int64_type" != ""; then
868b2b66 (kx 2024-12-20 16:11:07 +0300 514) GCC_INT64_TYPE=$ac_cv_int64_type
868b2b66 (kx 2024-12-20 16:11:07 +0300 515) AC_MSG_RESULT($ac_cv_int64_type)
868b2b66 (kx 2024-12-20 16:11:07 +0300 516) else
868b2b66 (kx 2024-12-20 16:11:07 +0300 517) GCC_INT64_TYPE=
868b2b66 (kx 2024-12-20 16:11:07 +0300 518) AC_MSG_RESULT(not defined)
868b2b66 (kx 2024-12-20 16:11:07 +0300 519) fi
868b2b66 (kx 2024-12-20 16:11:07 +0300 520) AC_SUBST(GCC_INT64_TYPE)dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 521)
868b2b66 (kx 2024-12-20 16:11:07 +0300 522) AC_MSG_CHECKING(for CPP predefined macro __UINT64_TYPE__ )
868b2b66 (kx 2024-12-20 16:11:07 +0300 523) AC_CACHE_VAL(ac_cv_uint64_type,
868b2b66 (kx 2024-12-20 16:11:07 +0300 524) [ac_cv_uint64_type=`$CC -dM -E - < /dev/null | grep __UINT64_TYPE__ | cut -f3- -d' ' | tr '\n' ' ' | tr -s ' ' | sed 's,^[ \t]*,,;s,[ \t]*$,,'`])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 525) AC_CACHE_VAL(ac_cv_uint64_const_suffix,
868b2b66 (kx 2024-12-20 16:11:07 +0300 526) [ac_cv_uint64_const_suffix=`$CC -dM -E - < /dev/null | grep __UINT64_C | cut -f5- -d' ' | tr '\n' ' ' | tr -s ' ' | sed 's,^[ \t]*,,;s,[ \t]*$,,'`])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 527) if test "$ac_cv_uint64_type" != ""; then
868b2b66 (kx 2024-12-20 16:11:07 +0300 528) GCC_UINT64_TYPE=$ac_cv_uint64_type
868b2b66 (kx 2024-12-20 16:11:07 +0300 529) AC_MSG_RESULT($ac_cv_uint64_type)
868b2b66 (kx 2024-12-20 16:11:07 +0300 530) else
868b2b66 (kx 2024-12-20 16:11:07 +0300 531) GCC_UINT64_TYPE=
868b2b66 (kx 2024-12-20 16:11:07 +0300 532) AC_MSG_RESULT(not defined)
868b2b66 (kx 2024-12-20 16:11:07 +0300 533) fi
868b2b66 (kx 2024-12-20 16:11:07 +0300 534) AC_SUBST(GCC_UINT64_TYPE)dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 535)
868b2b66 (kx 2024-12-20 16:11:07 +0300 536) AC_MSG_CHECKING(for CPP predefined macro __WINT_TYPE__ )
868b2b66 (kx 2024-12-20 16:11:07 +0300 537) AC_CACHE_VAL(ac_cv_wint_type,
868b2b66 (kx 2024-12-20 16:11:07 +0300 538) [ac_cv_wint_type=`$CC -dM -E - < /dev/null | grep __WINT_TYPE__ | cut -f3- -d' ' | tr '\n' ' ' | tr -s ' ' | sed 's,^[ \t]*,,;s,[ \t]*$,,'`])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 539) if test "$ac_cv_wint_type" != ""; then
868b2b66 (kx 2024-12-20 16:11:07 +0300 540) GCC_WINT_TYPE=$ac_cv_wint_type
868b2b66 (kx 2024-12-20 16:11:07 +0300 541) AC_MSG_RESULT($ac_cv_wint_type)
868b2b66 (kx 2024-12-20 16:11:07 +0300 542) else
868b2b66 (kx 2024-12-20 16:11:07 +0300 543) GCC_WINT_TYPE=
868b2b66 (kx 2024-12-20 16:11:07 +0300 544) AC_MSG_RESULT(not defined)
868b2b66 (kx 2024-12-20 16:11:07 +0300 545) fi
868b2b66 (kx 2024-12-20 16:11:07 +0300 546) AC_SUBST(GCC_WINT_TYPE)dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 547)
868b2b66 (kx 2024-12-20 16:11:07 +0300 548) AC_MSG_CHECKING(for CPP predefined macro __INTMAX_TYPE__ )
868b2b66 (kx 2024-12-20 16:11:07 +0300 549) AC_CACHE_VAL(ac_cv_intmax_type,
868b2b66 (kx 2024-12-20 16:11:07 +0300 550) [ac_cv_intmax_type=`$CC -dM -E - < /dev/null | grep __INTMAX_TYPE__ | cut -f3- -d' ' | tr '\n' ' ' | tr -s ' ' | sed 's,^[ \t]*,,;s,[ \t]*$,,'`])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 551) if test "$ac_cv_intmax_type" != ""; then
868b2b66 (kx 2024-12-20 16:11:07 +0300 552) GCC_INTMAX_TYPE=$ac_cv_intmax_type
868b2b66 (kx 2024-12-20 16:11:07 +0300 553) AC_MSG_RESULT($ac_cv_intmax_type)
868b2b66 (kx 2024-12-20 16:11:07 +0300 554) else
868b2b66 (kx 2024-12-20 16:11:07 +0300 555) GCC_INTMAX_TYPE=
868b2b66 (kx 2024-12-20 16:11:07 +0300 556) AC_MSG_RESULT(not defined)
868b2b66 (kx 2024-12-20 16:11:07 +0300 557) fi
868b2b66 (kx 2024-12-20 16:11:07 +0300 558) AC_SUBST(GCC_INTMAX_TYPE)dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 559)
868b2b66 (kx 2024-12-20 16:11:07 +0300 560) AC_MSG_CHECKING(for CPP predefined macro __UINTMAX_TYPE__ )
868b2b66 (kx 2024-12-20 16:11:07 +0300 561) AC_CACHE_VAL(ac_cv_uintmax_type,
868b2b66 (kx 2024-12-20 16:11:07 +0300 562) [ac_cv_uintmax_type=`$CC -dM -E - < /dev/null | grep __UINTMAX_TYPE__ | cut -f3- -d' ' | tr '\n' ' ' | tr -s ' ' | sed 's,^[ \t]*,,;s,[ \t]*$,,'`])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 563) if test "$ac_cv_uintmax_type" != ""; then
868b2b66 (kx 2024-12-20 16:11:07 +0300 564) GCC_UINTMAX_TYPE=$ac_cv_uintmax_type
868b2b66 (kx 2024-12-20 16:11:07 +0300 565) AC_MSG_RESULT($ac_cv_uintmax_type)
868b2b66 (kx 2024-12-20 16:11:07 +0300 566) else
868b2b66 (kx 2024-12-20 16:11:07 +0300 567) GCC_UINTMAX_TYPE=
868b2b66 (kx 2024-12-20 16:11:07 +0300 568) AC_MSG_RESULT(not defined)
868b2b66 (kx 2024-12-20 16:11:07 +0300 569) fi
868b2b66 (kx 2024-12-20 16:11:07 +0300 570) AC_SUBST(GCC_UINTMAX_TYPE)dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 571)
868b2b66 (kx 2024-12-20 16:11:07 +0300 572) AC_MSG_CHECKING(for CPP predefined macro __SIZE_TYPE__ )
868b2b66 (kx 2024-12-20 16:11:07 +0300 573) AC_CACHE_VAL(ac_cv_size_type,
868b2b66 (kx 2024-12-20 16:11:07 +0300 574) [ac_cv_size_type=`$CC -dM -E - < /dev/null | grep __SIZE_TYPE__ | cut -f3- -d' ' | tr '\n' ' ' | tr -s ' ' | sed 's,^[ \t]*,,;s,[ \t]*$,,'`])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 575) if test "$ac_cv_size_type" != ""; then
868b2b66 (kx 2024-12-20 16:11:07 +0300 576) GCC_SIZE_TYPE=$ac_cv_size_type
868b2b66 (kx 2024-12-20 16:11:07 +0300 577) AC_MSG_RESULT($ac_cv_size_type)
868b2b66 (kx 2024-12-20 16:11:07 +0300 578) else
868b2b66 (kx 2024-12-20 16:11:07 +0300 579) GCC_SIZE_TYPE=
868b2b66 (kx 2024-12-20 16:11:07 +0300 580) AC_MSG_RESULT(not defined)
868b2b66 (kx 2024-12-20 16:11:07 +0300 581) fi
868b2b66 (kx 2024-12-20 16:11:07 +0300 582) AC_SUBST(GCC_SIZE_TYPE)dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 583)
868b2b66 (kx 2024-12-20 16:11:07 +0300 584) AC_MSG_CHECKING(for CPP predefined macro __INTPTR_TYPE__ )
868b2b66 (kx 2024-12-20 16:11:07 +0300 585) AC_CACHE_VAL(ac_cv_intptr_type,
868b2b66 (kx 2024-12-20 16:11:07 +0300 586) [ac_cv_intptr_type=`$CC -dM -E - < /dev/null | grep __INTPTR_TYPE__ | cut -f3- -d' ' | tr '\n' ' ' | tr -s ' ' | sed 's,^[ \t]*,,;s,[ \t]*$,,'`])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 587) if test "$ac_cv_intptr_type" != ""; then
868b2b66 (kx 2024-12-20 16:11:07 +0300 588) GCC_INTPTR_TYPE=$ac_cv_intptr_type
868b2b66 (kx 2024-12-20 16:11:07 +0300 589) AC_MSG_RESULT($ac_cv_intptr_type)
868b2b66 (kx 2024-12-20 16:11:07 +0300 590) else
868b2b66 (kx 2024-12-20 16:11:07 +0300 591) GCC_INTPTR_TYPE=
868b2b66 (kx 2024-12-20 16:11:07 +0300 592) AC_MSG_RESULT(not defined)
868b2b66 (kx 2024-12-20 16:11:07 +0300 593) fi
868b2b66 (kx 2024-12-20 16:11:07 +0300 594) AC_SUBST(GCC_INTPTR_TYPE)dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 595)
868b2b66 (kx 2024-12-20 16:11:07 +0300 596) AC_MSG_CHECKING(for CPP predefined macro __UINTPTR_TYPE__ )
868b2b66 (kx 2024-12-20 16:11:07 +0300 597) AC_CACHE_VAL(ac_cv_uintptr_type,
868b2b66 (kx 2024-12-20 16:11:07 +0300 598) [ac_cv_uintptr_type=`$CC -dM -E - < /dev/null | grep __UINTPTR_TYPE__ | cut -f3- -d' ' | tr '\n' ' ' | tr -s ' ' | sed 's,^[ \t]*,,;s,[ \t]*$,,'`])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 599) if test "$ac_cv_uintptr_type" != ""; then
868b2b66 (kx 2024-12-20 16:11:07 +0300 600) GCC_UINTPTR_TYPE=$ac_cv_uintptr_type
868b2b66 (kx 2024-12-20 16:11:07 +0300 601) AC_MSG_RESULT($ac_cv_uintptr_type)
868b2b66 (kx 2024-12-20 16:11:07 +0300 602) else
868b2b66 (kx 2024-12-20 16:11:07 +0300 603) GCC_UINTPTR_TYPE=
868b2b66 (kx 2024-12-20 16:11:07 +0300 604) AC_MSG_RESULT(not defined)
868b2b66 (kx 2024-12-20 16:11:07 +0300 605) fi
868b2b66 (kx 2024-12-20 16:11:07 +0300 606) AC_SUBST(GCC_UINTPTR_TYPE)dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 607)
868b2b66 (kx 2024-12-20 16:11:07 +0300 608) AC_MSG_CHECKING(for CPP predefined macro __PTRDIFF_TYPE__ )
868b2b66 (kx 2024-12-20 16:11:07 +0300 609) AC_CACHE_VAL(ac_cv_ptrdiff_type,
868b2b66 (kx 2024-12-20 16:11:07 +0300 610) [ac_cv_ptrdiff_type=`$CC -dM -E - < /dev/null | grep __PTRDIFF_TYPE__ | cut -f3- -d' ' | tr '\n' ' ' | tr -s ' ' | sed 's,^[ \t]*,,;s,[ \t]*$,,'`])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 611) if test "$ac_cv_ptrdiff_type" != ""; then
868b2b66 (kx 2024-12-20 16:11:07 +0300 612) GCC_PTRDIFF_TYPE=$ac_cv_ptrdiff_type
868b2b66 (kx 2024-12-20 16:11:07 +0300 613) AC_MSG_RESULT($ac_cv_ptrdiff_type)
868b2b66 (kx 2024-12-20 16:11:07 +0300 614) else
868b2b66 (kx 2024-12-20 16:11:07 +0300 615) GCC_PTRDIFF_TYPE=
868b2b66 (kx 2024-12-20 16:11:07 +0300 616) AC_MSG_RESULT(not defined)
868b2b66 (kx 2024-12-20 16:11:07 +0300 617) fi
868b2b66 (kx 2024-12-20 16:11:07 +0300 618) AC_SUBST(GCC_PTRDIFF_TYPE)dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 619)
868b2b66 (kx 2024-12-20 16:11:07 +0300 620) AC_MSG_CHECKING(for CPP predefined macro __SIG_ATOMIC_TYPE__ )
868b2b66 (kx 2024-12-20 16:11:07 +0300 621) AC_CACHE_VAL(ac_cv_sig_atomic_type,
868b2b66 (kx 2024-12-20 16:11:07 +0300 622) [ac_cv_sig_atomic_type=`$CC -dM -E - < /dev/null | grep __SIG_ATOMIC_TYPE__ | cut -f3- -d' ' | tr '\n' ' ' | tr -s ' ' | sed 's,^[ \t]*,,;s,[ \t]*$,,'`])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 623) if test "$ac_cv_sig_atomic_type" != ""; then
868b2b66 (kx 2024-12-20 16:11:07 +0300 624) GCC_SIG_ATOMIC_TYPE=$ac_cv_sig_atomic_type
868b2b66 (kx 2024-12-20 16:11:07 +0300 625) AC_MSG_RESULT($ac_cv_sig_atomic_type)
868b2b66 (kx 2024-12-20 16:11:07 +0300 626) else
868b2b66 (kx 2024-12-20 16:11:07 +0300 627) GCC_SIG_ATOMIC_TYPE=
868b2b66 (kx 2024-12-20 16:11:07 +0300 628) AC_MSG_RESULT(not defined)
868b2b66 (kx 2024-12-20 16:11:07 +0300 629) fi
868b2b66 (kx 2024-12-20 16:11:07 +0300 630) AC_SUBST(GCC_SIG_ATOMIC_TYPE)dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 631) ])
868b2b66 (kx 2024-12-20 16:11:07 +0300 632)
868b2b66 (kx 2024-12-20 16:11:07 +0300 633)
868b2b66 (kx 2024-12-20 16:11:07 +0300 634) dnl ============================================================
868b2b66 (kx 2024-12-20 16:11:07 +0300 635) dnl Test for GCC Sizeof Types:
868b2b66 (kx 2024-12-20 16:11:07 +0300 636) dnl =========================
868b2b66 (kx 2024-12-20 16:11:07 +0300 637) dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 638) dnl configure.ac:
868b2b66 (kx 2024-12-20 16:11:07 +0300 639) dnl AC_GCC_SIZEOF_TYPES
868b2b66 (kx 2024-12-20 16:11:07 +0300 640) dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 641) dnl ============================================================
868b2b66 (kx 2024-12-20 16:11:07 +0300 642) AC_DEFUN([AC_GCC_SIZEOF_TYPES],
868b2b66 (kx 2024-12-20 16:11:07 +0300 643) [dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 644) AC_MSG_CHECKING(for CPP predefined macro __SIZEOF_WCHAR_T__ )
868b2b66 (kx 2024-12-20 16:11:07 +0300 645) AC_CACHE_VAL(ac_cv_sizeof_wchar_t,
868b2b66 (kx 2024-12-20 16:11:07 +0300 646) [ac_cv_sizeof_wchar_t=`$CC -dM -E - < /dev/null | grep __SIZEOF_WCHAR_T__ | cut -f3 -d' ' | tr '\n' ' ' | sed 's,^[ \t]*,,;s,[ \t]*$,,'`])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 647) if test "$ac_cv_sizeof_wchar_t" != ""; then
868b2b66 (kx 2024-12-20 16:11:07 +0300 648) GCC_SIZEOF_WCHAR_T=$ac_cv_sizeof_wchar_t
868b2b66 (kx 2024-12-20 16:11:07 +0300 649) AC_MSG_RESULT($ac_cv_sizeof_wchar_t)
868b2b66 (kx 2024-12-20 16:11:07 +0300 650) else
868b2b66 (kx 2024-12-20 16:11:07 +0300 651) GCC_SIZEOF_WCHAR_T=
868b2b66 (kx 2024-12-20 16:11:07 +0300 652) AC_MSG_RESULT(not defined)
868b2b66 (kx 2024-12-20 16:11:07 +0300 653) fi
868b2b66 (kx 2024-12-20 16:11:07 +0300 654) AC_SUBST(GCC_SIZEOF_WCHAR_T)dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 655)
868b2b66 (kx 2024-12-20 16:11:07 +0300 656) AC_MSG_CHECKING(for CPP predefined macro __SIZEOF_SHORT__ )
868b2b66 (kx 2024-12-20 16:11:07 +0300 657) AC_CACHE_VAL(ac_cv_sizeof_short,
868b2b66 (kx 2024-12-20 16:11:07 +0300 658) [ac_cv_sizeof_short=`$CC -dM -E - < /dev/null | grep __SIZEOF_SHORT__ | cut -f3 -d' ' | tr '\n' ' ' | sed 's,^[ \t]*,,;s,[ \t]*$,,'`])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 659) if test "$ac_cv_sizeof_short" != ""; then
868b2b66 (kx 2024-12-20 16:11:07 +0300 660) GCC_SIZEOF_SHORT=$ac_cv_sizeof_short
868b2b66 (kx 2024-12-20 16:11:07 +0300 661) AC_MSG_RESULT($ac_cv_sizeof_short)
868b2b66 (kx 2024-12-20 16:11:07 +0300 662) else
868b2b66 (kx 2024-12-20 16:11:07 +0300 663) GCC_SIZEOF_SHORT=
868b2b66 (kx 2024-12-20 16:11:07 +0300 664) AC_MSG_RESULT(not defined)
868b2b66 (kx 2024-12-20 16:11:07 +0300 665) fi
868b2b66 (kx 2024-12-20 16:11:07 +0300 666) AC_SUBST(GCC_SIZEOF_SHORT)dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 667)
868b2b66 (kx 2024-12-20 16:11:07 +0300 668) AC_MSG_CHECKING(for CPP predefined macro __SIZEOF_INT__ )
868b2b66 (kx 2024-12-20 16:11:07 +0300 669) AC_CACHE_VAL(ac_cv_sizeof_int,
868b2b66 (kx 2024-12-20 16:11:07 +0300 670) [ac_cv_sizeof_int=`$CC -dM -E - < /dev/null | grep __SIZEOF_INT__ | cut -f3 -d' ' | tr '\n' ' ' | sed 's,^[ \t]*,,;s,[ \t]*$,,'`])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 671) if test "$ac_cv_sizeof_int" != ""; then
868b2b66 (kx 2024-12-20 16:11:07 +0300 672) GCC_SIZEOF_INT=$ac_cv_sizeof_int
868b2b66 (kx 2024-12-20 16:11:07 +0300 673) AC_MSG_RESULT($ac_cv_sizeof_int)
868b2b66 (kx 2024-12-20 16:11:07 +0300 674) else
868b2b66 (kx 2024-12-20 16:11:07 +0300 675) GCC_SIZEOF_INT=
868b2b66 (kx 2024-12-20 16:11:07 +0300 676) AC_MSG_RESULT(not defined)
868b2b66 (kx 2024-12-20 16:11:07 +0300 677) fi
868b2b66 (kx 2024-12-20 16:11:07 +0300 678) AC_SUBST(GCC_SIZEOF_INT)dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 679)
868b2b66 (kx 2024-12-20 16:11:07 +0300 680) AC_MSG_CHECKING(for CPP predefined macro __SIZEOF_WINT_T__ )
868b2b66 (kx 2024-12-20 16:11:07 +0300 681) AC_CACHE_VAL(ac_cv_sizeof_wint_t,
868b2b66 (kx 2024-12-20 16:11:07 +0300 682) [ac_cv_sizeof_wint_t=`$CC -dM -E - < /dev/null | grep __SIZEOF_WINT_T__ | cut -f3 -d' ' | tr '\n' ' ' | sed 's,^[ \t]*,,;s,[ \t]*$,,'`])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 683) if test "$ac_cv_sizeof_wint_t" != ""; then
868b2b66 (kx 2024-12-20 16:11:07 +0300 684) GCC_SIZEOF_WINT_T=$ac_cv_sizeof_wint_t
868b2b66 (kx 2024-12-20 16:11:07 +0300 685) AC_MSG_RESULT($ac_cv_sizeof_wint_t)
868b2b66 (kx 2024-12-20 16:11:07 +0300 686) else
868b2b66 (kx 2024-12-20 16:11:07 +0300 687) GCC_SIZEOF_WINT_T=
868b2b66 (kx 2024-12-20 16:11:07 +0300 688) AC_MSG_RESULT(not defined)
868b2b66 (kx 2024-12-20 16:11:07 +0300 689) fi
868b2b66 (kx 2024-12-20 16:11:07 +0300 690) AC_SUBST(GCC_SIZEOF_WINT_T)dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 691)
868b2b66 (kx 2024-12-20 16:11:07 +0300 692) AC_MSG_CHECKING(for CPP predefined macro __SIZEOF_LONG__ )
868b2b66 (kx 2024-12-20 16:11:07 +0300 693) AC_CACHE_VAL(ac_cv_sizeof_long,
868b2b66 (kx 2024-12-20 16:11:07 +0300 694) [ac_cv_sizeof_long=`$CC -dM -E - < /dev/null | grep __SIZEOF_LONG__ | cut -f3 -d' ' | tr '\n' ' ' | sed 's,^[ \t]*,,;s,[ \t]*$,,'`])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 695) if test "$ac_cv_sizeof_long" != ""; then
868b2b66 (kx 2024-12-20 16:11:07 +0300 696) GCC_SIZEOF_LONG=$ac_cv_sizeof_long
868b2b66 (kx 2024-12-20 16:11:07 +0300 697) AC_MSG_RESULT($ac_cv_sizeof_long)
868b2b66 (kx 2024-12-20 16:11:07 +0300 698) else
868b2b66 (kx 2024-12-20 16:11:07 +0300 699) GCC_SIZEOF_LONG=
868b2b66 (kx 2024-12-20 16:11:07 +0300 700) AC_MSG_RESULT(not defined)
868b2b66 (kx 2024-12-20 16:11:07 +0300 701) fi
868b2b66 (kx 2024-12-20 16:11:07 +0300 702) AC_SUBST(GCC_SIZEOF_LONG)dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 703)
868b2b66 (kx 2024-12-20 16:11:07 +0300 704) AC_MSG_CHECKING(for CPP predefined macro __SIZEOF_LONG_LONG__ )
868b2b66 (kx 2024-12-20 16:11:07 +0300 705) AC_CACHE_VAL(ac_cv_sizeof_long_long,
868b2b66 (kx 2024-12-20 16:11:07 +0300 706) [ac_cv_sizeof_long_long=`$CC -dM -E - < /dev/null | grep __SIZEOF_LONG_LONG__ | cut -f3 -d' ' | tr '\n' ' ' | sed 's,^[ \t]*,,;s,[ \t]*$,,'`])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 707) if test "$ac_cv_sizeof_long_long" != ""; then
868b2b66 (kx 2024-12-20 16:11:07 +0300 708) GCC_SIZEOF_LONG_LONG=$ac_cv_sizeof_long_long
868b2b66 (kx 2024-12-20 16:11:07 +0300 709) AC_MSG_RESULT($ac_cv_sizeof_long_long)
868b2b66 (kx 2024-12-20 16:11:07 +0300 710) else
868b2b66 (kx 2024-12-20 16:11:07 +0300 711) GCC_SIZEOF_LONG_LONG=
868b2b66 (kx 2024-12-20 16:11:07 +0300 712) AC_MSG_RESULT(not defined)
868b2b66 (kx 2024-12-20 16:11:07 +0300 713) fi
868b2b66 (kx 2024-12-20 16:11:07 +0300 714) AC_SUBST(GCC_SIZEOF_LONG_LONG)dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 715)
868b2b66 (kx 2024-12-20 16:11:07 +0300 716) AC_MSG_CHECKING(for CPP predefined macro __SIZEOF_FLOAT__ )
868b2b66 (kx 2024-12-20 16:11:07 +0300 717) AC_CACHE_VAL(ac_cv_sizeof_float,
868b2b66 (kx 2024-12-20 16:11:07 +0300 718) [ac_cv_sizeof_float=`$CC -dM -E - < /dev/null | grep __SIZEOF_FLOAT__ | cut -f3 -d' ' | tr '\n' ' ' | sed 's,^[ \t]*,,;s,[ \t]*$,,'`])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 719) if test "$ac_cv_sizeof_float" != ""; then
868b2b66 (kx 2024-12-20 16:11:07 +0300 720) GCC_SIZEOF_FLOAT=$ac_cv_sizeof_float
868b2b66 (kx 2024-12-20 16:11:07 +0300 721) AC_MSG_RESULT($ac_cv_sizeof_float)
868b2b66 (kx 2024-12-20 16:11:07 +0300 722) else
868b2b66 (kx 2024-12-20 16:11:07 +0300 723) GCC_SIZEOF_FLOAT=
868b2b66 (kx 2024-12-20 16:11:07 +0300 724) AC_MSG_RESULT(not defined)
868b2b66 (kx 2024-12-20 16:11:07 +0300 725) fi
868b2b66 (kx 2024-12-20 16:11:07 +0300 726) AC_SUBST(GCC_SIZEOF_FLOAT)dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 727)
868b2b66 (kx 2024-12-20 16:11:07 +0300 728) AC_MSG_CHECKING(for CPP predefined macro __SIZEOF_DOUBLE__ )
868b2b66 (kx 2024-12-20 16:11:07 +0300 729) AC_CACHE_VAL(ac_cv_sizeof_double,
868b2b66 (kx 2024-12-20 16:11:07 +0300 730) [ac_cv_sizeof_double=`$CC -dM -E - < /dev/null | grep __SIZEOF_DOUBLE__ | cut -f3 -d' ' | tr '\n' ' ' | sed 's,^[ \t]*,,;s,[ \t]*$,,'`])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 731) if test "$ac_cv_sizeof_double" != ""; then
868b2b66 (kx 2024-12-20 16:11:07 +0300 732) GCC_SIZEOF_DOUBLE=$ac_cv_sizeof_double
868b2b66 (kx 2024-12-20 16:11:07 +0300 733) AC_MSG_RESULT($ac_cv_sizeof_double)
868b2b66 (kx 2024-12-20 16:11:07 +0300 734) else
868b2b66 (kx 2024-12-20 16:11:07 +0300 735) GCC_SIZEOF_DOUBLE=
868b2b66 (kx 2024-12-20 16:11:07 +0300 736) AC_MSG_RESULT(not defined)
868b2b66 (kx 2024-12-20 16:11:07 +0300 737) fi
868b2b66 (kx 2024-12-20 16:11:07 +0300 738) AC_SUBST(GCC_SIZEOF_DOUBLE)dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 739)
868b2b66 (kx 2024-12-20 16:11:07 +0300 740) AC_MSG_CHECKING(for CPP predefined macro __SIZEOF_LONG_DOUBLE__ )
868b2b66 (kx 2024-12-20 16:11:07 +0300 741) AC_CACHE_VAL(ac_cv_sizeof_long_double,
868b2b66 (kx 2024-12-20 16:11:07 +0300 742) [ac_cv_sizeof_long_double=`$CC -dM -E - < /dev/null | grep __SIZEOF_LONG_DOUBLE__ | cut -f3 -d' ' | tr '\n' ' ' | sed 's,^[ \t]*,,;s,[ \t]*$,,'`])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 743) if test "$ac_cv_sizeof_long_double" != ""; then
868b2b66 (kx 2024-12-20 16:11:07 +0300 744) GCC_SIZEOF_LONG_DOUBLE=$ac_cv_sizeof_long_double
868b2b66 (kx 2024-12-20 16:11:07 +0300 745) AC_MSG_RESULT($ac_cv_sizeof_long_double)
868b2b66 (kx 2024-12-20 16:11:07 +0300 746) else
868b2b66 (kx 2024-12-20 16:11:07 +0300 747) GCC_SIZEOF_LONG_DOUBLE=
868b2b66 (kx 2024-12-20 16:11:07 +0300 748) AC_MSG_RESULT(not defined)
868b2b66 (kx 2024-12-20 16:11:07 +0300 749) fi
868b2b66 (kx 2024-12-20 16:11:07 +0300 750) AC_SUBST(GCC_SIZEOF_LONG_DOUBLE)dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 751)
868b2b66 (kx 2024-12-20 16:11:07 +0300 752) AC_MSG_CHECKING(for CPP predefined macro __SIZEOF_SIZE_T__ )
868b2b66 (kx 2024-12-20 16:11:07 +0300 753) AC_CACHE_VAL(ac_cv_sizeof_size_t,
868b2b66 (kx 2024-12-20 16:11:07 +0300 754) [ac_cv_sizeof_size_t=`$CC -dM -E - < /dev/null | grep __SIZEOF_SIZE_T__ | cut -f3 -d' ' | tr '\n' ' ' | sed 's,^[ \t]*,,;s,[ \t]*$,,'`])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 755) if test "$ac_cv_sizeof_size_t" != ""; then
868b2b66 (kx 2024-12-20 16:11:07 +0300 756) GCC_SIZEOF_SIZE_T=$ac_cv_sizeof_size_t
868b2b66 (kx 2024-12-20 16:11:07 +0300 757) AC_MSG_RESULT($ac_cv_sizeof_size_t)
868b2b66 (kx 2024-12-20 16:11:07 +0300 758) else
868b2b66 (kx 2024-12-20 16:11:07 +0300 759) GCC_SIZEOF_SIZE_T=
868b2b66 (kx 2024-12-20 16:11:07 +0300 760) AC_MSG_RESULT(not defined)
868b2b66 (kx 2024-12-20 16:11:07 +0300 761) fi
868b2b66 (kx 2024-12-20 16:11:07 +0300 762) AC_SUBST(GCC_SIZEOF_SIZE_T)dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 763)
868b2b66 (kx 2024-12-20 16:11:07 +0300 764) AC_MSG_CHECKING(for CPP predefined macro __SIZEOF_POINTER__ )
868b2b66 (kx 2024-12-20 16:11:07 +0300 765) AC_CACHE_VAL(ac_cv_sizeof_pointer,
868b2b66 (kx 2024-12-20 16:11:07 +0300 766) [ac_cv_sizeof_pointer=`$CC -dM -E - < /dev/null | grep __SIZEOF_POINTER__ | cut -f3 -d' ' | tr '\n' ' ' | sed 's,^[ \t]*,,;s,[ \t]*$,,'`])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 767) if test "$ac_cv_sizeof_pointer" != ""; then
868b2b66 (kx 2024-12-20 16:11:07 +0300 768) GCC_SIZEOF_POINTER=$ac_cv_sizeof_pointer
868b2b66 (kx 2024-12-20 16:11:07 +0300 769) AC_MSG_RESULT($ac_cv_sizeof_pointer)
868b2b66 (kx 2024-12-20 16:11:07 +0300 770) else
868b2b66 (kx 2024-12-20 16:11:07 +0300 771) GCC_SIZEOF_POINTER=
868b2b66 (kx 2024-12-20 16:11:07 +0300 772) AC_MSG_RESULT(not defined)
868b2b66 (kx 2024-12-20 16:11:07 +0300 773) fi
868b2b66 (kx 2024-12-20 16:11:07 +0300 774) AC_SUBST(GCC_SIZEOF_POINTER)dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 775)
868b2b66 (kx 2024-12-20 16:11:07 +0300 776) AC_MSG_CHECKING(for CPP predefined macro __SIZEOF_PTRDIFF_T__ )
868b2b66 (kx 2024-12-20 16:11:07 +0300 777) AC_CACHE_VAL(ac_cv_sizeof_ptrdiff_t,
868b2b66 (kx 2024-12-20 16:11:07 +0300 778) [ac_cv_sizeof_ptrdiff_t=`$CC -dM -E - < /dev/null | grep __SIZEOF_PTRDIFF_T__ | cut -f3 -d' ' | tr '\n' ' ' | sed 's,^[ \t]*,,;s,[ \t]*$,,'`])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 779) if test "$ac_cv_sizeof_ptrdiff_t" != ""; then
868b2b66 (kx 2024-12-20 16:11:07 +0300 780) GCC_SIZEOF_PTRDIFF_T=$ac_cv_sizeof_ptrdiff_t
868b2b66 (kx 2024-12-20 16:11:07 +0300 781) AC_MSG_RESULT($ac_cv_sizeof_ptrdiff_t)
868b2b66 (kx 2024-12-20 16:11:07 +0300 782) else
868b2b66 (kx 2024-12-20 16:11:07 +0300 783) GCC_SIZEOF_PTRDIFF_T=
868b2b66 (kx 2024-12-20 16:11:07 +0300 784) AC_MSG_RESULT(not defined)
868b2b66 (kx 2024-12-20 16:11:07 +0300 785) fi
868b2b66 (kx 2024-12-20 16:11:07 +0300 786) AC_SUBST(GCC_SIZEOF_PTRDIFF_T)dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 787) ])
868b2b66 (kx 2024-12-20 16:11:07 +0300 788)
868b2b66 (kx 2024-12-20 16:11:07 +0300 789)
868b2b66 (kx 2024-12-20 16:11:07 +0300 790) dnl ============================================================
868b2b66 (kx 2024-12-20 16:11:07 +0300 791) dnl Test for GCC Width of Types:
868b2b66 (kx 2024-12-20 16:11:07 +0300 792) dnl ===========================
868b2b66 (kx 2024-12-20 16:11:07 +0300 793) dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 794) dnl configure.ac:
868b2b66 (kx 2024-12-20 16:11:07 +0300 795) dnl AC_GCC_WIDTH_OF_TYPES
868b2b66 (kx 2024-12-20 16:11:07 +0300 796) dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 797) dnl ============================================================
868b2b66 (kx 2024-12-20 16:11:07 +0300 798) AC_DEFUN([AC_GCC_WIDTH_OF_TYPES],
868b2b66 (kx 2024-12-20 16:11:07 +0300 799) [dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 800) AC_MSG_CHECKING(for CPP predefined macro __CHAR_BIT__ )
868b2b66 (kx 2024-12-20 16:11:07 +0300 801) AC_CACHE_VAL(ac_cv_char_width,
868b2b66 (kx 2024-12-20 16:11:07 +0300 802) [ac_cv_char_width=`$CC -dM -E - < /dev/null | grep __CHAR_BIT__ | cut -f3 -d' ' | tr '\n' ' ' | sed 's,^[ \t]*,,;s,[ \t]*$,,'`])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 803) if test "$ac_cv_char_width" != ""; then
868b2b66 (kx 2024-12-20 16:11:07 +0300 804) GCC_CHAR_WIDTH=$ac_cv_char_width
868b2b66 (kx 2024-12-20 16:11:07 +0300 805) AC_MSG_RESULT($ac_cv_char_width)
868b2b66 (kx 2024-12-20 16:11:07 +0300 806) else
868b2b66 (kx 2024-12-20 16:11:07 +0300 807) GCC_CHAR_WIDTH=
868b2b66 (kx 2024-12-20 16:11:07 +0300 808) AC_MSG_RESULT(not defined)
868b2b66 (kx 2024-12-20 16:11:07 +0300 809) fi
868b2b66 (kx 2024-12-20 16:11:07 +0300 810) AC_SUBST(GCC_CHAR_WIDTH)dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 811) ])
868b2b66 (kx 2024-12-20 16:11:07 +0300 812)
868b2b66 (kx 2024-12-20 16:11:07 +0300 813)
868b2b66 (kx 2024-12-20 16:11:07 +0300 814) dnl ============================================================
868b2b66 (kx 2024-12-20 16:11:07 +0300 815) dnl Test for GCC Byte Order:
868b2b66 (kx 2024-12-20 16:11:07 +0300 816) dnl =======================
868b2b66 (kx 2024-12-20 16:11:07 +0300 817) dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 818) dnl configure.ac:
868b2b66 (kx 2024-12-20 16:11:07 +0300 819) dnl AC_GCC_BYTE_ORDER
868b2b66 (kx 2024-12-20 16:11:07 +0300 820) dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 821) dnl ============================================================
868b2b66 (kx 2024-12-20 16:11:07 +0300 822) AC_DEFUN([AC_GCC_BYTE_ORDER],
868b2b66 (kx 2024-12-20 16:11:07 +0300 823) [dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 824) AC_MSG_CHECKING(for CPP predefined macro __BYTE_ORDER__ )
868b2b66 (kx 2024-12-20 16:11:07 +0300 825) AC_CACHE_VAL(ac_cv_order_little_endian,
868b2b66 (kx 2024-12-20 16:11:07 +0300 826) [ac_cv_order_little_endian=`$CC -dM -E - < /dev/null | grep __ORDER_LITTLE_ENDIAN__ | cut -f3 -d' ' | tr '\n' ' ' | sed 's,^[ \t]*,,;s,[ \t]*$,,'`])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 827) AC_CACHE_VAL(ac_cv_order_big_endian,
868b2b66 (kx 2024-12-20 16:11:07 +0300 828) [ac_cv_order_big_endian=`$CC -dM -E - < /dev/null | grep __ORDER_BIG_ENDIAN__ | cut -f3 -d' ' | tr '\n' ' ' | sed 's,^[ \t]*,,;s,[ \t]*$,,'`])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 829) AC_CACHE_VAL(ac_cv_byte_order,
868b2b66 (kx 2024-12-20 16:11:07 +0300 830) [ac_cv_byte_order=`$CC -dM -E - < /dev/null | grep __BYTE_ORDER__ | cut -f3 -d' ' | tr '\n' ' ' | sed 's,^[ \t]*,,;s,[ \t]*$,,'`])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 831) if test "$ac_cv_byte_order" = "__ORDER_LITTLE_ENDIAN__"; then
868b2b66 (kx 2024-12-20 16:11:07 +0300 832) GCC_BYTE_ORDER=1234
868b2b66 (kx 2024-12-20 16:11:07 +0300 833) GCC_BYTE_ORDER_LITTLE_ENDIAN=1
868b2b66 (kx 2024-12-20 16:11:07 +0300 834) GCC_BYTE_ORDER_BIG_ENDIAN=0
868b2b66 (kx 2024-12-20 16:11:07 +0300 835) AC_MSG_RESULT(Little-endian)
868b2b66 (kx 2024-12-20 16:11:07 +0300 836) else
868b2b66 (kx 2024-12-20 16:11:07 +0300 837) GCC_BYTE_ORDER=4321
868b2b66 (kx 2024-12-20 16:11:07 +0300 838) GCC_BYTE_ORDER_LITTLE_ENDIAN=0
868b2b66 (kx 2024-12-20 16:11:07 +0300 839) GCC_BYTE_ORDER_BIG_ENDIAN=1
868b2b66 (kx 2024-12-20 16:11:07 +0300 840) AC_MSG_RESULT(Big-endian)
868b2b66 (kx 2024-12-20 16:11:07 +0300 841) fi
868b2b66 (kx 2024-12-20 16:11:07 +0300 842) AC_SUBST(GCC_BYTE_ORDER)dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 843) AC_SUBST(GCC_BYTE_ORDER_LITTLE_ENDIAN)dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 844) AC_SUBST(GCC_BYTE_ORDER_BIG_ENDIAN)dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 845) ])
868b2b66 (kx 2024-12-20 16:11:07 +0300 846)
868b2b66 (kx 2024-12-20 16:11:07 +0300 847)
868b2b66 (kx 2024-12-20 16:11:07 +0300 848) dnl ============================================================
868b2b66 (kx 2024-12-20 16:11:07 +0300 849) dnl Test for GCC Float Word Order:
868b2b66 (kx 2024-12-20 16:11:07 +0300 850) dnl =============================
868b2b66 (kx 2024-12-20 16:11:07 +0300 851) dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 852) dnl configure.ac:
868b2b66 (kx 2024-12-20 16:11:07 +0300 853) dnl AC_GCC_FLOAT_WORD_ORDER
868b2b66 (kx 2024-12-20 16:11:07 +0300 854) dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 855) dnl ============================================================
868b2b66 (kx 2024-12-20 16:11:07 +0300 856) AC_DEFUN([AC_GCC_FLOAT_WORD_ORDER],
868b2b66 (kx 2024-12-20 16:11:07 +0300 857) [dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 858) AC_MSG_CHECKING(for CPP predefined macro __FLOAT_WORD_ORDER__ )
868b2b66 (kx 2024-12-20 16:11:07 +0300 859) AC_CACHE_VAL(ac_cv_order_little_endian,
868b2b66 (kx 2024-12-20 16:11:07 +0300 860) [ac_cv_order_little_endian=`$CC -dM -E - < /dev/null | grep __ORDER_LITTLE_ENDIAN__ | cut -f3 -d' ' | tr '\n' ' ' | sed 's,^[ \t]*,,;s,[ \t]*$,,'`])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 861) AC_CACHE_VAL(ac_cv_order_big_endian,
868b2b66 (kx 2024-12-20 16:11:07 +0300 862) [ac_cv_order_big_endian=`$CC -dM -E - < /dev/null | grep __ORDER_BIG_ENDIAN__ | cut -f3 -d' ' | tr '\n' ' ' | sed 's,^[ \t]*,,;s,[ \t]*$,,'`])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 863) AC_CACHE_VAL(ac_cv_float_word_order,
868b2b66 (kx 2024-12-20 16:11:07 +0300 864) [ac_cv_float_word_order=`$CC -dM -E - < /dev/null | grep __FLOAT_WORD_ORDER__ | cut -f3 -d' ' | tr '\n' ' ' | sed 's,^[ \t]*,,;s,[ \t]*$,,'`])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 865) if test "$ac_cv_float_word_order" = "__ORDER_LITTLE_ENDIAN__"; then
868b2b66 (kx 2024-12-20 16:11:07 +0300 866) GCC_FLOAT_WORD_ORDER=1234
868b2b66 (kx 2024-12-20 16:11:07 +0300 867) GCC_FLOAT_WORD_ORDER_LITTLE_ENDIAN=1
868b2b66 (kx 2024-12-20 16:11:07 +0300 868) GCC_FLOAT_WORD_ORDER_BIG_ENDIAN=0
868b2b66 (kx 2024-12-20 16:11:07 +0300 869) AC_MSG_RESULT(Little-endian)
868b2b66 (kx 2024-12-20 16:11:07 +0300 870) else
868b2b66 (kx 2024-12-20 16:11:07 +0300 871) GCC_FLOAT_WORD_ORDER=4321
868b2b66 (kx 2024-12-20 16:11:07 +0300 872) GCC_FLOAT_WORD_ORDER_LITTLE_ENDIAN=0
868b2b66 (kx 2024-12-20 16:11:07 +0300 873) GCC_FLOAT_WORD_ORDER_BIG_ENDIAN=1
868b2b66 (kx 2024-12-20 16:11:07 +0300 874) AC_MSG_RESULT(Big-endian)
868b2b66 (kx 2024-12-20 16:11:07 +0300 875) fi
868b2b66 (kx 2024-12-20 16:11:07 +0300 876) AC_SUBST(GCC_FLOAT_WORD_ORDER)dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 877) AC_SUBST(GCC_FLOAT_WORD_ORDER_LITTLE_ENDIAN)dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 878) AC_SUBST(GCC_FLOAT_WORD_ORDER_BIG_ENDIAN)dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 879) ])
868b2b66 (kx 2024-12-20 16:11:07 +0300 880)
868b2b66 (kx 2024-12-20 16:11:07 +0300 881)
868b2b66 (kx 2024-12-20 16:11:07 +0300 882) dnl =======================================================================
868b2b66 (kx 2024-12-20 16:11:07 +0300 883) dnl AC_GCC_PROGRAMMING_MODEL
868b2b66 (kx 2024-12-20 16:11:07 +0300 884) dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 885) dnl Determine programming model corresponding to following list:
868b2b66 (kx 2024-12-20 16:11:07 +0300 886) dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 887) dnl PROGRAMMING MODELS:
868b2b66 (kx 2024-12-20 16:11:07 +0300 888) dnl ------------------
868b2b66 (kx 2024-12-20 16:11:07 +0300 889) dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 890) dnl PM: | 1 | 2 | 3 | 4 | 5 | 6
868b2b66 (kx 2024-12-20 16:11:07 +0300 891) dnl -----------+-------+-------+-----------+-------+-----------+--------
868b2b66 (kx 2024-12-20 16:11:07 +0300 892) dnl | LP32 | ILP32 | LP64 | ILP64 | LLP64 | SILP64
868b2b66 (kx 2024-12-20 16:11:07 +0300 893) dnl Data type | | | (I32LP64) | | (IL32P64) |
868b2b66 (kx 2024-12-20 16:11:07 +0300 894) dnl ===========|=======|=======|===========|=======|===========|========
868b2b66 (kx 2024-12-20 16:11:07 +0300 895) dnl char | 8 | 8 | 8 | 8 | 8 | 8
868b2b66 (kx 2024-12-20 16:11:07 +0300 896) dnl -----------+-------+-------+-----------+-------+-----------+--------
868b2b66 (kx 2024-12-20 16:11:07 +0300 897) dnl short | 16 | 16 | 16 | 16 | 16 | 64
868b2b66 (kx 2024-12-20 16:11:07 +0300 898) dnl -----------+-------+-------+-----------+-------+-----------+--------
868b2b66 (kx 2024-12-20 16:11:07 +0300 899) dnl int | 16 | 32 | 32 | 64 | 32 | 64
868b2b66 (kx 2024-12-20 16:11:07 +0300 900) dnl -----------+-------+-------+-----------+-------+-----------+--------
868b2b66 (kx 2024-12-20 16:11:07 +0300 901) dnl long | 32 | 32 | 64 | 64 | 32 | 64
868b2b66 (kx 2024-12-20 16:11:07 +0300 902) dnl -----------+-------+-------+-----------+-------+-----------+--------
868b2b66 (kx 2024-12-20 16:11:07 +0300 903) dnl long long | 64
868b2b66 (kx 2024-12-20 16:11:07 +0300 904) dnl -----------+-------+-------+-----------+-------+-----------+--------
868b2b66 (kx 2024-12-20 16:11:07 +0300 905) dnl pointer | 32 | 32 | 64 | 64 | 64 | 64
868b2b66 (kx 2024-12-20 16:11:07 +0300 906) dnl -----------+-------+-------+-----------+-------+-----------+--------
868b2b66 (kx 2024-12-20 16:11:07 +0300 907) dnl ptrdiff_t | 32 | 32 | 64 | 64 | 64 | 64
868b2b66 (kx 2024-12-20 16:11:07 +0300 908) dnl ===========+=======+=======+===========+=======+===========+========
868b2b66 (kx 2024-12-20 16:11:07 +0300 909) dnl CPU: | | i686 | x86_64 | | |
868b2b66 (kx 2024-12-20 16:11:07 +0300 910) dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 911) dnl Many 64-bit platforms today use an LP64 model (including Solaris,
868b2b66 (kx 2024-12-20 16:11:07 +0300 912) dnl AIX, HP-UX, Linux, macOS, BSD, and IBM z/OS). Microsoft Windows
868b2b66 (kx 2024-12-20 16:11:07 +0300 913) dnl uses an LLP64 model. The disadvantage of the LP64 model is that
868b2b66 (kx 2024-12-20 16:11:07 +0300 914) dnl storing a long into an int may overflow. On the other hand,
868b2b66 (kx 2024-12-20 16:11:07 +0300 915) dnl converting a pointer to a long will “work” in LP64. In the LLP64
868b2b66 (kx 2024-12-20 16:11:07 +0300 916) dnl model, the reverse is true. These are not problems which affect
868b2b66 (kx 2024-12-20 16:11:07 +0300 917) dnl fully standard-compliant code, but code is often written with
868b2b66 (kx 2024-12-20 16:11:07 +0300 918) dnl implicit assumptions about the widths of data types. C code
868b2b66 (kx 2024-12-20 16:11:07 +0300 919) dnl should prefer (u)intptr_t instead of long when casting pointers
868b2b66 (kx 2024-12-20 16:11:07 +0300 920) dnl into integer objects.
868b2b66 (kx 2024-12-20 16:11:07 +0300 921) dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 922) dnl =======================================================================
868b2b66 (kx 2024-12-20 16:11:07 +0300 923) AC_DEFUN([AC_GCC_PROGRAMMING_MODEL],
868b2b66 (kx 2024-12-20 16:11:07 +0300 924) [AC_REQUIRE([AC_GCC_TYPES])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 925) AC_REQUIRE([AC_GCC_SIZEOF_TYPES])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 926) AC_CACHE_CHECK(for Target Machine Programming Model, ac_cv_gcc_programming_model,
868b2b66 (kx 2024-12-20 16:11:07 +0300 927) ac_cv_gcc_programming_model=unknown dnl Initialize to unknown
868b2b66 (kx 2024-12-20 16:11:07 +0300 928) [
868b2b66 (kx 2024-12-20 16:11:07 +0300 929) silp=${ac_cv_sizeof_short}${ac_cv_sizeof_int}${ac_cv_sizeof_long}${ac_cv_sizeof_pointer}
868b2b66 (kx 2024-12-20 16:11:07 +0300 930) changequote(,)dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 931) case "$silp" in
868b2b66 (kx 2024-12-20 16:11:07 +0300 932) 2244)
868b2b66 (kx 2024-12-20 16:11:07 +0300 933) ac_cv_gcc_programming_model=LP32
868b2b66 (kx 2024-12-20 16:11:07 +0300 934) ac_cv_gcc_programming_model_silp=2244
868b2b66 (kx 2024-12-20 16:11:07 +0300 935) ac_cv_gcc_programming_model_id=1
868b2b66 (kx 2024-12-20 16:11:07 +0300 936) ;;
868b2b66 (kx 2024-12-20 16:11:07 +0300 937) 2444)
868b2b66 (kx 2024-12-20 16:11:07 +0300 938) ac_cv_gcc_programming_model=ILP32
868b2b66 (kx 2024-12-20 16:11:07 +0300 939) ac_cv_gcc_programming_model_silp=2444
868b2b66 (kx 2024-12-20 16:11:07 +0300 940) ac_cv_gcc_programming_model_id=2
868b2b66 (kx 2024-12-20 16:11:07 +0300 941) ;;
868b2b66 (kx 2024-12-20 16:11:07 +0300 942) 2488)
868b2b66 (kx 2024-12-20 16:11:07 +0300 943) ac_cv_gcc_programming_model=LP64
868b2b66 (kx 2024-12-20 16:11:07 +0300 944) ac_cv_gcc_programming_model_silp=2488
868b2b66 (kx 2024-12-20 16:11:07 +0300 945) ac_cv_gcc_programming_model_id=3
868b2b66 (kx 2024-12-20 16:11:07 +0300 946) ;;
868b2b66 (kx 2024-12-20 16:11:07 +0300 947) 2888)
868b2b66 (kx 2024-12-20 16:11:07 +0300 948) ac_cv_gcc_programming_model=ILP64
868b2b66 (kx 2024-12-20 16:11:07 +0300 949) ac_cv_gcc_programming_model_silp=2888
868b2b66 (kx 2024-12-20 16:11:07 +0300 950) ac_cv_gcc_programming_model_id=4
868b2b66 (kx 2024-12-20 16:11:07 +0300 951) ;;
868b2b66 (kx 2024-12-20 16:11:07 +0300 952) 2448)
868b2b66 (kx 2024-12-20 16:11:07 +0300 953) ac_cv_gcc_programming_model=LLP64
868b2b66 (kx 2024-12-20 16:11:07 +0300 954) ac_cv_gcc_programming_model_silp=2448
868b2b66 (kx 2024-12-20 16:11:07 +0300 955) ac_cv_gcc_programming_model_id=5
868b2b66 (kx 2024-12-20 16:11:07 +0300 956) ;;
868b2b66 (kx 2024-12-20 16:11:07 +0300 957) 8888)
868b2b66 (kx 2024-12-20 16:11:07 +0300 958) ac_cv_gcc_programming_model=SILP64
868b2b66 (kx 2024-12-20 16:11:07 +0300 959) ac_cv_gcc_programming_model_silp=8888
868b2b66 (kx 2024-12-20 16:11:07 +0300 960) ac_cv_gcc_programming_model_id=6
868b2b66 (kx 2024-12-20 16:11:07 +0300 961) ;;
868b2b66 (kx 2024-12-20 16:11:07 +0300 962) *)
868b2b66 (kx 2024-12-20 16:11:07 +0300 963) changequote([,])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 964) ac_cv_c_programming_model=unknown
868b2b66 (kx 2024-12-20 16:11:07 +0300 965) ;;
868b2b66 (kx 2024-12-20 16:11:07 +0300 966) esac
868b2b66 (kx 2024-12-20 16:11:07 +0300 967) ]
868b2b66 (kx 2024-12-20 16:11:07 +0300 968) if test $ac_cv_gcc_programming_model = unknown ; then
868b2b66 (kx 2024-12-20 16:11:07 +0300 969) AC_MSG_ERROR([
868b2b66 (kx 2024-12-20 16:11:07 +0300 970) ******** ${TB}Not able to determine programming model.${TN}])
868b2b66 (kx 2024-12-20 16:11:07 +0300 971) elif test $ac_cv_gcc_programming_model = LP32 ; then
868b2b66 (kx 2024-12-20 16:11:07 +0300 972) AC_MSG_ERROR([
868b2b66 (kx 2024-12-20 16:11:07 +0300 973) ******** ${TB}MPU Library does not support LP32 programming model.${TN}])
868b2b66 (kx 2024-12-20 16:11:07 +0300 974) elif test $ac_cv_gcc_programming_model = IPL64 ; then
868b2b66 (kx 2024-12-20 16:11:07 +0300 975) AC_MSG_ERROR([
868b2b66 (kx 2024-12-20 16:11:07 +0300 976) ******** ${TB}MPU Library does not support IPL64 programming model.${TN}])
868b2b66 (kx 2024-12-20 16:11:07 +0300 977) elif test $ac_cv_gcc_programming_model = SIPL64 ; then
868b2b66 (kx 2024-12-20 16:11:07 +0300 978) AC_MSG_ERROR([
868b2b66 (kx 2024-12-20 16:11:07 +0300 979) ******** ${TB}MPU Library does not support SIPL64 programming model.${TN}])
868b2b66 (kx 2024-12-20 16:11:07 +0300 980) fi
868b2b66 (kx 2024-12-20 16:11:07 +0300 981) )
868b2b66 (kx 2024-12-20 16:11:07 +0300 982)
868b2b66 (kx 2024-12-20 16:11:07 +0300 983) dnl =======================================================================
868b2b66 (kx 2024-12-20 16:11:07 +0300 984) dnl Programming model IDs:
868b2b66 (kx 2024-12-20 16:11:07 +0300 985) dnl =======================================================================
868b2b66 (kx 2024-12-20 16:11:07 +0300 986) AC_SUBST(PM_LP32, 1)
868b2b66 (kx 2024-12-20 16:11:07 +0300 987) AC_SUBST(PM_ILP32, 2)
868b2b66 (kx 2024-12-20 16:11:07 +0300 988) AC_SUBST(PM_LP64, 3)
868b2b66 (kx 2024-12-20 16:11:07 +0300 989) AC_SUBST(PM_ILP64, 4)
868b2b66 (kx 2024-12-20 16:11:07 +0300 990) AC_SUBST(PM_LLP64, 5)
868b2b66 (kx 2024-12-20 16:11:07 +0300 991) AC_SUBST(PM_SILP64, 6)
868b2b66 (kx 2024-12-20 16:11:07 +0300 992)
868b2b66 (kx 2024-12-20 16:11:07 +0300 993) AC_DEFINE([__PM_LP32], [1], [The ID of LP32 programming model.])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 994) AC_DEFINE([__PM_ILP32], [2], [The ID of ILP32 programming model.])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 995) AC_DEFINE([__PM_LP64], [3], [The ID of LP64 programming model.])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 996) AC_DEFINE([__PM_ILP64], [4], [The ID of ILP64 programming model.])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 997) AC_DEFINE([__PM_LLP64], [5], [The ID of LLP64 programming model.])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 998) AC_DEFINE([__PM_SILP64], [6], [The ID of SILP64 programming model.])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 999)
868b2b66 (kx 2024-12-20 16:11:07 +0300 1000) dnl =======================================================================
868b2b66 (kx 2024-12-20 16:11:07 +0300 1001) dnl EMUSHORT, EMULONG Types:
868b2b66 (kx 2024-12-20 16:11:07 +0300 1002) dnl =======================================================================
868b2b66 (kx 2024-12-20 16:11:07 +0300 1003) AC_SUBST(LIBMPU_EMUSHORT_TYPE, $ac_cv_int32_type)
868b2b66 (kx 2024-12-20 16:11:07 +0300 1004) AC_SUBST(LIBMPU_UINT32_CONST_SUFFIX, $ac_cv_uint32_const_suffix)
868b2b66 (kx 2024-12-20 16:11:07 +0300 1005) AC_SUBST(LIBMPU_SIZEOF_EMUSHORT, 4)
868b2b66 (kx 2024-12-20 16:11:07 +0300 1006) AC_SUBST(LIBMPU_EMUSHORT_WIDTH, 32)
868b2b66 (kx 2024-12-20 16:11:07 +0300 1007)
868b2b66 (kx 2024-12-20 16:11:07 +0300 1008) AC_DEFINE_UNQUOTED([EMUSHORT], [$ac_cv_uint32_type], [The type of unsigned 32-bit integer variables.])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 1009) AC_DEFINE_UNQUOTED([EMUSHORT_C(c)], [c ## $ac_cv_uint32_const_suffix], [The macro for expand the EMUSHORT value to constant expression.])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 1010) AC_DEFINE([SIZE_OF_EMUSHORT], [4], [The size of EMUSHORT type in bytes.])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 1011) AC_DEFINE([BITS_PER_EMUSHORT], [32], [The size of EMUSHORT type in bits.])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 1012)
868b2b66 (kx 2024-12-20 16:11:07 +0300 1013) AC_SUBST(LIBMPU_EMUPART_TYPE, $ac_cv_int32_type)
868b2b66 (kx 2024-12-20 16:11:07 +0300 1014) AC_SUBST(LIBMPU_SIZEOF_EMUPART, 4)
868b2b66 (kx 2024-12-20 16:11:07 +0300 1015) AC_SUBST(LIBMPU_EMUPART_WIDTH, 32)
868b2b66 (kx 2024-12-20 16:11:07 +0300 1016)
868b2b66 (kx 2024-12-20 16:11:07 +0300 1017) AC_DEFINE_UNQUOTED([EMUPART], [$ac_cv_uint32_type], [The type of unsigned 32-bit integer variables.])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 1018) AC_DEFINE_UNQUOTED([EMUPART_C(c)], [c ## $ac_cv_uint32_const_suffix], [The macro for expand the EMUPART value to constant expression.])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 1019) AC_DEFINE([SIZE_OF_EMUPART], [4], [The size of EMUPART type in bytes.])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 1020) AC_DEFINE([BITS_PER_EMUPART], [32], [The size of EMUPART type in bits.])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 1021)
868b2b66 (kx 2024-12-20 16:11:07 +0300 1022) AC_SUBST(LIBMPU_EMULONG_TYPE, $ac_cv_int64_type)
868b2b66 (kx 2024-12-20 16:11:07 +0300 1023) AC_SUBST(LIBMPU_UINT64_CONST_SUFFIX, $ac_cv_uint64_const_suffix)
868b2b66 (kx 2024-12-20 16:11:07 +0300 1024) AC_SUBST(LIBMPU_SIZEOF_EMULONG, 8)
868b2b66 (kx 2024-12-20 16:11:07 +0300 1025) AC_SUBST(LIBMPU_EMULONG_WIDTH, 64)
868b2b66 (kx 2024-12-20 16:11:07 +0300 1026)
868b2b66 (kx 2024-12-20 16:11:07 +0300 1027) AC_DEFINE_UNQUOTED([EMULONG], [$ac_cv_uint64_type], [The type of unsigned 64-bit integer variables.])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 1028) AC_DEFINE_UNQUOTED([EMULONG_C(c)], [c ## $ac_cv_uint64_const_suffix], [The macro for expand the EMULONG value to constant expression.])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 1029) AC_DEFINE([SIZE_OF_EMULONG], [8], [The size of EMULONG type in bytes.])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 1030) AC_DEFINE([BITS_PER_EMULONG], [64], [The size of EMULONG type in bits.])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 1031)
868b2b66 (kx 2024-12-20 16:11:07 +0300 1032) AC_DEFINE_UNQUOTED([BITS_PER_BYTE], [$ac_cv_char_width], [The size of BYTE or UNIT type in bits.])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 1033)
868b2b66 (kx 2024-12-20 16:11:07 +0300 1034) AC_SUBST(GCC_PROGRAMMING_MODEL, $ac_cv_gcc_programming_model)
868b2b66 (kx 2024-12-20 16:11:07 +0300 1035) AC_SUBST(GCC_PROGRAMMING_MODEL_SILP, $ac_cv_gcc_programming_model_silp)
868b2b66 (kx 2024-12-20 16:11:07 +0300 1036) AC_SUBST(GCC_PROGRAMMING_MODEL_ID, $ac_cv_gcc_programming_model_id)
868b2b66 (kx 2024-12-20 16:11:07 +0300 1037)
868b2b66 (kx 2024-12-20 16:11:07 +0300 1038) AC_DEFINE_UNQUOTED([__PROGRAMMING_MODEL], [$ac_cv_gcc_programming_model], [The programming model name.])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 1039) AC_DEFINE_UNQUOTED([__PROGRAMMING_MODEL_SILP], [$ac_cv_gcc_programming_model_silp], [The programming model sizes of short, int, long, pointer types.])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 1040) AC_DEFINE_UNQUOTED([__PROGRAMMING_MODEL_ID], [$ac_cv_gcc_programming_model_id], [The programming model identificator.])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 1041) ])
868b2b66 (kx 2024-12-20 16:11:07 +0300 1042)
868b2b66 (kx 2024-12-20 16:11:07 +0300 1043)
868b2b66 (kx 2024-12-20 16:11:07 +0300 1044) AC_DEFUN([AC_LIBMPU_LT_VERSION_INFO],
868b2b66 (kx 2024-12-20 16:11:07 +0300 1045) [AC_MSG_CHECKING(for MPU Library Version Information)
868b2b66 (kx 2024-12-20 16:11:07 +0300 1046) #
868b2b66 (kx 2024-12-20 16:11:07 +0300 1047) # Made LT_VERSION_INFO so that library version matches PACKAGE_VERSION:
868b2b66 (kx 2024-12-20 16:11:07 +0300 1048) #
868b2b66 (kx 2024-12-20 16:11:07 +0300 1049) major=`echo ${PACKAGE_VERSION} | cut -f1 -d'.'`
868b2b66 (kx 2024-12-20 16:11:07 +0300 1050) minor=`echo ${PACKAGE_VERSION} | cut -f2 -d'.'`
868b2b66 (kx 2024-12-20 16:11:07 +0300 1051) patch=`echo ${PACKAGE_VERSION} | cut -f3 -d'.'`
868b2b66 (kx 2024-12-20 16:11:07 +0300 1052)
868b2b66 (kx 2024-12-20 16:11:07 +0300 1053) current=$( expr ${major} + ${patch} )
868b2b66 (kx 2024-12-20 16:11:07 +0300 1054) revision=${minor}
868b2b66 (kx 2024-12-20 16:11:07 +0300 1055) age=${patch}
868b2b66 (kx 2024-12-20 16:11:07 +0300 1056)
868b2b66 (kx 2024-12-20 16:11:07 +0300 1057) ac_cv_libmpu_lt_release="${major}.${minor}"
868b2b66 (kx 2024-12-20 16:11:07 +0300 1058) ac_cv_libmpu_lt_current="${current}"
868b2b66 (kx 2024-12-20 16:11:07 +0300 1059) ac_cv_libmpu_lt_revision="${revision}"
868b2b66 (kx 2024-12-20 16:11:07 +0300 1060) ac_cv_libmpu_lt_age="${age}"
868b2b66 (kx 2024-12-20 16:11:07 +0300 1061)
868b2b66 (kx 2024-12-20 16:11:07 +0300 1062) ac_cv_libmpu_lt_version_info="${major}:${age}:${revision}"
868b2b66 (kx 2024-12-20 16:11:07 +0300 1063)
868b2b66 (kx 2024-12-20 16:11:07 +0300 1064) AC_SUBST(LIBMPU_LT_RELEASE, $ac_cv_libmpu_lt_release)
868b2b66 (kx 2024-12-20 16:11:07 +0300 1065) AC_SUBST(LIBMPU_LT_VERSION_INFO, $ac_cv_libmpu_lt_version_info)
868b2b66 (kx 2024-12-20 16:11:07 +0300 1066) AC_SUBST(LIBMPU_LT_CURRENT, $ac_cv_libmpu_lt_current)
868b2b66 (kx 2024-12-20 16:11:07 +0300 1067) AC_SUBST(LIBMPU_LT_REVISION, $ac_cv_libmpu_lt_revision)
868b2b66 (kx 2024-12-20 16:11:07 +0300 1068) AC_SUBST(LIBMPU_LT_AGE, $ac_cv_libmpu_lt_age)
868b2b66 (kx 2024-12-20 16:11:07 +0300 1069)
868b2b66 (kx 2024-12-20 16:11:07 +0300 1070) AC_MSG_RESULT($ac_cv_libmpu_lt_version_info)
868b2b66 (kx 2024-12-20 16:11:07 +0300 1071) if test "$ac_cv_libmpu_lt_version_info" = ""; then
868b2b66 (kx 2024-12-20 16:11:07 +0300 1072) AC_MSG_ERROR([
868b2b66 (kx 2024-12-20 16:11:07 +0300 1073) ******** ${TB}The MPU Library Version Information does not declared.${TN}])
868b2b66 (kx 2024-12-20 16:11:07 +0300 1074) fi
868b2b66 (kx 2024-12-20 16:11:07 +0300 1075) ])
868b2b66 (kx 2024-12-20 16:11:07 +0300 1076)
868b2b66 (kx 2024-12-20 16:11:07 +0300 1077)
868b2b66 (kx 2024-12-20 16:11:07 +0300 1078) dnl ============================================================
868b2b66 (kx 2024-12-20 16:11:07 +0300 1079) dnl Test if LD_LIBRARY_PATH contains the notation for the
868b2b66 (kx 2024-12-20 16:11:07 +0300 1080) dnl current directory since this would lead to problems
868b2b66 (kx 2024-12-20 16:11:07 +0300 1081) dnl installing/building kxlibc .
868b2b66 (kx 2024-12-20 16:11:07 +0300 1082) dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 1083) dnl LD_LIBRARY_PATH contains the current directory if one
868b2b66 (kx 2024-12-20 16:11:07 +0300 1084) dnl of the following is true:
868b2b66 (kx 2024-12-20 16:11:07 +0300 1085) dnl - one of the terminals (":" and ";") is the first or
868b2b66 (kx 2024-12-20 16:11:07 +0300 1086) dnl last sign;
868b2b66 (kx 2024-12-20 16:11:07 +0300 1087) dnl - two terminals occur directly after each other;
868b2b66 (kx 2024-12-20 16:11:07 +0300 1088) dnl - the path contains an element with a dot in it .
868b2b66 (kx 2024-12-20 16:11:07 +0300 1089) dnl ============================================================
868b2b66 (kx 2024-12-20 16:11:07 +0300 1090) AC_DEFUN([AC_LD_LIBRARY_PATH],
868b2b66 (kx 2024-12-20 16:11:07 +0300 1091) [AC_MSG_CHECKING(for LD_LIBRARY_PATH does not contain current directory)
868b2b66 (kx 2024-12-20 16:11:07 +0300 1092) changequote(,)dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 1093) case ${LD_LIBRARY_PATH} in
868b2b66 (kx 2024-12-20 16:11:07 +0300 1094) [:\;]* | *[:\;] | *[:\;][:\;]* | *[:\;]. | .[:\;]*| . | *[:\;].[:\;]* )
868b2b66 (kx 2024-12-20 16:11:07 +0300 1095) ld_library_path_setting="contains current directory"
868b2b66 (kx 2024-12-20 16:11:07 +0300 1096) ;;
868b2b66 (kx 2024-12-20 16:11:07 +0300 1097) *)
868b2b66 (kx 2024-12-20 16:11:07 +0300 1098) ld_library_path_setting="ok"
868b2b66 (kx 2024-12-20 16:11:07 +0300 1099) ;;
868b2b66 (kx 2024-12-20 16:11:07 +0300 1100) esac
868b2b66 (kx 2024-12-20 16:11:07 +0300 1101) changequote([,])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 1102) AC_MSG_RESULT($ld_library_path_setting)
868b2b66 (kx 2024-12-20 16:11:07 +0300 1103) if test "$ld_library_path_setting" != "ok"; then
868b2b66 (kx 2024-12-20 16:11:07 +0300 1104) AC_MSG_ERROR([
868b2b66 (kx 2024-12-20 16:11:07 +0300 1105) ******** ${TB}LD_LIBRARY_PATH shouldn't contain the current directory when${TN}
868b2b66 (kx 2024-12-20 16:11:07 +0300 1106) ******** ${TB}building MPU Library. Please change the environment variable${TN}
868b2b66 (kx 2024-12-20 16:11:07 +0300 1107) ******** ${TB}and run configure again.${TN}])
868b2b66 (kx 2024-12-20 16:11:07 +0300 1108) fi
868b2b66 (kx 2024-12-20 16:11:07 +0300 1109) ])