1092 Commits

Author SHA1 Message Date
Max Bruckner
f2cb5e4dd4 CMake: ENABLE_CUSTOM_COMPILER_FLAGS option 2016-11-15 20:21:57 +07:00
Max Bruckner
46a3a102d5 CMake: Fix indentation 2016-11-15 20:21:30 +07:00
Max Bruckner
1f3b95e2b1 README: Compiles on FreeBSD 2016-11-15 20:19:02 +07:00
Max Bruckner
706636fb20 Replace -ansi with -std=c89 for better compatibility 2016-11-15 20:03:11 +07:00
Max Bruckner
a22da43578 README: More formatting 2016-11-15 08:12:35 +07:00
Max Bruckner
df1ffa1e0b README: Building 2016-11-15 02:01:38 +07:00
Max Bruckner
501be02690 README: Reformat 2016-11-15 00:29:23 +07:00
Max Bruckner
778bcd1a62 Makefile: Redo with library versioning
And remove special handling of SunOs
2016-11-14 22:52:44 +07:00
Max Bruckner
46ff20c8b0 cJSON.h: add stddef.h because of size_t 2016-11-14 22:25:16 +07:00
Max Bruckner
5cca67e3fc CMake: Build tests by default 2016-11-14 19:36:04 +07:00
Max Bruckner
dc4b62915a fix #10, now failing on incorrect escape sequences 2016-11-14 19:33:03 +07:00
Max Bruckner
afd690d1c9 format fix 2016-11-14 19:14:14 +07:00
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
Jiri Zouhar
06008b0444 add support to insert raw json 2016-11-14 11:20:10 +01:00
Max Bruckner
0d10e279c8 fix #55 memory leak in cJSON_ReplaceItemInObject v0.0.0 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 3ea491c0a603f50ca0fb2505badd332fbd141f75.
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
Max Bruckner
8964287ec4 reformatting: cJSONUtils_SortList 2016-10-29 22:44:44 +07:00
Max Bruckner
ec9d1cfedb reformatting: cJSONUtils_GeneratePatches 2016-10-29 22:44:44 +07:00
Max Bruckner
8879ed5dbc reformatting: cJSONUtils_CompareToPatch 2016-10-29 22:44:44 +07:00
Max Bruckner
52e53acfc3 reformatting: cJSON_AddPatchToArray 2016-10-29 22:44:43 +07:00
Max Bruckner
d6a6abeca0 reformatting: cJSONUtils_GeneratePatch 2016-10-29 22:44:43 +07:00
Max Bruckner
e8a67f0e4b reformatting: cJSONUtils_ApplyPatches 2016-10-29 22:44:43 +07:00
Max Bruckner
d883f9b9b0 reformatting: cJSONUtils_ApplyPatch 2016-10-29 22:44:43 +07:00
Max Bruckner
284a8017b7 reformatting: cJSONUtils_Compare 2016-10-29 22:44:43 +07:00
Max Bruckner
1235c62235 reformatting: cJSONUtils_PatchDetach 2016-10-29 22:44:42 +07:00
Max Bruckner
a21a124d40 reformatting: cJSONUtils_InplaceDecodePointerString 2016-10-29 22:44:42 +07:00
Max Bruckner
5713edb710 reformatting: cJSON_Utils_GetPointer
NOTE: This can change the assembly slightly, in my case it reordered two
instructions. This is due to the change from:

    which = (10 * which) + *pointer++ - '0';

to

    which = (10 * which) + (*pointer++ - '0');

This means that after the change, the subtraction runs before the
addition instead of after that. That shouldn't change the behavior
though.
2016-10-29 22:42:04 +07:00
Max Bruckner
0c23e8dde0 Merge pull request #40 from jfether/patch-1
Remove redundant test from cJSON_AddItemToArray
2016-10-28 14:06:39 +07:00
Jonathan Fether
9f00ff9a91 Remove redundant test from cJSON_AddItemToArray
The test for whether "c" is null is redundant.  Since this is the else case of "(!c)", and the only way "c" is changed is by the instruction assigning it "c->next" on the condition here, simply verifying that "c->next" isn't null is sufficient.
2016-10-27 20:02:44 -07:00
Ian Mobley
d4836effc9 Fix compiler warning "array subscript has type char" when using arm-none-eabi-gcc 2016-10-17 17:20:57 -07:00
Max Bruckner
158ddceab3 reformatting: cJSONUtils_FindPointerFromObjectTo 2016-10-14 00:05:58 +07:00
Max Bruckner
c6cb991e3f reformatting: cJSON.h: remove trailing spaces 2016-10-13 23:48:53 +07:00
Max Bruckner
7771225e35 reformatting: cJSONUtils_PointerEncodedstrcpy 2016-10-13 23:47:40 +07:00
Max Bruckner
3f6716e63a reformatting: cJSONUtils_PointerEncodedstrlen 2016-10-13 23:42:34 +07:00
Max Bruckner
2f002879c0 reformatting: cJSONUtils_Pstrcasecmp 2016-10-13 23:40:02 +07:00
Max Bruckner
cb6445f47b reformatting: cJSON_strcasecmp 2016-10-13 23:26:53 +07:00
Max Bruckner
526d6b1312 reformatting: cJSON_Utils.h 2016-10-13 00:18:44 +07:00
Ian Mobley
85aa59be38 Use $(AR) environment variable with libcjson.a
Allow for alternative archive tool when using make.
2016-10-10 13:13:06 -07:00
Max Bruckner
fcbeb1c36b reformatting: test.c 2016-10-11 00:34:19 +07:00
Max Bruckner
1822521a14 Merge pull request #36 from iMobs/const_objects
Add const qualifiers
2016-10-10 13:29:51 +07:00
Ian Mobley
b393b3beeb Add const qualifier for non-destructive functions
Functions like cJSON_Print do not and should not modify the object passed
to them.
2016-10-07 15:42:11 -07:00
Max Bruckner
f0fc6c50ba Merge pull request #29 from DaveGamble/reformatting
Reformatting code
2016-10-07 21:11:04 +07:00
Max Bruckner
ad3d5130b5 reformatting: cJSON.h 2016-10-02 19:04:30 +07:00
Max Bruckner
34388c2d4c reformatting: cJSON_Minify 2016-10-02 19:04:30 +07:00
Max Bruckner
9adc6e7fe1 reformatting: cJSON_Duplicate 2016-10-02 19:04:30 +07:00
Max Bruckner
e6fd236f00 reformatting: cJSON_CreateStringArray 2016-10-02 19:04:29 +07:00
Max Bruckner
e272f7285e reformatting: cJSON_CreateDoubleArray 2016-10-02 19:04:29 +07:00
Max Bruckner
890b999e59 reformatting cJSON_CreateFloatArray 2016-10-02 19:04:29 +07:00
Max Bruckner
f831aef5c1 reformatting: cJSON_CreateIntArray 2016-10-02 19:04:28 +07:00
Max Bruckner
21a0a88f19 reformatting: cJSON_CreateObject 2016-10-02 19:04:28 +07:00
Max Bruckner
e241081020 reformatting: cJSON_CreateArray 2016-10-02 19:04:28 +07:00
Max Bruckner
034003ce2b reformatting: cJSON_CreateString 2016-10-02 19:04:28 +07:00
Max Bruckner
3f9f4970b4 reformatting: cJSON_CreateNumber 2016-10-02 19:04:27 +07:00