summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--cpp/src/IceSSL/Makefile.mak2
-rw-r--r--cpp/src/IceStringConverter/IceStringConverter.rc39
-rw-r--r--cpp/src/IceStringConverter/Makefile.mak74
-rw-r--r--cpp/src/IceStringConverter/Plugin.cpp2
-rw-r--r--cpp/src/IceUtil/Thread.cpp7
-rw-r--r--cpp/src/Makefile1
-rw-r--r--cpp/src/Makefile.mak1
-rw-r--r--cpp/test/Ice/background/EndpointI.h3
-rw-r--r--py/demo/Ice/README4
9 files changed, 130 insertions, 3 deletions
diff --git a/cpp/src/IceSSL/Makefile.mak b/cpp/src/IceSSL/Makefile.mak
index 85818c297b7..4ef1afc1bbf 100644
--- a/cpp/src/IceSSL/Makefile.mak
+++ b/cpp/src/IceSSL/Makefile.mak
@@ -58,7 +58,7 @@ $(DLLNAME): $(OBJS) IceSSL.res
@if exist $(DLLNAME:.dll=.exp) del /q $(DLLNAME:.dll=.exp)
IceSSL.res: IceSSL.rc
- rc.exe $(RCFLAGS) IceSSL.res
+ rc.exe $(RCFLAGS) IceSSL.rc
clean::
del /q $(DLLNAME:.dll=.*)
diff --git a/cpp/src/IceStringConverter/IceStringConverter.rc b/cpp/src/IceStringConverter/IceStringConverter.rc
new file mode 100644
index 00000000000..4cb3c3416e0
--- /dev/null
+++ b/cpp/src/IceStringConverter/IceStringConverter.rc
@@ -0,0 +1,39 @@
+#include "winver.h"
+
+VS_VERSION_INFO VERSIONINFO
+ FILEVERSION 3,3,0,0
+ PRODUCTVERSION 3,3,0,0
+ FILEFLAGSMASK VS_FFI_FILEFLAGSMASK
+#ifdef _DEBUG
+ FILEFLAGS VS_FF_DEBUG
+ #define INTERNALNAME "icestringconverter33d\0"
+ #define ORIGINALFILENAME "icestringconverter33d.dll\0"
+#else
+ FILEFLAGS 0x0L
+ #define INTERNALNAME "icestringconverter33\0"
+ #define ORIGINALFILENAME "icestringconverter33.dll\0"
+#endif
+ FILEOS 0x4L
+ FILETYPE VFT_DLL
+ FILESUBTYPE 0x0L
+BEGIN
+ BLOCK "StringFileInfo"
+ BEGIN
+ BLOCK "040904e4"
+ BEGIN
+ VALUE "CompanyName", "ZeroC, Inc.\0"
+ VALUE "FileDescription", "IceStringConverter DLL\0"
+ VALUE "FileVersion", "3.3.0\0"
+ VALUE "InternalName", INTERNALNAME
+ VALUE "LegalCopyright", "Copyright (c) 2003 - 2008 ZeroC, Inc. All rights reserved.\0"
+ VALUE "OriginalFilename", ORIGINALFILENAME
+ VALUE "ProductName", "Ice\0"
+ VALUE "ProductVersion", "3.3.0\0"
+ END
+ END
+ BLOCK "VarFileInfo"
+ BEGIN
+ VALUE "Translation", 0x409, 1252
+ END
+END
+
diff --git a/cpp/src/IceStringConverter/Makefile.mak b/cpp/src/IceStringConverter/Makefile.mak
new file mode 100644
index 00000000000..a9fafafd0f2
--- /dev/null
+++ b/cpp/src/IceStringConverter/Makefile.mak
@@ -0,0 +1,74 @@
+# **********************************************************************
+#
+# Copyright (c) 2003-2008 ZeroC, Inc. All rights reserved.
+#
+# This copy of Ice is licensed to you under the terms described in the
+# ICE_LICENSE file included in this distribution.
+#
+# **********************************************************************
+
+top_srcdir = ..\..
+
+LIBNAME = $(top_srcdir)\lib\icestringconverter$(LIBSUFFIX).lib
+DLLNAME = $(top_srcdir)\bin\icestringconverter$(SOVERSION)$(LIBSUFFIX).dll
+
+TARGETS = $(LIBNAME) $(DLLNAME)
+
+OBJS = Plugin.obj
+
+SRCS = $(OBJS:.obj=.cpp)
+
+
+!include $(top_srcdir)/config/Make.rules.mak
+
+CPPFLAGS = $(CPPFLAGS) -DWIN32_LEAN_AND_MEAN
+
+LINKWITH = $(LIBS)
+
+!if "$(GENERATE_PDB)" == "yes"
+PDBFLAGS = /pdb:$(DLLNAME:.dll=.pdb)
+!endif
+
+!if "$(CPP_COMPILER)" == "BCC2007"
+RES_FILE = ,, IceStringConverter.res
+!else
+RES_FILE = IceStringConverter.res
+!endif
+
+$(LIBNAME): $(DLLNAME)
+
+$(DLLNAME): $(OBJS) IceStringConverter.res
+ $(LINK) $(LD_DLLFLAGS) $(PDBFLAGS) $(OBJS) $(PREOUT)$@ $(PRELIBS)$(LINKWITH) $(RES_FILE)
+ move $(DLLNAME:.dll=.lib) $(LIBNAME)
+ @if exist $@.manifest echo ^ ^ ^ Embedding manifest using $(MT) && \
+ $(MT) -nologo -manifest $@.manifest -outputresource:$@;#2 && del /q $@.manifest
+ @if exist $(DLLNAME:.dll=.exp) del /q $(DLLNAME:.dll=.exp)
+
+IceStringConverter.res: IceStringConverter.rc
+ rc.exe $(RCFLAGS) IceStringConverter.rc
+
+clean::
+ del /q $(DLLNAME:.dll=.*)
+ del /q IceStringConverter.res
+
+install:: all
+ copy $(LIBNAME) $(install_libdir)
+ copy $(DLLNAME) $(install_bindir)
+
+!if "$(OPTIMIZE)" != "yes"
+
+!if "$(CPP_COMPILER)" == "BCC2007"
+
+install:: all
+ copy $(DLLNAME:.dll=.tds) $(install_bindir)
+
+!else
+
+install:: all
+ copy $(DLLNAME:.dll=.pdb) $(install_bindir)
+
+!endif
+
+!endif
+
+!include .depend
diff --git a/cpp/src/IceStringConverter/Plugin.cpp b/cpp/src/IceStringConverter/Plugin.cpp
index 6ae52006621..bdf34dfe75f 100644
--- a/cpp/src/IceStringConverter/Plugin.cpp
+++ b/cpp/src/IceStringConverter/Plugin.cpp
@@ -40,7 +40,7 @@ createStringConverter(const CommunicatorPtr& communicator, const string& name, c
{
if(args[i].find("windows=") == 0)
{
- cp = atoi(args[i].substr(strlen("windows=")));
+ cp = atoi(args[i].substr(strlen("windows=")).c_str());
}
else if(args[i].find("iconv=") != 0)
{
diff --git a/cpp/src/IceUtil/Thread.cpp b/cpp/src/IceUtil/Thread.cpp
index f9d7290951c..bb9521b72bc 100644
--- a/cpp/src/IceUtil/Thread.cpp
+++ b/cpp/src/IceUtil/Thread.cpp
@@ -20,6 +20,7 @@
#include <IceUtil/Time.h>
#include <IceUtil/ThreadException.h>
#include <climits>
+#include <exception>
using namespace std;
@@ -150,7 +151,11 @@ WINAPI startHook(void* arg)
}
catch(...)
{
- std::terminate();
+#if defined(_MSC_VER) && (_MSC_VER < 1300)
+ terminate();
+#else
+ std::terminate();
+#endif
}
thread->_done();
diff --git a/cpp/src/Makefile b/cpp/src/Makefile
index 6ad6902ed3e..c1f3907ecb9 100644
--- a/cpp/src/Makefile
+++ b/cpp/src/Makefile
@@ -26,6 +26,7 @@ SUBDIRS = IceUtil \
slice2sl \
slice2html \
Ice \
+ IceStringConverter \
IceXML \
IceSSL \
Freeze \
diff --git a/cpp/src/Makefile.mak b/cpp/src/Makefile.mak
index 1c88d6b12fb..20beed75375 100644
--- a/cpp/src/Makefile.mak
+++ b/cpp/src/Makefile.mak
@@ -26,6 +26,7 @@ SUBDIRS = IceUtil \
slice2sl \
slice2html \
Ice \
+ IceStringConverter \
IceXML \
IceSSL \
IceBox \
diff --git a/cpp/test/Ice/background/EndpointI.h b/cpp/test/Ice/background/EndpointI.h
index 0ed8e9e7c2b..08b72735dca 100644
--- a/cpp/test/Ice/background/EndpointI.h
+++ b/cpp/test/Ice/background/EndpointI.h
@@ -44,7 +44,10 @@ public:
protected:
+#if !defined(_MSC_VER) || _MSC_VER > 1300
using IceInternal::EndpointI::connectors;
+#endif
+
private:
EndpointI(const IceInternal::EndpointIPtr&);
diff --git a/py/demo/Ice/README b/py/demo/Ice/README
index 7435eb7c771..0ac4d943801 100644
--- a/py/demo/Ice/README
+++ b/py/demo/Ice/README
@@ -19,6 +19,10 @@ Demos in this directory:
call back into an object provided by the client as part of that
invocation.
+- converter
+
+ This demo shows how to use string converters.
+
- hello
This demo illustrates how to invoke ordinary (twoway) operations, as