diff --git a/aclocal.m4 b/aclocal.m4 new file mode 100644 index 000000000..0b7431fc7 --- /dev/null +++ b/aclocal.m4 @@ -0,0 +1,357 @@ +dnl aclocal.m4 for g10 + +AC_PREREQ(2.5) + +dnl -------------------------------------------------- +dnl NLS stuff taken from gettext-0.10 (wk 28.01.98) +dnl -------------------------------------------------- +AC_DEFUN(md_TYPE_PTRDIFF_T, + [AC_CACHE_CHECK([for ptrdiff_t], ac_cv_type_ptrdiff_t, + [AC_TRY_COMPILE(stddef.h, [ptrdiff_t p], ac_cv_type_ptrdiff_t=yes, + ac_cv_type_ptrdiff_t=no)]) + if test $ac_cv_type_ptrdiff_t = yes; then + AC_DEFINE(HAVE_PTRDIFF_T) + fi +]) + +AC_DEFUN(md_PATH_PROG, + [AC_PATH_PROG($1,$2,$3)dnl + if echo $$1 | grep openwin > /dev/null; then + echo "WARNING: Do not use OpenWin's $2. (Better remove it.) >&AC_FD_MSG" + ac_cv_path_$1=$2 + $1=$2 + fi +]) + + +dnl --------------------------------------------------------- ## +dnl Use AC_PROG_INSTALL, supplementing it with INSTALL_SCRIPT ## +dnl substitution. ## +dnl --------------------------------------------------------- ## + +AC_DEFUN(fp_PROG_INSTALL, +[AC_PROG_INSTALL +test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL} -m 755' +AC_SUBST(INSTALL_SCRIPT)dnl +]) + +dnl Check NLS options + +AC_DEFUN(ud_LC_MESSAGES, + [if test $ac_cv_header_locale_h = yes; then + AC_CACHE_CHECK([for LC_MESSAGES], ud_cv_val_LC_MESSAGES, + [AC_TRY_LINK([#include ], [return LC_MESSAGES], + ud_cv_val_LC_MESSAGES=yes, ud_cv_val_LC_MESSAGES=no)]) + if test $ud_cv_val_LC_MESSAGES = yes; then + AC_DEFINE(HAVE_LC_MESSAGES) + fi + fi]) + +AC_DEFUN(ud_WITH_NLS, + [AC_MSG_CHECKING([whether NLS is requested]) + dnl Default is enabled NLS + AC_ARG_ENABLE(nls, + [ --disable-nls do not use Native Language Support], + nls_cv_use_nls=$enableval, nls_cv_use_nls=yes) + AC_MSG_RESULT($nls_cv_use_nls) + + dnl If we use NLS figure out what method + if test "$nls_cv_use_nls" = "yes"; then + AC_DEFINE(ENABLE_NLS) + AC_MSG_CHECKING([for explicitly using GNU gettext]) + AC_ARG_WITH(gnu-gettext, + [ --with-gnu-gettext use the GNU gettext library], + nls_cv_force_use_gnu_gettext=$withval, + nls_cv_force_use_gnu_gettext=no) + AC_MSG_RESULT($nls_cv_force_use_gnu_gettext) + + if test "$nls_cv_force_use_gnu_gettext" = "yes"; then + nls_cv_use_gnu_gettext=yes + else + dnl User does not insist on using GNU NLS library. Figure out what + dnl to use. If gettext or catgets are available (in this order) we + dnl use this. Else we have to fall back to GNU NLS library. + AC_CHECK_LIB(intl, main) + AC_CHECK_LIB(i, main) + CATOBJEXT=NONE + AC_CHECK_FUNC(gettext, + [AC_DEFINE(HAVE_GETTEXT) + md_PATH_PROG(MSGFMT, msgfmt, no)dnl + if test "$MSGFMT" != "no"; then + AC_CHECK_FUNCS(dcgettext) + md_PATH_PROG(GMSGFMT, gmsgfmt, $MSGFMT) + md_PATH_PROG(XGETTEXT, xgettext, xgettext) + CATOBJEXT=.mo + INSTOBJEXT=.mo + DATADIRNAME=lib + fi]) + + if test "$CATOBJEXT" = "NONE"; then + dnl No gettext in C library. Try catgets next. + AC_CHECK_FUNC(catgets, + [AC_DEFINE(HAVE_CATGETS) + INTLOBJS="\$(CATOBJS)" + AC_PATH_PROG(GENCAT, gencat, no)dnl + if test "$GENCAT" != "no"; then + AC_PATH_PROGS(GMSGFMT, [gmsgfmt msgfmt], msgfmt) + md_PATH_PROG(XGETTEXT, xgettext, xgettext) + CATOBJEXT=.cat + INSTOBJEXT=.cat + DATADIRNAME=lib + INTLDEPS="../intl/libintl.a" + INTLLIBS=$INTLDEPS + LIBS=`echo $LIBS | sed -e 's/-lintl//'` + nls_cv_header_intl=intl/libintl.h + nls_cv_header_libgt=intl/libgettext.h + fi]) + fi + + if test "$CATOBJEXT" = "NONE"; then + dnl Neither gettext nor catgets in included in the C library. + dnl Fall back on GNU gettext library. + nls_cv_use_gnu_gettext=yes + fi + fi + + if test "$nls_cv_use_gnu_gettext" = "yes"; then + dnl Mark actions used to generate GNU NLS library. + INTLOBJS="\$(GETTOBJS)" + md_PATH_PROG(MSGFMT, msgfmt, msgfmt) + md_PATH_PROG(GMSGFMT, gmsgfmt, $MSGFMT) + md_PATH_PROG(XGETTEXT, xgettext, xgettext) + AC_SUBST(MSGFMT) + CATOBJEXT=.gmo + INSTOBJEXT=.mo + DATADIRNAME=share + INTLDEPS="../intl/libintl.a" + INTLLIBS=$INTLDEPS + LIBS=`echo $LIBS | sed -e 's/-lintl//'` + nls_cv_header_intl=intl/libintl.h + nls_cv_header_libgt=intl/libgettext.h + fi + + # We need to process the intl/ and po/ directory. + INTLSUB=intl + POSUB=po + else + DATADIRNAME=share + nls_cv_header_intl=intl/libintl.h + nls_cv_header_libgt=intl/libgettext.h + fi + + dnl These rules are solely for the distribution goal. While doing this + dnl we only have to keep exactly one list of the available catalogs + dnl in configure.in. + for lang in $ALL_LINGUAS; do + GMOFILES="$GMOFILES $lang.gmo" + POFILES="$POFILES $lang.po" + done + + dnl Make all variables we use known to autoconf. + AC_SUBST(CATALOGS) + AC_SUBST(CATOBJEXT) + AC_SUBST(DATADIRNAME) + AC_SUBST(GMOFILES) + AC_SUBST(INSTOBJEXT) + AC_SUBST(INTLDEPS) + AC_SUBST(INTLLIBS) + AC_SUBST(INTLOBJS) + AC_SUBST(INTLSUB) + AC_SUBST(POFILES) + AC_SUBST(POSUB) + ]) + +AC_DEFUN(ud_GNU_GETTEXT, + [AC_REQUIRE([AC_PROG_MAKE_SET])dnl + AC_REQUIRE([AC_PROG_CC])dnl + AC_REQUIRE([AC_PROG_RANLIB])dnl + AC_REQUIRE([AC_HEADER_STDC])dnl + AC_REQUIRE([AC_C_CONST])dnl + AC_REQUIRE([AC_C_INLINE])dnl + AC_REQUIRE([AC_TYPE_OFF_T])dnl + AC_REQUIRE([AC_TYPE_SIZE_T])dnl + AC_REQUIRE([AC_FUNC_ALLOCA])dnl + AC_REQUIRE([AC_FUNC_MMAP])dnl + + AC_CHECK_HEADERS([limits.h locale.h nl_types.h malloc.h string.h unistd.h values.h]) + AC_CHECK_FUNCS([getcwd munmap putenv setenv setlocale strchr strcasecmp]) + + if test "${ac_cv_func_stpcpy+set}" != "set"; then + AC_CHECK_FUNCS(stpcpy) + fi + if test "${ac_cv_func_stpcpy}" = "yes"; then + AC_DEFINE(HAVE_STPCPY) + fi + + ud_LC_MESSAGES + ud_WITH_NLS + + if test "x$CATOBJEXT" != "x"; then + if test "x$ALL_LINGUAS" = "x"; then + LINGUAS= + else + AC_MSG_CHECKING(for catalogs to be installed) + NEW_LINGUAS= + for lang in ${LINGUAS=$ALL_LINGUAS}; do + case "$ALL_LINGUAS" in + *$lang*) NEW_LINGUAS="$NEW_LINGUAS $lang" ;; + esac + done + LINGUAS=$NEW_LINGUAS + AC_MSG_RESULT($LINGUAS) + fi + + dnl Construct list of names of catalog files to be constructed. + if test -n "$LINGUAS"; then + for lang in $LINGUAS; do CATALOGS="$CATALOGS $lang$CATOBJEXT"; done + fi + fi + + dnl Determine which catalog format we have (if any is needed) + dnl For now we know about two different formats: + dnl Linux and the normal X/Open format + test -d intl || mkdir intl + if test "$CATOBJEXT" = ".cat"; then + AC_CHECK_HEADER(linux/version.h, msgformat=linux, msgformat=xopen) + + dnl Transform the SED scripts while copying because some dumb SEDs + dnl cannot handle comments. + sed -e '/^#/d' $srcdir/intl/$msgformat-msg.sed > intl/po2msg.sed + fi + dnl po2tbl.sed is always needed. + sed -e '/^#.*[^\\]$/d' -e '/^#$/d' \ + $srcdir/intl/po2tbl.sed.in > intl/po2tbl.sed + + dnl Generate list of files to be processed by xgettext which will + dnl be included in po/Makefile. + test -d po || mkdir po + if test "x$srcdir" != "x."; then + if test "x`echo $srcdir | sed 's@/.*@@'`" = "x"; then + posrcprefix="$srcdir/" + else + posrcprefix="../$srcdir/" + fi + else + posrcprefix="../" + fi + sed -e "/^#/d" -e "/^\$/d" -e "s,.*, $posrcprefix& \\\\," -e "\$s/\(.*\) \\\\/\1/" \ + < $srcdir/po/POTFILES.in > po/POTFILES + ]) + + + +dnl ---------------------------------------------------- +dnl ------------- macros for g10 ----------------------- +dnl ---------------------------------------------------- + + +dnl WK_MSG_PRINT(STRING) +dnl print a message +dnl +define(WK_MSG_PRINT, + [ echo $ac_n "$1"" $ac_c" 1>&AC_FD_MSG + ]) + + +dnl WK_CHECK_TYPEDEF(TYPE, HAVE_NAME) +dnl Check wether a typedef exists and create a #define $2 if it exists +dnl +AC_DEFUN(WK_CHECK_TYPEDEF, + [ AC_MSG_CHECKING(for $1 typedef) + AC_CACHE_VAL(wk_cv_typedef_$1, + [AC_TRY_COMPILE([#include + #include ], [ + #undef $1 + int a = sizeof($1); + ], wk_cv_typedef_$1=yes, wk_cv_typedef_$1=no )]) + AC_MSG_RESULT($wk_cv_typedef_$1) + if test "$wk_cv_typedef_$1" = yes; then + AC_DEFINE($2) + fi + ]) + + +dnl WK_LINK_FILES( SRC, DEST ) +dnl same as AC_LINK_FILES, but collet the files to link in +dnl some special variables and do the link macro +dnl when WK_DO_LINK_FILES is called +dnl This is a workaround for AC_LINK_FILES, because it does not work +dnl correct when using a caching scheme +dnl +define(WK_LINK_FILES, + [ if test "x$wk_link_files_src" = "x"; then + wk_link_files_src="$1" + wk_link_files_dst="$2" + else + wk_link_files_src="$wk_link_files_src $1" + wk_link_files_dst="$wk_link_files_dst $2" + fi + ]) +define(WK_DO_LINK_FILES, + [ AC_LINK_FILES( $wk_link_files_src, $wk_link_files_dst ) + ]) + + +dnl WK_CHECK_ENDIAN +dnl define either LITTLE_ENDIAN_HOST or BIG_ENDIAN_HOST +dnl +define(WK_CHECK_ENDIAN, + [ if test "$cross_compiling" = yes; then + AC_MSG_WARN(cross compiling; assuming little endianess) + fi + AC_MSG_CHECKING(endianess) + AC_CACHE_VAL(wk_cv_c_endian, + [ wk_cv_c_endian=unknown + # See if sys/param.h defines the BYTE_ORDER macro. + AC_TRY_COMPILE([#include + #include ], [ + #if !BYTE_ORDER || !BIG_ENDIAN || !LITTLE_ENDIAN + bogus endian macros + #endif], [# It does; now see whether it defined to BIG_ENDIAN or not. + AC_TRY_COMPILE([#include + #include ], [ + #if BYTE_ORDER != BIG_ENDIAN + not big endian + #endif], wk_cv_c_endian=big, wk_cv_c_endian=big)]) + if test "$wk_cv_c_endian" = unknown; then + AC_TRY_RUN([main () { + /* Are we little or big endian? From Harbison&Steele. */ + union + { + long l; + char c[sizeof (long)]; + } u; + u.l = 1; + exit (u.c[sizeof (long) - 1] == 1); + }], + wk_cv_c_endian=little, + wk_cv_c_endian=big, + wk_cv_c_endian=little + ) + fi + ]) + AC_MSG_RESULT([$wk_cv_c_endian]) + if test "$wk_cv_c_endian" = little; then + AC_DEFINE(LITTLE_ENDIAN_HOST) + else + AC_DEFINE(BIG_ENDIAN_HOST) + fi + ]) + +dnl WK_CHECK_CACHE +dnl +define(WK_CHECK_CACHE, + [ AC_MSG_CHECKING(cached information) + wk_hostcheck="$target" + AC_CACHE_VAL(wk_cv_hostcheck, [ wk_cv_hostcheck="$wk_hostcheck" ]) + if test "$wk_cv_hostcheck" != "$wk_hostcheck"; then + AC_MSG_RESULT(changed) + AC_MSG_WARN(config.cache exists!) + AC_MSG_ERROR(you must do 'make distclean' first to compile for + different target or different parameters.) + else + AC_MSG_RESULT(ok) + fi + ]) + + diff --git a/configure.in b/configure.in index b9b8ccdc0..e9a05956e 100644 --- a/configure.in +++ b/configure.in @@ -37,286 +37,10 @@ if test "$enableval" = y || test "$enableval" = yes; then fi CFLAGS="-g -Wall" -g10_ln_sources= -g10_ln_dests= - -dnl BEGIN=========================== -dnl FIXME: move this to aclocal.m4 -AC_PREREQ(2.5) - -AC_DEFUN(md_TYPE_PTRDIFF_T, - [AC_CACHE_CHECK([for ptrdiff_t], ac_cv_type_ptrdiff_t, - [AC_TRY_COMPILE(stddef.h, [ptrdiff_t p], ac_cv_type_ptrdiff_t=yes, - ac_cv_type_ptrdiff_t=no)]) - if test $ac_cv_type_ptrdiff_t = yes; then - AC_DEFINE(HAVE_PTRDIFF_T) - fi -]) - -AC_DEFUN(md_PATH_PROG, - [AC_PATH_PROG($1,$2,$3)dnl - if echo $$1 | grep openwin > /dev/null; then - echo "WARNING: Do not use OpenWin's $2. (Better remove it.) >&AC_FD_MSG" - ac_cv_path_$1=$2 - $1=$2 - fi -]) - - -dnl --------------------------------------------------------- ## -dnl Use AC_PROG_INSTALL, supplementing it with INSTALL_SCRIPT ## -dnl substitution. ## -dnl --------------------------------------------------------- ## - -AC_DEFUN(fp_PROG_INSTALL, -[AC_PROG_INSTALL -test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL} -m 755' -AC_SUBST(INSTALL_SCRIPT)dnl -]) - -dnl Check NLS options - -AC_DEFUN(ud_LC_MESSAGES, - [if test $ac_cv_header_locale_h = yes; then - AC_CACHE_CHECK([for LC_MESSAGES], ud_cv_val_LC_MESSAGES, - [AC_TRY_LINK([#include ], [return LC_MESSAGES], - ud_cv_val_LC_MESSAGES=yes, ud_cv_val_LC_MESSAGES=no)]) - if test $ud_cv_val_LC_MESSAGES = yes; then - AC_DEFINE(HAVE_LC_MESSAGES) - fi - fi]) - -AC_DEFUN(ud_WITH_NLS, - [AC_MSG_CHECKING([whether NLS is requested]) - dnl Default is enabled NLS - AC_ARG_ENABLE(nls, - [ --disable-nls do not use Native Language Support], - nls_cv_use_nls=$enableval, nls_cv_use_nls=yes) - AC_MSG_RESULT($nls_cv_use_nls) - - dnl If we use NLS figure out what method - if test "$nls_cv_use_nls" = "yes"; then - AC_DEFINE(ENABLE_NLS) - AC_MSG_CHECKING([for explicitly using GNU gettext]) - AC_ARG_WITH(gnu-gettext, - [ --with-gnu-gettext use the GNU gettext library], - nls_cv_force_use_gnu_gettext=$withval, - nls_cv_force_use_gnu_gettext=no) - AC_MSG_RESULT($nls_cv_force_use_gnu_gettext) - - if test "$nls_cv_force_use_gnu_gettext" = "yes"; then - nls_cv_use_gnu_gettext=yes - else - dnl User does not insist on using GNU NLS library. Figure out what - dnl to use. If gettext or catgets are available (in this order) we - dnl use this. Else we have to fall back to GNU NLS library. - AC_CHECK_LIB(intl, main) - AC_CHECK_LIB(i, main) - CATOBJEXT=NONE - AC_CHECK_FUNC(gettext, - [AC_DEFINE(HAVE_GETTEXT) - md_PATH_PROG(MSGFMT, msgfmt, no)dnl - if test "$MSGFMT" != "no"; then - AC_CHECK_FUNCS(dcgettext) - md_PATH_PROG(GMSGFMT, gmsgfmt, $MSGFMT) - md_PATH_PROG(XGETTEXT, xgettext, xgettext) - CATOBJEXT=.mo - INSTOBJEXT=.mo - DATADIRNAME=lib - fi]) - - if test "$CATOBJEXT" = "NONE"; then - dnl No gettext in C library. Try catgets next. - AC_CHECK_FUNC(catgets, - [AC_DEFINE(HAVE_CATGETS) - INTLOBJS="\$(CATOBJS)" - AC_PATH_PROG(GENCAT, gencat, no)dnl - if test "$GENCAT" != "no"; then - AC_PATH_PROGS(GMSGFMT, [gmsgfmt msgfmt], msgfmt) - md_PATH_PROG(XGETTEXT, xgettext, xgettext) - CATOBJEXT=.cat - INSTOBJEXT=.cat - DATADIRNAME=lib - INTLDEPS="../intl/libintl.a" - INTLLIBS=$INTLDEPS - LIBS=`echo $LIBS | sed -e 's/-lintl//'` - nls_cv_header_intl=intl/libintl.h - nls_cv_header_libgt=intl/libgettext.h - fi]) - fi - - if test "$CATOBJEXT" = "NONE"; then - dnl Neither gettext nor catgets in included in the C library. - dnl Fall back on GNU gettext library. - nls_cv_use_gnu_gettext=yes - fi - fi - - if test "$nls_cv_use_gnu_gettext" = "yes"; then - dnl Mark actions used to generate GNU NLS library. - INTLOBJS="\$(GETTOBJS)" - md_PATH_PROG(MSGFMT, msgfmt, msgfmt) - md_PATH_PROG(GMSGFMT, gmsgfmt, $MSGFMT) - md_PATH_PROG(XGETTEXT, xgettext, xgettext) - AC_SUBST(MSGFMT) - CATOBJEXT=.gmo - INSTOBJEXT=.mo - DATADIRNAME=share - INTLDEPS="../intl/libintl.a" - INTLLIBS=$INTLDEPS - LIBS=`echo $LIBS | sed -e 's/-lintl//'` - nls_cv_header_intl=intl/libintl.h - nls_cv_header_libgt=intl/libgettext.h - fi - - # We need to process the intl/ and po/ directory. - INTLSUB=intl - POSUB=po - else - DATADIRNAME=share - nls_cv_header_intl=intl/libintl.h - nls_cv_header_libgt=intl/libgettext.h - fi - - dnl These rules are solely for the distribution goal. While doing this - dnl we only have to keep exactly one list of the available catalogs - dnl in configure.in. - for lang in $ALL_LINGUAS; do - GMOFILES="$GMOFILES $lang.gmo" - POFILES="$POFILES $lang.po" - done - - dnl Make all variables we use known to autoconf. - AC_SUBST(CATALOGS) - AC_SUBST(CATOBJEXT) - AC_SUBST(DATADIRNAME) - AC_SUBST(GMOFILES) - AC_SUBST(INSTOBJEXT) - AC_SUBST(INTLDEPS) - AC_SUBST(INTLLIBS) - AC_SUBST(INTLOBJS) - AC_SUBST(INTLSUB) - AC_SUBST(POFILES) - AC_SUBST(POSUB) - ]) - -AC_DEFUN(ud_GNU_GETTEXT, - [AC_REQUIRE([AC_PROG_MAKE_SET])dnl - AC_REQUIRE([AC_PROG_CC])dnl - AC_REQUIRE([AC_PROG_RANLIB])dnl - AC_REQUIRE([AC_HEADER_STDC])dnl - AC_REQUIRE([AC_C_CONST])dnl - AC_REQUIRE([AC_C_INLINE])dnl - AC_REQUIRE([AC_TYPE_OFF_T])dnl - AC_REQUIRE([AC_TYPE_SIZE_T])dnl - AC_REQUIRE([AC_FUNC_ALLOCA])dnl - AC_REQUIRE([AC_FUNC_MMAP])dnl - - AC_CHECK_HEADERS([limits.h locale.h nl_types.h malloc.h string.h unistd.h values.h]) - AC_CHECK_FUNCS([getcwd munmap putenv setenv setlocale strchr strcasecmp]) - - if test "${ac_cv_func_stpcpy+set}" != "set"; then - AC_CHECK_FUNCS(stpcpy) - fi - if test "${ac_cv_func_stpcpy}" = "yes"; then - AC_DEFINE(HAVE_STPCPY) - fi - - ud_LC_MESSAGES - ud_WITH_NLS - - if test "x$CATOBJEXT" != "x"; then - if test "x$ALL_LINGUAS" = "x"; then - LINGUAS= - else - AC_MSG_CHECKING(for catalogs to be installed) - NEW_LINGUAS= - for lang in ${LINGUAS=$ALL_LINGUAS}; do - case "$ALL_LINGUAS" in - *$lang*) NEW_LINGUAS="$NEW_LINGUAS $lang" ;; - esac - done - LINGUAS=$NEW_LINGUAS - AC_MSG_RESULT($LINGUAS) - fi - - dnl Construct list of names of catalog files to be constructed. - if test -n "$LINGUAS"; then - for lang in $LINGUAS; do CATALOGS="$CATALOGS $lang$CATOBJEXT"; done - fi - fi - - dnl Determine which catalog format we have (if any is needed) - dnl For now we know about two different formats: - dnl Linux and the normal X/Open format - test -d intl || mkdir intl - if test "$CATOBJEXT" = ".cat"; then - AC_CHECK_HEADER(linux/version.h, msgformat=linux, msgformat=xopen) - - dnl Transform the SED scripts while copying because some dumb SEDs - dnl cannot handle comments. - sed -e '/^#/d' $srcdir/intl/$msgformat-msg.sed > intl/po2msg.sed - fi - dnl po2tbl.sed is always needed. - sed -e '/^#.*[^\\]$/d' -e '/^#$/d' \ - $srcdir/intl/po2tbl.sed.in > intl/po2tbl.sed - - dnl Generate list of files to be processed by xgettext which will - dnl be included in po/Makefile. - test -d po || mkdir po - if test "x$srcdir" != "x."; then - if test "x`echo $srcdir | sed 's@/.*@@'`" = "x"; then - posrcprefix="$srcdir/" - else - posrcprefix="../$srcdir/" - fi - else - posrcprefix="../" - fi - sed -e "/^#/d" -e "/^\$/d" -e "s,.*, $posrcprefix& \\\\," -e "\$s/\(.*\) \\\\/\1/" \ - < $srcdir/po/POTFILES.in > po/POTFILES - ]) - -dnl END======================== - -dnl some additional macros - -dnl WK_MSG_PRINT(STRING) -define(WK_MSG_PRINT, -[echo $ac_n "$1"" $ac_c" 1>&AC_FD_MSG ]) - -dnl WK_CHECK_TYPEDEF(TYPE, HAVE_NAME) -AC_DEFUN(WK_CHECK_TYPEDEF, -[AC_MSG_CHECKING(for $1 typedef) -AC_CACHE_VAL(wk_cv_typedef_$1, -[AC_TRY_COMPILE([#include -#include ], [ -#undef $1 -int a = sizeof($1); -], wk_cv_typedef_$1=yes, wk_cv_typedef_$1=no )]) -AC_MSG_RESULT($wk_cv_typedef_$1) -if test "$wk_cv_typedef_$1" = yes; then - AC_DEFINE($2) -fi -]) - - -dnl AC_CANONICAL_SYSTEM -AC_MSG_CHECKING(cached information) -hostcheck="$target" -AC_CACHE_VAL(ac_cv_mpi_hostcheck, [ ac_cv_mpi_hostcheck="$hostcheck" ]) -if test "$ac_cv_mpi_hostcheck" != "$hostcheck"; then - AC_MSG_RESULT(changed) - AC_MSG_WARN(config.cache exists!) - AC_MSG_ERROR(you must do 'make distclean' first to compile for -different target or different parameters.) -else - AC_MSG_RESULT(ok) -fi - +WK_CHECK_CACHE dnl Checks for programs. @@ -349,6 +73,7 @@ AC_HEADER_STDC AC_CHECK_HEADERS(unistd.h) ud_GNU_GETTEXT +WK_LINK_FILES($nls_cv_header_libgt, $nls_cv_header_intl ) dnl Checks for typedefs, structures, and compiler characteristics. @@ -356,42 +81,7 @@ AC_C_CONST AC_C_INLINE AC_TYPE_SIZE_T -dnl autoconf doesn't support a default value for AC_C_BIGENDIAN -dnl so here is the modified version -if test "$cross_compiling" = yes; then - AC_MSG_WARN(cross compiling; assuming little endianess) -fi -AC_CACHE_CHECK(for little endianess, ac_cv_c_littleendian, -[ac_cv_c_littleendian=unknown -# See if sys/param.h defines the BYTE_ORDER macro. -AC_TRY_COMPILE([#include -#include ], [ -#if !BYTE_ORDER || !BIG_ENDIAN || !LITTLE_ENDIAN - bogus endian macros -#endif], [# It does; now see whether it defined to BIG_ENDIAN or not. -AC_TRY_COMPILE([#include -#include ], [ -#if BYTE_ORDER != BIG_ENDIAN - not big endian -#endif], ac_cv_c_littleendian=no, ac_cv_c_littleendian=yes)]) -if test "$ac_cv_c_littleendian" = unknown; then -AC_TRY_RUN([main () { - /* Are we little or big endian? From Harbison&Steele. */ - union - { - long l; - char c[sizeof (long)]; - } u; - u.l = 1; - exit (u.c[sizeof (long) - 1] == 1); -}], ac_cv_c_littleendian=yes, ac_cv_c_littleendian=no, ac_cv_c_littleendian=yes) -fi]) - -if test "$ac_cv_c_littleendian" = yes; then - AC_DEFINE(LITTLE_ENDIAN_HOST) -else - AC_DEFINE(BIG_ENDIAN_HOST) -fi +WK_CHECK_ENDIAN WK_CHECK_TYPEDEF(byte, HAVE_BYTE_TYPEDEF) @@ -439,13 +129,7 @@ else ac_cv_mpi_config_done="" if test -f $srcdir/mpi/config.links ; then . $srcdir/mpi/config.links - if test "x$g10_ln_sources" = "x"; then - g10_ln_sources="$mpi_ln_src" - g10_ln_dests="$mpi_ln_dst" - else - g10_ln_sources="$g10_ln_sources $mpi_ln_src" - g10_ln_dests="$g10_ln_dests $mpi_ln_dst" - fi + WK_LINK_FILES($mpi_ln_src, $mpi_ln_dst) ac_cv_mpi_extra_asm_modules="$mpi_extra_modules" ac_cv_mpi_config_done="yes" AC_MSG_RESULT(done) @@ -487,16 +171,8 @@ fi AC_SUBST(CIPHER_EXTRA_OBJS) AC_SUBST(CIPHER_EXTRA_DIST) -if test "x$g10_ln_sources" = "x"; then - g10_ln_sources="$nls_cv_header_libgt" - g10_ln_dests="$nls_cv_header_intl" -else - g10_ln_sources="$g10_ln_sources $nls_cv_header_libgt" - g10_ln_dests="$g10_ln_dests $nls_cv_header_intl" -fi - -AC_LINK_FILES($g10_ln_sources,$g10_ln_dests) +WK_DO_LINK_FILES AC_OUTPUT([ Makefile