diff options
author | Eric Haszlakiewicz <erh+git@nimenees.com> | 2015-03-03 22:35:36 -0500 |
---|---|---|
committer | Eric Haszlakiewicz <erh+git@nimenees.com> | 2015-03-03 22:35:36 -0500 |
commit | 7e3a6c6b9d5e54032aa7e5ef593f898a7ca9bb50 (patch) | |
tree | b124e523def6dad98bed9c2f6fb5c8be10d93741 | |
parent | da62fca3055f3059f859ae57f2ae9b5190bc129f (diff) | |
parent | 4d18d39d996211984760e78b829a19b91c61b079 (diff) |
Merge pull request #163 from sixlettervariables/fix-win32-build-problems
Fix Win32 build problems
-rw-r--r-- | config.h.win32 | 138 | ||||
-rw-r--r-- | json-c.vcproj | 10 | ||||
-rw-r--r-- | json-c.vcxproj | 116 | ||||
-rw-r--r-- | json-c.vcxproj.filters | 81 | ||||
-rw-r--r-- | json_config.h.win32 | 3 | ||||
-rw-r--r-- | linkhash.c | 5 |
6 files changed, 322 insertions, 31 deletions
diff --git a/config.h.win32 b/config.h.win32 index ec3a84a..6515945 100644 --- a/config.h.win32 +++ b/config.h.win32 @@ -1,26 +1,42 @@ -/* - * $Id: config.h.win32,v 1.2 2006/01/26 02:16:28 mclark Exp $ - * - * Copyright (c) 2004, 2005 Metaparadigm Pte. Ltd. - * Michael Clark <michael@metaparadigm.com> - * - * This library is free software; you can redistribute it and/or modify - * it under the terms of the MIT license. See COPYING for details. - * - */ - -/* config.h.win32 Generated by configure. */ - -#define PACKAGE_STRING "JSON C Library 0.2" -#define PACKAGE_BUGREPORT "json-c@googlegroups.com" -#define PACKAGE_NAME "JSON C Library" -#define PACKAGE_TARNAME "json-c" -#define PACKAGE_VERSION "0.2" -
/* config.h.in. Generated from configure.ac by autoheader. */
+/* Enable RDRANR Hardware RNG Hash Seed */
+#undef ENABLE_RDRAND
+
+/* Define if .gnu.warning accepts long strings. */
+#undef HAS_GNU_WARNING_LONG
+
+/* Define to 1 if you have the declaration of `INFINITY', and to 0 if you
+ don't. */
+#define HAVE_DECL_INFINITY 1
+
+/* Define to 1 if you have the declaration of `isinf', and to 0 if you don't.
+ */
+#define HAVE_DECL_ISINF 1
+
+/* Define to 1 if you have the declaration of `isnan', and to 0 if you don't.
+ */
+#define HAVE_DECL_ISNAN 1
+
+/* Define to 1 if you have the declaration of `nan', and to 0 if you don't. */
+#define HAVE_DECL_NAN 1
+
+/* Define to 1 if you have the declaration of `_finite', and to 0 if you
+ don't. */
+#define HAVE_DECL__FINITE 0
+
+/* Define to 1 if you have the declaration of `_isnan', and to 0 if you don't.
+ */
+#define HAVE_DECL__ISNAN 0
+
+/* Define to 1 if you have the <dlfcn.h> header file. */
+#undef HAVE_DLFCN_H
+
/* Define to 1 if you don't have `vprintf' but do have `_doprnt.' */
-/* #undef HAVE_DOPRNT */
+#undef HAVE_DOPRNT
+
+/* Define to 1 if you have the <endian.h> header file. */
+#define HAVE_ENDIAN_H 1
/* Define to 1 if you have the <fcntl.h> header file. */
#define HAVE_FCNTL_H 1
@@ -31,6 +47,9 @@ /* Define to 1 if you have the <limits.h> header file. */
#define HAVE_LIMITS_H 1
+/* Define to 1 if you have the <locale.h> header file. */
+#define HAVE_LOCALE_H 1
+
/* Define to 1 if your system has a GNU libc compatible `malloc' function, and
to 0 otherwise. */
#define HAVE_MALLOC 1
@@ -43,19 +62,28 @@ /* Define to 1 if your system has a GNU libc compatible `realloc' function,
and to 0 otherwise. */
-#define HAVE_REALLOC 1 - +#define HAVE_REALLOC 1
+
+/* Define to 1 if you have the `setlocale' function. */
+#define HAVE_SETLOCALE 1
+
+/* Define to 1 if you have the `snprintf' function. */
+#undef HAVE_SNPRINTF
+
+/* Define to 1 if you have the <stdarg.h> header file. */
+#define HAVE_STDARG_H 1
+
/* Define to 1 if you have the <stdint.h> header file. */
#define HAVE_STDINT_H 1
/* Define to 1 if you have the <stdlib.h> header file. */
#define HAVE_STDLIB_H 1
-/* Define to 1 if you have the `strdup' function. */
-#undef HAVE_STRNDUP
+/* Define to 1 if you have the `strcasecmp' function. */
+#define HAVE_STRCASECMP 1
-/* Define to 1 if you have the <stdarg.h> header file. */
-#define HAVE_STDARG_H 1
+/* Define to 1 if you have the `strdup' function. */
+#define HAVE_STRDUP 1
/* Define to 1 if you have the `strerror' function. */
#define HAVE_STRERROR 1
@@ -66,9 +94,15 @@ /* Define to 1 if you have the <string.h> header file. */
#define HAVE_STRING_H 1
+/* Define to 1 if you have the `strncasecmp' function. */
+#define HAVE_STRNCASECMP 1
+
/* Define to 1 if you have the <syslog.h> header file. */
#undef HAVE_SYSLOG_H
+/* Define to 1 if you have the <sys/cdefs.h> header file. */
+#undef HAVE_SYS_CDEFS_H
+
/* Define to 1 if you have the <sys/param.h> header file. */
#undef HAVE_SYS_PARAM_H
@@ -81,14 +115,60 @@ /* Define to 1 if you have the <unistd.h> header file. */
#undef HAVE_UNISTD_H
+/* Define to 1 if you have the `vasprintf' function. */
+#undef HAVE_VASPRINTF
+
/* Define to 1 if you have the `vprintf' function. */
#undef HAVE_VPRINTF
+/* Define to 1 if you have the `vsnprintf' function. */
+#undef HAVE_VSNPRINTF
+
/* Define to 1 if you have the `vsyslog' function. */
#undef HAVE_VSYSLOG
-/* Define to 1 if you have the `strncasecmp' function. */
-#undef HAVE_STRNCASECMP
+/* Public define for json_inttypes.h */
+#define JSON_C_HAVE_INTTYPES_H 1
+
+/* Define to the sub-directory in which libtool stores uninstalled libraries.
+ */
+#undef LT_OBJDIR
+
+/* Name of package */
+#define PACKAGE "json-c"
+
+/* Define to the address where bug reports for this package should be sent. */
+#define PACKAGE_BUGREPORT "json-c@googlegroups.com"
+
+/* Define to the full name of this package. */
+#define PACKAGE_NAME "JSON C Library"
+
+/* Define to the full name and version of this package. */
+#define PACKAGE_STRING "JSON C Library 0.12.99"
+
+/* Define to the one symbol short name of this package. */
+#define PACKAGE_TARNAME "json-c"
+
+/* Define to the home page for this package. */
+#define PACKAGE_URL "https://github.com/json-c/json-c"
+
+/* Define to the version of this package. */
+#define PACKAGE_VERSION "0.12.99"
/* Define to 1 if you have the ANSI C header files. */
-#define STDC_HEADERS 1 +#define STDC_HEADERS 1
+
+/* Version number of package */
+#define VERSION "0.12.99"
+
+/* Define to empty if `const' does not conform to ANSI C. */
+/* #undef const */
+
+/* Define to rpl_malloc if the replacement function should be used. */
+/* #undef malloc */
+
+/* Define to rpl_realloc if the replacement function should be used. */
+/* #undef realloc */
+
+/* Define to `unsigned int' if <sys/types.h> does not define. */
+/* #undef size_t */
diff --git a/json-c.vcproj b/json-c.vcproj index 0b88754..d44f517 100644 --- a/json-c.vcproj +++ b/json-c.vcproj @@ -38,7 +38,8 @@ Name="VCPostBuildEventTool"/> <Tool Name="VCPreBuildEventTool" - CommandLine="copy config.h.win32 config.h"/> + CommandLine="copy config.h.win32 config.h +copy json_config.h.win32 json_config.h"/> <Tool Name="VCPreLinkEventTool"/> <Tool @@ -76,7 +77,9 @@ <Tool Name="VCPostBuildEventTool"/> <Tool - Name="VCPreBuildEventTool"/> + Name="VCPreBuildEventTool" + CommandLine="copy config.h.win32 config.h +copy json_config.h.win32 json_config.h"/> <Tool Name="VCPreLinkEventTool"/> <Tool @@ -168,6 +171,9 @@ RelativePath=".\config.h.win32"> </File> <File + RelativePath=".\json_config.h.win32"> + </File> + <File RelativePath=".\README-WIN32.html"> </File> <File diff --git a/json-c.vcxproj b/json-c.vcxproj new file mode 100644 index 0000000..9c50712 --- /dev/null +++ b/json-c.vcxproj @@ -0,0 +1,116 @@ +<?xml version="1.0" encoding="utf-8"?> +<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> + <ItemGroup Label="ProjectConfigurations"> + <ProjectConfiguration Include="Debug|Win32"> + <Configuration>Debug</Configuration> + <Platform>Win32</Platform> + </ProjectConfiguration> + <ProjectConfiguration Include="Release|Win32"> + <Configuration>Release</Configuration> + <Platform>Win32</Platform> + </ProjectConfiguration> + </ItemGroup> + <PropertyGroup Label="Globals"> + <ProjectGuid>{04D8CDBE-FB3E-4362-87E6-07DC3C0083B2}</ProjectGuid> + <Keyword>Win32Proj</Keyword> + </PropertyGroup> + <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" /> + <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration"> + <ConfigurationType>StaticLibrary</ConfigurationType> + <PlatformToolset>v120</PlatformToolset> + <CharacterSet>MultiByte</CharacterSet> + </PropertyGroup> + <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration"> + <ConfigurationType>StaticLibrary</ConfigurationType> + <PlatformToolset>v120</PlatformToolset> + <CharacterSet>MultiByte</CharacterSet> + </PropertyGroup> + <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" /> + <ImportGroup Label="ExtensionSettings"> + </ImportGroup> + <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets"> + <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> + </ImportGroup> + <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets"> + <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> + </ImportGroup> + <PropertyGroup Label="UserMacros" /> + <PropertyGroup> + <_ProjectFileVersion>12.0.30324.0</_ProjectFileVersion> + </PropertyGroup> + <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"> + <OutDir>Debug\</OutDir> + <IntDir>Debug\</IntDir> + </PropertyGroup> + <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'"> + <OutDir>Release\</OutDir> + <IntDir>Release\</IntDir> + </PropertyGroup> + <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"> + <ClCompile> + <Optimization>Disabled</Optimization> + <PreprocessorDefinitions>WIN32;_DEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions> + <MinimalRebuild>true</MinimalRebuild> + <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks> + <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary> + <PrecompiledHeader /> + <WarningLevel>Level3</WarningLevel> + <DebugInformationFormat>EditAndContinue</DebugInformationFormat> + </ClCompile> + <Lib> + <OutputFile>$(OutDir)json-c.lib</OutputFile> + </Lib> + <PreBuildEvent> + <Command>copy config.h.win32 config.h +copy json_config.h.win32 json_config.h +</Command> + </PreBuildEvent> + </ItemDefinitionGroup> + <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'"> + <ClCompile> + <PreprocessorDefinitions>WIN32;NDEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions> + <RuntimeLibrary>MultiThreaded</RuntimeLibrary> + <PrecompiledHeader /> + <WarningLevel>Level3</WarningLevel> + <DebugInformationFormat>ProgramDatabase</DebugInformationFormat> + </ClCompile> + <Lib> + <OutputFile>$(OutDir)json-c.lib</OutputFile> + </Lib> + <PreBuildEvent> + <Command>copy config.h.win32 config.h +copy json_config.h.win32 json_config.h +</Command> + </PreBuildEvent> + </ItemDefinitionGroup> + <ItemGroup> + <ClCompile Include="arraylist.c" /> + <ClCompile Include="debug.c" /> + <ClCompile Include="json_object.c" /> + <ClCompile Include="json_tokener.c" /> + <ClCompile Include="json_util.c" /> + <ClCompile Include="linkhash.c" /> + <ClCompile Include="printbuf.c" /> + </ItemGroup> + <ItemGroup> + <ClInclude Include="arraylist.h" /> + <ClInclude Include="bits.h" /> + <ClInclude Include="debug.h" /> + <ClInclude Include="json_object.h" /> + <ClInclude Include="json_object_private.h" /> + <ClInclude Include="json_tokener.h" /> + <ClInclude Include="json_util.h" /> + <ClInclude Include="linkhash.h" /> + <ClInclude Include="printbuf.h" /> + </ItemGroup> + <ItemGroup> + <None Include="config.h.win32" /> + <None Include="Doxyfile" /> + <None Include="json_config.h.win32" /> + <None Include="README-WIN32.html" /> + <None Include="README.html" /> + </ItemGroup> + <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" /> + <ImportGroup Label="ExtensionTargets"> + </ImportGroup> +</Project>
\ No newline at end of file diff --git a/json-c.vcxproj.filters b/json-c.vcxproj.filters new file mode 100644 index 0000000..1805d88 --- /dev/null +++ b/json-c.vcxproj.filters @@ -0,0 +1,81 @@ +<?xml version="1.0" encoding="utf-8"?> +<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> + <ItemGroup> + <Filter Include="Source Files"> + <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier> + <Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions> + </Filter> + <Filter Include="Header Files"> + <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier> + <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions> + </Filter> + <Filter Include="Resource Files"> + <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier> + <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx</Extensions> + </Filter> + <Filter Include="Documentation"> + <UniqueIdentifier>{d3849076-874e-490e-858c-0871d04d1ecb}</UniqueIdentifier> + </Filter> + </ItemGroup> + <ItemGroup> + <ClCompile Include="arraylist.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="debug.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="json_object.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="json_tokener.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="json_util.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="linkhash.c"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="printbuf.c"> + <Filter>Source Files</Filter> + </ClCompile> + </ItemGroup> + <ItemGroup> + <ClInclude Include="arraylist.h"> + <Filter>Header Files</Filter> + </ClInclude> + <ClInclude Include="bits.h"> + <Filter>Header Files</Filter> + </ClInclude> + <ClInclude Include="debug.h"> + <Filter>Header Files</Filter> + </ClInclude> + <ClInclude Include="json_object.h"> + <Filter>Header Files</Filter> + </ClInclude> + <ClInclude Include="json_object_private.h"> + <Filter>Header Files</Filter> + </ClInclude> + <ClInclude Include="json_tokener.h"> + <Filter>Header Files</Filter> + </ClInclude> + <ClInclude Include="json_util.h"> + <Filter>Header Files</Filter> + </ClInclude> + <ClInclude Include="linkhash.h"> + <Filter>Header Files</Filter> + </ClInclude> + <ClInclude Include="printbuf.h"> + <Filter>Header Files</Filter> + </ClInclude> + </ItemGroup> + <ItemGroup> + <None Include="Doxyfile"> + <Filter>Documentation</Filter> + </None> + <None Include="config.h.win32" /> + <None Include="README-WIN32.html" /> + <None Include="README.html" /> + <None Include="json_config.h.win32" /> + </ItemGroup> +</Project>
\ No newline at end of file diff --git a/json_config.h.win32 b/json_config.h.win32 new file mode 100644 index 0000000..405fda2 --- /dev/null +++ b/json_config.h.win32 @@ -0,0 +1,3 @@ + +/* Define to 1 if you have the <inttypes.h> header file. */ +#define JSON_C_HAVE_INTTYPES_H 1 @@ -21,6 +21,11 @@ # include <endian.h> /* attempt to define endianness */ #endif +#ifdef _MSC_VER +# define WIN32_LEAN_AND_MEAN +# include <windows.h> /* Get InterlockedCompareExchange */ +#endif + #include "random_seed.h" #include "linkhash.h" |