@@ -1,4 +1,3 @@ | |||
include Makefile.am.inc | |||
EXTRA_DIST = README.html README-WIN32.html config.h.win32 doc json-c.vcproj | |||
SUBDIRS = . tests | |||
@@ -1,2 +0,0 @@ | |||
AM_CFLAGS = -Wall -Werror -Wno-error=deprecated-declarations -Wextra -Wwrite-strings -Wno-unused-parameter -std=gnu99 -D_GNU_SOURCE -D_REENTRANT | |||
@@ -0,0 +1,7 @@ | |||
Autoconf Archive fetched from: | |||
http://gnu.mirror.iweb.com/autoconf-archive/autoconf-archive-2015.09.25.tar.xz | |||
Grabbed the minimum files needed for the AX_APPEND_COMPILE_FLAGS macro. | |||
@@ -0,0 +1,65 @@ | |||
# =========================================================================== | |||
# http://www.gnu.org/software/autoconf-archive/ax_append_compile_flags.html | |||
# =========================================================================== | |||
# | |||
# SYNOPSIS | |||
# | |||
# AX_APPEND_COMPILE_FLAGS([FLAG1 FLAG2 ...], [FLAGS-VARIABLE], [EXTRA-FLAGS]) | |||
# | |||
# DESCRIPTION | |||
# | |||
# For every FLAG1, FLAG2 it is checked whether the compiler works with the | |||
# flag. If it does, the flag is added FLAGS-VARIABLE | |||
# | |||
# If FLAGS-VARIABLE is not specified, the current language's flags (e.g. | |||
# CFLAGS) is used. During the check the flag is always added to the | |||
# current language's flags. | |||
# | |||
# If EXTRA-FLAGS is defined, it is added to the current language's default | |||
# flags (e.g. CFLAGS) when the check is done. The check is thus made with | |||
# the flags: "CFLAGS EXTRA-FLAGS FLAG". This can for example be used to | |||
# force the compiler to issue an error when a bad flag is given. | |||
# | |||
# NOTE: This macro depends on the AX_APPEND_FLAG and | |||
# AX_CHECK_COMPILE_FLAG. Please keep this macro in sync with | |||
# AX_APPEND_LINK_FLAGS. | |||
# | |||
# LICENSE | |||
# | |||
# Copyright (c) 2011 Maarten Bosmans <mkbosmans@gmail.com> | |||
# | |||
# This program is free software: you can redistribute it and/or modify it | |||
# under the terms of the GNU General Public License as published by the | |||
# Free Software Foundation, either version 3 of the License, or (at your | |||
# option) any later version. | |||
# | |||
# This program is distributed in the hope that it will be useful, but | |||
# WITHOUT ANY WARRANTY; without even the implied warranty of | |||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General | |||
# Public License for more details. | |||
# | |||
# You should have received a copy of the GNU General Public License along | |||
# with this program. If not, see <http://www.gnu.org/licenses/>. | |||
# | |||
# As a special exception, the respective Autoconf Macro's copyright owner | |||
# gives unlimited permission to copy, distribute and modify the configure | |||
# scripts that are the output of Autoconf when processing the Macro. You | |||
# need not follow the terms of the GNU General Public License when using | |||
# or distributing such scripts, even though portions of the text of the | |||
# Macro appear in them. The GNU General Public License (GPL) does govern | |||
# all other use of the material that constitutes the Autoconf Macro. | |||
# | |||
# This special exception to the GPL applies to versions of the Autoconf | |||
# Macro released by the Autoconf Archive. When you make and distribute a | |||
# modified version of the Autoconf Macro, you may extend this special | |||
# exception to the GPL to apply to your modified version as well. | |||
#serial 4 | |||
AC_DEFUN([AX_APPEND_COMPILE_FLAGS], | |||
[AX_REQUIRE_DEFINED([AX_CHECK_COMPILE_FLAG]) | |||
AX_REQUIRE_DEFINED([AX_APPEND_FLAG]) | |||
for flag in $1; do | |||
AX_CHECK_COMPILE_FLAG([$flag], [AX_APPEND_FLAG([$flag], [$2])], [], [$3]) | |||
done | |||
])dnl AX_APPEND_COMPILE_FLAGS |
@@ -0,0 +1,71 @@ | |||
# =========================================================================== | |||
# http://www.gnu.org/software/autoconf-archive/ax_append_flag.html | |||
# =========================================================================== | |||
# | |||
# SYNOPSIS | |||
# | |||
# AX_APPEND_FLAG(FLAG, [FLAGS-VARIABLE]) | |||
# | |||
# DESCRIPTION | |||
# | |||
# FLAG is appended to the FLAGS-VARIABLE shell variable, with a space | |||
# added in between. | |||
# | |||
# If FLAGS-VARIABLE is not specified, the current language's flags (e.g. | |||
# CFLAGS) is used. FLAGS-VARIABLE is not changed if it already contains | |||
# FLAG. If FLAGS-VARIABLE is unset in the shell, it is set to exactly | |||
# FLAG. | |||
# | |||
# NOTE: Implementation based on AX_CFLAGS_GCC_OPTION. | |||
# | |||
# LICENSE | |||
# | |||
# Copyright (c) 2008 Guido U. Draheim <guidod@gmx.de> | |||
# Copyright (c) 2011 Maarten Bosmans <mkbosmans@gmail.com> | |||
# | |||
# This program is free software: you can redistribute it and/or modify it | |||
# under the terms of the GNU General Public License as published by the | |||
# Free Software Foundation, either version 3 of the License, or (at your | |||
# option) any later version. | |||
# | |||
# This program is distributed in the hope that it will be useful, but | |||
# WITHOUT ANY WARRANTY; without even the implied warranty of | |||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General | |||
# Public License for more details. | |||
# | |||
# You should have received a copy of the GNU General Public License along | |||
# with this program. If not, see <http://www.gnu.org/licenses/>. | |||
# | |||
# As a special exception, the respective Autoconf Macro's copyright owner | |||
# gives unlimited permission to copy, distribute and modify the configure | |||
# scripts that are the output of Autoconf when processing the Macro. You | |||
# need not follow the terms of the GNU General Public License when using | |||
# or distributing such scripts, even though portions of the text of the | |||
# Macro appear in them. The GNU General Public License (GPL) does govern | |||
# all other use of the material that constitutes the Autoconf Macro. | |||
# | |||
# This special exception to the GPL applies to versions of the Autoconf | |||
# Macro released by the Autoconf Archive. When you make and distribute a | |||
# modified version of the Autoconf Macro, you may extend this special | |||
# exception to the GPL to apply to your modified version as well. | |||
#serial 6 | |||
AC_DEFUN([AX_APPEND_FLAG], | |||
[dnl | |||
AC_PREREQ(2.64)dnl for _AC_LANG_PREFIX and AS_VAR_SET_IF | |||
AS_VAR_PUSHDEF([FLAGS], [m4_default($2,_AC_LANG_PREFIX[FLAGS])]) | |||
AS_VAR_SET_IF(FLAGS,[ | |||
AS_CASE([" AS_VAR_GET(FLAGS) "], | |||
[*" $1 "*], [AC_RUN_LOG([: FLAGS already contains $1])], | |||
[ | |||
AS_VAR_APPEND(FLAGS,[" $1"]) | |||
AC_RUN_LOG([: FLAGS="$FLAGS"]) | |||
]) | |||
], | |||
[ | |||
AS_VAR_SET(FLAGS,[$1]) | |||
AC_RUN_LOG([: FLAGS="$FLAGS"]) | |||
]) | |||
AS_VAR_POPDEF([FLAGS])dnl | |||
])dnl AX_APPEND_FLAG |
@@ -0,0 +1,74 @@ | |||
# =========================================================================== | |||
# http://www.gnu.org/software/autoconf-archive/ax_check_compile_flag.html | |||
# =========================================================================== | |||
# | |||
# SYNOPSIS | |||
# | |||
# AX_CHECK_COMPILE_FLAG(FLAG, [ACTION-SUCCESS], [ACTION-FAILURE], [EXTRA-FLAGS], [INPUT]) | |||
# | |||
# DESCRIPTION | |||
# | |||
# Check whether the given FLAG works with the current language's compiler | |||
# or gives an error. (Warnings, however, are ignored) | |||
# | |||
# ACTION-SUCCESS/ACTION-FAILURE are shell commands to execute on | |||
# success/failure. | |||
# | |||
# If EXTRA-FLAGS is defined, it is added to the current language's default | |||
# flags (e.g. CFLAGS) when the check is done. The check is thus made with | |||
# the flags: "CFLAGS EXTRA-FLAGS FLAG". This can for example be used to | |||
# force the compiler to issue an error when a bad flag is given. | |||
# | |||
# INPUT gives an alternative input source to AC_COMPILE_IFELSE. | |||
# | |||
# NOTE: Implementation based on AX_CFLAGS_GCC_OPTION. Please keep this | |||
# macro in sync with AX_CHECK_{PREPROC,LINK}_FLAG. | |||
# | |||
# LICENSE | |||
# | |||
# Copyright (c) 2008 Guido U. Draheim <guidod@gmx.de> | |||
# Copyright (c) 2011 Maarten Bosmans <mkbosmans@gmail.com> | |||
# | |||
# This program is free software: you can redistribute it and/or modify it | |||
# under the terms of the GNU General Public License as published by the | |||
# Free Software Foundation, either version 3 of the License, or (at your | |||
# option) any later version. | |||
# | |||
# This program is distributed in the hope that it will be useful, but | |||
# WITHOUT ANY WARRANTY; without even the implied warranty of | |||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General | |||
# Public License for more details. | |||
# | |||
# You should have received a copy of the GNU General Public License along | |||
# with this program. If not, see <http://www.gnu.org/licenses/>. | |||
# | |||
# As a special exception, the respective Autoconf Macro's copyright owner | |||
# gives unlimited permission to copy, distribute and modify the configure | |||
# scripts that are the output of Autoconf when processing the Macro. You | |||
# need not follow the terms of the GNU General Public License when using | |||
# or distributing such scripts, even though portions of the text of the | |||
# Macro appear in them. The GNU General Public License (GPL) does govern | |||
# all other use of the material that constitutes the Autoconf Macro. | |||
# | |||
# This special exception to the GPL applies to versions of the Autoconf | |||
# Macro released by the Autoconf Archive. When you make and distribute a | |||
# modified version of the Autoconf Macro, you may extend this special | |||
# exception to the GPL to apply to your modified version as well. | |||
#serial 4 | |||
AC_DEFUN([AX_CHECK_COMPILE_FLAG], | |||
[AC_PREREQ(2.64)dnl for _AC_LANG_PREFIX and AS_VAR_IF | |||
AS_VAR_PUSHDEF([CACHEVAR],[ax_cv_check_[]_AC_LANG_ABBREV[]flags_$4_$1])dnl | |||
AC_CACHE_CHECK([whether _AC_LANG compiler accepts $1], CACHEVAR, [ | |||
ax_check_save_flags=$[]_AC_LANG_PREFIX[]FLAGS | |||
_AC_LANG_PREFIX[]FLAGS="$[]_AC_LANG_PREFIX[]FLAGS $4 $1" | |||
AC_COMPILE_IFELSE([m4_default([$5],[AC_LANG_PROGRAM()])], | |||
[AS_VAR_SET(CACHEVAR,[yes])], | |||
[AS_VAR_SET(CACHEVAR,[no])]) | |||
_AC_LANG_PREFIX[]FLAGS=$ax_check_save_flags]) | |||
AS_VAR_IF(CACHEVAR,yes, | |||
[m4_default([$2], :)], | |||
[m4_default([$3], :)]) | |||
AS_VAR_POPDEF([CACHEVAR])dnl | |||
])dnl AX_CHECK_COMPILE_FLAGS |
@@ -0,0 +1,37 @@ | |||
# =========================================================================== | |||
# http://www.gnu.org/software/autoconf-archive/ax_require_defined.html | |||
# =========================================================================== | |||
# | |||
# SYNOPSIS | |||
# | |||
# AX_REQUIRE_DEFINED(MACRO) | |||
# | |||
# DESCRIPTION | |||
# | |||
# AX_REQUIRE_DEFINED is a simple helper for making sure other macros have | |||
# been defined and thus are available for use. This avoids random issues | |||
# where a macro isn't expanded. Instead the configure script emits a | |||
# non-fatal: | |||
# | |||
# ./configure: line 1673: AX_CFLAGS_WARN_ALL: command not found | |||
# | |||
# It's like AC_REQUIRE except it doesn't expand the required macro. | |||
# | |||
# Here's an example: | |||
# | |||
# AX_REQUIRE_DEFINED([AX_CHECK_LINK_FLAG]) | |||
# | |||
# LICENSE | |||
# | |||
# Copyright (c) 2014 Mike Frysinger <vapier@gentoo.org> | |||
# | |||
# Copying and distribution of this file, with or without modification, are | |||
# permitted in any medium without royalty provided the copyright notice | |||
# and this notice are preserved. This file is offered as-is, without any | |||
# warranty. | |||
#serial 1 | |||
AC_DEFUN([AX_REQUIRE_DEFINED], [dnl | |||
m4_ifndef([$1], [m4_fatal([macro ]$1[ is not defined; is a m4 file missing?])]) | |||
])dnl AX_REQUIRE_DEFINED |
@@ -1,5 +1,5 @@ | |||
#!/bin/sh | |||
autoreconf -v --install || exit 1 | |||
autoreconf -Iautoconf-archive/m4 -v --install || exit 1 | |||
# If there are any options, assume the user wants to run configure. | |||
# To run configure w/o any options, use ./autogen.sh --configure | |||
@@ -102,6 +102,11 @@ AS_IF([test "x$enable_Bsymbolic" = "xcheck"], | |||
AS_IF([test "x$enable_Bsymbolic" = "xyes"], [JSON_BSYMBOLIC_LDFLAGS=-Wl[,]-Bsymbolic-functions]) | |||
AC_SUBST(JSON_BSYMBOLIC_LDFLAGS) | |||
AX_APPEND_COMPILE_FLAGS([-Wall -Werror -Wno-error=deprecated-declarations]) | |||
AX_APPEND_COMPILE_FLAGS([-Wextra -Wwrite-string -Wno-unused-parameter]) | |||
AX_APPEND_COMPILE_FLAGS([-std=gnu99]) | |||
AX_APPEND_COMPILE_FLAGS([-D_GNU_SOURCE -D_REENTRANT]) | |||
AC_CONFIG_FILES([ | |||
Makefile | |||
json-c.pc | |||
@@ -1,5 +1,4 @@ | |||
include ../Makefile.am.inc | |||
LDADD= $(LIBJSON_LA) | |||
LIBJSON_LA=$(top_builddir)/libjson-c.la | |||