]> granicus.if.org Git - icinga2/commitdiff
Fix Windows build.
authorMichael Friedrich <michael.friedrich@netways.de>
Mon, 10 Mar 2014 14:00:14 +0000 (15:00 +0100)
committerMichael Friedrich <michael.friedrich@netways.de>
Thu, 20 Mar 2014 17:03:47 +0000 (18:03 +0100)
Refs #5636

lib/db_ido/CMakeLists.txt
lib/remote/CMakeLists.txt
lib/remote/endpoint.h
lib/remote/i2-remote.h [new file with mode: 0644]
lib/remote/jsonrpc.h

index 9d1c8a3533d0cf8e5b339ff831af8a9a753360f9..6a666ff91aceeeb5dc78181c4c5db9f83a9f2ab8 100644 (file)
@@ -28,7 +28,7 @@ add_library(db_ido SHARED
 )
 
 include_directories(${Boost_INCLUDE_DIRS})
-target_link_libraries(db_ido ${Boost_LIBRARIES} base config icinga cluster)
+target_link_libraries(db_ido ${Boost_LIBRARIES} base config icinga remote)
 
 set_target_properties (
   db_ido PROPERTIES
index d681ce925d9d5e1d20eaf055b99672b6c44adf17..c96631bd5fafe00d8a493500c4dffe8a7e5e641c 100644 (file)
@@ -23,12 +23,13 @@ add_library(remote SHARED
   endpoint.cpp endpoint.th jsonrpc.cpp remote-type.cpp
 )
 
+include_directories(${Boost_INCLUDE_DIRS})
 target_link_libraries(remote ${Boost_LIBRARIES} base config)
 
 set_target_properties (
-  icinga PROPERTIES
+  remote PROPERTIES
   INSTALL_RPATH ${CMAKE_INSTALL_FULL_LIBDIR}/icinga2
-  DEFINE_SYMBOL I2_ICINGA_BUILD
+  DEFINE_SYMBOL I2_REMOTE_BUILD
   FOLDER Lib
 )
 
index 2206cb9276238516a2e78b8cabd818f92d7f80c5..72e027d43b3ef7bf379b79f8823714124ead0ee2 100644 (file)
@@ -23,6 +23,7 @@
 #include "remote/endpoint.th"
 #include "base/stream.h"
 #include "base/array.h"
+#include "remote/i2-remote.h"
 #include <boost/signals2.hpp>
 
 namespace icinga
@@ -35,7 +36,7 @@ class EndpointManager;
  *
  * @ingroup cluster
  */
-class Endpoint : public ObjectImpl<Endpoint>
+class I2_REMOTE_API Endpoint : public ObjectImpl<Endpoint>
 {
 public:
        DECLARE_PTR_TYPEDEFS(Endpoint);
diff --git a/lib/remote/i2-remote.h b/lib/remote/i2-remote.h
new file mode 100644 (file)
index 0000000..d2e884f
--- /dev/null
@@ -0,0 +1,37 @@
+/******************************************************************************
+ * Icinga 2                                                                   *
+ * Copyright (C) 2012-present 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 I2REMOTE_H
+#define I2REMOTE_H
+
+/**
+ * @defgroup remote Remote library
+ *
+ * The Icinga library implements remote cluster functionality.
+ */
+
+#include "base/i2-base.h"
+
+#ifdef I2_REMOTE_BUILD
+#      define I2_REMOTE_API I2_EXPORT
+#else /* I2_REMOTE_BUILD */
+#      define I2_REMOTE_API I2_IMPORT
+#endif /* I2_REMOTE_BUILD */
+
+#endif /* I2REMOTE_H */
index 6a44e4005773412bf00955cd8953675007461f3f..47782356a44a3509c5ab6dab2e6ca23d1d619c87 100644 (file)
@@ -22,6 +22,7 @@
 
 #include "base/stream.h"
 #include "base/dictionary.h"
+#include "remote/i2-remote.h"
 
 namespace icinga
 {
@@ -31,7 +32,7 @@ namespace icinga
  *
  * @ingroup remote
  */
-class JsonRpc
+class I2_REMOTE_API JsonRpc
 {
 public:
        static void SendMessage(const Stream::Ptr& stream, const Dictionary::Ptr& message);