Stephan
038b04d80a
Take out len from condition check.
...
Otherwise, the check is just undefined behaviour. gcc even takes out
this check because len can never be zero if len does not wrap around.
Found with -Wstrict-overflow=2
2016-11-28 09:11:14 +01:00
Max Bruckner
624bc85143
contributors: add Stephan Gatzka
2016-11-28 01:03:04 +07:00
Max Bruckner
1f0ad823c9
Merge pull request #75 from gatzka/feature/enhance_gcc_checks_v2
...
Enhance gcc checks v2
2016-11-28 00:58:45 +07:00
Stephan Gatzka
29b6643bab
Warn about missing prototypes.
...
This switch warns about missing prototypes. It does not warn if
functions are declared static. So this switch encourages the usage of
static whenever possible. This enables the compiler to perform inlining.
2016-11-27 18:22:12 +01:00
Stephan Gatzka
a8e1368697
Make function static when possible.
...
This is a prerequisite to later enable -Wmissing-prototypes.
2016-11-27 18:20:58 +01:00
Stephan Gatzka
bea0be48b6
Perform additional format checks.
2016-11-27 18:20:41 +01:00
Stephan Gatzka
91d11cd050
Warn if casting a pointer increases alignment of target.
2016-11-27 18:19:52 +01:00
Stephan Gatzka
9591ecddbe
Warn about variables initialized by themselves.
2016-11-27 18:19:07 +01:00
Stephan Gatzka
1568015de6
Warn about shadowing variables and functions.
2016-11-27 18:18:00 +01:00
Stephan Gatzka
7ed067e680
Rename some variables to avoid shadowing.
2016-11-27 18:16:28 +01:00
Max Bruckner
4703f01cf4
Make/CMake: Fix use of compiler flags
...
CMake: Option was not enabled by default as intended.
Makefile: Flags were not passed when building the tests
2016-11-26 22:09:20 +07:00
Max Bruckner
d0a9f46888
Release v1.0.2
2016-11-25 08:22:41 +07:00
Max Bruckner
23b269d5f9
Rename bool -> cjbool, fix #71
2016-11-25 08:19:18 +07:00
Max Bruckner
11fd27ade7
Change version to 1.0.1
2016-11-20 01:08:54 +07:00
Max Bruckner
65ac0a1a2b
cJSON_Utils tests: fix formatting
2016-11-19 17:50:01 +07:00
Max Bruckner
679004914f
Define a boolean type
...
This is not changing the behavior of the code, but it is improving the
readability and helps to make the intention clearer.
One thing to take care: 'true' should never be compared against.
2016-11-19 17:29:22 +07:00
Max Bruckner
b88da9b0de
Initialize all variables
2016-11-19 17:29:21 +07:00
Max Bruckner
a5ff796c20
Replace 0 with more expressive NULL or '\0'
2016-11-19 17:28:14 +07:00
Max Bruckner
d47339e274
cJSON_Utils: Fix comparing of cJSON_ types
...
When comparing the type, it has to be masked with 0xFF because of
cJSON_IsConst and cJSON_IsReference.
2016-11-18 22:52:52 +07:00
Max Bruckner
aafb64a1c5
Merge pull request #66 from DaveGamble/v1
...
Release version 1.0.0
2016-11-17 08:19:08 +07:00
Max Bruckner
3a2151d267
README: Document ENABLE_CUSTOM_COMPILER_FLAGS
2016-11-15 20:23:47 +07:00
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