summaryrefslogtreecommitdiff
path: root/cpp
diff options
context:
space:
mode:
authorAlan Conway <aconway@apache.org>2010-06-30 19:54:00 +0000
committerAlan Conway <aconway@apache.org>2010-06-30 19:54:00 +0000
commit5911c4831e19e1deb278491d54a7bc2b6e37e8bb (patch)
tree3d2f10740f9c4429c4779d1922532c122acd1e25 /cpp
parentd2530f67169a2fdebf1741ab9cd8f2c566b4050e (diff)
downloadqpid-python-5911c4831e19e1deb278491d54a7bc2b6e37e8bb.tar.gz
QPID-2708: Create a separate qpidtypes library for the types namespace.
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@959419 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'cpp')
-rw-r--r--cpp/include/qpid/types/Exception.h8
-rw-r--r--cpp/include/qpid/types/ImportExport.h33
-rw-r--r--cpp/include/qpid/types/Uuid.h58
-rw-r--r--cpp/include/qpid/types/Variant.h168
-rw-r--r--cpp/src/CMakeLists.txt34
-rw-r--r--cpp/src/Makefile.am20
-rw-r--r--cpp/src/qpid/sys/windows/uuid.h16
7 files changed, 197 insertions, 140 deletions
diff --git a/cpp/include/qpid/types/Exception.h b/cpp/include/qpid/types/Exception.h
index a8b7d128af..d061a7df0e 100644
--- a/cpp/include/qpid/types/Exception.h
+++ b/cpp/include/qpid/types/Exception.h
@@ -23,7 +23,7 @@
*/
#include <string>
-#include "qpid/CommonImportExport.h"
+#include "qpid/types/ImportExport.h"
namespace qpid {
namespace types {
@@ -31,9 +31,9 @@ namespace types {
class Exception : public std::exception
{
public:
- QPID_COMMON_EXTERN explicit Exception(const std::string& message=std::string()) throw();
- QPID_COMMON_EXTERN virtual ~Exception() throw();
- QPID_COMMON_EXTERN virtual const char* what() const throw();
+ QPID_TYPES_EXTERN explicit Exception(const std::string& message=std::string()) throw();
+ QPID_TYPES_EXTERN virtual ~Exception() throw();
+ QPID_TYPES_EXTERN virtual const char* what() const throw();
private:
const std::string message;
diff --git a/cpp/include/qpid/types/ImportExport.h b/cpp/include/qpid/types/ImportExport.h
new file mode 100644
index 0000000000..bb10575fcd
--- /dev/null
+++ b/cpp/include/qpid/types/ImportExport.h
@@ -0,0 +1,33 @@
+#ifndef QPID_TYPES_IMPORTEXPORT_H
+#define QPID_TYPES_IMPORTEXPORT_H
+
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+#if defined(WIN32) && !defined(QPID_DECLARE_STATIC)
+#if defined(TYPES_EXPORT) || defined (qpidtypes_EXPORTS)
+#define QPID_TYPES_EXTERN __declspec(dllexport)
+#else
+#define QPID_TYPES_EXTERN __declspec(dllimport)
+#endif
+#else
+#define QPID_TYPES_EXTERN
+#endif
+
+#endif /*!QPID_TYPES_IMPORTEXPORT_H*/
diff --git a/cpp/include/qpid/types/Uuid.h b/cpp/include/qpid/types/Uuid.h
index 41042a0731..467a895184 100644
--- a/cpp/include/qpid/types/Uuid.h
+++ b/cpp/include/qpid/types/Uuid.h
@@ -22,7 +22,7 @@
*
*/
-#include "qpid/CommonImportExport.h"
+#include "qpid/types/ImportExport.h"
#include <iosfwd>
#include <string>
@@ -37,57 +37,57 @@ class Uuid
* If unique is true, this will generate a new unique uuid, if not
* it will construct a null uuid.
*/
- QPID_COMMON_EXTERN Uuid(bool unique=false);
- QPID_COMMON_EXTERN Uuid(const Uuid&);
- QPID_COMMON_EXTERN Uuid& operator=(const Uuid&);
+ QPID_TYPES_EXTERN Uuid(bool unique=false);
+ QPID_TYPES_EXTERN Uuid(const Uuid&);
+ QPID_TYPES_EXTERN Uuid& operator=(const Uuid&);
/** Copy the UUID from data16, which must point to a 16-byte UUID */
- QPID_COMMON_EXTERN Uuid(const unsigned char* data16);
+ QPID_TYPES_EXTERN Uuid(const unsigned char* data16);
/** Set to a new unique identifier. */
- QPID_COMMON_EXTERN void generate();
+ QPID_TYPES_EXTERN void generate();
/** Set to all zeros. */
- QPID_COMMON_EXTERN void clear();
+ QPID_TYPES_EXTERN void clear();
/** Test for null (all zeros). */
- QPID_COMMON_EXTERN bool isNull() const;
- QPID_COMMON_EXTERN operator bool() const;
- QPID_COMMON_EXTERN bool operator!() const;
+ QPID_TYPES_EXTERN bool isNull() const;
+ QPID_TYPES_EXTERN operator bool() const;
+ QPID_TYPES_EXTERN bool operator!() const;
/** String value in format 1b4e28ba-2fa1-11d2-883f-b9a761bde3fb. */
- QPID_COMMON_EXTERN std::string str() const;
+ QPID_TYPES_EXTERN std::string str() const;
- QPID_COMMON_EXTERN size_t size() const;
- QPID_COMMON_EXTERN const unsigned char* data() const;
+ QPID_TYPES_EXTERN size_t size() const;
+ QPID_TYPES_EXTERN const unsigned char* data() const;
- friend QPID_COMMON_EXTERN bool operator==(const Uuid&, const Uuid&);
- friend QPID_COMMON_EXTERN bool operator!=(const Uuid&, const Uuid&);
- friend QPID_COMMON_EXTERN bool operator<(const Uuid&, const Uuid&);
- friend QPID_COMMON_EXTERN bool operator>(const Uuid&, const Uuid&);
- friend QPID_COMMON_EXTERN bool operator<=(const Uuid&, const Uuid&);
- friend QPID_COMMON_EXTERN bool operator>=(const Uuid&, const Uuid&);
- friend QPID_COMMON_EXTERN std::ostream& operator<<(std::ostream&, Uuid);
- friend QPID_COMMON_EXTERN std::istream& operator>>(std::istream&, Uuid&);
+ friend QPID_TYPES_EXTERN bool operator==(const Uuid&, const Uuid&);
+ friend QPID_TYPES_EXTERN bool operator!=(const Uuid&, const Uuid&);
+ friend QPID_TYPES_EXTERN bool operator<(const Uuid&, const Uuid&);
+ friend QPID_TYPES_EXTERN bool operator>(const Uuid&, const Uuid&);
+ friend QPID_TYPES_EXTERN bool operator<=(const Uuid&, const Uuid&);
+ friend QPID_TYPES_EXTERN bool operator>=(const Uuid&, const Uuid&);
+ friend QPID_TYPES_EXTERN std::ostream& operator<<(std::ostream&, Uuid);
+ friend QPID_TYPES_EXTERN std::istream& operator>>(std::istream&, Uuid&);
private:
unsigned char bytes[16];
};
/** Returns true if the uuids are equal, false otherwise. **/
-QPID_COMMON_EXTERN bool operator==(const Uuid&, const Uuid&);
+QPID_TYPES_EXTERN bool operator==(const Uuid&, const Uuid&);
/** Returns true if the uuids are NOT equal, false if they are. **/
-QPID_COMMON_EXTERN bool operator!=(const Uuid&, const Uuid&);
+QPID_TYPES_EXTERN bool operator!=(const Uuid&, const Uuid&);
-QPID_COMMON_EXTERN bool operator<(const Uuid&, const Uuid&);
-QPID_COMMON_EXTERN bool operator>(const Uuid&, const Uuid&);
-QPID_COMMON_EXTERN bool operator<=(const Uuid&, const Uuid&);
-QPID_COMMON_EXTERN bool operator>=(const Uuid&, const Uuid&);
+QPID_TYPES_EXTERN bool operator<(const Uuid&, const Uuid&);
+QPID_TYPES_EXTERN bool operator>(const Uuid&, const Uuid&);
+QPID_TYPES_EXTERN bool operator<=(const Uuid&, const Uuid&);
+QPID_TYPES_EXTERN bool operator>=(const Uuid&, const Uuid&);
/** Print in format 1b4e28ba-2fa1-11d2-883f-b9a761bde3fb. */
-QPID_COMMON_EXTERN std::ostream& operator<<(std::ostream&, Uuid);
+QPID_TYPES_EXTERN std::ostream& operator<<(std::ostream&, Uuid);
/** Read from format 1b4e28ba-2fa1-11d2-883f-b9a761bde3fb. */
-QPID_COMMON_EXTERN std::istream& operator>>(std::istream&, Uuid&);
+QPID_TYPES_EXTERN std::istream& operator>>(std::istream&, Uuid&);
}} // namespace qpid::types
diff --git a/cpp/include/qpid/types/Variant.h b/cpp/include/qpid/types/Variant.h
index 059550bc9c..7b43422261 100644
--- a/cpp/include/qpid/types/Variant.h
+++ b/cpp/include/qpid/types/Variant.h
@@ -28,7 +28,7 @@
#include "Uuid.h"
#include "qpid/types/Exception.h"
#include "qpid/sys/IntegerTypes.h"
-#include "qpid/CommonImportExport.h"
+#include "qpid/types/ImportExport.h"
namespace qpid {
namespace types {
@@ -71,101 +71,101 @@ class Variant
typedef std::map<std::string, Variant> Map;
typedef std::list<Variant> List;
- QPID_COMMON_EXTERN Variant();
- QPID_COMMON_EXTERN Variant(bool);
- QPID_COMMON_EXTERN Variant(uint8_t);
- QPID_COMMON_EXTERN Variant(uint16_t);
- QPID_COMMON_EXTERN Variant(uint32_t);
- QPID_COMMON_EXTERN Variant(uint64_t);
- QPID_COMMON_EXTERN Variant(int8_t);
- QPID_COMMON_EXTERN Variant(int16_t);
- QPID_COMMON_EXTERN Variant(int32_t);
- QPID_COMMON_EXTERN Variant(int64_t);
- QPID_COMMON_EXTERN Variant(float);
- QPID_COMMON_EXTERN Variant(double);
- QPID_COMMON_EXTERN Variant(const std::string&);
- QPID_COMMON_EXTERN Variant(const char*);
- QPID_COMMON_EXTERN Variant(const Map&);
- QPID_COMMON_EXTERN Variant(const List&);
- QPID_COMMON_EXTERN Variant(const Variant&);
- QPID_COMMON_EXTERN Variant(const Uuid&);
-
- QPID_COMMON_EXTERN ~Variant();
-
- QPID_COMMON_EXTERN VariantType getType() const;
- QPID_COMMON_EXTERN bool isVoid() const;
+ QPID_TYPES_EXTERN Variant();
+ QPID_TYPES_EXTERN Variant(bool);
+ QPID_TYPES_EXTERN Variant(uint8_t);
+ QPID_TYPES_EXTERN Variant(uint16_t);
+ QPID_TYPES_EXTERN Variant(uint32_t);
+ QPID_TYPES_EXTERN Variant(uint64_t);
+ QPID_TYPES_EXTERN Variant(int8_t);
+ QPID_TYPES_EXTERN Variant(int16_t);
+ QPID_TYPES_EXTERN Variant(int32_t);
+ QPID_TYPES_EXTERN Variant(int64_t);
+ QPID_TYPES_EXTERN Variant(float);
+ QPID_TYPES_EXTERN Variant(double);
+ QPID_TYPES_EXTERN Variant(const std::string&);
+ QPID_TYPES_EXTERN Variant(const char*);
+ QPID_TYPES_EXTERN Variant(const Map&);
+ QPID_TYPES_EXTERN Variant(const List&);
+ QPID_TYPES_EXTERN Variant(const Variant&);
+ QPID_TYPES_EXTERN Variant(const Uuid&);
+
+ QPID_TYPES_EXTERN ~Variant();
+
+ QPID_TYPES_EXTERN VariantType getType() const;
+ QPID_TYPES_EXTERN bool isVoid() const;
- QPID_COMMON_EXTERN Variant& operator=(bool);
- QPID_COMMON_EXTERN Variant& operator=(uint8_t);
- QPID_COMMON_EXTERN Variant& operator=(uint16_t);
- QPID_COMMON_EXTERN Variant& operator=(uint32_t);
- QPID_COMMON_EXTERN Variant& operator=(uint64_t);
- QPID_COMMON_EXTERN Variant& operator=(int8_t);
- QPID_COMMON_EXTERN Variant& operator=(int16_t);
- QPID_COMMON_EXTERN Variant& operator=(int32_t);
- QPID_COMMON_EXTERN Variant& operator=(int64_t);
- QPID_COMMON_EXTERN Variant& operator=(float);
- QPID_COMMON_EXTERN Variant& operator=(double);
- QPID_COMMON_EXTERN Variant& operator=(const std::string&);
- QPID_COMMON_EXTERN Variant& operator=(const char*);
- QPID_COMMON_EXTERN Variant& operator=(const Map&);
- QPID_COMMON_EXTERN Variant& operator=(const List&);
- QPID_COMMON_EXTERN Variant& operator=(const Variant&);
- QPID_COMMON_EXTERN Variant& operator=(const Uuid&);
-
- QPID_COMMON_EXTERN bool asBool() const;
- QPID_COMMON_EXTERN uint8_t asUint8() const;
- QPID_COMMON_EXTERN uint16_t asUint16() const;
- QPID_COMMON_EXTERN uint32_t asUint32() const;
- QPID_COMMON_EXTERN uint64_t asUint64() const;
- QPID_COMMON_EXTERN int8_t asInt8() const;
- QPID_COMMON_EXTERN int16_t asInt16() const;
- QPID_COMMON_EXTERN int32_t asInt32() const;
- QPID_COMMON_EXTERN int64_t asInt64() const;
- QPID_COMMON_EXTERN float asFloat() const;
- QPID_COMMON_EXTERN double asDouble() const;
- QPID_COMMON_EXTERN std::string asString() const;
- QPID_COMMON_EXTERN Uuid asUuid() const;
-
- QPID_COMMON_EXTERN operator bool() const;
- QPID_COMMON_EXTERN operator uint8_t() const;
- QPID_COMMON_EXTERN operator uint16_t() const;
- QPID_COMMON_EXTERN operator uint32_t() const;
- QPID_COMMON_EXTERN operator uint64_t() const;
- QPID_COMMON_EXTERN operator int8_t() const;
- QPID_COMMON_EXTERN operator int16_t() const;
- QPID_COMMON_EXTERN operator int32_t() const;
- QPID_COMMON_EXTERN operator int64_t() const;
- QPID_COMMON_EXTERN operator float() const;
- QPID_COMMON_EXTERN operator double() const;
- QPID_COMMON_EXTERN operator std::string() const;
- QPID_COMMON_EXTERN operator Uuid() const;
-
- QPID_COMMON_EXTERN const Map& asMap() const;
- QPID_COMMON_EXTERN Map& asMap();
- QPID_COMMON_EXTERN const List& asList() const;
- QPID_COMMON_EXTERN List& asList();
+ QPID_TYPES_EXTERN Variant& operator=(bool);
+ QPID_TYPES_EXTERN Variant& operator=(uint8_t);
+ QPID_TYPES_EXTERN Variant& operator=(uint16_t);
+ QPID_TYPES_EXTERN Variant& operator=(uint32_t);
+ QPID_TYPES_EXTERN Variant& operator=(uint64_t);
+ QPID_TYPES_EXTERN Variant& operator=(int8_t);
+ QPID_TYPES_EXTERN Variant& operator=(int16_t);
+ QPID_TYPES_EXTERN Variant& operator=(int32_t);
+ QPID_TYPES_EXTERN Variant& operator=(int64_t);
+ QPID_TYPES_EXTERN Variant& operator=(float);
+ QPID_TYPES_EXTERN Variant& operator=(double);
+ QPID_TYPES_EXTERN Variant& operator=(const std::string&);
+ QPID_TYPES_EXTERN Variant& operator=(const char*);
+ QPID_TYPES_EXTERN Variant& operator=(const Map&);
+ QPID_TYPES_EXTERN Variant& operator=(const List&);
+ QPID_TYPES_EXTERN Variant& operator=(const Variant&);
+ QPID_TYPES_EXTERN Variant& operator=(const Uuid&);
+
+ QPID_TYPES_EXTERN bool asBool() const;
+ QPID_TYPES_EXTERN uint8_t asUint8() const;
+ QPID_TYPES_EXTERN uint16_t asUint16() const;
+ QPID_TYPES_EXTERN uint32_t asUint32() const;
+ QPID_TYPES_EXTERN uint64_t asUint64() const;
+ QPID_TYPES_EXTERN int8_t asInt8() const;
+ QPID_TYPES_EXTERN int16_t asInt16() const;
+ QPID_TYPES_EXTERN int32_t asInt32() const;
+ QPID_TYPES_EXTERN int64_t asInt64() const;
+ QPID_TYPES_EXTERN float asFloat() const;
+ QPID_TYPES_EXTERN double asDouble() const;
+ QPID_TYPES_EXTERN std::string asString() const;
+ QPID_TYPES_EXTERN Uuid asUuid() const;
+
+ QPID_TYPES_EXTERN operator bool() const;
+ QPID_TYPES_EXTERN operator uint8_t() const;
+ QPID_TYPES_EXTERN operator uint16_t() const;
+ QPID_TYPES_EXTERN operator uint32_t() const;
+ QPID_TYPES_EXTERN operator uint64_t() const;
+ QPID_TYPES_EXTERN operator int8_t() const;
+ QPID_TYPES_EXTERN operator int16_t() const;
+ QPID_TYPES_EXTERN operator int32_t() const;
+ QPID_TYPES_EXTERN operator int64_t() const;
+ QPID_TYPES_EXTERN operator float() const;
+ QPID_TYPES_EXTERN operator double() const;
+ QPID_TYPES_EXTERN operator std::string() const;
+ QPID_TYPES_EXTERN operator Uuid() const;
+
+ QPID_TYPES_EXTERN const Map& asMap() const;
+ QPID_TYPES_EXTERN Map& asMap();
+ QPID_TYPES_EXTERN const List& asList() const;
+ QPID_TYPES_EXTERN List& asList();
/**
* Unlike asString(), getString() will not do any conversions and
* will throw InvalidConversion if the type is not STRING.
*/
- QPID_COMMON_EXTERN const std::string& getString() const;
- QPID_COMMON_EXTERN std::string& getString();
+ QPID_TYPES_EXTERN const std::string& getString() const;
+ QPID_TYPES_EXTERN std::string& getString();
- QPID_COMMON_EXTERN void setEncoding(const std::string&);
- QPID_COMMON_EXTERN const std::string& getEncoding() const;
+ QPID_TYPES_EXTERN void setEncoding(const std::string&);
+ QPID_TYPES_EXTERN const std::string& getEncoding() const;
- QPID_COMMON_EXTERN bool isEqualTo(const Variant& a) const;
+ QPID_TYPES_EXTERN bool isEqualTo(const Variant& a) const;
- QPID_COMMON_EXTERN void reset();
+ QPID_TYPES_EXTERN void reset();
private:
VariantImpl* impl;
};
-QPID_COMMON_EXTERN std::ostream& operator<<(std::ostream& out, const Variant& value);
-QPID_COMMON_EXTERN std::ostream& operator<<(std::ostream& out, const Variant::Map& map);
-QPID_COMMON_EXTERN std::ostream& operator<<(std::ostream& out, const Variant::List& list);
-QPID_COMMON_EXTERN bool operator==(const Variant& a, const Variant& b);
+QPID_TYPES_EXTERN std::ostream& operator<<(std::ostream& out, const Variant& value);
+QPID_TYPES_EXTERN std::ostream& operator<<(std::ostream& out, const Variant::Map& map);
+QPID_TYPES_EXTERN std::ostream& operator<<(std::ostream& out, const Variant::List& list);
+QPID_TYPES_EXTERN bool operator==(const Variant& a, const Variant& b);
}} // namespace qpid::types
#endif /*!QPID_TYPES_VARIANT_H*/
diff --git a/cpp/src/CMakeLists.txt b/cpp/src/CMakeLists.txt
index 8bf1178237..df4081ea49 100644
--- a/cpp/src/CMakeLists.txt
+++ b/cpp/src/CMakeLists.txt
@@ -496,6 +496,13 @@ if (CMAKE_SYSTEM_NAME STREQUAL Windows)
set (CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO "/debug /INCREMENTAL:NO")
endif (MSVC)
+ set (qpidtypes_platform_SOURCES
+ qpid/sys/windows/uuid.cpp
+ )
+ set (qpidtypes_platform_LIBS
+ rpcrt4
+ )
+
set (qpidcommon_platform_SOURCES
qpid/log/windows/SinkOptions.cpp
qpid/sys/windows/AsynchIO.cpp
@@ -512,11 +519,11 @@ if (CMAKE_SYSTEM_NAME STREQUAL Windows)
qpid/sys/windows/SystemInfo.cpp
qpid/sys/windows/Thread.cpp
qpid/sys/windows/Time.cpp
- qpid/sys/windows/uuid.cpp
${sslcommon_windows_SOURCES}
)
+
set (qpidcommon_platform_LIBS
- ${windows_ssl_libs} rpcrt4 ws2_32
+ ${windows_ssl_libs} ws2_32
)
set (qpidbroker_platform_SOURCES
qpid/broker/windows/BrokerDefaults.cpp
@@ -559,6 +566,11 @@ else (CMAKE_SYSTEM_NAME STREQUAL Windows)
)
endif (CMAKE_SYSTEM_NAME STREQUAL SunOS)
+ set (qpidtypes_platform_SOURCES)
+ set (qpidtypes_platform_LIBS
+ uuid
+ )
+
set (qpidcommon_platform_SOURCES
qpid/sys/posix/AsynchIO.cpp
qpid/sys/posix/Fork.cpp
@@ -581,7 +593,6 @@ else (CMAKE_SYSTEM_NAME STREQUAL Windows)
set (qpidcommon_platform_LIBS
${Boost_PROGRAM_OPTIONS_LIBRARY}
${Boost_FILESYSTEM_LIBRARY}
- uuid
${CMAKE_DL_LIBS}
)
@@ -662,9 +673,6 @@ set (qpidcommon_SOURCES
qpid/sys/Runnable.cpp
qpid/sys/Shlib.cpp
qpid/sys/Timer.cpp
- qpid/types/Exception.cpp
- qpid/types/Uuid.cpp
- qpid/types/Variant.cpp
qpid/amqp_0_10/Codecs.cpp
)
@@ -672,7 +680,7 @@ add_library (qpidcommon SHARED ${qpidcommon_SOURCES})
if (CLOCK_GETTIME_IN_RT)
set (qpidcommon_platform_LIBS ${qpidcommon_platform_LIBS} rt)
endif (CLOCK_GETTIME_IN_RT)
-target_link_libraries (qpidcommon
+target_link_libraries (qpidcommon qpidtypes
${qpidcommon_platform_LIBS}
${qpidcommon_sasl_lib})
set_target_properties (qpidcommon PROPERTIES
@@ -682,6 +690,18 @@ install (TARGETS qpidcommon
COMPONENT ${QPID_COMPONENT_COMMON})
install_pdb (qpidcommon ${QPID_COMPONENT_COMMON})
+set(qpidtypes_SOURCES
+ qpid/types/Exception.cpp
+ qpid/types/Uuid.cpp
+ qpid/types/Variant.cpp
+ ${qpidtypes_platform_SOURCES}
+)
+add_library(qpidtypes SHARED ${qpidtypes_SOURCES})
+target_link_libraries(qpidtypes ${qpidtypes_platform_LIBS})
+set_target_properties (qpidtypes PROPERTIES VERSION ${qpidc_version})
+install(TARGETS qpidtypes
+ DESTINATION ${QPID_INSTALL_LIBDIR}
+ COMPONENT ${QPID_COMPONENT_COMMON})
set (qpidclient_SOURCES
${rgen_client_srcs}
diff --git a/cpp/src/Makefile.am b/cpp/src/Makefile.am
index 30df5a1da2..abfaffbd74 100644
--- a/cpp/src/Makefile.am
+++ b/cpp/src/Makefile.am
@@ -185,7 +185,7 @@ libqpidcommon_la_SOURCES += $(poller) $(systeminfo)
posix_broker_src = \
qpid/broker/posix/BrokerDefaults.cpp
-lib_LTLIBRARIES = libqpidcommon.la libqpidbroker.la libqpidclient.la libqpidmessaging.la
+lib_LTLIBRARIES = libqpidcommon.la libqpidbroker.la libqpidclient.la libqpidmessaging.la libqpidtypes.la
# Definitions for client and daemon plugins
PLUGINLDFLAGS=-no-undefined -module -avoid-version
@@ -309,6 +309,7 @@ EXTRA_DIST +=\
qpid/store
libqpidcommon_la_LIBADD = \
+ libqpidtypes.la \
-lboost_program_options \
-lboost_filesystem \
-luuid \
@@ -477,10 +478,7 @@ libqpidcommon_la_SOURCES += \
qpid/sys/Waitable.h \
qpid/sys/alloca.h \
qpid/sys/uuid.h \
- qpid/amqp_0_10/Codecs.cpp \
- qpid/types/Exception.cpp \
- qpid/types/Uuid.cpp \
- qpid/types/Variant.cpp
+ qpid/amqp_0_10/Codecs.cpp
if HAVE_SASL
libqpidcommon_la_SOURCES += qpid/sys/cyrus/CyrusSecurityLayer.h
@@ -491,8 +489,7 @@ endif
QPIDCOMMON_VERSION_INFO = 2:0:0
libqpidcommon_la_LDFLAGS=-version-info $(QPIDCOMMON_VERSION_INFO)
-libqpidbroker_la_LIBADD = libqpidcommon.la -luuid
-
+libqpidbroker_la_LIBADD = libqpidcommon.la
libqpidbroker_la_SOURCES = \
$(mgen_broker_cpp) \
$(posix_broker_src) \
@@ -714,8 +711,15 @@ libqpidclient_la_SOURCES = \
QPIDCLIENT_VERSION_INFO = 2:0:0
libqpidclient_la_LDFLAGS = -version-info $(QPIDCLIENT_VERSION_INFO)
-libqpidmessaging_la_LIBADD = libqpidclient.la
+libqpidtypes_la_libadd=-luuid
+libqpidtypes_la_SOURCES= \
+ qpid/types/Exception.cpp \
+ qpid/types/Uuid.cpp \
+ qpid/types/Variant.cpp
+QPIDTYPES_VERSION_INFO = 1:0:0
+libqpidtypes_la_LDFLAGS = -version-info $(QPIDTYPES_VERSION_INFO)
+libqpidmessaging_la_LIBADD = libqpidclient.la libqpidtypes.la
libqpidmessaging_la_SOURCES = \
qpid/messaging/Address.cpp \
qpid/messaging/AddressParser.h \
diff --git a/cpp/src/qpid/sys/windows/uuid.h b/cpp/src/qpid/sys/windows/uuid.h
index 9c32814182..8ab132e9ce 100644
--- a/cpp/src/qpid/sys/windows/uuid.h
+++ b/cpp/src/qpid/sys/windows/uuid.h
@@ -22,18 +22,18 @@
*
*/
-#include "qpid/CommonImportExport.h"
+#include "qpid/types/ImportExport.h"
#include <qpid/sys/IntegerTypes.h>
namespace qpid { namespace sys { const size_t UuidSize = 16; }}
typedef uint8_t uuid_t[qpid::sys::UuidSize];
-QPID_COMMON_EXTERN void uuid_clear (uuid_t uu);
-QPID_COMMON_EXTERN void uuid_copy (uuid_t dst, const uuid_t src);
-QPID_COMMON_EXTERN void uuid_generate (uuid_t out);
-QPID_COMMON_EXTERN int uuid_is_null (const uuid_t uu); // Returns 1 if null, else 0
-QPID_COMMON_EXTERN int uuid_parse (const char *in, uuid_t uu); // Returns 0 on success, else -1
-QPID_COMMON_EXTERN void uuid_unparse (const uuid_t uu, char *out);
-QPID_COMMON_EXTERN int uuid_compare (const uuid_t a, const uuid_t b);
+QPID_TYPES_EXTERN void uuid_clear (uuid_t uu);
+QPID_TYPES_EXTERN void uuid_copy (uuid_t dst, const uuid_t src);
+QPID_TYPES_EXTERN void uuid_generate (uuid_t out);
+QPID_TYPES_EXTERN int uuid_is_null (const uuid_t uu); // Returns 1 if null, else 0
+QPID_TYPES_EXTERN int uuid_parse (const char *in, uuid_t uu); // Returns 0 on success, else -1
+QPID_TYPES_EXTERN void uuid_unparse (const uuid_t uu, char *out);
+QPID_TYPES_EXTERN int uuid_compare (const uuid_t a, const uuid_t b);
#endif /*!_sys_windows_uuid_h*/