1
0
mirror of https://github.com/OlafvdSpek/ctemplate.git synced 2025-10-05 19:16:54 +08:00
ctemplate/m4/compiler_characteristics.m4
csilvers f0a3fceb99 Sat Jun 9 22:34:52 2007 Google Inc. <opensource@google.com>
* ctemplate: version 0.6 release
	* Use computed includes for hash_map/set: easier config (csilvers)
	* Added all used .m4 templates to the distribution (csilvers)
	* Beefed-up and revamped modifier code (csilvers)
	* New modifiers for url-escaping, attribute-cleansing, etc (ribrdb)
	* Annotations now include modifier information (csilvers)
	* Support embedded NULs in template names and values (csilvers)
2007-06-11 19:33:28 +00:00

25 lines
1.2 KiB
Plaintext

# Check compiler characteristics (e.g. type sizes, PRIxx macros, ...)
# If types $1 and $2 are compatible, perform action $3
AC_DEFUN([AC_TYPES_COMPATIBLE],
[AC_TRY_COMPILE([#include <stddef.h>], [$1 v1 = 0; $2 v2 = 0; return (&v1 - &v2)], $3)])
define(AC_PRIUS_COMMENT, [printf format code for printing a size_t and ssize_t])
AC_DEFUN([AC_COMPILER_CHARACTERISTICS],
[AC_CACHE_CHECK(AC_PRIUS_COMMENT, ac_cv_formatting_prius_prefix,
[AC_TYPES_COMPATIBLE(unsigned int, size_t,
ac_cv_formatting_prius_prefix=; ac_cv_prius_defined=1)
AC_TYPES_COMPATIBLE(unsigned long, size_t,
ac_cv_formatting_prius_prefix=l; ac_cv_prius_defined=1)
AC_TYPES_COMPATIBLE(unsigned long long, size_t,
ac_cv_formatting_prius_prefix=ll; ac_cv_prius_defined=1
)])
if test -z "$ac_cv_formatting_prius_defined"; then
ac_cv_formatting_prius_prefix=z;
fi
AC_DEFINE_UNQUOTED(PRIuS, "${ac_cv_formatting_prius_prefix}u", AC_PRIUS_COMMENT)
AC_DEFINE_UNQUOTED(PRIxS, "${ac_cv_formatting_prius_prefix}x", AC_PRIUS_COMMENT)
AC_DEFINE_UNQUOTED(PRIdS, "${ac_cv_formatting_prius_prefix}d", AC_PRIUS_COMMENT)
])