ports/171643: [MAINTAINER] devel/ice: Fixes for Clang, C++11, libc++
Michael Gmelin
freebsd at grem.de
Fri Sep 14 16:40:12 UTC 2012
>Number: 171643
>Category: ports
>Synopsis: [MAINTAINER] devel/ice: Fixes for Clang, C++11, libc++
>Confidential: no
>Severity: non-critical
>Priority: low
>Responsible: freebsd-ports-bugs
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: change-request
>Submitter-Id: current-users
>Arrival-Date: Fri Sep 14 16:40:11 UTC 2012
>Closed-Date:
>Last-Modified:
>Originator: Michael Gmelin
>Release: FreeBSD 9.1-RC1 amd64
>Organization:
Grem Equity GmbH
>Environment:
System: FreeBSD clangcompile 9.1-RC1 FreeBSD 9.1-RC1 #1 r240177: Fri Sep 7 14:37:21 UTC 2012
>Description:
This allows running Ice, built using Clang in C++11 mode and libc++
(-std=c++11 -stdlib=libc++) on FreeBSD 9.1-RC1 (all patches are
backwards compatible, so it still will build on earlier version of
FreeBSD using gcc 4.2. See also:
http://www.zeroc.com/forums/patches/5817-patch-compiling-ice-clang-c-11-libc.html
This also incorporates a patch published by ZeroC that fixes an
assert bug in IceStrom, see also:
http://www.zeroc.com/forums/patches/5781-patch-4-ice-3-4-2-icestorm-assert-bug-fix.html
I also changed the port skeleton, so it makes use of new-style options.
Part of this was increasing the indentation level, therefore the patch
to Makefile looks a lot more dramatic than it is.
Added file(s):
- files/patch-cpp-demo-Freeze-customEvictor-Evictor.h
- files/patch-cpp-include-IceUtil-Cache.h
- files/patch-cpp-include-IceUtil-Config.h
- files/patch-cpp-include-IceUtil-Shared.h
- files/patch-cpp-src-Freeze-MapI.h
- files/patch-cpp-src-Freeze-ObjectStore.cpp
- files/patch-cpp-src-Freeze-ObjectStore.h
- files/patch-cpp-src-Freeze-TransactionalEvictorContext.cpp
- files/patch-cpp-src-Freeze-TransactionalEvictorContext.h
- files/patch-cpp-src-Freeze-TransactionalEvictorI.cpp
- files/patch-cpp-src-IceGrid-FileCache.cpp
- files/patch-cpp-src-IceStorm-Replica.h
- files/patch-cpp-src-IceStorm-TopicI.cpp
- files/patch-cpp-src-IceStorm-TopicManagerI.cpp
- files/patch-cpp-src-IceUtil-Shared.cpp
- files/patch-cpp-src-slice2cpp-Main.cpp
- files/patch-cpp-src-slice2cs-Main.cpp
- files/patch-cpp-src-slice2freeze-Main.cpp
- files/patch-cpp-src-slice2freezej-Main.cpp
- files/patch-cpp-src-slice2html-Main.cpp
- files/patch-cpp-src-slice2java-Main.cpp
- files/patch-cpp-src-slice2php-Main.cpp
- files/patch-cpp-src-slice2py-Main.cpp
- files/patch-cpp-src-slice2rb-Main.cpp
Generated with FreeBSD Port Tools 0.99_6 (mode: change, diff: suffix)
>How-To-Repeat:
Try building the port using an /etc/make.conf that contains
CC=clang
CXX=clang++
CXXFLAGS+=-std=c++11 -stdlib=libc++
CPP=clang-cpp
>Fix:
Apply the following patch.
--- Ice-3.4.2_3.patch begins here ---
diff -ruN --exclude=CVS ../ice.orig/Makefile ./Makefile
--- ../ice.orig/Makefile 2012-03-24 16:57:39.000000000 +0100
+++ ./Makefile 2012-09-12 02:48:59.834014502 +0200
@@ -5,93 +5,92 @@
# $FreeBSD: ports/devel/ice/Makefile,v 1.22 2012/03/24 15:57:39 miwi Exp $
#
-PORTNAME= Ice
-PORTVERSION= 3.4.2
-PORTREVISION= 2
-CATEGORIES= devel
-MASTER_SITES= http://download.zeroc.com/Ice/3.4/
-
-MAINTAINER= freebsd at grem.de
-COMMENT= A modern alternative to object middleware such as CORBA/COM/DCOM/COM+
-
-LIB_DEPENDS= expat.6:${PORTSDIR}/textproc/expat2 \
- mcpp.3:${PORTSDIR}/devel/mcpp
-
-OPTIONS= TESTS "Build and run tests (requires lang/python)" on \
- DEMOS "Build demos" on
+PORTNAME= Ice
+PORTVERSION= 3.4.2
+PORTREVISION= 3
+CATEGORIES= devel
+MASTER_SITES= http://download.zeroc.com/Ice/3.4/
+
+MAINTAINER= freebsd at grem.de
+COMMENT= A modern alternative to object middleware such as CORBA/COM/DCOM/COM+
+
+LIB_DEPENDS= expat.6:${PORTSDIR}/textproc/expat2 \
+ mcpp.3:${PORTSDIR}/devel/mcpp
+
+OPTIONS_DEFINE= DEBUG DEMOS DOCS TESTS
+OPTIONS_DEFAULT= DEMOS TESTS
+TESTS_DESC= Build and run tests (requires lang/python)
+DEMOS_DESC= Build demos
.include <bsd.port.options.mk>
-.if defined(WITH_TESTS)
+.if ${PORT_OPTIONS:MTESTS}
USE_PYTHON_BUILD= yes
.endif
-USE_GMAKE= yes
-USE_ICONV= yes
-USE_BDB= 42+
+USE_GMAKE= yes
+USE_ICONV= yes
+USE_BDB= 42+
INVALID_BDB_VER= 2 3 40 41
-USE_LDCONFIG= yes
-BUILD_WRKSRC= ${WRKSRC}/cpp
-INSTALL_WRKSRC= ${WRKSRC}/cpp
-
-CFLAGS+= -ftemplate-depth-128 -fPIC -DPIC -Wall -D_REENTRANT ${PTHREAD_CFLAGS} -I${LOCALBASE}/include
-.if defined(DEBUG)
-CFLAGS+= -g
-.else
-CFLAGS+= -DNDEBUG
+USE_LDCONFIG= yes
+BUILD_WRKSRC= ${WRKSRC}/cpp
+INSTALL_WRKSRC= ${WRKSRC}/cpp
+
+CFLAGS+= -ftemplate-depth-128 -fPIC -DPIC -Wall -D_REENTRANT ${PTHREAD_CFLAGS} -I${LOCALBASE}/include
+.if !${PORT_OPTIONS:MDEBUG}
+CFLAGS+= -DNDEBUG
.endif
-.include <bsd.port.pre.mk>
.if ${ARCH} == "ia64"
-BROKEN= does not compile on ia64
+BROKEN= does not compile on ia64
.endif
.if ${ARCH} == "sparc64"
-BROKEN= fails to link
+BROKEN= fails to link
.endif
.if ((${ARCH} != i386) && (${ARCH} != powerpc))
-MAKE_ENV= LP64=yes
+MAKE_ENV= LP64=yes
.endif
-.if !defined(WITH_TESTS)
-MAKE_ENV+= NOTESTS=yes
+.if !${PORT_OPTIONS:MTESTS}
+MAKE_ENV+= NOTESTS=yes
.endif
-.if !defined(WITH_DEMOS)
-MAKE_ENV+= NODEMOS=yes
+.if !${PORT_OPTIONS:MDEMOS}
+MAKE_ENV+= NODEMOS=yes
.endif
-.if defined(NOPORTDOCS)
-MAKE_ENV+= NOPORTDOCS=yes
+.if !${PORT_OPTIONS:MDOCS}
+MAKE_ENV+= NOPORTDOCS=yes
.endif
post-patch:
- ${SED} 's|%%PTHREAD_LIBS%%|${PTHREAD_LIBS}|g; \
+ @${SED} 's|%%PTHREAD_LIBS%%|${PTHREAD_LIBS}|g; \
s|%%PREFIX%%|${PREFIX}|g; \
s|%%DATADIR%%|${DATADIR}|g; \
s|%%DOCSDIR%%|${DOCSDIR}|g; \
s|%%INSTALL_PROGRAM%%|${INSTALL_PROGRAM}|g; \
s|%%INSTALL_DATA%%|${INSTALL_DATA}|g' \
${FILESDIR}/Make.rules.FreeBSD > ${WRKSRC}/cpp/config/Make.rules.FreeBSD
- ${REINPLACE_CMD} 's|%%BDB_LIB_CXX_NAME%%|${BDB_LIB_CXX_NAME}|g; \
+ @${REINPLACE_CMD} 's|%%BDB_LIB_CXX_NAME%%|${BDB_LIB_CXX_NAME}|g; \
s|%%BDB_LIB_DIR%%|${BDB_LIB_DIR}|g; \
s|%%BDB_INCLUDE_DIR%%|${BDB_INCLUDE_DIR}|g; \
/install_docdir/d' \
${WRKSRC}/cpp/config/Make.rules
- ${REINPLACE_CMD} '/install_configdir/d' \
+ @${REINPLACE_CMD} '/install_configdir/d' \
${WRKSRC}/cpp/config/Make.rules
- ${REINPLACE_CMD} 's|INSTALL_PROGRAM|INSTALL_DATA|g' \
+ @${REINPLACE_CMD} 's|INSTALL_PROGRAM|INSTALL_DATA|g' \
${WRKSRC}/cpp/src/ca/Makefile
- ${REINPLACE_CMD} '/LICENSE/s/prefix/install_slicedir/' \
+ @${REINPLACE_CMD} '/LICENSE/s/prefix/install_slicedir/' \
${WRKSRC}/config/Make.common.rules
-.if defined(WITH_TESTS)
-TEST_CMD= @cd ${BUILD_WRKSRC} && ${PYTHON_CMD} ./allTests.py
+.if ${PORT_OPTIONS:MTESTS}
+TEST_CMD= @cd ${BUILD_WRKSRC} && ${PYTHON_CMD} ./allTests.py
post-build:
${TEST_CMD}
regression-test test: build
${TEST_CMD}
.endif
-.include <bsd.port.post.mk>
+.include <bsd.port.mk>
diff -ruN --exclude=CVS ../ice.orig/files/patch-cpp-demo-Freeze-customEvictor-Evictor.h ./files/patch-cpp-demo-Freeze-customEvictor-Evictor.h
--- ../ice.orig/files/patch-cpp-demo-Freeze-customEvictor-Evictor.h 1970-01-01 01:00:00.000000000 +0100
+++ ./files/patch-cpp-demo-Freeze-customEvictor-Evictor.h 2012-09-10 19:33:16.673709677 +0200
@@ -0,0 +1,10 @@
+--- cpp.orig/demo/Freeze/customEvictor/Evictor.h 2011-06-15 21:43:58.000000000 +0200
++++ cpp/demo/Freeze/customEvictor/Evictor.h 2012-09-10 11:43:58.000000000 +0200
+@@ -66,6 +66,7 @@ class Evictor : public Ice::ServantLocator
+ public:
+
+ Evictor(CurrentDatabase&, int);
++ virtual ~Evictor() ICE_NOEXCEPT_TRUE {};
+
+ virtual Ice::ObjectPtr locate(const Ice::Current&, Ice::LocalObjectPtr&);
+ virtual void finished(const Ice::Current&, const Ice::ObjectPtr&, const Ice::LocalObjectPtr&);
diff -ruN --exclude=CVS ../ice.orig/files/patch-cpp-include-Ice-Stream.h ./files/patch-cpp-include-Ice-Stream.h
--- ../ice.orig/files/patch-cpp-include-Ice-Stream.h 2012-03-24 16:57:39.000000000 +0100
+++ ./files/patch-cpp-include-Ice-Stream.h 2012-09-10 19:38:57.073749905 +0200
@@ -77,3 +77,14 @@
}
v = static_cast<T>(val);
}
+--- cpp.orig/include/Ice/Stream.h 2011-06-15 21:43:58.000000000 +0200
++++ cpp/include/Ice/Stream.h 2012-09-10 11:43:58.000000000 +0200
+@@ -664,7 +664,7 @@ struct StreamWriter<StreamTraitTypeSequenceBool>
+ outS->writeSize(static_cast<Int>(v.size()));
+ for(typename T::const_iterator p = v.begin(); p != v.end(); ++p)
+ {
+- outS->write(*p);
++ outS->write(static_cast<bool>(*p));
+ }
+ }
+ };
diff -ruN --exclude=CVS ../ice.orig/files/patch-cpp-include-IceUtil-Cache.h ./files/patch-cpp-include-IceUtil-Cache.h
--- ../ice.orig/files/patch-cpp-include-IceUtil-Cache.h 1970-01-01 01:00:00.000000000 +0100
+++ ./files/patch-cpp-include-IceUtil-Cache.h 2012-09-14 16:50:03.842305516 +0200
@@ -0,0 +1,10 @@
+--- cpp.orig/include/IceUtil/Cache.h 2011-06-15 21:43:58.000000000 +0200
++++ cpp/include/IceUtil/Cache.h 2012-09-10 11:43:58.000000000 +0200
+@@ -77,6 +77,6 @@ protected:
+ {
+ }
+
+- virtual ~Cache()
++ virtual ~Cache() ICE_NOEXCEPT_FALSE
+ {
+ }
diff -ruN --exclude=CVS ../ice.orig/files/patch-cpp-include-IceUtil-Config.h ./files/patch-cpp-include-IceUtil-Config.h
--- ../ice.orig/files/patch-cpp-include-IceUtil-Config.h 1970-01-01 01:00:00.000000000 +0100
+++ ./files/patch-cpp-include-IceUtil-Config.h 2012-09-10 23:25:21.254929179 +0200
@@ -0,0 +1,19 @@
+--- cpp.orig/include/IceUtil/Config.h 2011-06-15 21:43:58.000000000 +0200
++++ cpp/include/IceUtil/Config.h 2012-09-10 11:43:58.000000000 +0200
+@@ -248,3 +248,16 @@ public:
+ #define ICE_DEFAULT_MUTEX_PROTOCOL PrioNone
+
+ #endif
++
++
++//
++// Macro used for declaring destructors that might throw - required for C++11
++//
++#if __cplusplus >= 201103L
++#define ICE_DESTRUCTORS_DONT_THROW_BY_DEFAULT
++#define ICE_NOEXCEPT_FALSE noexcept(false)
++#define ICE_NOEXCEPT_TRUE noexcept(true)
++#else
++#define ICE_NOEXCEPT_FALSE
++#define ICE_NOEXCEPT_TRUE
++#endif
diff -ruN --exclude=CVS ../ice.orig/files/patch-cpp-include-IceUtil-Shared.h ./files/patch-cpp-include-IceUtil-Shared.h
--- ../ice.orig/files/patch-cpp-include-IceUtil-Shared.h 1970-01-01 01:00:00.000000000 +0100
+++ ./files/patch-cpp-include-IceUtil-Shared.h 2012-09-10 21:49:08.451696645 +0200
@@ -0,0 +1,72 @@
+--- cpp.orig/include/IceUtil/Shared.h 2011-06-15 21:43:58.000000000 +0200
++++ cpp/include/IceUtil/Shared.h 2012-09-10 11:43:58.000000000 +0200
+@@ -50,6 +50,11 @@
+ //
+ // A non thread-safe base class for reference-counted types.
+ //
++// IceUtil::SimpleSharedUnsafeDestructor
++// =====================
++//
++// A non thread-safe base class for reference-counted types - destructor might throw.
++//
+ // IceUtil::Shared
+ // ===============
+ //
+@@ -109,6 +114,57 @@ private:
+ bool _noDelete;
+ };
+
++class ICE_UTIL_API SimpleSharedUnsafeDestructor
++{
++public:
++
++ SimpleSharedUnsafeDestructor();
++ SimpleSharedUnsafeDestructor(const SimpleSharedUnsafeDestructor&);
++
++ virtual ~SimpleSharedUnsafeDestructor() ICE_NOEXCEPT_FALSE
++ {
++ }
++
++ SimpleSharedUnsafeDestructor& operator=(const SimpleSharedUnsafeDestructor&)
++ {
++ return *this;
++ }
++
++ void __incRef()
++ {
++ assert(_ref >= 0);
++ ++_ref;
++ }
++
++ void __decRef()
++ {
++ assert(_ref > 0);
++ if(--_ref == 0)
++ {
++ if(!_noDelete)
++ {
++ _noDelete = true;
++ delete this;
++ }
++ }
++ }
++
++ int __getRef() const
++ {
++ return _ref;
++ }
++
++ void __setNoDelete(bool b)
++ {
++ _noDelete = b;
++ }
++
++private:
++
++ int _ref;
++ bool _noDelete;
++};
++
+ class ICE_UTIL_API Shared
+ {
+ public:
diff -ruN --exclude=CVS ../ice.orig/files/patch-cpp-src-Freeze-MapDb.cpp ./files/patch-cpp-src-Freeze-MapDb.cpp
--- ../ice.orig/files/patch-cpp-src-Freeze-MapDb.cpp 2012-03-24 16:57:39.000000000 +0100
+++ ./files/patch-cpp-src-Freeze-MapDb.cpp 2012-09-10 22:04:07.519687409 +0200
@@ -1,5 +1,19 @@
--- cpp.orig/src/Freeze/MapDb.cpp 2011-06-15 21:43:58.000000000 +0200
-+++ cpp/src/Freeze/MapDb.cpp 2012-03-04 20:14:52.000000000 +0100
++++ cpp/src/Freeze/MapDb.cpp 2012-09-10 11:43:58.000000000 +0200
+@@ -72,7 +72,13 @@ Freeze::MapDb::~MapDb()
+ }
+ catch(const ::DbException& dx)
+ {
++#if defined(ICE_DESTRUCTORS_DONT_THROW_BY_DEFAULT)
++ Error out(_communicator->getLogger());
++ out << "DbException while closing database " << _dbName << ": "
++ << dx.what();
++#else
+ throw DatabaseException(__FILE__, __LINE__, dx.what());
++#endif
+ }
+ }
+ }
@@ -229,7 +229,11 @@
#ifndef NDEBUG
bool inserted =
diff -ruN --exclude=CVS ../ice.orig/files/patch-cpp-src-Freeze-MapI.h ./files/patch-cpp-src-Freeze-MapI.h
--- ../ice.orig/files/patch-cpp-src-Freeze-MapI.h 1970-01-01 01:00:00.000000000 +0100
+++ ./files/patch-cpp-src-Freeze-MapI.h 2012-09-10 21:54:08.599554544 +0200
@@ -0,0 +1,18 @@
+--- cpp.orig/src/Freeze/MapI.h 2011-06-15 21:43:58.000000000 +0200
++++ cpp/src/Freeze/MapI.h 2012-09-10 11:43:58.000000000 +0200
+@@ -63,12 +63,13 @@ public:
+ void
+ close();
+
+- class Tx : public IceUtil::SimpleShared
++ class Tx : public IceUtil::SimpleSharedUnsafeDestructor
+ {
+ public:
+
+ Tx(const MapHelperI&);
+- ~Tx();
++ ~Tx() ICE_NOEXCEPT_FALSE;
++ ;
+
+ void dead();
+
diff -ruN --exclude=CVS ../ice.orig/files/patch-cpp-src-Freeze-ObjectStore.cpp ./files/patch-cpp-src-Freeze-ObjectStore.cpp
--- ../ice.orig/files/patch-cpp-src-Freeze-ObjectStore.cpp 1970-01-01 01:00:00.000000000 +0100
+++ ./files/patch-cpp-src-Freeze-ObjectStore.cpp 2012-09-11 03:59:42.835768363 +0200
@@ -0,0 +1,11 @@
+--- cpp.orig/src/Freeze/ObjectStore.cpp 2011-06-15 21:43:58.000000000 +0200
++++ cpp/src/Freeze/ObjectStore.cpp 2012-09-10 11:43:58.000000000 +0200
+@@ -189,7 +189,7 @@ Freeze::ObjectStoreBase::ObjectStoreBase(const string& facet, const string& face
+ }
+ }
+
+-Freeze::ObjectStoreBase::~ObjectStoreBase()
++Freeze::ObjectStoreBase::~ObjectStoreBase() ICE_NOEXCEPT_FALSE
+ {
+ try
+ {
diff -ruN --exclude=CVS ../ice.orig/files/patch-cpp-src-Freeze-ObjectStore.h ./files/patch-cpp-src-Freeze-ObjectStore.h
--- ../ice.orig/files/patch-cpp-src-Freeze-ObjectStore.h 1970-01-01 01:00:00.000000000 +0100
+++ ./files/patch-cpp-src-Freeze-ObjectStore.h 2012-09-10 21:55:20.209510278 +0200
@@ -0,0 +1,11 @@
+--- cpp.orig/src/Freeze/ObjectStore.h 2011-06-15 21:43:58.000000000 +0200
++++ cpp/src/Freeze/ObjectStore.h 2012-09-10 11:43:58.000000000 +0200
+@@ -36,7 +36,7 @@ public:
+ ObjectStoreBase(const std::string&, const std::string&, bool, EvictorIBase*,
+ const std::vector<IndexPtr>&, bool);
+
+- virtual ~ObjectStoreBase();
++ virtual ~ObjectStoreBase() ICE_NOEXCEPT_FALSE;
+
+ const Ice::ObjectPtr& sampleServant() const;
+
diff -ruN --exclude=CVS ../ice.orig/files/patch-cpp-src-Freeze-TransactionalEvictorContext.cpp ./files/patch-cpp-src-Freeze-TransactionalEvictorContext.cpp
--- ../ice.orig/files/patch-cpp-src-Freeze-TransactionalEvictorContext.cpp 1970-01-01 01:00:00.000000000 +0100
+++ ./files/patch-cpp-src-Freeze-TransactionalEvictorContext.cpp 2012-09-10 21:56:29.779531328 +0200
@@ -0,0 +1,11 @@
+--- cpp.orig/src/Freeze/TransactionalEvictorContext.cpp 2011-06-15 21:43:58.000000000 +0200
++++ cpp/src/Freeze/TransactionalEvictorContext.cpp 2012-09-10 11:43:58.000000000 +0200
+@@ -273,7 +273,7 @@ Freeze::TransactionalEvictorContext::ServantHolder::ServantHolder() :
+ }
+
+
+-Freeze::TransactionalEvictorContext::ServantHolder::~ServantHolder()
++Freeze::TransactionalEvictorContext::ServantHolder::~ServantHolder() ICE_NOEXCEPT_FALSE
+ {
+ if(_ownBody && _body.ownServant)
+ {
diff -ruN --exclude=CVS ../ice.orig/files/patch-cpp-src-Freeze-TransactionalEvictorContext.h ./files/patch-cpp-src-Freeze-TransactionalEvictorContext.h
--- ../ice.orig/files/patch-cpp-src-Freeze-TransactionalEvictorContext.h 1970-01-01 01:00:00.000000000 +0100
+++ ./files/patch-cpp-src-Freeze-TransactionalEvictorContext.h 2012-09-10 21:56:46.249518436 +0200
@@ -0,0 +1,11 @@
+--- cpp.orig/src/Freeze/TransactionalEvictorContext.h 2011-06-15 21:43:58.000000000 +0200
++++ cpp/src/Freeze/TransactionalEvictorContext.h 2012-09-10 11:43:58.000000000 +0200
+@@ -34,7 +34,7 @@ public:
+ public:
+
+ ServantHolder();
+- ~ServantHolder();
++ ~ServantHolder() ICE_NOEXCEPT_FALSE;
+
+ void init(const TransactionalEvictorContextPtr&, const Ice::Current&, ObjectStore<TransactionalEvictorElement>*);
+
diff -ruN --exclude=CVS ../ice.orig/files/patch-cpp-src-Freeze-TransactionalEvictorI.cpp ./files/patch-cpp-src-Freeze-TransactionalEvictorI.cpp
--- ../ice.orig/files/patch-cpp-src-Freeze-TransactionalEvictorI.cpp 1970-01-01 01:00:00.000000000 +0100
+++ ./files/patch-cpp-src-Freeze-TransactionalEvictorI.cpp 2012-09-10 21:56:57.809805567 +0200
@@ -0,0 +1,11 @@
+--- cpp.orig/src/Freeze/TransactionalEvictorI.cpp 2011-06-15 21:43:58.000000000 +0200
++++ cpp/src/Freeze/TransactionalEvictorI.cpp 2012-09-10 11:43:58.000000000 +0200
+@@ -346,7 +346,7 @@ Freeze::TransactionalEvictorI::dispatch(Request& request)
+ {
+ }
+
+- ~CtxHolder()
++ ~CtxHolder() ICE_NOEXCEPT_FALSE
+ {
+ if(_ownCtx)
+ {
diff -ruN --exclude=CVS ../ice.orig/files/patch-cpp-src-Ice-Network.cpp ./files/patch-cpp-src-Ice-Network.cpp
--- ../ice.orig/files/patch-cpp-src-Ice-Network.cpp 2011-07-31 17:43:29.000000000 +0200
+++ ./files/patch-cpp-src-Ice-Network.cpp 2012-09-10 22:03:51.659742361 +0200
@@ -1,5 +1,5 @@
--- cpp.orig/src/Ice/Network.cpp 2011-06-15 21:43:58.000000000 +0200
-+++ cpp/src/Ice/Network.cpp 2011-07-15 23:40:26.000000000 +0200
++++ cpp/src/Ice/Network.cpp 2012-09-10 11:43:58.000000000 +0200
@@ -715,7 +715,11 @@
WSASetLastError(error);
#else
@@ -13,3 +13,12 @@
{
SocketException ex(__FILE__, __LINE__);
ex.error = getSocketErrno();
+@@ -1098,7 +1098,7 @@ IceInternal::doBind(SOCKET fd, const struct sockaddr_storage& addr)
+ size = 0; // Keep the compiler happy.
+ }
+
+- if(bind(fd, reinterpret_cast<const struct sockaddr*>(&addr), size) == SOCKET_ERROR)
++ if(::bind(fd, reinterpret_cast<const struct sockaddr*>(&addr), size) == SOCKET_ERROR)
+ {
+ closeSocketNoThrow(fd);
+ SocketException ex(__FILE__, __LINE__);
diff -ruN --exclude=CVS ../ice.orig/files/patch-cpp-src-IceGrid-FileCache.cpp ./files/patch-cpp-src-IceGrid-FileCache.cpp
--- ../ice.orig/files/patch-cpp-src-IceGrid-FileCache.cpp 1970-01-01 01:00:00.000000000 +0100
+++ ./files/patch-cpp-src-IceGrid-FileCache.cpp 2012-09-11 03:06:33.769768355 +0200
@@ -0,0 +1,20 @@
+--- cpp.orig/src/IceGrid/FileCache.cpp 2011-06-15 21:43:58.000000000 +0200
++++ cpp/src/IceGrid/FileCache.cpp 2012-09-10 11:43:58.000000000 +0200
+@@ -195,15 +195,12 @@ FileCache::read(const string& file, Ice::Long offset, int size, Ice::Long& newOf
+
+ totalSize += lineSize;
+ lines.push_back(line);
+-#if defined(_MSC_VER) && (_MSC_VER < 1300)
+- if(is.eof())
++
++ if(is.eof() || is.fail())
+ {
+ newOffset += line.size();
+ }
+ else
+-#else
+- if(!is.fail())
+-#endif
+ {
+ newOffset = is.tellg();
+ }
diff -ruN --exclude=CVS ../ice.orig/files/patch-cpp-src-IceStorm-Replica.h ./files/patch-cpp-src-IceStorm-Replica.h
--- ../ice.orig/files/patch-cpp-src-IceStorm-Replica.h 1970-01-01 01:00:00.000000000 +0100
+++ ./files/patch-cpp-src-IceStorm-Replica.h 2012-09-10 21:52:16.229537684 +0200
@@ -0,0 +1,15 @@
+--- cpp.orig/src/IceStorm/Replica.h 2011-06-15 21:43:58.000000000 +0200
++++ cpp/src/IceStorm/Replica.h 2012-09-10 11:43:58.000000000 +0200
+@@ -23,9 +23,9 @@ struct GroupNodeInfo
+ GroupNodeInfo(int i, LogUpdate l, const Ice::ObjectPrx& o = Ice::ObjectPrx());
+ bool operator<(const GroupNodeInfo& rhs) const;
+ bool operator==(const GroupNodeInfo& rhs) const;
+- const int id;
+- const LogUpdate llu;
+- const Ice::ObjectPrx observer;
++ int id;
++ LogUpdate llu;
++ Ice::ObjectPrx observer;
+ };
+
+ class Replica : virtual public IceUtil::Shared
diff -ruN --exclude=CVS ../ice.orig/files/patch-cpp-src-IceStorm-TopicI.cpp ./files/patch-cpp-src-IceStorm-TopicI.cpp
--- ../ice.orig/files/patch-cpp-src-IceStorm-TopicI.cpp 1970-01-01 01:00:00.000000000 +0100
+++ ./files/patch-cpp-src-IceStorm-TopicI.cpp 2012-09-12 22:38:08.054841760 +0200
@@ -0,0 +1,74 @@
+--- cpp.orig/src/IceStorm/TopicI.cpp 2011-06-15 21:43:58.000000000 +0200
++++ cpp/src/IceStorm/TopicI.cpp 2012-09-12 22:14:00.000000000 +0200
+@@ -666,7 +666,7 @@ TopicImpl::subscribe(const QoS& origQoS, const Ice::ObjectPrx& obj)
+ {
+ try
+ {
+- DatabaseConnectionPtr connection = _databaseCache->getConnection();
++ DatabaseConnectionPtr connection = _databaseCache->newConnection();
+ TransactionHolder txn(connection);
+
+ SubscriberRecordKey key;
+@@ -703,7 +703,7 @@ TopicImpl::subscribe(const QoS& origQoS, const Ice::ObjectPrx& obj)
+ {
+ try
+ {
+- DatabaseConnectionPtr connection = _databaseCache->getConnection();
++ DatabaseConnectionPtr connection = _databaseCache->newConnection();
+ TransactionHolder txn(connection);
+
+ SubscriberRecordKey key;
+@@ -788,7 +788,7 @@ TopicImpl::subscribeAndGetPublisher(const QoS& qos, const Ice::ObjectPrx& obj)
+ {
+ try
+ {
+- DatabaseConnectionPtr connection = _databaseCache->getConnection();
++ DatabaseConnectionPtr connection = _databaseCache->newConnection();
+ TransactionHolder txn(connection);
+
+ SubscriberRecordKey key;
+@@ -912,7 +912,7 @@ TopicImpl::link(const TopicPrx& topic, Ice::Int cost)
+ {
+ try
+ {
+- DatabaseConnectionPtr connection = _databaseCache->getConnection();
++ DatabaseConnectionPtr connection = _databaseCache->newConnection();
+ TransactionHolder txn(connection);
+
+ SubscriberRecordKey key;
+@@ -1311,7 +1311,7 @@ TopicImpl::observerAddSubscriber(const LogUpdate& llu, const SubscriberRecord& r
+ {
+ try
+ {
+- DatabaseConnectionPtr connection = _databaseCache->getConnection();
++ DatabaseConnectionPtr connection = _databaseCache->newConnection();
+ TransactionHolder txn(connection);
+
+ SubscriberRecordKey key;
+@@ -1380,7 +1380,7 @@ TopicImpl::observerRemoveSubscriber(const LogUpdate& llu, const Ice::IdentitySeq
+ {
+ try
+ {
+- DatabaseConnectionPtr connection = _databaseCache->getConnection();
++ DatabaseConnectionPtr connection = _databaseCache->newConnection();
+ TransactionHolder txn(connection);
+
+ for(Ice::IdentitySeq::const_iterator id = ids.begin(); id != ids.end(); ++id)
+@@ -1456,7 +1456,7 @@ TopicImpl::destroyInternal(const LogUpdate& origLLU, bool master)
+ {
+ try
+ {
+- DatabaseConnectionPtr connection = _databaseCache->getConnection();
++ DatabaseConnectionPtr connection = _databaseCache->newConnection();
+ TransactionHolder txn(connection);
+
+ // Erase all subscriber records and the topic record.
+@@ -1531,7 +1531,7 @@ TopicImpl::removeSubscribers(const Ice::IdentitySeq& ids)
+ {
+ try
+ {
+- DatabaseConnectionPtr connection = _databaseCache->getConnection();
++ DatabaseConnectionPtr connection = _databaseCache->newConnection();
+ TransactionHolder txn(connection);
+
+ for(Ice::IdentitySeq::const_iterator id = ids.begin(); id != ids.end(); ++id)
diff -ruN --exclude=CVS ../ice.orig/files/patch-cpp-src-IceStorm-TopicManagerI.cpp ./files/patch-cpp-src-IceStorm-TopicManagerI.cpp
--- ../ice.orig/files/patch-cpp-src-IceStorm-TopicManagerI.cpp 1970-01-01 01:00:00.000000000 +0100
+++ ./files/patch-cpp-src-IceStorm-TopicManagerI.cpp 2012-09-12 22:38:05.534737389 +0200
@@ -0,0 +1,47 @@
+--- cpp.orig/src/IceStorm/TopicManagerI.cpp 2011-06-15 21:43:58.000000000 +0200
++++ cpp/src/IceStorm/TopicManagerI.cpp 2012-09-12 22:14:00.000000000 +0200
+@@ -312,7 +312,7 @@ TopicManagerImpl::TopicManagerImpl(const InstancePtr& instance) :
+ _sync = _instance->nodeAdapter()->addWithUUID(_syncImpl);
+ }
+
+- DatabaseConnectionPtr connection = _databaseCache->getConnection();
++ DatabaseConnectionPtr connection = _databaseCache->newConnection();
+
+ // Ensure that the llu counter is present in the log.
+ LLUWrapperPtr lluWrapper = _databaseCache->getLLU(connection);
+@@ -381,7 +381,7 @@ TopicManagerImpl::create(const string& name)
+ {
+ try
+ {
+- DatabaseConnectionPtr connection = _databaseCache->getConnection();
++ DatabaseConnectionPtr connection = _databaseCache->newConnection();
+ TransactionHolder txn(connection);
+
+ SubscriberRecordKey key;
+@@ -486,7 +486,7 @@ TopicManagerImpl::observerInit(const LogUpdate& llu, const TopicContentSeq& cont
+ {
+ try
+ {
+- DatabaseConnectionPtr connection = _databaseCache->getConnection();
++ DatabaseConnectionPtr connection = _databaseCache->newConnection();
+ TransactionHolder txn(connection);
+
+ LLUWrapperPtr lluWrapper = _databaseCache->getLLU(connection);
+@@ -590,7 +590,7 @@ TopicManagerImpl::observerCreateTopic(const LogUpdate& llu, const string& name)
+ {
+ try
+ {
+- DatabaseConnectionPtr connection = _databaseCache->getConnection();
++ DatabaseConnectionPtr connection = _databaseCache->newConnection();
+ TransactionHolder txn(connection);
+
+ SubscriberRecordKey key;
+@@ -776,7 +776,7 @@ TopicManagerImpl::initMaster(const set<GroupNodeInfo>& slaves, const LogUpdate&
+ {
+ content.clear();
+
+- DatabaseConnectionPtr connection = _databaseCache->getConnection();
++ DatabaseConnectionPtr connection = _databaseCache->newConnection();
+ TransactionHolder txn(connection);
+
+ for(map<string, TopicImplPtr>::const_iterator p = _topics.begin(); p != _topics.end(); ++p)
diff -ruN --exclude=CVS ../ice.orig/files/patch-cpp-src-IceUtil-Shared.cpp ./files/patch-cpp-src-IceUtil-Shared.cpp
--- ../ice.orig/files/patch-cpp-src-IceUtil-Shared.cpp 1970-01-01 01:00:00.000000000 +0100
+++ ./files/patch-cpp-src-IceUtil-Shared.cpp 2012-09-10 21:50:42.709551485 +0200
@@ -0,0 +1,21 @@
+--- cpp.orig/src/IceUtil/Shared.cpp 2011-06-15 21:43:58.000000000 +0200
++++ cpp/src/IceUtil/Shared.cpp 2012-09-10 11:43:58.000000000 +0200
+@@ -96,6 +96,18 @@ IceUtil::SimpleShared::SimpleShared(const SimpleShared&) :
+ {
+ }
+
++IceUtil::SimpleSharedUnsafeDestructor::SimpleSharedUnsafeDestructor() :
++ _ref(0),
++ _noDelete(false)
++{
++}
++
++IceUtil::SimpleSharedUnsafeDestructor::SimpleSharedUnsafeDestructor(const SimpleSharedUnsafeDestructor&) :
++ _ref(0),
++ _noDelete(false)
++{
++}
++
+ IceUtil::Shared::Shared() :
+ _ref(0),
+ _noDelete(false)
diff -ruN --exclude=CVS ../ice.orig/files/patch-cpp-src-slice2cpp-Main.cpp ./files/patch-cpp-src-slice2cpp-Main.cpp
--- ../ice.orig/files/patch-cpp-src-slice2cpp-Main.cpp 1970-01-01 01:00:00.000000000 +0100
+++ ./files/patch-cpp-src-slice2cpp-Main.cpp 2012-09-10 21:49:54.469553384 +0200
@@ -0,0 +1,46 @@
+--- cpp.orig/src/slice2cpp/Main.cpp 2011-06-15 21:43:58.000000000 +0200
++++ cpp/src/slice2cpp/Main.cpp 2012-09-10 11:43:58.000000000 +0200
+@@ -22,7 +22,7 @@ using namespace Slice;
+ namespace
+ {
+
+-IceUtil::Mutex* mutex = 0;
++IceUtil::Mutex* mtx = 0;
+ bool interrupted = false;
+
+ class Init
+@@ -31,13 +31,13 @@ public:
+
+ Init()
+ {
+- mutex = new IceUtil::Mutex;
++ mtx = new IceUtil::Mutex;
+ }
+
+ ~Init()
+ {
+- delete mutex;
+- mutex = 0;
++ delete mtx;
++ mtx = 0;
+ }
+ };
+
+@@ -48,7 +48,7 @@ Init init;
+ void
+ interruptedCallback(int signal)
+ {
+- IceUtilInternal::MutexPtrLock<IceUtil::Mutex> sync(mutex);
++ IceUtilInternal::MutexPtrLock<IceUtil::Mutex> sync(mtx);
+
+ interrupted = true;
+ }
+@@ -294,7 +294,7 @@ compile(int argc, char* argv[])
+ }
+
+ {
+- IceUtilInternal::MutexPtrLock<IceUtil::Mutex> sync(mutex);
++ IceUtilInternal::MutexPtrLock<IceUtil::Mutex> sync(mtx);
+
+ if(interrupted)
+ {
diff -ruN --exclude=CVS ../ice.orig/files/patch-cpp-src-slice2cs-Main.cpp ./files/patch-cpp-src-slice2cs-Main.cpp
--- ../ice.orig/files/patch-cpp-src-slice2cs-Main.cpp 1970-01-01 01:00:00.000000000 +0100
+++ ./files/patch-cpp-src-slice2cs-Main.cpp 2012-09-10 21:49:54.469553384 +0200
@@ -0,0 +1,46 @@
+--- cpp.orig/src/slice2cs/Main.cpp 2011-06-15 21:43:58.000000000 +0200
++++ cpp/src/slice2cs/Main.cpp 2012-09-10 11:43:58.000000000 +0200
+@@ -22,7 +22,7 @@ using namespace Slice;
+ namespace
+ {
+
+-IceUtil::Mutex* mutex = 0;
++IceUtil::Mutex* mtx = 0;
+ bool interrupted = false;
+
+ class Init
+@@ -31,13 +31,13 @@ public:
+
+ Init()
+ {
+- mutex = new IceUtil::Mutex;
++ mtx = new IceUtil::Mutex;
+ }
+
+ ~Init()
+ {
+- delete mutex;
+- mutex = 0;
++ delete mtx;
++ mtx = 0;
+ }
+ };
+
+@@ -48,7 +48,7 @@ Init init;
+ void
+ interruptedCallback(int signal)
+ {
+- IceUtilInternal::MutexPtrLock<IceUtil::Mutex> sync(mutex);
++ IceUtilInternal::MutexPtrLock<IceUtil::Mutex> sync(mtx);
+
+ interrupted = true;
+ }
+@@ -303,7 +303,7 @@ compile(int argc, char* argv[])
+ }
+
+ {
+- IceUtilInternal::MutexPtrLock<IceUtil::Mutex> sync(mutex);
++ IceUtilInternal::MutexPtrLock<IceUtil::Mutex> sync(mtx);
+
+ if(interrupted)
+ {
diff -ruN --exclude=CVS ../ice.orig/files/patch-cpp-src-slice2freeze-Main.cpp ./files/patch-cpp-src-slice2freeze-Main.cpp
--- ../ice.orig/files/patch-cpp-src-slice2freeze-Main.cpp 1970-01-01 01:00:00.000000000 +0100
+++ ./files/patch-cpp-src-slice2freeze-Main.cpp 2012-09-10 21:49:54.469553384 +0200
@@ -0,0 +1,55 @@
+--- cpp.orig/src/slice2freeze/Main.cpp 2011-06-15 21:43:58.000000000 +0200
++++ cpp/src/slice2freeze/Main.cpp 2012-09-10 11:43:58.000000000 +0200
+@@ -28,7 +28,7 @@ using namespace Slice;
+ namespace
+ {
+
+-IceUtil::Mutex* mutex = 0;
++IceUtil::Mutex* mtx = 0;
+ bool interrupted = false;
+
+ class Init
+@@ -37,13 +37,13 @@ public:
+
+ Init()
+ {
+- mutex = new IceUtil::Mutex;
++ mtx = new IceUtil::Mutex;
+ }
+
+ ~Init()
+ {
+- delete mutex;
+- mutex = 0;
++ delete mtx;
++ mtx = 0;
+ }
+ };
+
+@@ -56,7 +56,7 @@ string ICE_ENCODING_COMPARE = "Freeze::IceEncodingCompare";
+ void
+ interruptedCallback(int signal)
+ {
+- IceUtilInternal::MutexPtrLock<IceUtil::Mutex> sync(mutex);
++ IceUtilInternal::MutexPtrLock<IceUtil::Mutex> sync(mtx);
+
+ interrupted = true;
+ }
+@@ -1995,7 +1995,7 @@ compile(int argc, char* argv[])
+ }
+
+ {
+- IceUtilInternal::MutexPtrLock<IceUtil::Mutex> sync(mutex);
++ IceUtilInternal::MutexPtrLock<IceUtil::Mutex> sync(mtx);
+
+ if(interrupted)
+ {
+@@ -2042,7 +2042,7 @@ compile(int argc, char* argv[])
+ u->destroy();
+
+ {
+- IceUtilInternal::MutexPtrLock<IceUtil::Mutex> sync(mutex);
++ IceUtilInternal::MutexPtrLock<IceUtil::Mutex> sync(mtx);
+
+ if(interrupted)
+ {
diff -ruN --exclude=CVS ../ice.orig/files/patch-cpp-src-slice2freezej-Main.cpp ./files/patch-cpp-src-slice2freezej-Main.cpp
--- ../ice.orig/files/patch-cpp-src-slice2freezej-Main.cpp 1970-01-01 01:00:00.000000000 +0100
+++ ./files/patch-cpp-src-slice2freezej-Main.cpp 2012-09-10 21:49:54.469553384 +0200
@@ -0,0 +1,55 @@
+--- cpp.orig/src/slice2freezej/Main.cpp 2011-06-15 21:43:58.000000000 +0200
++++ cpp/src/slice2freezej/Main.cpp 2012-09-10 11:43:58.000000000 +0200
+@@ -26,7 +26,7 @@ using namespace IceUtilInternal;
+ namespace
+ {
+
+-IceUtil::Mutex* mutex = 0;
++IceUtil::Mutex* mtx = 0;
+ bool interrupted = false;
+
+ class Init
+@@ -35,13 +35,13 @@ public:
+
+ Init()
+ {
+- mutex = new IceUtil::Mutex;
++ mtx = new IceUtil::Mutex;
+ }
+
+ ~Init()
+ {
+- delete mutex;
+- mutex = 0;
++ delete mtx;
++ mtx = 0;
+ }
+ };
+
+@@ -52,7 +52,7 @@ Init init;
+ void
+ interruptedCallback(int signal)
+ {
+- IceUtilInternal::MutexPtrLock<IceUtil::Mutex> lock(mutex);
++ IceUtilInternal::MutexPtrLock<IceUtil::Mutex> lock(mtx);
+
+ interrupted = true;
+ }
+@@ -1828,7 +1828,7 @@ compile(int argc, char* argv[])
+ }
+
+ {
+- IceUtilInternal::MutexPtrLock<IceUtil::Mutex> sync(mutex);
++ IceUtilInternal::MutexPtrLock<IceUtil::Mutex> sync(mtx);
+
+ if(interrupted)
+ {
+@@ -1923,7 +1923,7 @@ compile(int argc, char* argv[])
+ u->destroy();
+
+ {
+- IceUtilInternal::MutexPtrLock<IceUtil::Mutex> sync(mutex);
++ IceUtilInternal::MutexPtrLock<IceUtil::Mutex> sync(mtx);
+
+ if(interrupted)
+ {
diff -ruN --exclude=CVS ../ice.orig/files/patch-cpp-src-slice2html-Main.cpp ./files/patch-cpp-src-slice2html-Main.cpp
--- ../ice.orig/files/patch-cpp-src-slice2html-Main.cpp 1970-01-01 01:00:00.000000000 +0100
+++ ./files/patch-cpp-src-slice2html-Main.cpp 2012-09-10 21:49:54.469553384 +0200
@@ -0,0 +1,55 @@
+--- cpp.orig/src/slice2html/Main.cpp 2011-06-15 21:43:58.000000000 +0200
++++ cpp/src/slice2html/Main.cpp 2012-09-10 11:43:58.000000000 +0200
+@@ -24,7 +24,7 @@ using namespace IceUtil;
+ namespace
+ {
+
+-IceUtil::Mutex* mutex = 0;
++IceUtil::Mutex* mtx = 0;
+ bool interrupted = false;
+
+ class Init
+@@ -33,13 +33,13 @@ public:
+
+ Init()
+ {
+- mutex = new IceUtil::Mutex;
++ mtx = new IceUtil::Mutex;
+ }
+
+ ~Init()
+ {
+- delete mutex;
+- mutex = 0;
++ delete mtx;
++ mtx = 0;
+ }
+ };
+
+@@ -50,7 +50,7 @@ Init init;
+ void
+ interruptedCallback(int signal)
+ {
+- IceUtilInternal::MutexPtrLock<IceUtil::Mutex> sync(mutex);
++ IceUtilInternal::MutexPtrLock<IceUtil::Mutex> sync(mtx);
+
+ interrupted = true;
+ }
+@@ -254,7 +254,7 @@ compile(int argc, char* argv[])
+ }
+
+ {
+- IceUtilInternal::MutexPtrLock<IceUtil::Mutex> sync(mutex);
++ IceUtilInternal::MutexPtrLock<IceUtil::Mutex> sync(mtx);
+
+ if(interrupted)
+ {
+@@ -296,7 +296,7 @@ compile(int argc, char* argv[])
+ p->destroy();
+
+ {
+- IceUtilInternal::MutexPtrLock<IceUtil::Mutex> sync(mutex);
++ IceUtilInternal::MutexPtrLock<IceUtil::Mutex> sync(mtx);
+
+ if(interrupted)
+ {
diff -ruN --exclude=CVS ../ice.orig/files/patch-cpp-src-slice2java-Main.cpp ./files/patch-cpp-src-slice2java-Main.cpp
--- ../ice.orig/files/patch-cpp-src-slice2java-Main.cpp 1970-01-01 01:00:00.000000000 +0100
+++ ./files/patch-cpp-src-slice2java-Main.cpp 2012-09-10 21:49:54.469553384 +0200
@@ -0,0 +1,46 @@
+--- cpp.orig/src/slice2java/Main.cpp 2011-06-15 21:43:58.000000000 +0200
++++ cpp/src/slice2java/Main.cpp 2012-09-10 11:43:58.000000000 +0200
+@@ -23,7 +23,7 @@ using namespace Slice;
+ namespace
+ {
+
+-IceUtil::Mutex* mutex = 0;
++IceUtil::Mutex* mtx = 0;
+ bool interrupted = false;
+
+ class Init
+@@ -32,13 +32,13 @@ public:
+
+ Init()
+ {
+- mutex = new IceUtil::Mutex;
++ mtx = new IceUtil::Mutex;
+ }
+
+ ~Init()
+ {
+- delete mutex;
+- mutex = 0;
++ delete mtx;
++ mtx = 0;
+ }
+ };
+
+@@ -49,7 +49,7 @@ Init init;
+ void
+ interruptedCallback(int signal)
+ {
+- IceUtilInternal::MutexPtrLock<IceUtil::Mutex> sync(mutex);
++ IceUtilInternal::MutexPtrLock<IceUtil::Mutex> sync(mtx);
+
+ interrupted = true;
+ }
+@@ -356,7 +356,7 @@ compile(int argc, char* argv[])
+ }
+
+ {
+- IceUtilInternal::MutexPtrLock<IceUtil::Mutex> sync(mutex);
++ IceUtilInternal::MutexPtrLock<IceUtil::Mutex> sync(mtx);
+
+ if(interrupted)
+ {
diff -ruN --exclude=CVS ../ice.orig/files/patch-cpp-src-slice2php-Main.cpp ./files/patch-cpp-src-slice2php-Main.cpp
--- ../ice.orig/files/patch-cpp-src-slice2php-Main.cpp 1970-01-01 01:00:00.000000000 +0100
+++ ./files/patch-cpp-src-slice2php-Main.cpp 2012-09-10 21:49:54.469553384 +0200
@@ -0,0 +1,46 @@
+--- cpp.orig/src/slice2php/Main.cpp 2011-06-15 21:43:58.000000000 +0200
++++ cpp/src/slice2php/Main.cpp 2012-09-10 11:43:58.000000000 +0200
+@@ -1488,7 +1488,7 @@ printHeader(IceUtilInternal::Output& out)
+ namespace
+ {
+
+-IceUtil::Mutex* mutex = 0;
++IceUtil::Mutex* mtx = 0;
+ bool interrupted = false;
+
+ class Init
+@@ -1497,13 +1497,13 @@ public:
+
+ Init()
+ {
+- mutex = new IceUtil::Mutex;
++ mtx = new IceUtil::Mutex;
+ }
+
+ ~Init()
+ {
+- delete mutex;
+- mutex = 0;
++ delete mtx;
++ mtx = 0;
+ }
+ };
+
+@@ -1514,7 +1514,7 @@ Init init;
+ static void
+ interruptedCallback(int signal)
+ {
+- IceUtilInternal::MutexPtrLock<IceUtil::Mutex> sync(mutex);
++ IceUtilInternal::MutexPtrLock<IceUtil::Mutex> sync(mtx);
+
+ interrupted = true;
+ }
+@@ -1777,7 +1777,7 @@ compile(int argc, char* argv[])
+ }
+
+ {
+- IceUtilInternal::MutexPtrLock<IceUtil::Mutex> sync(mutex);
++ IceUtilInternal::MutexPtrLock<IceUtil::Mutex> sync(mtx);
+
+ if(interrupted)
+ {
diff -ruN --exclude=CVS ../ice.orig/files/patch-cpp-src-slice2py-Main.cpp ./files/patch-cpp-src-slice2py-Main.cpp
--- ../ice.orig/files/patch-cpp-src-slice2py-Main.cpp 1970-01-01 01:00:00.000000000 +0100
+++ ./files/patch-cpp-src-slice2py-Main.cpp 2012-09-10 21:49:54.469553384 +0200
@@ -0,0 +1,46 @@
+--- cpp.orig/src/slice2py/Main.cpp 2011-06-15 21:43:58.000000000 +0200
++++ cpp/src/slice2py/Main.cpp 2012-09-10 11:43:58.000000000 +0200
+@@ -40,7 +40,7 @@ using namespace Slice::Python;
+ namespace
+ {
+
+-IceUtil::Mutex* mutex = 0;
++IceUtil::Mutex* mtx = 0;
+ bool interrupted = false;
+
+ class Init
+@@ -49,13 +49,13 @@ public:
+
+ Init()
+ {
+- mutex = new IceUtil::Mutex;
++ mtx = new IceUtil::Mutex;
+ }
+
+ ~Init()
+ {
+- delete mutex;
+- mutex = 0;
++ delete mtx;
++ mtx = 0;
+ }
+ };
+
+@@ -66,7 +66,7 @@ Init init;
+ void
+ interruptedCallback(int signal)
+ {
+- IceUtilInternal::MutexPtrLock<IceUtil::Mutex> sync(mutex);
++ IceUtilInternal::MutexPtrLock<IceUtil::Mutex> sync(mtx);
+
+ interrupted = true;
+ }
+@@ -631,7 +631,7 @@ compile(int argc, char* argv[])
+ }
+
+ {
+- IceUtilInternal::MutexPtrLock<IceUtil::Mutex> sync(mutex);
++ IceUtilInternal::MutexPtrLock<IceUtil::Mutex> sync(mtx);
+
+ if(interrupted)
+ {
diff -ruN --exclude=CVS ../ice.orig/files/patch-cpp-src-slice2rb-Main.cpp ./files/patch-cpp-src-slice2rb-Main.cpp
--- ../ice.orig/files/patch-cpp-src-slice2rb-Main.cpp 1970-01-01 01:00:00.000000000 +0100
+++ ./files/patch-cpp-src-slice2rb-Main.cpp 2012-09-10 21:49:54.469553384 +0200
@@ -0,0 +1,46 @@
+--- cpp.orig/src/slice2rb/Main.cpp 2011-06-15 21:43:58.000000000 +0200
++++ cpp/src/slice2rb/Main.cpp 2012-09-10 11:43:58.000000000 +0200
+@@ -39,7 +39,7 @@ using namespace Slice::Ruby;
+ namespace
+ {
+
+-IceUtil::Mutex* mutex = 0;
++IceUtil::Mutex* mtx = 0;
+ bool interrupted = false;
+
+ class Init
+@@ -48,13 +48,13 @@ public:
+
+ Init()
+ {
+- mutex = new IceUtil::Mutex;
++ mtx = new IceUtil::Mutex;
+ }
+
+ ~Init()
+ {
+- delete mutex;
+- mutex = 0;
++ delete mtx;
++ mtx = 0;
+ }
+ };
+
+@@ -65,7 +65,7 @@ Init init;
+ void
+ interruptedCallback(int signal)
+ {
+- IceUtilInternal::MutexPtrLock<IceUtil::Mutex> sync(mutex);
++ IceUtilInternal::MutexPtrLock<IceUtil::Mutex> sync(mtx);
+
+ interrupted = true;
+ }
+@@ -316,7 +316,7 @@ compile(int argc, char* argv[])
+ }
+
+ {
+- IceUtilInternal::MutexPtrLock<IceUtil::Mutex> sync(mutex);
++ IceUtilInternal::MutexPtrLock<IceUtil::Mutex> sync(mtx);
+
+ if(interrupted)
+ {
--- Ice-3.4.2_3.patch ends here ---
>Release-Note:
>Audit-Trail:
>Unformatted:
More information about the freebsd-ports-bugs
mailing list