Annotation of gforth/aclocal.m4, revision 1.1
1.1 ! anton 1: dnl AC_CHECK_INT_TYPE macro
! 2:
! 3: dnl Copyright (C) 1996 Free Software Foundation, Inc.
! 4:
! 5: dnl This file is part of Gforth.
! 6:
! 7: dnl Gforth is free software; you can redistribute it and/or
! 8: dnl modify it under the terms of the GNU General Public License
! 9: dnl as published by the Free Software Foundation; either version 2
! 10: dnl of the License, or (at your option) any later version.
! 11:
! 12: dnl This program is distributed in the hope that it will be useful,
! 13: dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
! 14: dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.dnl See the
! 15: dnl GNU General Public License for more details.
! 16:
! 17: dnl You should have received a copy of the GNU General Public License
! 18: dnl along with this program; if not, write to the Free Software
! 19: dnl Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
! 20:
! 21: dnl AC_CHECK_INT_TYPE(SIZE, DESCRIPTION [, CROSS-SIZE])
! 22: AC_DEFUN(AC_CHECK_INT_TYPE,
! 23: [changequote(<<, >>)dnl
! 24: dnl The name to #define.
! 25: define(<<AC_TYPE_NAME>>, translit($2_TYPE, [a-z *], [A-Z_P]))dnl
! 26: dnl The cache variable name.
! 27: define(<<AC_CV_NAME>>, translit(ac_cv_int_type_$2, [ *], [_p]))dnl
! 28: changequote([, ])dnl
! 29: AC_MSG_CHECKING(integer type for $2)
! 30: AC_CACHE_VAL(AC_CV_NAME,
! 31: [AC_TRY_RUN([#include <stdio.h>
! 32: main()
! 33: {
! 34: FILE *f=fopen("conftestval", "w");
! 35: if (!f) exit(1);
! 36: #define check_size(type) if (sizeof(type)==($1)) fputs(#type, f), exit(0)
! 37: check_size(int);
! 38: check_size(short);
! 39: check_size(char);
! 40: check_size(long);
! 41: check_size(long long);
! 42: fputs("none",f), exit(0);
! 43: }], AC_CV_NAME=`cat conftestval`, AC_CV_NAME=0, ifelse([$3], , , AC_CV_NAME=$3))])dnl
! 44: AC_MSG_RESULT($AC_CV_NAME)
! 45: AC_DEFINE_UNQUOTED(AC_TYPE_NAME, $AC_CV_NAME)
! 46: undefine([AC_TYPE_NAME])dnl
! 47: undefine([AC_CV_NAME])dnl
! 48: ])
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>