|
- AC_PREREQ(2.52)
-
- # Process this file with autoconf to produce a configure script.
- AC_INIT([json-c], 0.11.99, [json-c@googlegroups.com])
-
- AM_INIT_AUTOMAKE
-
- AC_PROG_MAKE_SET
-
- # Checks for programs.
-
- # Checks for libraries.
-
- # Checks for header files.
- AM_PROG_CC_C_O
- AC_CONFIG_HEADER(config.h)
- AC_CONFIG_HEADER(json_config.h)
- AC_HEADER_STDC
- AC_CHECK_HEADERS(fcntl.h limits.h strings.h syslog.h unistd.h [sys/cdefs.h] [sys/param.h] stdarg.h locale.h)
- AC_CHECK_HEADER(inttypes.h,[AC_DEFINE([JSON_C_HAVE_INTTYPES_H],[1],[Public define for json_inttypes.h])])
-
- # Checks for typedefs, structures, and compiler characteristics.
- AC_C_CONST
- AC_TYPE_SIZE_T
-
- # Checks for library functions.
- AC_FUNC_VPRINTF
- AC_FUNC_MEMCMP
- AC_FUNC_MALLOC
- AC_FUNC_REALLOC
- AC_CHECK_FUNCS(strcasecmp strdup strerror snprintf vsnprintf vasprintf open vsyslog strncasecmp setlocale)
- AC_CHECK_DECLS([INFINITY], [], [], [[#include <math.h>]])
- AC_CHECK_DECLS([nan], [], [], [[#include <math.h>]])
- AC_CHECK_DECLS([isnan], [], [], [[#include <math.h>]])
- AC_CHECK_DECLS([isinf], [], [], [[#include <math.h>]])
- AC_CHECK_DECLS([_isnan], [], [], [[#include <float.h>]])
- AC_CHECK_DECLS([_finite], [], [], [[#include <float.h>]])
-
- #check if .section.gnu.warning accepts long strings (for __warn_references)
- AC_LANG_PUSH([C])
-
- AC_MSG_CHECKING([if .gnu.warning accepts long strings])
- AC_LINK_IFELSE([[
- extern void json_object_get();
- __asm__(".section .gnu.json_object_get,\n\t.ascii \"Please link against libjson-c instead of libjson\"\n\t.text");
-
- int main(int c,char* v) {return 0;}
- ]], [
- AC_DEFINE(HAS_GNU_WARNING_LONG, 1, [Define if .gnu.warning accepts long strings.])
- AC_MSG_RESULT(yes)
- ], [
- AC_MSG_RESULT(no)
- ])
-
- AC_LANG_POP([C])
-
- AM_PROG_LIBTOOL
-
- # Check for the -Bsymbolic-functions linker flag
- AC_ARG_ENABLE([Bsymbolic],
- [AS_HELP_STRING([--disable-Bsymbolic], [Avoid linking with -Bsymbolic-function])],
- [],
- [enable_Bsymbolic=check])
-
- AS_IF([test "x$enable_Bsymbolic" = "xcheck"],
- [
- saved_LDFLAGS="${LDFLAGS}"
- AC_MSG_CHECKING([for -Bsymbolic-functions linker flag])
- LDFLAGS=-Wl,-Bsymbolic-functions
- AC_TRY_LINK([], [int main (void) { return 0; }],
- [
- AC_MSG_RESULT([yes])
- enable_Bsymbolic=yes
- ],
- [
- AC_MSG_RESULT([no])
- enable_Bsymbolic=no
- ])
- LDFLAGS="${saved_LDFLAGS}"
- ])
-
- AS_IF([test "x$enable_Bsymbolic" = "xyes"], [JSON_BSYMBOLIC_LDFLAGS=-Wl[,]-Bsymbolic-functions])
- AC_SUBST(JSON_BSYMBOLIC_LDFLAGS)
-
- AC_CONFIG_FILES([
- Makefile
- json-c.pc
- tests/Makefile
- json-c-uninstalled.pc
- ])
-
- AC_OUTPUT
|