Commit Graph

279 Commits

Author SHA1 Message Date
Max Bruckner
cfd0fb83d3 CMake: Fix warning on Cygwin 2016-11-14 19:14:14 +07:00
Max Bruckner
c213f2eb58 cJSON: Option to disable exporting targets
This can be disabled when the exporting of the targets causes problems.
2016-11-14 19:14:13 +07:00
Max Bruckner
5838e279a5 CMake: Use CMAKE_C_FLAGS instead of add_compile_options
This is for compatibility reasons with old CMake 2.8 versions.
2016-11-14 19:14:13 +07:00
Max Bruckner
966646d70e CMake config: Add CJSON_INCLUDE_DIR 2016-11-14 19:14:13 +07:00
Max Bruckner
58b76b518a CMake: Fix export of targets
The prior approach was exporting paths from the build environment.
2016-11-14 19:14:13 +07:00
Max Bruckner
8a838b37e3 CMake: Use standard variables for the version 2016-11-14 19:14:12 +07:00
Max Bruckner
de992ec3c9 pkg-config: Add URL and link math library 2016-11-14 19:14:12 +07:00
Max Bruckner
f9ce93029a Buildsystem: Fix paths
Fix library and include paths in pkg-config, CMakeLists.txt and the
CMake config files.
2016-11-14 19:14:12 +07:00
Markus Blatt
251e5a5e34 Added rudimentary package configuration files.
These files will allow cmake based projects to find the
library using find_package(cJSON). If successful, they can
use CJSON_LIBRARIES and CJSON_INCLUDE_DIRS.

Other build systems can use a similar approach to pkg-config:
cmake --find-package -DNAME=cJSON -DCOMPILER_ID=GNU -DLANGUAGE=C  -DCMAKE_PREFIX_PATH=<path-to-non-sytem-installation-path> -DMODE=LINK

or with MODE COMPILE or EXISTS.
2016-11-14 19:14:12 +07:00
Max Bruckner
8a7f9a2101 CMake: Use the GNUInstallDirs module 2016-11-14 19:14:12 +07:00
Max Bruckner
78cdb0d6ec CMake: Quote all variables 2016-11-14 19:14:11 +07:00
Max Bruckner
b2283dab87 CMake: Use CMAKE_CURRENT_SOURCE/BINARY_DIR 2016-11-14 19:14:11 +07:00
Max Bruckner
3353062fc8 CMake: Make building of cJSON_Utils optional
Turned off by default.
2016-11-14 19:14:11 +07:00
Max Bruckner
97b255c736 CMake: Fix installation of libcjson_utils.pc 2016-11-14 19:14:11 +07:00
Max Bruckner
fad10d5b1e Update list of contributors 2016-11-14 19:14:11 +07:00
Max Bruckner
302c574e00 CMake: Add compiler options only for Clang and GCC 2016-11-14 19:14:10 +07:00
Max Bruckner
576d9bb24f CMake: Only one project 2016-11-14 19:14:10 +07:00
Max Bruckner
47841ed3a7 CMake: Build test by default 2016-11-14 19:14:10 +07:00
Max Bruckner
c3fecc2d07 CMake: Build shared libraries by default
This is also what other projects are doing.
2016-11-14 19:14:10 +07:00
Max Bruckner
9acd1c6e7e Add list of contributors 2016-11-14 19:14:10 +07:00
Max Bruckner
aee8cb9231 pkg-config: Add libcjson_utils.pc 2016-11-14 19:14:09 +07:00
Max Bruckner
3d546c7036 pkg-config: Update libcjson.pc.in 2016-11-14 19:14:09 +07:00
Paulo Antonio Alvarez
d5baeff85f Add pkg-config file support for libcjson
We configure and install a pkg-config file so that our compilation and
linking flags can be more easily found using pkg-config.
2016-11-14 19:14:09 +07:00
Max Bruckner
32a9870786 CMake: Separate so version for cJSON_Utils 2016-11-14 19:14:09 +07:00
Max Bruckner
fd38fb712d CMake: Add compile options 2016-11-14 19:14:09 +07:00
Max Bruckner
ba6389291f CMake: Set library version 2016-11-14 19:14:08 +07:00
Max Bruckner
ba593394d4 CMake: Change include directory cJSON -> cjson 2016-11-14 19:14:08 +07:00
Max Bruckner
0d6ccf032d CMake: Change library names to all lowercase
Library names:
libcJSON -> libcjson
libcJSON_utils -> libcjson_utils
2016-11-14 19:14:08 +07:00
Max Bruckner
34361dbb9b CMake: Reformat 2016-11-14 19:14:08 +07:00
Max Bruckner
81e95718d5 CMake: Regroup lines 2016-11-14 19:14:07 +07:00
Max Bruckner
9a4657fbee CMake: Set version and soversion 2016-11-14 19:14:07 +07:00
Max Bruckner
8a46cb7b55 gitignore: ignore build directory 2016-11-14 19:14:07 +07:00
Max Bruckner
0d10e279c8 fix #55 memory leak in cJSON_ReplaceItemInObject 2016-11-11 11:53:14 +07:00
Max Bruckner
9e31049159 test and test_utils: Make compliant with ANSI C 2016-11-08 00:57:58 +07:00
Max Bruckner
8ac1ba416e test: Fix unescaped quote 2016-11-08 00:57:57 +07:00
Max Bruckner
25b65feb36 Remove old readme. It was replaced by README.md 2016-11-08 00:57:57 +07:00
Max Bruckner
1dff6f160f cJSON_Utils: own strdup for C89 compatibility 2016-11-08 00:57:57 +07:00
Max Bruckner
a148520ffb Revert "Fix #26: Use long double literal for 1e60"
This reverts commit 3ea491c0a6.
2016-11-08 00:53:16 +07:00
Max Bruckner
b4d728d018 pow2gt: Detect integer size fix #27 2016-11-07 20:09:58 +07:00
Max Bruckner
3ea491c0a6 Fix #26: Use long double literal for 1e60
Big thanks at mvollmer (https://sourceforge.net/p/cjson/bugs/45/)
2016-11-05 21:26:18 +07:00
Max Bruckner
050829f274 Merge pull request #50 from ffontaine/master
Do not always build static and dynamic
2016-11-04 08:23:08 +07:00
Max Bruckner
4d06882c68 Merge pull request #44 from iMobs/arm_compilation
ARM Compilation
2016-11-01 08:42:45 +07:00
Max Bruckner
b355733aa1 Merge pull request #43 from rvagg/malloc-err
don't ignore malloc failure in cJSON_PrintBuffered
2016-10-31 08:19:08 +07:00
Rod Vagg
5323f558cd don't ignore malloc failure in cJSON_PrintBuffered 2016-10-31 10:54:34 +11:00
Fabrice Fontaine
8e799362ca Do not always build static and dynamic
Currently, the static and dynamic version of the libraries are always
built as add_library is called twice. Instead, this patch will use the
standard CMake variable BUILD_SHARED_LIBS to know if the static or the
dynamic version must be built.

Signed-off-by: Fabrice Fontaine <fabrice.fontaine@orange.com>
2016-10-29 20:30:28 +02:00
Max Bruckner
a1c022fef6 Merge pull request #37 from DaveGamble/reformatting
Reformat cJSON_Utils.c and test.c
2016-10-29 22:52:55 +07:00
Max Bruckner
ddeca82718 reformatting: cJSON.c: fix indentation 2016-10-29 22:44:45 +07:00
Max Bruckner
c0b17dc651 reformatting: cJSONUtils_GenerateMergePatch 2016-10-29 22:44:45 +07:00
Max Bruckner
01a813f642 reformatting: cJSONUtils_MergePatch 2016-10-29 22:44:45 +07:00
Max Bruckner
c65514fcb4 reformatting: cJSONUtils_SortObject 2016-10-29 22:44:44 +07:00