868b2b66 (kx 2024-12-20 16:11:07 +0300 1)
868b2b66 (kx 2024-12-20 16:11:07 +0300 2) AC_PREREQ([2.71])
868b2b66 (kx 2024-12-20 16:11:07 +0300 3)
868b2b66 (kx 2024-12-20 16:11:07 +0300 4) AC_LIBMPU_HEADLINE([libmpu], [MPU Emulation Library],dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 5) [LIBMPU_VERSION], [configure.ac],dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 6) [Copyright (c) 1999-2024 Andrey V.Kosteltsev])dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 7)
868b2b66 (kx 2024-12-20 16:11:07 +0300 8)
001d3090 (kx 2025-01-05 15:59:34 +0300 9) AC_INIT([MPU Library],[1.0.15],[Andrey V.Kosteltsev <support@radix-linux.su>],[libmpu],[https://radix-linux.su])
868b2b66 (kx 2024-12-20 16:11:07 +0300 10)
868b2b66 (kx 2024-12-20 16:11:07 +0300 11) AC_MSG_CFG_PART(Getting the canonical system type)
868b2b66 (kx 2024-12-20 16:11:07 +0300 12) dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 13) dnl NOTE: Следующие вызовы должны осуществляться строго до
868b2b66 (kx 2024-12-20 16:11:07 +0300 14) dnl вызова AM_INIT_AUTOMAKE .
868b2b66 (kx 2024-12-20 16:11:07 +0300 15) dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 16) dnl Для библиотеки достаточно вызвать AC_CANONICAL_HOST и при этом
868b2b66 (kx 2024-12-20 16:11:07 +0300 17) dnl будут определены build_alias и host_alias. Однако опция --target
868b2b66 (kx 2024-12-20 16:11:07 +0300 18) dnl будет запрещена.
868b2b66 (kx 2024-12-20 16:11:07 +0300 19) dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 20) dnl Для программ достаточно задать AC_CANONICAL_TARGET и при этом
868b2b66 (kx 2024-12-20 16:11:07 +0300 21) dnl будут определены build_alias, host_alias и target_alias. Естественно
868b2b66 (kx 2024-12-20 16:11:07 +0300 22) dnl будут доступны все три опции: --build, --host, и --target .
868b2b66 (kx 2024-12-20 16:11:07 +0300 23) dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 24)
868b2b66 (kx 2024-12-20 16:11:07 +0300 25) AC_CANONICAL_HOST
868b2b66 (kx 2024-12-20 16:11:07 +0300 26) AC_CANONICAL_TARGET
868b2b66 (kx 2024-12-20 16:11:07 +0300 27) AC_USE_SYSTEM_EXTENSIONS
868b2b66 (kx 2024-12-20 16:11:07 +0300 28)
868b2b66 (kx 2024-12-20 16:11:07 +0300 29) dnl Должна вызываться строго после AC_CANONICAL_TARGET .
868b2b66 (kx 2024-12-20 16:11:07 +0300 30) AC_ARG_PROGRAM
868b2b66 (kx 2024-12-20 16:11:07 +0300 31)
868b2b66 (kx 2024-12-20 16:11:07 +0300 32) AC_MSG_CFG_PART(Init Automake environment)
868b2b66 (kx 2024-12-20 16:11:07 +0300 33) AM_INIT_AUTOMAKE([dist-xz no-dist-gzip])
868b2b66 (kx 2024-12-20 16:11:07 +0300 34)
868b2b66 (kx 2024-12-20 16:11:07 +0300 35) AC_CONFIG_SRCDIR(acsite.m4)
868b2b66 (kx 2024-12-20 16:11:07 +0300 36) AC_CONFIG_HEADERS(config.h)
868b2b66 (kx 2024-12-20 16:11:07 +0300 37) AC_CONFIG_MACRO_DIRS([m4])
868b2b66 (kx 2024-12-20 16:11:07 +0300 38)
868b2b66 (kx 2024-12-20 16:11:07 +0300 39) AC_MSG_CFG_PART(Test for GNU Compiler Colection)
868b2b66 (kx 2024-12-20 16:11:07 +0300 40) AC_PROG_CC
868b2b66 (kx 2024-12-20 16:11:07 +0300 41) if test $ac_cv_c_compiler_gnu != yes; then
868b2b66 (kx 2024-12-20 16:11:07 +0300 42) AC_MSG_ERROR([
868b2b66 (kx 2024-12-20 16:11:07 +0300 43) ******** ${TB}The MPU Library should be compiled using the GNU compiler only.${TN}])
868b2b66 (kx 2024-12-20 16:11:07 +0300 44) fi
868b2b66 (kx 2024-12-20 16:11:07 +0300 45) AC_SUBST(cross_compiling)
868b2b66 (kx 2024-12-20 16:11:07 +0300 46) AC_PROG_CPP
868b2b66 (kx 2024-12-20 16:11:07 +0300 47)
868b2b66 (kx 2024-12-20 16:11:07 +0300 48) AC_MSG_CFG_PART(Test for alias attribute)
868b2b66 (kx 2024-12-20 16:11:07 +0300 49) LIBMPU_ALIAS_ATTRIBUTE
868b2b66 (kx 2024-12-20 16:11:07 +0300 50)
868b2b66 (kx 2024-12-20 16:11:07 +0300 51) AC_MSG_CFG_PART(Test for hidden visibility attribute)
868b2b66 (kx 2024-12-20 16:11:07 +0300 52) LIBMPU_HIDDEN_VISIBILITY_ATTRIBUTE
868b2b66 (kx 2024-12-20 16:11:07 +0300 53)
868b2b66 (kx 2024-12-20 16:11:07 +0300 54) AC_MSG_CFG_PART(Test for Target Machine Data Types)
868b2b66 (kx 2024-12-20 16:11:07 +0300 55) AC_GCC_TYPES
868b2b66 (kx 2024-12-20 16:11:07 +0300 56) AC_MSG_CFG_PART(Test for Target Machine Size of Data Types)
868b2b66 (kx 2024-12-20 16:11:07 +0300 57) AC_GCC_SIZEOF_TYPES
868b2b66 (kx 2024-12-20 16:11:07 +0300 58) AC_GCC_WIDTH_OF_TYPES
868b2b66 (kx 2024-12-20 16:11:07 +0300 59) AC_MSG_CFG_PART(Test for Target Machine Byte Order)
868b2b66 (kx 2024-12-20 16:11:07 +0300 60) AC_GCC_BYTE_ORDER
868b2b66 (kx 2024-12-20 16:11:07 +0300 61) AC_GCC_FLOAT_WORD_ORDER
868b2b66 (kx 2024-12-20 16:11:07 +0300 62) AC_MSG_CFG_PART(Test for Target Machine Programming Model)
868b2b66 (kx 2024-12-20 16:11:07 +0300 63) AC_GCC_PROGRAMMING_MODEL
868b2b66 (kx 2024-12-20 16:11:07 +0300 64) AC_MSG_CFG_PART(Test for Target Machine Register Width)
868b2b66 (kx 2024-12-20 16:11:07 +0300 65) AC_GCC_REGISTER_WIDTH
868b2b66 (kx 2024-12-20 16:11:07 +0300 66)
868b2b66 (kx 2024-12-20 16:11:07 +0300 67) AC_MSG_CFG_PART(Test for GNU Binutils)
868b2b66 (kx 2024-12-20 16:11:07 +0300 68) LIBMPU_PROG_BINUTILS
868b2b66 (kx 2024-12-20 16:11:07 +0300 69)
868b2b66 (kx 2024-12-20 16:11:07 +0300 70) AC_MSG_CFG_PART(Test how to build C programs using POSIX threads)
868b2b66 (kx 2024-12-20 16:11:07 +0300 71) AX_PTHREAD([
868b2b66 (kx 2024-12-20 16:11:07 +0300 72) LIBS="$PTHREAD_LIBS $LIBS"
868b2b66 (kx 2024-12-20 16:11:07 +0300 73) CFLAGS="$CFLAGS $PTHREAD_CFLAGS"
868b2b66 (kx 2024-12-20 16:11:07 +0300 74) CC="$PTHREAD_CC"])
868b2b66 (kx 2024-12-20 16:11:07 +0300 75)
868b2b66 (kx 2024-12-20 16:11:07 +0300 76) AC_MSG_CFG_PART(Test for GNU Source)
868b2b66 (kx 2024-12-20 16:11:07 +0300 77) AC_USE_SYSTEM_EXTENSIONS
868b2b66 (kx 2024-12-20 16:11:07 +0300 78)
868b2b66 (kx 2024-12-20 16:11:07 +0300 79) if test $host != $build; then
868b2b66 (kx 2024-12-20 16:11:07 +0300 80) AC_MSG_CFG_PART(Test for Build Machile Compiler)
868b2b66 (kx 2024-12-20 16:11:07 +0300 81) AC_PROG_BUILD_CC
868b2b66 (kx 2024-12-20 16:11:07 +0300 82) AC_PATH_PROG_BUILD_STRIP_S
868b2b66 (kx 2024-12-20 16:11:07 +0300 83) fi
868b2b66 (kx 2024-12-20 16:11:07 +0300 84)
868b2b66 (kx 2024-12-20 16:11:07 +0300 85) AC_SUBST(BUILD_CFLAGS)
868b2b66 (kx 2024-12-20 16:11:07 +0300 86) AC_SUBST(BUILD_LDFLAGS)
868b2b66 (kx 2024-12-20 16:11:07 +0300 87) AC_ARG_VAR([BUILD_CC],[Build C compiler command])
868b2b66 (kx 2024-12-20 16:11:07 +0300 88) AC_ARG_VAR([BUILD_CFLAGS],[Build C compiler flags])
868b2b66 (kx 2024-12-20 16:11:07 +0300 89) AC_ARG_VAR([BUILD_LDFLAGS],[Build linker flags, e.g. -L<lib dir> if you have libraries in a
868b2b66 (kx 2024-12-20 16:11:07 +0300 90) nonstandard directory <lib dir>])
868b2b66 (kx 2024-12-20 16:11:07 +0300 91)
868b2b66 (kx 2024-12-20 16:11:07 +0300 92) AC_MSG_CFG_PART(Test for GCC builtin functions)
868b2b66 (kx 2024-12-20 16:11:07 +0300 93) AX_GCC_BUILTIN([__builtin_popcount])
868b2b66 (kx 2024-12-20 16:11:07 +0300 94) AX_GCC_BUILTIN([__builtin_parity])
868b2b66 (kx 2024-12-20 16:11:07 +0300 95)
868b2b66 (kx 2024-12-20 16:11:07 +0300 96) AC_MSG_CFG_PART(Test for GNU Gettext)
868b2b66 (kx 2024-12-20 16:11:07 +0300 97) AM_GNU_GETTEXT([external])
868b2b66 (kx 2024-12-20 16:11:07 +0300 98) AM_GNU_GETTEXT_VERSION
868b2b66 (kx 2024-12-20 16:11:07 +0300 99)
868b2b66 (kx 2024-12-20 16:11:07 +0300 100) AC_MSG_CFG_PART(Test for GNU libtool)
868b2b66 (kx 2024-12-20 16:11:07 +0300 101) LT_PREREQ([2.4.6])
868b2b66 (kx 2024-12-20 16:11:07 +0300 102) LT_INIT
868b2b66 (kx 2024-12-20 16:11:07 +0300 103) AC_SUBST([LIBTOOL_DEPS])
868b2b66 (kx 2024-12-20 16:11:07 +0300 104)
868b2b66 (kx 2024-12-20 16:11:07 +0300 105) AC_MSG_CFG_PART(Test for libtool VERSION Information)
868b2b66 (kx 2024-12-20 16:11:07 +0300 106) AC_LIBMPU_LT_VERSION_INFO
868b2b66 (kx 2024-12-20 16:11:07 +0300 107)
868b2b66 (kx 2024-12-20 16:11:07 +0300 108) AC_MSG_CFG_PART(Test for LD_LIBRARY_PATH Environment Variable)
868b2b66 (kx 2024-12-20 16:11:07 +0300 109) AC_LD_LIBRARY_PATH
868b2b66 (kx 2024-12-20 16:11:07 +0300 110)
868b2b66 (kx 2024-12-20 16:11:07 +0300 111) dnl ============================================================
868b2b66 (kx 2024-12-20 16:11:07 +0300 112) dnl Arguments to specify presence of other packages/features:
868b2b66 (kx 2024-12-20 16:11:07 +0300 113) dnl ============================================================
868b2b66 (kx 2024-12-20 16:11:07 +0300 114) AC_MSG_CFG_PART(Setting a limit of the real number's size)
868b2b66 (kx 2024-12-20 16:11:07 +0300 115) AC_ARG_WITH([headers],
868b2b66 (kx 2024-12-20 16:11:07 +0300 116) AS_HELP_STRING([--with-headers=PATH],[location of system headers to use
868b2b66 (kx 2024-12-20 16:11:07 +0300 117) (for example /usr/src/linux/include)
868b2b66 (kx 2024-12-20 16:11:07 +0300 118) @<:@default=compiler default@:>@]),
868b2b66 (kx 2024-12-20 16:11:07 +0300 119) [sysheaders=$withval],
868b2b66 (kx 2024-12-20 16:11:07 +0300 120) [sysheaders=''])
868b2b66 (kx 2024-12-20 16:11:07 +0300 121) AC_SUBST(sysheaders)
868b2b66 (kx 2024-12-20 16:11:07 +0300 122)
868b2b66 (kx 2024-12-20 16:11:07 +0300 123) AC_ARG_WITH([real-io-limit],
868b2b66 (kx 2024-12-20 16:11:07 +0300 124) AS_HELP_STRING([],[])
868b2b66 (kx 2024-12-20 16:11:07 +0300 125) AS_HELP_STRING([--with-real-io-limit=SIZE_OF_REAL_NUMBER_IN_BITS],[maximum size of real numbers in bits for input/output(IO) operations.
868b2b66 (kx 2024-12-20 16:11:07 +0300 126) Only the following values of argument are admissible:])
868b2b66 (kx 2024-12-20 16:11:07 +0300 127) dnl AS_HELP_STRING([],[])
868b2b66 (kx 2024-12-20 16:11:07 +0300 128) AS_HELP_STRING([],[1024, 2048, 4096, 8192, 16384, 32768, 65536.])
868b2b66 (kx 2024-12-20 16:11:07 +0300 129) dnl AS_HELP_STRING([],[])
868b2b66 (kx 2024-12-20 16:11:07 +0300 130) AS_HELP_STRING([],[Maximum value is 65536. @<:@default=65536@:>@]),
868b2b66 (kx 2024-12-20 16:11:07 +0300 131) [real_io_limit=$withval],
868b2b66 (kx 2024-12-20 16:11:07 +0300 132) [real_io_limit=65536])
868b2b66 (kx 2024-12-20 16:11:07 +0300 133) case $real_io_limit in
868b2b66 (kx 2024-12-20 16:11:07 +0300 134) 1024) ;;
868b2b66 (kx 2024-12-20 16:11:07 +0300 135) 2048) ;;
868b2b66 (kx 2024-12-20 16:11:07 +0300 136) 4096) ;;
868b2b66 (kx 2024-12-20 16:11:07 +0300 137) 8192) ;;
868b2b66 (kx 2024-12-20 16:11:07 +0300 138) 16384) ;;
868b2b66 (kx 2024-12-20 16:11:07 +0300 139) 32768) ;;
868b2b66 (kx 2024-12-20 16:11:07 +0300 140) 65536) ;;
868b2b66 (kx 2024-12-20 16:11:07 +0300 141) *)
868b2b66 (kx 2024-12-20 16:11:07 +0300 142) AC_MSG_WARN([
868b2b66 (kx 2024-12-20 16:11:07 +0300 143) ******** ${TB}Invalid value of real_io_limit: $real_io_limit${TN}
868b2b66 (kx 2024-12-20 16:11:07 +0300 144) ******** ${TB}for real number IO operations.${TN}
868b2b66 (kx 2024-12-20 16:11:07 +0300 145) ******** ${TB}The value of real_io_limit is set to 65536.${TN}])
868b2b66 (kx 2024-12-20 16:11:07 +0300 146) real_io_limit=65536
868b2b66 (kx 2024-12-20 16:11:07 +0300 147) ;;
868b2b66 (kx 2024-12-20 16:11:07 +0300 148) esac
868b2b66 (kx 2024-12-20 16:11:07 +0300 149)
868b2b66 (kx 2024-12-20 16:11:07 +0300 150) AC_ARG_WITH([real-math-f-limit],
868b2b66 (kx 2024-12-20 16:11:07 +0300 151) AS_HELP_STRING([],[])
868b2b66 (kx 2024-12-20 16:11:07 +0300 152) AS_HELP_STRING([--with-real-math-f-limit=SIZE_OF_REAL_NUMBER_IN_BITS],[maximum size of real numbers in bits for mathematic functions.
868b2b66 (kx 2024-12-20 16:11:07 +0300 153) This value has a higher priority than the value REAL_IO_LIMIT,
868b2b66 (kx 2024-12-20 16:11:07 +0300 154) so])
868b2b66 (kx 2024-12-20 16:11:07 +0300 155) dnl AS_HELP_STRING([],[])
868b2b66 (kx 2024-12-20 16:11:07 +0300 156) AS_HELP_STRING([],[if real_io_limit < real_math_f_limit ; then])
868b2b66 (kx 2024-12-20 16:11:07 +0300 157) AS_HELP_STRING([],[real_io_limit = real_math_f_limit])
868b2b66 (kx 2024-12-20 16:11:07 +0300 158) AS_HELP_STRING([],[fi])
868b2b66 (kx 2024-12-20 16:11:07 +0300 159) dnl AS_HELP_STRING([],[])
868b2b66 (kx 2024-12-20 16:11:07 +0300 160) AS_HELP_STRING([],[Only the following values of argument are admissible:])
868b2b66 (kx 2024-12-20 16:11:07 +0300 161) dnl AS_HELP_STRING([],[])
868b2b66 (kx 2024-12-20 16:11:07 +0300 162) AS_HELP_STRING([],[1024, 2048, 4096, 8192, 16384.])
868b2b66 (kx 2024-12-20 16:11:07 +0300 163) dnl AS_HELP_STRING([],[])
868b2b66 (kx 2024-12-20 16:11:07 +0300 164) AS_HELP_STRING([],[Maximum value is 16384. @<:@default=16384@:>@])
868b2b66 (kx 2024-12-20 16:11:07 +0300 165) AS_HELP_STRING([],[]),
868b2b66 (kx 2024-12-20 16:11:07 +0300 166) [real_math_f_limit=$withval],
868b2b66 (kx 2024-12-20 16:11:07 +0300 167) [real_math_f_limit=16384])
868b2b66 (kx 2024-12-20 16:11:07 +0300 168) case $real_math_f_limit in
868b2b66 (kx 2024-12-20 16:11:07 +0300 169) 1024) ;;
868b2b66 (kx 2024-12-20 16:11:07 +0300 170) 2048) ;;
868b2b66 (kx 2024-12-20 16:11:07 +0300 171) 4096) ;;
868b2b66 (kx 2024-12-20 16:11:07 +0300 172) 8192) ;;
868b2b66 (kx 2024-12-20 16:11:07 +0300 173) 16384) ;;
868b2b66 (kx 2024-12-20 16:11:07 +0300 174) *)
868b2b66 (kx 2024-12-20 16:11:07 +0300 175) AC_MSG_WARN([
868b2b66 (kx 2024-12-20 16:11:07 +0300 176) ******** ${TB}Invalid value of real_math_f_limit: $real_math_f_limit${TN}
868b2b66 (kx 2024-12-20 16:11:07 +0300 177) ******** ${TB}for mathematic operations.${TN}
868b2b66 (kx 2024-12-20 16:11:07 +0300 178) ******** ${TB}The value of real_math_f_limit is set to 16384.${TN}])
868b2b66 (kx 2024-12-20 16:11:07 +0300 179) real_math_f_limit=16384
868b2b66 (kx 2024-12-20 16:11:07 +0300 180) ;;
868b2b66 (kx 2024-12-20 16:11:07 +0300 181) esac
868b2b66 (kx 2024-12-20 16:11:07 +0300 182)
868b2b66 (kx 2024-12-20 16:11:07 +0300 183) test $real_io_limit -lt $real_math_f_limit && real_io_limit=$real_math_f_limit
868b2b66 (kx 2024-12-20 16:11:07 +0300 184)
868b2b66 (kx 2024-12-20 16:11:07 +0300 185) AC_MSG_CHECKING([the maximum size of real numbers for IO operations])
868b2b66 (kx 2024-12-20 16:11:07 +0300 186) AC_MSG_RESULT([${TB}$real_io_limit${TN}])
868b2b66 (kx 2024-12-20 16:11:07 +0300 187) AC_MSG_CHECKING([the maximum size of real numbers for mathematic operations])
868b2b66 (kx 2024-12-20 16:11:07 +0300 188) AC_MSG_RESULT([${TB}$real_math_f_limit${TN}])
868b2b66 (kx 2024-12-20 16:11:07 +0300 189)
868b2b66 (kx 2024-12-20 16:11:07 +0300 190) AC_SUBST(LIBMPU_REAL_IO_LIMIT, $real_io_limit)
868b2b66 (kx 2024-12-20 16:11:07 +0300 191) AC_SUBST(LIBMPU_REAL_MATH_F_LIMIT, $real_math_f_limit)
868b2b66 (kx 2024-12-20 16:11:07 +0300 192) AC_SUBST(LIBMPU_REAL_MAX_WIDTH, $real_io_limit)
868b2b66 (kx 2024-12-20 16:11:07 +0300 193)
868b2b66 (kx 2024-12-20 16:11:07 +0300 194)
868b2b66 (kx 2024-12-20 16:11:07 +0300 195)
868b2b66 (kx 2024-12-20 16:11:07 +0300 196) dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 197) dnl End of arguments to specify other packages/features.
868b2b66 (kx 2024-12-20 16:11:07 +0300 198) dnl ============================================================
868b2b66 (kx 2024-12-20 16:11:07 +0300 199)
868b2b66 (kx 2024-12-20 16:11:07 +0300 200)
868b2b66 (kx 2024-12-20 16:11:07 +0300 201)
868b2b66 (kx 2024-12-20 16:11:07 +0300 202) dnl ============================================================
868b2b66 (kx 2024-12-20 16:11:07 +0300 203) dnl Locate tools:
868b2b66 (kx 2024-12-20 16:11:07 +0300 204) dnl ============================================================
868b2b66 (kx 2024-12-20 16:11:07 +0300 205)
868b2b66 (kx 2024-12-20 16:11:07 +0300 206) AC_MSG_CFG_PART(Test for Header files)
868b2b66 (kx 2024-12-20 16:11:07 +0300 207) dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 208) dnl Check for system header files.
868b2b66 (kx 2024-12-20 16:11:07 +0300 209) dnl =============================
868b2b66 (kx 2024-12-20 16:11:07 +0300 210) dnl /* GetText частично проверил. Но мы делаем для себя. */
868b2b66 (kx 2024-12-20 16:11:07 +0300 211) AC_CHECK_INCLUDES_DEFAULT
868b2b66 (kx 2024-12-20 16:11:07 +0300 212) AC_PROG_EGREP
868b2b66 (kx 2024-12-20 16:11:07 +0300 213)
868b2b66 (kx 2024-12-20 16:11:07 +0300 214) AC_CHECK_HEADERS( locale.h )
868b2b66 (kx 2024-12-20 16:11:07 +0300 215) AC_CHECK_HEADERS( sys/types.h sys/stat.h stdlib.h stddef.h )
868b2b66 (kx 2024-12-20 16:11:07 +0300 216) AC_CHECK_HEADERS( memory.h string.h strings.h )
868b2b66 (kx 2024-12-20 16:11:07 +0300 217) AC_CHECK_HEADERS( inntypes.h stdint.h unistd.h )
868b2b66 (kx 2024-12-20 16:11:07 +0300 218) AC_CHECK_HEADERS( fcntl.h errno.h )
868b2b66 (kx 2024-12-20 16:11:07 +0300 219) AC_CHECK_HEADERS( sys/file.h )
868b2b66 (kx 2024-12-20 16:11:07 +0300 220) AC_CHECK_HEADERS( sys/uio.h )
868b2b66 (kx 2024-12-20 16:11:07 +0300 221) AC_CHECK_HEADERS( sys/wait.h )
868b2b66 (kx 2024-12-20 16:11:07 +0300 222) AC_CHECK_HEADERS( stdarg.h )
868b2b66 (kx 2024-12-20 16:11:07 +0300 223) AC_CHECK_HEADERS( sys/time.h )
868b2b66 (kx 2024-12-20 16:11:07 +0300 224) AC_CHECK_HEADERS( limits.h )
868b2b66 (kx 2024-12-20 16:11:07 +0300 225) AC_CHECK_HEADERS( endian.h )
868b2b66 (kx 2024-12-20 16:11:07 +0300 226) AC_CHECK_HEADERS_ONCE([sys/time.h])
868b2b66 (kx 2024-12-20 16:11:07 +0300 227)
868b2b66 (kx 2024-12-20 16:11:07 +0300 228)
868b2b66 (kx 2024-12-20 16:11:07 +0300 229) AC_MSG_CFG_PART(Test for Libc functions)
868b2b66 (kx 2024-12-20 16:11:07 +0300 230) dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 231) dnl Check for glibc funcs.
868b2b66 (kx 2024-12-20 16:11:07 +0300 232) dnl =============================
868b2b66 (kx 2024-12-20 16:11:07 +0300 233) dnl /* GetText частично проверил. Но мы делаем для себя. */
868b2b66 (kx 2024-12-20 16:11:07 +0300 234) AC_CHECK_FUNCS([iconv putenv setenv setlocale])
868b2b66 (kx 2024-12-20 16:11:07 +0300 235)
868b2b66 (kx 2024-12-20 16:11:07 +0300 236)
868b2b66 (kx 2024-12-20 16:11:07 +0300 237) # TODO: check programs
868b2b66 (kx 2024-12-20 16:11:07 +0300 238)
868b2b66 (kx 2024-12-20 16:11:07 +0300 239)
868b2b66 (kx 2024-12-20 16:11:07 +0300 240) test -n "$critic_missing" && AC_MSG_ERROR([
868b2b66 (kx 2024-12-20 16:11:07 +0300 241) ******** ${TB}These critical programs are missing or too old: $critic_missing${TN}
868b2b66 (kx 2024-12-20 16:11:07 +0300 242) ******** ${TB}Check the INSTALL file for required versions.${TN}])
868b2b66 (kx 2024-12-20 16:11:07 +0300 243)
868b2b66 (kx 2024-12-20 16:11:07 +0300 244) test -n "$aux_missing" && AC_MSG_WARN([
868b2b66 (kx 2024-12-20 16:11:07 +0300 245) ******** ${TB}These auxiliary programs are missing or too old: $aux_missing${TN}
868b2b66 (kx 2024-12-20 16:11:07 +0300 246) ******** ${TB}some features will be disabled.${TN}
868b2b66 (kx 2024-12-20 16:11:07 +0300 247) ******** ${TB}Check the INSTALL file for required versions.${TN}])
868b2b66 (kx 2024-12-20 16:11:07 +0300 248)
868b2b66 (kx 2024-12-20 16:11:07 +0300 249) dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 250) dnl End of locate tools:
868b2b66 (kx 2024-12-20 16:11:07 +0300 251) dnl ============================================================
868b2b66 (kx 2024-12-20 16:11:07 +0300 252)
868b2b66 (kx 2024-12-20 16:11:07 +0300 253)
868b2b66 (kx 2024-12-20 16:11:07 +0300 254) dnl ============================================================
868b2b66 (kx 2024-12-20 16:11:07 +0300 255) dnl Define variables accoring to arguments:
868b2b66 (kx 2024-12-20 16:11:07 +0300 256) dnl ============================================================
868b2b66 (kx 2024-12-20 16:11:07 +0300 257)
868b2b66 (kx 2024-12-20 16:11:07 +0300 258) # if using special system headers, find out the compiler's sekrit
868b2b66 (kx 2024-12-20 16:11:07 +0300 259) # header directory and add that to the list. NOTE: Only does the
868b2b66 (kx 2024-12-20 16:11:07 +0300 260) # right thing on a system that doesn't need fixincludes.
868b2b66 (kx 2024-12-20 16:11:07 +0300 261) # (Not presently a problem.)
868b2b66 (kx 2024-12-20 16:11:07 +0300 262) if test -n "$sysheaders"; then
868b2b66 (kx 2024-12-20 16:11:07 +0300 263) SYSINCLUDES=-nostdinc
868b2b66 (kx 2024-12-20 16:11:07 +0300 264) for d in include include-fixed; do
868b2b66 (kx 2024-12-20 16:11:07 +0300 265) i=`$CC -print-file-name="$d"` && test "x$i" != x && test "x$i" != "x$d" &&
868b2b66 (kx 2024-12-20 16:11:07 +0300 266) SYSINCLUDES="$SYSINCLUDES -isystem $i"
868b2b66 (kx 2024-12-20 16:11:07 +0300 267) done
868b2b66 (kx 2024-12-20 16:11:07 +0300 268) SYSINCLUDES="$SYSINCLUDES -isystem `echo $sysheaders | sed 's/:/ -isystem /g'`"
868b2b66 (kx 2024-12-20 16:11:07 +0300 269) fi
868b2b66 (kx 2024-12-20 16:11:07 +0300 270) AC_SUBST(SYSINCLUDES)
868b2b66 (kx 2024-12-20 16:11:07 +0300 271)
868b2b66 (kx 2024-12-20 16:11:07 +0300 272) dnl
868b2b66 (kx 2024-12-20 16:11:07 +0300 273) dnl End of variables definition.
868b2b66 (kx 2024-12-20 16:11:07 +0300 274) dnl ============================================================
868b2b66 (kx 2024-12-20 16:11:07 +0300 275)
868b2b66 (kx 2024-12-20 16:11:07 +0300 276)
868b2b66 (kx 2024-12-20 16:11:07 +0300 277) AC_MSG_CFG_PART(OUTPUT Substitutions)
868b2b66 (kx 2024-12-20 16:11:07 +0300 278) AC_CONFIG_FILES([ po/Makefile.in
868b2b66 (kx 2024-12-20 16:11:07 +0300 279) Makefile
868b2b66 (kx 2024-12-20 16:11:07 +0300 280) mpu/Makefile
868b2b66 (kx 2024-12-20 16:11:07 +0300 281) include/libmpu.h
868b2b66 (kx 2024-12-20 16:11:07 +0300 282) mpu-config
07a2b481 (kx 2024-12-28 08:20:38 +0300 283) mpu.pc
07a2b481 (kx 2024-12-28 08:20:38 +0300 284) man/Makefile
07a2b481 (kx 2024-12-28 08:20:38 +0300 285) man/ru/Makefile])
868b2b66 (kx 2024-12-20 16:11:07 +0300 286) AC_OUTPUT
868b2b66 (kx 2024-12-20 16:11:07 +0300 287)
868b2b66 (kx 2024-12-20 16:11:07 +0300 288) if test -f "config.h"; then
868b2b66 (kx 2024-12-20 16:11:07 +0300 289) echo ""
868b2b66 (kx 2024-12-20 16:11:07 +0300 290) echo "Now you can run:"
868b2b66 (kx 2024-12-20 16:11:07 +0300 291) echo " \`${TB}make${TN}' to compile,"
868b2b66 (kx 2024-12-20 16:11:07 +0300 292) echo " \`${TB}make install${TN}' to make and install ${TB}libmpu${TN},"
868b2b66 (kx 2024-12-20 16:11:07 +0300 293) echo " \`${TB}make dist${TN}' to create distributable tarballs, or"
868b2b66 (kx 2024-12-20 16:11:07 +0300 294) echo " \`${TB}make distclean${TN}' to clean before configure for another target."
868b2b66 (kx 2024-12-20 16:11:07 +0300 295) echo "Good luck."
868b2b66 (kx 2024-12-20 16:11:07 +0300 296) echo ""
868b2b66 (kx 2024-12-20 16:11:07 +0300 297) fi