summaryrefslogtreecommitdiff
path: root/cpp
diff options
context:
space:
mode:
authorDwayne Boone <dwayne@zeroc.com>2009-05-05 15:50:21 -0230
committerDwayne Boone <dwayne@zeroc.com>2009-05-05 15:50:21 -0230
commit9f82f9524eb7f9d296d0b78b48425617efdfe878 (patch)
tree1c1426f4eea9bb937d80449718feafd2f45ca423 /cpp
parentBug 1594 - some more byte sequence optimizations (diff)
downloadice-9f82f9524eb7f9d296d0b78b48425617efdfe878.tar.bz2
ice-9f82f9524eb7f9d296d0b78b48425617efdfe878.tar.xz
ice-9f82f9524eb7f9d296d0b78b48425617efdfe878.zip
Bug 3624 - desupport HP
Diffstat (limited to 'cpp')
-rw-r--r--cpp/INSTALL.HP-UX172
-rw-r--r--cpp/demo/Freeze/casino/BankI.h2
-rw-r--r--cpp/demo/Freeze/casino/BetResolver.h2
-rw-r--r--cpp/demo/Freeze/casino/Server.cpp2
-rw-r--r--cpp/src/Freeze/TransactionalEvictorContext.cpp19
-rw-r--r--cpp/src/Freeze/TransactionalEvictorI.cpp8
-rw-r--r--cpp/src/Glacier2/Instance.h26
-rw-r--r--cpp/src/Glacier2/RequestQueue.cpp1
-rw-r--r--cpp/src/Glacier2/SessionRouterI.h4
-rw-r--r--cpp/src/Ice/EndpointI.h2
-rw-r--r--cpp/src/IceGrid/DescriptorHelper.cpp8
-rw-r--r--cpp/test/Ice/background/EndpointI.h2
-rw-r--r--cpp/test/Ice/gc/Client.cpp4
13 files changed, 20 insertions, 232 deletions
diff --git a/cpp/INSTALL.HP-UX b/cpp/INSTALL.HP-UX
deleted file mode 100644
index f3ae870364c..00000000000
--- a/cpp/INSTALL.HP-UX
+++ /dev/null
@@ -1,172 +0,0 @@
-======================================================================
-Unsupported Platform
-======================================================================
-
-Ice is no longer supported on HP-UX. The following instructions are
-believed to be correct, but are provided without any guarantee.
-
-======================================================================
-Requirements
-======================================================================
-
-
-Operating System
-----------------
-
-HP-UX 11i (11.11) on PA-RISC.
-
-You also need the "HP-UX Strong Random Number Generator", available
-for free from http://software.hp.com.
-
-
-C++ compiler
-------------
-
-HP aC++ A.03.56
-
-More recent versions of aC++ are likely to work as well.
-
-
-C compiler
-----------
-
-HP C/ANSI C compiler (cc).
-
-
-Third-party libraries
----------------------
-
-Ice has dependencies on a number of third-party libraries:
-
-- Berkeley DB 4.6.21
-- expat 1.95.7 or 2.0.0
-- OpenSSL 0.9.7 or later (OpenSSL 0.9.8 or later recommended)
-- bzip2 1.0.x
-- mcpp 2.7.2
-
-We recommend downloading the Ice third-party source archive from
-
- http://www.zeroc.com/download.html
-
-This archive contains the source distributions for each of the
-third-party dependencies, as well as required source patches and
-configuration instructions.
-
-For more information about these dependencies, please refer to
-the links below:
-
-Berkeley DB http://www.oracle.com/database/berkeley-db/index.html
-expat http://expat.sourceforge.net
-OpenSSL http://www.openssl.org
-bzip2 http://sources.redhat.com/bzip2
-mcpp http://mcpp.sourceforge.net
-
-
-GNU Make 3.80
--------------
-
-GNU Make 3.80 is required to build Ice on HP-UX. You can download GNU
-Make from the "Software Porting And Archive Centre for HP-UX",
-http://hpux.cs.utah.edu.
-
-
-
-
-======================================================================
-Compilation and Testing
-======================================================================
-
-Extract the Ice archive in any directory you like (for example, in
-your home directory):
-
-$ gunzip -c Ice-@ver@.tar.gz | tar xvf -
-
-Change the working directory to Ice-@ver@/cpp:
-
-$ cd Ice-@ver@/cpp
-
-Edit config/Make.rules to establish your build configuration. The
-comments in the file provide more information. Pay particular
-attention to the variables that define the locations of the third-
-party libraries.
-
-Now you're ready to build Ice:
-
-$ gmake
-
-This will build the Ice core libraries, services, tests and examples.
-
-Python is required to run the test suite:
-
- http://www.python.org/download
-
-After a successful build, you can run the test suite:
-
-$ gmake test
-
-This is equivalent to:
-
-$ python allTests.py
-
-If everything worked out, you should see lots of "ok" messages. In
-case of a failure, the tests abort with "failed".
-
-If you want to try out any of the demos, make sure to update your PATH
-environment variable to add the "bin" directory, and your SHLIB_PATH
-environment variable to add the "lib" directory. For 64-bit builds,
-add "lib" to LD_LIBRARY_PATH:
-
-$ export PATH=`pwd`/bin:$PATH
-$ export SHLIB_PATH=`pwd`/lib:$SHLIB_PATH
-$ export LD_LIBRARY_PATH=`pwd`/lib:$LD_LIBRARY_PATH
-
-
-======================================================================
-64-bit builds
-======================================================================
-
-To build Ice in 64-bit mode, you need to:
-
-- Obtain or build all the third-party dependencies, and put the 64-bit
- libraries in the "lib/pa20_64" directories. For example, put
- Berkeley DB 64-bit libraries in $DB_HOME/lib/pa20_64.
-
-- Set the environment variable LP64 to yes, as shown below:
-
- $ export LP64=yes
-
-- Build and test as described above.
-
-
-======================================================================
-IPv6 Multicast
-======================================================================
-
-Unlike on other platforms, interface indexes cannot be used to
-configure the interface to use for a IPv6 multicast endpoint. Instead
-the IP address must be used instead.
-
-
-======================================================================
-Installation
-======================================================================
-
-Simply run "gmake install". This will install Ice in the directory
-specified by the "prefix" variable in config/Make.rules.
-
-After installation, make sure that the <prefix>/bin directory is in
-your PATH, and the <prefix>/lib directory is in your SHLIB_PATH. When
-compiling Ice programs, you must pass the location of the
-<prefix>/include directory to the compiler with the -I option, and the
-location of the <prefix>/lib directory with the -L option.
-
-If you built in 64-bit mode, the libraries are installed in
-<prefix>/lib/pa20_64 and the binaries are installed in
-<prefix>/bin/pa20_64. No other changes are necessary.
-
-======================================================================
-Usage
-======================================================================
-
-Ice is built with _XOPEN_SOURCE and _XOPEN_SOURCE_EXTENDED defined;
-therefore all Ice-based programs need to be linked with -lxnet.
diff --git a/cpp/demo/Freeze/casino/BankI.h b/cpp/demo/Freeze/casino/BankI.h
index 51e81b1f521..6b932d3165c 100644
--- a/cpp/demo/Freeze/casino/BankI.h
+++ b/cpp/demo/Freeze/casino/BankI.h
@@ -55,7 +55,7 @@ private:
std::vector<CasinoStore::PersistentBetPrx> getBets(const Ice::ObjectAdapterPtr&) const;
-#if defined(__hpux) || (defined(_MSC_VER) && (_MSC_VER < 1300)) || defined(__BCPLUSPLUS__)
+#if (defined(_MSC_VER) && (_MSC_VER < 1300)) || defined(__BCPLUSPLUS__)
//
// Some compilers don't let local classes access private data members
//
diff --git a/cpp/demo/Freeze/casino/BetResolver.h b/cpp/demo/Freeze/casino/BetResolver.h
index 5567b422c78..a7f559232f9 100644
--- a/cpp/demo/Freeze/casino/BetResolver.h
+++ b/cpp/demo/Freeze/casino/BetResolver.h
@@ -30,7 +30,7 @@ public:
int getBetCount() const;
-#if !defined(__hpux) && (!defined(_MSC_VER) || (_MSC_VER >= 1300)) && (!defined(__BCPLUSPLUS__))
+#if (!defined(_MSC_VER) || (_MSC_VER >= 1300)) && (!defined(__BCPLUSPLUS__))
//
// Some compilers don't let local classes access private members
//
diff --git a/cpp/demo/Freeze/casino/Server.cpp b/cpp/demo/Freeze/casino/Server.cpp
index 4c85714f4e1..aa552402483 100644
--- a/cpp/demo/Freeze/casino/Server.cpp
+++ b/cpp/demo/Freeze/casino/Server.cpp
@@ -30,7 +30,7 @@ private:
map<string, string> createTypeMap(const string&);
const string _envName;
-#if defined(__hpux) || (defined(_MSC_VER) && (_MSC_VER < 1300)) || defined(__BCPLUSPLUS__)
+#if (defined(_MSC_VER) && (_MSC_VER < 1300)) || defined(__BCPLUSPLUS__)
//
// Some compilers don't let local classes access private data members
//
diff --git a/cpp/src/Freeze/TransactionalEvictorContext.cpp b/cpp/src/Freeze/TransactionalEvictorContext.cpp
index 9123b732557..bc5dca6ee9d 100644
--- a/cpp/src/Freeze/TransactionalEvictorContext.cpp
+++ b/cpp/src/Freeze/TransactionalEvictorContext.cpp
@@ -273,15 +273,6 @@ Freeze::TransactionalEvictorContext::ServantHolder::ServantHolder() :
Freeze::TransactionalEvictorContext::ServantHolder::~ServantHolder()
{
-#ifdef __HP_aCC
-//
-// The HP aCC compiler has a tendency to run dtors several times when an exception is raised:
-// a very nasty bug!
-//
- try
- {
-#endif
-
if(_ownBody && _body.ownServant)
{
const TransactionalEvictorContextPtr& ctx = *(_body.ctx);
@@ -302,16 +293,6 @@ Freeze::TransactionalEvictorContext::ServantHolder::~ServantHolder()
}
ctx->_stack.pop_front();
}
-#ifdef __HP_aCC
- _body.rec.servant = 0;
- }
- catch(...)
- {
- _body.rec.servant = 0;
- throw;
- }
-#endif
-
}
diff --git a/cpp/src/Freeze/TransactionalEvictorI.cpp b/cpp/src/Freeze/TransactionalEvictorI.cpp
index c659cfdf198..f9b0a627e89 100644
--- a/cpp/src/Freeze/TransactionalEvictorI.cpp
+++ b/cpp/src/Freeze/TransactionalEvictorI.cpp
@@ -557,14 +557,6 @@ Freeze::TransactionalEvictorI::dispatch(Request& request)
return dispatchStatus;
}
-#ifdef __HP_aCC
- // COMPILER BUG
- catch(const std::exception&)
- {
- ctx->rollback();
- throw;
- }
-#endif
catch(...)
{
//
diff --git a/cpp/src/Glacier2/Instance.h b/cpp/src/Glacier2/Instance.h
index f1762b24b46..9ed1c814e24 100644
--- a/cpp/src/Glacier2/Instance.h
+++ b/cpp/src/Glacier2/Instance.h
@@ -17,13 +17,11 @@
#include <Glacier2/RequestQueue.h>
#include <Glacier2/ProxyVerifier.h>
+#include <Glacier2/SessionRouterI.h>
namespace Glacier2
{
-class SessionRouterI;
-typedef IceUtil::Handle<SessionRouterI> SessionRouterIPtr;
-
class Instance : public IceUtil::Shared
{
public:
@@ -31,20 +29,16 @@ public:
Instance(const Ice::CommunicatorPtr&, const Ice::ObjectAdapterPtr&, const Ice::ObjectAdapterPtr&);
~Instance();
- //
- // COMPILERFIX: returning const& is necessary on HP-UX (otherwise, it crashes in the Blobject
- // constructor).
- //
- const Ice::CommunicatorPtr& communicator() const { return _communicator; }
- const Ice::ObjectAdapterPtr& clientObjectAdapter() const { return _clientAdapter; }
- const Ice::ObjectAdapterPtr& serverObjectAdapter() const { return _serverAdapter; }
- const Ice::PropertiesPtr& properties() const { return _properties; }
- const Ice::LoggerPtr& logger() const { return _logger; }
+ Ice::CommunicatorPtr communicator() const { return _communicator; }
+ Ice::ObjectAdapterPtr clientObjectAdapter() const { return _clientAdapter; }
+ Ice::ObjectAdapterPtr serverObjectAdapter() const { return _serverAdapter; }
+ Ice::PropertiesPtr properties() const { return _properties; }
+ Ice::LoggerPtr logger() const { return _logger; }
- const RequestQueueThreadPtr& clientRequestQueueThread() const { return _clientRequestQueueThread; }
- const RequestQueueThreadPtr& serverRequestQueueThread() const { return _serverRequestQueueThread; }
- const ProxyVerifierPtr& proxyVerifier() const { return _proxyVerifier; }
- const SessionRouterIPtr& sessionRouter() const { return _sessionRouter; }
+ RequestQueueThreadPtr clientRequestQueueThread() const { return _clientRequestQueueThread; }
+ RequestQueueThreadPtr serverRequestQueueThread() const { return _serverRequestQueueThread; }
+ ProxyVerifierPtr proxyVerifier() const { return _proxyVerifier; }
+ SessionRouterIPtr sessionRouter() const { return _sessionRouter; }
void destroy();
diff --git a/cpp/src/Glacier2/RequestQueue.cpp b/cpp/src/Glacier2/RequestQueue.cpp
index 61f85b2c34a..904f3d6c578 100644
--- a/cpp/src/Glacier2/RequestQueue.cpp
+++ b/cpp/src/Glacier2/RequestQueue.cpp
@@ -8,6 +8,7 @@
// **********************************************************************
#include <Glacier2/RequestQueue.h>
+#include <Glacier2/Instance.h>
#include <Glacier2/SessionRouterI.h>
#include <set>
diff --git a/cpp/src/Glacier2/SessionRouterI.h b/cpp/src/Glacier2/SessionRouterI.h
index 5eed65fb77b..87ebd7a5a80 100644
--- a/cpp/src/Glacier2/SessionRouterI.h
+++ b/cpp/src/Glacier2/SessionRouterI.h
@@ -15,7 +15,6 @@
#include <Ice/Ice.h>
#include <Glacier2/PermissionsVerifierF.h>
#include <Glacier2/Router.h>
-#include <Glacier2/Instance.h>
#include <set>
#include <IceUtil/DisableWarnings.h>
@@ -33,6 +32,9 @@ typedef IceUtil::Handle<FilterManager> FilterManagerPtr;
class CreateSession;
typedef IceUtil::Handle<CreateSession> CreateSessionPtr;
+
+class Instance;
+typedef IceUtil::Handle<Instance> InstancePtr;
class CreateSession : public IceUtil::Shared
{
diff --git a/cpp/src/Ice/EndpointI.h b/cpp/src/Ice/EndpointI.h
index 4f9a16ccffe..c22a00d6763 100644
--- a/cpp/src/Ice/EndpointI.h
+++ b/cpp/src/Ice/EndpointI.h
@@ -155,7 +155,7 @@ protected:
private:
-#if defined(__SUNPRO_CC) || defined(__HP_aCC)
+#if defined(__SUNPRO_CC)
//
// COMPILERFIX: prevent the compiler from emitting a warning about
// hidding these operators.
diff --git a/cpp/src/IceGrid/DescriptorHelper.cpp b/cpp/src/IceGrid/DescriptorHelper.cpp
index 5fb6b0f8f49..1692300df84 100644
--- a/cpp/src/IceGrid/DescriptorHelper.cpp
+++ b/cpp/src/IceGrid/DescriptorHelper.cpp
@@ -2712,14 +2712,8 @@ ApplicationHelper::update(const ApplicationUpdateDescriptor& updt) const
NodeHelperDict::const_iterator q = _nodes.find(p->name);
if(q != _nodes.end()) // Updated node
{
- //
- // COMPILERBUG: AIX xlC (Visual Age 6, 64bit builds)
- // requires the `desc' temporary here. We can't do the
- // update call in the make_pair call directly (this
- // results in a SEGFAULT at runtime).
- //
NodeDescriptor desc = q->second.update(*p, resolve);
- def.nodes.insert(make_pair(p->name, desc));
+ def.nodes.insert(make_pair(p->name, q->second.update(*p, resolve)));
}
else // New node
{
diff --git a/cpp/test/Ice/background/EndpointI.h b/cpp/test/Ice/background/EndpointI.h
index 65c7d47f158..62f420c6ff9 100644
--- a/cpp/test/Ice/background/EndpointI.h
+++ b/cpp/test/Ice/background/EndpointI.h
@@ -53,7 +53,7 @@ private:
EndpointI(const IceInternal::EndpointIPtr&);
friend class EndpointFactory;
-#if defined(__SUNPRO_CC) || defined(__HP_aCC)
+#if defined(__SUNPRO_CC)
//
// COMPILERFIX: prevent the compiler from emitting a warning about
// hidding these operators.
diff --git a/cpp/test/Ice/gc/Client.cpp b/cpp/test/Ice/gc/Client.cpp
index 0936f6b2b50..42a7f051f98 100644
--- a/cpp/test/Ice/gc/Client.cpp
+++ b/cpp/test/Ice/gc/Client.cpp
@@ -614,10 +614,6 @@ MyApplication::run(int argc, char* argv[])
cout << "ok" << endl;
-#if defined(_AIX)
- cout << "The following test may take a long time (like one full minute); please be patient." << endl;
-#endif
-
cout << "testing for race conditions... " << flush;
string seedfile = argv[1];
ofstream file(seedfile.c_str());