Compare commits

...

2 Commits

Author SHA1 Message Date
frsyuki
568704ed22 fixes Visual C++ compatibility 2010-03-19 13:34:53 +09:00
frsyuki
05a7e4eb64 ruby: add msgpack.mingw.{gemspec,sh} 2010-03-02 17:09:59 +09:00
12 changed files with 398 additions and 285 deletions

View File

@@ -11,3 +11,8 @@ nobase_include_HEADERS = \
msgpack/unpack_template.h \ msgpack/unpack_template.h \
msgpack/sysdep.h msgpack/sysdep.h
EXTRA_DIST = \
msgpack_vc8.vcproj \
msgpack_vc8.sln \
msgpack_vc8.postbuild.bat

View File

@@ -19,8 +19,6 @@
#define MSGPACK_ZONE_H__ #define MSGPACK_ZONE_H__
#include "msgpack/sysdep.h" #include "msgpack/sysdep.h"
#include <stddef.h>
#include <stdbool.h>
#ifdef __cplusplus #ifdef __cplusplus
extern "C" { extern "C" {

View File

@@ -52,7 +52,7 @@ static int template_execute(template_context* ctx,
static inline msgpack_object template_callback_root(unpack_user* u) static inline msgpack_object template_callback_root(unpack_user* u)
{ msgpack_object o; return o; } { msgpack_object o = {}; return o; }
static inline int template_callback_uint8(unpack_user* u, uint8_t d, msgpack_object* o) static inline int template_callback_uint8(unpack_user* u, uint8_t d, msgpack_object* o)
{ o->type = MSGPACK_OBJECT_POSITIVE_INTEGER; o->via.u64 = d; return 0; } { o->type = MSGPACK_OBJECT_POSITIVE_INTEGER; o->via.u64 = d; return 0; }

View File

@@ -30,7 +30,6 @@ bool msgpack_vrefbuffer_init(msgpack_vrefbuffer* vbuf,
vbuf->chunk_size = chunk_size; vbuf->chunk_size = chunk_size;
vbuf->ref_size = ref_size; vbuf->ref_size = ref_size;
// glibcは72バイト以下のmallocが高速
size_t nfirst = (sizeof(struct iovec) < 72/2) ? size_t nfirst = (sizeof(struct iovec) < 72/2) ?
72 / sizeof(struct iovec) : 8; 72 / sizeof(struct iovec) : 8;

View File

@@ -1,6 +1,6 @@
AC_INIT(msgpack/unpack_template.h) AC_INIT(msgpack/unpack_template.h)
AC_CONFIG_AUX_DIR(ac) AC_CONFIG_AUX_DIR(ac)
AM_INIT_AUTOMAKE(msgpack, 0.4.1) AM_INIT_AUTOMAKE(msgpack, 0.4.3)
AC_CONFIG_HEADER(config.h) AC_CONFIG_HEADER(config.h)
AC_SUBST(CFLAGS) AC_SUBST(CFLAGS)

41
msgpack_vc8.postbuild.bat Normal file
View File

@@ -0,0 +1,41 @@
IF NOT EXIST include MKDIR include
IF NOT EXIST include\msgpack MKDIR include\msgpack
IF NOT EXIST include\msgpack\type MKDIR include\msgpack\type
IF NOT EXIST include\msgpack\type\tr1 MKDIR include\msgpack\type\tr1
copy msgpack\pack_define.h include\msgpack\
copy msgpack\pack_template.h include\msgpack\
copy msgpack\unpack_define.h include\msgpack\
copy msgpack\unpack_template.h include\msgpack\
copy msgpack\sysdep.h include\msgpack\
copy c\msgpack.h include\
copy c\msgpack\sbuffer.h include\msgpack\
copy c\msgpack\vrefbuffer.h include\msgpack\
copy c\msgpack\pack.h include\msgpack\
copy c\msgpack\unpack.h include\msgpack\
copy c\msgpack\object.h include\msgpack\
copy c\msgpack\zone.h include\msgpack\
copy cpp\msgpack.hpp include\
copy cpp\msgpack\sbuffer.hpp include\msgpack\
copy cpp\msgpack\vrefbuffer.hpp include\msgpack\
copy cpp\msgpack\pack.hpp include\msgpack\
copy cpp\msgpack\unpack.hpp include\msgpack\
copy cpp\msgpack\object.hpp include\msgpack\
copy cpp\msgpack\zone.hpp include\msgpack\
copy cpp\msgpack\type.hpp include\msgpack\type\
copy cpp\msgpack\type\bool.hpp include\msgpack\type\
copy cpp\msgpack\type\float.hpp include\msgpack\type\
copy cpp\msgpack\type\int.hpp include\msgpack\type\
copy cpp\msgpack\type\list.hpp include\msgpack\type\
copy cpp\msgpack\type\deque.hpp include\msgpack\type\
copy cpp\msgpack\type\map.hpp include\msgpack\type\
copy cpp\msgpack\type\nil.hpp include\msgpack\type\
copy cpp\msgpack\type\pair.hpp include\msgpack\type\
copy cpp\msgpack\type\raw.hpp include\msgpack\type\
copy cpp\msgpack\type\set.hpp include\msgpack\type\
copy cpp\msgpack\type\string.hpp include\msgpack\type\
copy cpp\msgpack\type\vector.hpp include\msgpack\type\
copy cpp\msgpack\type\tuple.hpp include\msgpack\type\
copy cpp\msgpack\type\define.hpp include\msgpack\type\
copy cpp\msgpack\type\tr1\unordered_map.hpp include\msgpack\type\
copy cpp\msgpack\type\tr1\unordered_set.hpp include\msgpack\type\

20
msgpack_vc8.sln Normal file
View File

@@ -0,0 +1,20 @@

Microsoft Visual Studio Solution File, Format Version 9.00
# Visual C++ Express 2008
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "MessagePack", "msgpack_vc8.vcproj", "{122A2EA4-B283-4241-9655-786DE78283B2}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Win32 = Debug|Win32
Release|Win32 = Release|Win32
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{122A2EA4-B283-4241-9655-786DE78283B2}.Debug|Win32.ActiveCfg = Debug|Win32
{122A2EA4-B283-4241-9655-786DE78283B2}.Debug|Win32.Build.0 = Debug|Win32
{122A2EA4-B283-4241-9655-786DE78283B2}.Release|Win32.ActiveCfg = Release|Win32
{122A2EA4-B283-4241-9655-786DE78283B2}.Release|Win32.Build.0 = Release|Win32
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
EndGlobal

558
msgpack_vc8.vcproj Normal file → Executable file
View File

@@ -1,275 +1,283 @@
<?xml version="1.0" encoding="shift_jis"?> <?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioProject <VisualStudioProject
ProjectType="Visual C++" ProjectType="Visual C++"
Version="8.00" Version="8.00"
Name="MessagePack" Name="MessagePack"
ProjectGUID="{122A2EA4-B283-4241-9655-786DE78283B2}" ProjectGUID="{122A2EA4-B283-4241-9655-786DE78283B2}"
RootNamespace="MessagePack" RootNamespace="MessagePack"
Keyword="Win32Proj" Keyword="Win32Proj"
> >
<Platforms> <Platforms>
<Platform <Platform
Name="Win32" Name="Win32"
/> />
</Platforms> </Platforms>
<ToolFiles> <ToolFiles>
</ToolFiles> </ToolFiles>
<Configurations> <Configurations>
<Configuration <Configuration
Name="Debug|Win32" Name="Debug|Win32"
OutputDirectory="$(SolutionDir)$(ConfigurationName)" OutputDirectory="$(SolutionDir)$(ConfigurationName)"
IntermediateDirectory="$(ConfigurationName)" IntermediateDirectory="$(ConfigurationName)"
ConfigurationType="4" ConfigurationType="4"
CharacterSet="1" CharacterSet="1"
> >
<Tool <Tool
Name="VCPreBuildEventTool" Name="VCPreBuildEventTool"
/> />
<Tool <Tool
Name="VCCustomBuildTool" Name="VCCustomBuildTool"
/> Description="Gathering header files"
<Tool CommandLine="msgpack_vc8.postbuild.bat"
Name="VCXMLDataGeneratorTool" Outputs="include"
/> />
<Tool <Tool
Name="VCWebServiceProxyGeneratorTool" Name="VCXMLDataGeneratorTool"
/> />
<Tool <Tool
Name="VCMIDLTool" Name="VCWebServiceProxyGeneratorTool"
/> />
<Tool <Tool
Name="VCCLCompilerTool" Name="VCMIDLTool"
Optimization="0" />
AdditionalIncludeDirectories="cpp;c;." <Tool
PreprocessorDefinitions="WIN32;_DEBUG;_LIB" Name="VCCLCompilerTool"
MinimalRebuild="true" Optimization="0"
BasicRuntimeChecks="1" AdditionalIncludeDirectories="cpp;c;."
RuntimeLibrary="3" PreprocessorDefinitions="WIN32;_DEBUG;_LIB"
UsePrecompiledHeader="0" MinimalRebuild="true"
WarningLevel="3" BasicRuntimeChecks="1"
Detect64BitPortabilityProblems="true" RuntimeLibrary="3"
DebugInformationFormat="4" UsePrecompiledHeader="0"
/> WarningLevel="3"
<Tool Detect64BitPortabilityProblems="true"
Name="VCManagedResourceCompilerTool" DebugInformationFormat="4"
/> />
<Tool <Tool
Name="VCResourceCompilerTool" Name="VCManagedResourceCompilerTool"
/> />
<Tool <Tool
Name="VCPreLinkEventTool" Name="VCResourceCompilerTool"
/> />
<Tool <Tool
Name="VCLibrarianTool" Name="VCPreLinkEventTool"
/> />
<Tool <Tool
Name="VCALinkTool" Name="VCLibrarianTool"
/> OutputFile="lib\$(ProjectName)d.lib"
<Tool />
Name="VCXDCMakeTool" <Tool
/> Name="VCALinkTool"
<Tool />
Name="VCBscMakeTool" <Tool
/> Name="VCXDCMakeTool"
<Tool />
Name="VCFxCopTool" <Tool
/> Name="VCBscMakeTool"
<Tool />
Name="VCPostBuildEventTool" <Tool
/> Name="VCFxCopTool"
</Configuration> />
<Configuration <Tool
Name="Release|Win32" Name="VCPostBuildEventTool"
OutputDirectory="$(SolutionDir)$(ConfigurationName)" />
IntermediateDirectory="$(ConfigurationName)" </Configuration>
ConfigurationType="4" <Configuration
CharacterSet="1" Name="Release|Win32"
WholeProgramOptimization="1" OutputDirectory="$(SolutionDir)$(ConfigurationName)"
> IntermediateDirectory="$(ConfigurationName)"
<Tool ConfigurationType="4"
Name="VCPreBuildEventTool" CharacterSet="1"
/> WholeProgramOptimization="1"
<Tool >
Name="VCCustomBuildTool" <Tool
/> Name="VCPreBuildEventTool"
<Tool />
Name="VCXMLDataGeneratorTool" <Tool
/> Name="VCCustomBuildTool"
<Tool Description="Gathering header files"
Name="VCWebServiceProxyGeneratorTool" CommandLine="msgpack_vc8.postbuild.bat"
/> Outputs="include"
<Tool />
Name="VCMIDLTool" <Tool
/> Name="VCXMLDataGeneratorTool"
<Tool />
Name="VCCLCompilerTool" <Tool
AdditionalIncludeDirectories="cpp;c;." Name="VCWebServiceProxyGeneratorTool"
PreprocessorDefinitions="WIN32;NDEBUG;_LIB" />
RuntimeLibrary="2" <Tool
UsePrecompiledHeader="0" Name="VCMIDLTool"
WarningLevel="3" />
Detect64BitPortabilityProblems="true" <Tool
DebugInformationFormat="3" Name="VCCLCompilerTool"
/> AdditionalIncludeDirectories="cpp;c;."
<Tool PreprocessorDefinitions="WIN32;NDEBUG;_LIB"
Name="VCManagedResourceCompilerTool" RuntimeLibrary="2"
/> UsePrecompiledHeader="0"
<Tool WarningLevel="3"
Name="VCResourceCompilerTool" Detect64BitPortabilityProblems="true"
/> DebugInformationFormat="3"
<Tool />
Name="VCPreLinkEventTool" <Tool
/> Name="VCManagedResourceCompilerTool"
<Tool />
Name="VCLibrarianTool" <Tool
/> Name="VCResourceCompilerTool"
<Tool />
Name="VCALinkTool" <Tool
/> Name="VCPreLinkEventTool"
<Tool />
Name="VCXDCMakeTool" <Tool
/> Name="VCLibrarianTool"
<Tool OutputFile="lib\$(ProjectName).lib"
Name="VCBscMakeTool" />
/> <Tool
<Tool Name="VCALinkTool"
Name="VCFxCopTool" />
/> <Tool
<Tool Name="VCXDCMakeTool"
Name="VCPostBuildEventTool" />
/> <Tool
</Configuration> Name="VCBscMakeTool"
</Configurations> />
<References> <Tool
</References> Name="VCFxCopTool"
<Files> />
<Filter <Tool
Name="<EFBFBD>\<5C>[<5B>X <20>t<EFBFBD>@<40>C<EFBFBD><43>" Name="VCPostBuildEventTool"
Filter="cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx" />
UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}" </Configuration>
> </Configurations>
<File <References>
RelativePath=".\c\object.c" </References>
> <Files>
<FileConfiguration <Filter
Name="Debug|Win32" Name="Source Files"
> Filter="cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx"
<Tool UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
Name="VCCLCompilerTool" >
ObjectFile="$(IntDir)\$(InputName)1.obj" <File
XMLDocumentationFileName="$(IntDir)\$(InputName)1.xdc" RelativePath=".\c\object.c"
CompileAs="2" >
/> <FileConfiguration
</FileConfiguration> Name="Debug|Win32"
<FileConfiguration >
Name="Release|Win32" <Tool
> Name="VCCLCompilerTool"
<Tool ObjectFile="$(IntDir)\$(InputName)1.obj"
Name="VCCLCompilerTool" XMLDocumentationFileName="$(IntDir)\$(InputName)1.xdc"
ObjectFile="$(IntDir)\$(InputName)1.obj" CompileAs="2"
XMLDocumentationFileName="$(IntDir)\$(InputName)1.xdc" />
CompileAs="2" </FileConfiguration>
/> <FileConfiguration
</FileConfiguration> Name="Release|Win32"
</File> >
<File <Tool
RelativePath=".\cpp\object.cpp" Name="VCCLCompilerTool"
> ObjectFile="$(IntDir)\$(InputName)1.obj"
</File> XMLDocumentationFileName="$(IntDir)\$(InputName)1.xdc"
<File CompileAs="2"
RelativePath=".\c\unpack.c" />
> </FileConfiguration>
<FileConfiguration </File>
Name="Debug|Win32" <File
> RelativePath=".\cpp\object.cpp"
<Tool >
Name="VCCLCompilerTool" </File>
CompileAs="2" <File
/> RelativePath=".\c\unpack.c"
</FileConfiguration> >
<FileConfiguration <FileConfiguration
Name="Release|Win32" Name="Debug|Win32"
> >
<Tool <Tool
Name="VCCLCompilerTool" Name="VCCLCompilerTool"
CompileAs="2" CompileAs="2"
/> />
</FileConfiguration> </FileConfiguration>
</File> <FileConfiguration
<File Name="Release|Win32"
RelativePath=".\c\vrefbuffer.c" >
> <Tool
<FileConfiguration Name="VCCLCompilerTool"
Name="Debug|Win32" CompileAs="2"
> />
<Tool </FileConfiguration>
Name="VCCLCompilerTool" </File>
CompileAs="2" <File
/> RelativePath=".\c\vrefbuffer.c"
</FileConfiguration> >
<FileConfiguration <FileConfiguration
Name="Release|Win32" Name="Debug|Win32"
> >
<Tool <Tool
Name="VCCLCompilerTool" Name="VCCLCompilerTool"
CompileAs="2" CompileAs="2"
/> />
</FileConfiguration> </FileConfiguration>
</File> <FileConfiguration
<File Name="Release|Win32"
RelativePath=".\c\zone.c" >
> <Tool
<FileConfiguration Name="VCCLCompilerTool"
Name="Debug|Win32" CompileAs="2"
> />
<Tool </FileConfiguration>
Name="VCCLCompilerTool" </File>
CompileAs="2" <File
/> RelativePath=".\c\zone.c"
</FileConfiguration> >
<FileConfiguration <FileConfiguration
Name="Release|Win32" Name="Debug|Win32"
> >
<Tool <Tool
Name="VCCLCompilerTool" Name="VCCLCompilerTool"
CompileAs="2" CompileAs="2"
/> />
</FileConfiguration> </FileConfiguration>
</File> <FileConfiguration
</Filter> Name="Release|Win32"
<Filter >
Name="<22>w<EFBFBD>b<EFBFBD>_<EFBFBD>[ <20>t<EFBFBD>@<40>C<EFBFBD><43>" <Tool
Filter="h;hpp;hxx;hm;inl;inc;xsd" Name="VCCLCompilerTool"
UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}" CompileAs="2"
> />
<File </FileConfiguration>
RelativePath=".\msgpack\pack_define.h" </File>
> </Filter>
</File> <Filter
<File Name="Header Files"
RelativePath=".\msgpack\pack_template.h" Filter="h;hpp;hxx;hm;inl;inc;xsd"
> UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}"
</File> >
<File <File
RelativePath=".\msgpack\sysdep.h" RelativePath=".\msgpack\pack_define.h"
> >
</File> </File>
<File <File
RelativePath=".\msgpack\unpack_define.h" RelativePath=".\msgpack\pack_template.h"
> >
</File> </File>
<File <File
RelativePath=".\msgpack\unpack_template.h" RelativePath=".\msgpack\sysdep.h"
> >
</File> </File>
</Filter> <File
<Filter RelativePath=".\msgpack\unpack_define.h"
Name="<22><><EFBFBD>\<5C>[<5B>X <20>t<EFBFBD>@<40>C<EFBFBD><43>" >
Filter="rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav" </File>
UniqueIdentifier="{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}" <File
> RelativePath=".\msgpack\unpack_template.h"
</Filter> >
</Files> </File>
<Globals> </Filter>
</Globals> <Filter
</VisualStudioProject> Name="Resource Files"
Filter="rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav"
UniqueIdentifier="{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}"
>
</Filter>
</Files>
<Globals>
</Globals>
</VisualStudioProject>

View File

@@ -19,3 +19,8 @@ cat msgpack_test.rb | sed "s/require ['\"]msgpack['\"]/require File.dirname(__FI
gem build msgpack.gemspec gem build msgpack.gemspec
# ./msgpack.mingw.sh # on msys
# gem push msgpack-$version.gem
# gem push msgpack-$version-x86-mingw32.gem
# gem push msgpack-$version-mswin32.gem

View File

@@ -1,5 +1,5 @@
Gem::Specification.new do |s| Gem::Specification.new do |s|
s.platform = Gem::Platform::RUBY s.platform = Gem::Platform::RUBY
s.name = "msgpack" s.name = "msgpack"
s.version = "0.3.3" s.version = "0.3.3"
s.summary = "MessagePack, a binary-based efficient data interchange format." s.summary = "MessagePack, a binary-based efficient data interchange format."
@@ -7,10 +7,10 @@ Gem::Specification.new do |s|
s.email = "frsyuki@users.sourceforge.jp" s.email = "frsyuki@users.sourceforge.jp"
s.homepage = "http://msgpack.sourceforge.jp/" s.homepage = "http://msgpack.sourceforge.jp/"
s.rubyforge_project = "msgpack" s.rubyforge_project = "msgpack"
s.has_rdoc = false s.has_rdoc = false
s.extra_rdoc_files = ["README", "ChangeLog", "AUTHORS"] s.extra_rdoc_files = ["README", "ChangeLog", "AUTHORS"]
s.require_paths = ["lib", "ext"] s.require_paths = ["lib", "ext"]
s.files = Dir["lib/**/*", "ext/**/*", "msgpack/**/*", "test/**/*"] s.files = Dir["lib/**/*", "ext/**/*", "msgpack/**/*", "test/**/*"]
s.test_files = Dir["test/test_*.rb"] s.test_files = Dir["test/test_*.rb"]
s.extensions = Dir["ext/**/extconf.rb"] s.extensions = Dir["ext/**/extconf.rb"]
end end

View File

@@ -0,0 +1,16 @@
Gem::Specification.new do |s|
s.platform = Gem::Platform::CURRENT
s.name = "msgpack"
s.version = "0.3.3"
s.summary = "MessagePack, a binary-based efficient data interchange format."
s.author = "FURUHASHI Sadayuki"
s.email = "frsyuki@users.sourceforge.jp"
s.homepage = "http://msgpack.sourceforge.jp/"
s.rubyforge_project = "msgpack"
s.has_rdoc = false
s.extra_rdoc_files = ["README", "ChangeLog", "AUTHORS"]
s.require_paths = ["lib", "ext"]
s.files = Dir["lib/**/*", "ext/**/*", "msgpack/**/*", "test/**/*"]
s.test_files = Dir["test/test_*.rb"]
s.extensions = Dir["ext/**/extconf.rb"]
end

21
ruby/msgpack.mingw.sh Executable file
View File

@@ -0,0 +1,21 @@
#!/bin/sh
if [ -z "$1" ];then
echo "usage: $0 <version>"
exit 1
fi
version=$1
build=msgpack-mingw-build
./makegem.sh
gem build msgpack.mingw.gemspec
rm -rf $build
mkdir $build
cd $build
tar xvf ../msgpack-$version-x86-mingw32.gem
gunzip metadata.gz
sed s/x86-mingw32/mswin32/ metadata > metadata.tmp
mv metadata.tmp metadata
gzip metadata
tar cvf msgpack-$version-mswin32.gem metadata.gz data.tar.gz