missing-macros: add more m4 macros from gettext, ossp-js, libmikmod, libdnet
SVN-Revision: 24757
This commit is contained in:
		| @@ -9,8 +9,51 @@ Library linking and rpath helper macros. | ||||
|   lib-link.m4 | ||||
|   lib-prefix.m4 | ||||
|  | ||||
| Integer data type test macros. | ||||
|  | ||||
|   intmax.m4 | ||||
|   wint_t.m4 | ||||
|   inttypes-pri.m4 | ||||
|   uintmax_t.m4 | ||||
|   stdint_h.m4 | ||||
|   intdiv0.m4 | ||||
|   inttypes_h.m4 | ||||
|  | ||||
| Program test macro. | ||||
|  | ||||
|   progtest.m4 | ||||
|  | ||||
| GNU libc version test macros. | ||||
|  | ||||
|   glibc2.m4 | ||||
|   glibc21.m4 | ||||
|  | ||||
|  | ||||
| From UCL and LZO: | ||||
| Compiler ACC conformance testing macros. | ||||
|  | ||||
|   acc.m4 | ||||
|  | ||||
|  | ||||
| From OSSP-JS: | ||||
| Test macros for va_copy() implementations. | ||||
|  | ||||
|   va_copy.m4 | ||||
|  | ||||
|  | ||||
| From libmikmod: | ||||
| Feature test macros for the Enlightment Sound Daemon. | ||||
|  | ||||
|   esd.m4 | ||||
|  | ||||
|  | ||||
| From libdnet: | ||||
| Feature test macros for socket api implementations. | ||||
|  | ||||
|   dnet.m4 | ||||
|  | ||||
|  | ||||
| From OpenWrt: | ||||
| Always disable GTK docs. | ||||
|  | ||||
|   fake-gtk-doc-check.m4 | ||||
|   | ||||
							
								
								
									
										320
									
								
								tools/missing-macros/src/m4/dnet.m4
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										320
									
								
								tools/missing-macros/src/m4/dnet.m4
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,320 @@ | ||||
| dnl | ||||
| dnl Check for 4.4 BSD sa_len member in sockaddr struct | ||||
| dnl | ||||
| dnl usage:	AC_DNET_SOCKADDR_SA_LEN | ||||
| dnl results:	HAVE_SOCKADDR_SA_LEN (defined) | ||||
| dnl | ||||
| AC_DEFUN(AC_DNET_SOCKADDR_SA_LEN, | ||||
|     [AC_MSG_CHECKING(for sa_len in sockaddr struct) | ||||
|     AC_CACHE_VAL(ac_cv_dnet_sockaddr_has_sa_len, | ||||
|         AC_TRY_COMPILE([ | ||||
| # ifndef _SOCKADDR_LEN | ||||
| #	define _SOCKADDR_LEN 1  | ||||
| # endif | ||||
| #       include <sys/types.h> | ||||
| #       include <sys/socket.h>], | ||||
|         [u_int i = sizeof(((struct sockaddr *)0)->sa_len)], | ||||
|         ac_cv_dnet_sockaddr_has_sa_len=yes, | ||||
|         ac_cv_dnet_sockaddr_has_sa_len=no)) | ||||
|     AC_MSG_RESULT($ac_cv_dnet_sockaddr_has_sa_len) | ||||
|     if test $ac_cv_dnet_sockaddr_has_sa_len = yes ; then | ||||
|             AC_DEFINE(HAVE_SOCKADDR_SA_LEN, 1, | ||||
|                       [Define if sockaddr struct has sa_len.]) | ||||
|     fi]) | ||||
|  | ||||
| dnl | ||||
| dnl Check for sockaddr_in6 struct in <netinet/in.h> | ||||
| dnl | ||||
| dnl usage:	AC_DNET_SOCKADDR_IN6 | ||||
| dnl results:	HAVE_SOCKADDR_IN6 | ||||
| dnl | ||||
| AC_DEFUN(AC_DNET_SOCKADDR_IN6, | ||||
|     [AC_MSG_CHECKING(for sockaddr_in6 struct in <netinet/in.h>) | ||||
|     AC_CACHE_VAL(ac_cv_dnet_netinet_in_h_has_sockaddr_in6, | ||||
|         AC_TRY_COMPILE([ | ||||
| #       include <sys/types.h> | ||||
| #	include <sys/socket.h> | ||||
| #       include <netinet/in.h>], | ||||
|         [struct sockaddr_in6 sin6; sin6.sin6_family = AF_INET6;], | ||||
| 	ac_cv_dnet_netinet_in_h_has_sockaddr_in6=yes, | ||||
| 	ac_cv_dnet_netinet_in_h_has_sockaddr_in6=no)) | ||||
|     AC_MSG_RESULT($ac_cv_dnet_netinet_in_h_has_sockaddr_in6) | ||||
|     if test $ac_cv_dnet_netinet_in_h_has_sockaddr_in6 = yes ; then | ||||
|         AC_DEFINE(HAVE_SOCKADDR_IN6, 1, | ||||
| 	          [Define if <netinet/in.h> has sockaddr_in6 struct.]) | ||||
|     fi]) | ||||
|  | ||||
| dnl | ||||
| dnl Check for arp_dev member in arpreq struct | ||||
| dnl | ||||
| dnl usage:	AC_DNET_ARPREQ_ARP_DEV | ||||
| dnl results:	HAVE_ARPREQ_ARP_DEV (defined) | ||||
| dnl | ||||
| AC_DEFUN(AC_DNET_ARPREQ_ARP_DEV, | ||||
|     [AC_MSG_CHECKING(for arp_dev in arpreq struct) | ||||
|     AC_CACHE_VAL(ac_cv_dnet_arpreq_has_arp_dev, | ||||
| 	AC_TRY_COMPILE([ | ||||
| #       include <sys/types.h> | ||||
| #	include <sys/socket.h> | ||||
| #	include <net/if_arp.h>], | ||||
| 	[void *p = ((struct arpreq *)0)->arp_dev], | ||||
| 	ac_cv_dnet_arpreq_has_arp_dev=yes, | ||||
| 	ac_cv_dnet_arpreq_has_arp_dev=no)) | ||||
|     AC_MSG_RESULT($ac_cv_dnet_arpreq_has_arp_dev) | ||||
|     if test $ac_cv_dnet_arpreq_has_arp_dev = yes ; then | ||||
| 	AC_DEFINE(HAVE_ARPREQ_ARP_DEV, 1, | ||||
| 		[Define if arpreq struct has arp_dev.]) | ||||
|     fi]) | ||||
|  | ||||
| dnl | ||||
| dnl Check for rt_msghdr struct in <net/route.h> | ||||
| dnl | ||||
| dnl usage:	AC_DNET_ROUTE_RT_MSGHDR | ||||
| dnl results:	HAVE_ROUTE_RT_MSGHDR | ||||
| dnl | ||||
| AC_DEFUN(AC_DNET_ROUTE_RT_MSGHDR, | ||||
|     [AC_MSG_CHECKING(for rt_msghdr struct in <net/route.h>) | ||||
|     AC_CACHE_VAL(ac_cv_dnet_route_h_has_rt_msghdr, | ||||
|         AC_TRY_COMPILE([ | ||||
| #       include <sys/types.h> | ||||
| #       include <sys/socket.h> | ||||
| #       include <net/if.h> | ||||
| #       include <net/route.h>], | ||||
|         [struct rt_msghdr rtm; rtm.rtm_msglen = 0;], | ||||
| 	ac_cv_dnet_route_h_has_rt_msghdr=yes, | ||||
| 	ac_cv_dnet_route_h_has_rt_msghdr=no)) | ||||
|     AC_MSG_RESULT($ac_cv_dnet_route_h_has_rt_msghdr) | ||||
|     if test $ac_cv_dnet_route_h_has_rt_msghdr = yes ; then | ||||
|         AC_DEFINE(HAVE_ROUTE_RT_MSGHDR, 1, | ||||
| 	          [Define if <net/route.h> has rt_msghdr struct.]) | ||||
|     fi]) | ||||
|  | ||||
| dnl | ||||
| dnl Check for the Berkeley Packet Filter | ||||
| dnl | ||||
| dnl usage:	AC_DNET_BSD_BPF | ||||
| dnl results:	HAVE_BSD_BPF | ||||
| dnl | ||||
| AC_DEFUN(AC_DNET_BSD_BPF, | ||||
|     [AC_MSG_CHECKING(for Berkeley Packet Filter) | ||||
|     AC_CACHE_VAL(ac_cv_dnet_bsd_bpf, | ||||
| 	if test -c /dev/bpf0 ; then | ||||
| 	    ac_cv_dnet_bsd_bpf=yes | ||||
| 	else | ||||
| 	    ac_cv_dnet_bsd_bpf=no | ||||
| 	fi) | ||||
|     AC_MSG_RESULT($ac_cv_dnet_bsd_bpf) | ||||
|     if test $ac_cv_dnet_bsd_bpf = yes ; then | ||||
| 	AC_DEFINE(HAVE_BSD_BPF, 1, | ||||
| 		  [Define if you have the Berkeley Packet Filter.]) | ||||
|     fi]) | ||||
|  | ||||
| dnl | ||||
| dnl Check for the Linux /proc filesystem | ||||
| dnl | ||||
| dnl usage:	AC_DNET_LINUX_PROCFS | ||||
| dnl results:	HAVE_LINUX_PROCFS | ||||
| dnl | ||||
| AC_DEFUN(AC_DNET_LINUX_PROCFS, | ||||
|     [AC_MSG_CHECKING(for Linux proc filesystem) | ||||
|     AC_CACHE_VAL(ac_cv_dnet_linux_procfs, | ||||
| 	if test "x`cat /proc/sys/kernel/ostype 2>&-`" = "xLinux" ; then | ||||
| 	    ac_cv_dnet_linux_procfs=yes | ||||
|         else | ||||
| 	    ac_cv_dnet_linux_procfs=no | ||||
| 	fi) | ||||
|     AC_MSG_RESULT($ac_cv_dnet_linux_procfs) | ||||
|     if test $ac_cv_dnet_linux_procfs = yes ; then | ||||
| 	AC_DEFINE(HAVE_LINUX_PROCFS, 1, | ||||
| 		  [Define if you have the Linux /proc filesystem.]) | ||||
|     fi]) | ||||
|  | ||||
| dnl | ||||
| dnl Check for Linux PF_PACKET sockets | ||||
| dnl | ||||
| dnl usage:	AC_DNET_LINUX_PF_PACKET | ||||
| dnl results:	HAVE_LINUX_PF_PACKET | ||||
| dnl | ||||
| AC_DEFUN(AC_DNET_LINUX_PF_PACKET, | ||||
|     [AC_MSG_CHECKING(for Linux PF_PACKET sockets) | ||||
|     AC_CACHE_VAL(ac_cv_dnet_linux_pf_packet, | ||||
| 	if test -f /usr/include/netpacket/packet.h ; then | ||||
| 	    ac_cv_dnet_linux_pf_packet=yes | ||||
| 	else | ||||
| 	    ac_cv_dnet_linux_pf_packet=no | ||||
| 	fi) | ||||
|     AC_MSG_RESULT($ac_cv_dnet_linux_pf_packet) | ||||
|     if test $ac_cv_dnet_linux_pf_packet = yes ; then | ||||
| 	AC_DEFINE(HAVE_LINUX_PF_PACKET, 1, | ||||
| 		  [Define if you have Linux PF_PACKET sockets.]) | ||||
|     fi]) | ||||
|  | ||||
| dnl | ||||
| dnl Check for SNMP MIB2 STREAMS (Solaris only?) | ||||
| dnl | ||||
| dnl usage:      AC_DNET_STREAMS_MIB2 | ||||
| dnl results:    HAVE_STREAMS_MIB2 | ||||
| dnl | ||||
| AC_DEFUN(AC_DNET_STREAMS_MIB2, | ||||
|     [AC_MSG_CHECKING(for SNMP MIB2 STREAMS) | ||||
|     AC_CACHE_VAL(ac_cv_dnet_streams_mib2, | ||||
|         if test -f /usr/include/inet/mib2.h -a -c /dev/ip ; then | ||||
|             ac_cv_dnet_streams_mib2=yes | ||||
|         else | ||||
|             ac_cv_dnet_streams_mib2=no | ||||
|         fi) | ||||
|     AC_MSG_RESULT($ac_cv_dnet_streams_mib2) | ||||
|     if test $ac_cv_dnet_streams_mib2 = yes ; then | ||||
|         AC_DEFINE(HAVE_STREAMS_MIB2, 1, | ||||
|                   [Define if you have SNMP MIB2 STREAMS.]) | ||||
|     fi]) | ||||
|  | ||||
| dnl | ||||
| dnl Check for route(7) STREAMS (UnixWare only?) | ||||
| dnl | ||||
| dnl usage:      AC_DNET_STREAMS_ROUTE | ||||
| dnl results:    HAVE_STREAMS_ROUTE | ||||
| dnl | ||||
| AC_DEFUN(AC_DNET_STREAMS_ROUTE, | ||||
|     [AC_MSG_CHECKING(for route(7) STREAMS) | ||||
|     AC_CACHE_VAL(ac_cv_dnet_streams_route, | ||||
|         if grep RTSTR_SEND /usr/include/net/route.h >/dev/null 2>&1 ; then | ||||
|             ac_cv_dnet_streams_route=yes | ||||
|         else | ||||
|             ac_cv_dnet_streams_route=no | ||||
|         fi) | ||||
|     AC_MSG_RESULT($ac_cv_dnet_streams_route) | ||||
|     if test $ac_cv_dnet_streams_route = yes ; then | ||||
|         AC_DEFINE(HAVE_STREAMS_ROUTE, 1, | ||||
|                   [Define if you have route(7) STREAMS.]) | ||||
|     fi]) | ||||
|  | ||||
| dnl | ||||
| dnl Check for arp(7) ioctls | ||||
| dnl | ||||
| dnl usage:      AC_DNET_IOCTL_ARP | ||||
| dnl results:    HAVE_IOCTL_ARP | ||||
| dnl | ||||
| AC_DEFUN(AC_DNET_IOCTL_ARP, | ||||
|     [AC_MSG_CHECKING(for arp(7) ioctls) | ||||
|     AC_CACHE_VAL(ac_cv_dnet_ioctl_arp, | ||||
| 	AC_EGREP_CPP(werd, [ | ||||
| #	include <sys/types.h> | ||||
| #	define BSD_COMP | ||||
| #	include <sys/ioctl.h> | ||||
| #	ifdef SIOCGARP | ||||
| 	werd | ||||
| #	endif], | ||||
| 	ac_cv_dnet_ioctl_arp=yes, | ||||
| 	ac_cv_dnet_ioctl_arp=no)) | ||||
|     case "$host_os" in | ||||
|     irix*) | ||||
|         ac_cv_dnet_ioctl_arp=no ;; | ||||
|     esac | ||||
|     AC_MSG_RESULT($ac_cv_dnet_ioctl_arp) | ||||
|     if test $ac_cv_dnet_ioctl_arp = yes ; then | ||||
|         AC_DEFINE(HAVE_IOCTL_ARP, 1, | ||||
|                   [Define if you have arp(7) ioctls.]) | ||||
|     fi]) | ||||
|  | ||||
| dnl | ||||
| dnl Check for raw IP sockets ip_{len,off} host byte ordering | ||||
| dnl | ||||
| dnl usage:      AC_DNET_RAWIP_HOST_OFFLEN | ||||
| dnl results:    HAVE_RAWIP_HOST_OFFLEN | ||||
| dnl | ||||
| AC_DEFUN(AC_DNET_RAWIP_HOST_OFFLEN, | ||||
|     [AC_MSG_CHECKING([for raw IP sockets ip_{len,off} host byte ordering]) | ||||
|     AC_CACHE_VAL(ac_cv_dnet_rawip_host_offlen, [ | ||||
| 	case "$host_os" in | ||||
| 	*openbsd*) | ||||
| 	    ac_cv_dnet_rawip_host_offlen=no ;; | ||||
| 	*bsd*|*osf*|*unixware*) | ||||
| 	    ac_cv_dnet_rawip_host_offlen=yes ;; | ||||
| 	*) | ||||
| 	    ac_cv_dnet_rawip_host_offlen=no ;; | ||||
| 	esac]) | ||||
|     AC_MSG_RESULT($ac_cv_dnet_rawip_host_offlen) | ||||
|     if test $ac_cv_dnet_rawip_host_offlen = yes ; then | ||||
|         AC_DEFINE(HAVE_RAWIP_HOST_OFFLEN, 1, | ||||
|                   [Define if raw IP sockets require host byte ordering for ip_off, ip_len.]) | ||||
|     fi]) | ||||
|  | ||||
| dnl | ||||
| dnl Check for cooked raw IP sockets | ||||
| dnl | ||||
| dnl usage:      AC_DNET_RAWIP_COOKED | ||||
| dnl results:    HAVE_RAWIP_COOKED | ||||
| dnl | ||||
| AC_DEFUN(AC_DNET_RAWIP_COOKED, | ||||
|     [AC_MSG_CHECKING(for cooked raw IP sockets) | ||||
|     AC_CACHE_VAL(ac_cv_dnet_rawip_cooked, [ | ||||
| 	case "$host_os" in | ||||
| 	solaris*|irix*) | ||||
| 	    ac_cv_dnet_rawip_cooked=yes ;; | ||||
| 	*) | ||||
| 	    ac_cv_dnet_rawip_cooked=no ;; | ||||
| 	esac]) | ||||
|     AC_MSG_RESULT($ac_cv_dnet_rawip_cooked) | ||||
|     if test $ac_cv_dnet_rawip_cooked = yes ; then | ||||
|         AC_DEFINE(HAVE_RAWIP_COOKED, 1, | ||||
|                   [Define if you have cooked raw IP sockets.]) | ||||
|     fi]) | ||||
|  | ||||
| dnl | ||||
| dnl AC_LBL_LIBRARY_NET | ||||
| dnl | ||||
| dnl This test is for network applications that need socket() and | ||||
| dnl gethostbyname() -ish functions.  Under Solaris, those applications | ||||
| dnl need to link with "-lsocket -lnsl".  Under IRIX, they need to link | ||||
| dnl with "-lnsl" but should *not* link with "-lsocket" because | ||||
| dnl libsocket.a breaks a number of things (for instance: | ||||
| dnl gethostbyname() under IRIX 5.2, and snoop sockets under most | ||||
| dnl versions of IRIX). | ||||
| dnl | ||||
| dnl Unfortunately, many application developers are not aware of this, | ||||
| dnl and mistakenly write tests that cause -lsocket to be used under | ||||
| dnl IRIX.  It is also easy to write tests that cause -lnsl to be used | ||||
| dnl under operating systems where neither are necessary (or useful), | ||||
| dnl such as SunOS 4.1.4, which uses -lnsl for TLI. | ||||
| dnl | ||||
| dnl This test exists so that every application developer does not test | ||||
| dnl this in a different, and subtly broken fashion. | ||||
|  | ||||
| dnl It has been argued that this test should be broken up into two | ||||
| dnl seperate tests, one for the resolver libraries, and one for the | ||||
| dnl libraries necessary for using Sockets API. Unfortunately, the two | ||||
| dnl are carefully intertwined and allowing the autoconf user to use | ||||
| dnl them independantly potentially results in unfortunate ordering | ||||
| dnl dependancies -- as such, such component macros would have to | ||||
| dnl carefully use indirection and be aware if the other components were | ||||
| dnl executed. Since other autoconf macros do not go to this trouble, | ||||
| dnl and almost no applications use sockets without the resolver, this | ||||
| dnl complexity has not been implemented. | ||||
| dnl | ||||
| dnl The check for libresolv is in case you are attempting to link | ||||
| dnl statically and happen to have a libresolv.a lying around (and no | ||||
| dnl libnsl.a). | ||||
| dnl | ||||
| AC_DEFUN(AC_LBL_LIBRARY_NET, [ | ||||
|     # Most operating systems have gethostbyname() in the default searched | ||||
|     # libraries (i.e. libc): | ||||
|     AC_CHECK_FUNC(gethostbyname, , | ||||
|         # Some OSes (eg. Solaris) place it in libnsl: | ||||
|         AC_CHECK_LIB(nsl, gethostbyname, ,  | ||||
|             # Some strange OSes (SINIX) have it in libsocket: | ||||
|             AC_CHECK_LIB(socket, gethostbyname, , | ||||
|                 # Unfortunately libsocket sometimes depends on libnsl. | ||||
|                 # AC_CHECK_LIB's API is essentially broken so the | ||||
|                 # following ugliness is necessary: | ||||
|                 AC_CHECK_LIB(socket, gethostbyname, | ||||
|                     LIBS="-lsocket -lnsl $LIBS", | ||||
|                     AC_CHECK_LIB(resolv, gethostbyname), | ||||
|                     -lnsl)))) | ||||
|     AC_CHECK_FUNC(socket, , AC_CHECK_LIB(socket, socket, , | ||||
|         AC_CHECK_LIB(socket, socket, LIBS="-lsocket -lnsl $LIBS", , | ||||
|             -lnsl))) | ||||
|     # DLPI needs putmsg under HPUX so test for -lstr while we're at it | ||||
|     AC_CHECK_LIB(str, putmsg) | ||||
|     ]) | ||||
|  | ||||
							
								
								
									
										195
									
								
								tools/missing-macros/src/m4/esd.m4
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										195
									
								
								tools/missing-macros/src/m4/esd.m4
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,195 @@ | ||||
| # Configure paths for ESD | ||||
| # Manish Singh    98-9-30 | ||||
| # stolen back from Frank Belew | ||||
| # stolen from Manish Singh | ||||
| # Shamelessly stolen from Owen Taylor | ||||
|  | ||||
| dnl AM_PATH_ESD([MINIMUM-VERSION, [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]]]) | ||||
| dnl Test for ESD, and define ESD_CFLAGS and ESD_LIBS | ||||
| dnl | ||||
| AC_DEFUN(AM_PATH_ESD, | ||||
| [dnl  | ||||
| dnl Get the cflags and libraries from the esd-config script | ||||
| dnl | ||||
| AC_ARG_WITH(esd-prefix,[  --with-esd-prefix=PFX   Prefix where ESD is installed (optional)], | ||||
|             esd_prefix="$withval", esd_prefix="") | ||||
| AC_ARG_WITH(esd-exec-prefix,[  --with-esd-exec-prefix=PFX Exec prefix where ESD is installed (optional)], | ||||
|             esd_exec_prefix="$withval", esd_exec_prefix="") | ||||
| AC_ARG_ENABLE(esdtest, [  --disable-esdtest       Do not try to compile and run a test ESD program], | ||||
| 		    , enable_esdtest=yes) | ||||
|  | ||||
|   if test x$esd_exec_prefix != x ; then | ||||
|      esd_args="$esd_args --exec-prefix=$esd_exec_prefix" | ||||
|      if test x${ESD_CONFIG+set} != xset ; then | ||||
|         ESD_CONFIG=$esd_exec_prefix/bin/esd-config | ||||
|      fi | ||||
|   fi | ||||
|   if test x$esd_prefix != x ; then | ||||
|      esd_args="$esd_args --prefix=$esd_prefix" | ||||
|      if test x${ESD_CONFIG+set} != xset ; then | ||||
|         ESD_CONFIG=$esd_prefix/bin/esd-config | ||||
|      fi | ||||
|   fi | ||||
|  | ||||
|   AC_PATH_PROG(ESD_CONFIG, esd-config, no) | ||||
|   min_esd_version=ifelse([$1], ,0.2.7,$1) | ||||
|   AC_MSG_CHECKING(for ESD - version >= $min_esd_version) | ||||
|   no_esd="" | ||||
|   if test "$ESD_CONFIG" = "no" ; then | ||||
|     no_esd=yes | ||||
|   else | ||||
|     AC_LANG_SAVE | ||||
|     AC_LANG_C | ||||
|     ESD_CFLAGS=`$ESD_CONFIG $esdconf_args --cflags` | ||||
|     ESD_LIBS=`$ESD_CONFIG $esdconf_args --libs` | ||||
|  | ||||
|     esd_major_version=`$ESD_CONFIG $esd_args --version | \ | ||||
|            sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\1/'` | ||||
|     esd_minor_version=`$ESD_CONFIG $esd_args --version | \ | ||||
|            sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\2/'` | ||||
|     esd_micro_version=`$ESD_CONFIG $esd_config_args --version | \ | ||||
|            sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\3/'` | ||||
|     if test "x$enable_esdtest" = "xyes" ; then | ||||
|       ac_save_CFLAGS="$CFLAGS" | ||||
|       ac_save_LIBS="$LIBS" | ||||
|       CFLAGS="$CFLAGS $ESD_CFLAGS" | ||||
|       LIBS="$LIBS $ESD_LIBS" | ||||
| dnl | ||||
| dnl Now check if the installed ESD is sufficiently new. (Also sanity | ||||
| dnl checks the results of esd-config to some extent | ||||
| dnl | ||||
|       rm -f conf.esdtest | ||||
|       AC_TRY_RUN([ | ||||
| #include <stdio.h> | ||||
| #include <stdlib.h> | ||||
| #include <string.h> | ||||
| #include <esd.h> | ||||
|  | ||||
| char* | ||||
| my_strdup (char *str) | ||||
| { | ||||
|   char *new_str; | ||||
|    | ||||
|   if (str) | ||||
|     { | ||||
|       new_str = malloc ((strlen (str) + 1) * sizeof(char)); | ||||
|       strcpy (new_str, str); | ||||
|     } | ||||
|   else | ||||
|     new_str = NULL; | ||||
|    | ||||
|   return new_str; | ||||
| } | ||||
|  | ||||
| int main () | ||||
| { | ||||
|   int major, minor, micro; | ||||
|   char *tmp_version; | ||||
|  | ||||
|   system ("touch conf.esdtest"); | ||||
|  | ||||
|   /* HP/UX 9 (%@#!) writes to sscanf strings */ | ||||
|   tmp_version = my_strdup("$min_esd_version"); | ||||
|   if (sscanf(tmp_version, "%d.%d.%d", &major, &minor, µ) != 3) { | ||||
|      printf("%s, bad version string\n", "$min_esd_version"); | ||||
|      exit(1); | ||||
|    } | ||||
|  | ||||
|    if (($esd_major_version > major) || | ||||
|       (($esd_major_version == major) && ($esd_minor_version > minor)) || | ||||
|       (($esd_major_version == major) && ($esd_minor_version == minor) && ($esd_micro_version >= micro))) | ||||
|     { | ||||
|       return 0; | ||||
|     } | ||||
|   else | ||||
|     { | ||||
|       printf("\n*** 'esd-config --version' returned %d.%d.%d, but the minimum version\n", $esd_major_version, $esd_minor_version, $esd_micro_version); | ||||
|       printf("*** of ESD required is %d.%d.%d. If esd-config is correct, then it is\n", major, minor, micro); | ||||
|       printf("*** best to upgrade to the required version.\n"); | ||||
|       printf("*** If esd-config was wrong, set the environment variable ESD_CONFIG\n"); | ||||
|       printf("*** to point to the correct copy of esd-config, and remove the file\n"); | ||||
|       printf("*** config.cache before re-running configure\n"); | ||||
|       return 1; | ||||
|     } | ||||
| } | ||||
|  | ||||
| ],, no_esd=yes,[echo $ac_n "cross compiling; assumed OK... $ac_c"]) | ||||
|        CFLAGS="$ac_save_CFLAGS" | ||||
|        LIBS="$ac_save_LIBS" | ||||
|        AC_LANG_RESTORE | ||||
|      fi | ||||
|   fi | ||||
|   if test "x$no_esd" = x ; then | ||||
|      AC_MSG_RESULT(yes) | ||||
|      ifelse([$2], , :, [$2])      | ||||
|   else | ||||
|      AC_MSG_RESULT(no) | ||||
|      if test "$ESD_CONFIG" = "no" ; then | ||||
|        echo "*** The esd-config script installed by ESD could not be found" | ||||
|        echo "*** If ESD was installed in PREFIX, make sure PREFIX/bin is in" | ||||
|        echo "*** your path, or set the ESD_CONFIG environment variable to the" | ||||
|        echo "*** full path to esd-config." | ||||
|      else | ||||
|        if test -f conf.esdtest ; then | ||||
|         : | ||||
|        else | ||||
|           echo "*** Could not run ESD test program, checking why..." | ||||
|           CFLAGS="$CFLAGS $ESD_CFLAGS" | ||||
|           LIBS="$LIBS $ESD_LIBS" | ||||
|           AC_LANG_SAVE | ||||
|           AC_LANG_C | ||||
|           AC_TRY_LINK([ | ||||
| #include <stdio.h> | ||||
| #include <esd.h> | ||||
| ],      [ return 0; ], | ||||
|         [ echo "*** The test program compiled, but did not run. This usually means" | ||||
|           echo "*** that the run-time linker is not finding ESD or finding the wrong" | ||||
|           echo "*** version of ESD. If it is not finding ESD, you'll need to set your" | ||||
|           echo "*** LD_LIBRARY_PATH environment variable, or edit /etc/ld.so.conf to point" | ||||
|           echo "*** to the installed location  Also, make sure you have run ldconfig if that" | ||||
|           echo "*** is required on your system" | ||||
| 	  echo "***" | ||||
|           echo "*** If you have an old version installed, it is best to remove it, although" | ||||
|           echo "*** you may also be able to get things to work by modifying LD_LIBRARY_PATH"], | ||||
|         [ echo "*** The test program failed to compile or link. See the file config.log for the" | ||||
|           echo "*** exact error that occured. This usually means ESD was incorrectly installed" | ||||
|           echo "*** or that you have moved ESD since it was installed. In the latter case, you" | ||||
|           echo "*** may want to edit the esd-config script: $ESD_CONFIG" ]) | ||||
|           CFLAGS="$ac_save_CFLAGS" | ||||
|           LIBS="$ac_save_LIBS" | ||||
|           AC_LANG_RESTORE | ||||
|        fi | ||||
|      fi | ||||
|      ESD_CFLAGS="" | ||||
|      ESD_LIBS="" | ||||
|      ifelse([$3], , :, [$3]) | ||||
|   fi | ||||
|   AC_SUBST(ESD_CFLAGS) | ||||
|   AC_SUBST(ESD_LIBS) | ||||
|   rm -f conf.esdtest | ||||
| ]) | ||||
|  | ||||
| dnl AM_ESD_SUPPORTS_MULTIPLE_RECORD([ACTION-IF-SUPPORTS [, ACTION-IF-NOT-SUPPORTS]]) | ||||
| dnl Test, whether esd supports multiple recording clients (version >=0.2.21) | ||||
| dnl | ||||
| AC_DEFUN(AM_ESD_SUPPORTS_MULTIPLE_RECORD, | ||||
| [dnl | ||||
|   AC_MSG_NOTICE([whether installed esd version supports multiple recording clients]) | ||||
|   ac_save_ESD_CFLAGS="$ESD_CFLAGS" | ||||
|   ac_save_ESD_LIBS="$ESD_LIBS" | ||||
|   AM_PATH_ESD(0.2.21, | ||||
|     ifelse([$1], , [ | ||||
|       AM_CONDITIONAL(ESD_SUPPORTS_MULTIPLE_RECORD, true) | ||||
|       AC_DEFINE(ESD_SUPPORTS_MULTIPLE_RECORD, 1, | ||||
| 	[Define if you have esound with support of multiple recording clients.])], | ||||
|     [$1]), | ||||
|     ifelse([$2], , [AM_CONDITIONAL(ESD_SUPPORTS_MULTIPLE_RECORD, false)], [$2]) | ||||
|     if test "x$ac_save_ESD_CFLAGS" != x ; then | ||||
|        ESD_CFLAGS="$ac_save_ESD_CFLAGS" | ||||
|     fi | ||||
|     if test "x$ac_save_ESD_LIBS" != x ; then | ||||
|        ESD_LIBS="$ac_save_ESD_LIBS" | ||||
|     fi | ||||
|   ) | ||||
| ]) | ||||
|  | ||||
							
								
								
									
										5
									
								
								tools/missing-macros/src/m4/fake-gtk-doc-check.m4
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										5
									
								
								tools/missing-macros/src/m4/fake-gtk-doc-check.m4
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,5 @@ | ||||
| dnl fake-gtk-doc-check.m4 serial 1 (OpenWrt) | ||||
| dnl Provide a fake GTK_DOC_CHECK macros which | ||||
| dnl always defines false. | ||||
|  | ||||
| AC_DEFUN([GTK_DOC_CHECK],[AM_CONDITIONAL(ENABLE_GTK_DOC,false)]) | ||||
							
								
								
									
										30
									
								
								tools/missing-macros/src/m4/glibc2.m4
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										30
									
								
								tools/missing-macros/src/m4/glibc2.m4
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,30 @@ | ||||
| # glibc2.m4 serial 2 | ||||
| dnl Copyright (C) 2000-2002, 2004, 2008-2010 Free Software Foundation, Inc. | ||||
| dnl This file is free software; the Free Software Foundation | ||||
| dnl gives unlimited permission to copy and/or distribute it, | ||||
| dnl with or without modifications, as long as this notice is preserved. | ||||
|  | ||||
| # Test for the GNU C Library, version 2.0 or newer. | ||||
| # From Bruno Haible. | ||||
|  | ||||
| AC_DEFUN([gt_GLIBC2], | ||||
|   [ | ||||
|     AC_CACHE_CHECK([whether we are using the GNU C Library 2 or newer], | ||||
|       [ac_cv_gnu_library_2], | ||||
|       [AC_EGREP_CPP([Lucky GNU user], | ||||
|         [ | ||||
| #include <features.h> | ||||
| #ifdef __GNU_LIBRARY__ | ||||
|  #if (__GLIBC__ >= 2) | ||||
|   Lucky GNU user | ||||
|  #endif | ||||
| #endif | ||||
|         ], | ||||
|         [ac_cv_gnu_library_2=yes], | ||||
|         [ac_cv_gnu_library_2=no]) | ||||
|       ] | ||||
|     ) | ||||
|     AC_SUBST([GLIBC2]) | ||||
|     GLIBC2="$ac_cv_gnu_library_2" | ||||
|   ] | ||||
| ) | ||||
							
								
								
									
										30
									
								
								tools/missing-macros/src/m4/glibc21.m4
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										30
									
								
								tools/missing-macros/src/m4/glibc21.m4
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,30 @@ | ||||
| # glibc21.m4 serial 4 | ||||
| dnl Copyright (C) 2000-2002, 2004, 2008-2010 Free Software Foundation, Inc. | ||||
| dnl This file is free software; the Free Software Foundation | ||||
| dnl gives unlimited permission to copy and/or distribute it, | ||||
| dnl with or without modifications, as long as this notice is preserved. | ||||
|  | ||||
| # Test for the GNU C Library, version 2.1 or newer. | ||||
| # From Bruno Haible. | ||||
|  | ||||
| AC_DEFUN([gl_GLIBC21], | ||||
|   [ | ||||
|     AC_CACHE_CHECK([whether we are using the GNU C Library 2.1 or newer], | ||||
|       [ac_cv_gnu_library_2_1], | ||||
|       [AC_EGREP_CPP([Lucky GNU user], | ||||
|         [ | ||||
| #include <features.h> | ||||
| #ifdef __GNU_LIBRARY__ | ||||
|  #if (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 1) || (__GLIBC__ > 2) | ||||
|   Lucky GNU user | ||||
|  #endif | ||||
| #endif | ||||
|         ], | ||||
|         [ac_cv_gnu_library_2_1=yes], | ||||
|         [ac_cv_gnu_library_2_1=no]) | ||||
|       ] | ||||
|     ) | ||||
|     AC_SUBST([GLIBC21]) | ||||
|     GLIBC21="$ac_cv_gnu_library_2_1" | ||||
|   ] | ||||
| ) | ||||
							
								
								
									
										84
									
								
								tools/missing-macros/src/m4/intdiv0.m4
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										84
									
								
								tools/missing-macros/src/m4/intdiv0.m4
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,84 @@ | ||||
| # intdiv0.m4 serial 3 (gettext-0.18) | ||||
| dnl Copyright (C) 2002, 2007-2010 Free Software Foundation, Inc. | ||||
| dnl This file is free software; the Free Software Foundation | ||||
| dnl gives unlimited permission to copy and/or distribute it, | ||||
| dnl with or without modifications, as long as this notice is preserved. | ||||
|  | ||||
| dnl From Bruno Haible. | ||||
|  | ||||
| AC_DEFUN([gt_INTDIV0], | ||||
| [ | ||||
|   AC_REQUIRE([AC_PROG_CC])dnl | ||||
|   AC_REQUIRE([AC_CANONICAL_HOST])dnl | ||||
|  | ||||
|   AC_CACHE_CHECK([whether integer division by zero raises SIGFPE], | ||||
|     gt_cv_int_divbyzero_sigfpe, | ||||
|     [ | ||||
|       gt_cv_int_divbyzero_sigfpe= | ||||
| changequote(,)dnl | ||||
|       case "$host_os" in | ||||
|         macos* | darwin[6-9]* | darwin[1-9][0-9]*) | ||||
|           # On MacOS X 10.2 or newer, just assume the same as when cross- | ||||
|           # compiling. If we were to perform the real test, 1 Crash Report | ||||
|           # dialog window would pop up. | ||||
|           case "$host_cpu" in | ||||
|             i[34567]86 | x86_64) | ||||
|               gt_cv_int_divbyzero_sigfpe="guessing yes" ;; | ||||
|           esac | ||||
|           ;; | ||||
|       esac | ||||
| changequote([,])dnl | ||||
|       if test -z "$gt_cv_int_divbyzero_sigfpe"; then | ||||
|         AC_TRY_RUN([ | ||||
| #include <stdlib.h> | ||||
| #include <signal.h> | ||||
|  | ||||
| static void | ||||
| sigfpe_handler (int sig) | ||||
| { | ||||
|   /* Exit with code 0 if SIGFPE, with code 1 if any other signal.  */ | ||||
|   exit (sig != SIGFPE); | ||||
| } | ||||
|  | ||||
| int x = 1; | ||||
| int y = 0; | ||||
| int z; | ||||
| int nan; | ||||
|  | ||||
| int main () | ||||
| { | ||||
|   signal (SIGFPE, sigfpe_handler); | ||||
| /* IRIX and AIX (when "xlc -qcheck" is used) yield signal SIGTRAP.  */ | ||||
| #if (defined (__sgi) || defined (_AIX)) && defined (SIGTRAP) | ||||
|   signal (SIGTRAP, sigfpe_handler); | ||||
| #endif | ||||
| /* Linux/SPARC yields signal SIGILL.  */ | ||||
| #if defined (__sparc__) && defined (__linux__) | ||||
|   signal (SIGILL, sigfpe_handler); | ||||
| #endif | ||||
|  | ||||
|   z = x / y; | ||||
|   nan = y / y; | ||||
|   exit (1); | ||||
| } | ||||
| ], [gt_cv_int_divbyzero_sigfpe=yes], [gt_cv_int_divbyzero_sigfpe=no], | ||||
|           [ | ||||
|             # Guess based on the CPU. | ||||
| changequote(,)dnl | ||||
|             case "$host_cpu" in | ||||
|               alpha* | i[34567]86 | x86_64 | m68k | s390*) | ||||
|                 gt_cv_int_divbyzero_sigfpe="guessing yes";; | ||||
|               *) | ||||
|                 gt_cv_int_divbyzero_sigfpe="guessing no";; | ||||
|             esac | ||||
| changequote([,])dnl | ||||
|           ]) | ||||
|       fi | ||||
|     ]) | ||||
|   case "$gt_cv_int_divbyzero_sigfpe" in | ||||
|     *yes) value=1;; | ||||
|     *) value=0;; | ||||
|   esac | ||||
|   AC_DEFINE_UNQUOTED([INTDIV0_RAISES_SIGFPE], [$value], | ||||
|     [Define if integer division by zero raises signal SIGFPE.]) | ||||
| ]) | ||||
							
								
								
									
										33
									
								
								tools/missing-macros/src/m4/intmax.m4
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										33
									
								
								tools/missing-macros/src/m4/intmax.m4
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,33 @@ | ||||
| # intmax.m4 serial 5 (gettext-0.18) | ||||
| dnl Copyright (C) 2002-2005, 2008-2010 Free Software Foundation, Inc. | ||||
| dnl This file is free software; the Free Software Foundation | ||||
| dnl gives unlimited permission to copy and/or distribute it, | ||||
| dnl with or without modifications, as long as this notice is preserved. | ||||
|  | ||||
| dnl From Bruno Haible. | ||||
| dnl Test whether the system has the 'intmax_t' type, but don't attempt to | ||||
| dnl find a replacement if it is lacking. | ||||
|  | ||||
| AC_DEFUN([gt_TYPE_INTMAX_T], | ||||
| [ | ||||
|   AC_REQUIRE([gl_AC_HEADER_INTTYPES_H]) | ||||
|   AC_REQUIRE([gl_AC_HEADER_STDINT_H]) | ||||
|   AC_CACHE_CHECK([for intmax_t], [gt_cv_c_intmax_t], | ||||
|     [AC_TRY_COMPILE([ | ||||
| #include <stddef.h> | ||||
| #include <stdlib.h> | ||||
| #if HAVE_STDINT_H_WITH_UINTMAX | ||||
| #include <stdint.h> | ||||
| #endif | ||||
| #if HAVE_INTTYPES_H_WITH_UINTMAX | ||||
| #include <inttypes.h> | ||||
| #endif | ||||
| ],     [intmax_t x = -1; | ||||
|         return !x;], | ||||
|        [gt_cv_c_intmax_t=yes], | ||||
|        [gt_cv_c_intmax_t=no])]) | ||||
|   if test $gt_cv_c_intmax_t = yes; then | ||||
|     AC_DEFINE([HAVE_INTMAX_T], [1], | ||||
|       [Define if you have the 'intmax_t' type in <stdint.h> or <inttypes.h>.]) | ||||
|   fi | ||||
| ]) | ||||
							
								
								
									
										36
									
								
								tools/missing-macros/src/m4/inttypes-pri.m4
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										36
									
								
								tools/missing-macros/src/m4/inttypes-pri.m4
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,36 @@ | ||||
| # inttypes-pri.m4 serial 6 (gettext-0.18) | ||||
| dnl Copyright (C) 1997-2002, 2006, 2008-2010 Free Software Foundation, Inc. | ||||
| dnl This file is free software; the Free Software Foundation | ||||
| dnl gives unlimited permission to copy and/or distribute it, | ||||
| dnl with or without modifications, as long as this notice is preserved. | ||||
|  | ||||
| dnl From Bruno Haible. | ||||
|  | ||||
| AC_PREREQ([2.52]) | ||||
|  | ||||
| # Define PRI_MACROS_BROKEN if <inttypes.h> exists and defines the PRI* | ||||
| # macros to non-string values.  This is the case on AIX 4.3.3. | ||||
|  | ||||
| AC_DEFUN([gt_INTTYPES_PRI], | ||||
| [ | ||||
|   AC_CHECK_HEADERS([inttypes.h]) | ||||
|   if test $ac_cv_header_inttypes_h = yes; then | ||||
|     AC_CACHE_CHECK([whether the inttypes.h PRIxNN macros are broken], | ||||
|       [gt_cv_inttypes_pri_broken], | ||||
|       [ | ||||
|         AC_TRY_COMPILE([#include <inttypes.h> | ||||
| #ifdef PRId32 | ||||
| char *p = PRId32; | ||||
| #endif | ||||
| ], [], [gt_cv_inttypes_pri_broken=no], [gt_cv_inttypes_pri_broken=yes]) | ||||
|       ]) | ||||
|   fi | ||||
|   if test "$gt_cv_inttypes_pri_broken" = yes; then | ||||
|     AC_DEFINE_UNQUOTED([PRI_MACROS_BROKEN], [1], | ||||
|       [Define if <inttypes.h> exists and defines unusable PRI* macros.]) | ||||
|     PRI_MACROS_BROKEN=1 | ||||
|   else | ||||
|     PRI_MACROS_BROKEN=0 | ||||
|   fi | ||||
|   AC_SUBST([PRI_MACROS_BROKEN]) | ||||
| ]) | ||||
							
								
								
									
										26
									
								
								tools/missing-macros/src/m4/inttypes_h.m4
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										26
									
								
								tools/missing-macros/src/m4/inttypes_h.m4
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,26 @@ | ||||
| # inttypes_h.m4 serial 9 | ||||
| dnl Copyright (C) 1997-2004, 2006, 2008-2010 Free Software Foundation, Inc. | ||||
| dnl This file is free software; the Free Software Foundation | ||||
| dnl gives unlimited permission to copy and/or distribute it, | ||||
| dnl with or without modifications, as long as this notice is preserved. | ||||
|  | ||||
| dnl From Paul Eggert. | ||||
|  | ||||
| # Define HAVE_INTTYPES_H_WITH_UINTMAX if <inttypes.h> exists, | ||||
| # doesn't clash with <sys/types.h>, and declares uintmax_t. | ||||
|  | ||||
| AC_DEFUN([gl_AC_HEADER_INTTYPES_H], | ||||
| [ | ||||
|   AC_CACHE_CHECK([for inttypes.h], [gl_cv_header_inttypes_h], | ||||
|   [AC_TRY_COMPILE( | ||||
|     [#include <sys/types.h> | ||||
| #include <inttypes.h>], | ||||
|     [uintmax_t i = (uintmax_t) -1; return !i;], | ||||
|     [gl_cv_header_inttypes_h=yes], | ||||
|     [gl_cv_header_inttypes_h=no])]) | ||||
|   if test $gl_cv_header_inttypes_h = yes; then | ||||
|     AC_DEFINE_UNQUOTED([HAVE_INTTYPES_H_WITH_UINTMAX], [1], | ||||
|       [Define if <inttypes.h> exists, doesn't clash with <sys/types.h>, | ||||
|        and declares uintmax_t. ]) | ||||
|   fi | ||||
| ]) | ||||
							
								
								
									
										92
									
								
								tools/missing-macros/src/m4/progtest.m4
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										92
									
								
								tools/missing-macros/src/m4/progtest.m4
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,92 @@ | ||||
| # progtest.m4 serial 6 (gettext-0.18) | ||||
| dnl Copyright (C) 1996-2003, 2005, 2008-2010 Free Software Foundation, Inc. | ||||
| dnl This file is free software; the Free Software Foundation | ||||
| dnl gives unlimited permission to copy and/or distribute it, | ||||
| dnl with or without modifications, as long as this notice is preserved. | ||||
| dnl | ||||
| dnl This file can can be used in projects which are not available under | ||||
| dnl the GNU General Public License or the GNU Library General Public | ||||
| dnl License but which still want to provide support for the GNU gettext | ||||
| dnl functionality. | ||||
| dnl Please note that the actual code of the GNU gettext library is covered | ||||
| dnl by the GNU Library General Public License, and the rest of the GNU | ||||
| dnl gettext package package is covered by the GNU General Public License. | ||||
| dnl They are *not* in the public domain. | ||||
|  | ||||
| dnl Authors: | ||||
| dnl   Ulrich Drepper <drepper@cygnus.com>, 1996. | ||||
|  | ||||
| AC_PREREQ([2.50]) | ||||
|  | ||||
| # Search path for a program which passes the given test. | ||||
|  | ||||
| dnl AM_PATH_PROG_WITH_TEST(VARIABLE, PROG-TO-CHECK-FOR, | ||||
| dnl   TEST-PERFORMED-ON-FOUND_PROGRAM [, VALUE-IF-NOT-FOUND [, PATH]]) | ||||
| AC_DEFUN([AM_PATH_PROG_WITH_TEST], | ||||
| [ | ||||
| # Prepare PATH_SEPARATOR. | ||||
| # The user is always right. | ||||
| if test "${PATH_SEPARATOR+set}" != set; then | ||||
|   echo "#! /bin/sh" >conf$$.sh | ||||
|   echo  "exit 0"   >>conf$$.sh | ||||
|   chmod +x conf$$.sh | ||||
|   if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then | ||||
|     PATH_SEPARATOR=';' | ||||
|   else | ||||
|     PATH_SEPARATOR=: | ||||
|   fi | ||||
|   rm -f conf$$.sh | ||||
| fi | ||||
|  | ||||
| # Find out how to test for executable files. Don't use a zero-byte file, | ||||
| # as systems may use methods other than mode bits to determine executability. | ||||
| cat >conf$$.file <<_ASEOF | ||||
| #! /bin/sh | ||||
| exit 0 | ||||
| _ASEOF | ||||
| chmod +x conf$$.file | ||||
| if test -x conf$$.file >/dev/null 2>&1; then | ||||
|   ac_executable_p="test -x" | ||||
| else | ||||
|   ac_executable_p="test -f" | ||||
| fi | ||||
| rm -f conf$$.file | ||||
|  | ||||
| # Extract the first word of "$2", so it can be a program name with args. | ||||
| set dummy $2; ac_word=[$]2 | ||||
| AC_MSG_CHECKING([for $ac_word]) | ||||
| AC_CACHE_VAL([ac_cv_path_$1], | ||||
| [case "[$]$1" in | ||||
|   [[\\/]]* | ?:[[\\/]]*) | ||||
|     ac_cv_path_$1="[$]$1" # Let the user override the test with a path. | ||||
|     ;; | ||||
|   *) | ||||
|     ac_save_IFS="$IFS"; IFS=$PATH_SEPARATOR | ||||
|     for ac_dir in ifelse([$5], , $PATH, [$5]); do | ||||
|       IFS="$ac_save_IFS" | ||||
|       test -z "$ac_dir" && ac_dir=. | ||||
|       for ac_exec_ext in '' $ac_executable_extensions; do | ||||
|         if $ac_executable_p "$ac_dir/$ac_word$ac_exec_ext"; then | ||||
|           echo "$as_me: trying $ac_dir/$ac_word..." >&AS_MESSAGE_LOG_FD | ||||
|           if [$3]; then | ||||
|             ac_cv_path_$1="$ac_dir/$ac_word$ac_exec_ext" | ||||
|             break 2 | ||||
|           fi | ||||
|         fi | ||||
|       done | ||||
|     done | ||||
|     IFS="$ac_save_IFS" | ||||
| dnl If no 4th arg is given, leave the cache variable unset, | ||||
| dnl so AC_PATH_PROGS will keep looking. | ||||
| ifelse([$4], , , [  test -z "[$]ac_cv_path_$1" && ac_cv_path_$1="$4" | ||||
| ])dnl | ||||
|     ;; | ||||
| esac])dnl | ||||
| $1="$ac_cv_path_$1" | ||||
| if test ifelse([$4], , [-n "[$]$1"], ["[$]$1" != "$4"]); then | ||||
|   AC_MSG_RESULT([$][$1]) | ||||
| else | ||||
|   AC_MSG_RESULT([no]) | ||||
| fi | ||||
| AC_SUBST([$1])dnl | ||||
| ]) | ||||
							
								
								
									
										26
									
								
								tools/missing-macros/src/m4/stdint_h.m4
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										26
									
								
								tools/missing-macros/src/m4/stdint_h.m4
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,26 @@ | ||||
| # stdint_h.m4 serial 8 | ||||
| dnl Copyright (C) 1997-2004, 2006, 2008-2010 Free Software Foundation, Inc. | ||||
| dnl This file is free software; the Free Software Foundation | ||||
| dnl gives unlimited permission to copy and/or distribute it, | ||||
| dnl with or without modifications, as long as this notice is preserved. | ||||
|  | ||||
| dnl From Paul Eggert. | ||||
|  | ||||
| # Define HAVE_STDINT_H_WITH_UINTMAX if <stdint.h> exists, | ||||
| # doesn't clash with <sys/types.h>, and declares uintmax_t. | ||||
|  | ||||
| AC_DEFUN([gl_AC_HEADER_STDINT_H], | ||||
| [ | ||||
|   AC_CACHE_CHECK([for stdint.h], [gl_cv_header_stdint_h], | ||||
|   [AC_TRY_COMPILE( | ||||
|     [#include <sys/types.h> | ||||
| #include <stdint.h>], | ||||
|     [uintmax_t i = (uintmax_t) -1; return !i;], | ||||
|     [gl_cv_header_stdint_h=yes], | ||||
|     [gl_cv_header_stdint_h=no])]) | ||||
|   if test $gl_cv_header_stdint_h = yes; then | ||||
|     AC_DEFINE_UNQUOTED([HAVE_STDINT_H_WITH_UINTMAX], [1], | ||||
|       [Define if <stdint.h> exists, doesn't clash with <sys/types.h>, | ||||
|        and declares uintmax_t. ]) | ||||
|   fi | ||||
| ]) | ||||
							
								
								
									
										30
									
								
								tools/missing-macros/src/m4/uintmax_t.m4
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										30
									
								
								tools/missing-macros/src/m4/uintmax_t.m4
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,30 @@ | ||||
| # uintmax_t.m4 serial 12 | ||||
| dnl Copyright (C) 1997-2004, 2007-2010 Free Software Foundation, Inc. | ||||
| dnl This file is free software; the Free Software Foundation | ||||
| dnl gives unlimited permission to copy and/or distribute it, | ||||
| dnl with or without modifications, as long as this notice is preserved. | ||||
|  | ||||
| dnl From Paul Eggert. | ||||
|  | ||||
| AC_PREREQ([2.13]) | ||||
|  | ||||
| # Define uintmax_t to 'unsigned long' or 'unsigned long long' | ||||
| # if it is not already defined in <stdint.h> or <inttypes.h>. | ||||
|  | ||||
| AC_DEFUN([gl_AC_TYPE_UINTMAX_T], | ||||
| [ | ||||
|   AC_REQUIRE([gl_AC_HEADER_INTTYPES_H]) | ||||
|   AC_REQUIRE([gl_AC_HEADER_STDINT_H]) | ||||
|   if test $gl_cv_header_inttypes_h = no && test $gl_cv_header_stdint_h = no; then | ||||
|     AC_REQUIRE([AC_TYPE_UNSIGNED_LONG_LONG_INT]) | ||||
|     test $ac_cv_type_unsigned_long_long_int = yes \ | ||||
|       && ac_type='unsigned long long' \ | ||||
|       || ac_type='unsigned long' | ||||
|     AC_DEFINE_UNQUOTED([uintmax_t], [$ac_type], | ||||
|       [Define to unsigned long or unsigned long long | ||||
|        if <stdint.h> and <inttypes.h> don't define.]) | ||||
|   else | ||||
|     AC_DEFINE([HAVE_UINTMAX_T], [1], | ||||
|       [Define if you have the 'uintmax_t' type in <stdint.h> or <inttypes.h>.]) | ||||
|   fi | ||||
| ]) | ||||
							
								
								
									
										109
									
								
								tools/missing-macros/src/m4/va_copy.m4
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										109
									
								
								tools/missing-macros/src/m4/va_copy.m4
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,109 @@ | ||||
| dnl ## | ||||
| dnl ##  Check for C99 va_copy() implementation | ||||
| dnl ##  (and provide fallback implementation if neccessary) | ||||
| dnl ## | ||||
| dnl ##  configure.in: | ||||
| dnl ##    AC_CHECK_VA_COPY | ||||
| dnl ##  foo.c: | ||||
| dnl ##    #include "config.h" | ||||
| dnl ##    [...] | ||||
| dnl ##    va_copy(d,s) | ||||
| dnl ## | ||||
| dnl ##  This check is rather complex: first because we really have to | ||||
| dnl ##  try various possible implementations in sequence and second, we | ||||
| dnl ##  cannot define a macro in config.h with parameters directly. | ||||
| dnl ## | ||||
|  | ||||
| dnl #   test program for va_copy() implementation | ||||
| changequote(<<,>>) | ||||
| m4_define(__va_copy_test, <<[ | ||||
| #include <stdlib.h> | ||||
| #include <stdarg.h> | ||||
| #include <string.h> | ||||
| #define DO_VA_COPY(d, s) $1 | ||||
| void test(char *str, ...) | ||||
| { | ||||
|     va_list ap, ap2; | ||||
|     int i; | ||||
|     va_start(ap, str); | ||||
|     DO_VA_COPY(ap2, ap); | ||||
|     for (i = 1; i <= 9; i++) { | ||||
|         int k = (int)va_arg(ap, int); | ||||
|         if (k != i) | ||||
|             abort(); | ||||
|     } | ||||
|     DO_VA_COPY(ap, ap2); | ||||
|     for (i = 1; i <= 9; i++) { | ||||
|         int k = (int)va_arg(ap, int); | ||||
|         if (k != i) | ||||
|             abort(); | ||||
|     } | ||||
|     va_end(ap); | ||||
| } | ||||
| int main(int argc, char *argv[]) | ||||
| { | ||||
|     test("test", 1, 2, 3, 4, 5, 6, 7, 8, 9); | ||||
|     exit(0); | ||||
| } | ||||
| ]>>) | ||||
| changequote([,]) | ||||
|  | ||||
| dnl #   test driver for va_copy() implementation | ||||
| m4_define(__va_copy_check, [ | ||||
|     AH_VERBATIM($1, | ||||
| [/* Predefined possible va_copy() implementation (id: $1) */ | ||||
| #define __VA_COPY_USE_$1(d, s) $2]) | ||||
|     if test ".$ac_cv_va_copy" = .; then | ||||
|         AC_TRY_RUN(__va_copy_test($2), [ac_cv_va_copy="$1"]) | ||||
|     fi | ||||
| ]) | ||||
|  | ||||
| dnl #   Autoconf check for va_copy() implementation checking | ||||
| AC_DEFUN(AC_CHECK_VA_COPY,[ | ||||
|   dnl #   provide Autoconf display check message | ||||
|   AC_MSG_CHECKING(for va_copy() function) | ||||
|   dnl #   check for various implementations in priorized sequence    | ||||
|   AC_CACHE_VAL(ac_cv_va_copy, [ | ||||
|     ac_cv_va_copy="" | ||||
|     dnl #   1. check for standardized C99 macro | ||||
|     __va_copy_check(C99, [va_copy((d), (s))]) | ||||
|     dnl #   2. check for alternative/deprecated GCC macro | ||||
|     __va_copy_check(GCM, [VA_COPY((d), (s))]) | ||||
|     dnl #   3. check for internal GCC macro (high-level define) | ||||
|     __va_copy_check(GCH, [__va_copy((d), (s))]) | ||||
|     dnl #   4. check for internal GCC macro (built-in function) | ||||
|     __va_copy_check(GCB, [__builtin_va_copy((d), (s))]) | ||||
|     dnl #   5. check for assignment approach (assuming va_list is a struct) | ||||
|     __va_copy_check(ASS, [do { (d) = (s); } while (0)]) | ||||
|     dnl #   6. check for assignment approach (assuming va_list is a pointer) | ||||
|     __va_copy_check(ASP, [do { *(d) = *(s); } while (0)]) | ||||
|     dnl #   7. check for memory copying approach (assuming va_list is a struct) | ||||
|     __va_copy_check(CPS, [memcpy((void *)&(d), (void *)&(s)), sizeof((s))]) | ||||
|     dnl #   8. check for memory copying approach (assuming va_list is a pointer) | ||||
|     __va_copy_check(CPP, [memcpy((void *)(d), (void *)(s)), sizeof(*(s))]) | ||||
|     if test ".$ac_cv_va_copy" = .; then | ||||
|         AC_ERROR([no working implementation found]) | ||||
|     fi | ||||
|   ]) | ||||
|   dnl #   optionally activate the fallback implementation | ||||
|   if test ".$ac_cv_va_copy" = ".C99"; then | ||||
|       AC_DEFINE(HAVE_VA_COPY, 1, [Define if va_copy() macro exists (and no fallback implementation is required)]) | ||||
|   fi | ||||
|   dnl #   declare which fallback implementation to actually use | ||||
|   AC_DEFINE_UNQUOTED([__VA_COPY_USE], [__VA_COPY_USE_$ac_cv_va_copy], | ||||
|       [Define to id of used va_copy() implementation]) | ||||
|   dnl #   provide activation hook for fallback implementation | ||||
|   AH_VERBATIM([__VA_COPY_ACTIVATION], | ||||
| [/* Optional va_copy() implementation activation */ | ||||
| #ifndef HAVE_VA_COPY | ||||
| #define va_copy(d, s) __VA_COPY_USE(d, s) | ||||
| #endif | ||||
| ]) | ||||
|   dnl #   provide Autoconf display result message | ||||
|   if test ".$ac_cv_va_copy" = ".C99"; then | ||||
|       AC_MSG_RESULT([yes]) | ||||
|   else | ||||
|       AC_MSG_RESULT([no (using fallback implementation)]) | ||||
|   fi | ||||
| ]) | ||||
|  | ||||
							
								
								
									
										28
									
								
								tools/missing-macros/src/m4/wint_t.m4
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										28
									
								
								tools/missing-macros/src/m4/wint_t.m4
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,28 @@ | ||||
| # wint_t.m4 serial 4 (gettext-0.18) | ||||
| dnl Copyright (C) 2003, 2007-2010 Free Software Foundation, Inc. | ||||
| dnl This file is free software; the Free Software Foundation | ||||
| dnl gives unlimited permission to copy and/or distribute it, | ||||
| dnl with or without modifications, as long as this notice is preserved. | ||||
|  | ||||
| dnl From Bruno Haible. | ||||
| dnl Test whether <wchar.h> has the 'wint_t' type. | ||||
| dnl Prerequisite: AC_PROG_CC | ||||
|  | ||||
| AC_DEFUN([gt_TYPE_WINT_T], | ||||
| [ | ||||
|   AC_CACHE_CHECK([for wint_t], [gt_cv_c_wint_t], | ||||
|     [AC_TRY_COMPILE([ | ||||
| /* Tru64 with Desktop Toolkit C has a bug: <stdio.h> must be included before | ||||
|    <wchar.h>. | ||||
|    BSD/OS 4.0.1 has a bug: <stddef.h>, <stdio.h> and <time.h> must be included | ||||
|    before <wchar.h>.  */ | ||||
| #include <stddef.h> | ||||
| #include <stdio.h> | ||||
| #include <time.h> | ||||
| #include <wchar.h> | ||||
|        wint_t foo = (wchar_t)'\0';], , | ||||
|        [gt_cv_c_wint_t=yes], [gt_cv_c_wint_t=no])]) | ||||
|   if test $gt_cv_c_wint_t = yes; then | ||||
|     AC_DEFINE([HAVE_WINT_T], [1], [Define if you have the 'wint_t' type.]) | ||||
|   fi | ||||
| ]) | ||||
		Reference in New Issue
	
	Block a user
	 Jo-Philipp Wich
					Jo-Philipp Wich