Browse Source

compat/strdup.h: move common compat check for strdup() to own file

Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
tags/json-c-0.13-20171207
Alexandru Ardelean 9 years ago
parent
commit
aaba8c1080
8 changed files with 26 additions and 16 deletions
  1. +1
    -0
      CMakeLists.txt
  2. +1
    -0
      Makefile.am
  3. +13
    -0
      compat/strdup.h
  4. +3
    -0
      json-c.vcproj
  5. +2
    -1
      json-c.vcxproj
  6. +4
    -1
      json-c.vcxproj.filters
  7. +1
    -7
      json_object.c
  8. +1
    -7
      json_tokener.c

+ 1
- 0
CMakeLists.txt View File

@@ -23,6 +23,7 @@ endif()
include_directories(${CMAKE_CURRENT_BINARY_DIR}/include)

set(JSON_C_HEADERS
./compat/strdup.h
./json.h
${CMAKE_CURRENT_BINARY_DIR}/include/config.h
./json_config.h


+ 1
- 0
Makefile.am View File

@@ -18,6 +18,7 @@ libjson_cincludedir = $(includedir)/json-c
libjson_cinclude_HEADERS = \
arraylist.h \
bits.h \
compat/strdup.h \
debug.h \
json.h \
json_c_version.h \


+ 13
- 0
compat/strdup.h View File

@@ -0,0 +1,13 @@
#ifndef __STRDUP_H_COMPAT__
#define __STRDUP_H_COMPAT__

#include "../config.h"

#if !defined(HAVE_STRDUP) && defined(_MSC_VER)
/* MSC has the version as _strdup */
# define strdup _strdup
#elif !defined(HAVE_STRDUP)
# error You do not have strdup on your system.
#endif /* HAVE_STRDUP */

#endif /* __STRDUP_H_COMPAT__ */

+ 3
- 0
json-c.vcproj View File

@@ -131,6 +131,9 @@ copy json_config.h.win32 json_config.h"/>
<File
RelativePath=".\bits.h">
</File>
<File
RelativePath=".\compat\strdup.h">
</File>
<File
RelativePath=".\debug.h">
</File>


+ 2
- 1
json-c.vcxproj View File

@@ -141,6 +141,7 @@ copy json_config.h.win32 json_config.h
</ItemGroup>
<ItemGroup>
<ClInclude Include="arraylist.h" />
<ClInclude Include="compat\strdup.h" />
<ClInclude Include="debug.h" />
<ClInclude Include="json_inttypes.h" />
<ClInclude Include="json_object.h" />
@@ -162,4 +163,4 @@ copy json_config.h.win32 json_config.h
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
</ImportGroup>
</Project>
</Project>

+ 4
- 1
json-c.vcxproj.filters View File

@@ -47,6 +47,9 @@
<ClInclude Include="arraylist.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="compat\strdup.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="debug.h">
<Filter>Header Files</Filter>
</ClInclude>
@@ -87,4 +90,4 @@
<None Include="README-WIN32.html" />
<None Include="README.html" />
</ItemGroup>
</Project>
</Project>

+ 1
- 7
json_object.c View File

@@ -29,13 +29,7 @@
#include "json_object_private.h"
#include "json_util.h"
#include "math_compat.h"

#if !defined(HAVE_STRDUP) && defined(_MSC_VER)
/* MSC has the version as _strdup */
# define strdup _strdup
#elif !defined(HAVE_STRDUP)
# error You do not have strdup on your system.
#endif /* HAVE_STRDUP */
#include "compat/strdup.h"

#if !defined(HAVE_SNPRINTF) && defined(_MSC_VER)
/* MSC has the version as _snprintf */


+ 1
- 7
json_tokener.c View File

@@ -31,6 +31,7 @@
#include "json_object.h"
#include "json_tokener.h"
#include "json_util.h"
#include "compat/strdup.h"

#ifdef HAVE_LOCALE_H
#include <locale.h>
@@ -41,13 +42,6 @@

#define jt_hexdigit(x) (((x) <= '9') ? (x) - '0' : ((x) & 7) + 9)

#if !HAVE_STRDUP && defined(_MSC_VER)
/* MSC has the version as _strdup */
# define strdup _strdup
#elif !HAVE_STRDUP
# error You do not have strdup on your system.
#endif /* HAVE_STRDUP */

#if !HAVE_STRNCASECMP && defined(_MSC_VER)
/* MSC has the version as _strnicmp */
# define strncasecmp _strnicmp


Loading…
Cancel
Save