]> granicus.if.org Git - icinga2/commitdiff
Build fix for Windows
authorGunnar Beutner <gunnar@beutner.name>
Thu, 26 Feb 2015 08:02:45 +0000 (09:02 +0100)
committerGunnar Beutner <gunnar@beutner.name>
Thu, 26 Feb 2015 08:06:00 +0000 (09:06 +0100)
refs #8486

37 files changed:
lib/livestatus/CMakeLists.txt
lib/livestatus/aggregator.hpp
lib/livestatus/andfilter.hpp
lib/livestatus/attributefilter.hpp
lib/livestatus/avgaggregator.hpp
lib/livestatus/column.hpp
lib/livestatus/combinerfilter.hpp
lib/livestatus/commandstable.hpp
lib/livestatus/commentstable.hpp
lib/livestatus/contactgroupstable.hpp
lib/livestatus/contactstable.hpp
lib/livestatus/countaggregator.hpp
lib/livestatus/downtimestable.hpp
lib/livestatus/endpointstable.hpp
lib/livestatus/filter.hpp
lib/livestatus/historytable.hpp
lib/livestatus/hostgroupstable.hpp
lib/livestatus/hoststable.hpp
lib/livestatus/i2-livestatus.hpp [new file with mode: 0644]
lib/livestatus/invavgaggregator.hpp
lib/livestatus/invsumaggregator.hpp
lib/livestatus/livestatuslistener.hpp
lib/livestatus/livestatuslogutility.hpp
lib/livestatus/livestatusquery.hpp
lib/livestatus/logtable.hpp
lib/livestatus/maxaggregator.hpp
lib/livestatus/minaggregator.hpp
lib/livestatus/negatefilter.hpp
lib/livestatus/orfilter.hpp
lib/livestatus/servicegroupstable.hpp
lib/livestatus/servicestable.hpp
lib/livestatus/statehisttable.hpp
lib/livestatus/statustable.hpp
lib/livestatus/stdaggregator.hpp
lib/livestatus/sumaggregator.hpp
lib/livestatus/table.hpp
lib/livestatus/timeperiodstable.hpp

index 84cfd2f8e8afd579be6b40d97c9ac65e3f25e7b1..07a4ce8eab95038df72dc6e7cfe989cfe22c461f 100644 (file)
@@ -44,6 +44,7 @@ target_link_libraries(livestatus ${Boost_LIBRARIES} base config icinga remote)
 set_target_properties (
   livestatus PROPERTIES
   INSTALL_RPATH ${CMAKE_INSTALL_FULL_LIBDIR}/icinga2
+  DEFINE_SYMBOL I2_LIVESTATUS_BUILD
   FOLDER Components
 )
 
index 1b1b7a8df3625bc1cfa84148736192e37d60b141..1e4f99f1f4a63f55436c5ad35e75a04641357b40 100644 (file)
@@ -20,6 +20,7 @@
 #ifndef AGGREGATOR_H
 #define AGGREGATOR_H
 
+#include "livestatus/i2-livestatus.hpp"
 #include "livestatus/table.hpp"
 #include "livestatus/filter.hpp"
 
@@ -29,7 +30,7 @@ namespace icinga
 /**
  * @ingroup livestatus
  */
-class Aggregator : public Object
+class I2_LIVESTATUS_API Aggregator : public Object
 {
 public:
        DECLARE_PTR_TYPEDEFS(Aggregator);
index 36d4f34d6d08190f2ff51c5ebffd8a14b6791f36..04ec9b4c4c7674d0dc83e4adad995c2174515bfd 100644 (file)
@@ -30,7 +30,7 @@ namespace icinga
 /**
  * @ingroup livestatus
  */
-class AndFilter : public CombinerFilter
+class I2_LIVESTATUS_API AndFilter : public CombinerFilter
 {
 public:
        DECLARE_PTR_TYPEDEFS(AndFilter);
index 3a1dbd9941ee7e4c7d807371950565e7b3196749..0676f8049f05bd1315d154ab9709f7b1d64c361d 100644 (file)
@@ -30,7 +30,7 @@ namespace icinga
 /**
  * @ingroup livestatus
  */
-class AttributeFilter : public Filter
+class I2_LIVESTATUS_API AttributeFilter : public Filter
 {
 public:
        DECLARE_PTR_TYPEDEFS(AttributeFilter);
index fe3a3cdd706d0ce929e3cf27df1d1339a03afdd1..66b645ea92f9d6e73a926a321e4971250792b13d 100644 (file)
@@ -29,7 +29,7 @@ namespace icinga
 /**
  * @ingroup livestatus
  */
-class AvgAggregator : public Aggregator
+class I2_LIVESTATUS_API AvgAggregator : public Aggregator
 {
 public:
        DECLARE_PTR_TYPEDEFS(AvgAggregator);
index 74618dac1e8771decee305a22a794e2c42b6694e..0209586b2308d422d434a258fe528d8ee9c4f547 100644 (file)
@@ -20,6 +20,8 @@
 #ifndef COLUMN_H
 #define COLUMN_H
 
+#include "livestatus/i2-livestatus.hpp"
+#include "livestatus/i2-livestatus.hpp"
 #include "base/value.hpp"
 #include <boost/function.hpp>
 
@@ -34,7 +36,7 @@ enum LivestatusGroupByType {
        LivestatusGroupByServiceGroup
 };
 
-class Column
+class I2_LIVESTATUS_API Column
 {
 public:
        typedef boost::function<Value (const Value&)> ValueAccessor;
index 7a1d76e98a0b47416d06f52a0add16cc3b68288a..dfc308091e72dda29a6427f4b4f38d4716efa9a1 100644 (file)
@@ -30,7 +30,7 @@ namespace icinga
 /**
  * @ingroup livestatus
  */
-class CombinerFilter : public Filter
+class I2_LIVESTATUS_API CombinerFilter : public Filter
 {
 public:
        DECLARE_PTR_TYPEDEFS(CombinerFilter);
index 2c61d31234cd13e97303d0b5b35c7594c9c0843e..8f3fc048eb79431cb0d9a53bec508a5817495e5e 100644 (file)
@@ -30,7 +30,7 @@ namespace icinga
 /**
  * @ingroup livestatus
  */
-class CommandsTable : public Table
+class I2_LIVESTATUS_API CommandsTable : public Table
 {
 public:
        DECLARE_PTR_TYPEDEFS(CommandsTable);
index 307b043aea871490e5c89ba76f8f982d9f54cae7..7d03685a4a837f84c5235095755fa3b958831f2d 100644 (file)
@@ -30,7 +30,7 @@ namespace icinga
 /**
  * @ingroup livestatus
  */
-class CommentsTable : public Table
+class I2_LIVESTATUS_API CommentsTable : public Table
 {
 public:
        DECLARE_PTR_TYPEDEFS(CommentsTable);
index 112b8e7735f6b8900247109a06cda2dfff6d0191..e0824f8465aa23e410264e2967fc3731cea36052 100644 (file)
@@ -30,7 +30,7 @@ namespace icinga
 /**
  * @ingroup livestatus
  */
-class ContactGroupsTable : public Table
+class I2_LIVESTATUS_API ContactGroupsTable : public Table
 {
 public:
        DECLARE_PTR_TYPEDEFS(ContactGroupsTable);
index 2ff0799d654310aa7ac883f28faf531e357adafd..aa9d894b578f1fd95dd36e4ab3587155705a68c7 100644 (file)
@@ -30,7 +30,7 @@ namespace icinga
 /**
  * @ingroup livestatus
  */
-class ContactsTable : public Table
+class I2_LIVESTATUS_API ContactsTable : public Table
 {
 public:
        DECLARE_PTR_TYPEDEFS(ContactsTable);
index 5415144b78486a00f6109bb0d7cf4d20c8ed8ea9..1666c4fad8badbd826eacfc5372d6ee6f14e6155 100644 (file)
@@ -29,7 +29,7 @@ namespace icinga
 /**
  * @ingroup livestatus
  */
-class CountAggregator : public Aggregator
+class I2_LIVESTATUS_API CountAggregator : public Aggregator
 {
 public:
        DECLARE_PTR_TYPEDEFS(CountAggregator);
index fa78df9bc46848e908e5a4e505ae4ebcd0152496..a2618080291ce06845cc31248469d06da2a6d25d 100644 (file)
@@ -30,7 +30,7 @@ namespace icinga
 /**
  * @ingroup livestatus
  */
-class DowntimesTable : public Table
+class I2_LIVESTATUS_API DowntimesTable : public Table
 {
 public:
        DECLARE_PTR_TYPEDEFS(DowntimesTable);
index 71dbf3faf4b56279da3a1e52cb931d75cfce7233..9c7e88a8270704abe3759208f24d50abdc9eb19a 100644 (file)
@@ -30,7 +30,7 @@ namespace icinga
 /**
  * @ingroup livestatus
  */
-class EndpointsTable : public Table
+class I2_LIVESTATUS_API EndpointsTable : public Table
 {
 public:
        DECLARE_PTR_TYPEDEFS(EndpointsTable);
index 44dfe364f1257164ceeed4db38c6f7a13d6bb9f9..07652770a08a25f465c6cda619e621c8a5d04e4d 100644 (file)
@@ -20,6 +20,7 @@
 #ifndef FILTER_H
 #define FILTER_H
 
+#include "livestatus/i2-livestatus.hpp"
 #include "livestatus/table.hpp"
 
 namespace icinga
@@ -28,7 +29,7 @@ namespace icinga
 /**
  * @ingroup livestatus
  */
-class Filter : public Object
+class I2_LIVESTATUS_API Filter : public Object
 {
 public:
        DECLARE_PTR_TYPEDEFS(Filter);
index c31039fbf840da93ca7008711eab7bda9353fbf1..11c6186f79fb6bccf1def66201103e394fa13489 100644 (file)
@@ -30,7 +30,7 @@ namespace icinga
 /**
  * @ingroup livestatus
  */
-class HistoryTable : public Table
+class I2_LIVESTATUS_API HistoryTable : public Table
 {
 public:
        virtual void UpdateLogEntries(const Dictionary::Ptr& bag, int line_count, int lineno, const AddRowFunction& addRowFn);
index 140a34baea9d414ceea3616af972373c15975849..c4f7fd87c7d4fdd10824ba65b1264e5a8e080b34 100644 (file)
@@ -30,7 +30,7 @@ namespace icinga
 /**
  * @ingroup livestatus
  */
-class HostGroupsTable : public Table
+class I2_LIVESTATUS_API HostGroupsTable : public Table
 {
 public:
        DECLARE_PTR_TYPEDEFS(HostGroupsTable);
index 8b6c61cda5cd036aefefc872ba8a88f93b0be84d..89e2afc029815cb43511c46abda0706c84b6a8d9 100644 (file)
@@ -30,7 +30,7 @@ namespace icinga
 /**
  * @ingroup livestatus
  */
-class HostsTable : public Table
+class I2_LIVESTATUS_API HostsTable : public Table
 {
 public:
        DECLARE_PTR_TYPEDEFS(HostsTable);
diff --git a/lib/livestatus/i2-livestatus.hpp b/lib/livestatus/i2-livestatus.hpp
new file mode 100644 (file)
index 0000000..1e24594
--- /dev/null
@@ -0,0 +1,37 @@
+/******************************************************************************
+ * Icinga 2                                                                   *
+ * Copyright (C) 2012-2015 Icinga Development Team (http://www.icinga.org)    *
+ *                                                                            *
+ * This program is free software; you can redistribute it and/or              *
+ * modify it under the terms of the GNU General Public License                *
+ * as published by the Free Software Foundation; either version 2             *
+ * of the License, or (at your option) any later version.                     *
+ *                                                                            *
+ * This program is distributed in the hope that it will be useful,            *
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of             *
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the              *
+ * GNU General Public License for more details.                               *
+ *                                                                            *
+ * You should have received a copy of the GNU General Public License          *
+ * along with this program; if not, write to the Free Software Foundation     *
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA.             *
+ ******************************************************************************/
+
+#ifndef I2LIVESTATUS_H
+#define I2LIVESTATUS_H
+
+/**
+ * @defgroup icinga Livestatus
+ *
+ * The Livestatus library implements the Livestatus protocol for Icinga.
+ */
+
+#include "base/i2-base.hpp"
+
+#ifdef I2_LIVESTATUS_BUILD
+#      define I2_LIVESTATUS_API I2_EXPORT
+#else /* I2_LIVESTATUS_BUILD */
+#      define I2_LIVESTATUS_API I2_IMPORT
+#endif /* I2_LIVESTATUS_BUILD */
+
+#endif /* I2LIVESTATUS_H */
index a5c1d5bb3ce8108abfbb37c62df447169d48b8e9..03b25b7ddb5a0001872736ca7d1cd378c9660722 100644 (file)
@@ -29,7 +29,7 @@ namespace icinga
 /**
  * @ingroup livestatus
  */
-class InvAvgAggregator : public Aggregator
+class I2_LIVESTATUS_API InvAvgAggregator : public Aggregator
 {
 public:
        DECLARE_PTR_TYPEDEFS(InvAvgAggregator);
index 7be39050e6587d5afa661d4a8d4a565275ec845e..8e962ee5b047426df901bd7e964b93d1c1731359 100644 (file)
@@ -29,7 +29,7 @@ namespace icinga
 /**
  * @ingroup livestatus
  */
-class InvSumAggregator : public Aggregator
+class I2_LIVESTATUS_API InvSumAggregator : public Aggregator
 {
 public:
        DECLARE_PTR_TYPEDEFS(InvSumAggregator);
index cc765a3c023817ef0e57ea86c330e5debb9dbe0f..334e34b58e9ddd4b322fe09a87cc9f00311eb3cc 100644 (file)
@@ -20,6 +20,7 @@
 #ifndef LIVESTATUSLISTENER_H
 #define LIVESTATUSLISTENER_H
 
+#include "livestatus/i2-livestatus.hpp"
 #include "livestatus/livestatuslistener.thpp"
 #include "livestatus/livestatusquery.hpp"
 #include "base/socket.hpp"
@@ -33,7 +34,7 @@ namespace icinga
 /**
  * @ingroup livestatus
  */
-class LivestatusListener : public ObjectImpl<LivestatusListener>
+class I2_LIVESTATUS_API LivestatusListener : public ObjectImpl<LivestatusListener>
 {
 public:
        DECLARE_OBJECT(LivestatusListener);
index 1d71da24a6a5f0c906a1eb11e15e8fed77f150a2..863da2d6dcd5ac2243c1d1071a5612c2a66c1734 100644 (file)
@@ -60,9 +60,8 @@ enum LogEntryClass {
 /**
  * @ingroup livestatus
  */
-class LivestatusLogUtility
+class I2_LIVESTATUS_API LivestatusLogUtility
 {
-
 public:
        static void CreateLogIndex(const String& path, std::map<time_t, String>& index);
        static void CreateLogIndexFileHandler(const String& path, std::map<time_t, String>& index);
index 893d13abbd2569df3e20cbf8be26fc0dc7d70dca..24c0ab3027477416724bf732293ee35b5f44afea 100644 (file)
@@ -55,7 +55,7 @@ struct LivestatusScriptFrame
 /**
  * @ingroup livestatus
  */
-class LivestatusQuery : public Object
+class I2_LIVESTATUS_API LivestatusQuery : public Object
 {
 public:
        DECLARE_PTR_TYPEDEFS(LivestatusQuery);
index b57dbb9ba57fda5ebcd6a8dfbf3db1175d93ccab..d341dfca639d7e0b0d6320283c018c30effd080f 100644 (file)
@@ -31,7 +31,7 @@ namespace icinga
 /**
  * @ingroup livestatus
  */
-class LogTable : public HistoryTable
+class I2_LIVESTATUS_API LogTable : public HistoryTable
 {
 public:
        DECLARE_PTR_TYPEDEFS(LogTable);
index fcbb32809eb0d9b23dd69d55f7bf95568319d796..eb3b405a2e85ad398b7ab70330596d7bdf78dc07 100644 (file)
@@ -29,7 +29,7 @@ namespace icinga
 /**
  * @ingroup livestatus
  */
-class MaxAggregator : public Aggregator
+class I2_LIVESTATUS_API MaxAggregator : public Aggregator
 {
 public:
        DECLARE_PTR_TYPEDEFS(MaxAggregator);
index 823e4bd0c8860d515c4bc92fa3f15fddb1d6dbc3..895fce60f70d72de91612646526364cd76d87c12 100644 (file)
@@ -29,7 +29,7 @@ namespace icinga
 /**
  * @ingroup livestatus
  */
-class MinAggregator : public Aggregator
+class I2_LIVESTATUS_API MinAggregator : public Aggregator
 {
 public:
        DECLARE_PTR_TYPEDEFS(MinAggregator);
index 2e6abf6c11e0a42306e3f6a7e3178d0cbfb45d4b..88efd4da0f0f7a3e532a4d77f995092672ebe0a4 100644 (file)
@@ -30,7 +30,7 @@ namespace icinga
 /**
  * @ingroup livestatus
  */
-class NegateFilter : public Filter
+class I2_LIVESTATUS_API NegateFilter : public Filter
 {
 public:
        DECLARE_PTR_TYPEDEFS(NegateFilter);
index 7c8e6c510ddfb97cb7c2b6ef94761987862dc984..0dc536ebcddb528b7389d189abf391358fa6f499 100644 (file)
@@ -30,7 +30,7 @@ namespace icinga
 /**
  * @ingroup livestatus
  */
-class OrFilter : public CombinerFilter
+class I2_LIVESTATUS_API OrFilter : public CombinerFilter
 {
 public:
        DECLARE_PTR_TYPEDEFS(OrFilter);
index 729683d3379e164eff8ae2d1f2b0f49e10d736fe..da025bb3b44085cd4f4b9262bd1793774040a643 100644 (file)
@@ -30,7 +30,7 @@ namespace icinga
 /**
  * @ingroup livestatus
  */
-class ServiceGroupsTable : public Table
+class I2_LIVESTATUS_API ServiceGroupsTable : public Table
 {
 public:
        DECLARE_PTR_TYPEDEFS(ServiceGroupsTable);
index f0f99ca79d569d8de46b1e2a47bd7c173b53fedc..8e17613a2a0dc11aab5414ac62149ec795535701 100644 (file)
@@ -30,7 +30,7 @@ namespace icinga
 /**
  * @ingroup livestatus
  */
-class ServicesTable : public Table
+class I2_LIVESTATUS_API ServicesTable : public Table
 {
 public:
        DECLARE_PTR_TYPEDEFS(ServicesTable);
index b2211a908d08b4c30f115e0eb479dc23636133db..5e91ca2083c2c71f465fbdf35eb6448173cc5f41 100644 (file)
@@ -32,7 +32,7 @@ namespace icinga
 /**
  * @ingroup livestatus
  */
-class StateHistTable : public HistoryTable
+class I2_LIVESTATUS_API StateHistTable : public HistoryTable
 {
 public:
        DECLARE_PTR_TYPEDEFS(StateHistTable);
index a8d50261a72fb5406a013a60bb55a6fc4ef5250d..5f6b7a637ffbec79c55face51dd3d4bca8393f19 100644 (file)
@@ -30,7 +30,7 @@ namespace icinga
 /**
  * @ingroup livestatus
  */
-class StatusTable : public Table
+class I2_LIVESTATUS_API StatusTable : public Table
 {
 public:
        DECLARE_PTR_TYPEDEFS(StatusTable);
index 6725a665a7918e299f9a7814b843e9a7019af1e7..ae76c96f59e029a6d922c9a759b6b8bc23c92103 100644 (file)
@@ -29,7 +29,7 @@ namespace icinga
 /**
  * @ingroup livestatus
  */
-class StdAggregator : public Aggregator
+class I2_LIVESTATUS_API StdAggregator : public Aggregator
 {
 public:
        DECLARE_PTR_TYPEDEFS(StdAggregator);
index 528a2d70bc34b352e497d19a2baab466ef68d243..8dd0adb4dc4b9b931e8e22acf2372d616a4ba040 100644 (file)
@@ -29,7 +29,7 @@ namespace icinga
 /**
  * @ingroup livestatus
  */
-class SumAggregator : public Aggregator
+class I2_LIVESTATUS_API SumAggregator : public Aggregator
 {
 public:
        DECLARE_PTR_TYPEDEFS(SumAggregator);
index e27ed020148c4279b06d8134d343e178fc31330f..ee86bbd84d1e4d948c24afb52a783d6cfe23bf64 100644 (file)
@@ -43,7 +43,7 @@ class Filter;
 /**
  * @ingroup livestatus
  */
-class Table : public Object
+class I2_LIVESTATUS_API Table : public Object
 {
 public:
        DECLARE_PTR_TYPEDEFS(Table);
index ce3a0d8b50630075b10c6a068e737ed54daf4e6d..0220e26d92e5faabec7d5097044ad8d98889bc6d 100644 (file)
@@ -30,7 +30,7 @@ namespace icinga
 /**
  * @ingroup livestatus
  */
-class TimePeriodsTable : public Table
+class I2_LIVESTATUS_API TimePeriodsTable : public Table
 {
 public:
        DECLARE_PTR_TYPEDEFS(TimePeriodsTable);