summaryrefslogtreecommitdiff
path: root/contrib/site-conf
diff options
context:
space:
mode:
Diffstat (limited to 'contrib/site-conf')
-rw-r--r--contrib/site-conf/aclocal.m41
-rw-r--r--contrib/site-conf/configure.ac2
-rw-r--r--contrib/site-conf/m4/gnu.m435
3 files changed, 37 insertions, 1 deletions
diff --git a/contrib/site-conf/aclocal.m4 b/contrib/site-conf/aclocal.m4
index c869c196a7..f415403d6d 100644
--- a/contrib/site-conf/aclocal.m4
+++ b/contrib/site-conf/aclocal.m4
@@ -12,3 +12,4 @@
# PARTICULAR PURPOSE.
m4_include([m4/builtin.m4])
+m4_include([m4/gnu.m4])
diff --git a/contrib/site-conf/configure.ac b/contrib/site-conf/configure.ac
index 0f08732a08..283008a4a7 100644
--- a/contrib/site-conf/configure.ac
+++ b/contrib/site-conf/configure.ac
@@ -6,6 +6,6 @@ AC_PREREQ([2.60])
AC_GNU_SOURCE
OE_CHECK_BUILTIN
-
+OE_CHECK_GNU
AC_OUTPUT([])
diff --git a/contrib/site-conf/m4/gnu.m4 b/contrib/site-conf/m4/gnu.m4
new file mode 100644
index 0000000000..1f9331e2ef
--- /dev/null
+++ b/contrib/site-conf/m4/gnu.m4
@@ -0,0 +1,35 @@
+# Collection of binutils, gcc, glibc
+
+
+AC_DEFUN([BINUTILS_CHECK_UINT64],
+[AC_TRY_COMPILE(
+[#ifdef HAVE_STDINT_H
+#include <stdint.h>
+#endif],
+[extern uint64_t foo;],
+liberty_cv_uint64=uint64_t,
+[AC_TRY_COMPILE(
+[#ifdef HAVE_LIMITS_H
+#include <limits.h>
+#endif
+#ifndef CHAR_BIT
+#define CHAR_BIT 8
+#endif],
+[extern char foo[sizeof(long) * CHAR_BIT >= 64 ? 1 : -1];],
+liberty_cv_uint64="unsigned long",
+[AC_TRY_COMPILE(
+[#ifdef HAVE_LIMITS_H
+#include <limits.h>
+#endif
+#ifndef CHAR_BIT
+#define CHAR_BIT 8
+#endif],
+[extern char foo[sizeof(long long) * CHAR_BIT >= 64 ? 1 : -1];],
+liberty_cv_uint64="unsigned long long", liberty_cv_uint64=none)])])])
+
+AC_DEFUN([OE_CHECK_GNU],
+[
+AC_CHECK_SIZEOF([int])
+AC_CHECK_TYPE(uintptr_t, unsigned long)
+BINUTILS_CHECK_UINT64
+])